Skip to content

Instantly share code, notes, and snippets.

@pknowledge
Created December 9, 2019 23:15
Show Gist options
  • Star 7 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save pknowledge/e1e0e87dcae282d0d0913605bd12ced6 to your computer and use it in GitHub Desktop.
Save pknowledge/e1e0e87dcae282d0d0913605bd12ced6 to your computer and use it in GitHub Desktop.
How to Use Background Subtraction Methods in Python Opencv
import numpy as np
import cv2 as cv
cap = cv.VideoCapture('vtest.avi')
#kernel = cv.getStructuringElement(cv.MORPH_ELLIPSE, (3,3))
fgbg = cv.bgsegm.createBackgroundSubtractorMOG()
#fgbg = cv.bgsegm.BackgroundSubtractorGMG()
#fgbg = cv.createBackgroundSubtractorMOG2(detectShadows=True)
#fgbg = cv.createBackgroundSubtractorKNN(detectShadows=True)
while True:
ret, frame = cap.read()
if frame is None:
break
fgmask = fgbg.apply(frame)
#fgmask = cv.morphologyEx(fgmask, cv.MORPH_OPEN, kernel)
cv.imshow('Frame', frame)
cv.imshow('FG MASK Frame', fgmask)
keyboard = cv.waitKey(30)
if keyboard == 'q' or keyboard == 27:
break
cap.release()
cv.destroyAllWindows()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment