Motion detection and tracking
这个是OpenCV官方的样例视频,可以在github下载全套图片、视频样例
OpenCV-github
import numpy as np
import cv2 as cv
cap = cv.VideoCapture(r"C:\Users\amy\Desktop\OpenCV\opencv-master\samples\data\vtest.avi")
ret,frame1 = cap.read()
ret,frame2 = cap.read()
while cap.isOpened():
diff = cv.absdiff(frame1,frame2)
gray = cv.cvtColor(diff,cv.COLOR_BGR2GRAY)
blur = cv.GaussianBlur(gray,(5,5),0)
_,thresh = cv.threshold(blur,20,255,cv.THRESH_BINARY)
dialted = cv.dilate(thresh,None,iterations=3)
contours,_ = cv.findContours(dialted,cv.RETR_TREE,cv.CHAIN_APPROX_SIMPLE)
for contour in contours:
(x,y,w,h) = cv.boundingRec