OpenCV-Python实战(16)——人脸追踪详解

OpenCV-Python实战(16)——人脸追踪详解

    • 0. 前言
    • 1. 人脸追踪技术简介
    • 2. 使用基于 dlib DCF 的跟踪器进行人脸跟踪
      • 2.1 完整代码
    • 3. 使用基于 dlib DCF 的跟踪器进行对象跟踪
      • 3.2 完整代码
    • 小结
    • 系列链接

0. 前言

人脸处理是人工智能中的一个热门话题,人脸处理可以使用计算机视觉算法从人脸中自动提取大量信息,例如身份、意图和情感;而目标跟踪试图估计目标在整个视频序列中的轨迹,其中只有目标的初始位置是已知的,将这两者进行结合将产生许多有趣的应用。由于外观变化、遮挡、快速运动、运动模糊和比例变化等多种因素,人脸追踪非常具有挑战性。

1. 人脸追踪技术简介

基于判别相关滤波器 (discriminative correlation filter,DCF) 的视觉跟踪器具有优异的性能和较高的计算效率,可用于实时应用程序。DCF跟踪器是一种非常流行的基于边界框跟踪的方法。
dlib库中实现了基于DCF的跟踪器,可以很方便的将其用于对象跟踪。在本文中,我们将介绍如何使用此跟踪器进行人脸和用户选择对象的跟踪,这种方法也称为判别尺度空间跟踪器 (Discriminative Scale Space Tracker,DSST),追踪器仅需要输入原始视频和目标初始位置的边界框,然后跟踪器自动预测目标的轨迹。

2. 使用基于 dlib DCF 的跟踪器进行人脸跟踪

在进行人脸追踪时,我们首先使用dlib人脸检测器进行初始化,然后使用基于dlib DCF的跟踪器DSST