OpenCV-Python图像加法

xiaohai 2023-07-04 17:21:11 609人围观 标签: Opencv 
简介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()

运行效果:
图片alt