当前位置:网站首页>QT 图片背景色像素处理法
QT 图片背景色像素处理法
2022-07-07 15:32:00 【God港】
前言
在qt开发中,我们经常会对背景图片进行处理,比如只想拿到图片的某一部分,接下来我们采用最原始的图像处理方法来实现效果。
步骤
我们先放一张原图
然后我们想把白色部分变为背景颜色
思路:
获取这张图片的所有像素点,对每个像素点进行rgb颜色的判断,如果是你想要改变的颜色,那么我们就将此像素点变为透明色(或者你想要改变的颜色)
代码
QImage image(":/CustomAddControl/1.bmp");//加载原始图片
int w, h;
//得到图片的宽高
w = image.width();
h = image.height();
//遍历每个像素点
for (int i = 0; i < h; i++)
{
for (int j = 0; j < w; j++)
{
QRgb rgb = image.pixel(j, i);
if (rgb == 0xFFFFFFFF) //如果符合背景色
{
image.setPixel(j, i, 0x00000000);//此像素设置为透明
}
}
}
QPixmap tempPixmap = QPixmap::fromImage(image);//处理过后的图片
然后我们用label显示对比效果:
显然,我们发现原来图片的白色等区域变为透明色后被背景色覆盖了,这样我们就实现了简单的图片内嵌的效果。
总结
这种处理方式是较为原始的,我们可以基于此对象进行图片过滤、加强、锯齿等一系列的图像处理技术,只需要将像素点乘以一个图像处理矩阵即可,具体算法可以自行搜索,本文不在进行过多的讲解。
边栏推荐
- Spark Tuning (III): persistence reduces secondary queries
- 作为Android开发程序员,android高级面试
- 最新阿里P7技术体系,妈妈再也不用担心我找工作了
- Set the route and optimize the URL in thinkphp3.2.3
- Opencv personal notes
- Master this set of refined Android advanced interview questions analysis, oppoandroid interview questions
- AutoLISP series (3): function function 3
- 如何选择合适的自动化测试工具?
- JS 模块化
- Personal notes of graphics (1)
猜你喜欢
随机推荐
Interface oriented programming
Introduction and use of gateway
logback.xml配置不同级别日志,设置彩色输出
二叉搜索树(基操篇)
【PHP】PHP接口继承及接口多继承原理与实现方法
Direct dry goods, 100% praise
Three. JS series (3): porting shaders in shadertoy
面向接口编程
[summary of knowledge] summary of notes on using SVN in PHP
字节跳动Android金三银四解析,android面试题app
最新Android高级面试题汇总,Android面试题及答案
在哪个期货公司开期货户最安全?
Laravel service provider instance tutorial - create a service provider test instance
预测——灰色预测
A tour of gRPC:03 - proto序列化/反序列化
time标准库
Sqlserver2014+: create indexes while creating tables
[vulnhub range] thales:1
数据中台落地实施之法
Three. JS series (2): API structure diagram-2