• OpenCV将两图片进行混合,达到两张图片合并成一张图片的效果


    一、概述

      案例:将两张图片混合成一张图片,并且原图的元素要保留到同一张图片中。

    二、示例图片

    1.混合后的图片

    2.原始的两张图片

     

    三、示例代码

    //将两张图片进行混合
    #include <opencv2/opencv.hpp>
    #include <iostream>
    
    using namespace cv;
    using namespace std;
    
    int main(int argc, char const *argv[])
    {
    	//加载并输出原图,要想混合图片则这两张图片的大小和尺寸必须是一样的
    	Mat src1 = imread("flow.jpg");
    	Mat girl = imread("girl.jpg");
    	imshow("girl",girl);
    	imshow("src1",src1);
    	Mat dst;
    	//混合两张图片
    	if(girl.rows ==src1.rows && girl.cols == src1.cols){
    		double alpha = 0.5;
    		/**
    		 * 第一个参数:要混合的第一张图片
    		 * 第二个参数:第一张图片的透明度
    		 * 第三个参数:要混合的第二张图片
    		 * 第四个参数:第三个参数的透明度
    		 * gamma值
    		 	dst:混合后的输出图像
    		 * 
    		 * */
    		addWeighted(girl,0.3,src1,0.7,0.0,dst);
    		imshow("dst",dst);
    		waitKey(0);
    		return 0;
    	}else{
    		cout << "图片大小不一致"<<endl;
    	}
    	return 0;
    }
    

      

  • 相关阅读:
    文件上传跨域解决方案-jQuery-File-Upload
    求数列的的增幅,已知起始列和结束列,中间阶梯数
    mud那些坑 find_object问题
    jquery mCustomScrollbar使用
    JS的Date对象
    JS获取当前日期
    Go数组求和
    Go九九乘法表
    Go语言基础之time包
    Go语言基础之流程控制
  • 原文地址:https://www.cnblogs.com/tony-yang-flutter/p/15380617.html
Copyright © 2020-2023  润新知