实现图像的融合并且输出一张jpg格式的照片。
先显示一个彩色图的照片
然后我以彩色方式读取1.png,以灰度图方式读取3.png这张图片,并且用两个窗口独立地去显示(我后来发现不能把灰度图和彩色图相融合)
然后实现两个融合
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/core/core.hpp>
using namespace cv;
int main() {
Mat colorImage = imread("1.png",IMREAD_COLOR);
Mat logoImage = imread("3.png",IMREAD_COLOR);
namedWindow("1.png窗口");
imshow("1.png窗口", colorImage);
namedWindow("3.png窗口");
imshow("3.png窗口", logoImage);
Mat imageROI;//这个就是你想在那个位置开始放多大的照片数据
imageROI = colorImage(Rect(0, 0, logoImage.cols, logoImage.rows));
addWeighted(imageROI, 0.5, logoImage, 0.3, 0, imageROI);
namedWindow("融合图");
imshow("融合图", colorImage);
waitKey(0);
return 0;
}
imwrite("comb.png", colorImage);
通过这个可以实现图片保存到当前项目文件夹下。