Many applications require tracking and recognition of multiple faces at distances, such as in video surveillance. Such a task, dealing with non-cooperative objects is more challenging than handling a single face and than tackling a cooperative user. The difficulties include mutual occlusions of multiple faces and arbitrary head poses. In this paper, we present a method for solving the problems and a real-time system implementation. An appearance model updating mechanism is developed via Gaussian Mixture Models to deal with tracking under head rotation and mutual occlusion. Face recognition based on video sequence is then performed to get the identity information. Through fusing the tracking and recognition information, the performance of them are both improved. A real-time system for multi-face tracking and recognition at distances is presented. The system can track multiple faces under head rotations, and deal with total occlusion effectively regardless of the motion trajectory. It is...