Mean shift algorithm is a non-parameter density gradient estimation which has been firstly applied in pattern recognition, now it is widely used in computer vision, such as: image smooth, filtering, segmentation, edge extraction and object tracking.We firstly fix on the essence of the mean shift algorithm and prove that mean shift algorithm is Newton method or Gauss-Newton method in essence, and then utilize its idea of finding the maximum of density function to solve the optimize problem with the modified weight function and kernel window width.In order to solve the shortcomings of the mean shift based tracking algorithm such as: unable to track fast moving object, without target model update, robustness to solve the occlusion problem, we combine the kalman filter with mean shift algorithm to form a extended algorithm. We first model the movement of the target and employ kalman filter to predict the target states in next frame, then mean shift tracking algorithm use this predict state as the start point to search the target. To solve the occlusion problem, we present two kinds of model update method to adapt to the change of the target's represent: weighted update strategy and kalman-filter-based update strategy, then we classify the occlusion problems into two main cases specified as partial occlusion and complete occlusion with a kalman-error-based occlusion detector. For the mean shift algorithm is insensitive to partial occlusion, we do not need special work to deal with partial occlusion, to complete occlusion case, we present an efficient target search strategy to solve this problem.Finally, we list the latest classical algorithms to solve the other shortcomings of the basic mean shift based tracking algorithm and discuss the way to improve them. |