android 通过检测和比对实现人脸追踪

转载:http://blog.csdn.net/duan19920101/article/details/50705253?locationNum=3&fps=1

1.不管是单目标还是多目标的跟踪,在每一帧需要保存的是:某个人到该帧为止最清晰的人脸区域图像和该帧人脸区域的特征(因为跟踪使用的是上一帧人脸图像的特征)。

2.单个人脸的跟踪:只需要在第一帧利用人脸检测算法检测出人脸区域,并分别将该人脸图片和该人脸的特征保存;当下一帧到来时,我们会在该帧检测到的人脸周围取负样本,并根据上一帧的特征来判断需要跟踪的是哪个目标。

3.多个人脸的跟踪:首先,在第一帧视频图像中使用人脸检测程序检测出所有出现的人脸,并分别保存每个人脸区域图像及该人脸区域的特征信息;当下一帧到来时,检测该帧中出现的人脸,并使用相关算法(如CT算法)在每个人脸周围获取负样本;然后使用多目标分类的算法将他们分开;最后使用OpenCV自带的特征匹配算法(如LBP算法)将该帧人脸图像与上一帧的人脸进行匹配,达到跟踪的目的。

在此过程中,需要不断更新每个人的图像,当有新的更加清晰的图像出现时(需要使用清晰度测量程序),要用当前图像替换之前保存的图像;不管当前帧的人脸图像是不是最清晰的,都要保存它的特征信息,因为,当下一帧到来时,我们需要使用它的特征进行匹配。

总之,在整个过程中,我们有两个独立的存储空间需要不断地更新,一个是保存每个人的最清晰的人脸区域图像,另一个是保存当前帧的人脸区域的特征信息。最清晰的图像不一定在每一帧图像到来时都需要更新,但是,人脸区域图像的特征在每一帧都要更新,因为下一帧要和它进行匹配。

猜你喜欢

转载自blog.csdn.net/viking_xhg/article/details/79368856
今日推荐