opencv中addWeighted()函数用法总结(05)
opencv
OpenCV: 开源计算机视觉库
项目地址:https://gitcode.com/gh_mirrors/opencv31/opencv
免费下载资源
·
还是老习惯,分三步走。第一步,功能说明。第二步,结果图显示,第三步,API详解。第四步,代码展示(注释很详细,保证所有有C++基础的人都可以看懂。)
第一步,功能说明:addWeighted()函数是将两张相同大小,相同类型的图片融合的函数。他可以实现图片的特效,不多说了,直接上图。
第二步,结果图显示:
待 融合的两张图src1,src2:
效果图dst:
第三步,API详解:void cvAddWeighted( const CvArr* src1, double alpha,const CvArr* src2, double beta,double gamma, CvArr* dst );
参数1:src1,第一个原数组.
参数2:alpha,第一个数组元素权重
参数3:src2第二个原数组
参数4:beta,第二个数组元素权重
参数5:gamma,图1与图2作和后添加的数值。不要太大,不然图片一片白。总和等于255以上就是纯白色了。
参数6:dst,输出图片
第四步,代码展示:
#include <opencv2/opencv.hpp>
#include <iostream>
using namespace std;
using namespace cv;
int main()
{
Mat src1,src2,dst;//创建Mat数组,等待存储图片
src1 = imread("1.jpg");
src2 = imread("2.jpg");
//将图1与图2线性混合
addWeighted(src1,0.5,src2,0.7,3,dst);
/*注释
参数分别为:图1,图1的权重,图2,图2的权重,权重和添加的值为3,输出图片src
*/
//显示图片
imshow("src1图",src1);
imshow("src2图",src2);
imshow("混合后的图片",dst);
waitKey(0);//等待按键响应后退出,0改为5000就是5秒后自动退出。
return 0;
}
本人也是学习opencv不久,如有错误,请各位前辈指导。大家如果觉得我的博客讲解通俗易懂,请进我博客专栏查看更多API讲解。博客地址https://blog.csdn.net/fanjiule 。转载请备注本地址。
GitHub 加速计划 / opencv31 / opencv
166
15
下载
OpenCV: 开源计算机视觉库
最近提交(Master分支:4 个月前 )
1d701d16
Don't overflow pointer addition 2 天前
e76924ef
In both cases we add negative value (as unsigned type), so
pointer addition wraps, which is undefined behavior.
2 天前
更多推荐
已为社区贡献2条内容
所有评论(0)