python-opencv-圖像的融合


圖像的融合本質上也是圖像間的加法操作,只是與圖像疊加不同的是,圖像疊加是兩個圖像之間的簡單直接相加,而圖像融合則是按權重分配進行相加。我們假設待融合的兩個圖像為image1和image2,其中image1權重為a,image2權重為b,那么融合后的圖像dst=image1*a+image2*b。

在OpenCV中,我們使用addWeighted(src1,alpha,src2,beta,gamma,dst=None,dtype=None)函數實現圖像的融合

import cv2

img = cv2.imread("500x400.jpg",1)
img1 = cv2.imread("tuzi500x400.jpg",1)
cv2.imshow('img',img)
cv2.imshow('img1',img1)
dst=cv2.addWeighted(img,0.5, img1,0.5,0)  #圖像融合
'''
參數1 參數3 待疊加的兩個圖像,兩個圖像的大小,通道數必須一致
參數2 參數4 分別是兩個圖像的權重
參數5 gamma:必選參數。兩個圖像融合后添加的數值。總和等於255以上就是純白色了。注意不要設置太大,不然圖片會一片白。
'''
cv2.imshow('dst',dst)
cv2.waitKey()

雖然權重的設置並沒有限制,但我們在使用時一般將兩個權重和設為1。另外,當兩個權重都設置為1時,其實就可以看成是圖像的疊加。

效果圖:

 

 

 

需要注意的是,融合后的圖像我們可以設置比原圖像小,但絕不能超過原圖像的寬高。 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM