用途:
- 可以用于计算两张图片之间的差异值,包括:计算背景图与目标图之间的差异;
- 可以用于计两个数组之间或数组与标量之间每个元素的绝对差。
用法:
需要注意:
输入cv2.absdiff(gray_cur, gray_base)中的gray_cur和gray_base的数据类型及其维度必须一样。
gray_base = cv2.cvtColor(baseImg, cv2.COLOR_BGR2LUV)
gray_cur = cv2.cvtColor(curImg, cv2.COLOR_BGR2LUV)
resImg = cv2.absdiff(gray_cur, gray_base)
代码示例:
输入两张类型一样的数据:
#cv2.absdiff的使用
import cv2
# 读取图片
baseImg = cv2.imread("./extract_result/keyframe_200.jpg")
curImg = cv2.imread("./extract_result/keyframe_234.jpg")
# 转灰度图
gray_base = cv2.cvtColor(baseImg, cv2.COLOR_BGR2LUV)
gray_cur = cv2.cvtColor(curImg, cv2.COLOR_BGR2LUV)
resImg = cv2.absdiff(gray_cur, gray_base)
cv2.imshow("resImg ", resImg)
cv2.waitKey(0)
cv2.imwrite('./diff.jpg', resImg)