版权声明:如需转载请标注 https://blog.csdn.net/weixin_40973138/article/details/84489399
1. 算数运算
注意:两幅图像的像素大小要一致
进行图像像素之间的算术运算,首先要导入图像,读取其中信息:
m1 = cv.imread("/home/pi/Desktop/m1.jpg")
m2 = cv.imread("/home/pi/Desktop/m2.jpg")
a. 加:
def add_demo(m1, m2):
dst = cv.add(m1, m2)
cv.imshow('m1 + m2', dst)
b. 减:
def subtract_demo(m1, m2):
dst = cv.subtract(m1, m2)
cv.imshow('m1 - m2', dst)
c. 乘:
def multiply_demo(m1, m2):
dst = cv.multiply(m1, m2)
cv.imshow('m1 * m2', dst)
d. 除:
def divide_demo(m1, m2):
dst = cv.divide(m1, m2)
cv.imshow('m1 / m2', dst)
e. 求均值:
print cv.mean(m1)
f. 求方差:
print cv.meanStdDev(m1)
2. 逻辑运算
a. 与(取低值):
cv.bitwise_and(m1, m2)
b. 或(取高值):
cv.bitwise_or(m1, m2)
c. 非:
cv.bitwise_not(m1)
d. 异或:
cv.bitwise_xor(m1, m2)
3. 调节对比度和亮度
def contract_brightness_demo(image, c, b): #c 为对比度,b 为亮度
h, w, ch= image.shape #h 为高,w 为宽,ch 为通道数
blank = np.zeros([h, w, ch], image.dtype)
dst = cv.addWeighted(image, c, blank, 1-c, b)
cv.imshow('con-bri-demo', dst)
对比度调节原理:加大像素间值的差异
亮度调节原理:像素统一值叠加
cv.imshow('m2', m2)
contract_brightness_demo(m2, 1.5, 30)
结果: