有一个小小小任务,求取目标图像和实际图像之间的误差。
opencv 提供了一个便捷的函数cv2.absdiff来获取误差。
于是在jupyter notebook里进行实验
import cv2
import matplotlib.pyplot as plt
import numpy as np
img_src = cv2.imread('img1.jpg')
img_dest = cv2.imread('img2.jpg')
#差值的绝对值
frameDelta = cv2.absdiff(image_two,image_one)
plt.imshow(frameDelta)
需要注意的是:cv2.imread读出来的图片格式是dtype=uint8,如果要不使用opencv自己做差计算的话,要记得把img_src 的格式改为int。
frameDelta = np.abs(img_dest.astype(int) - img_src.astype(int) )