opencv 圖像加法與圖像融合的實現(xiàn)代碼
圖像加法
1.使用Numpy加法
運算方式:結(jié)果=圖像1+圖像2
原理:圖像數(shù)據(jù)格式為unit8
8位二進制表示范圍是0到255。
二進制相加
1.不超過255的,如100+58=158
2.兩數(shù)相加可能超過255,超過255的取模運算
如255+58=(255+58)%255=58
2.使用opencv加法
方法:結(jié)果=cv2.add(圖像1,圖像2)
飽和運算:
1.如果 兩數(shù)相加小于255,100+58=158
2.兩數(shù)相加可能超過255,值取255.255+58=255
算法比較
注意參與運算的兩個圖比較大小 格式一樣。程序無法對不同尺寸和格式(如PNG,JPG)進行運算。
import cv2
import numpy as np
a=cv2.imread('lenacolor.png',flags=cv2.IMREAD_UNCHANGED)#cv2.IMREAD_UNCHANGED 未改變
b = a
result1 = a + b
result2 = cv2.add(a, b)
cv2.imshow("original", a)
cv2.imshow("result1", result1)
cv2.imshow("result2", result2)
cv2.waitKey(0)
cv2.destroyAllWindows()

圖像融合
將2張或者2張以上的圖像信息融合到一張圖片上。
不同于圖像相加,它需進過一系列算法處理。
如將兩張相同但各有不同缺陷的圖,融合成一張完美圖,結(jié)合各自優(yōu)點。

圖像加法:
結(jié)果圖像=圖像1+圖像2
圖像融合:
結(jié)果圖像=圖像1x系數(shù)1+圖像2x系數(shù)2+亮度調(diào)節(jié)量
方法:函數(shù)addWeighted
cv2.addWeighted(圖像1,系數(shù)1,圖像2,系數(shù)2,亮度調(diào)節(jié)量)
算例
算例中系數(shù)為1,1.實際中,我們一般設為不等
import cv2
b=cv2.imread('lena.bmp')#cv2.IMREAD_UNCHANGED 未改變
a=cv2.imread("boat.bmp")
result=cv2.addWeighted(a,1,b,1,0)
cv2.imshow("boat",a)
cv2.imshow("lena",b)
cv2.imshow("result",result)
cv2.waitKey()
cv2.destroyAllWindows()

到此這篇關于opencv 圖像加法與圖像融合的實現(xiàn)代碼的文章就介紹到這了,更多相關opencv 圖像加法與圖像融合內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
pytorch常用數(shù)據(jù)類型所占字節(jié)數(shù)對照表一覽
這篇文章主要介紹了pytorch常用數(shù)據(jù)類型所占字節(jié)數(shù)對照表一覽,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-05-05

