毕业论文-基于计算共形几何的三维人脸形状分析和识别技术研究.docx_第1页
毕业论文-基于计算共形几何的三维人脸形状分析和识别技术研究.docx_第2页
毕业论文-基于计算共形几何的三维人脸形状分析和识别技术研究.docx_第3页
毕业论文-基于计算共形几何的三维人脸形状分析和识别技术研究.docx_第4页
毕业论文-基于计算共形几何的三维人脸形状分析和识别技术研究.docx_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘 要论文题目:基于计算共形几何的三维人脸形状分析和识别技术研究学生姓名:指导教师:摘 要三维人脸识别已经成为全世界范围内生物识别技术的热点和核心,本文主要通过利用调和映射来计算相关共形几何,对已有三维人脸数据库BU-3DFE中的人脸数据进行曲面参数化,再利用这些经过处理的参数化曲面数据进行人脸比对与识别。本文首先简单介绍了现今世界研究三维人脸识别的格局和趋势。对BU-3DFE数据库的数据文件格式做一转换,做了一些简单的预处理,并对其进行了参数化处理过程,实现了三维人脸网格数据经调和映射变换成了二维人脸网格数据。并结合了不同的曲率和法向量,同时列出了经过旋转变换的部分通过映射得到的二维图像。再以每个人的中性脸作为判断依据,根据LBP方法计算出每种不同曲率和参数下的不同准确率,最后再将每种曲率对三个参数做一融合,得到融合后的准确率。最后对处理后的数据库数据进行人脸识别数据实验,通过对实验结果的分析,总结了该算法的优缺点,评价了BU-3DFE数据库的数据质量和相应算法分析。发现在根据每种单独的参数所得到的识别准确率不是很高,但在经过三种参数融合后,能大幅提高准确率。关 键 词:三维人脸;共形几何;调和映射;BU-3DFEIIIABSTRACTTitle: 3D face Shape analysis and recognition technology based on Computational conformal geometryName: Gao JiaweiSupervisor: Li HuibinABSTRACT3D face recognition has become a worldwide biological recognition technology and the hot core of. In this paper, by using harmonic maps to compute related to conformal geometry, surface parameterization of existing 3D face database BU-3DFE face data, reuse the after treatment of parametric surface data for face alignment and recognition.In this paper, the pattern and trend of 3D face recognition in the world are briefly introduced. On the BU-3DFE database data file formats do conversion, do some simple pretreatment, and of the process parameters, to achieve the 3D face mesh data by harmonic mapping transform into the 2D grid data. The different curvature and the normal vector are also listed, and the 2D images obtained by the mapping are also listed. And to everyones neutral face as the judgment basis, according to the LBP method calculated under each kind of different curvature and parameters of different accuracy, then the fusion of each curvature on three parameters can improve the accurate rate.Finally on the database data of face recognition experiment data. Through the analysis of the experimental results, summed up the advantages and disadvantages of the algorithm and to evaluate the BU-3DFE database data quality and the corresponding algorithm analysis. It is found that the accuracy of the recognition is not high, but the accuracy can be improved greatly after the fusion of three parameters.KEY WORDS: 3D face; conformal geometry; harmonic map; BU-3DFE目 录Error! No text of specified style in document.目 录1 绪论11.1 三维人脸识别基本概念、重要性、应用11.2 计算共形几何理论与算法21.3 本文的主要工作和贡献31.3.1 本文的主要工作31.3.2 本文的贡献32 三维人脸识别基础42.1 三维人脸识别概述42.1.1 三维人脸识别的发展历史42.1.2 三维人脸识别的一般步骤42.2 三维人脸识别现有方法分类综述42.2.1 针对表情问题的方法52.2.2 针对姿态问题的方法62.2.3 针对遮挡问题的方法63 计算共形几何基础83.1 基本理论83.1.1 光滑的情形下93.1.2 离散的情形下93.2 基本算法104 基于计算共形几何的三维人脸识别算法114.1 三维人脸数据格式转换114.2 基于曲面微分几何量的三维人脸表示134.3 基于调和映照的三维人脸参数化144.3.1 基于调和映照的三维人脸参数化144.4 基于三维人脸面部特征点的姿态校准164.5 三维人脸曲面几何量的二维嵌入表示184.6 基于局部二值模式的特征提取194.7 基于稀疏表示的三维人脸识别194.8 数值实验204.8.1 实验配置及三维人脸数据库介绍204.8.2 实验结果214.9 本章小结214.9.1 三维人脸数据预处理214.9.2 三维人脸识别算法设计224.9.3 数值实验224.9.4 结果分析225 结论与展望235.1 结论235.2 展望24参考文献25致 谢27Error! No text of specified style in document.Error! No text of specified style in document.1 绪论1.1 三维人脸识别基本概念、重要性、应用随着社会科技的不断发展,个人身份识别被运用在各种领域中,而身份识别有很多方法和手段,基本分为生物识别和非生物识别两大类,图1-1给出了一些常见的身份识别技术。非生物识别(如密码和各类证件)虽然有设置、采集和识别过程上的简便性,但它比较容易泄露且复制起来非常简便,安全性较低。而生物识别技术就克服了这样的缺点,每人都具有自己的生物特征,他人不可复制或复制过程非常复杂,安全性较高,这也正是当今社会为什么对生物识别研究火热的原因。人脸识别正是生物特征识别技术中的一种,它是基于人的脸部特征信息来进行身份识别的,同时它也是计算机可视化、图像处理和模式识别等的重要研究内容之一。在目前阶段,包括与我们所熟知的常用于识别的生物特征(指纹、虹膜等)相比,人脸识别虽不及前二者稳定、准确,但人脸识别因具有自然、友好、对用户干扰少、容易被用户接受等优势而在国家安全、军事安全、公共安全、金融安全等领域有着非常广泛的应用前景,并有很大潜力在将来成为全球最主流的个人身份识别技术。1图1-1 常见生物与非生物特征识别手段方法23通常来说,人脸识别系统多是针对二维照片或者动态视频序列,基于照相技术或者摄像技术,以图像处理技术为基础,由于它数据获取方便、成本低、处理计算复杂度较小,取得了很大发展。但是,基于二维照片进行人脸识别存在严重的障碍。首先是光照问题。在照片内是以灰度信息表示人脸面貌的,而在不同的光照情况下,得到的面貌照片差别很大;其次是姿态问题,严格符合正面侧面条件的照片是几乎不存在的。如何从二维照片得到三维姿态,并加以调整也是一个难题;另外,面貌的表情等因素也严重影响着识别过程。3图1-2展示了同一个人不同姿势、表情和面部动作下的二维照片,可以看出不同情况下的面部照片差别还是很大的,给二维人脸识别带来了一定的困难。图1-2 奥巴马的头部姿态和面部表情变化210而脸部曲面形状信息则更能精确的刻画脸部特征,并且不易受光照、姿态、温度等因素的影响,这样一来,利用脸部曲面的三维显式表达来进行人脸识别就成为人脸识别界的研究热点和迫切需要,这也就是说三维人脸识别有望从根本上解决可见光和近红外光图像人脸识别所面临的诸多难题。1.2 计算共形几何理论与算法计算共形几何是计算机科学和纯粹数学之间的交叉学科,其目的是将现代几何,经典几何的概念和定理转化为计算机算法,为工程实践服务;同时,用组合离散的方法给出经典几何定理的构造性证明,换言之,用计算机算法语言从头构建经典的共形几何理论,从而绕过了历史上传统的逻辑链条。计算共形几何的核心是 共形结构。具有共形结构的曲面是 黎曼面。共形结构的研究方法有很多种,复分析,代数几何和微分几何。我们所采用的微分几何的途径,换言之,通过黎曼度量来研究共形结构。可定向曲面上的黎曼度量天然地决定了一个共形结构,其决定方式由 等温坐标给出。等温坐标的存在性由拟共形映射的存在性所保证(可测黎曼映照定理)。调和映照和共形映射之间的关系微妙。共形映射必然调和,反之则不尽然。拓扑球面间的调和映射必为共形映射,这是因为球面上的全纯二次微分必为零。给定高亏格曲面,共形映射未必存在,若像曲面曲率处处为负,则拓扑度为一的调和映射必为微分同胚。调和映照的具体算法是非线性热流。1.3 本文的主要工作和贡献1.3.1 本文的主要工作1. 了解了当今世界三维人脸识别的背景知识、发展历程、研究现状及其未来趋势;2. 了解并学习了三维人脸数据库文件的格式以及三维人脸数据信息的保存形式,同时学会了如何利用MATLAB对不同三维人脸数据格式的转化,以符合不同识别流程的要求;3. 利用离散面逼近点的思想来求得三维人脸曲面网格结构上顶点的曲率和法向量;4. 学会了利用程序将一个三维人脸数据经过共形映射转化成为二维人脸数据结构,并能将某一顶点的各个曲面几何量(深度Range、法向量坐标(Normal_X, Normal_Y, Normal_Z)、曲度Curvedness以及形状指数Shape index)与得到的二位人脸数据结构结合起来,做出不同的人脸数据图像;5. 根据很简单的初等数学的直线旋转思想,解决了经过参数化后的二维人脸的位置偏转问题,并能利用MATLAB对一张人脸图片进行精准裁剪;6. 了解了如何利用LBP算法提取图片的特征向量,再利用SRC算法对该特征向量(组)计算距离,进行匹配识别;7. 利用上述步骤和算法对BU-3DFE数据库进行人脸识别数值实验,对于不同的参数设定,本文获得了不同的实验结果。更进一步地,通过对多种曲面几何量的融合,本文获得了较单一曲面几何量更好的实验结果。1.3.2 本文的贡献大胆利用计算共形几何(调和映射)的算法对BU-3DFE数据库进行处理和实验,并成功得到了一个结果:最终的人脸识别准确率为84.08%。虽然这个结果不是非常好,但是为今后有此想法的工作者提供了一个具有一定参考价值的算法和结果,避免了许多问题,比如“利用该算法处理BU-3DFE数据库时是否对所有数据都能行得通?”“如果不然,对哪些三维人脸数据做共形映射参数化时会失败?”等等一系列问题。然而不可否认的是,此算法还有很大的提升空间,有待各位工作者进一步完善和提高。272 三维人脸识别基础2.1 三维人脸识别概述2.1.1 三维人脸识别的发展历史三维人脸识别研究始于上世纪80年代末,兴于本世纪初,尤其是2005年美国人脸识别大挑战计划的实施,掀起了三维人脸识别研究的热潮。涌现出一大批专门从事三维人脸识别研究的高水平研究团队,其研究机构遍布美国、加拿大、法国、意大利、比利时、荷兰、以色列、澳大利亚、巴西、土耳其、中国等世界各国。大量相关研究成果发表在IEEE TPAMI、IJCV、IEEE TIFS等相关领域顶级期刊诸如FG、ICB、BTAS等生物特征识别领域主要国际会议上。与此同时,浙江大学和中科院自动化研究所在国内率先开展了三维人脸识别方面的研究。随后,北京航天航空大学、清华大学、北京交通大学、北京工业大学、四川大学、西北工业大学、大连理工大学、南京航天航空大学、合肥工业大学等多所高校也相继加入三维人脸识别的研究队伍。国内有两篇4, 5关于三维人脸的综述,但前者重点介绍三维人脸识别系统的框架,后者只是对现有方法的描述列举,缺乏深入分析且没有对最新技术作介绍.本文有助于国内研究人员快速了解三维人脸识别的研究状况与最新进展,以及该领域未来的研究趋势。2.1.2 三维人脸识别的一般步骤一般来说,一张三维人脸的完整识别过程主要包括数据采集、预处理、转化和匹配识别四大步。而对于基于计算共形几何的三维人脸识别,则可以具体为人脸数据采集、数据预处理、共形映射参数化、调整旋转以及匹配识别这几步。2.2 三维人脸识别现有方法分类综述目前三维人脸识别技术主要研究三个大方向的问题,即表情问题、姿态问题和遮挡问题。表情问题是三维人脸识别研究的难点和热点问题之一,有表情的人脸一般为一个发生可塑性形变的曲面,即使是同一个人,面部曲面特征有时候也会大相径庭。如果对数据直接进行匹配与识别,必然不会得到理想的实验结果,所以我们需要对原始人脸数据做各种预处理,使之达到我们进行数据实验的要求。姿态和遮挡问题则是在非限制环境下,不主动配合人脸数据采集的用户,其脸部姿态可能会绕偏航轴Yaw(纵向上下中轴线)、俯仰轴Pitch(横向左右中轴线)和翻滚轴Roll(延伸前后中轴线)旋转一定的角度。有些用户可能还会刻意遮挡面部,给人脸数据采集这一步骤带来非常大的阻碍。就姿态问题来说,姿态变化会引起人脸自遮挡从而造成人脸数据的缺失,特别是绕各个中轴线旋转六十度以上时人脸信息会严重缺失, 尤其是鼻尖附近数据的缺失,对现有三维人脸识别算法的标志点自动检测、姿态预估、配准技术、以及特征提取等处理模块都是一种新的挑战6,7。然而对于数据预处理这一步骤,有很多方法可以实现。对于不同的匹配识别实验方法来说,就有不同的数据预处理方法。目前根据人脸数据的分类,现有三大类处理办法,概览如图2-1。图2-1 三维人脸识别处理办法概览2.2.1 针对表情问题的方法目前针对表情问题,主要是基于表情形变模型的方法。图2-2展示了人脸表情形变的多样性和复杂性。图2-2 人脸表情变化多样性与复杂性的例子该类方法的核心是建立一个恰当的参数化表情形变模型,通过控制参数来实现表情中性化或合成各类表情。参数化表情形变模型一旦建立,则人脸曲面形状匹配问题转化为表情参数之间的比对问题。模型的建立通常假定人脸表情形变过程遵守某种物理形变原理或者假定人脸表情形变模式可通过统计学习的方法获得。前者如Lu等人8基于薄板样条(Thin-Plate-Spline)形变原理提出的三维人脸生成可形变模型(Generative Deformable Model),KakadiariS等人8依据分析力学中的拉格朗日方程提出的三维人脸注释可形变模型(Annotated Deformable Face Model);后者如Mian等人9基于Principal Component AnalySiS(PCA)子空间学习建立的表情形变模型,Frank等人10基于统计拟合方法建立的人脸三维形变模型(3D Morphable Model)。物理建模方法的主要缺点在于所用具体物理模型的形变空间非常有限,不能完全适合于对人脸表情形变空间的模拟;统计建模方法的缺点在于模型的推广能力受所选择学习样本的影响较大。此外,模型化方法通常需要手工标定大量人脸标志点(landmark)9,10或者依靠一系列复杂的刚性配准(regiStration)和非刚性拟合(fitting)算法8来找到人脸曲面间的一一对应关系。2.2.2 针对姿态问题的方法目前针对姿态问题,主要是基于人脸左右对称性的方法。图2-3为一些缺失部分侧面数据的人脸数据模型。图2-3 Gavab数据库中的缺失三维人脸模型。正面姿态人脸模型(a)及左侧面(b)和右侧面(c)。(b)和(c)中分别显示了原始侧面模型和姿态校正后的侧面模型。PaSSaliS等人11率先研究了三维人脸识别的姿态问题, 主要解决思路如下:首先建立一个通用的三维人脸标志点模型,然后通过该模型与待检测人脸候选标志点集合之间的拟合误差找出最佳标志点集合,最后利用检测出的标志点实现对大偏航旋转姿态下缺失人脸的姿态估计和缺失部位(左或右)的检测12。在此基础之上进行缺失人脸与对应的左或右半部分通用人脸注释形变模型8的刚性配准和非刚性拟合,最终利用人脸的左右对称性恢复出完整的人脸,进而用来特征提取和分类识别11。所提算法在UND侧脸三维人脸数据库13上获得了83.7%的平均识别率。该思路为姿态问题的解决提供了有益的借鉴,但该方法要求至少有一半以上侧面人脸数据存在。另外,在偏航旋转90度子库上,识别率仅为76.8%。2.2.3 针对遮挡问题的方法目前针对遮挡问题,主要是基于PCA子空间的方法。图2-4给出了一些三维人脸遮挡的情况。图2-4 UMB-DB中三维人脸遮挡多样性和随意性Colombo等人14处理遮挡问题的基本思路是:首先采用PCA子空间方法检测遮挡位置,然后采用Gappy PCA子空间方法重建完整人脸。Alyuz等人解决遮挡问题的基本思路是:首先采用区域自适应选择ICP算法将遮挡人脸配准到一个通用人脸模型上,实现遮挡检测和移除15,16,然后采用局部自适应遮挡投影子空间方法实现人脸识别17。类似的,Daoudi等人18也采用了基于ICP算法的遮挡检测和移除,以及基于PCA子空间的遮挡重建方法。上述ICP-PCA方法的主要缺陷在于:ICP算法依赖鼻尖点的精确自动检测,故不能处理鼻尖点被遮挡的情况;PCA重建算法容易丢失人脸的细节特征, 关于遮挡问题的研究目前仍处于探索阶段,尚有多方面问题需要解决。例如:如何解决鼻尖点被遮挡的情况?重建后的人脸对识别准确率的提高有多大帮助?如何对遮挡问题合理建模?如何提高遮挡变化下的识别准确率?进一步,如何解决表情、姿态、遮挡的耦合问题?3 计算共形几何基础3.1 基本理论计算共形几何其实是一个比较宽泛、比较宏观的一个方法和概念,它可以算得上是一类方法,在这类方法中还有一些相对比较具体的、不同的方法。本文采用的是欧几里德空间中的0-亏格调和映射方法,其中亏格就是人脸曲面上的标志性缺失或空白。0-亏格就是表示人脸曲面上没有亏格,也就是没有缺失的情况。此方法可能对于高亏格问题来说就不太适用了。图3-1表示了高亏格人脸映射的情况。比如说我们可以利用RicciFlow的方法,而且还可以分类为欧几里德空间RicciFlow、球面空间RicciFlow以及双曲空间RicciFlow,而且他们的操作难度和实验效果也都是不一样的。图3-1 高亏格图形映射19我们还可以利用全纯-N函数(映射)来实现计算和映射,它在针对高亏格图像处理的时候,可以利用全纯-N函数,此处N一般为曲面的亏格数。我们也可以利用调和映射的方法来计算,而且还分为欧几里德空间的调和映射、球面空间的调和映射以及双曲空间的调和映射。而本文采用的就是欧几里德空间的调和映射的方法。不止如此,我们甚至还可以利用拟共形映射的方法。下面我们就来具体看看欧几里德空间中的调和映射方法的理论基础。19第四章数据预处理人脸参数化就是基于这部分理论基础操作的。3.1.1 光滑的情形下假定S是欧氏空间R3上的一个曲面嵌入。更加限定,在这里我们只考虑最简单的拓扑结构:表面S是一个拓扑圆盘。一个拓扑圆盘是表面同胚于平面单位圆的,即此时,它是有一个单一边界的可定向,属零表面的边界。这个表面有一个诱导的欧几里得度量g。我们假设f是一个从表面到R上的函数。则该函数的调和能量定义为: Ef=Sgf2dA这个调和能量中极小的那个被称为调和函数。调和函数满足Laplace方程 gf=0.他同时满足Dirichlet边界条件 fS=h,此时S表示这个表面的边界,h是一个给定的函数。如果我们选择一个等温坐标系统u,v,则在黎曼度量下: g=e2u,vdu2+dv2,并且梯度算子被表示为: g=e-u,vu,vT,面积元是 dA=e2u,vdudv,Laplace-Beltrami算子是 g=e-2u,v2u2,2v2.并且我们假定:SD是一个映射,u,v=xu,v,yu,v,且此时xu,v与yu,v是调和函数,那么我们称u,v为调和映射。从图像上直观来说,我们可以想象表面S是由橡胶制作的,那么我们把它的表面拉伸到平面单位圆,并固定它的边界。这个映射自然会减少膜的能量(拉伸能量),并且这个最小化映射就是调和映射。调和映射在工程应用中是非常有用的,一个根本的原因是它能在一些适当的条件下给出微分同胚,即此时映射是双射且光滑。这是被称为Rado定理。Rado定理:假设:SD是一个调和映射,D是一个平面凸域。如果映射在边界上同胚,那么它内部的映射是一个微分同胚。3.1.2 离散的情形下在表面是由、三角形网格面片M的且由单纯复形近似的情况下,一个顶点被表示为vi;则当vi是内部源时,vj是目标时,面向边缘(半边)的被记为vi,vj;指向面的则称之为vi,vj,vk且此时vi, vj和vk都是按逆时针排序的。一个被定义在顶点上的函数f:MR. 假如p是三角形vi,vj,vk中的一点,则此时p可以表示为三个顶点的线性组合: p=ivi+jvj+kvk,当i+j+k=1的时候我们称(i,j,k)为重心坐标。重心坐标可计算如下: i=p,vj,vkvi,vj,vk此时表示定向三角形的有号区域,并且函数:f成为分段线性函数 fp=ifvi+jfvj+kfvk.通过直接计算,我们可以很容易证明函数f的调和能量可以写成: Ef=vi,vjMwijfvi-fvj2.我们称wij为边vi,vj的余切权重。给定vi,vj是面vi,vj,vk和面vi,vj,vl相邻的边,k是以vi为顶点的在vi,vj,vk三角形中的顶角;同样的,1是以vl为顶点的在vi,vj,vl三角形中的顶角,然后此时边的权重则称之为: wij=12cotk+cotl,如果vi,vj是处在边界上的边缘,则此时唯一的相邻三角形只有vi,vj,vk,则此时: wij=12cotk.对于所有内部顶点vi不属于M,此时离散Laplace方程变为: Ef=vi,vjMwijfvi-fvj=0,viM,这是一个线性方程系统。3.2 基本算法算法如下:1.微量的网格边界,并得到一个边界顶点的序列v0,v1,vn-12.设置边界顶点vi的图像如下 fvi=cosi,sini,i=2l=1ivl-vl-1k=1nvk-vk-1,3.对所有的边缘vi,vj利用上述公式计算余切边权重wij。4.对所有内部顶点vk,通过周围的所有顶点vj,构造离散Laplace方程 vk,vjMwkjfvk-fvj=0.5.求解上述线性系统。4 基于计算共形几何的三维人脸识别算法本章主要针对基于计算共形几何的三维人脸识别算法进行研究和数值实验,下面对这些工作详细叙述。4.1 三维人脸数据格式转换在利用各种采集仪器,得到一系列人脸初始数据后,我们首先要进行的一步工作便是三维人脸数据的预处理。因为我们拿到的是BU-3DFE 库在进行了三步预处理(分别是裁剪、人脸曲面三角形网格化以及寻找关键点)后的结果,所以在预处理这一步,本文的工作主要是了解该数据库的数据文件格式,要知道每一个人脸数据包含了什么样的信息,以及我们需要的数据是什么格式等等。我们的初始数据是后缀名为“.mesh”的数据文件,而根据我们现有的共形几何映射实现程序,它只能识别后缀名为“.m”的数据文件。后缀名为“.mesh”的数据文件主要包含了以下信息:“Vertex”, “Face”和“Landmark”。其中“Vertex”对应到人脸上为三角形网格结构的每个顶点坐标,每一个顶点都有一个数字ID;“Face”则对应的是某三个ID相应的顶点所组成的那个小三角形,例如Face如果是 Face1126Face2236Face3346Face4456Face5156 ,则它表示的小三角形网格面为图4-2所示图4-2 Face表示三角形网格面示意图图中F1 , F2 , , F5分别表示Face1 , Face2 , , Face5.图4-3将某一人脸数据的三角网格结构按不同部位放大展示(左图为眼睛的示意,右图为嘴的示意)。图4-3 某一三维人脸数据的网格结构局部放大示意图与深度图和点云表示不同,三角形网格人脸表示不但有利于处理姿态问题,而且有利于各种微分算子及局部几何形状特征的提取,故被成功应用于三维人脸识别研究中20-30, 31-33。但是,三角形网格人脸数据的质量问题一直没有得到足够重视。在图形学领域,三角形网格曲面的质量通常是指网格的分辨率和正则性。如图4-6所示,人脸数据的三角形网格分辨率非常低,并出现大量细长的不规则三角形单元。图4-6 低质量三角形网格人脸模型,由(c)可见三角形网格分辨率极低,且存在大量细长的不规则三角形研究表明,三角形网格数据的质量直接影响离散曲面的曲率、测地距离等几何量及相关微分算子计算的稳定性和准确性。然而,曲率作为三维曲面的一种重要的局部几何属性,在三维人脸识别中有着不可替代的重要作用。粗略估计,至少一半以上现有三维人脸识别算法在人脸标志点检测、区域分割、兴趣点检测、几何特征提取等关键步骤中用到了曲率信息。因此,研究三角形网格人脸数据质量和曲率估计问题对于提高三维人脸识别算法的鲁棒性具有基础性奠基作用。 “Landmark”则是每一张脸上预先用一定的方法自动提取的49个特征点ID,它们对应在人脸上主要是两眉和鼻梁还有嘴上的一些特征点。图4-4为后缀名为“.mesh”的数据文件中的数据信息示例,我们不难发现后缀名为“.mesh”的数据文件中的数据文件中,Vertex的坐标数据都是保留6位有效数字的,而且face的信息都是由三个不同的点的ID组成的,所以它是一个整数型数据。图4-4(a) mesh文件内容示例-Vertex 图4-4(b) mesh文件内容示例-Face正如图中所示,该人脸数据中包含了7962个顶点,ID为0的(也即第一个)顶点坐标为(21.4535, -26.219, 9.23178);15430个小三角形面,ID为1的(也即第一个)小三角形面是由第3个顶点(ID为2)、第1个顶点(ID为0)和第2个顶点(ID为1)所围成的。我们将这样的后缀名为“.mesh”的数据文件利用程序“readmesh.m”和“write_mfile.m”在MATLAB R2014a中转换成了后续程序可以读入的后缀名为“.m”的数据文件,图4-5展示了后缀名为“.m”的数据文件的内容,我们可以看到后缀名为“.m”的数据文件中,Vertex的坐标数据也都是保留6位有效数字的,而且Face的信息也都是由三个不同的点的ID组成的,所以它还是一个整数型数据。图4-5(a) m文件内容示例-Vertex图4-5(b) m文件内容示例-Face4.2 基于曲面微分几何量的三维人脸表示我们在对数据文件格式做完转换处理后,就可以进行各种曲率的计算了。我们知道,在三维欧氏空间中,最大、最小曲率、平均曲率和高斯曲率是曲率的三个基本形式。平均曲率是空间上曲面上某一点任意两个相互垂直的正交曲率的平均值。如果一组相互垂直的正交曲率可表示为K1, K2,那么平均曲率则为K=12K1+K2。过曲面上某个点上具有无穷个正交曲率,其中存在一条曲线使得该曲线的曲率为最大,这个曲率为最大曲率值K1,垂直于最大曲率面的曲率为最小值K2。这两个曲率属性为主曲率。而最大曲率值与最小曲率值的乘积即为高斯曲率Cgauss,又称总曲率,反映某点上总的弯曲程度。我们还计算了每一顶点的法向量Normal,这个法向量是三维的,假设它的坐标为x,y,z,我们需要分别利用它的三个坐标来参与人脸曲面参数化。每个顶点法向量的算法是先计算所有以该顶点为顶点的三角形面的法向量,再将这些法向量取平均值,这个平均值就是所求定点的法向量。 nvi=nvix,nviy,nvizT=1ki=1kvi,j-vivi,j+1-vivi,j-vivi,j+1-vi,其中vi是顶点i, vi,j是由顶点vi和vj连接所确定的边界。每个顶点曲率计算的根据,是将该顶点周围的区域近似成一个离散的含参曲面,该曲面表示为 zx,y=A2x2+Bxy+C2y2+Dx3+Ex2y+Fxy2+Gy3,再利用数据文件中大量点的坐标拟合出上式中的参数A,B,C,D,我们令 Wvi=ABBC.对Wvi做特征根分解,将所得特征根中最大的特征根作为该点的最大曲率K1,将所得特征根中最小的特征根作为该点的最小曲率K2。这样我们就得到了人脸曲面上一个顶点的最大、最小曲率值。除此之外,我们还引入了两种参数:形状指数Shape index和曲度Curvedness。他们的计算方法分别是 Shapeindex=12-1arctanK1+K2K1-K2 , Curvedness=K12+K22 .因为我们要将三维人脸经过共形映射变换成二维人脸坐标信息,所以我们其实还可以利用原先数据中就含有的每一个顶点Vertex的第三维度坐标作为一个新的参数,在这里我们称之为“深度”。那么到这一步,我们就得到了我们想要的参数,这样一来,就可以开始我们的三维人脸参数化的工作了。4.3 基于调和映照的三维人脸参数化4.3.1 基于调和映照的三维人脸参数化本文所用的计算共形映射方法的核心是参考顾老师HarmonicMap程序所建立起来的。该程序的输入为一个后缀名为“.m”的数据文件,而输出也是一个与之对应的、后缀名为“.uv.m”的数据文件,他其实也是一个m文件。在这个新的文件中,我们不仅保存了原始的Vertex顶点坐标信息和Face小三角形网格面的连接点的ID数,还在此基础上,在每个顶点的后边添加了在经过调和映射后,变成二维的等温坐标信息u,v。图4-7展示了将一张三维人脸经过Harmonic Map映射后转变成一个二维坐标下的人脸图像,图4-8展示了这张脸的三角形网格结构。 图4-7将三维人脸映射到二维人脸 图4-8 二维和三维人脸的三角形网格结构由于是共形映射,故不改变图形中各顶点连线之间所成角度。所以我们为了展示共形映射的保角性质,就将一棋盘结构先贴在二维单位圆盘上,再对应到原先的三维人脸上,网格上的小矩形角度是不会改变的,如图4-9展示了将棋盘结构贴在二维和三维人脸上的效果图。比较小的圆圈结构也是一样的,图4-10展示了将圆圈结构贴在二维和三维人脸上的效果图。 图4-9 将棋盘结构贴在二维和三维人脸上的效果图图4-10 将圆圈结构贴在二维和三维人脸上的效果图在这一步数据处理过程中,我们丢失了很多数据,包括无法完成共形映射参数化的数据和完成映射后却超出边界的数据(如图4-11)两部分,共计45个数据,也就是说成功通过本步骤,能作为实验数据的共有2355个,其中每个人都包含一张中性的无表情的无特殊姿态的无遮挡的人脸数据,一共100个人,共计100张中性脸。这些中性脸在数值实验阶段会作为评判标准。图4-11 共形映射参数化出现问题的人脸数据4.4 基于三维人脸面部特征点的姿态校准我们不难发现,映射所得二维图像都不是正对姿势,都旋转了一定的角度,而且每张脸转动的角度还不一样,这就给我们在后期做人脸识别的时候会带来很大影响,因为我们是根据图片来做比较的,如果每张脸的位置都不一样,就不能用基本方法直接做匹配识别实验,所以我们需要对此处所得的人脸数据做进一步的处理。而人脸旋转的工作正是基于Landmark来操作的。原始mesh数据文件中含有“Landmark”数据,它标记了一张人脸上眉毛、眼睛轮廓、鼻梁、鼻头下方和嘴巴轮廓上的一些点的ID,这些点在人脸上的位置如图4-12所示。图4-12 一张人脸上的所有Landmark位置我们要根据这些Landmark的位置关系来确定每张脸在旋转之前的位置,从而确定需要顺时针或逆时针旋转时的角度。我们选取鼻梁上的两点(分别是Landmark中第11、13个点),算出他们的连线斜率,再根据直线斜率与旋转角的关系,确定旋转矩阵 A=cos-sinsincos中旋转角的大小,从而确定旋转矩阵,最后将人脸旋转摆正。图4-13展示了人脸各种位置旋转后的效果。图4-13 人脸图像旋转前后对比图(第一行为旋转前,第二行为旋转后)4.5 三维人脸曲面几何量的二维嵌入表示我们在得到摆正位置的人脸数据后,就要将各个曲面几何量深度(Range,也即三维顶点的Z轴坐标)、法向量的三维数据Normal_X,Normal_Y,Normal_Z、曲度(Curvedness)和形状指数(Shapeindex)嵌入二维数据中,代替原来的顶点Z轴坐标,为下一步特征向量的提取做准备。图4-14展示了在同一个二维人脸数据上嵌入的各种曲面几何量。图4-14 在同一个二维人脸数据上嵌入的各种曲面几何量为了方便数值实验的进行,在此处理数据的时候,我们将图像都没有做彩色渲染,如图4-15。图4-15 各种表情嵌入各种曲面几何量;从第一行起,曲面几何量依次为深度(Range)、法向量的第一维坐标(Normal_X)、法向量的第二维坐标(Normal_Y)、法向量的第三维坐标(Normal_Z)、曲度(Curvedness)和形状指数(Shapeindex)下一步就是根据这些嵌入了各种曲面几何量的图片进行人脸的匹配识别。4.6 基于局部二值模式的特征提取我们在得到上述二维人脸图像后,要将图片信息转换成数字信息,才方便进行匹配识别,我们采用的转换方法为LBP(Local Binary Patterns,局部二值模式)算法。最初的LBP是定义在像素3x3邻域内的,以邻域中心像素为阈值,将相邻的8个像素的灰度值与其进行比较,若周围像素值大于中心像素值,则该像素点的位置被标记为1,否则为0。这样,3x3邻域内的8个点经比较可产生8位二进制数(通常转换为十进制数即LBP码,共256种),即得到该邻域中心像素点的LBP值,并用这个值来反映该区域的纹理信息。其具体过程图4-16所示。图4-16 简单的LBP算法提取特征过程将一张人脸上的所有点的LBP值都计算出来,再对每一个LBP值做匹配顶点的个数统计,并且可以画出直方图,最后将具有同一LBP值的顶点个数和气对应的LBP值作为特征向量保存起来。每一个点的考虑领域为改点周围1格时,共考虑其周围8个点的取值情况,也即图4-16所示情况,我们记这种情况为Q1,8。除此之外,我们还做了Q2,16和Q3,24的实验。4.7 基于稀疏表示的三维人脸识别将上步所得到的特征向量分为两类:一类是中性脸的特征向量(每人一个,共100个:v1,v2,v100),一类是待识别向量(共2355个)。则将每一张脸的特征向量都可以用这100个特征向量线性近似表示: y1v1+2v2+nv100, i=1,2,100.同一人脸的不同特征向量差别非常小,所以用其中性特征向量近似表示: yii,1vi,1=i,1vi,1+i, i=1,2,n.若令D=v1,v2,v100,则此式可改写为 y=Dx+,定义其稀疏系数x为 x=argminxx0,s.t.y-Dx2222.求解上述问题,得到识别为同一人脸的ID,与其真正来源比较,最终得出整个数据库的准确率。4.8 数值实验4.8.1 实验配置及三维人脸数据库介绍2004 年之前,很少有三维人脸数据库公开发布出来,这几年来,愈来愈多的研究组织和机构开始筹资建立自己的三维人脸数据库。公开发布的三维人脸数据库可以为三维人脸识别领域提供了各种新算法的实验的依据和原始材料。下面对本文所用的三维人脸数据库BU-3DFE库做一介绍。BU-3DFE 库由Binghamton UniverSity 提供,包括 100 人,其中 44 名男性,56 名女性,采集对象包括白人、黑人、亚洲人、印度人等。每个人被采集 25 幅图像,包括一个中性模型和 6 类带表情模型,每种表情分为 4 种程度,包括的表情有:高兴、厌恶、恐惧、生气、惊讶、悲伤。34图4-1为该数据库中一男一女的二维图像,此处列出了其中5个表情:从左到右依次为悲伤Sad、开心Happy、愤怒Angry、害怕Fear以及惊讶Surprise。图4-1 BU-3DFE 数据库中人脸二维图片(带表情)展示本文在对BU-3DFE数据库做完参数化处理之后,总共有45个人脸数据出现了问题,原先数据库中共有2500个数据,剔除有问题的45个数据,总共还剩下2455个数据。在这些数据中,我们需要提取每个人的中性无表情数据,并将该数据作为此人的判断标准,总共100个人,共有100个中性数据,也即需要识别判断人脸数据总数变成了2355个。4.8.2 实验结果这是我们最初选定的六个曲面几何量:深度Range、法向量的三维坐标Normal_X、Normal_Y、Normal_Z、曲度Curvedness以及形状指数Shape index,MX一行是每个曲面几何量的三种参数融合准确率,在LBP算法中各参数的识别准确率如表4-1所示RangeNormal_XNormal_YNormal_ZCurvednessShape indexTotalQ1_849.34%61.32%66.58%65.22%61.49%66.50%83.48%Q2_1644.50%60.85%64.67%62.08%62.04%68.58%Q3_2440.68%54.56%55.16%57.71%53.04%63.52%MC55.33%69.98%71.68%72.57%69.26%76.26%表4-1 不同曲面几何量在不同参数下的识别准确率 表4-2和表4-3将所得结果与Huibin Li, Di Huang, Jean-Marie Morvan等人在文献Expression-Robust 3D Face Recognition via Weighted Sparse Representation of Multi-Scale and Multi-Component Local Normal Patterns中基于BU-3DFE的实验结果作比较:35LNPxQ2,16LNPyQ2,16LNPZQ2,16MC-LNPQ2,1688.85%88.54%90.58%94.50%表4-2 文献Expression-Robust 3D Face Recognition via Weighted Sparse Representation of Multi-Scale and Multi-Component Local Normal Patterns中实验结果LNPxQ2,16LNPyQ2,16LNPZQ2,16MC-LNPQ2,1660.85%64.67%62.08%73.46%表4-3 本文实验结果可以看到本文实验结果与现有结果相去甚远,其具体原因分析见本章小结。4.9 本章小结本章将三维人脸识别过程分为三大步:三维人脸数据预处理,识别算法设计和数值实验。4.9.1 三维人脸数据预处理1. 将数据库中以“.mesh”为后缀名的数据文件转换成以“.m”为后缀名的数据文件;2. 数据库中100个人中每一个人的25张脸上的每一个三角形网格顶点对应的最大曲率(Cmax)、最小曲率(Cmin)、中值曲率(Cmean)、高斯曲率(Cgauss)、曲度(Curvedness)以及形状指数(Shapeindex)全部都计算出来并保存,作为给映射后二维数据补充的第三维信息,由这三维信息将人脸图画出,并保存;3. 将三维人脸数据通过共形映射HarmonicMap映射成

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论