图像融合opencv中addWeighted()

第一步,功能说明:addWeighted()函数是将两张相同大小,相同类型的图片融合的函数。他可以实现图片的特效,不多说了,直接上图。

第二步,结果图显示:

待 融合的两张图src1,src2:

20180812165201164

效果图dst:

20180812165256206

第三步,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,输出图片

第四步,代码展示

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#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;
  
}

posted @   wuyuan2011woaini  阅读(137)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
点击右上角即可分享
微信分享提示