1、概述
案例:将两张图片混合成一张图片,并且原图的元素要保留到同一张图片中。
2、示例图片
2.1、混合后的图片
2.2、原始的两张图片
3、示例代码
//将两张图片进行混合
#include <opencv2/opencv.hpp>
#include <iostream>
using namespace cv;
using namespace std;
int main(int argc, char const *argv[])
{
//加载并输出原图,要想混合图片则这两张图片的大小和尺寸必须是一样的
Mat src1 = imread("flow.jpg");
Mat girl = imread("girl.jpg");
imshow("girl",girl);
imshow("src1",src1);
Mat dst;
//混合两张图片
if(girl.rows ==src1.rows && girl.cols == src1.cols){
double alpha = 0.5;
/**
* 第一个参数:要混合的第一张图片
* 第二个参数:第一张图片的透明度
* 第三个参数:要混合的第二张图片
* 第四个参数:第三个参数的透明度
* gamma值
dst:混合后的输出图像
*
* */
addWeighted(girl,0.3,src1,0.7,0.0,dst);
imshow("dst",dst);
waitKey(0);
return 0;
}else{
cout << "图片大小不一致"<<endl;
}
return 0;
}
本文福利,莬费领取Qt开发学习资料包、技术视频,内容包括(C++语言基础,Qt编程入门,QT信号与槽机制,QT界面开发-图像绘制,QT网络,QT数据库编程,QT项目实战,QSS,OpenCV,Quick模块,面试题等等)↓↓↓↓↓↓见下面↓↓文章底部点击莬费领取↓↓