OpenCV-Python图像加法
简介OpenCV-Python图像加法有两种方式,一种是直接使用+号进行相加,一种是cv2.add函数进行加法运算,但是两种加法的计算方式有差别,+运算是取模运算,cv2.add用的则是饱和运算,所进行相加后图片的样式会有一定的差别。
图象的加法运算一定要保证两种图片的像素是一致的,否则就会出错.
一、取模运算(+)
两张图片的同一个像素点进行相加,如果两个像素点值相加小于255则就是相加后的值;如果两个像素点的值相加大于了255,就需要用相加后的结果与255相除,取余数,也就是取模.
二、饱和运算(cv2.add)
两张图片的同一个像素点进行相加,如果两个像素点值相加小于255则就是相加后的值;如果两个像素点的值相加大于了255,那么就直接取255即可.
示例:
# -*- coding: utf-8 -*-
# Data: 2023/7/2
import cv2
import numpy as np
img1 = cv2.imread("./1-1.jpg", cv2.IMREAD_UNCHANGED)
img2 = img1.copy()
img3 = img1 + img2
cv2.imshow("img1+img2", img3)
img4 = cv2.add(img1, img2)
cv2.imshow("img add img2", img4)
cv2.waitKey(0)
cv2.destroyAllWindows()
运行效果: