您的位置:首页 > 运维架构

opencv学习笔记之两幅图像显式融合

2017-01-22 11:47 453 查看
图像显式融合

即通过下式



将两幅图像相互叠加,alpha控制那幅图像在融合图像中所占的权重。

下面以如下两幅图像通过addWeighted()函数来实现。


        


      图1                  图2

#include<opencv2/opencv.hpp>
#include<iostream>

using namespace std;
using namespace cv;
int main()
{
Mat img1,img2,out;
img1=imread("1.jpg",0);
img2=imread("2.jpg",0);

if(!img1.data)
cout<<"error loading img1"<<endl;
if(!img2.data)
cout<<"error loading img2"<<endl;

double alpha=0.5;
double beta,input;

cin>>input;

if(input>=0.0 && input<=1.0)
alpha=input;
beta=(1.0-alpha);
addWeighted(img1,alpha,img2,beta,0.0,out);

namedWindow("out",1);
imshow("out",out);

waitKey(0);
return 0;
}
效果:



融合后图像
函数各个参数如下:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  opencv