主要内容

探测和跟踪的脸

这个例子展示了如何实现人脸检测和跟踪算法在仿真软件使用MATLAB®®功能块。金宝app它紧跟使用KLT人脸检测和跟踪算法MATLAB®的例子。

介绍

对象检测和跟踪在许多计算机视觉应用程序很重要,包括活动识别、汽车安全、监视。在本例中,您设计一个系统仿真软件®检测视频帧中的脸,面部特征识别和跟踪这些特性。金宝app输出视频帧包含发现的脸和跟踪特性。如果一个脸是不可见的或超出重点,系统会尝试重新获得的脸,然后执行跟踪。这个例子是用来探测和跟踪一个脸。

示例模型

关闭open_system (“DetectAndTrackFace”);

设置

下面的例子使用了从多媒体文件阻止读取视频帧的视频文件。的检测和跟踪子系统需要在视频帧和提供了一个边界框的脸和边界框内的特征点作为其输出的画的注释子系统。这个子系统中插入图像边界框的矩形和特征点的标记。

检测和跟踪

在这个例子中,vision.CascadeObjectDetector系统对象™检测面临的位置在当前视频帧。级联对象探测器使用Viola-Jones检测算法和训练分类模型检测。脸检测后,面部特征点识别使用“好”特征跟踪方法提出的史和预。

然后vision.PointTracker系统对象™追踪识别特征点用Kanade-Lucas-Tomasi (KLT)特征跟踪算法。每个点的前一帧,跟踪器试图找到当前帧中的对应点。然后estimateGeometricTransform函数估计,平移、旋转和尺度之间的点和新老点。这个变换应用于周围的边界框的脸。

尽管可以使用级联对象探测器在每一帧,在计算上是昂贵的。这种技术也无法探测到的脸,当主体或倾斜等。这种限制来自训练分类模型用于检测的类型。在本例中,您发现面对一次,然后KLT算法跟踪整个视频帧。再次执行检测只有当面对不再是可见的或者当跟踪器无法找到足够的特征点。

执行的能力动态内存分配在MATLAB函数(金宝app模型)允许使用前面提到的系统对象和方法在MATLAB®功能块。

open_system (DetectAndTrackFace /检测和跟踪的)

画的注释

边界框角点和特征点的位置是用来利用视频帧的输出。的画出形状阻止了边界框。特征点的使用画标记块。

open_system (“DetectAndTrackFace /画注释”)

结果

下面显示了该特征点检测与显示。

下面显示了脸和特征点跟踪。

引用

中提琴,保罗。,迈克尔·j·琼斯。“快速目标检测使用了简单的级联功能”,IEEE CVPR,2001年。

卢卡斯,布鲁斯·D。和金。“迭代图像配准技术与应用立体视觉”。人工智能国际联合大会,1981年。

卢卡斯,布鲁斯·D。和金。“检测和跟踪点的特性。”卡内基梅隆大学技术报告cmu - cs - 91 - 132, 1991。

施、简帛和卡洛预。“好跟踪特性。”IEEE计算机视觉与模式识别会议,1994年。

格里格拉,ZKalal Krystian Mikolajczyk,雅罗西克马特斯。“Forward-Backward错误:自动检测跟踪失败。”模式识别国际会议,2010年