CN117372604B - 一种3d人脸模型生成方法、装置、设备及可读存储介质 - Google Patents
一种3d人脸模型生成方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN117372604B CN117372604B CN202311658669.5A CN202311658669A CN117372604B CN 117372604 B CN117372604 B CN 117372604B CN 202311658669 A CN202311658669 A CN 202311658669A CN 117372604 B CN117372604 B CN 117372604B
- Authority
- CN
- China
- Prior art keywords
- face
- model
- dimensional
- face model
- image
- 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 81
- 238000003860 storage Methods 0.000 title claims abstract description 14
- 238000003062 neural network model Methods 0.000 claims abstract description 33
- 238000006243 chemical reaction Methods 0.000 claims abstract description 17
- 230000006870 function Effects 0.000 claims description 27
- 238000012549 training Methods 0.000 claims description 23
- 238000013519 translation Methods 0.000 claims description 21
- 238000004364 calculation method Methods 0.000 claims description 20
- 238000004088 simulation Methods 0.000 claims description 19
- 230000009466 transformation Effects 0.000 claims description 18
- 239000013598 vector Substances 0.000 claims description 18
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 claims description 17
- 238000005286 illumination Methods 0.000 claims description 17
- 238000001514 detection method Methods 0.000 claims description 13
- 239000011159 matrix material Substances 0.000 claims description 13
- 238000013507 mapping Methods 0.000 claims description 12
- 230000003042 antagnostic effect Effects 0.000 claims description 10
- 230000036544 posture Effects 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 8
- 210000000887 face Anatomy 0.000 claims description 8
- 238000004422 calculation algorithm Methods 0.000 claims description 7
- 238000013528 artificial neural network Methods 0.000 claims description 6
- 230000005855 radiation Effects 0.000 claims description 3
- 238000012545 processing Methods 0.000 abstract description 5
- 238000005457 optimization Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 230000004913 activation Effects 0.000 description 4
- 238000010276 construction Methods 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 3
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000750 progressive effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- KLDZYURQCUYZBL-UHFFFAOYSA-N 2-[3-[(2-hydroxyphenyl)methylideneamino]propyliminomethyl]phenol Chemical compound OC1=CC=CC=C1C=NCCCN=CC1=CC=CC=C1O KLDZYURQCUYZBL-UHFFFAOYSA-N 0.000 description 1
- 230000008485 antagonism Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 201000001098 delayed sleep phase syndrome Diseases 0.000 description 1
- 208000033921 delayed sleep phase type circadian rhythm sleep disease Diseases 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000010195 expression analysis Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000036548 skin texture Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
- G06T15/506—Illumination models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0475—Generative networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/094—Adversarial learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/04—Texture mapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
- G06T15/60—Shadow generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/161—Detection; Localisation; Normalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/172—Classification, e.g. identification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
- G06T2207/30201—Face
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Multimedia (AREA)
- Computer Graphics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Life Sciences & Earth Sciences (AREA)
- Human Computer Interaction (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Molecular Biology (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Processing Or Creating Images (AREA)
- Image Analysis (AREA)
Abstract
本发明提供了一种3D人脸模型生成方法、装置、设备及可读存储介质,涉及图像处理技术领域,包括获取二维图像,利用人脸识别模型识别二维图像中的人脸区域和人脸关键点;利用人脸关键点对人脸区域中的人脸进行位置和姿态调整,生成二维人脸模型;将所述二维人脸模型与标准人脸模板进行比对,以计算形变参数,并将所述形变参数作为预设权重参数;获取训练完成的转换神经网络模型,将所述二维人脸模型和预设权重参数输入转换神经网络模型中,生成3D人脸图像;对3D人脸图像进行光照模拟和阴影模拟,生成渲染后的3D人脸模型,本发明消除了人脸姿态和角度的差异,保证了生成3D人脸模型的精确度。
Description
技术领域
本发明涉及图像处理技术领域,具体而言,涉及一种3D人脸模型生成方法、装置、设备及可读存储介质。
背景技术
3D人脸模型逐渐被推广应用至虚拟现实、影视制作、人脸识别、游戏娱乐等诸多领域,具有很强的应用价值,当前的3D人脸模型生成方法在使用过程中存在以下问题:对2D图像中人脸的角度和姿态的要求较高,当2D图像中人脸的角度和姿态不符合模型的生成要求时,就会导致生成的3D人脸模型精确度降低。
发明内容
本发明的目的在于提供一种3D人脸模型生成方法、装置、设备及可读存储介质,以改善上述问题。为了实现上述目的,本发明采取的技术方案如下:
第一方面,本申请提供了一种3D人脸模型生成方法,包括:
获取二维图像,利用人脸识别模型识别二维图像中的人脸区域和人脸关键点;
利用人脸关键点对人脸区域中的人脸进行位置和姿态调整,生成二维人脸模型;
将所述二维人脸模型与标准人脸模板进行比对,以计算形变参数,并将所述形变参数作为预设权重参数;
获取训练完成的转换神经网络模型,将所述二维人脸模型和预设权重参数输入转换神经网络模型中,生成3D人脸图像;
对3D人脸图像进行光照模拟和阴影模拟,生成渲染后的3D人脸模型
第二方面,本申请还提供了一种3D人脸模型生成装置,包括:
识别模块:用于获取二维图像,利用人脸识别模型识别二维图像中的人脸区域和人脸关键点;
调整模块:用于利用人脸关键点对人脸区域中的人脸进行位置和姿态调整,生成二维人脸模型;
计算模块:用于将所述二维人脸模型与标准人脸模板进行比对,以计算形变参数,并将所述形变参数作为预设权重参数;
第一生成模块:用于获取训练完成的转换神经网络模型,将所述二维人脸模型和预设权重参数输入转换神经网络模型中,生成3D人脸图像;
第二生成模块:用于对3D人脸图像进行光照模拟和阴影模拟,生成渲染后的3D人脸模型。
第三方面,本申请还提供了一种3D人脸模型生成设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现所述3D人脸模型生成方法的步骤。
第四方面,本申请还提供了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述基于3D人脸模型生成方法的步骤。
本发明的有益效果为:
本发明通过标记关键点的位置,并根据关键点的位置调整2D图像中的人脸的姿态和角度,使用人脸对齐算法对2D图像中的人脸进行形变,使其与标准人脸模板对齐,确保它们具有相同的尺度和姿态,从而消除了人脸姿态和角度的差异,有利于用于后续的人脸识别、表情分析等任务,提高了后续任务的准确性和可靠性,保证了生成3D人脸模型的精确度。
本发明的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明实施例了解。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明实施例中所述的3D人脸模型生成方法流程示意图;
图2为本发明实施例中所述的3D人脸模型生成装置结构示意图;
图3为本发明实施例中所述的3D人脸模型生成设备结构示意图。
图中标记:
800、3D人脸模型生成设备;801、处理器;802、存储器;803、多媒体组件;804、I/O接口;805、通信组件。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
实施例1:
本实施例提供了一种3D人脸模型生成方法。
参见图1,图中示出了本方法包括:
S1.获取二维图像,利用人脸识别模型识别二维图像中的人脸区域和人脸关键点;
具体的,所述步骤S1包括:
S11.将二维图像输入神经网络模型中进行人脸检测,确定图像中是否存在人脸;
若是,则定位至人脸所在位置,从二维图像中提取出人脸区域;
具体的,神经网络模型对二维图像进行前向传播,通过卷积、池化和全连接层等操作,提取二维图像中的特征形成人脸检测结果,所述人脸检测结果是一个边界框(boundingbox),表示人脸在图像中的位置;
根据输出的人脸检测结果,确定图像中是否存在人脸,如果存在人脸,则得到人脸的位置信息,即边界框的坐标(左上角和右下角的坐标);
根据人脸的位置信息,从二维图像中提取出人脸区域。
S12.利用人脸检测算法从人脸区域中预测人脸关键点所在位置,并在人脸区域中标记出人脸关键点;
本实施例中,将人脸区域输入至关键点定位模型中,得到关键点位置的预测结果,预测结果包括眼睛、鼻子、嘴巴等关键点的坐标集合。
优选的,将关键点坐标标记在二维图像上,优选的,标记方式可以采用绘制圆圈、绘制点等。
本实施例通过利用神经网络模型进行人脸检测,能够准确地确定图像中是否存在人脸,并找到人脸的位置,为后续的关键点定位提供准确的输入。
人脸检测算法模型能够根据人脸检测得到的人脸位置,预测人脸的关键点位置,包括眼睛、鼻子、嘴巴等关键点的坐标,从而实现对人脸特征的精准定位,优选的,所述人脸检测算法模型包括Dlib、MTCNN等。
通过特定的标记方式将关键点在二维图像上进行标记,可以清晰地展示人脸的关键特征,为后续的人脸识别、表情识别等任务提供可视化支持。
基于以上实施例,本方法包括:
S2.利用人脸关键点对人脸区域中的人脸进行位置和姿态调整,生成二维人脸模型;
具体的,所述步骤S2包括:
S21.根据人脸关键点所在的位置计算得到仿射变换参数;
具体的,所述步骤S21包括:
S211.获取眼睛的关键点所在位置,将两个眼睛的中心点坐标作为旋转中心;
具体的,左眼的坐标为(x1,y1),右眼的坐标为(x2,y2);
旋转中心(a,b)的计算方法为:;(1)
S212.计算两个眼睛之间的距离得到缩放因子:;(2)
S213.计算两个眼睛的中心点与标准模板中眼睛中心点的偏移量,得到平移向量(c,d);;(3)
其中,和/>分别表示为标准模板中左眼的坐标。
S214.将旋转中心、缩放因子以及平移向量作为仿射变换参数。
S22.利用所述仿射变换参数构建仿射变换矩阵;
具体的,定义一个2x3的零矩阵,作为初始的仿射变换矩阵;
根据旋转中心计算得到旋转角度,将旋转角度/>转换为弧度后计算弧度的正弦值/>和余弦值/>,将旋转角度的正弦值和余弦值作为旋转参数,其计算公式为:;(4)
其中,matrix[0,1]为横坐标旋转参数,matrix[1,0]表示纵坐标旋转参数。
将缩放因子作为对角线变换参数matrix[0,0],其计算公式为:;(5)
将平移向量作为平移参数,其计算公式为:;(6)
其中,表示横坐标平移参数,/>表示纵坐标平移参数。
S23.遍历人脸区域的每个像素点,利用所述仿射变换矩阵对像素点进行旋转、缩放或/和平移操作,生成二维人脸模型;
具体的,对原始像素点进行旋转、缩放或/和平移操作生成新的像素点:/>;(7)
基于以上实施例,本方法包括:
S3.将所述二维人脸模型与标准人脸模板进行比对,以计算形变参数,并将所述形变参数作为预设权重参数;
具体的,所述步骤S3包括:
S31.将所述二维人脸模型与标准人脸模板对齐后得到一张叠图,使二维人脸模型与标准人脸模板有相同的尺度和姿态;
S32.将所述叠图划分为若干区域,优选的,可以按照固定大小的矩形或者根据人脸的特征点进行分割得到的不规则区域;
计算每个区域中二维人脸模型与标准人脸模板之间的形变量、旋转角度、缩放因子和平移向量;
具体的,采用均方差方法(MeanSquareError)计算区域中二维人脸模型与标准人脸模板之间的像素差异,得到差异度量值;
将差异度量值映射到[0,1]区间,得到形变量,形变量准确描述了每个区域的形变情况;
使用特征描述子SIFT(Scale-InvariantFeatureTransform)分别提取区域中二维人脸模型的特征点与标准人脸模板的特征点/>,在区域中查找关键特征点;
计算特征点对之间的相对位置差异,其计算公式为:;(8)
计算旋转角度:/>;(9)
计算二维人脸模型中与标准人脸模板特征点对之间的距离差异,其计算公式为:/>;(10)
利用上式计算得到另一对特征点对之间的距离差异;
基于和/>计算得到缩放因子/>,其计算公式为:;(11)
计算特征点对之间的平移向量:/>;(12)
S33.将形变量、旋转角度、缩放因子和平移向量组合为形变参数,将所述形变参数作为转换神经网络模型的预设权重参数。
基于以上实施例,本方法包括:
S4.获取训练完成的转换神经网络模型,将所述二维人脸模型和预设权重参数输入转换神经网络模型中,生成3D人脸图像;
具体的,所述步骤S4包括:
S41.采集多组二维人脸模型和对应的3D人脸模型,并获取每组二维人脸模型相对于标准人脸模型的形变参数;其中,3D人脸模型由3D扫描仪捕捉的真实人脸数据,包括不同角度、表情和光照条件下的人脸数据;
优选的,对二维人脸模型进行预处理,如归一化、裁剪和调整大小,以便与转换神经网络模型的输入要求相匹配;对形变参数进行适归一化和编码处理,确保数据的一致性和可用性,为生成对抗神经网络模型的训练提供了的数据基础。
S42.将二维人脸模型和对应的形变参数作为输入标签、3D人脸模型作为输出标签构建数据集;
S43.由生成器网络G和判别器网络D构建生成对抗神经网络模型,将二维人脸模型和对应的形变参数输入对抗神经网络进行训练以生成预测3D人脸;
具体的,生成对抗神经网络模型的构建包括以下内容:
1)网页架构设计:
生成器网络g的架构包括全连接层、逆卷积层、激活函数残差块和注意力机制:
全连接层:将随机噪声z作为输入,通过全连接层将其映射到一个中间向量f(x),计算公式为:f(x)=Wx+b,其中W是权重矩阵,b是偏置向量。
逆卷积层:将中间向量f(x)通过逆卷积层进行上采样,逐渐增加特征图的尺寸和通道数;
卷积层:在逆卷积层之后,通过卷积层进一步调整特征图的通道数和维度,使其与原始信号的维度一致;
激活函数:在每个层之后添加适当的激活函数,如ReLU或LeakyReLU,以引入非线性。
判别器网络D的架构包括:
卷积层:将生成的假信号和原始信号作为输入,通过卷积层提取特征;
全连接层:在卷积层之后,通过全连接层将特征映射到一个中间向量;
输出层:最后通过输出层得到判别器的输出结果,可以使用Sigmoid函数将输出结果映射到0到1之间,表示对假信号和原始信号的判别结果。
生成对抗神经网络模型的生成器网络和判别器网络的设计,包括全连接层、逆卷积层、卷积层、激活函数、残差块和注意力机制等,有助于提高网络的表达能力和学习能力。
2)损失函数设计:
对抗损失函数:使用对抗损失函数来训练生成器网络和判别器网络,使生成器生成的3D人脸模型更逼真,并使判别器能够准确判断真实和生成的3D人脸模型,计算公式为:
生成器网络的损失函数:LG=-log(D(G(z))),其中D(G(z))是判别器对生成器生成的假样本的判断;
判别器网络的损失函数:LD=-log(D(x))-log(1-D(G(z))),其中D(x)是判别器对真实样本的判断,D(G(z))是判别器对生成器生成的假样本的判断。
重建损失函数:引入重建损失函数来约束生成器生成的3D人脸模型与原始人脸样本之间的相似性,以进一步提高生成的3D人脸模型的质量。
对抗损失函数和重建损失函数的设计,能够有效地约束生成器生成的3D人脸模型与原始人脸样本之间的相似性,提高生成的3D人脸模型的质量。
3)训练策略
优选的,在训练过程中采用渐进式训练策略,先从低分辨率的3D人脸模型开始训练,逐渐增加分辨率,以提高训练的稳定性和生成的3D人脸模型的质量;
在生成器和判别器网络中引入批次规范化,以提高网络的稳定性和训练速度,具体计算如下:;(13)
其中表示批次的均值,/>是批次的方差,γ和β是可学习的参数,ε表示常数,表示输入值。
优选的,在批次化规范过程中添加学习率衰减:;(14)
其中,表示当前学习率,/>是初始学习率,t是当前迭代次数,T是总迭代次数。
本实施例通过采用渐进式训练策略和批次规范化,以及学习率衰减等训练方法,有助于提高网络的稳定性和训练速度,从而提高生成的3D人脸模型的质量。
4)数据增强:
在训练过程中,对输入的2D图像进行数据增强操作,如旋转、缩放、平移和加噪声等,以增加网络对不同姿态和光照条件下的人脸的鲁棒性;
并在训练过程中执行如下操作:
随机裁剪:随机选择图像的一个子区域,并将其缩放到原始大小;
颜色扭曲:随机改变图像的亮度、对比度、饱和度和色调;
线性插值:对两个随机样本和它们的标签进行线性插值。
S44.利用预测3D人脸与训练集中的3D人脸模型计算损失函数,当损失函数达到预设值时,对抗神经网络训练完成,得到转换神经网络模型;
本实施例中,采用梯度下降优化算法,根据损失函数的梯度,更新形状参数和纹理参数,通过迭代优化的过程,逐步调整3D人脸模型的形状和纹理,使其与目标2D图像更加接近,当达到最大迭代次数I或损失函数收敛阈值loss收敛至一个阈值时,停止迭代优化过程,得到最终优化后的3D人脸模型;
具体的,最大迭代次数I的计算方法为:;(15)
其中,k是一个常数,表示每个样本的平均迭代次数,n是数据集的大小,k的取值范围在2到10之间,可以根据任务的复杂性和计算资源的限制进行调整。较小的k值会减少计算时间,但可能导致优化不充分;较大的k值会增加计算时间,但可能提高优化的精度;
损失函数收敛阈值loss的计算方法为:;(16)
其中,m是一个常数,表示损失函数的变化范围, m的取值范围在0.1到0.001之间,可以根据任务的要求和数据集的特点进行调整,较大的m值会允许较大的损失函数变化,可能导致优化过程较快收敛,但可能达不到较高的优化精度;较小的m值会限制损失函数的变化范围,可能导致优化过程较慢收敛,但可能达到较高的优化精度, ε是一个较小的数值,表示期望的损失函数变化。
基于以上实施例,本方法包括:
S5.对3D人脸图像进行光照模拟和阴影模拟,生成渲染后的3D人脸模型;
具体的,所步骤S5包括:
S51.分别获取二维人脸模型和3D人脸图像的顶点信息,在3D人脸图像中生成每个顶点的纹理坐标,优选的,可采用法线贴图、位移贴图和皮肤材质等纹理映射法进行映射,以增强模型的真实感和细节;
S52.将二维人脸模型中的纹理信息映射至3D人脸图像中的纹理坐标上,优选的,根据实际需要,可对纹理的亮度、对比度、色调等参数进行调整,以使其更好地适应3D人脸图像的形状和特征;
S53.构建辐射场模型,对3D人脸图像的纹理信息进行光照模拟后生成3D人脸模型,具体的,根据3D人脸图像的几何信息和光照条件,通过计算每个像素的光照值,并将其应用于纹理上,对纹理进行光照模拟,以增强面部细节和真实感。
实施例2:
如图2所示,本实施例提供了一种3D人脸模型生成装置,所述装置包括:
识别模块:用于获取二维图像,利用人脸识别模型识别二维图像中的人脸区域和人脸关键点;
调整模块:用于利用人脸关键点对人脸区域中的人脸进行位置和姿态调整,生成二维人脸模型;
计算模块:用于将所述二维人脸模型与标准人脸模板进行比对,以计算形变参数,并将所述形变参数作为预设权重参数;
第一生成模块:用于获取训练完成的转换神经网络模型,将所述二维人脸模型和预设权重参数输入转换神经网络模型中,生成3D人脸图像;
第二生成模块:用于对3D人脸图像进行光照模拟和阴影模拟,生成渲染后的3D人脸模型。
基于以上实施例,所述识别模块包括:
人脸检测单元:用于将二维图像输入神经网络模型中进行人脸检测,确定图像中是否存在人脸;
若是,则定位至人脸所在位置,从二维图像中提取出人脸区域;
定位单元:用于利用人脸检测算法从人脸区域中预测人脸关键点所在位置,并在人脸区域中标记出人脸关键点。
基于以上实施例,所述调整模块包括:
第一计算单元:用于根据人脸关键点所在的位置计算得到仿射变换参数;
矩阵构建单元:用于利用所述仿射变换参数构建仿射变换矩阵;
转变单元:用于遍历人脸区域的每个像素点,利用所述仿射变换矩阵对像素点进行旋转、缩放或/和平移操作,生成二维人脸模型。
基于以上实施例,所述第一计算单元包括:
第一获取单元:用于获取眼睛的关键点所在位置,将两个眼睛的中心点坐标作为旋转中心;
第二计算单元:用于计算两个眼睛之间的距离得到缩放因子;
第三计算单元:用于计算两个眼睛的中心点与标准模板中眼睛中心点的偏移量,得到平移向量;
选择单元:用于将旋转中心、缩放因子以及平移向量作为仿射变换参数。
基于以上实施例,所述计算模块包括:
重叠单元:用于将所述二维人脸模型与标准人脸模板对齐后得到一张叠图;
划分单元:用于将所述叠图划分为若干区域,并计算每个区域中二维人脸模型与标准人脸模板之间的形变量、旋转角度、缩放因子和平移向量;
组合单元:用于将形变量、旋转角度、缩放因子和平移向量组合为形变参数,将所述形变参数作为转换神经网络模型的预设权重参数。
基于以上实施例,所述第一生成模块包括:
采集单元:用于采集多组二维人脸模型和对应的3D人脸模型,并获取每组二维人脸模型相对于标准人脸模型的形变参数;
数据集构建单元:用于将二维人脸模型和对应的形变参数作为输入标签、3D人脸模型作为输出标签构建数据集;
模型构建单元:用于由生成器网络和判别器网络构建生成对抗神经网络模型,将二维人脸模型和对应的形变参数输入对抗神经网络进行训练以生成预测3D人脸;
第四计算单元:用于利用预测3D人脸与训练集中的3D人脸模型计算损失函数,当损失函数达到预设值时,对抗神经网络训练完成,得到转换神经网络模型。
基于以上实施例,所述第二生成模块包括:
第二获取单元:用于分别获取二维人脸模型和3D人脸图像的顶点信息,在3D人脸图像中生成每个顶点的纹理坐标;
映射单元:用于将二维人脸模型中的纹理信息映射至3D人脸图像中的纹理坐标上;
光照模拟单元:用于构建辐射场模型,对3D人脸图像的纹理信息进行光照模拟后生成3D人脸模型。
需要说明的是,关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
实施例3:
相应于上面的方法实施例,本实施例中还提供了一种3D人脸模型生成设备,下文描述的一种3D人脸模型生成设备与上文描述的一种3D人脸模型生成方法可相互对应参照。
图3是根据示例性实施例示出的一种3D人脸模型生成设备800的框图。如图3所示,该3D人脸模型生成设备800可以包括:处理器801,存储器802。该3D人脸模型生成设备800还可以包括多媒体组件803, I/O接口804,以及通信组件805中的一者或多者。
其中,处理器801用于控制该3D人脸模型生成设备800的整体操作,以完成上述的3D人脸模型生成方法中的全部或部分步骤。存储器802用于存储各种类型的数据以支持在该3D人脸模型生成设备800的操作,这些数据例如可以包括用于在该3D人脸模型生成设备800上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器802可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-OnlyMemory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-OnlyMemory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件803可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器802或通过通信组件805发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口804为处理器801和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件805用于该3D人脸模型生成设备800与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near FieldCommunication,简称NFC),2G、3G或4G,或它们中的一种或几种的组合,因此相应的该通信组件805可以包括:Wi-Fi模块,蓝牙模块,NFC模块。
在一示例性实施例中,3D人脸模型生成设备800可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal ProcessingDevice,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的3D人脸模型生成方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的3D人脸模型生成方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器802,上述程序指令可由3D人脸模型生成设备800的处理器801执行以完成上述的3D人脸模型生成方法。
实施例4:
相应于上面的方法实施例,本实施例中还提供了一种可读存储介质,下文描述的一种可读存储介质与上文描述的一种3D人脸模型生成方法可相互对应参照。
一种可读存储介质,可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例的3D人脸模型生成方法的步骤。
该可读存储介质具体可以为U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可存储程序代码的可读存储介质。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种3D人脸模型生成方法,其特征在于,包括:
获取二维图像,利用人脸识别模型识别二维图像中的人脸区域和人脸关键点;
利用人脸关键点对人脸区域中的人脸进行位置和姿态调整,生成二维人脸模型;
将所述二维人脸模型与标准人脸模板进行比对,以计算形变参数,并将所述形变参数作为预设权重参数;
获取训练完成的转换神经网络模型,将所述二维人脸模型和预设权重参数输入转换神经网络模型中,生成3D人脸图像;
对3D人脸图像进行光照模拟和阴影模拟,生成渲染后的3D人脸模型。
2.根据权利要求1所述的3D人脸模型生成方法,其特征在于,利用人脸识别模型识别二维图像中的人脸区域和人脸关键点,包括:
将二维图像输入神经网络模型中进行人脸检测,确定图像中是否存在人脸;
若是,则定位至人脸所在位置,从二维图像中提取出人脸区域;
利用人脸检测算法从人脸区域中预测人脸关键点所在位置,并在人脸区域中标记出人脸关键点。
3.根据权利要求1所述的3D人脸模型生成方法,其特征在于,利用人脸关键点对人脸区域中的人脸进行位置和姿态调整,生成二维人脸模型,包括:
根据人脸关键点所在的位置计算得到仿射变换参数;
利用所述仿射变换参数构建仿射变换矩阵;
遍历人脸区域的每个像素点,利用所述仿射变换矩阵对像素点进行旋转、缩放或/和平移操作,生成二维人脸模型。
4.根据权利要求3所述的3D人脸模型生成方法,其特征在于,根据人脸关键点所在的位置计算得到仿射变换参数,包括:
根据所述关键点确定两个眼睛所在的位置,将位于两个眼睛之间的中点坐标作为旋转中心;
计算两个眼睛之间的距离得到缩放因子;
计算两个眼睛的中心点与标准模板中眼睛中心点的偏移量,得到平移向量;
将旋转中心、缩放因子以及平移向量作为仿射变换参数。
5.根据权利要求1所述的3D人脸模型生成方法,其特征在于,将所述二维人脸模型与标准人脸模板进行比对,以计算形变参数,并将所述形变参数作为预设权重参数,包括:
将所述二维人脸模型与标准人脸模板对齐后得到一张叠图;
将所述叠图划分为若干区域,并计算每个区域中二维人脸模型与标准人脸模板之间的形变量、旋转角度、缩放因子和平移向量;
将形变量、旋转角度、缩放因子和平移向量组合为形变参数,将所述形变参数作为转换神经网络模型的预设权重参数。
6.根据权利要求1所述的3D人脸模型生成方法,其特征在于,转换神经网络模型的训练方法包括:
采集多组二维人脸模型和对应的3D人脸模型,并获取每组二维人脸模型相对于标准人脸模型的形变参数;
将二维人脸模型和对应的形变参数作为输入标签、3D人脸模型作为输出标签构建数据集;
由生成器网络和判别器网络构建生成对抗神经网络模型,将二维人脸模型和对应的形变参数输入对抗神经网络进行训练以生成预测3D人脸;
利用预测3D人脸与训练集中的3D人脸模型计算损失函数,当损失函数达到预设值时,对抗神经网络训练完成,得到转换神经网络模型。
7.根据权利要求1所述的3D人脸模型生成方法,其特征在于,对3D人脸图像进行光照模拟和阴影模拟,生成渲染后的3D人脸模型,包括:
分别获取二维人脸模型和3D人脸图像的顶点信息,在3D人脸图像中生成每个顶点的纹理坐标;
将二维人脸模型中的纹理信息映射至3D人脸图像中的纹理坐标上;
构建辐射场模型,对3D人脸图像的纹理信息进行光照模拟后生成3D人脸模型。
8.一种3D人脸模型生成装置,其特征在于,包括:
识别模块:用于获取二维图像,利用人脸识别模型识别二维图像中的人脸区域和人脸关键点;
调整模块:用于利用人脸关键点对人脸区域中的人脸进行位置和姿态调整,生成二维人脸模型;
计算模块:用于将所述二维人脸模型与标准人脸模板进行比对,以计算形变参数,并将所述形变参数作为预设权重参数;
第一生成模块:用于获取训练完成的转换神经网络模型,将所述二维人脸模型和预设权重参数输入转换神经网络模型中,生成3D人脸图像;
第二生成模块:用于对3D人脸图像进行光照模拟和阴影模拟,生成渲染后的3D人脸模型。
9.一种3D人脸模型生成设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述3D人脸模型生成方法的步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述3D人脸模型生成方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311658669.5A CN117372604B (zh) | 2023-12-06 | 2023-12-06 | 一种3d人脸模型生成方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311658669.5A CN117372604B (zh) | 2023-12-06 | 2023-12-06 | 一种3d人脸模型生成方法、装置、设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117372604A CN117372604A (zh) | 2024-01-09 |
CN117372604B true CN117372604B (zh) | 2024-03-08 |
Family
ID=89398845
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311658669.5A Active CN117372604B (zh) | 2023-12-06 | 2023-12-06 | 一种3d人脸模型生成方法、装置、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117372604B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117894059A (zh) * | 2024-03-15 | 2024-04-16 | 国网江西省电力有限公司信息通信分公司 | 一种3d人脸识别方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104504376A (zh) * | 2014-12-22 | 2015-04-08 | 厦门美图之家科技有限公司 | 一种人脸图像的年龄分类方法和系统 |
CN109583322A (zh) * | 2018-11-09 | 2019-04-05 | 长沙小钴科技有限公司 | 一种人脸识别深度网络训练方法和系统 |
CN110136243A (zh) * | 2019-04-09 | 2019-08-16 | 五邑大学 | 一种三维人脸重建方法及其系统、装置、存储介质 |
CN111080511A (zh) * | 2019-11-18 | 2020-04-28 | 杭州时光坐标影视传媒股份有限公司 | 一种端到端的高分辨率多特征提取的人脸交换方法 |
CN111881876A (zh) * | 2020-08-06 | 2020-11-03 | 桂林电子科技大学 | 一种基于单阶无锚检测网络的考勤方法 |
CN113011401A (zh) * | 2021-04-30 | 2021-06-22 | 汇纳科技股份有限公司 | 人脸图像姿态估计和校正方法、系统、介质及电子设备 |
WO2021223134A1 (zh) * | 2020-05-07 | 2021-11-11 | 浙江大学 | 一种基于微渲染器的从单幅图像求解人脸反射材质的方法 |
WO2023061122A1 (zh) * | 2021-10-15 | 2023-04-20 | 北京眼神科技有限公司 | 人脸活体检测方法、装置、计算机可读存储介质及设备 |
-
2023
- 2023-12-06 CN CN202311658669.5A patent/CN117372604B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104504376A (zh) * | 2014-12-22 | 2015-04-08 | 厦门美图之家科技有限公司 | 一种人脸图像的年龄分类方法和系统 |
CN109583322A (zh) * | 2018-11-09 | 2019-04-05 | 长沙小钴科技有限公司 | 一种人脸识别深度网络训练方法和系统 |
CN110136243A (zh) * | 2019-04-09 | 2019-08-16 | 五邑大学 | 一种三维人脸重建方法及其系统、装置、存储介质 |
CN111080511A (zh) * | 2019-11-18 | 2020-04-28 | 杭州时光坐标影视传媒股份有限公司 | 一种端到端的高分辨率多特征提取的人脸交换方法 |
WO2021223134A1 (zh) * | 2020-05-07 | 2021-11-11 | 浙江大学 | 一种基于微渲染器的从单幅图像求解人脸反射材质的方法 |
CN111881876A (zh) * | 2020-08-06 | 2020-11-03 | 桂林电子科技大学 | 一种基于单阶无锚检测网络的考勤方法 |
CN113011401A (zh) * | 2021-04-30 | 2021-06-22 | 汇纳科技股份有限公司 | 人脸图像姿态估计和校正方法、系统、介质及电子设备 |
WO2023061122A1 (zh) * | 2021-10-15 | 2023-04-20 | 北京眼神科技有限公司 | 人脸活体检测方法、装置、计算机可读存储介质及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN117372604A (zh) | 2024-01-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11232286B2 (en) | Method and apparatus for generating face rotation image | |
CN108460338B (zh) | 人体姿态估计方法和装置、电子设备、存储介质、程序 | |
CN109859305B (zh) | 基于多角度二维人脸的三维人脸建模、识别方法及装置 | |
CN109684969B (zh) | 凝视位置估计方法、计算机设备及存储介质 | |
CN117372604B (zh) | 一种3d人脸模型生成方法、装置、设备及可读存储介质 | |
CN111583381B (zh) | 游戏资源图的渲染方法、装置及电子设备 | |
CN112907569B (zh) | 头部图像区域的分割方法、装置、电子设备和存储介质 | |
CN113643366B (zh) | 一种多视角三维对象姿态估计方法及装置 | |
CN116958492B (zh) | 一种基于NeRf重建三维底座场景渲染的VR编辑方法 | |
CN111815768B (zh) | 三维人脸重建方法和装置 | |
CN112766027A (zh) | 图像处理方法、装置、设备及存储介质 | |
US20230237777A1 (en) | Information processing apparatus, learning apparatus, image recognition apparatus, information processing method, learning method, image recognition method, and non-transitory-computer-readable storage medium | |
CN115457492A (zh) | 目标检测方法、装置、计算机设备及存储介质 | |
CN112085835A (zh) | 三维卡通人脸生成方法、装置、电子设备及存储介质 | |
CN111382791B (zh) | 深度学习任务处理方法、图像识别任务处理方法和装置 | |
CN112733641A (zh) | 物体尺寸测量方法、装置、设备及存储介质 | |
CN116958420A (zh) | 一种数字人教师三维人脸的高精度建模方法 | |
Jacobson et al. | An online learning approach to occlusion boundary detection | |
CN111353325A (zh) | 关键点检测模型训练方法及装置 | |
CN113469091A (zh) | 人脸识别方法、训练方法、电子设备及存储介质 | |
CN117115358A (zh) | 数字人自动建模方法及装置 | |
CN114463503A (zh) | 三维模型和地理信息系统的融合方法及装置 | |
CN114925748B (zh) | 模型训练及模态信息的预测方法、相关装置、设备、介质 | |
CN116993929B (zh) | 基于人眼动态变化的三维人脸重建方法、装置及存储介质 | |
CN116433852B (zh) | 数据处理方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |