opencv——图像混合

图像的加减乘除:

void add(InputArray src1, InputArray src2, OutputArray dst,InputArray mask=noArray(), int dtype=-1);

void subtract(InputArray src1, InputArray src2, OutputArray dst,InputArray mask=noArray(), int dtype=-1);

void multiply(InputArray src1, InputArray src2,OutputArray dst, double scale=1, int dtype=-1);

void divide(InputArray src1, InputArray src2, OutputArray dst,double scale=1, int dtype=-1);

void divide(double scale, InputArray src2, OutputArray dst, int dtype=-1);

void scaleAdd(InputArray src1, double alpha, InputArray src2, OutputArray dst);

void addWeighted(InputArray src1, double alpha, InputArray src2,double beta, double gamma, OutputArray dst, int dtype=-1);

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

using namespace cv;
using namespace std;

int main(int argc, char** argv) {
	
	Mat res = imread("D:\picture/caomei.jpg");
	Mat dst = imread("D:\picture/caomei2.png");
	Mat str;
	if (res.empty()) {
		printf("could not load Image... \r\n");
		return -1;
	}
	if (dst.empty()) {
		printf("could not load Image... \r\n");
		return -1;
	}

	namedWindow("Input Image1",CV_WINDOW_AUTOSIZE);
	imshow("Input Image1",res);

	namedWindow("Input Image2", CV_WINDOW_AUTOSIZE);
	imshow("Input Image2", dst);

if ((res.cols == dst.cols) && (res.rows == dst.rows)) {
		double alpha = 0.5;
		//addWeighted(res,alpha,dst,(1-alpha),0.0,str); // 后面那个0.0 类似增益     str = 0.5res + (1 - 0.5)dst + 0.0

	
		//add(res,dst, str);    //  str = res + dst  
		//add(res, Scalar(255, 0, 0), str);   // str = res + Scalar()

		multiply(res, dst, str, 1.0);   // str = res * dst * 1.0

		//multiply(res, dst, str, 1.0);
		//multiply(res, dst, str, 1.0);

		imshow("Output Image",str);
	}
	else {
		printf("Two image size is not same \r\n");
	}

	//imwrite("D:\picture/caomei3.jpg",str);

	waitKey(0);
	return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值