这是自己计算视觉课程的大作业,要求实现有基本功能的实时人脸识别系统。目前的系统在识别过程中,能保证视频以30FPS的速度正常播放。
另外,系统支持四种人脸识别算法:Eigenface、Fisherface、LBPH以及本人实现的LBPH算法(MyLBPH),在默认配置下,这四种算法的识
别准确率分别是74%、100%、94%和77%。
该系统有训练和识别两种模式,当提供-train开关时,系统便开始训练指定的模型,并进行测试,保存训练好的模型、绘制CMC@10曲线。
默认情况下,系统进入识别模式,从摄像头(或者视频)读入数据,检测其中包含的人脸并进行识别,如果检测到人脸,会用矩形框出人脸区域,
若识别出某个人,便将该人的名字显示在人脸框上方,并把此人在库里对应的最像的照片缩小显示在左上角。因为在识别过程中会对人脸进行
旋转和裁剪,所以也会框出裁剪后的人脸区域。每识别出一个人,显示结果后,便停止检测与识别,直到按下空格键才会继续检测与识别。
如果提供了-record参数,系统将识别过程中的数据录制下来,存到record.avi中(具体效果参考附带的数据文件)。更多的使用细节请
输入PRJ2.exe -help查看。
- 操作系统:windows 10家庭版,基于x64处理器
- IDE: Microsoft Visual Studio Community 2015,版本14.0.25413.01 Update 3
- OPENCV:3.2.0 + contrib模块