Object tracking using background subtraction
Background subtraction is a technique that models the background in a given video, and then uses that model to detect moving objects. This technique is used a lot in video compression as well as video surveillance. It performs well where we must detect moving objects within a static scene. The algorithm basically works by detecting the background, building a model for it, and then subtracting it from the current frame to obtain the foreground. This foreground corresponds to moving objects.
One of the main steps here is to build a model of the background. It is not the same as frame differencing because we are not differencing successive frames. We are modeling the background and updating it in real time, which makes it an adaptive algorithm that can adjust to a moving baseline. Therefore, it performs much better than frame differencing.
Create a new Python file and import the following packages:
import cv2
import numpy as np
...