Я хочу показать разницу в изображении в виде контура. И я хочу сохранить контур от предыдущего кадра, чтобы он не go отсутствовал, поэтому он обновляется каждый кадр. Например, контур, представляющий разницу между frame1 и frame2, красный, контур различие между frame2 и frame3 показано на видеоизображении синим цветом.
frame2-frame1 = red contour
frame3-frame2 = blue contour
=========================
frame3-frame2= red contour
frame4-frame3 = blue contour
Как изменить код? Спасибо за любой комментарий.
diff = cv2.absdiff(frame1, frame2)
img_gray = cv2.cvtColor(diff, cv2.COLOR_BGR2GRAY)
ret, img_binary = cv2.threshold(img_gray, 15, 255, 0)
roi = img_binary[y:y+h+3, x:x+w+10]
contours, hierarchy = cv2.findContours(roi, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
cv2.drawContours(frame2, contours, -1, (0, 0, 255), 2, offset=(x,y)) # blue
frame1=frame2