Building an interactive object tracker using the CAMShift algorithm
Color space based tracking allows us to track colored objects, but we have to define the color first. This seems restrictive! Let us see how we can select an object in a live video and then have a tracker that can track it. This is where the CAMShift
algorithm, which stands for Continuously Adaptive Mean Shift, becomes relevant. This is basically an adaptive version of the Mean Shift algorithm.
In order to understand CAMShift, let's see how Mean Shift works. Consider a region of interest in a given frame. We have selected this region because it contains the object of interest. We want to track this object, so we have drawn a rough boundary around it, which is what "region of interest" refers to. We want our object tracker to track this object as it moves around in the video.
To do this, we select a set of points based on the color histogram of that region and then compute the centroid. If the location of this...