Opencv中两张图片是可以互相运算的,加减乘除都可以,那么两张图片运算以后效果是什么样的呢?
1、图像的加法运
算图的加法运算实际就是矩阵的加法运算,所以两张图的尺寸必须一样才能相加。具体的api是add(A,B)
2、图像的减法运算
减法的api是subtrack(A,B)。减法有位置区别,A-B和B-A是完全不一样的结果,所以顺序要确定。
3、图像的乘除运算
乘法的api是multyply(A,B),除法的api是divide(A,B),图像的乘除和加减类似,都能让图片更亮或者更暗,乘除的程度更大一些。
import cv2 import numpy as np # 导入一张图片 img=cv2.imread('20220627220106.jpg') # 查看图片尺寸 print(img.shape) # 创建另外一张图 img1=np.ones((787,1205,3),np.uint8)*100 # 显示原图 cv2.imshow('orig',img) # 图片相加 result=cv2.add(img,img1) # 显示相加后的图片 cv2.imshow('result',result) # 图像相减 img3=cv2.subtract(result,img1) cv2.imshow('orig_1',img3) # 图像相乘 img4=cv2.multiply(img,img1) cv2.imshow('img4',img4) # 图像相除 img5=cv2.divide(img,img1) cv2.imshow('img5',img5) cv2.waitKey(0)