openCV实现图像融合的示例代码

作者:山居秋暝LS 时间:2022-05-20 03:28:16 

1. 概念

图像融合: 两幅图片叠加在一起,形成前景背景的效果。

2. 流程

(1)读入要融合的两幅图片。
(2)把两幅图片调整到统一大小,方便下一步叠加。
(3)对两幅图片按照一定的权重相加。
(4)显示图片。img1,img2 --> resize --> cv2.addWeighted()–>show

addWeighted方法:

函数原型:

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

这个函数实现对输入的两幅图像进行线性系数的加权和。

第一个参数:src1,表示进行加权操作的第一个图像对象

第二个参数:double型的alpha,表示第一个图像的加权系数

第三个参数:src2,表示进行加权操作的第二个图像对象

第四个参数:double型的beta,表示第二个图像的加权系数,很多情况下,有关系 alpha+beta=1.0

第五个参数:double型的gamma,表示一个 作用到加权和后的图像上的标量,可以理解为加权和后的图像的偏移量

第六个参数:dst,表示两个图像加权和后的图像,尺寸和图像类型与src1和src2相同

3 代码

'''
图像融合(对图像加权):img1,img2 --> resize --> cv2.addWeighted() --> show
'''
import cv2
import matplotlib.pyplot as plt

# 1 read
fg = cv2.imread('fg.png', 1)
bg = cv2.imread('bg.png', 1)
fg = cv2.cvtColor(fg,cv2.COLOR_BGR2RGB)
bg = cv2.cvtColor(bg,cv2.COLOR_BGR2RGB)

# 2 resize
fg = cv2.resize(fg,(850,550),interpolation=cv2.INTER_AREA)
bg = cv2.resize(bg,(850,550),interpolation=cv2.INTER_AREA)

# 3 addWeighted
w1 = 0.8
w2 = 0.2
re = cv2.addWeighted(fg,w1,bg,w2,0)

# 4 show
plt.subplot(131)
plt.imshow(fg)
plt.title('fg')

plt.subplot(132)
plt.imshow(bg)
plt.title('bg')

plt.subplot(133)
plt.imshow(re)
plt.title('re')

plt.show()

openCV实现图像融合的示例代码

来源:https://blog.csdn.net/qq_35732321/article/details/123520009

标签:openCV,图像融合
0
投稿

猜你喜欢

  • 如何正确处理ajax 302跳转问题回博客首页

    2009-02-28 14:01:00
  • python3利用ctypes传入一个字符串类型的列表方法

    2021-06-10 20:33:36
  • 我要如何了解用户的需求

    2007-08-26 17:19:00
  • Yolov5训练意外中断后如何接续训练详解

    2022-05-14 00:16:51
  • document.all与WEB标准

    2008-03-16 14:28:00
  • Python使用base64模块进行二进制数据编码详解

    2023-08-26 20:13:13
  • python实现发送邮件功能代码

    2023-08-25 16:05:10
  • oracle中的trim函数使用介绍

    2023-07-11 00:37:08
  • Python制作简单的网页爬虫

    2022-10-09 12:49:16
  • python3使用smtplib实现发送邮件功能

    2022-01-08 11:13:59
  • Python实现并行抓取整站40万条房价数据(可更换抓取城市)

    2021-09-24 10:56:43
  • 使用PyInstaller将Python程序文件转换为可执行程序文件

    2023-03-28 11:35:34
  • C#数据导入/导出Excel文件及winForm导出Execl总结

    2023-07-18 04:04:43
  • 从p开始,循序渐进学习WEB标准

    2008-03-08 18:53:00
  • Python如何利用Har文件进行遍历指定字典替换提交的数据详解

    2022-04-22 22:35:17
  • 关于获取HTML元素的CSS属性值函数

    2008-09-01 13:20:00
  • ASP.NET 2.0中Gridview控件高级技巧图文教程

    2007-08-07 15:46:00
  • python3 配置logging日志类的操作

    2021-04-22 20:15:09
  • python 列表推导式使用详解

    2021-10-13 01:53:28
  • Python 浪漫烟花实现代码全解

    2023-11-16 01:24:56
  • asp之家 网络编程 m.aspxhome.com