一、概述
案例:將兩張圖片混合成一張圖片,並且原圖的元素要保留到同一張圖片中。
二、示例圖片
1.混合后的圖片

2.原始的兩張圖片

三、示例代碼
//將兩張圖片進行混合
#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;
}
