OpenCV - 简单图像融合

来源:互联网 发布:京东商城数据流程图 编辑:程序博客网 时间:2024/05/01 18:46

在OpenCV中,将两个图片矩阵进行融合变成一个图片用到的是cvAddWeighted函数。在cvAddWeighted函数中,有两个源图象image1 和 image2。两个图象可以是任何象素类型,只要它们的类型相同。它们可以是单通道或是三通道,只要它们相符。但它们的ROI必须有相同的大小,否则会编译出错!

#include<opencv2/core/core.hpp>#include<opencv2/highgui/highgui.hpp>using namespace cv;int main(){Mat image = imread("C:\\Desktop\\1.jpg",199);Mat logo = imread("C:\\Desktop\\4.jpg");namedWindow("原画图");imshow("原画图", image);namedWindow("logo图");imshow("logo图", logo);Mat imageROI;imageROI = image(Rect(400, 350, logo.cols, logo.rows));addWeighted(imageROI, 0.3, logo, 0.7, 0., imageROI);//将图像加到原图上namedWindow("融合效果图");imshow("融合效果图", image);waitKey();return 0;}

程序运行后,处理后的图像如图:




0 0
原创粉丝点击