基于WebCam的人脸检测技术
以下是资料介绍,如需要完整的请充值下载.
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
密 惠 保
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
密 惠 保
资料介绍:
摘要
人脸识别技术可以应用于基于网络的身份认证,我们实现了基于WebCam的人脸识别与跟踪系统。本文以WebCam采集的视频流为数据源,截取视频流中的单帧图像,通过转换彩色空间、人脸肤色建模、后处理操作和人脸定位算法实现了人脸检测,并以此为基础实现了在视频流中对于人脸的跟踪。试验结果表明,我们所实现的人脸识别算法适用于近距离人脸的检测,可以应用于基于WebCam的身份认证。
关键词
人脸识别,人脸检测,肤色,定位,视频流
基于WebCam(Internet上的摄像头)的人脸检测和跟踪技术本身可以分为如下几部分:
1.利用WebCam获取视频流(预处理);
2.人脸的检测(包括从背景中确定人脸的存在,以及验证检测到人脸是否是参加在线考试的人员);
3.人脸的跟踪(在在线考试的过程中实时监控考试对象)。
由于时间有限的缘故,在此次毕业设计中,本文要研究的内容和目标是“利用WebCam获取视频流”和“从获取的视频流帧中确定人脸的存在”这两部分。
根据以上两部分的内容,本文中要解决的问题如下:
1.如何从WebCam中得到视频流里的某一帧。
设想的解决途径是:利用Visual C++中提供的AVICap命令集来捕获视频流中的单帧图像。因为2.AVICap支持实时的视频流捕获和单帧捕获并提供视频源的控制。
实际操作思路:因为AVICap的主要功能是通过一个采集窗口(Capture Windows)来提供的, 而且,各功能函数的调用都需要采集窗口的句柄,AVIVCap的消息也是传递给采集窗口的,所以我们需要实现这样一个采集窗口(Capture Windows)。具体从三方面操作来实现:
(1)建立采集窗口:使用CapCreatCaptureWidows函数;
(2)连接一个采集设备(本论文中的采集设备是WebCam):使用CapDriverConnect函数;
(3)获取窗口状态(窗口的状态被定义在CAPSTATUS这个数据结构中,它包含了大量的有用信息,可以通过CapGetStatus函数得到CAPSTATUS的指针),从采集设备WebCam中得到视频帧。
?得到视频帧的过程是通过调用程序自定义的回调函数来实现的。所谓回调函数,其作用就是向采集设备(WebCam)的驱动程序发出读写命令,从而实现程序和设备之间定时或不定时地通信,这里的通信可以是视频流回调函数定时地从USB
摄像头取回一帧数据以便回放,也可以是其他回调函数的操作。因为这部分要解决的问题是从WebCam中得到视频流里的某一帧,所以,我们需要实现的回调函数是“单帧采集回调函数”。