pythonopencv实现图像融合_OpenCV_Python官方文档7——图像融合

OpenCV-Python Tutorials

https://opencv-python-tutroals.readthedocs.io/en/latest/py_tutorials/py_tutorials.html

图像叠加(融合)

主要函数

被叠加的两张图片的大小、类型(高度/宽度/通道数)必须相同。 但是如果这两张图片大小不相同,有什么方法解决?具体解决方法请点击此处查看

cv2.add(img1,img2):直接对两张图片作加法运算

Numpy中可以直接用res = img1 + img2相加,但这两者的结果并不相同,因为OpenCV中的加法运算是饱和运算(就是当运算结果大于一个上限或小于一个下限时,结果就等于上限或是下限。),而Numpy中的加法运算是取模运算。

如下面代码中cv2.add(x,y)运行结果为[[255]],是因为250+10 = 260 >= 255,所以结果就等于上限255,x+y运行结果为[4],是因为250+10 = 260 mod 255 = 4。

OpenCV的结果会更好,所以最好使用OpenCV中的函数

from imutils import *

import os

os.chdir('D:/BaiduYunDownload/')

img1 = imread('image1.jpg')

img2 = imread('image2.jpg')

show(img1)

show(img2)

x = np.uint8([250])

y = n

你可能感兴趣的:(pythonopencv实现图像融合_OpenCV_Python官方文档7——图像融合)