CN110415341A - 一种三维人脸模型的生成方法、装置、电子设备及介质 - Google Patents

一种三维人脸模型的生成方法、装置、电子设备及介质 Download PDF

Info

Publication number
CN110415341A
CN110415341A CN201910707899.3A CN201910707899A CN110415341A CN 110415341 A CN110415341 A CN 110415341A CN 201910707899 A CN201910707899 A CN 201910707899A CN 110415341 A CN110415341 A CN 110415341A
Authority
CN
China
Prior art keywords
variable
model
translation
dimensional face
3dmm
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.)
Pending
Application number
CN201910707899.3A
Other languages
English (en)
Inventor
赵丹阳
耿天平
曹文升
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910707899.3A priority Critical patent/CN110415341A/zh
Publication of CN110415341A publication Critical patent/CN110415341A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • G06F18/2135Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on approximation criteria, e.g. principal component analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/08Indexing scheme for image data processing or generation, in general involving all processing steps from image acquisition to 3D model generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2016Rotation, translation, scaling

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Graphics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Geometry (AREA)
  • Computer Hardware Design (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本申请公开了一种三维人脸模型的生成方法、装置、电子设备及计算机可读存储介质,该方法采用渐进方式逐步的迭代计算得到目标PCA系数,第一、第二以及第三这三个迭代式中,分别存在一个(平移变量)、两个(平移变量和旋转变量)以及三个(平移变量、旋转变量和PCA系数)未知量。相比于直接通过一个迭代式同时对三个未知量进行迭代的方式,通过前两个迭代式的迭代计算,使得平移变量和旋转变量已经尽可能的准确,并作为基础帮助确定其它未知量的迭代方向,能够尽可能的消除由于初始值不准确为后续生成的三维人脸模型带来的许多细节问题,提升了三维人脸模型与实际人脸之间的一致性。

Description

一种三维人脸模型的生成方法、装置、电子设备及介质
技术领域
本申请涉及3D建模技术领域,特别涉及一种三维人脸模型的生成方法、装置、电子设备及计算机可读存储介质。
背景技术
相比于二维平面模型,三维立体模型拥有更多的空间信息,拥有更高的可操作性和还原度。基于实际人脸信息构建的三维人脸模型就是其中应用非常广泛的一种。
通过3D建模技术构建得到的三维人脸模型不仅可用于身份信息的识别、基于人物实际形象构建得到的虚拟形象,还拥有非常丰富的可塑性,在多方面拥有着非常广泛的应用价值。
基于实际人脸信息构建的三维人脸模型的基础,是要尽可能的还原实际人脸信息,得到一个拥有与实际人脸相同细节信息的三维人脸模型。而现有相关技术下,因为最优解在前期迭代过程中缺少渐进过程,容易导致生成的三维人脸模型出现诸如脸颊被压扁、眼睛重叠、眼皮细节丢失等细节问题,使得生成的三维人脸模型与实际人脸不够一致,精准度较低,不利于任何基于高一致性这一前提进行的后续处理操作,例如基于三维人脸模型为相应用户打造专属的脸部配饰等。
因此,如何改善上述技术缺陷,提供一种细节错误更少、与实际人脸更接近、一致性更高的三维人脸模型生成方案,是本领域技术人员亟待解决的问题。
发明内容
有鉴于此,本申请提供了一种三维人脸模型的生成方法、装置、电子设备及计算机可读存储介质,旨在减少实际人脸信息还原至三维人脸模型时出现的细节问题,提升三维人脸模型与实际人脸间的一致性。
为实现上述目的,本申请第一方面提供了一种三维人脸模型的生成方法,该方法包括:
通过第一迭代式计算三维重建模型到3DMM平均模型的平移变量,得到收敛后的第一平移变量;
通过第二迭代式同时计算所述三维重建模型到所述3DMM平均模型的平移变量和旋转变量,得到收敛后的第二平移变量和第一旋转变量;其中,通过所述第二迭代式进行首次迭代时的平移变量初始值为所述第一平移变量;
通过第三迭代式同时计算所述三维重建模型到所述3DMM平均模型的平移变量、旋转变量和PCA加权系数,得到收敛后的目标PCA系数;其中,通过所述第三迭代式进行首次迭代时的平移变量初始值为所述第二平移变量、旋转变量初始值为所述第一旋转变量;
利用所述目标PCA系数调整所述3DMM平均模型,得到三维人脸模型。
为实现上述目的,本申请第二方面提供了一种三维人脸模型的生成装置,该装置包括:
平移变量迭代计算单元,用于通过第一迭代式计算三维重建模型到3DMM平均模型的平移变量,得到收敛后的第一平移变量;
平移、旋转变量迭代计算单元,用于通过第二迭代式同时计算所述三维重建模型到所述3DMM平均模型的平移变量和旋转变量,得到收敛后的第二平移变量和第一旋转变量;其中,通过所述第二迭代式进行首次迭代时的平移变量初始值为所述第一平移变量;
平移、旋转及PCA系数迭代计算单元,用于通过第三迭代式同时计算所述三维重建模型到所述3DMM平均模型的平移变量、旋转变量和PCA加权系数,得到收敛后的目标PCA系数;其中,通过所述第三迭代式进行首次迭代时的平移变量初始值为所述第二平移变量、旋转变量初始值为所述第一旋转变量;
三维人脸模型获得单元,用于利用所述目标PCA系数调整所述3DMM平均模型,得到三维人脸模型。
为实现上述目的,本申请第三方面提供了一种电子设备,所述电子设备包括处理器和存储器;其中,所述存储器用于存储计算机程序,所述计算机程序由所述处理器加载并执行以实现如上述内容所述的三维人脸模型的生成方法。
为实现上述目的,本申请第四方面提供了一种存储介质,所述存储介质中存储有计算机可执行指令,所述计算机可执行指令被处理器加载并执行时,实现如上述内容所述的三维人脸模型的生成方法。
通过以上方案可知,本申请提供了一种三维人脸模型的生成方法,包括:通过第一迭代式计算三维重建模型到3DMM平均模型的平移变量,得到收敛后的第一平移变量;通过第二迭代式同时计算所述三维重建模型到所述3DMM平均模型的平移变量和旋转变量,得到收敛后的第二平移变量和第一旋转变量;其中,通过所述第二迭代式进行首次迭代时的平移变量初始值为所述第一平移变量;通过第三迭代式同时计算所述三维重建模型到所述3DMM平均模型的平移变量、旋转变量和PCA加权系数,得到收敛后的目标PCA系数;其中,通过所述第三迭代式进行首次迭代时的平移变量初始值为所述第二平移变量、旋转变量初始值为所述第一旋转变量;利用所述PCA系数调整所述3DMM平均模型,得到三维人脸模型。
根据本申请提供的三维人脸模型的生成方法可以看出,本申请采用渐进方式逐步的迭代计算得到目标PCA系数,第一、第二以及第三这三个迭代式,分别存在一个(平移变量)、两个(平移变量和旋转变量)以及三个(平移变量、旋转变量和PCA系数)未知量,其中,第一迭代式迭代至收敛时得到的第一平移变量将作为第二迭代式中的平移变量初始值进行后续迭代,相应的,第二迭代式迭代至收敛时得到的第二平移变量和第一旋转变量将分别作为第三迭代式中的平移变量初始值和旋转变量初始值进行后续迭代。相比于直接通过一个迭代式同时对三个未知量进行迭代的方式,通过前两个迭代式对平移变量和平移&旋转变量的迭代,使得平移变量和旋转变量已经尽可能的准确,并作为基础帮助确定其它未知量的迭代方向,能够尽可能的消除由于初始值不准确为后续生成的三维人脸模型带来的许多细节问题,提升了三维人脸模型与实际人脸之间的一致性。
本申请同时还提供了一种与上述三维人脸模型的生成方法对应的装置、电子设备及计算机可读存储介质,同样能实现上述技术效果。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不应限制本申请。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种三维人脸模型的生成系统的架构图;
图2为本申请实施例提供的一种三维人脸模型的生成方法的时序图;
图3为本申请实施例提供的一种根据脸部各部分的肤色参数为三维人脸模型进行渲染的方法的流程图;
图4为本申请实施例提供的一种调整三维人脸模型的方法的流程图;
图5为本申请实施例提供的将三维重建模型初步配准至3DMM平均模型的模型效果变换示意图;
图6为本申请实施例提供的在图5结果基础上仅基于平移变量进行再次配准的模型效果变换示意图;
图7为本申请实施例提供的在图6结果基础上同时基于平移变量和旋转变量再次配准的模型效果变换示意图;
图8为本申请实施例提供的在图7结果基础上同时基于平移变量、旋转变量以及PCA系数再次配准的模型效果变换示意图;
图9为本申请实施例提供的初始3DMM平均模型与图8结果之间的模型效果对比示意图;
图10为本申请实施例提供的按现有技术处理到的三维人脸模型与按本申请方式处理到的三维人脸模型之间的模型效果对比示意图;
图11为本申请实施例提供的一种三维人脸模型的生成装置的结构框图;
图12为本申请实施例提供的一种电子设备的结构示意图;
附图标记:
10.人脸信息采集器20.三维人脸模型生成器30.显示器。
具体实施方式
本申请提供了一种三维人脸模型的生成方法、装置、电子设备及计算机可读存储介质,旨在减少实际人脸信息还原至三维人脸模型时出现的细节问题,提升三维人脸模型与实际人脸间的一致性。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
为便于理解本申请提供的三维人脸模型的生成方法,下面对其所处的系统进行介绍,以便于结合系统中各执行主体各自所执行的操作理解本方法。如图1所示,该三维人脸模型的生成系统包括:人脸信息采集器10、三维人脸模型生成器20、显示器30,人脸信息采集器10与三维人脸模型生成器20、三维人脸模型生成器20与显示器30之间均建立有可传输数据的数据连接。
人脸信息采集器10用于通过其上设置的扫描器或摄像头对实际用户的脸部信息进行采集,并基于采集到的脸部信息建立得到三维重建模型。人脸信息采集器10将建立得到的三维重建模型发送给三维人脸模型生成器20,以使三维人脸模型生成器20根据接收到的三维重建模型和3DMM(3D Morphable Models,三维变换模型)平均模型(此处指基于许多用户组成的统一拓扑结构的人脸模型数据库计算得到的平均模型,在三维人脸模型的拓扑结构上具有高参考性)进行配准,根据三维重建模型包含的用户实际脸部细节信息对3DMM平均模型进行调整,得到与实际用户脸部一致的三维人脸模型。最终,三维人脸模型生成20将生成的三维人脸模型通过显示器30呈现给用户。生成的三维人脸模型还可以用于其它多方面,例如基于此构建用户的虚拟形象,基于此帮用户定制相应的脸部配饰等等。
其中,人脸信息采集器10可以与三维人脸模型生成器20相距很远设置,人脸信息采集器10设置于便于用户接触到的地方,且数量可以设置多个,三维人脸模型生成器20由于负责进行配准运算,所需的运算能力可由该项服务(即三维人脸模型生成服务)的提供商设置在其自身的机房或数据中心提供,以便于维护和更新升级。该三维人脸模型生成器20可具体表现为单个的处理器或服务器,也可以是多个处理器或服务器所构成的集群。显示器30则根据实际情况的不同,可包括被采集人脸信息的用户所持终端的显示屏,也可以是将其展示在服务提供商的终端显示屏上,也可以将其展示在任何被相应用户授予许可的显示装置上,此处并不做具体限定。
在上述系统的基础上,本申请提供了一种三维人脸模型的生成方法的时序图,请参见图2,图2中对各执行主体各自所执行的操作进行了说明,包括如下步骤:
S101:人脸信息采集器10将三维重建模型发送给三维人脸模型生成器20;
人脸信息采集器10通过扫描器或其它可以获取用户脸部信息的传感器获取置于自身扫描区域内的用户脸部的脸部信息,并通过自身内置的运算逻辑将该脸部信息变换为多个能够描述脸部细节信息的特征点,最后通过这些特征点来构建三维重建模型。
需要说明的是,出于脸部模型三维重建中顶点和面片的差异性(每次对用户进行扫描获取到的结果,顶点和面片是不一样的),人脸信息采集器10生成的三维重建模型因其拓扑结构的不统一并不能作为实际的三维人脸模型直接使用,其优点在于包含了用户真实的脸部细节。因此后续将以3DMM平均模型提供的拓扑结构为基础,结合三维重建模型包含的真实人脸细节特征才能得到所需的三维人脸模型。
S102:三维人脸模型生成器20通过第一迭代式计算三维重建模型到3DMM平均模型的平移变量,得到收敛后的第一平移变量;
自本步骤开始,由三维人脸模型生成器20开始,采用渐进方式逐步迭代计算将三维重建模型配准至3DMM平均模型所需的未知量。其中,关键的未知量包括3个:平移变量、旋转变量以及PCA(Principal Component Analysis,主成分分析)系数,渐进的方式是指并非像现有技术直接通过一个包含上述三个未知量的迭代式同时对三个未知量进行迭代,而是基于这三个未知量之间的关系,依次、逐步的迭代,以期通过这种方式使得迭代出来的值都更加贴近实际值,进而使得生成的三维人脸模型细节问题更少、与实际人脸之间的一致性更高。
本步骤为渐近方式逐步迭代的第一步,即首先通过第一迭代式仅对三维重建模型到3DMM平均模型的平移变量进行迭代计算,以得到收敛后的第一平移变量。之所以选择平移变量作为首个进行迭代的未知量,因此相比于旋转变量和PCA系数,旋转变量在平移变量确定的基础上更容易确定得到精确度更高的值,而PCA系数则是要以平移变量和旋转变量为基础。基于上述理由,本申请将平移变量选作首个进行迭代的未知量。
该第一迭代式可具体表现为下述公式:
其中,其中表示3DMM平均模型中一个3D坐标点,T是本步骤要求解的未知的平移变量,t1t2t3分别是T的三维坐标的三个分量。是对应的三维重建模型上的最近点,对应的法向量。具体求解方式可以使用Eigen(一种可以用来进行线性代数、矩阵、向量操作等运算的C++库)。需要说明的是,通过上述公式求解出来的T实际是3DMM平均模型到三维重建模型的平移值,因此,在每次迭代计算完成后,还需要使用-T来更新三维重建模型,然后再基于更新后的三维重建模型进行下一次迭代。
S103:三维人脸模型生成器20通过第二迭代式同时计算三维重建模型到3DMM平均模型的平移变量和旋转变量,得到收敛后的第二平移变量和第一旋转变量;
在S102的基础上,本步骤为渐进方式逐步迭代计算的第二步,通过第二迭代式同时计算三维重建模型到3DMM平均模型的平移变量和旋转变量。需要说明的是,S102中通过第一迭代式迭代至收敛时得到的第一平移变量,将在第二迭代式中作为平移变量初始值参与后续迭代。换句话说,通过第一迭代式的迭代计算,使得平移变量初步变得准确,第二迭代式又在该初步准确的平移变量的基础上进行后续迭代,初步准确的平移变量将作为基础提供迭代方向,以此来帮助得到较为准确的旋转变量。
当然,在第二迭代式的迭代过程中,随着每次迭代得到的值的不同,也需要向S102一样不断更新三维重建模型,且平移变量随着旋转变量的不同也会在不断的迭代过程中更加准确。
该第二迭代式可具体表现为下述公式:
其中,式中大部分变量都和S102中的第一迭代式中的变量含义一致,该公式仅增加了一个未知量R(旋转变量),αβγ分别是绕XYZ轴的旋转角度。
S104:三维人脸模型生成器20通过第三迭代式同时计算三维重建模型到3DMM平均模型的平移变量、旋转变量和PCA加权系数,得到收敛后的目标PCA系数;
在S103的基础上,本步骤为渐进方式逐步迭代计算的第三步,通过第三迭代式同时计算三维重建模型为3DMM平均模型的平移变量、旋转变量和PCA系数,以得到收敛后的目标PCA系数。需要说明的是,通过第三迭代式的迭代计算,将同时得到收敛的第三平移变量、第二旋转变量和目标PCA系数,但由于在后续得到三维人脸模型时,只需要基于PCA系数对3DMM平均模型进行调整即可,而平移变量和旋转变量则是得到该PCA系数不可或缺的参数,换句话说,在第三迭代式中,平移变量和旋转变量共同参与迭代的作用是得到目标PCA系数。
该第三迭代式可具体表现为下述公式:
其中,公式中的前半部分和S103中的公式是一致的,后半部分则是用于求解PCA系数的部分。其中pi为3DMM平均模型上的第i个顶点,dk为待求解的PCA系数,K为系数的总个数,是第k个特征向量上的第i值。
S105:三维人脸模型生成器20利用目标PCA系数调整3DMM平均模型,得到三维人脸模型;
在S104的基础上,本步骤旨在由三维人脸模型生成器20利用迭代计算得到的目标PCA系数调整3DMM平均模型,以得到与实际人脸一致的三维人脸模型。根据上述步骤可以看出,S102、S103以及S104三步迭代进行的都是将三维重建模型配准至3DMM平均模型的过程,迭代计算的几个未知量都是用于将三维重建模型包含的实际人脸细节信息转换至3DMM平均模型使用的,因此基于最终计算得到的目标PCA系数来调整3DMM平均模型,使得在具有可用脸部拓扑的3DMM平均模型在脸部细节上也与实际人脸一致,将调整完成的称为三维人脸模型。
进一步的,由于初始的三维重建模型与3DMM平均模型的空间位置相差很远,若直接在此情况下直接按照S102、S103以及S104对所需未知量进行迭代计算,会对迭代出来的未知量的精准度造成影响,甚至无法使用最近点或最近面等约束方式进行配准。因此,还可以在S102执行之前,先利用匹配的特征点将两个模型大致配准到一起(即初步配准),由于此步只是为了为后续迭代计算出准确的值营造良好的基础条件,可设置一个预设距离范围,将一个模型配准至另一个模型的预设距离范围即可,运算量相对较小。
此处给出一种通过去中心化的特征来实现这一目的方式,参见下述公式:
其中,第一个公式为计算旋转变量的过程,ΔV为三维重建模型上一个特征点减去全体特征点的特征点均值后组成的向量,是3DMM平均模型上相应特征点减去全体特征点的特征点均值后组成的向量。最终通过SVD分解(Singular Value Decomposition,奇异值分解,是线性代数中一种重要的矩阵分解)计算出旋转变量R。第二个公式则是用来计算平移变量T,其中表示3DMM平均模型上特征点的均值,Vaver表示三维重建上特征点的均值。
S106:三维人脸模型生成器20将三维人脸模型发送至显示器30。
本步骤旨在由三维人脸模型生成器20将生成的三维人脸模型发送至显示器30进行显示。
现有相关技术在生成三维人脸模型时,也存在上述三个未知量(平移变量、旋转变量、PCA系数)直接通过一个迭代式同时迭代计算得到收敛的最优解的步骤,但区别于本社区所提供的渐进方式,现有相关技术并不经过S102和S103两个步骤,而是直接进入S104这个步骤。应当理解的是,在通过迭代方式计算最优解的方式中,未知量的初始值非常重要,良好的、准确的初始值将能够有效提供正确的迭代方向、减少迭代所需次数和时间,提升迭代效率,而较差的、不准确的初始值则正好相反,并导致迭代出的目标PCA系数不准确,使得基于该目标PCA系数生成的三维人脸模型存在细节问题,与时间人脸不一致。因此,本申请为解决这一技术缺陷,提出了采用渐进方式逐步迭代不同未知量的方式,使得目标PCA系数在较为准确的平移变量和旋转变量的基础上,可以更快速的得到更准确的值,从而消除现有相关技术存在的技术缺陷,尽可能的消除三维人脸模型存在细节问题,提升三维人脸模型与实际人脸之间的一致性。
在上述实施例的基础上,本申请还针对S102、S103以及S104中均涉及的迭代过程给出一种具体的实现方案,由于S102和S103以及S104相差的只有未知量的数量,因此此处以S102如何通过迭代得到收敛的第一平移变量为例展开说明:
此处提供两种如何得到第一平移变量的方式:其一,根据每两次迭代的平移变量之间的差值是否小于预设差值,即通过判断差值是否小于预设差值来判断迭代是否已经使得未知量趋于收敛,通常来讲正常方式均为此方式;其二,考虑到实际情况下有可能由于迭代方式错误,导致在差值没有出现过小于预设差值的情况,且有可能随着迭代次数的增加差值逐步大于预设差值,这多是由于迭代方向错误导致的,因此,为了防止无限的、错误迭代下去,还可以预先设置一个最大迭代次数,以通过该最大迭代次数限制可进行的迭代次数,并将不超过该最大迭代次数的最后一次迭代的平移变量确定为所述第一平移变量。
进一步的,考虑到不超过预设最大迭代次数的最后一次迭代的平移变量有可能不是最近接预设差值的,在之前的迭代中有可能存在更合适,还可以在记录之前每次迭代的平移变量的基础上,通过比大小的方式选取出差值与预设差值最接近的平移变量作为第一平移变量。
根据上述内容可以看出,一个合适的最大迭代次数将能够有效减少无效的迭代操作,十分关键,因此本申请还针对性的提供了一种优选的获取到该最大迭代次数的方法:
获取预设数量的样本用户;
获取每个样本用户得到各自的第一平移变量时对应的迭代次数,并将各迭代次数作为训练样本;
通过机器学习算法从训练样本中确定得到最大迭代次数。
本方案基于一定数量的样本数据,通过机器学习算法对深层次数据特征的挖掘能力,来更好的从样本数据中发现共通点,以使得基于此设置的最大迭代次数更加合理,更好的起到减少无效迭代操作的目的。具体的,机器学习算法包括各种具体的下位算法,例如将其分为有监督和无监督两类,每类下又可以细分出多种,根据实际应用场景的不同,可以自行选择最合适的机器学习算法,此处不做具体限定。
在上述实施例的基础上,为便于用户浏览根据自己人脸信息生成的三维人脸模型,还可以在采集人脸信息时增加采集脸部各部位的肤色参数,以便于在通过上述步骤生成得到灰模的三维人脸模型后,使用相应部位的肤色参数对灰模进行实色渲染,能够让用户看到更直观的三维人脸模型。
一种具体的实现方式可参见如图3所示的流程图:
S201:获取用户脸部各部位的肤色参数;
S202:利用肤色参数对三维人脸模型的相应部位进行肤色渲染,得到渲染后三维人脸模型;
S203显示渲染后三维人脸模型。
在上述基础上,在某些应用场景下,用户又不太希望使用完全与自己一致的人脸信息与其它用户进行交互,例如基于虚拟形象的交流应用中,因此还可以根据用户的实际需求对生成的三维人脸模型进行调整。需要说明的是,这种调整应该是在具有一致性的三维人脸模型的基础上进行的调整,而不是一开始就得到一个与用户实际人脸不一致的三维人脸模型。
实际情况下,三维人脸模型生成器20还可以通过按照如下步骤实现这一需求,请参见如图4所示的流程图:
S301:接收传入的自定义人脸模型修改指令;
S302:根据自定义人脸模型修改指令对三维人脸模型的相应部位进行相应的调整,得到调整后的自定义三维人脸模型。
其中,自定义人脸模型修改指令可以是用户直接通过相应的客户端发来的,也可以:是通过其它渠道发来的,例如通过与人脸信息采集装置10设置在一起的用于向用户展示的显示器30,或显示器30旁边额外设置的一个指令输入装置等。
为加深对本申请方案的理解,本申请在上述内容的基础上,此处还结合下述具体构建出的三维模型来展现本申请所提供方案的效果:
首先,将空间位置相距较远的三维重建模型与3DMM平均模型进行初步配准,即计算三维重建模型到3DMM平均模型的旋转变量R、平移变量T。
第二步:使用公式计算旋转变量R,使用公式计算平移变量T,公式中各字符的含义已在S104部分进行了说明,此处不再赘述。图5展示了经过本步骤处理后得到的效果展示图,图5中最左边的为带特征点的三维重建模型,中间的是带特征点的3DMM平均模型,最右侧的则是通过上述公式将三维重建模型配准至3DMM平均模型附件的结果。
第三步:经过上一步的计算已经初步的将三维重建模型配准到了3DMM平均模型附近,但是特征点数量个数较少,配准的结果不够准确,因此开始采用渐进方式逐步迭代不同的影响参数,首先是使用点对线约束来迭代计算三维重建模型到3DMM平均模型的平移变量T,具体使用的公式为:
由于通过上述公式求解出来的T实际是3DMM平均模型到三维重建模型的平移量,所以每次求解完之后,还需要使用-T来更新三维重建模型,然后再进行下一次迭代。图6展示了在图5结果的基础上在本步骤又进行了5次迭代后的效果。
第四步:由于上一步仅计算了平移变量T,这是因为在T没有计算到位的时候,贸然把旋转变量R的计算也加进来会影响最终的计算结果。本步骤仍使用点对线约束的方式来通过下述公式同时求解平移变量T和旋转变量R:
区别于上一步公式,仅增加了一个待求解的旋转变量R。与上一步骤一样,在每次迭代求解后然后更新三维重建模型,然后再进行下一次迭代计算。图7展示了在图6结果的基础上在本步骤又进行了25次迭代后的效果(待求解参数越多,通常所需迭代次数越多)。
第五步:由于以上操作步骤实际都是在对三维重建模型和3DMM模型进行配准,只是改变了相对位置,并未对3DMM平均模型的顶点进行变形。因此,本步骤在上述步骤的基础上引入PCA系数的求解,通过迭代求解出的目标PCA系数就可以使具有标准拓扑结构3DMM平均模型,在调整后变得越来越像具有真实脸部细节的三维重建模型。通过下述公式进行计算:
图8展示了经过本步骤计算后的最终结果,其中,图8左侧的是将最终更新后的三维重建模型和使用目标PCA系数加权后的3DMM平均模型进行重叠显示的结果,中间的则是将最终更新后的三维重建模型进行网格化处理后单独显示的结果,右侧的则将使用目标PCA系数加权后的3DMM平均模型单独显示的结果。为了更好的展示初始3DMM平均模型经本方案处理后的变化和效果,本实施例还通过图9展示了两者之间的差异,图9左侧为初始3DMM平均模型,右侧则为图8中右侧的经处理后的可作为三维人脸模型使用的处理后3DMM平均模型,可以明显看出,处理后3DMM平均模型包含了更多的真实人脸细节信息。
为展现通过本方案得到的三维人脸模型与现有技术的区别和有益效果,本实施例还通过图10进行了对比,图10左侧为按照现有未采用渐进方式进行处理得到的三维人脸模型,右侧则为按照本申请按照渐进方式进行处理得到的三维人脸模型。其中,细节问题差异明显的地方使用黑色方框标出,可以明显看到,相比于右侧模型,左侧模型的双眼皮细节明显丢失,且出现了由于眼睛部位重叠造成的噪点。
因为情况复杂,无法一一列举进行阐述,本领域技术人员应能意识到根据本申请提供的基本方法原理结合实际情况可以存在很多的例子,在不付出足够的创造性劳动下,应均在本申请的保护范围内。
下面对本申请实施例提供的一种三维人脸模型的生成装置进行介绍,下文描述的一种三维人脸模型的生成装置与上文描述的一种三维人脸的生成方法可以相互参照。下面请参见图11,图11为本申请实施例提供的一种三维人脸模型的生成装置的结构框图,该生成装置可以包括:
平移变量迭代计算单元100,用于通过第一迭代式计算三维重建模型到3DMM平均模型的平移变量,得到收敛后的第一平移变量;
平移、旋转变量迭代计算单元200,用于通过第二迭代式同时计算三维重建模型到3DMM平均模型的平移变量和旋转变量,得到收敛后的第二平移变量和第一旋转变量;其中,通过第二迭代式进行首次迭代时的平移变量初始值为第一平移变量;
平移、旋转及PCA系数迭代计算单元300,用于通过第三迭代式同时计算三维重建模型到3DMM平均模型的平移变量、旋转变量和PCA加权系数,得到收敛后的目标PCA系数;其中,通过第三迭代式进行首次迭代时的平移变量初始值为第二平移变量、旋转变量初始值为第一旋转变量;
三维人脸模型获得单元400,用于利用目标PCA系数调整3DMM平均模型,得到三维人脸模型。
其中,平移变量迭代计算单元100可以包括:
基于预设差值的迭代跳出子单元,用于当本次迭代与上一次迭代之间的平移变量差值小于预设差值时,将本次迭代的平移变量确定为第一平移变量。
其中,平移变量迭代计算单元100可以包括:
基于预设最大迭代次数的迭代跳出子单元,用于将不超过预设最大迭代次数的最后一次迭代的平移变量确定为第一平移变量。
其中,基于预设最大迭代次数的迭代跳出子单元中执行所需的预设最大迭代次数可以通过下述单元预先计算得到:
样本用户获取单元,用于获取预设数量的样本用户;
训练样本获取单元,用于获取每个样本用户得到各自的第一平移变量时对应的迭代次数,并将各迭代次数作为训练样本;
机器学习算法应用单元,用于通过机器学习算法从训练样本中确定得到最大迭代次数。
在上述实施例的基础上,作为一种优选实施方式,还包括:
在通过第一迭代式计算三维重建模型到3DMM平均模型的平移变量之前,通过匹配的特征点将三维重建模型配准至3DMM平均模型的预设距离内。
在上述实施例的基础上,作为一种优选实施方式,还包括:
在得到三维人脸模型之后,获取用户脸部各部位的肤色参数;
利用肤色参数对三维人脸模型的相应部位进行肤色渲染,得到渲染后三维人脸模型;
显示渲染后三维人脸模型。
在上述实施例的基础上,作为一种优选实施方式,还包括:
接收传入的自定义人脸模型修改指令;
根据自定义人脸模型修改指令对三维人脸模型的相应部位进行相应的调整,得到调整后的自定义三维人脸模型。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本申请还提供了一种如图12所示的电子设备,根据图12所示的结构图可以看出,该终端设备900可以包括处理器901和存储器902。
可选的,该终端设备900还可以包括通信接口903、输入单元904和显示器905和通信总线906。
处理器901、存储器902、通信接口903、输入单元904、显示器905、均通过通信总线906完成相互间的通信。
在本申请实施例中,该处理器901,可以为中央处理器(Central ProcessingUnit,CPU),特定应用集成电路,数字信号处理器、现成可编程门阵列或者其他可编程逻辑器件等。
该处理器901可以调用存储器902中存储的程序。具体的,处理器可以执行上述三维人脸模型的生成方法的实施例中的步骤。
存储器902中用于存放一个或者一个以上程序,程序可以包括程序代码,所述程序代码包括计算机操作指令,在本申请实施例中,该存储器中至少存储有用于实现以下功能的程序:
通过第一迭代式计算三维重建模型到3DMM平均模型的平移变量,得到收敛后的第一平移变量;
通过第二迭代式同时计算三维重建模型到3DMM平均模型的平移变量和旋转变量,得到收敛后的第二平移变量和第一旋转变量;其中,通过第二迭代式进行首次迭代时的平移变量初始值为第一平移变量;
通过第三迭代式同时计算三维重建模型到3DMM平均模型的平移变量、旋转变量和PCA加权系数,得到收敛后的目标PCA系数;其中,通过第三迭代式进行首次迭代时的平移变量初始值为第二平移变量、旋转变量初始值为第一旋转变量;
利用目标PCA系数调整3DMM平均模型,得到三维人脸模型。
在一种可能的实现方式中,该存储器902可以包括存储程序区和存储数据区,其中,存储程序区用于存储操作系统、以及至少一个功能(比如三维人脸模型生成功能)所需的应用程序等;存储数据区用于存储根据计算机的使用过程中所创建的数据。
此外,存储器902可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件或其他易失性固态存储器件。
该通信接口903可以为通信模块的接口,如GSM模块的接口。
本申请实施例提供的终端设备900还可以进一步的包括显示器904和输入单元905等等。
当然,图12所示的终端设备的结构并不构成对本申请实施例中终端设备的限定,在实际应用中终端设备可以包括比图12所示的更多或更少的部件,或者将某些部件组合起来。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现:
通过第一迭代式计算三维重建模型到3DMM平均模型的平移变量,得到收敛后的第一平移变量;
通过第二迭代式同时计算三维重建模型到3DMM平均模型的平移变量和旋转变量,得到收敛后的第二平移变量和第一旋转变量;其中,通过第二迭代式进行首次迭代时的平移变量初始值为第一平移变量;
通过第三迭代式同时计算三维重建模型到3DMM平均模型的平移变量、旋转变量和PCA加权系数,得到收敛后的目标PCA系数;其中,通过第三迭代式进行首次迭代时的平移变量初始值为第二平移变量、旋转变量初始值为第一旋转变量;
利用目标PCA系数调整3DMM平均模型,得到三维人脸模型。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (10)

1.一种三维人脸模型生成方法,其特征在于,包括:
通过第一迭代式计算三维重建模型到3DMM平均模型的平移变量,得到收敛后的第一平移变量;
通过第二迭代式同时计算所述三维重建模型到所述3DMM平均模型的平移变量和旋转变量,得到收敛后的第二平移变量和第一旋转变量;其中,通过所述第二迭代式进行首次迭代时的平移变量初始值为所述第一平移变量;
通过第三迭代式同时计算所述三维重建模型到所述3DMM平均模型的平移变量、旋转变量和PCA加权系数,得到收敛后的目标PCA系数;其中,通过所述第三迭代式进行首次迭代时的平移变量初始值为所述第二平移变量、旋转变量初始值为所述第一旋转变量;
利用所述目标PCA系数调整所述3DMM平均模型,得到三维人脸模型。
2.根据权利要求1所述的三维人脸模型生成方法,其特征在于,通过第一迭代式计算三维重建模型到3DMM平均模型的平移变量,得到收敛后的第一平移变量,包括:
当本次迭代与上一次迭代之间的平移变量差值小于预设差值时,将本次迭代的平移变量确定为所述第一平移变量。
3.根据权利要求1所述的三维人脸模型生成方法,其特征在于,通过第一迭代式计算三维重建模型到3DMM平均模型的平移变量,得到收敛后的第一平移变量,包括:
将不超过预设最大迭代次数的最后一次迭代的平移变量确定为所述第一平移变量。
4.根据权利要求3所述的三维人脸模型生成方法,其特征在于,所述预设最大迭代次数的获取过程包括:
获取预设数量的样本用户;
获取每个所述样本用户得到各自的第一平移变量时对应的迭代次数,并将各所述迭代次数作为训练样本;
通过机器学习算法从所述训练样本中确定得到所述最大迭代次数。
5.根据权利要求1所述的生成方法,其特征在于,在通过第一迭代式计算三维重建模型到3DMM平均模型的平移变量之前,还包括:
通过匹配的特征点将所述三维重建模型配准至所述3DMM平均模型的预设距离内。
6.根据权利要求1至5任一项所述的生成方法,其特征在于,在得到三维人脸模型之后,还包括:
获取用户脸部各部位的肤色参数;
利用所述肤色参数对所述三维人脸模型的相应部位进行肤色渲染,得到渲染后三维人脸模型;
显示所述渲染后三维人脸模型。
7.根据权利要求6所述的生成方法,其特征在于,还包括:
接收传入的自定义人脸模型修改指令;
根据所述自定义人脸模型修改指令对所述三维人脸模型的相应部位进行相应的调整,得到调整后的自定义三维人脸模型。
8.一种三维人脸模型的生成装置,其特征在于,包括:
平移变量迭代计算单元,用于通过第一迭代式计算三维重建模型到3DMM平均模型的平移变量,得到收敛后的第一平移变量;
平移、旋转变量迭代计算单元,用于通过第二迭代式同时计算所述三维重建模型到所述3DMM平均模型的平移变量和旋转变量,得到收敛后的第二平移变量和第一旋转变量;其中,通过所述第二迭代式进行首次迭代时的平移变量初始值为所述第一平移变量;
平移、旋转及PCA系数迭代计算单元,用于通过第三迭代式同时计算所述三维重建模型到所述3DMM平均模型的平移变量、旋转变量和PCA加权系数,得到收敛后的目标PCA系数;其中,通过所述第三迭代式进行首次迭代时的平移变量初始值为所述第二平移变量、旋转变量初始值为所述第一旋转变量;
三维人脸模型获得单元,用于利用所述目标PCA系数调整所述3DMM平均模型,得到三维人脸模型。
9.一种电子设备,其特征在于,所述电子设备包括处理器和存储器;其中,所述存储器用于存储计算机程序,所述计算机程序由所述处理器加载并执行以实现如权利要求1至7任一项所述的三维人脸模型的生成方法。
10.一种存储介质,其特征在于,所述存储介质中存储有计算机可执行指令,所述计算机可执行指令被处理器加载并执行时,实现如权利要求1至7任一项所述的三维人脸模型的生成方法。
CN201910707899.3A 2019-08-01 2019-08-01 一种三维人脸模型的生成方法、装置、电子设备及介质 Pending CN110415341A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910707899.3A CN110415341A (zh) 2019-08-01 2019-08-01 一种三维人脸模型的生成方法、装置、电子设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910707899.3A CN110415341A (zh) 2019-08-01 2019-08-01 一种三维人脸模型的生成方法、装置、电子设备及介质

Publications (1)

Publication Number Publication Date
CN110415341A true CN110415341A (zh) 2019-11-05

Family

ID=68365074

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910707899.3A Pending CN110415341A (zh) 2019-08-01 2019-08-01 一种三维人脸模型的生成方法、装置、电子设备及介质

Country Status (1)

Country Link
CN (1) CN110415341A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111028343A (zh) * 2019-12-16 2020-04-17 腾讯科技(深圳)有限公司 三维人脸模型的生成方法、装置、设备及介质
CN111127668A (zh) * 2019-12-26 2020-05-08 网易(杭州)网络有限公司 一种角色模型生成方法、装置、电子设备和存储介质
WO2024083100A1 (en) * 2022-10-17 2024-04-25 Alibaba Damo (Hangzhou) Technology Co., Ltd. Method and apparatus for talking face video compression

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101315661A (zh) * 2008-07-18 2008-12-03 东南大学 一种减小表情影响的快速三维人脸识别方法
WO2016011834A1 (zh) * 2014-07-23 2016-01-28 邢小月 一种图像处理方法及系统
CN108062791A (zh) * 2018-01-12 2018-05-22 北京奇虎科技有限公司 一种重建人脸三维模型的方法和装置
CN108510573A (zh) * 2018-04-03 2018-09-07 南京大学 一种基于深度学习的多视点人脸三维模型重建的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101315661A (zh) * 2008-07-18 2008-12-03 东南大学 一种减小表情影响的快速三维人脸识别方法
WO2016011834A1 (zh) * 2014-07-23 2016-01-28 邢小月 一种图像处理方法及系统
CN108062791A (zh) * 2018-01-12 2018-05-22 北京奇虎科技有限公司 一种重建人脸三维模型的方法和装置
CN108510573A (zh) * 2018-04-03 2018-09-07 南京大学 一种基于深度学习的多视点人脸三维模型重建的方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
胡阳明: "表情不变的三维人脸重构", 中国优秀硕士论文全文数据库 信息科技辑, 15 June 2014 (2014-06-15) *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111028343A (zh) * 2019-12-16 2020-04-17 腾讯科技(深圳)有限公司 三维人脸模型的生成方法、装置、设备及介质
US11900557B2 (en) 2019-12-16 2024-02-13 Tencent Technology (Shenzhen) Company Limited Three-dimensional face model generation method and apparatus, device, and medium
CN111127668A (zh) * 2019-12-26 2020-05-08 网易(杭州)网络有限公司 一种角色模型生成方法、装置、电子设备和存储介质
CN111127668B (zh) * 2019-12-26 2023-08-22 网易(杭州)网络有限公司 一种角色模型生成方法、装置、电子设备和存储介质
WO2024083100A1 (en) * 2022-10-17 2024-04-25 Alibaba Damo (Hangzhou) Technology Co., Ltd. Method and apparatus for talking face video compression

Similar Documents

Publication Publication Date Title
US11302064B2 (en) Method and apparatus for reconstructing three-dimensional model of human body, and storage medium
CN103208133B (zh) 一种图像中人脸胖瘦的调整方法
CN110415341A (zh) 一种三维人脸模型的生成方法、装置、电子设备及介质
CN110705448A (zh) 一种人体检测方法及装置
CN110246209B (zh) 图像处理方法及装置
TWI780919B (zh) 人臉影像的處理方法、裝置、電子設備及儲存媒體
CN116310076A (zh) 基于神经辐射场的三维重建方法、装置、设备及存储介质
CN109191508A (zh) 一种模拟整容装置、模拟整容方法及设备
CN110624244B (zh) 游戏中脸部模型的编辑方法、装置和终端设备
WO2022143354A1 (zh) 虚拟对象的脸部生成方法、装置、设备和可读存储介质
CN117218300B (zh) 三维模型的构建方法、三维构建模型的训练方法及装置
CN108717730B (zh) 一种3d人物重建的方法及终端
CN111507259B (zh) 脸部特征提取方法、装置、电子设备
US20230342942A1 (en) Image data processing method, method and apparatus for constructing digital virtual human, device, storage medium, and computer program product
CN112819687A (zh) 基于无监督神经网络的跨域图像转换方法、装置、计算机设备和存储介质
CN115862149B (zh) 一种生成3d人体骨骼关键点数据集的方法及系统
CN115908664B (zh) 人机交互的动画生成方法、装置、计算机设备、存储介质
KR20210004824A (ko) 신체 치수 측정 방법 및 장치
CN112819741B (zh) 一种图像融合方法、装置,电子设备及存储介质
CN113470162A (zh) 三维头部模型的构建方法、装置、系统及存储介质
CN116912433B (zh) 三维模型骨骼绑定方法、装置、设备及存储介质
US11803997B2 (en) Automatic head pose neutralization and blend shape generation
CN107239579A (zh) 人体智能塑模方法以及系统
CN111784828B (zh) 三维模型的融合方法、装置及计算机可读存储介质
CN116309021A (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