This project was undertaken by Maria José Garcia Sopo, Igor Barbosa and Adriyana Danudibroto during the Master Course of Computer Vision and Robotics with the objective of implementing a mean shift tracking algorithm.
This is Project Post, it's probably demonstrating final or partial results of a project that I've undertaken.
Tracking of an object in a sequence of images has a wide range of applications, for example in surveillance and monitoring, perceptual user interface and video compressing . Tracking an object in real-time is a challenging task in computer vision. Other than being computed in real-time, a good tracking algorithm also has to be robust from occlusion, clutter, rotation in depth and changes in camera position. Compared to detection and recognition, tracking requires less exhaustive search by limiting the target area through the tracking prediction.
There are various methods available for tracking, they can be divided into two general type, deterministic and probabilistic. Deterministic method looks for the local maxima of a similarity measure between the object model and the target iteratively, for example: mean-shift tracking. In the probabilistic method, the movement of the object model is modelled based on its underlying dynamics, for example: Kalman filter and particle filter.
In this implementation of visual tracking, mean-shift tracking method is used first. In mean-shift tracking algorithm, a description of the object model is extracted at the beginning of the process. In this case, the object model is represented by a weighted histogram so that the pixels closer to the center of the object have more importance. In general, tracking methods assumes that the object locations in successive images are close to each other and any changes in camera perspective would be incremental. Thus, the searching process in the current image starts from the same location as the object location in the previous image. A similarity measure is taken between the target model and the target location, in this case Bhattacharyya coefficient is used. Then mean-shift algorithm is applied using the weighting based on the overlapping intensity distribution between the object and the target. The center of the target location is updated using the new mean by the mean-shift algorithm until the local maxima is found.
The mean shift algorithm can be extended to be used with sequence of colour images and to fit with the varying scale of the object throughout the sequence. It works well in the absence of occlusion. However, when occlusion does appear, especially when the dimension of the obstacle is relatively larger compared to the object, the assumption that the locations of the object in successive images are nearby is no longer valid. To encounter occlusion problem, Kalman filter is implemented as an addition to the mean-shift algorithm. When the observation from the mean-shift algorithm does not exist, Kalman filter takes over and uses its prediction to update the new location.