【图像处理】 06图像混合
基础知识 |
代码演示 |
使用 addWeighted()函数让两张图片相加 |
#include <opencv2/opencv.hpp> #include <iostream> using namespace cv; using namespace std; int main(int argc, char** argv) { Mat src1,src2,dst; src1 = imread("C:/daima practice/opencv/mat1/mat1/image3.jpg"); src2 = imread("C:/daima practice/opencv/mat1/mat1/image4.jpg"); if (!src1.data) { printf("could not load image3...\n"); return -1; } if (!src2.data) { printf("could not load image4...\n"); return -1; } namedWindow("图片1",WINDOW_AUTOSIZE); namedWindow("图片2",WINDOW_AUTOSIZE); imshow("图片1",src1); imshow("图片2",src2);
double alpha = 0.5; if(src1.rows == src2.rows && src1.cols == src2.cols && src1.type()==src2.type()) { addWeighted(src1,alpha,src2,(1.0-alpha),0.0,dst);//将两张图片相加。 //multiply(src1,src2,dst,1.0);//将两张图片相乘 namedWindow("混合后的图",CV_WINDOW_AUTOSIZE); imshow("混合后的图",dst); } else { printf("不能输出,图片大小不确定\n"); return -1; } waitKey(0); return 0; } //效果显示 |
|