参考博客:https://cloud.tencent.com/developer/article/1199386
opencv自带处理图片色素处理函数
cv.add()加法
cv.subtract()减法,若果相减为负数,则改为0
cv.divide()除法,用的很少,除了值就很小,像素就变小了
cv.multiply()乘法,由于图像本就不平滑,乘了后会有一种“特效”
需要两张图片,shape一样,对他们同一位置的色素值进行运算
效果:
# coding=GBK
import cv2 as cv
import numpy as np
def algorithm(img1,img2):
add=cv.add(img1,img2)
cv.imshow("add",add)
sub=cv.subtract(img1,img2)
cv.imshow("sub",sub)
di=cv.divide(img1,img2)
cv.imshow("div",di)
mu=cv.multiply(img1,img2)
cv.imshow("mult",mu)
image1=cv.imread("D://linux.jpg")
image2=cv.imread("D://uu.jpg")
cv.imshow("linux",image1)
cv.imshow("uu",image2)
algorithm(image1,image2)
cv.waitKey(0)
cv.destroyAllWindows()