OpenCV学习--实现两幅图像的融合

源代码来源于官网的OpenCV教程,实现的功能比较简单最后自己动手用C语言实现了一下,貌似比库函数要快一点

#include "StdAfx.h"
#include "blending.h"
using namespace std;
using namespace cv;
void blending_test()
{
	Mat src1, src2, dst;
	double alpha = 0.5;
	double beta = 1-alpha;

	src1 = imread("LinuxLogo.jpg");
	src2 = imread("WindowsLogo.jpg");

	if(!src1.data) cout<<"error loading src1"<(i);
		const uchar* src2_ptr = src2.ptr(i);
		uchar* dst_ptr  = dst.ptr(i);
		for (int j=0; j
//下面是main函数部分
int main(int argc, char* argv[]) 
{ 
	double t;
	t = (double)getTickCount();	
	blending_test();    
	t = 1000*((double)getTickCount() - t)/getTickFrequency();
	cout<<"库函数时间:"<

//下面是运行的结果
OpenCV学习--实现两幅图像的融合_第1张图片
注意了自己实现的没有数据溢出保护,关于saturate_cast的用法会在下个文章中讲解

http://blog.csdn.net/mjlsuccess/article/details/12401839

你可能感兴趣的:(OpenCV)