论文部分内容阅读
人脸识别一直是模式识别领域中的一个即热门又复杂的问题。在理论研究方面,近年来,以稀疏表征为基础的人脸识别(SRC)模型和以协同表征为基础的人脸识别(CRC)模型都表现出了区别于传统人脸识别方法的优越性。SRC和CRC的主要思想是:通过构建冗余字典,把测试样本表示为冗余字典的线性组合,进而使用具有判别信息的线性表示系数得到测试样本的类别标签。但是这两种算法也有一定的局限性:SRC和CRC都需要构建冗余字典,小样本问题成为两个模型的主要问题之一;SRC是一个l1,范数约束下的最优解问题,求解过程比较耗时;由于l2范数不具备稀疏性,CRC算法在训练样本具有低维样本特征时,其识别率普遍偏低。在实际的应用中,由于视频监控技术不断发展,视频流中的人脸识别与监控日益受到人们关注,但是要做到在视频流中快速、精准的识别出人脸依然比较困难;实际生活环境下人脸的遮挡、角度和光照等因素也都将大幅度地降低理论研究中各种识别算法的精度。针对以上问题,本文尝试从理论和实际应用两方面对SRC、CRC两种模型做深入分析与研究,主要工作表现在:(1)从压缩传感理论出发,对目前人脸识别技术中较为流行的SRC模型和CRC模型的研究背景、实现过程以及两种模型的区别与联系作综述性的分析。(2)从线性回归的角度分析SRC、CRC,并结合Elastic Net线性回归方法的思想,提出一种基于稀疏与协同联合表征的人脸识别(S_CRC)莫型。S_CRC将l1范数与l2范数同时作为正则化约束条件,使得重构的线性表示系数具有更强的判别信息,从而更加有利于分类。最后通过在AR、Extended Yale B两个人脸数据库上的仿真实验,论证S_CRC模型的有效性。(3)通过分析实验结果,得出SRC、CRC、S_CRC三种模型在特征维数上的统一规律,并对三种模型之间的区别和联系进行归纳总结。(4)在Visual Studio 2010开发环境下,使用C++语言和OpenCV视觉库,编程实现以MFC为平台的视频流人脸识别系统。该系统包含人脸检测、人脸跟踪、人脸识别以及人员信息登记和图片采集等主要模块,使用SQL Server数据库记录个人资料和人脸图片信息,以便适应规模较大的应用环境。为了兼顾实验环境下的功能测试和监控环境下的实时应用,本系统除了具备对视频流进行实时、自动的人脸检测、跟踪和识别处理功能之外,还提供对静态图像和视频文件进行分步处理的操作界面,具有一定的实用价值。