opencv图像加法运算

1.

使用加号运算符“+”对图像a(像素值为a)和图像b(像素值为b)进行求和运算时,遵循以下规则:

import cv2
import numpy as np
img1=np.random.randint(0,256,size=[2,3],dtype=np.uint8)
img2=np.random.randint(0,256,size=[2,3],dtype=np.uint8)
print("img1\n",img1)
print("img2\n",img2)
print("img1+img2\n",img1+img2)

2.cv2.add()函数

cv2.add(a,b)

像素相加得到饱和值,也就是如果相加值小于256饱和值就是原来的结果,如果相加值大于255,饱和值取255

例如1

2

import cv2
import numpy as np
img1=cv2.imread("D:\lena.jpg",0)
img2=img1
lena1=img1+img2
lena2=cv2.add(img1,img2)
cv2.imshow("lena1", lena1)
cv2.imshow("lena2",lena2)
cv2.waitKey()
cv2.destroyAllWindows()

● 使用加号运算符计算图像像素值的和时,将和大于255的值进行了取模处理,取模后大于255的这部分值变得更小了,导致本来应该更亮的像素点变得更暗了,相加所得的图像看起来并不自然。

● 使用函数cv2.add()计算图像像素值的和时,将和大于255的值处理为饱和值255。图像像素值相加后让图像的像素值增大了,图像整体变亮。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章