opencv——图像混合

1.老规矩,首先保证pycharm中导入了cv2 这个库,待会才能调出其中的函数来。

import  cv2 as cv

2.先导入cv2这个库。

img1=cv.imread('img1.png')
img2=cv.imread('img2.png')

3.读取需要混合的两张图片。

h, w, c = img1.shape
img2 = cv.resize(img, (h, w), interpolation=cv.INTER_CUBIC)

4.获取到图片的shape,然后改变图片的尺寸,如果尺寸不一样,就把大的图片变成和小的图片的尺寸。

dstimg=cv.addWeighted(img1,0.7,img2,0.3,0)

5.addWeighted是cv2库中的一个函数,里面的参数是这样的:

def addWeighted(src1, alpha, src2, beta, gamma, dst=None, dtype=None)
公式:dst = α · img1 + β · img2 + γ
第一个参数是图片1,第二个参数是上面公式的α,img2就是图片2,beta是公式中的β
图片的混合符合以上的公式。
cv.imshow('dst',dstimg)
cv.waitKey(0)
cv.destroyAllWindow()

6.显示混合后的图片,然后设置关闭窗口。

我的图1是 

 图2 是

混合后的是

 

原文地址:https://www.cnblogs.com/2252510756-com/p/10452843.html