pythonimport cv2import numpy as npdef compare_imagesimg1 img2 # 将图片转换为HSI颜色模式 img1_hsi = cv2cvtColorimg1 cv2COLOR_BGR2HSV img2_hsi = cv2cvtColorimg2 cv2COLOR_BGR2HSV # 计算两张图片的像素差异 d
import cv2
import numpy as np
def compare_images(img1, img2):
# 将图片转换为HSI颜色模式
img1_hsi = cv2.cvtColor(img1, cv2.COLOR_BGR2HSV)
img2_hsi = cv2.cvtColor(img2, cv2.COLOR_BGR2HSV)
# 计算两张图片的像素差异
diff = cv2.absdiff(img1_hsi, img2_hsi)
diff = cv2.split(diff)[1] + cv2.split(diff)[2] # 只考虑色调和饱和度的差异
# 设置像素差异的阈值
threshold = 50
# 将差异超过阈值的像素原样输出,其他像素设置为0
diff[diff > threshold] = 255
diff[diff <= threshold] = 0
return diff
# 读取两张HSI颜色模式的图片
img1 = cv2.imread('image1.jpg')
img2 = cv2.imread('image2.jpg')
# 调用函数进行像素比较
result = compare_images(img1, img2)
# 显示结果图片
cv2.imshow('Different Pixels', result)
cv2.waitKey(0)
cv2.destroyAllWindows()
``
原文地址: https://www.cveoy.top/t/topic/hQT0 著作权归作者所有。请勿转载和采集!