cv2.absdiff的使用

用途:

  • 可以用于计算两张图片之间的差异值,包括:计算背景图与目标图之间的差异;
  • 可以用于计两个数组之间或数组与标量之间每个元素的绝对差。

用法:

需要注意:

输入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)

输出:

猜你喜欢

转载自blog.csdn.net/qq_38978225/article/details/130406619