使用Opencv函数addWeighted: (dst = alpha*src1 + beta*src2 + gamma)
#include "cv.h"
#include "highgui.h"
using namespace std;
using namespace cv;
int main(int argc,char *argv[])
{
Mat src1,src2,dst;
double alpha,beta,gamma=0,input;
int c;
src1=imread("src1.jpg");
src2=imread("src2.jpg");
while(1)
{
cout<<"alpha:";cin>>input;
alpha=input;
beta=1.0-alpha;
addWeighted(src1,alpha,src2,beta,gamma,dst);
imshow("dst",dst);
c=waitKey(0);
if(c==27)break;
}
return 0;
}
自己保证图像不为空和大小一样!
当alpha=0.2时 当alpha=0.6时