论文部分内容阅读
面部识别技术已经成为生物特征识别领域的热门课题,其包含人脸图像的获取、人脸检测与定位、人脸特征值的提取和搜索匹配这些方面。学术界对于识别算法和特征提取的研究成果丰富,囊括了海量的论文和应用实践,这些方法和实践提高了检索的效率和精度。然而,针对于人脸识别特征结构的搜索匹配的研究却难以得见。特别是综合考虑特征提取,算法分析,索引设计与实现于一体考虑的文章,更是极为罕见。实践证明,现阶段人脸识别系统的应用中,搜索索引系统的效率对整体性能的影响已经成为制约整体系统性能的重要因素。 另一方面,分布式系统的研究与应用也经历了长时间的发展过程,尤其是自2003年Google陆续公布了GFS分布式存储系统方案和MapReduce分布式框架以来,针对于分布式应用的研究和实践更是蓬勃发展。如Apache Hadoop等项目对该领域的发展也起到积极的推动作用。 本文通过对人脸识别的算法与搜索过程的分析与修改,提出一种结合识别算法与分布式索引架构的识别搜索方案,特别针对于海量样本数据量和高吞吐率的情况下,脸部识别搜索引擎的设计和构建。 首先,针对传统人脸识别算法中的特征点之间缺乏相互关联的问题,提出面部局部区域独立建模,并构建特征关系模型以表达人脸的形状和局部间的相互关系。同时,根据眼部特征点定位困难的实践问题,提出眼部首先定位方案和面部角度冗余的算法。目的是提高人脸特征点搜索的准确率和对于特征形状更清晰的“描述”,以降低搜索过程的复杂度,帮助提高搜索准确率。 其次,基于对待识别特征结构的分析完成索引系统的设计。通过比对已有多种具体索引方法在大数据环境下的优劣情况,选取适用于高维度索引的局部敏感哈希(Local Sensitive Hash)算法,并在对于局部特征关系分析后,提出共性搜索与个性搜索结合的搜索算法。通过对于800张样本图像的训练后,利用关系模型中所得对比参数,生成50万样本数据来测试算法准确性。 最后,由于单纯的算法优化很难继续较大幅度提升系统性能。本文中根据Hadoop分布式存储和MapReduce编程框架理论分析的基础上,将本文提出的人脸识别算法进行分布式处理,并开发出一套小型的分布式人脸识别系统作为试验及演示平台。该平台利用四台中低档配置的机器执行分布式识别搜索算法,最后通过展示搜索结果的准确度及效率,说明分布式系统应用与人脸识别领域中对整体性能提升的帮助。 实践结果证明,分布式系统下的人脸特征提取及搜索环节性能获得较大的提升,可以应用于大数据和高吞吐率下的识别系统。