论文部分内容阅读
随着移动互联网时代的深入发展、智能终端的普及及其计算性能的大幅度提升,使得移动终端上有着移动支付、手机解锁、应用解锁等实际应用场景需要的人脸识别技术应用成为可能与研发方向。人脸识别技术中的一个关键问题在于人脸图像的高维度。研究学者们对这一降维问题,提出了基于子空间的不同算法模型,而这一类算法鲜有应用到安卓移动终端上。本文在C2DPCA算法的基础上,通过引入QR分解法融合了传统PCA算法来对C2DPCA算法进行扩展,并专门设计了分类器将其移植到安卓移动终端上,达到了识别率与耗时方面的要求。本文首先综述了国内外人脸识别技术的理论研究与应用发展的现状,对人脸识别技术领域所常用的研究算法进行分类概括与分析、比较,指出PCA以及2DPCA等算法相较于其他算法在移植到计算资源相对受限的安卓终端上面的优势。然后重点对传统PCA算法、2DPCA算法以及C2DPCA算法应用于人脸识别进行了分析,分别从累加特征值大小、样本集识别率以及耗时等方面进行对比,并通过实验验证阐述了其中的差异与不足之处。接下来通过引入QR分解法,将C2DPCA算法与传统PCA算法相互融合起来,设计出符合需要的特征距离度量方法,并使用最近邻分类器进行识别分类。通过通用人脸数据库的试验验证,获得了更好的识别率与较好的计算效率。最后在安卓移动终端上设计并实现了一个以人脸识别为主要功能的安卓应用程序,基于本文所设计的算法,在安卓平台下使用Java开发语言和C语言以及利用JNI(Java Native Interface)技术使用开源计算机视觉库Open CV来实现,并评价其功能与性能指标。通过大量研究与实验结果表明本文所构建的算法模型在原有算法性能的基础上,进一步提高了人脸库的识别性能,普遍提升了数个百分点且均在90%以上,并且平均人脸计算耗时提升了近一倍,有利于在移动终端上的移植实。而在安卓手机上的运行结果表明本文算法适用于在计算资源受限的移动设备上进行应用实现。