CN111581412B - 人脸形状库的构建方法、装置、设备及存储介质 - Google Patents
人脸形状库的构建方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN111581412B CN111581412B CN202010524242.6A CN202010524242A CN111581412B CN 111581412 B CN111581412 B CN 111581412B CN 202010524242 A CN202010524242 A CN 202010524242A CN 111581412 B CN111581412 B CN 111581412B
- Authority
- CN
- China
- Prior art keywords
- face
- data
- face data
- data set
- disturbance
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 105
- 238000003860 storage Methods 0.000 title claims abstract description 32
- 238000012545 processing Methods 0.000 claims abstract description 95
- 230000004044 response Effects 0.000 claims abstract description 19
- 238000000513 principal component analysis Methods 0.000 claims abstract description 13
- 230000008569 process Effects 0.000 claims description 38
- 239000011159 matrix material Substances 0.000 claims description 27
- 239000013598 vector Substances 0.000 claims description 24
- 238000010276 construction Methods 0.000 claims description 20
- 230000006870 function Effects 0.000 claims description 18
- 238000013519 translation Methods 0.000 claims description 15
- 210000005069 ears Anatomy 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 description 16
- 210000001331 nose Anatomy 0.000 description 11
- 238000013473 artificial intelligence Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 210000000887 face Anatomy 0.000 description 7
- 210000001508 eye Anatomy 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 238000002360 preparation method Methods 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 210000000214 mouth Anatomy 0.000 description 3
- 238000012015 optical character recognition Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 210000001202 rhombencephalon Anatomy 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 210000000697 sensory organ Anatomy 0.000 description 2
- 208000029152 Small face Diseases 0.000 description 1
- 230000003416 augmentation Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000013434 data augmentation Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 210000004709 eyebrow Anatomy 0.000 description 1
- 210000000744 eyelid Anatomy 0.000 description 1
- 210000003128 head Anatomy 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000003475 lamination Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000013341 scale-up Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/51—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/58—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/583—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
- G06F16/5854—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using shape and object relationship
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
- G06F18/2135—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on approximation criteria, e.g. principal component analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Library & Information Science (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Software Systems (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请公开了一种人脸形状库的构建方法、装置、设备及存储介质,涉及图像处理领域。该方法包括:获取人脸数据集;将人脸数据集中的人脸数据进行数据扰动处理得到至少两组扰动数据;通过对人脸数据集进行主成分分析得到人脸数据集的脸型基;响应于扰动数据中的目标扰动数据的拟合误差大于误差阈值,将目标扰动数据加入人脸数据集,迭代更新人脸数据集得到人脸形状库,拟合误差是拟合目标扰动数据和目标扰动数据的误差值,拟合目标扰动数据是根据人脸数据集的脸型基对目标扰动数据进行拟合得到的人脸数据。该方法能利用有限的人脸数据得到表达能力强的人脸形状库。
Description
技术领域
本申请实施例涉及图像处理领域,特别涉及一种人脸形状库的构建方法、装置、设备及存储介质。
背景技术
人脸形状库用于提供标准人脸形状基,当计算机设备采集到真实人脸数据时,可基于人脸形状库中的标准人脸形状基构建与真实人脸数据相似的三维人脸模型。
以巴塞尔人脸模型(Basel Face Model,BFM)为例,通过高精度的三维扫描仪采集原始人脸数据,在得到原始人脸数据之后,通过非刚性配准(non-rigid registration,又被命名为non-rigid icp或nricp)对应原始人脸数据进行注册,即可得到在特定模型下与原始人脸数据相似的人脸网格,然后通过主成分分析技术对得到的人脸网格进行处理,构建出BFM形状库。
在上述技术方案中,BFM形状库需要采集大量的高精度人脸数据,构建人脸形状库的过程较为困难。
发明内容
本申请实施例提供了一种人脸形状库的构建方法、装置、设备及存储介质,能利用有限的人脸数据得到表达能力强的人脸形状库。所述技术方案如下:
一方面,本申请实施例提供了一种人脸形状库的构建方法,所述方法包括:
获取人脸数据集,所述人脸数据集存储有至少一组人脸数据;
将所述人脸数据集中的所述人脸数据进行数据扰动处理得到至少两组扰动数据,所述数据扰动处理包括旋转处理、平移处理、缩放处理中的至少一种;
通过对所述人脸数据集进行主成分分析得到所述人脸数据集的脸型基;
响应于所述扰动数据中的目标扰动数据的拟合误差大于误差阈值,将所述目标扰动数据加入所述人脸数据集,迭代更新所述人脸数据集得到人脸形状库,所述拟合误差是拟合目标扰动数据和所述目标扰动数据的误差值,所述拟合目标扰动数据是根据所述人脸数据集的所述脸型基对所述目标扰动数据进行拟合得到的所述人脸数据。
另一方面,本申请实施例提供了一种人脸形状库的构建装置,所述装置包括:
获取模块,用于获取人脸数据集,所述人脸数据集存储有至少一组人脸数据;
扰动模块,用于将所述人脸数据集中的所述人脸数据进行数据扰动处理得到至少两组扰动数据,所述数据扰动处理包括旋转处理、平移处理、缩放处理中的至少一种;
计算模块,用于通过对所述人脸数据集进行主成分分析得到所述人脸数据集的脸型基;
迭代模块,用于响应于所述扰动数据中的目标扰动数据的拟合误差大于误差阈值,将所述目标扰动数据加入所述人脸数据集,迭代更新所述人脸数据集得到人脸形状库,所述拟合误差是拟合目标扰动数据和所述目标扰动数据的误差值,所述拟合目标扰动数据是根据所述人脸数据集的所述脸型基对所述目标扰动数据进行拟合得到的所述人脸数据。
另一方面,本申请实施例提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述方面所述的人脸形状库的构建方法。
另一方面,提供了一种计算机可读存储介质,所述可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上述方面所述的人脸形状库的构建方法。
另一方面,提供了一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得计算机执行如上述方面所述的人脸形状库的构建方法。
本申请实施例提供的技术方案带来的有益效果至少包括:
通过将人脸数据集中少量的人脸数据进行数据扰动处理得到扰动数据,根据人脸数据集的脸型基对扰动数据进行拟合,计算拟合结果和扰动数据的拟合误差,将拟合误差较大,脸型基对其表达能力弱的扰动数据添加到人脸数据集中构成人脸形状库,使得到的人脸形状库的脸型基具有更好的表达能力。该方法只利用了少量的高精度人脸数据,通过数据扰动来扩充高精度人脸数据,不需要用户采集大量的高精度人脸数据,简化人脸形状库的构建过程,提高构建效率。利用主成分分析和误差分析,从扩充的高精度人脸数据中筛选出部分高精度人脸数据加入到人脸数据集中,精准扩充第一脸型基表达能力较弱的人脸数据,高效地提高人脸形状库的表达能力。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个示例性实施例提供的实施环境的示意图;
图2示出了本申请一个示例性实施例提供的人脸形状库的构建方法的流程图;
图3示出了本申请一个示例性实施例提供的数据准备过程的示意图;
图4示出了本申请另一个示例性实施例提供的人脸形状库的构建方法的流程图;
图5示出了本申请另一个示例性实施例提供的人脸形状库的构建方法的流程图;
图6示出了本申请一个示例性实施例提供的镜像扩充过程的示意图;
图7示出了本申请一个示例性实施例提供的替换扩充过程的示意图;
图8是本申请一个示例性实施例提供的人脸形状库的构建装置的结构框图;
图9示出了本申请一个示例性实施例提供的计算机设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用***。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互***、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
计算机视觉(Computer Vision,CV)是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能***。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、光学字符识别(Optical Character Recognition,OCR)、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
本申请实施例提供的人脸形状库的构建方法可以应用于如下场景:
一、虚拟人物的人脸形状构建
在该应用场景下,采用本申请实施例提供方法所构建的高精度人脸形状库可以应用于提供虚拟人物人脸形状构建功能的终端或者服务器中。对于用户使用终端的摄像组件对自身面部进行采集得到的人脸采集数据(通常为低精度数据),利用高精度人脸形状库对人脸采集数据进行拟合,输出高精度人脸形状,从而利用虚拟人物对该高精度人脸形状进行还原和展示,使虚拟人物的人脸形状与用户的真实面部保持一致,实现对虚拟人物人脸形状的构建。
二、游戏应用中的虚拟角色构建
在该应用场景下,采用本申请实施例提供方法所构建的高精度人脸形状库可以应用于游戏应用程序的后台服务器中。在进行虚拟角色构建时,用户使用终端对自身面部进行面部数据采集,并将采集到的面部数据上传至后台服务器。后台服务器即根据该面部数据和高精度人脸形状库生成高精度人脸形状,并将高精度人脸形状反馈至游戏应用程序,由游戏应用程序根据该高精度人脸形状对虚拟角色进行人脸重建,最终在游戏应用中构建出与用户自身具有相同人脸的虚拟角色。
当然,上述仅以两种应用场景为例进行说明,本申请实施例提供的方法可以应用于其他需要构建高精度人脸数据的场景(比如使用虚拟角色进行视频通话、虚拟现实技术中的虚拟人构建等等),本申请实施例并不对具体应用场景进行限定。
本申请实施例提供的人脸形状库的构建方法可以应用于具有较强的数据处理能力的计算机设备中。在一种可能的实施方式中,本申请实施例提供的人脸形状库的构建方法可以应用于个人计算机、工作站或服务器中,即可以通过个人计算机、工作站或服务器进行人脸形状库的构建。
而对于构建得到的人脸形状库,其可以实现成为应用程序的一部分,并被安装在终端中,使终端具备根据低精度数据生成高精度人脸数据的功能;或者,该人脸形状库设置在应用程序的后台服务器中,以便安装有应用程序的终端借助后台服务器实现基于高精度人脸数据的相关功能(比如人脸形状的构建)。
请参考图1,其示出了本申请一个示例性实施例提供的实施环境的示意图。该实施环境中包括终端210和服务器220,其中,终端210与服务器220之间通过通信网络进行数据通信,可选地,通信网络可以是有线网络也可以是无线网络,且该通信网络可以是局域网、城域网以及广域网中的至少一种。
终端210中安装有具有人脸形状构建需求的应用程序,该应用程序可以是虚拟现实应用程序、游戏应用程序、动态表情应用程序或具有人脸构建动功能的人工智能(Artificial Intelligence,AI)应用程序,本申请实施例对此不作限定。
可选的,终端210可以是平板电脑、膝上便携式笔记本电脑等移动终端,也可以是台式电脑、投影式电脑等终端,本申请实施例对此不做限定。
服务器220可以实现为一台服务器,也可以实现为一组服务器构成的服务器集群,其可以是物理服务器,也可以实现为云服务器。在一种可能的实施方式中,服务器220是终端210中应用程序的后台服务器。
如图1所示,本实施例中,在人脸形状库构建阶段,服务器220预先获取输入的原始人脸数据31,将原始人脸数据31经过数据扰动处理得到扰动数据33,然用原始人脸数据31的脸型基对扰动数据33进行拟合,得到扰动数据的人脸形状系数,人脸形状系数和脸型基可以得到拟合扰动数据,将扰动数据与拟合扰动数据的误差值较大的目标扰动数据选出,目标扰动数据和原始人脸数据31共同构成人脸形状库35,重复上述步骤,迭代更新人脸形状库35,扩充人脸形状库中的人脸数据,得到最终的人脸形状库。当接收到终端210发送低精度人脸采集数据(用户使用终端210的拍摄组件拍摄正脸时采集得到)时,服务器220即通过人脸形状库35对低精度人脸采集数据进行数据拟合,得到高精度人脸生成数据36,并将高精度人脸生成数据36反馈至终端210,由终端210中的应用程序根据高精度人脸生成数据36构建虚拟角色的面部,并进行展示。
在其他可能的实施方式中,上述人脸形状库也可以设置在应用程序中,并由终端在本地根据输入的低精度人脸采集数据输出高精度人脸生成数据,而无需借助服务器220,本实施例对此不作限定。
为了方便表述,下述各个实施例以人脸形状库的构建方法由计算机设备执行为例进行说明。
请参考图2,其示出了本申请一个示例性实施例提供的人脸形状库的构建方法的流程图。本实施例以该方法用于计算机设备为例进行说明,该方法包括如下步骤。
步骤201,获取人脸数据集,人脸数据集存储有至少一组人脸数据。
在一些实施例中,人脸数据集中的人脸数据包含多个对象的人脸数据,即,包含多个对象的多种脸型的人脸数据。示例性的,人脸数据集中的人脸数据是高精度人脸数据。在一种可能的实施方式中,该人脸数据为高精度人脸网格(mesh)数据,且每组人脸数据对应的3D人脸具有相同的3D顶点序号和语义。比如,人脸网格数据为人脸三维可形变模型(3DMorphable Model,3DMM)数据。
相较于低精度人脸数据,高精度人脸数据的数据精度较高,因此,相较于由低精度人脸数据构建的人脸,由高精度人脸数据构建的人脸细节更精准。利用低精度人脸数据构建的人脸难以表现出真实人脸的细节特征,比如单双眼皮,抬头纹和眼角纹等等。
示例性的,高精度人脸数据是精度高于阈值的人脸数据,低精度人脸数据是精度低于阈值的人脸数据。示例性的,高精度人脸数据是采用高精度扫扫描设备(比如高速3D相机)对真实人脸进行扫描并处理得到的人脸数据,而低精度人脸数据是采用消费级设备(比如Kinect RGBD设备、智能手机等)对真实人脸进行扫描并处理得到的人脸数据。
在一些实施例中,人脸数据是采用高精度扫描设备(比如高速3D相机)对真实人脸进行扫描并处理得到的人脸数据。或,采用现有的人脸形状库中的人脸数据,例如,BFM形状库。
示例性的,对于采集到的人脸数据,计算机设备会对其进行数据处理。示例性的,直接采集到的人脸数据为点云数据,首先,清除点云数据中的干扰噪声,示例性的,干扰噪声的去除由人工完成。然后,通过非刚性配准(non-rigid registration,又被命名为non-rigid icp或nricp)算法将点云数据注册到特定的人脸网格中,得到顶点数量一致且具有统一拓扑结构的人脸(网格)数据。最后,将人脸数据对齐到同一的坐标系中得到第一人脸数据库中的人脸数据。
示例性的,对于现有的人脸形状库中的人脸数据,由于不同的人脸形状库中的人脸数据采用的不同网格扩拓扑,需要将人脸数据集的人脸网格贴合到现有的人脸形状库中的人脸数据中,得到与现有的人脸形状库中的人脸数据模样相像的人脸数据。示例性的,贴合可以采用网格贴合软件来完成,例如,wrap软件。例如,如图3所示,使用人脸数据集的人脸网格贴合现有的人脸形状库中的人脸数据301,得到人脸数据集中的人脸数据302。示例性的,对于贴合得到的人脸数据,同样对齐到同一坐标系中得到第一人脸数据库中的人脸数据。
步骤202,将人脸数据集中的人脸数据进行数据扰动处理得到至少两组扰动数据,数据扰动处理包括旋转处理、平移处理、缩放处理中的至少一种。
数据扰动处理包括改变所述人脸数据中的至少一个数值。示例性的,人脸数据中包括多个顶点,每个顶点具有顶点坐标,经过数据扰动处理,改变人脸数据中的至少一个顶点的顶点坐标。例如,第一人脸数据中的鼻尖坐标为(0,0,1),经过数据扰动处理将鼻尖坐标改为(1,0,1),得到第一扰动数据。示例性的,为了防止数据扰动处理后得到的扰动数据偏离正常人脸的形状,数据扰动处理只会在较小范围内更改人脸数据中的数值。示例性的,数据扰动处理包括通过旋转、平移、缩放中的至少一种方式来更改人脸数据中的数值。
示例性的,一组人脸数据经过一次数据扰动处理可以得到一组扰动数据,经过多次数据扰动处理可以得到多组不同的扰动数据。即,一张人脸经过数据扰动处理可以得到多张不同的人脸。示例性的,对于人脸数据集中的每一组人脸数据,都可以经过至少一次数据扰动得到至少一组扰动数据。计算机设备可以对人脸数据集中的每一组人脸数据都进行数据扰动处理,也可以选取人脸数据集中的部分人脸数据进行数据扰动处理。
步骤203,通过对人脸数据集进行主成分分析得到人脸数据集的脸型基。
在一种可能的实施方式中,计算机设备通过主成分分析(Principal ComponentsAnalysis,PCA)技术对人脸数据集中的人脸数据进行处理,利用降维思想降低数据维度,减少冗余或干扰数据,得到人脸数据集的脸型基。
关于主成分分析的方式,在一种可能的实施方式中,计算机设备首先计算人脸数据集中人脸数据的均值,然后计算人脸数据对应的特征协方差矩阵,从而根据特征协方差矩阵得到协方差的特征向量和特征值,进而根据特征值的降序,从特征向量中选取特征值最大的若干个特征向量,构成主成分特征向量矩阵,并根据将主成分特征向量矩阵中特征向量对应的特征值,生成主成分方差(向量)。
在一个示意性的例子中,计算机设备对人脸数据集中的人脸数据矩阵(face_all)进行PCA处理,得到均值mu、主成分特征向量矩阵(主成分系数)pc以及主成分方差ev_f。其中,将每一组人脸数据face的三维坐标展开变成一列数据,例如,N个顶点展开为[3N×1]向量,对于M个人脸数据可以得到人脸数据矩阵face_all为[3N×M]矩阵。mu为[3N×1]向量,pc为[3N×t]矩阵,ev_f为[t×1]向量,t为选取的特征向量的数量,N为人脸网格的顶点的数量。
计算机设备根据均值、主成分特征向量矩阵和主成分方差构建脸型基。
在一种可能的实施方式中,为了使经过PAC得到的数据能够用于进行人脸拟合(即能够作为脸型基),计算机设备还需要对主成分方差进行处理。
可选的,当主成分方差为列向量时,计算机设备对主成分方差进行矩阵变换,得到主成分对角矩阵,从而将均值主成分特征向量矩阵和主成分对角矩阵确定为脸型基,其中,该主成分对角矩阵由主成分标准差构成。
结合上述步骤中的示例,计算机设备对ev_f这一[t×1]列向量进行开方处理(即由主成分方差得到主成分标准差),得到[t×t]的主成分对角矩阵ev。相应的,脸型基由[3N×1]的mu、[3N×t]的pc以及[t×t]的ev构成。
示例性的,对于一个3DMM人脸形状库,可以用脸型基和人脸形状系数来计算得到人脸数据。公式如下,其中,id为人脸形状系数。
face=mu+pc*ev*id
示例性的,根据人脸数据集计算得到人脸数据集的初始脸型基mu0、pc0以及ev0。
步骤204,响应于扰动数据中的目标扰动数据的拟合误差大于误差阈值,将目标扰动数据加入人脸数据集,迭代更新人脸数据集得到人脸形状库,拟合误差是拟合目标扰动数据和目标扰动数据的误差值,拟合目标扰动数据是根据人脸数据集的脸型基对目标扰动数据进行拟合得到的人脸数据。
示例性的,在得到人脸数据集的脸型基后,计算机设备使用脸型基对扰动数据进行拟合得到拟合扰动数据,将拟合扰动数据中拟合效果较差的扰动数据选出,加入到人脸数据集中构成人脸形状库。拟合效果较差即表示脸型基对该扰动数据的表达能力弱,将这部分扰动数据加入到人脸数据集后得到人脸形状库,人脸形状库的第二脸型基就会对该部分扰动数据具有更好的表达能力,如此迭代向人脸形状库中加入扰动数据,就可以迭代更新脸型基,提高脸型基的表达能力。
为了提高脸型基对各种人脸的拟合能力,在一种可能的实施方式中,计算机设备利用扰动数据对人脸数据集进行数据扩充,并根据扩充后的人脸形状库重新构建脸型基。经过不断数据扩充以及脸型基迭代更新,脸型基对各种人脸的拟合效果不断提高。当满足迭代结束条件时,计算机设备将最后一次迭代更新得到的脸型基确定为人脸形状库。
后续使用过程中,计算机设备即可利用该人脸形状库,根据输入的低精度人脸采集数据输出高精度人脸生成数据。
示例性的,给出一种从扰动数据中确定目标扰动数据的方法。
首先,计算机设备基于脸型基对扰动数据进行拟合得到拟合扰动数据。
本申请实施例中,脸型基与人脸形状系数配合使用时,可以拟合人脸数据。示例性的,用脸型基对扰动数据进行拟合得到扰动数据的人脸形状系数。根据扰动数据的人脸形状系数和脸型基就可以得到拟合扰动数据。
在一个示意性的例子中,该拟合函数如下:
其中,α为目标人脸形状系数;face_rot为一组扰动数据,展开后为[3N×1]的矩阵;face_rot(x)扰动数据中的第x个数;mu0为人脸数据集的脸型基中的均值,pc0为人脸数据集的脸型基中的主成分特征向量矩阵;ev0为人脸数据集的脸型基中的主成分对角矩阵;α为待调整的人脸形状系数;(mu+pc*ev*α)(x)表示脸型基和扰动数据进行拟合后,得到的拟合扰动数据中的第x个数;λ为正则系数;N为人脸数据的顶点的数量。
计算机设备通过调整人脸形状系数最小化拟合函数的函数值,并确定最小化函数值对应的目标人脸形状系数。人脸形状系数与待拟合的扰动数据所对应的人脸形状越接近,得到的拟合扰动数据与扰动数据越接近,相应的,上述拟合函数的函数值越小。因此,本实施例中,计算机设备通过调整人脸形状系数,使得拟合函数的函数值最小化,从而将取最小化函数值时的人脸形状系数确定为目标人脸形状系数。
计算机设备进一步根据目标人脸形状系数和脸型基进行数据拟合,得到拟合扰动数据,其中,拟合扰动数据可以表示为:mu+pc*ev*α。
结合上述步骤中的示例,当mu为[3N×1]向量,pc为[3N×t]矩阵,ev为[t×t]矩阵,α为[t×1]向量,拟合得到的拟合扰动数据为[3N×1]向量。
然后,计算机设备计算拟合扰动数据和扰动数据的拟合误差。
为了衡量当前脸型基拟合扰动数据的拟合效果,计算机设备对扰动数据和拟合扰动数据做差,从而确定两者之间的拟合误差。
示意性的,拟合误差的计算公式如下:
在一种可能的实施方式中,当扰动数据和拟合扰动数据均为[3N×1]向量时,计算机设备计算向量之间的欧式距离,从而将欧式距离确定为该拟合误差。当然,计算机设备还可以将马氏距离或者余弦距离确定为拟合误差,本实施例对此不作限定。
最后,计算机设备将拟合误差大于误差阈值的扰动数据确定为目标扰动数据。
示例性的,计算机设备从扰动数据中选出拟合效果差(拟合误差较大)的扰动数据确定为目标扰动数据。
示例性的,经过一次数据扰动处理、扰动数据拟合、拟合误差判断之后,计算机设备从扰动数据中选出部分扰动数据加入到人脸数据集中得到新的人脸形状库。此后,计算机设备可以继续基于人脸形状库进行数据扰动处理、扰动数据拟合、拟合误差判断,继续将更新人脸形状库,如此反复迭代更新人脸形状库。
示例性的,计算机设备还可以将目标扰动数据经过镜像处理后,得到镜像目标扰动数据,将目标扰动数据和镜像目标扰动数据加入到人脸数据集中,对人脸数据集进行迭代更新,得到最终的人脸数据库。
示例性的,如图4所示,步骤204还包括步骤2041和步骤2042。
步骤2041,响应于不满足迭代结束条件,将加入目标扰动数据的人脸数据集重新确定为人脸数据集。
示例性的,迭代结束条件可以是迭代次数,例如,在迭代10次得到第11人脸数据库时结束迭代。即,响应于迭代次数小于次数阈值,将加入目标扰动数据的人脸数据集重新确定为人脸数据集。
示例性的,迭代结束条件还可以是在扰动数据中不存在目标扰动数据时,结束迭代。即,在扰动数据的拟合误差都小于误差阈值时结束迭代。即,响应于扰动数据中存在拟合误差大于误差阈值的目标扰动数据,将加入目标扰动数据的人脸数据集重新确定为人脸数据集。
即,将第j人脸数据库中的人脸数据进行数据扰动处理得到至少两个第j扰动数据,j是大于i的整数;通过对第j人脸形状库进行主成分分析得到第j人脸形状库的第j脸型基;响应于第j扰动数据的第j拟合误差小于误差阈值,停止迭代。
步骤2042,重新执行将人脸数据集中的人脸数据进行数据扰动处理得到至少两组扰动数据的步骤。
当不满足迭代结束条件时,计算机设备将更新后的人脸形状库重新确定为人脸数据集,重新对人脸数据集进行数据扰动处理,重新计算人脸数据集的脸型基,进而从新的扰动数据中选出新的目标扰动数据,对人脸数据集进行再次更新,如此反复,直至满足迭代结束条件。
综上所述,本实施例提供的方法,通过将人脸数据集中少量的人脸数据进行数据扰动处理得到扰动数据,根据人脸数据集的脸型基对扰动数据进行拟合,计算拟合结果和扰动数据的拟合误差,将拟合误差较大,脸型基对其表达能力弱的扰动数据添加到人脸数据集中构成人脸形状库,使得到的人脸形状库的脸型基具有更好的表达能力。该方法只利用了少量的高精度人脸数据,通过数据扰动来扩充高精度人脸数据,不需要用户采集大量的高精度人脸数据,简化人脸形状库的构建过程,提高构建效率。利用主成分分析和误差分析,从扩充的高精度人脸数据中筛选出部分高精度人脸数据加入到人脸数据集中,精准扩充脸型基表达能力较弱的人脸数据,高效地提高人脸形状库的表达能力。
本实施例提供的方法,通过在不满足迭代结束条件时,重复对人脸数据集进行数据扰动处理、脸型基计算、拟合误差判断的步骤,迭代对人脸数据集进行更新,扩充人脸数据集中的人脸数据,提高脸型基的表达能力。
本申请实施例中,如图5所示,构建高精度人脸形状库可以分为数据准备阶段401、数据扩充阶段402和迭代更新脸型基阶段403。其中,计算机设备在数据准备阶段401采集人脸数据,对人脸数据进行数据处理(去除噪声、注册到人脸网格、对齐到统一坐标系)得到原始人脸数据集。然后在数据扩充阶段402,对原始人脸数据集进行数据扩充,生成人脸数据集。在迭代更新脸型基阶段对人脸数据集进行迭代更新,得到人脸形状库,进而输出人脸形状库的脸型基。
由于本申请实施例仅使用少量(相较于相关技术中完全基于高精度人脸数据构建人脸形状库)高精度人脸数据构建人脸形状库,因此在数据准备阶段之后,计算机设备对高精度人脸数据进行数据扩充,以此提高生成的脸型基的质量。
示例性的,进行数据扩充的方式包括:镜像扩充和替换扩充中的至少一种。示例性的,数据扩充方式至少包括镜像扩充。例如,数据扩充的方式包括:镜像扩充;镜像扩充和替换扩充;中的至少一种。
在一种可能的实施方式中,获取到人脸数据后,计算机设备对人脸数据进行镜像扩充,得到扩充后的镜像人脸数据,其中,镜像扩充包括沿人脸中线进行左右翻转。示例性的,计算机设备获取原始人脸数据集,原始人脸数据集包括至少一组人脸数据;将原始人脸数据集中的人脸数据进行镜像处理得到第一镜像人脸数据集;将原始人脸数据集和第一镜像人脸数据集确定为人脸数据集。示例性的,原始人脸数据集是计算机设备采集到的人脸数据集,或,利用现有的人脸数据库中的人脸数据得到的人脸数据集。
以高精度人脸数据的数据扩充过程为例进行说明,在一些实施例中,计算机设备首先对高精度人脸数据进行坐标系对齐,然后将对齐后的高精度人脸数据,沿人脸中线进行左右翻转,实现镜像扩充。经过镜像扩充,高精度人脸数据的数据量扩充为原先的两倍。
示意性的,如图6所示,人脸数据501进行镜像处理后,得到镜像人脸数据502。
在一种可能的实施方式中,获取到人脸数据后,计算机设备对人脸数据进行替换扩充,得到扩充后的替换人脸数据,其中,替换扩充包括:任选出两组人脸数据,分别替换两组人脸数据的五官,得到多组替换人脸数据。示例性的,计算机设备可以替换两组人脸数据的鼻子、嘴巴、眼睛、眉毛、耳朵中的至少一种,来得到替换人脸数据。
示例性的,计算机设备获取原始人脸数据集,原始人脸数据集包括至少两组人脸数据;将原始人脸数据集中的人脸数据进行替换处理得到第一替换人脸数据集,替换处理包括使用第一人脸数据中的第一区域替换第二人脸数据中的第一区域得到替换人脸数据;将原始人脸数据集和第一替换人脸数据集确定为人脸数据集。
示例性的,替换处理用于替换两组人脸数据上相同位置的任意表面区域。示例性的,人脸数据具有相同的顶点编号和语义,例如,编号1代表鼻尖,编号2代表嘴巴中心点。替换处理可以替换两组人脸数据中编号相同的一组顶点,例如,替换鼻子所在的顶点1至顶点10的区域。
示例性的,第一区域是人脸数据中至少一个五官所对应的区域,例如,第一区域是眼睛,或,第一区域是眼睛和嘴巴。示例性的,计算机设备可以从原始人脸数据集中任意选出两个人脸数据进行替换。
示意性的,如图7所示,将第一原始人脸数据601和第二原始人脸数据602的眼睛进行替换,得到第一替换人脸数据603和第二替换人脸数据604。
在一个可能的实施方式中,计算机设备会对采集到的人脸数据进行多次扩充。例如,先进行一次镜像扩充、再进行一次替换扩充、再进行一次镜像扩充。
示例性的,计算机设备获取原始人脸数据集,原始人脸数据集包括至少一组人脸数据;将原始人脸数据集中的人脸数据进行镜像处理得到第二镜像人脸数据集;将原始人脸数据集和第二镜像人脸数据集确定为第一扩充人脸数据集;将第一扩充人脸数据集中的人脸数据进行替换处理得到第二替换人脸数据集,替换处理包括使用第一人脸数据中的第一区域替换第二人脸数据中的第一区域得到替换人脸数据;将第一扩充人脸数据集和第二替换人脸数据集确定为第二扩充人脸数据集。将第二扩充人脸数据集中的人脸数据进行镜像处理得到第三镜像人脸数据集;将第二扩充人脸数据集和第三镜像人脸数据集确定为原始数据集。
本实施例中,在数据准备阶段通过镜像扩充、替换扩充等方式进行数据扩充,增加了人脸数据的数据量,有助于提高后续构建的脸型基的表达能力,进而提高最终生成的高精度人脸形状库的质量。
示例性的,迭代更新脸型基阶段,需要对人脸数据集中的人脸数据进行数据扰动处理得到扰动数据,本实施例给出了三种数据扰动处理的方式,分别为:旋转处理、平移处理、缩放处理。
首先,旋转处理。
计算机设备将人脸数据中的至少一个点绕参考点朝任意方向旋转任意角度得到至少两组扰动数据,参考点是人脸数据中的任意一点。
计算机设备可以以人脸数据中任意一个顶点作为参考点,将人脸数据中的另一个顶点绕参考点进行旋转,旋转的方向和角度可以是任意的,从而改变该点的空间位置,对人脸数据中的至少一个顶点进行旋转后得到一组扰动数据。例如,参考点是第一顶点,则,将人脸数据中的第二顶点绕第一顶点从第一位置旋转至第二位置,旋转前后第二顶点到第一顶点的距离不变。
示例性的,参考点可以是鼻尖对应的顶点。示例性的,为避免旋转角度过大,得到的扰动数据的人脸失真,旋转角度可以控制在±5°之内。
示例性的,旋转处理可以改变人脸数据中顶点的起伏程度。
然后,平移处理。
计算机设备将人脸数据中的至少一个点向第一方向移动第一距离得到至少两组扰动数据。
计算机设备可以将人脸数据中的至少一个顶点,沿任意一个方向平移一定距离,得到扰动数据。示例性的,第一方向可以是从后脑勺指向鼻尖的方向。示例性的,为了避免扰动数据的人脸失真,平移的最大距离可以根据人脸数据集中的人脸数据来确定。例如,计算人脸数据集中每组人脸数据的后脑勺中点到鼻尖的直径距离,将最大直径距离和最小直径距离的差值确定为平移的最大距离。示例性的,平移的最大距离也可以是固定数值。
例如,计算机设备将人脸数据中鼻尖对应的顶点沿第一方向移动1cm,增加鼻子的高度,使得到的扰动数据的鼻子更立体。
最后,缩放处理。
计算机设备以人脸数据中两个耳朵连线的中心点为坐标原点,同比放大人脸数据的数值得到至少两组扰动数据。
示例性的,计算机设备可以将人脸数据进行等比放大缩小,从而放大缩小整个头部,获得大脸型或小脸型的扰动数据。
示例性的,为了使缩放能够保留人脸的原始形状,需要首先将人脸数据进行对齐,以两耳连线的中点作为坐标系原点,重新确定人脸数据中每个顶点的坐标,然后将新的坐标进行同比放大缩小。例如,将新的坐标乘以1.2,得到一个放大的扰动数据。示例性的,也可以以人脸数据中所有顶点的平均值作为坐标系原点,重新确定人脸数据中每个顶点的坐标,然后进行等比缩放。
综上所述,本实施例提供的方法,通过将人脸数据集中少量的人脸数据进行旋转、平移、缩放中的至少一种数据扰动处理得到扰动数据,再根据扰动数据的拟合结果,从扰动数据中选出部分目标扰动数据加入到人脸数据集中,获得人脸形状库。该方法只利用了少量的高精度人脸数据,通过数据扰动来扩充高精度人脸数据,不需要用户采集大量的高精度人脸数据,简化人脸形状库的构建过程,提高构建效率。
图8是本申请一个示例性实施例提供的人脸形状库的构建装置的结构框图,该装置包括:
获取模块801,用于获取人脸数据集,所述人脸数据集存储有至少一组人脸数据;
扰动模块802,用于将所述人脸数据集中的所述人脸数据进行数据扰动处理得到至少两组扰动数据,所述数据扰动处理包括旋转处理、平移处理、缩放处理中的至少一种;
计算模块803,用于通过对所述人脸数据集进行主成分分析得到所述人脸数据集的脸型基;
迭代模块804,用于响应于所述扰动数据中的目标扰动数据的拟合误差大于误差阈值,将所述目标扰动数据加入所述人脸数据集,迭代更新所述人脸数据集得到人脸形状库,所述拟合误差是拟合目标扰动数据和所述目标扰动数据的误差值,所述拟合目标扰动数据是根据所述人脸数据集的所述脸型基对所述目标扰动数据进行拟合得到的所述人脸数据。
在一个可选的实施例中,所述迭代模块804,还用于响应于不满足迭代结束条件,将加入所述目标扰动数据的所述人脸数据集重新确定为所述人脸数据集;
所述迭代模块804,还用于从所述将所述人脸数据集中的所述人脸数据进行数据扰动处理得到至少两组扰动数据的步骤开始,重复上述步骤。
在一个可选的实施例中,所述迭代模块804,还用于响应于所述扰动数据中存在所述拟合误差大于误差阈值的所述目标扰动数据,将加入所述目标扰动数据的所述人脸数据集重新确定为所述人脸数据集;
或,
所述迭代模块804,还用于响应于迭代次数小于次数阈值,将加入所述目标扰动数据的所述人脸数据集重新确定为所述人脸数据集。
在一个可选的实施例中,所述数据扰动处理包括旋转处理;
所述扰动模块802,还用于将所述人脸数据中的至少一个点绕参考点朝任意方向旋转任意角度得到至少两个所述扰动数据,所述参考点是所述人脸数据中的任意一点。
在一个可选的实施例中,所述数据扰动处理包括平移处理;
所述扰动模块802,还用于将所述人脸数据中的至少一个点向第一方向移动第一距离得到至少两个所述扰动数据。
在一个可选的实施例中,所述数据扰动处理包括缩放处理;
所述扰动模块802,还用于以所述人脸数据中两个耳朵连线的中心点为坐标原点,同比放大所述人脸数据的数值得到至少两个所述扰动数据。
在一个可选的实施例中,所述装置还包括:
所述获取模块801,还用于获取原始人脸数据集,所述原始人脸数据集包括至少一组所述人脸数据;
镜像模块805,用于将所述原始人脸数据集中的所述人脸数据进行镜像处理得到第一镜像人脸数据集;
确定模块806,用于将所述原始人脸数据集和所述第一镜像人脸数据集确定为所述人脸数据集。
在一个可选的实施例中,所述装置还包括:
所述获取模块801,还用于获取原始人脸数据集,所述原始人脸数据集包括至少两组人脸数据;
替换模块807,用于将所述原始人脸数据集中的所述人脸数据进行替换处理得到第一替换人脸数据集,所述替换处理包括使用第一人脸数据中的第一区域替换第二人脸数据中的所述第一区域得到替换人脸数据;
确定模块806,用于将所述原始人脸数据集和所述第一替换人脸数据集确定为所述人脸数据集。
在一个可选的实施例中,所述装置还包括:
所述获取模块801,还用于获取原始人脸数据集,所述原始人脸数据集包括至少一组人脸数据;
镜像模块805,用于将所述原始人脸数据集中的所述人脸数据进行镜像处理得到第二镜像人脸数据集;
确定模块806,用于将所述原始人脸数据集和所述第二镜像人脸数据集确定为第一扩充人脸数据集;
替换模块807,用于将所述第一扩充人脸数据集中的所述人脸数据进行替换处理得到第二替换人脸数据集,所述替换处理包括使用第一人脸数据中的第一区域替换第二人脸数据中的所述第一区域得到替换人脸数据;
所述确定模块806,还用于将所述第一扩充人脸数据集和所述第二替换人脸数据集确定为第二扩充人脸数据集;
所述镜像模块805,还用于将所述第二扩充人脸数据集中的所述人脸数据进行镜像处理得到第三镜像人脸数据集;
所述确定模块806,还用于将所述第二扩充人脸数据集和所述第三镜像人脸数据集确定为所述人脸数据集。
需要说明的是:上述实施例提供的人脸形状库的构建装置,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的人脸形状库的构建装置与人脸形状库的构建方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
请参考图9,其示出了本申请一个示例性实施例提供的计算机设备的结构示意图。具体来讲:所述计算机设备1000包括中央处理单元(Central Processing Unit,CPU)1001、包括随机存取存储器1002和只读存储器1003的***存储器1004,以及连接***存储器1004和中央处理单元1001的***总线1005。所述计算机设备1000还包括帮助计算机内的各个器件之间传输信息的基本输入/输出***(Input/Output,I/O***)1006,和用于存储操作***1013、应用程序1014和其他程序模块1015的大容量存储设备1007。
所述基本输入/输出***1006包括有用于显示信息的显示器1008和用于用户输入信息的诸如鼠标、键盘之类的输入设备1009。其中所述显示器1008和输入设备1009都通过连接到***总线1005的输入输出控制器1010连接到中央处理单元1001。所述基本输入/输出***1006还可以包括输入输出控制器1010以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器1010还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备1007通过连接到***总线1005的大容量存储控制器(未示出)连接到中央处理单元1001。所述大容量存储设备1007及其相关联的计算机可读介质为计算机设备1000提供非易失性存储。也就是说,所述大容量存储设备1007可以包括诸如硬盘或者驱动器之类的计算机可读介质(未示出)。
不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括随机存取记忆体(RAM,Random Access Memory)、只读存储器(ROM,Read Only Memory)、闪存或其他固态存储其技术,只读光盘(Compact Disc Read-Only Memory,CD-ROM)、数字通用光盘(Digital Versatile Disc,DVD)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的***存储器1004和大容量存储设备1007可以统称为存储器。
存储器存储有一个或多个程序,一个或多个程序被配置成由一个或多个中央处理单元1001执行,一个或多个程序包含用于实现上述方法的指令,中央处理单元1001执行该一个或多个程序实现上述各个方法实施例提供的方法。
根据本申请的各种实施例,所述计算机设备1000还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即计算机设备1000可以通过连接在所述***总线1005上的网络接口单元1011连接到网络1012,或者说,也可以使用网络接口单元1011来连接到其他类型的网络或远程计算机***(未示出)。
所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,所述一个或者一个以上程序包含用于进行本申请实施例提供的方法中由计算机设备所执行的步骤。
本申请实施例还提供一种计算机可读存储介质,该可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现上述任一实施例所述的人脸形状库的构建方法。
本申请还提供了一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行上述各个方法实施例提供的人脸形状库的构建方法。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,该计算机可读存储介质可以是上述实施例中的存储器中所包含的计算机可读存储介质;也可以是单独存在,未装配入终端中的计算机可读存储介质。该计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述任一方法实施例所述的人脸形状库的构建方法。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选的实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (14)
1.一种人脸形状库的构建方法,其特征在于,所述方法包括:
获取人脸数据集,所述人脸数据集存储有至少一组人脸数据;
将所述人脸数据集中的所述人脸数据进行数据扰动处理得到至少两组扰动数据,所述数据扰动处理包括旋转处理、平移处理、缩放处理中的至少一种;
通过对所述人脸数据集进行主成分分析得到所述人脸数据集的脸型基;
响应于所述扰动数据中的目标扰动数据的拟合误差大于误差阈值,将所述目标扰动数据加入所述人脸数据集,迭代更新所述人脸数据集得到人脸形状库,所述拟合误差是拟合目标扰动数据和所述目标扰动数据的误差值,所述拟合目标扰动数据是根据所述人脸数据集的所述脸型基对所述目标扰动数据进行拟合得到的所述人脸数据;
其中,所述拟合是采用拟合函数执行的,所述拟合函数包括:
其中,α为目标人脸形状系数;face_rot为一组扰动数据,展开后为[3N×1]的矩阵;face_rot(x)为扰动数据中的第x个数;mu0为所述人脸数据集的所述脸型基中的均值,pc0为所述人脸数据集的所述脸型基中的主成分特征向量矩阵;ev0为所述人脸数据集的所述脸型基中的主成分对角矩阵;α为待调整的人脸形状系数;(mu+pc*ev*α)(x)表示所述脸型基和所述扰动数据进行拟合后,得到的拟合扰动数据中的第x个数;λ为正则系数;N为所述人脸数据的顶点的数量。
2.根据权利要求1所述的方法,其特征在于,所述迭代更新所述人脸数据集得到人脸形状库,包括:
响应于不满足迭代结束条件,将加入所述目标扰动数据的所述人脸数据集重新确定为所述人脸数据集;
从所述将所述人脸数据集中的所述人脸数据进行数据扰动处理得到至少两组扰动数据的步骤开始,重复上述步骤。
3.根据权利要求2所述的方法,其特征在于,所述响应于不满足迭代结束条件,将加入所述目标扰动数据的所述人脸数据集重新确定为所述人脸数据集,包括:
响应于所述扰动数据中存在所述拟合误差大于误差阈值的所述目标扰动数据,将加入所述目标扰动数据的所述人脸数据集重新确定为所述人脸数据集;
或,
响应于迭代次数小于次数阈值,将加入所述目标扰动数据的所述人脸数据集重新确定为所述人脸数据集。
4.根据权利要求1至3任一所述的方法,其特征在于,所述数据扰动处理包括旋转处理;
所述将所述人脸数据集中的所述人脸数据进行数据扰动处理得到至少两组扰动数据,包括:
将所述人脸数据中的至少一个点绕参考点朝任意方向旋转任意角度得到至少两组所述扰动数据,所述参考点是所述人脸数据中的任意一点。
5.根据权利要求1至3任一所述的方法,其特征在于,所述数据扰动处理包括平移处理;
所述将所述人脸数据集中的所述人脸数据进行数据扰动处理得到至少两组扰动数据,包括:
将所述人脸数据中的至少一个点向第一方向移动第一距离得到至少两组所述扰动数据。
6.根据权利要求1至3任一所述的方法,其特征在于,所述数据扰动处理包括缩放处理;
所述将所述人脸数据集中的所述人脸数据进行数据扰动处理得到至少两组扰动数据,包括:
以所述人脸数据中两个耳朵连线的中心点为坐标原点,同比放大所述人脸数据的数值得到至少两组所述扰动数据。
7.根据权利要求1至3任一所述的方法,其特征在于,所述获取人脸数据集,包括:
获取原始人脸数据集,所述原始人脸数据集包括至少一组所述人脸数据;
将所述原始人脸数据集中的所述人脸数据进行镜像处理得到第一镜像人脸数据集;
将所述原始人脸数据集和所述第一镜像人脸数据集确定为所述人脸数据集。
8.根据权利要求1至3任一所述的方法,其特征在于,所述获取人脸数据集,包括:
获取原始人脸数据集,所述原始人脸数据集包括至少两组人脸数据;
将所述原始人脸数据集中的所述人脸数据进行替换处理得到第一替换人脸数据集,所述替换处理包括使用第一人脸数据中的第一区域替换第二人脸数据中的所述第一区域得到替换人脸数据;
将所述原始人脸数据集和所述第一替换人脸数据集确定为所述人脸数据集。
9.根据权利要求1至3任一所述的方法,其特征在于,所述获取人脸数据集,包括:
获取原始人脸数据集,所述原始人脸数据集包括至少一组人脸数据;
将所述原始人脸数据集中的所述人脸数据进行镜像处理得到第二镜像人脸数据集;
将所述原始人脸数据集和所述第二镜像人脸数据集确定为第一扩充人脸数据集;
将所述第一扩充人脸数据集中的所述人脸数据进行替换处理得到第二替换人脸数据集,所述替换处理包括使用第一人脸数据中的第一区域替换第二人脸数据中的所述第一区域得到替换人脸数据;
将所述第一扩充人脸数据集和所述第二替换人脸数据集确定为第二扩充人脸数据集;
将所述第二扩充人脸数据集中的所述人脸数据进行镜像处理得到第三镜像人脸数据集;
将所述第二扩充人脸数据集和所述第三镜像人脸数据集确定为所述人脸数据集。
10.一种人脸形状库的构建装置,其特征在于,所述装置包括:
获取模块,用于获取人脸数据集,所述人脸数据集存储有至少一组人脸数据;
扰动模块,用于将所述人脸数据集中的所述人脸数据进行数据扰动处理得到至少两组扰动数据,所述数据扰动处理包括旋转处理、平移处理、缩放处理中的至少一种;
计算模块,用于通过对所述人脸数据集进行主成分分析得到所述人脸数据集的脸型基;
迭代模块,用于响应于所述扰动数据中的目标扰动数据的拟合误差大于误差阈值,将所述目标扰动数据加入所述人脸数据集,迭代更新所述人脸数据集得到人脸形状库,所述拟合误差是拟合目标扰动数据和所述目标扰动数据的误差值,所述拟合目标扰动数据是根据所述人脸数据集的所述脸型基对所述目标扰动数据进行拟合得到的所述人脸数据;
其中,所述拟合是采用拟合函数执行的,所述拟合函数包括:
其中,α为目标人脸形状系数;face_rot为一组扰动数据,展开后为[3N×1]的矩阵;face_rot(x)为扰动数据中的第x个数;mu0为所述人脸数据集的所述脸型基中的均值,pc0为所述人脸数据集的所述脸型基中的主成分特征向量矩阵;ev0为所述人脸数据集的所述脸型基中的主成分对角矩阵;α为待调整的人脸形状系数;(mu+pc*ev*α)(x)表示所述脸型基和所述扰动数据进行拟合后,得到的拟合扰动数据中的第x个数;λ为正则系数;N为所述人脸数据的顶点的数量。
11.根据权利要求10所述的装置,其特征在于,所述迭代模块,还用于响应于不满足迭代结束条件,将加入所述目标扰动数据的所述人脸数据集重新确定为所述人脸数据集;
所述迭代模块,还用于从所述将所述人脸数据集中的所述人脸数据进行数据扰动处理得到至少两组扰动数据的步骤开始,重复上述步骤。
12.根据权利要求11所述的装置,其特征在于,所述迭代模块,还用于响应于所述扰动数据中存在所述拟合误差大于误差阈值的所述目标扰动数据,将加入所述目标扰动数据的所述人脸数据集重新确定为所述人脸数据集;
或,
所述迭代模块,还用于响应于迭代次数小于次数阈值,将加入所述目标扰动数据的所述人脸数据集重新确定为所述人脸数据集。
13.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至9任一所述的人脸形状库的构建方法。
14.一种计算机可读存储介质,其特征在于,所述可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1至9任一所述的人脸形状库的构建方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010524242.6A CN111581412B (zh) | 2020-06-10 | 2020-06-10 | 人脸形状库的构建方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010524242.6A CN111581412B (zh) | 2020-06-10 | 2020-06-10 | 人脸形状库的构建方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111581412A CN111581412A (zh) | 2020-08-25 |
CN111581412B true CN111581412B (zh) | 2023-11-10 |
Family
ID=72125744
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010524242.6A Active CN111581412B (zh) | 2020-06-10 | 2020-06-10 | 人脸形状库的构建方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111581412B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006343791A (ja) * | 2005-06-07 | 2006-12-21 | Hitachi Ltd | 顔画像データベース作成方法 |
CN101261677A (zh) * | 2007-10-18 | 2008-09-10 | 周春光 | 人脸和虹膜混合识别的新方法——特征提取层融合 |
KR20130121360A (ko) * | 2012-04-27 | 2013-11-06 | 제너럴 일렉트릭 캄파니 | 이미지 정렬에 대한 최적 그래디언트 추적 |
DE102012103738A1 (de) * | 2012-04-27 | 2013-11-14 | General Electric Co. | Suche des optimalen Gradienten für die Bildausrichtung |
CN105608710A (zh) * | 2015-12-14 | 2016-05-25 | 四川长虹电器股份有限公司 | 一种非刚性人脸检测和追踪定位方法 |
CN108108677A (zh) * | 2017-12-12 | 2018-06-01 | 重庆邮电大学 | 一种基于改进的cnn人脸表情识别方法 |
CN108229276A (zh) * | 2017-03-31 | 2018-06-29 | 北京市商汤科技开发有限公司 | 神经网络训练及图像处理方法、装置和电子设备 |
CN110569756A (zh) * | 2019-08-26 | 2019-12-13 | 长沙理工大学 | 人脸识别模型构建方法、识别方法、设备和存储介质 |
-
2020
- 2020-06-10 CN CN202010524242.6A patent/CN111581412B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006343791A (ja) * | 2005-06-07 | 2006-12-21 | Hitachi Ltd | 顔画像データベース作成方法 |
CN101261677A (zh) * | 2007-10-18 | 2008-09-10 | 周春光 | 人脸和虹膜混合识别的新方法——特征提取层融合 |
KR20130121360A (ko) * | 2012-04-27 | 2013-11-06 | 제너럴 일렉트릭 캄파니 | 이미지 정렬에 대한 최적 그래디언트 추적 |
DE102012103738A1 (de) * | 2012-04-27 | 2013-11-14 | General Electric Co. | Suche des optimalen Gradienten für die Bildausrichtung |
CN105608710A (zh) * | 2015-12-14 | 2016-05-25 | 四川长虹电器股份有限公司 | 一种非刚性人脸检测和追踪定位方法 |
CN108229276A (zh) * | 2017-03-31 | 2018-06-29 | 北京市商汤科技开发有限公司 | 神经网络训练及图像处理方法、装置和电子设备 |
CN108108677A (zh) * | 2017-12-12 | 2018-06-01 | 重庆邮电大学 | 一种基于改进的cnn人脸表情识别方法 |
CN110569756A (zh) * | 2019-08-26 | 2019-12-13 | 长沙理工大学 | 人脸识别模型构建方法、识别方法、设备和存储介质 |
Non-Patent Citations (1)
Title |
---|
基于形变模型的三维人脸重建及识别;项聪颖;《中国优秀硕士学位论文全文数据库 (信息科技辑)》;2019年(第2期);I138-2181 * |
Also Published As
Publication number | Publication date |
---|---|
CN111581412A (zh) | 2020-08-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111369681B (zh) | 三维模型的重构方法、装置、设备及存储介质 | |
US10304244B2 (en) | Motion capture and character synthesis | |
CN109961507B (zh) | 一种人脸图像生成方法、装置、设备及存储介质 | |
CN109859296B (zh) | Smpl参数预测模型的训练方法、服务器及存储介质 | |
CN111028330B (zh) | 三维表情基的生成方法、装置、设备及存储介质 | |
CN111243093B (zh) | 三维人脸网格的生成方法、装置、设备及存储介质 | |
CN112614213A (zh) | 人脸表情确定方法、表情参数确定模型、介质及设备 | |
EP3326156B1 (en) | Consistent tessellation via topology-aware surface tracking | |
Ngo et al. | Template-based monocular 3D shape recovery using laplacian meshes | |
CN110866864A (zh) | 人脸姿态估计/三维人脸重构方法、装置及电子设备 | |
CN109685873B (zh) | 一种人脸重建方法、装置、设备和存储介质 | |
CN111710035B (zh) | 人脸重建方法、装置、计算机设备及存储介质 | |
CN112085835B (zh) | 三维卡通人脸生成方法、装置、电子设备及存储介质 | |
CN116563493A (zh) | 基于三维重建的模型训练方法、三维重建方法及装置 | |
CN113593001A (zh) | 目标对象三维重建方法、装置、计算机设备和存储介质 | |
Lalos et al. | Signal processing on static and dynamic 3d meshes: Sparse representations and applications | |
CN116363320B (zh) | 重建模型的训练和三维模型重建方法、装置、设备及介质 | |
Kazmi et al. | Efficient sketch‐based creation of detailed character models through data‐driven mesh deformations | |
CN111581412B (zh) | 人脸形状库的构建方法、装置、设备及存储介质 | |
CN114757822B (zh) | 一种基于双目的人体三维关键点检测方法及*** | |
CN111651623B (zh) | 高精度人脸表情库的构建方法、装置、设备及存储介质 | |
CN111581411B (zh) | 高精度人脸形状库的构建方法、装置、设备及存储介质 | |
WO2023127005A1 (ja) | データ拡張装置、データ拡張方法、及びコンピュータ読み取り可能な記録媒体 | |
GAO et al. | Face Reconstruction Algorithm based on Lightweight Convolutional Neural Networks and Channel-wise Attention | |
CN117197401A (zh) | 针对点云构建的测试方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40028365 Country of ref document: HK |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |