CN113538655A - 一种虚拟人脸的生成方法及设备 - Google Patents
一种虚拟人脸的生成方法及设备 Download PDFInfo
- Publication number
- CN113538655A CN113538655A CN202110695295.9A CN202110695295A CN113538655A CN 113538655 A CN113538655 A CN 113538655A CN 202110695295 A CN202110695295 A CN 202110695295A CN 113538655 A CN113538655 A CN 113538655A
- Authority
- CN
- China
- Prior art keywords
- face
- geometric model
- determining
- highlight
- key point
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- 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
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/08—Indexing scheme for image data processing or generation, in general involving all processing steps from image acquisition to 3D model generation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
Abstract
本申请公开一种虚拟人脸的生成方法及设备,根据人脸几何模型和扫描纹理贴图,确定人脸在三维空间的各第一关键点,人脸几何模型和扫描纹理贴图是通过三维扫描元件得到的;从无高光图片中确定人脸在二维空间的各第二关键点,无高光图片是通过偏振采集元件得到的;通过指示同一人脸关键点的第一关键点和第二关键点,确定人脸从人脸几何模型到无高光图片的第一投影矩阵;根据第一投影矩阵,确定人脸几何模型的各顶点与无高光图片的各像素点之间的映射关系;根据映射关系,确定人脸几何模型对应的虚拟人脸。该方式在获取到人脸几何模型及扫描纹理贴图,以及在得到人脸的无高光图片后,即可以快速地输出与大量人脸一一对应的各虚拟人脸。
Description
技术领域
本申请实施例涉及计算机技术领域,尤其涉及一种虚拟人脸的生成方法及设备。
背景技术
目前,在电影、动画、游戏等视频制作中,通过使用用户个性化的虚拟人脸代替其中的角色人脸,可以增强用户体验的趣味性。其中,虚拟人脸在制作过程中,需要由专业人员在专业工具中纯手工制作完成,实现将用户无高光的人脸图片映射到人脸的几何模型上。
由于在电影、动画、游戏领域,需要进行制作的虚拟人脸的数量有限,且创作时间充裕,因此对自动将无高光的人脸图片映射到人脸的几何模型上的需求显得并不那么迫切。然而,随着计算机软硬件技术的发展,对逼真的、个性化的虚拟人脸的应用颇为广泛,例如在AR/VR领域,每个人都有生成自己的虚拟人脸的需求,同时用户还希望能够快速地生成自己的虚拟人脸。显然在AR/VR领域,如果依然采用目前的人工方式获取用户的虚拟人脸,则并不能够达到快速且大量的输出虚拟人脸的效果。
发明内容
本申请提供一种虚拟人脸的生成方法及设备,用于实现快速地将大量用户的无高光的人脸图片映射到对应用户的人脸几何模型上,从而生成各虚拟人脸。
第一方面,本申请实施例提供一种虚拟人脸生成方法,该方法包括:根据人脸几何模型和扫描纹理贴图,确定人脸在三维空间的各第一关键点,其中,所述人脸几何模型和所述扫描纹理贴图是通过三维扫描元件得到的;从无高光图片中确定所述人脸在二维空间的各第二关键点,其中,所述无高光图片是通过偏振采集元件得到的;通过指示同一人脸关键点的第一关键点和第二关键点,确定所述人脸从所述人脸几何模型到所述无高光图片的第一投影矩阵;根据所述第一投影矩阵,确定所述人脸几何模型的各顶点与所述无高光图片的各像素点之间的映射关系;根据所述映射关系,确定所述人脸几何模型对应的虚拟人脸;所述虚拟人脸包括所述人脸在所述无高光图片中的像素信息。
基于该方案,针对于需要进行虚拟人脸生成的人脸,一方面可对获取到的人脸几何模型和扫描纹理贴图进行处理,以得到该人脸在三维空间的各第一关键点,另一方面可对获取到的该人脸的无高光图片进行处理以得到该人脸在二维空间的各第二关键点,然后基于指示同一人脸关键点的第一关键点和第二关键点,可确定出该人脸从人脸几何模型到无高光图片的第一投影矩阵,接着根据第一投影矩阵,可确定人脸几何模型的各顶点与无高光图片的各像素点之间的映射关系,并最终依据该映射关系,在显示人脸几何模型的同时从无高光图片中获取人脸几何模型的各顶点对应的像素信息并对应显示,从而形成虚拟人脸。该方式在使用三维扫描元件获取到人脸几何模型及扫描纹理贴图,以及在使用偏振采集元件得到人脸的无高光图片后,即可以快速地输出与大量人脸一一对应的各虚拟人脸。
在一种可能实现的方法中,所述根据人脸几何模型和扫描纹理贴图,确定人脸在三维空间的各第一关键点,包括:通过相机模型,得到所述人脸几何模型的二维图片;将所述扫描纹理贴图渲染至所述二维图片,得到纹理图;通过所述纹理图,确定所述人脸在所述二维空间的各第三关键点;根据预设的第三关键点到第一关键点的转换方式,对所述各第三关键点分别进行转换,得到所述人脸在三维空间的各第一关键点。
对于扫描纹理贴图,其常常是离散的,或者因UV展开而有较大形变,其中离散的扫描纹理贴图可导致无法提取人脸在二维空间的各关键点,而形变较大的扫描纹理贴图可导致对人脸在二维空间所提取的各关键点与真实的人脸各关键点存在较大偏差,若直接基于这两种性质的扫描纹理贴图计算人脸从人脸几何模型到无高光图片的投影矩阵,则导致所计算出的投影矩阵并不准确,并最终影响到无法将无高光图片映射至人脸几何模型上。针对该问题,本方案中提出使用相机模型对人脸几何模型进行拍照,进而可得到人脸几何模型的二维图片,由于人脸几何模型是稳定、非形变的,从而得到的人脸几何模型的二维图片与真实的人脸面部构造相同,进一步地通过将扫描纹理贴图渲染至人脸几何模型的二维图片上,该过程所形成的纹理图将具有与真实的人脸在面部构造、皮肤纹理上表现相同的特点,如此可基于该纹理图提取人脸在二维空间的各关键点,即各第三关键点,并最终可以根据各第三关键点确定人脸几何模型中与各第三关键点对应的各第一关键点。
在一种可能实现的方法中,所述通过相机模型,得到所述人脸几何模型的二维图片,包括:根据所述人脸几何模型的各顶点,确定所述人脸几何模型的中心点;根据所述中心点,确定所述人脸几何模型的视图矩阵;所述视图矩阵用于表示所述人脸几何模型在所述相机模型下的姿态参数设置;根据所述视图矩阵和所述相机模型的第二投影矩阵,确定所述人脸几何模型的二维图片;所述第二投影矩阵用于表示所述相机模型对所述人脸几何模型进行拍照的相机参数设置。
基于该方案,在通过相机模型以得到人脸几何模型的二维图片的过程中,为了可以清晰、准确地拍摄出人脸几何模型的二维图片,首先可以从人脸几何模型的各顶点中确定出它的中心点,然后基于该中心点,可确定人脸几何模型的视图矩阵,也即从相机模型或者从人脸几何模型的角度出发,对相机模型或者人脸几何模型进行调整,以确定相机模型对人脸几何模型进行拍摄时,人脸几何模型在相机模型下一种较佳的姿态参数,最后可根据人脸几何模型的视图矩阵以及相机模型的第二投影矩阵对人脸几何模型进行拍照,由于第二投影矩阵是为相机模型在拍摄人脸几何模型时而设置的一种较佳的相机参数,从而最终得到的人脸几何模型的二维图片可更为清晰,它与真实人脸的构造也更为接近,如此有助于准确地确定第一投影矩阵,也即有助于准确地将无高光图片映射到人脸几何模型上,从而形成虚拟人脸。
在一种可能实现的方法中,所述根据预设的第三关键点到第一关键点的转换方式,对所述各第三关键点分别进行转换,得到所述人脸在三维空间的各第一关键点,包括:针对所述各第三关键点中的任一第三关键点,将经过所述第三关键点并指向屏幕空间的第一射线转换为在所述人脸几何模型下的第二射线;针对任一第二射线,确定所述第二射线与所述人脸几何模型是否存在交点;将存在的各交点作为所述人脸在三维空间的各第一关键点。
基于该方案,在确定各第三关键点在人脸几何模型中对应的各第一关键点的过程中,由于各第三关键点与人脸几何模型各自所处的坐标系并不相同:前者处于二维坐标系下,而后者则处于三维坐标系下,因此并不能直接将经过各第三关键点并指向屏幕空间的各射线与人脸几何模型求交点,如果直接计算,将产生错误的计算结果。针对该问题,本方案提出在计算各第一关键点之前,针对各第三关键点中的任一个第三关键点,将经过该第三关键点并指向屏幕空间的射线(即第一射线)转换为在人脸几何模型所在空间(即三维坐标系)所表示的射线(即第二射线),如此的话,则可以达到统一坐标系的效果,进而在同一坐标系下可准确地对各第二射线是否与人脸几何模型存在交点的情况进行计算,并最终可以将能够计算出的各交点作为各第一关键点。
在一种可能实现的方法中,所述人脸几何模型包括三角面片和/或四角面片;所述针对任一第二射线,确定所述第二射线与所述人脸几何模型是否存在交点,包括:针对任一第二射线,确定所述第二射线是否与任一三角面片或任一四角面片存在交点。
基于该方案,在同一坐标系下对各第二射线是否与人脸几何模型存在交点的情况进行计算时,由于人脸几何模型可以通过三角面片和/或四角面片进行表示,因此可以将各第二射线分别与人脸几何模型对应的各三角面片和/或四角面片进行交点的求解,如果求解出的结果满足设定要求,则确定所求解的第二射线与人脸几何模型存在交点,该交点即为一个第一关键点。通过该方式,可以准确地求解出人脸几何模型上的各第一关键点。
在一种可能实现的方法中,所述通过指示同一人脸关键点的第一关键点和第二关键点,确定所述人脸从所述人脸几何模型到所述无高光图片的第一投影矩阵,包括:构建线性系统;所述线性系统包括指示所述各第一关键点的因素和指示所述各第二关键点的因素;针对所述各第一关键点中的N个第一关键点,根据分别指示的一个人脸关键点,从所述各第二关键点中分别确定出与所述N个第一关键点中的每一个第一关键点一一对应的一个第二关键点;将所述N个第一关键点的坐标和N个第二关键点的坐标输入所述线性系统,得到所述人脸从所述人脸几何模型到所述无高光图片的第一投影矩阵。
基于该方案,在得到人脸在三维空间的各第一关键点以及得到人脸在二维空间的各第二关键点时,为了能够实现准确地将无高光图片映射到人脸几何模型从而形成虚拟人脸,其可以根据人脸从人脸几何模型到无高光图片的第一投影矩阵而实现。为了得到第一投影矩阵,本方案中提出构建一线性系统,该线性系统中可包括指示各第一关键点的因素和指示各第二关键点的因素,然后通过将N个第一关键点和N个第二关键点分别组成N个点对,并将该N个点对逐一输入到该线性系统中,进而对所形成的N个方程联合求解,则可得到第一投影矩阵,其中对于N个点对中的任一个点对,该点对中的第一关键点和第二关键点分别为同一个人脸关键点在三维空间的表示和在二维空间的表示。
在一种可能实现的方法中,所述根据所述第一投影矩阵,确定所述人脸几何模型的各顶点与所述无高光图片的各像素点之间的映射关系,包括:针对所述人脸几何模型的各顶点中的任一顶点,根据所述第一投影矩阵,确定所述无高光图片中与所述顶点对应的像素点的坐标;对所述像素点的坐标进行归一化处理,得到所述像素点在二维坐标系的纹理坐标;将所述各顶点与所述各像素点在所述二维坐标系的纹理坐标作为所述人脸几何模型的各顶点与所述无高光图片的各像素点之间的映射关系。
基于该方案,在得到第一投影矩阵后,为了可以准确地将人脸的无高光图片映射到该人脸的人脸几何模型上从而形成虚拟人脸,也即在显示人脸几何模型时同时可以显示出该人脸的像素信息,本方案中提出针对于人脸几何模型中的任一个顶点,通过应用第一投影矩阵,则可以得到该顶点在人脸的无高光图片中相对应的一个像素点的坐标,接着对该像素点的坐标进行归一化处理,可得到该像素点在二维坐标系的纹理坐标,如此就可以建立起人脸几何模型的各顶点与无高光图片的各像素点之间的映射关系,也即可以建立起人脸几何模型的各顶点与对应的各像素点的纹理坐标之间的映射关系,从而可根据该映射关系,确定人脸几何模型所对应的虚拟人脸,该虚拟人脸包括人脸在无高光图片中的像素信息。
第二方面,本申请实施例提供一种虚拟人脸的生成设备,该设备包括:三维扫描元件、偏振采集元件和处理器;所述三维扫描元件,用于获取人脸几何模型和扫描纹理贴图;所述偏振采集元件,用于获取人脸的无高光图片;所述处理器,被配置为:根据所述人脸几何模型和所述扫描纹理贴图,确定所述人脸在三维空间的各第一关键点;从所述无高光图片中确定所述人脸在二维空间的各第二关键点;通过指示同一人脸关键点的第一关键点和第二关键点,确定所述人脸从所述人脸几何模型到所述无高光图片的第一投影矩阵;根据所述第一投影矩阵,确定所述人脸几何模型的各顶点与所述无高光图片的各像素点之间的映射关系;根据所述映射关系,确定所述人脸几何模型对应的虚拟人脸;所述虚拟人脸包括所述人脸在所述无高光图片中的像素信息。
在一种可能实现的方法中,所述处理器,被具体配置为:通过相机模型,得到所述人脸几何模型的二维图片;将所述扫描纹理贴图渲染至所述二维图片,得到纹理图;通过所述纹理图,确定所述人脸在所述二维空间的各第三关键点;根据预设的第三关键点到第一关键点的转换方式,对所述各第三关键点分别进行转换,得到所述人脸在三维空间的各第一关键点。
在一种可能实现的方法中,所述处理器,被具体配置为:根据所述人脸几何模型的各顶点,确定所述人脸几何模型的中心点;根据所述中心点,确定所述人脸几何模型的视图矩阵;所述视图矩阵用于表示所述人脸几何模型在所述相机模型下的姿态参数设置;根据所述视图矩阵和所述相机模型的第二投影矩阵,确定所述人脸几何模型的二维图片;所述第二投影矩阵用于表示所述相机模型对所述人脸几何模型进行拍照的相机参数设置。
在一种可能实现的方法中,所述处理器,被具体配置为:针对所述各第三关键点中的任一第三关键点,将经过所述第三关键点并指向屏幕空间的第一射线转换为在所述人脸几何模型下的第二射线;针对任一第二射线,确定所述第二射线与所述人脸几何模型是否存在交点;将存在的各交点作为所述人脸在三维空间的各第一关键点。
在一种可能实现的方法中,所述人脸几何模型包括三角面片和/或四角面片;所述处理器,被进一步配置为:针对任一第二射线,确定所述第二射线是否与任一三角面片或任一四角面片存在交点。
在一种可能实现的方法中,所述处理器,被具体配置为:构建线性系统;所述线性系统包括指示所述各第一关键点的因素和指示所述各第二关键点的因素;针对所述各第一关键点中的N个第一关键点,根据分别指示的一个人脸关键点,从所述各第二关键点中分别确定出与所述N个第一关键点中的每一个第一关键点一一对应的一个第二关键点;将所述N个第一关键点的坐标和N个第二关键点的坐标输入所述线性系统,得到所述人脸从所述人脸几何模型到所述无高光图片的第一投影矩阵。
在一种可能实现的方法中,所述处理器,被具体配置为:针对所述人脸几何模型的各顶点中的任一顶点,根据所述第一投影矩阵,确定所述无高光图片中与所述顶点对应的像素点的坐标;对所述像素点的坐标进行归一化处理,得到所述像素点在二维坐标系的纹理坐标;将所述各顶点与所述各像素点在所述二维坐标系的纹理坐标作为所述人脸几何模型的各顶点与所述无高光图片的各像素点之间的映射关系。
第三方面,本申请实施例提供了一种计算设备,包括:
存储器,用于存储计算机程序;
处理器,用于调用所述存储器中存储的计算机程序,按照获得的程序执行如第一方面所述的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序用于使计算机执行如第一方面所述的方法。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种虚拟人脸的生成方法的流程图;
图2为本申请实施例提供的一种人脸三维扫描结果的示意图;
图3为本申请实施例提供的一种人脸的无高光图片的示意图;
图4为本申请实施例提供的一种人脸在二维空间的各第二关键点的示意图;
图5为本申请实施例提供的一张纹理图的示意图;
图6为本申请实施例提供的一种基于纹理图的人脸关键点检测结果示意图;
图7为本申请实施例提供的一种人脸几何模型中的各第一关键点的示意图;
图8为本申请实施例提供的一种虚拟人脸的示意图;
图9为本申请实施例提供的一种虚拟人脸的生成设备的示意图;
图10为本申请实施例提供的一种计算设备的示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
目前,通过专业人员在专业工具中纯手工制作虚拟人脸的方式,已经无法满足例如AR/VR领域所提出的为大量人脸快速生成相对应的虚拟人脸的需求。
针对上述技术问题,本申请实施例提供一种虚拟人脸的生成方法的流程图,如图1所示,该方法包括以下步骤:
步骤101,根据人脸几何模型和扫描纹理贴图,确定人脸在三维空间的各第一关键点,其中,所述人脸几何模型和所述扫描纹理贴图是通过三维扫描元件得到的。
在步骤101中,一种可能的实现方式是,三维扫描元件可以为bellus3D ARC1,Azure kinect,real sensor等设备。
例如,在某个用户想要生成自己的虚拟人脸时,可使用三维扫描元件对他的脸部进行扫描;经过三维扫描元件的扫描,可以得到该用户的人脸几何模型和扫描纹理贴图。如图2所示,为本申请实施例提供的一种人脸三维扫描结果的示意图,其中,图2中的(a)表示人脸几何模型的示意图,图2中的(b)表示扫描纹理贴图的示意图。由于扫描纹理贴图是在得到人脸几何模型的过程中产生的,所以图2中的(a)与图2中的(b)的关系为:图2中的(b)是在使用三维扫描元件对人脸进行扫描并最终得到图2中的(a)的过程中的一份中间扫描文件。根据图2中的(b)可知,该扫描纹理贴图发生了较大形变。
说明的是,本申请说明书附图中的多张附图由于涉及到人脸数据的隐私,出于对人脸数据隐私的保护,本申请在绘制相关的说明书附图时对人脸的眼部做了遮挡处理。
在步骤101中,一种可能的实现方式是,从三维空间上确定出用于表示人的眉毛、眼睛、鼻子、嘴巴、脸型等各人脸部位的各关键点,即第一关键点。
步骤102,从无高光图片中确定所述人脸在二维空间的各第二关键点,其中,所述无高光图片是通过偏振采集元件得到的。
使用相机对人脸进行拍摄的过程中,如果使用的是常规相机,则拍摄出来的人脸图片将带上环境光。由于拍摄角度、面部皮肤本身的特性(如存在油脂)等原因,将导致所拍摄出来的人脸图片上出现亮斑,该亮斑又称高光区域,该种人脸的高光图片无法用于映射到人脸几何模型上以形成虚拟人脸。
针对该技术问题,在步骤102中,一种可能的实现方式是,通过偏振采集元件,获取人脸对应的无高光图片。其中,无高光图片指的是拍摄得到的人脸图片中并不存在亮斑;一种可能的实现方式是,偏振采集元件可以为在相机镜头和照明灯前分别增加偏振片的偏振拍摄系统,例如,偏振拍摄系统可以为尼康D7100单反相机,并附加2片NiSi 67mm CPL。
基于形成图2所示的人脸扫描结果的同一人脸,如图3所示,为本申请实施例提供的一种人脸的无高光图片的示意图。
在步骤102中,基于人脸的无高光图片,可以确定人脸在二维空间的各第二关键点。一种可能的实现方式是,可通过人脸关键点检测技术,从二维空间上确定出用于表示人的眉毛、眼睛、鼻子、嘴巴、脸型等各人脸部位的各关键点。由于对人脸图片应用人脸关键点检测技术从而识别出人脸的各关键点为现有技术,故本申请对此不做解释。
例如,可对图3所示的人脸的无高光图片应用人脸关键点检测技术,如在对图3所示的人脸的无高光图片进行人脸关键点的检测后,其人脸关键点的检测结果可以如图4所示,其中图4为本申请实施例提供的一种人脸在二维空间的各第二关键点的示意图。参考图4,各黑色实心点用于表示各第二关键点,另外还需要说明的是,根据人脸关键点检测技术对图3所示的人脸的无高光图片进行人脸关键点的检测后,一共可以得到77个人脸关键点,也即第二关键点的个数为77;然而,图4中仅通过示出部分的第二关键点以对人脸在二维空间的各第二关键点进行说明,同时出于对人脸隐私数据的保护,图4中并未示出表示眼睛的各第二关键点。
说明的是,本申请中的步骤101与步骤102可以顺序执行,也可以倒序执行,还可以同时执行,也即,本申请对确定人脸在三维空间的各第一关键点与确定人脸在二维空间的各第二关键点的顺序不做限定。
步骤103,通过指示同一人脸关键点的第一关键点和第二关键点,确定所述人脸从所述人脸几何模型到所述无高光图片的第一投影矩阵。
基于步骤101得到的人脸在三维空间的各第一关键点,以及基于步骤102得到的该人脸在二维空间的各第二关键点,则在步骤103中,根据指示同一人脸关键点的第一关键点和第二关键点,可以确定该人脸从人脸几何模型到无高光图片的投影矩阵,该投影矩阵可用于确定人脸几何模型上的任一顶点在无高光图片中相对应的一个像素点,也即根据该投影矩阵,可以确定人脸几何模型的各顶点与无高光图片的各像素点之间的映射关系。该投影矩阵即为第一投影矩阵。
步骤104,根据所述第一投影矩阵,确定所述人脸几何模型的各顶点与所述无高光图片的各像素点之间的映射关系。
基于步骤103得到第一投影矩阵,在步骤104中,则可根据该第一投影矩阵,确定人脸几何模型的各顶点与无高光图片的各像素点之间的映射关系。
步骤105,根据所述映射关系,确定所述人脸几何模型对应的虚拟人脸;所述虚拟人脸包括所述人脸在所述无高光图片中的像素信息。
通过步骤104得到人脸几何模型的各顶点与无高光图片的各像素点之间的映射关系后,则在显示人脸几何模型的过程中,可同时根据该映射关系而从人脸的无高光图片中拉取各顶点所对应的各像素点的像素信息,并显示在人脸几何模型的各顶点上,如此就可以得到人脸几何模型对应的虚拟人脸。
基于该方案,针对于需要进行虚拟人脸生成的人脸,一方面可对获取到的人脸几何模型和扫描纹理贴图进行处理,以得到该人脸在三维空间的各第一关键点,另一方面可对获取到的该人脸的无高光图片进行处理以得到该人脸在二维空间的各第二关键点,然后基于指示同一人脸关键点的第一关键点和第二关键点,可确定出该人脸从人脸几何模型到无高光图片的第一投影矩阵,接着根据第一投影矩阵,可确定人脸几何模型的各顶点与无高光图片的各像素点之间的映射关系,并最终依据该映射关系,在显示人脸几何模型的同时从无高光图片中获取人脸几何模型的各顶点对应的像素信息并对应显示,从而形成虚拟人脸。该方式在使用三维扫描元件获取到人脸几何模型及扫描纹理贴图,以及在使用偏振采集元件得到人脸的无高光图片后,即可以快速地输出与大量人脸一一对应的各虚拟人脸。
以下将结合示例对上述一些步骤进行详细说明。
在上述步骤101的一个实施中,所述根据人脸几何模型和扫描纹理贴图,确定人脸在三维空间的各第一关键点,包括:通过相机模型,得到所述人脸几何模型的二维图片;将所述扫描纹理贴图渲染至所述二维图片,得到纹理图;通过所述纹理图,确定所述人脸在所述二维空间的各第三关键点;根据预设的第三关键点到第一关键点的转换方式,对所述各第三关键点分别进行转换,得到所述人脸在三维空间的各第一关键点。
对于扫描纹理贴图,其常常是离散的,或者因UV展开而有较大形变,其中离散的扫描纹理贴图可导致无法提取人脸在二维空间的各关键点,而形变较大的扫描纹理贴图可导致对人脸在二维空间所提取的各关键点与真实的人脸各关键点存在较大偏差,因此若直接基于这两种扫描纹理贴图计算人脸在二维空间的各关键点,则导致根据所确定出来的人脸在二维空间的各关键点而确定的人脸在人脸几何模型中对应的各关键点将变得不准确,并最终导致计算出的人脸从人脸集几何模型到无高光图片的投影矩阵并不准确,从而影响到无法将无高光图片映射至人脸几何模型上。此外,当前尚且还不存在直接根据人脸几何模型而确定人脸在三维空间的各人脸关键点的技术,也即当前的人脸关键点检测技术并不适用于对人脸几何模型中的各人脸关键点进行检测。
基于以上两方面原因,本申请实施例中为了可以准确地确定出人脸在三维空间的各第一关键点,可通过相机模型,也即采用虚拟相机对人脸几何模型进行拍照的技术,从而得到人脸几何模型的二维图片。作为一种可能的实现方式,相机模型可采用open GL技术,其中由于人脸几何模型是稳定、非形变的,从而得到的人脸几何模型的二维图片与真实的人脸面部构造相同;在得到人脸几何模型的二维图片之后,为了让该二维图片与真实的人脸图片看上去一模一样,也即为了让该二维图片看上去更逼真,则可通过将扫描纹理贴图渲染至人脸几何模型的二维图片上,如此,该过程所形成的纹理图将具有与真实的人脸在面部构造、皮肤纹理上表现相同的特点,从而可基于该纹理图提取人脸在二维空间的各关键点,即各第三关键点,作为一种可能的实现方式,可通过人脸关键点检测技术对该纹理图中人脸在二维空间的各第三关键点进行检测,并最终可以根据各第三关键点确定人脸几何模型中与各第三关键点相对应的各第一关键点。其中,可通过下述方式得到人脸几何模型的二维图片:
在本申请的某些实施中,所述通过相机模型,得到所述人脸几何模型的二维图片,包括:根据所述人脸几何模型的各顶点,确定所述人脸几何模型的中心点;根据所述中心点,确定所述人脸几何模型的视图矩阵;所述视图矩阵用于表示所述人脸几何模型在所述相机模型下的姿态参数设置;根据所述视图矩阵和所述相机模型的第二投影矩阵,确定所述人脸几何模型的二维图片;所述第二投影矩阵用于表示所述相机模型对所述人脸几何模型进行拍照的相机参数设置。
针对任一人脸几何模型,其可由成千上万个顶点组成。因此,为了可以以一种较佳的状态对人脸几何模型进行拍照,也即为了能够使对人脸几何模型拍摄得到的二维图片更为清楚,本申请实施例可对人脸几何模型具有的所有顶点进行遍历,并对遍历出的各顶点计算算术平均值P,并将所计算出的算术平均值P作为人脸几何模型的中心点。例如,人脸几何模型的中心点的计算公式可表示如下:
其中,pi表示人脸几何模型中的任一个顶点,n表示人脸几何模型具有的顶点数目。
在得到人脸几何模型的中心点后,根据该中心点,可确定出人脸几何模型的视图矩阵。
例如,设当前坐标系X轴朝右,Z轴朝上,Y轴朝向屏幕里面。以人脸几何模型的中心点P为中心,沿-Y轴移动d米,可得到用于对人脸几何模型进行拍摄二维图片的虚拟相机的位置C:
C=P+(0,-d,0)
其中,视图矩阵V可用于表示人脸几何模型在相机模型下的姿态参数设置。具体的,在视图矩阵V中,与向量向量和向量相关的各字母可表示在使用虚拟相机对人脸几何模型进行拍照时而对镜头的缩放设置、旋转设置等内容;以及,在视图矩阵V中,与虚拟相机的位置C相关的各字母可表示在使用虚拟相机对人脸几何模型进行拍照时的人脸几何模型与虚拟相机之间的位置关系。
例如,设对图2中的(a)所示的人脸几何模型的各顶点计算中心点后,计算出的中心点P=(-1.408,-9.4387,0.54);接着,根据该中心点P,可确定出图2中的(a)所示的人脸几何模型的视图矩阵V为:
此外,在使用虚拟相机对人脸几何模型进行拍照时,为了可以清晰、准确地拍摄出人脸几何模型的二维图片,除了可设置人脸几何模型的视图矩阵,还可以设置相机模型的投影矩阵,即第二投影矩阵,该第二投影矩阵为在使用相机模型对人脸几何模型进行拍照时而为相机模型设置的一种较佳的相机参数,其中涉及到的相机参数可包括至少以下一项内容:镜头的宽高比设置、水平/垂直方向的视广角设置、镜头的缩放设置、近场角与远场角的变换等。
例如,针对图2中的(a)所示的人脸几何模型,可确定出在对图2中的(a)所示的人脸几何模型进行拍照时的相机模型的投影矩阵,即第二投影矩阵Prj,其中第二投影矩阵Prj可表示如下:
针对于图2中的(a)所示的人脸几何模型,根据得到的视图矩阵V和第二投影矩阵Prj,可以确定图2中的(a)所示的人脸几何模型的二维图片。说明的是,本申请中并未示出图2中的(a)所示的人脸几何模型的二维图片的示意图。
在得到图2中的(a)所示的人脸几何模型的二维图片之后,可通过将图2中的(b)所示的扫描纹理贴图渲染到该二维图片上,则可以得到一张纹理图。如图5所示,为本申请实施例提供的一张纹理图的示意图,该纹理图是基于图2中的(a)所示的人脸几何模型和图2中的(b)所示的扫描纹理贴图而得到的。
在本申请的某些实施中,所述根据预设的第三关键点到第一关键点的转换方式,对所述各第三关键点分别进行转换,得到所述人脸在三维空间的各第一关键点,包括:针对所述各第三关键点中的任一第三关键点,将经过所述第三关键点并指向屏幕空间的第一射线转换为在所述人脸几何模型下的第二射线;针对任一第二射线,确定所述第二射线与所述人脸几何模型是否存在交点;将存在的各交点作为所述人脸在三维空间的各第一关键点。
例如,针对于图2中的(a)所示的人脸几何模型,并结合图2中的(b)所示的扫描纹理贴图而得到图5所示的纹理图后,可通过人脸关键点检测技术对该纹理图中的各人脸关键点进行检测,从而得到该人脸在二维空间的各人脸关键点,也即各第三关键点。比如,在使用人脸关键点检测技术对图5所示的纹理图进行人脸关键点的检测后,检测结果如图6所示,图6为本申请实施例提供的一种基于纹理图的人脸关键点检测结果示意图,其中在图6中,所检测出的人脸关键点涉及到人的眉毛、眼睛、鼻子、嘴巴及脸型各部位,参考图6,各黑色实心点用于表示各第三关键点,另外还需要说明的是,根据人脸关键点检测技术对图5所示的纹理图进行人脸关键点的检测后,一共可以得到77个人脸关键点,也即第三关键点的个数为77;然而,图6中仅通过示出部分的第三关键点以对人脸在二维空间的各第三关键点进行说明,同时处于对人脸隐私数据的保护,图6中并未示出表示眼睛的各第三关键点。
其中,由于各第三关键点与人脸几何模型各自所处的坐标系并不相同:各第三关键点处于平面坐标系/二维坐标系中,而人脸几何模型处于空间坐标系/三维坐标系中;因此并不能直接将经过各第三关键点并指向屏幕空间的各射线与人脸几何模型求交点,如果直接计算,将产生错误的计算结果。针对该问题,本申请实施例提出在计算各第一关键点之前,可将经过各第三关键点并指向屏幕空间的射线(即第一射线)逐一转换为在人脸几何模型所在空间(即三维坐标系)下表示的射线(即第二射线),如此的话,则可以达到统一坐标系的效果,进而在同一坐标系下可准确地对各第二射线是否与人脸几何模型存在交点的情况进行计算,并最终可以将能够计算出的各交点作为各第一关键点。
Mm=(Prj*V)-1
在本申请的某些实施中,所述人脸几何模型包括三角面片和/或四角面片;所述针对任一第二射线,确定所述第二射线与所述人脸几何模型是否存在交点,包括:针对任一第二射线,确定所述第二射线是否与任一三角面片或任一四角面片存在交点。
例如在得到第二射线之后,由于第二射线已经是第三关键点在人脸几何模型所在空间的射线,同时人脸几何模型是通过三角面片和/或四角面片构成,因此,如果对于任一个第二射线,假设该第二射线与构成人脸几何模型的三角面片和/或四角面片中的某一个三角面片或者四角面片存在交点,则该交点将可以作为该第二射线所表示的第三关键点在人脸几何模型中所对应的一个第一关键点。
比如,利用射线和三角形求交算法,可得到纹理图中各第三关键点在人脸几何模型中对应的各第一关键点的坐标K3d:
其中,Rmj表示从第三关键点发出的、且已变换到人脸几何模型所在空间的射线,即第二射线,Ei表示人脸几何模型的片元,∩表示第二射线与三角面片求交,77表示使用人脸关键点检测技术对纹理图进行人脸关键点检测后而得到的第三关键点的数目,n表示人脸几何模型的片元的数目。
作为一种示例,下面以片元是三角面片为例,对如何确定出人脸几何模型上的各第一关键点的过程进行详细说明。
设第二射线的参数方程为:
三角面片内任一点Q可表示为:
Q=w V0+u V1+v V2
其中,V0、V1、V2分别表示三角面片的三个顶点的坐标。
其中w+u+v=1.0,三元组(w,u,v)称为Q的重心坐标,w=1.0-u-v,故可用二元组(u,v)表示重心坐标。
对于第二射线与三角面片相交,则表示交点既在第二射线上,同时交点也在三角面片内,因此则有:
上式可进一步表示为:
由克莱姆法则,可求得:
其中,×表示叉乘,·表示点乘,求得t,u,v后,如果:
同时成立,则第二射线与三角面片有交点,且交点坐标表示为:
Q=w V0+u V1+v V2
在片元为四角面片时,可将四角面片视为两个三角面片,根据上述第二射线与三角面片求交的逻辑,可求得第二射线射线与四边面片的交点。
根据上述第二射线与人脸几何模型的各片元求取交点的逻辑,基于图2中的(a)所示的人脸几何模型,如图7所示,为本申请实施例提供的一种人脸几何模型中的各第一关键点的示意图。参考图7,各白色空心点用于表示各第一关键点,其中在根据第二射线与各片元相交求解第一关键点时,由于存在一些第二射线并不会与任何一个片元相交的情形,因此所求解出来的第一关键点的数目将不大于第二射线的数目,即第一关键点的数目不大于77。另外还需要说明的是,图7中仅通过示出部分的第一关键点以对人脸在三维空间的各第一关键点进行说明,同时出于对人脸隐私数据的保护,图7中并未示出表示眼睛的各第一关键点。
在上述步骤103的一个实施中,所述通过指示同一人脸关键点的第一关键点和第二关键点,确定所述人脸从所述人脸几何模型到所述无高光图片的第一投影矩阵,包括:构建线性系统;所述线性系统包括指示所述各第一关键点的因素和指示所述各第二关键点的因素;针对所述各第一关键点中的N个第一关键点,根据分别指示的一个人脸关键点,从所述各第二关键点中分别确定出与所述N个第一关键点中的每一个第一关键点一一对应的一个第二关键点;将所述N个第一关键点的坐标和N个第二关键点的坐标输入所述线性系统,得到所述人脸从所述人脸几何模型到所述无高光图片的第一投影矩阵。
在得到人脸在三维空间的各第一关键点以及得到人脸在二维空间的各第二关键点后,为了能够实现准确地将无高光图片映射到人脸几何模型上从而得到虚拟人脸,其可以根据人脸从人脸几何模型到无高光图片的第一投影矩阵而实现。
例如,预设第一投影矩阵为一个3*4的矩阵M,并表示如下:
根据第一投影矩阵M,而将一个三维空间坐标投影到二维空间时,由矩阵乘法要求可知,三维空间坐标需要表示为一个4*1的矩阵,例如设该4*1的矩阵为矩阵P,矩阵P可以表示如下
则,根据第一投影矩阵M和矩阵P,可得到该三维空间坐标在二维空间的坐标S,S的计算方式可表示如下:
S=M*P
其中,S为3*1的矩阵,并可以表示如下:
为了求得第一投影矩阵M,可构造一线性系统,并表示如下:
由于第一投影矩阵M中包括12个未知数(M11、M12……M34),因此为了求解该12个未知数,根据未知数的求解规则可知,至少需要6个点对才能求解上述线性系统。
其中,首先可从第二射线与人脸几何模型相交的各第一关键点中随机选择6个第一关键点,然后,针对所确定出来的6个第一关键点中的任一个第一关键点,基于该第一关键点而从无高光图片经人脸关键点检测技术确定出来的77个第二关键点中匹配出相对应的一个第二关键点,如此关于同一个人脸关键点,可以形成1个点对,由于有6个第一关键点,故共有6个点对,最后,针对于6个点对中的每一个点对,可将该点对中的第一关键点的坐标以及第二关键点的坐标代入上述线性系统,其中可将第一关键点的坐标代入x、y和z中,以及可将第二关键点的坐标代入u和v中,从而可以得到由6个齐次线性方程形成的方程组,通过求解该方程组,则可以得到第一投影矩阵M中包括的12个未知数的值。
在上述步骤104的一个实施中,所述根据所述第一投影矩阵,确定所述人脸几何模型的各顶点与所述无高光图片的各像素点之间的映射关系,包括:针对所述人脸几何模型的各顶点中的任一顶点,根据所述第一投影矩阵,确定所述无高光图片中与所述顶点对应的像素点的坐标;对所述像素点的坐标进行归一化处理,得到所述像素点在二维坐标系的纹理坐标;将所述各顶点与所述各像素点在所述二维坐标系的纹理坐标作为所述人脸几何模型的各顶点与所述无高光图片的各像素点之间的映射关系。
例如,接着前述的例子,在得到将人脸从人脸几何模型到无高光图片的第一投影矩阵M后,为了可以准确地将人脸的无高光图片映射到该人脸的人脸几何模型上从而形成虚拟人脸,也即在显示人脸几何模型时同时可以显示出该人脸的像素信息,在一种可能实现的方式中,针对于人脸几何模型中的每一个顶点,通过使用第一投影矩阵M,可确定该顶点在人脸的无高光图片中相对应的一个像素点的坐标;由于所确定出的像素点的坐标是基于三维空间表示的坐标,故并不可直接应用于无高光图片上,也即根据该像素点的坐标,将无法从二维坐标系匹配出一个对应的纹理坐标。基于该原因,可通过对该像素点的坐标进行归一化处理,如此可得到该像素点在二维坐标系的纹理坐标。最后,基于任一个顶点与归一化处理得到的与之对应的像素点在二位坐标系的纹理坐标,从而可将无高光图片映射至人脸几何模型上,即得到虚拟人脸。
其中,针对于人脸几何模型中的任一个顶点,通过使用第一投影矩阵M,可确定无高光图片中与该顶点对应的一个像素点的坐标,其计算方式如下:
针对于像素点的坐标,可根据下式得到该像素点在二维空间的纹理坐标:
u=u/w
v=v/w
根据上述方式,在确定人脸几何模型的各顶点与无高光图片的各像素点之间的映射关系,可依据该映射关系,在显示人脸几何模型的同时从无高光图片中获取人脸几何模型的各顶点对应的像素信息并对应显示,从而形成虚拟人脸。例如如图8所示,为本申请实施提供的一种虚拟人脸的示意图,该虚拟人脸为将图3所示的无高光图片映射到图2中的(a)所示的人脸几何模型上形成的。
基于同样的构思,本申请实施例提供一种虚拟人脸的生成设备的示意图,如图9所示,该设备包括:三维扫描元件901、偏振采集元件902和处理器903;三维扫描元件901,用于获取人脸几何模型和扫描纹理贴图;偏振采集元件902,用于获取人脸的无高光图片;处理器903,被配置为:根据所述人脸几何模型和所述扫描纹理贴图,确定所述人脸在三维空间的各第一关键点;从所述无高光图片中确定所述人脸在二维空间的各第二关键点;通过指示同一人脸关键点的第一关键点和第二关键点,确定所述人脸从所述人脸几何模型到所述无高光图片的第一投影矩阵;根据所述第一投影矩阵,确定所述人脸几何模型的各顶点与所述无高光图片的各像素点之间的映射关系;根据所述映射关系,确定所述人脸几何模型对应的虚拟人脸;所述虚拟人脸包括所述人脸在所述无高光图片中的像素信息。
进一步的,对于该设备,处理器903,被具体配置为:通过相机模型,得到所述人脸几何模型的二维图片;将所述扫描纹理贴图渲染至所述二维图片,得到纹理图;通过所述纹理图,确定所述人脸在所述二维空间的各第三关键点;根据预设的第三关键点到第一关键点的转换方式,对所述各第三关键点分别进行转换,得到所述人脸在三维空间的各第一关键点。
进一步的,对于该设备,处理器903,被具体配置为:根据所述人脸几何模型的各顶点,确定所述人脸几何模型的中心点;根据所述中心点,确定所述人脸几何模型的视图矩阵;所述视图矩阵用于表示所述人脸几何模型在所述相机模型下的姿态参数设置;根据所述视图矩阵和所述相机模型的第二投影矩阵,确定所述人脸几何模型的二维图片;所述第二投影矩阵用于表示所述相机模型对所述人脸几何模型进行拍照的相机参数设置。
进一步的,对于该设备,处理器903,被具体配置为:针对所述各第三关键点中的任一第三关键点,将经过所述第三关键点并指向屏幕空间的第一射线转换为在所述人脸几何模型下的第二射线;针对任一第二射线,确定所述第二射线与所述人脸几何模型是否存在交点;将存在的各交点作为所述人脸在三维空间的各第一关键点。
进一步的,对于该设备,所述人脸几何模型包括三角面片和/或四角面片;处理器903,被进一步配置为:针对任一第二射线,确定所述第二射线是否与任一三角面片或任一四角面片存在交点。
进一步的,对于该设备,处理器903,被具体配置为:构建线性系统;所述线性系统包括指示所述各第一关键点的因素和指示所述各第二关键点的因素;针对所述各第一关键点中的N个第一关键点,根据分别指示的一个人脸关键点,从所述各第二关键点中分别确定出与所述N个第一关键点中的每一个第一关键点一一对应的一个第二关键点;将所述N个第一关键点的坐标和N个第二关键点的坐标输入所述线性系统,得到所述人脸从所述人脸几何模型到所述无高光图片的第一投影矩阵。
进一步的,对于该设备,处理器903,被具体配置为:针对所述人脸几何模型的各顶点中的任一顶点,根据所述第一投影矩阵,确定所述无高光图片中与所述顶点对应的像素点的坐标;对所述像素点的坐标进行归一化处理,得到所述像素点在二维坐标系的纹理坐标;将所述各顶点与所述各像素点在所述二维坐标系的纹理坐标作为所述人脸几何模型的各顶点与所述无高光图片的各像素点之间的映射关系。
本申请实施例提供了一种计算设备,该计算设备具体可以为桌面计算机、便携式计算机、智能手机、平板电脑、个人数字助理(Personal Digital Assistant,PDA)等。该计算设备可以包括中央处理器(Center Processing Unit,CPU)、存储器、输入/输出设备等,输入设备可以包括键盘、鼠标、触摸屏等,输出设备可以包括显示设备,如液晶显示器(Liquid Crystal Display,LCD)、阴极射线管(Cathode Ray Tube,CRT)等。
存储器,可以包括只读存储器(ROM)和随机存取存储器(RAM),并向处理器提供存储器中存储的程序指令和数据。在本申请实施例中,存储器可以用于存储虚拟人脸的生成方法的程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行虚拟人脸的生成方法。
如图10所示,为本申请实施例提供的一种计算设备的示意图,该计算设备包括:
处理器1001、存储器1002、收发器1003、总线接口1004;其中,处理器1001、存储器1002与收发器1003之间通过总线1005连接;
所述处理器1001,用于读取所述存储器1002中的程序,执行上述虚拟人脸的生成方法;
处理器1001可以是中央处理器(central processing unit,简称CPU),网络处理器(network processor,简称NP)或者CPU和NP的组合。还可以是硬件芯片。上述硬件芯片可以是专用集成电路(application-specific integrated circuit,简称ASIC),可编程逻辑器件(programmable logic device,简称PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,简称CPLD),现场可编程逻辑门阵列(field-programmable gate array,简称FPGA),通用阵列逻辑(generic array logic,简称GAL)或其任意组合。
所述存储器1002,用于存储一个或多个可执行程序,可以存储所述处理器1001在执行操作时所使用的数据。
具体地,程序可以包括程序代码,程序代码包括计算机操作指令。存储器1002可以包括易失性存储器(volatile memory),例如随机存取存储器(random-access memory,简称RAM);存储器1002也可以包括非易失性存储器(non-volatile memory),例如快闪存储器(flash memory),硬盘(hard disk drive,简称HDD)或固态硬盘(solid-state drive,简称SSD);存储器1002还可以包括上述种类的存储器的组合。
存储器1002存储了如下的元素,可执行模块或者数据结构,或者它们的子集,或者它们的扩展集:
操作指令:包括各种操作指令,用于实现各种操作。
操作系统:包括各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。
总线1005可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图10中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
总线接口1004可以为有线通信接入口,无线总线接口或其组合,其中,有线总线接口例如可以为以太网接口。以太网接口可以是光接口,电接口或其组合。无线总线接口可以为WLAN接口。
本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行虚拟人脸的生成方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种虚拟人脸的生成方法,其特征在于,包括:
根据人脸几何模型和扫描纹理贴图,确定人脸在三维空间的各第一关键点,其中,所述人脸几何模型和所述扫描纹理贴图是通过三维扫描元件得到的;
从无高光图片中确定所述人脸在二维空间的各第二关键点,其中,所述无高光图片是通过偏振采集元件得到的;
通过指示同一人脸关键点的第一关键点和第二关键点,确定所述人脸从所述人脸几何模型到所述无高光图片的第一投影矩阵;
根据所述第一投影矩阵,确定所述人脸几何模型的各顶点与所述无高光图片的各像素点之间的映射关系;
根据所述映射关系,确定所述人脸几何模型对应的虚拟人脸;所述虚拟人脸包括所述人脸在所述无高光图片中的像素信息。
2.如权利要求1所述的方法,其特征在于,
所述根据人脸几何模型和扫描纹理贴图,确定人脸在三维空间的各第一关键点,包括:
通过相机模型,得到所述人脸几何模型的二维图片;
将所述扫描纹理贴图渲染至所述二维图片,得到纹理图;
通过所述纹理图,确定所述人脸在所述二维空间的各第三关键点;
根据预设的第三关键点到第一关键点的转换方式,对所述各第三关键点分别进行转换,得到所述人脸在三维空间的各第一关键点。
3.如权利要求2所述的方法,其特征在于,
所述通过相机模型,得到所述人脸几何模型的二维图片,包括:
根据所述人脸几何模型的各顶点,确定所述人脸几何模型的中心点;
根据所述中心点,确定所述人脸几何模型的视图矩阵;所述视图矩阵用于表示所述人脸几何模型在所述相机模型下的姿态参数设置;
根据所述视图矩阵和所述相机模型的第二投影矩阵,确定所述人脸几何模型的二维图片;所述第二投影矩阵用于表示所述相机模型对所述人脸几何模型进行拍照的相机参数设置。
4.如权利要求2所述的方法,其特征在于,
所述根据预设的第三关键点到第一关键点的转换方式,对所述各第三关键点分别进行转换,得到所述人脸在三维空间的各第一关键点,包括:
针对所述各第三关键点中的任一第三关键点,将经过所述第三关键点并指向屏幕空间的第一射线转换为在所述人脸几何模型下的第二射线;
针对任一第二射线,确定所述第二射线与所述人脸几何模型是否存在交点;
将存在的各交点作为所述人脸在三维空间的各第一关键点。
5.如权利要求4所述的方法,其特征在于,所述人脸几何模型包括三角面片和/或四角面片;
所述针对任一第二射线,确定所述第二射线与所述人脸几何模型是否存在交点,包括:
针对任一第二射线,确定所述第二射线是否与任一三角面片或任一四角面片存在交点。
6.如权利要求1至5任一项所述的方法,其特征在于,
所述通过指示同一人脸关键点的第一关键点和第二关键点,确定所述人脸从所述人脸几何模型到所述无高光图片的第一投影矩阵,包括:
构建线性系统;所述线性系统包括指示所述各第一关键点的因素和指示所述各第二关键点的因素;
针对所述各第一关键点中的N个第一关键点,根据分别指示的一个人脸关键点,从所述各第二关键点中分别确定出与所述N个第一关键点中的每一个第一关键点一一对应的一个第二关键点;
将所述N个第一关键点的坐标和N个第二关键点的坐标输入所述线性系统,得到所述人脸从所述人脸几何模型到所述无高光图片的第一投影矩阵。
7.如权利要求1所述的方法,其特征在于,
所述根据所述第一投影矩阵,确定所述人脸几何模型的各顶点与所述无高光图片的各像素点之间的映射关系,包括:
针对所述人脸几何模型的各顶点中的任一顶点,根据所述第一投影矩阵,确定所述无高光图片中与所述顶点对应的像素点的坐标;
对所述像素点的坐标进行归一化处理,得到所述像素点在二维坐标系的纹理坐标;
将所述各顶点与所述各像素点在所述二维坐标系的纹理坐标作为所述人脸几何模型的各顶点与所述无高光图片的各像素点之间的映射关系。
8.一种虚拟人脸的生成设备,其特征在于,包括三维扫描元件、偏振采集元件和处理器;
所述三维扫描元件,用于获取人脸几何模型和扫描纹理贴图;
所述偏振采集元件,用于获取人脸的无高光图片;
所述处理器,被配置为:
根据所述人脸几何模型和所述扫描纹理贴图,确定所述人脸在三维空间的各第一关键点;
从所述无高光图片中确定所述人脸在二维空间的各第二关键点;
通过指示同一人脸关键点的第一关键点和第二关键点,确定所述人脸从所述人脸几何模型到所述无高光图片的第一投影矩阵;
根据所述第一投影矩阵,确定所述人脸几何模型的各顶点与所述无高光图片的各像素点之间的映射关系;
根据所述映射关系,确定所述人脸几何模型对应的虚拟人脸;所述虚拟人脸包括所述人脸在所述无高光图片中的像素信息。
9.如权利要求8所述的设备,其特征在于,
所述处理器,被具体配置为:
通过相机模型,得到所述人脸几何模型的二维图片;
将所述扫描纹理贴图渲染至所述二维图片,得到纹理图;
通过所述纹理图,确定所述人脸在所述二维空间的各第三关键点;
根据预设的第三关键点到第一关键点的转换方式,对所述各第三关键点分别进行转换,得到所述人脸在三维空间的各第一关键点。
10.如权利要求9所述的设备,其特征在于,
所述处理器,被具体配置为:
根据所述人脸几何模型的各顶点,确定所述人脸几何模型的中心点;
根据所述中心点,确定所述人脸几何模型的视图矩阵;所述视图矩阵用于表示所述人脸几何模型在所述相机模型下的姿态参数设置;
根据所述视图矩阵和所述相机模型的第二投影矩阵,确定所述人脸几何模型的二维图片;所述第二投影矩阵用于表示所述相机模型对所述人脸几何模型进行拍照的相机参数设置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110695295.9A CN113538655B (zh) | 2021-06-23 | 2021-06-23 | 一种虚拟人脸的生成方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110695295.9A CN113538655B (zh) | 2021-06-23 | 2021-06-23 | 一种虚拟人脸的生成方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113538655A true CN113538655A (zh) | 2021-10-22 |
CN113538655B CN113538655B (zh) | 2023-08-04 |
Family
ID=78125593
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110695295.9A Active CN113538655B (zh) | 2021-06-23 | 2021-06-23 | 一种虚拟人脸的生成方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113538655B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101923721A (zh) * | 2010-08-31 | 2010-12-22 | 汉王科技股份有限公司 | 无光照人脸图像重建方法和系统 |
CN104599326A (zh) * | 2014-12-11 | 2015-05-06 | 北京航空航天大学 | 一种人体心脏的实时逼真绘制方法 |
CN104978548A (zh) * | 2014-04-02 | 2015-10-14 | 汉王科技股份有限公司 | 一种基于三维主动形状模型的视线估计方法与装置 |
CN110807451A (zh) * | 2020-01-08 | 2020-02-18 | 腾讯科技(深圳)有限公司 | 人脸关键点检测方法、装置、设备及存储介质 |
CN111145330A (zh) * | 2019-12-31 | 2020-05-12 | 广州华多网络科技有限公司 | 人体模型渲染方法、装置、电子设备及存储介质 |
CN111869200A (zh) * | 2018-01-17 | 2020-10-30 | 奇跃公司 | 显示系统中的眼睛旋转中心确定、深度平面选择和渲染相机定位 |
KR20210058320A (ko) * | 2019-11-14 | 2021-05-24 | 한국전자통신연구원 | 단일 입력 영상을 이용한 3d 모델 생성 방법 및 이를 위한 장치 |
-
2021
- 2021-06-23 CN CN202110695295.9A patent/CN113538655B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101923721A (zh) * | 2010-08-31 | 2010-12-22 | 汉王科技股份有限公司 | 无光照人脸图像重建方法和系统 |
CN104978548A (zh) * | 2014-04-02 | 2015-10-14 | 汉王科技股份有限公司 | 一种基于三维主动形状模型的视线估计方法与装置 |
CN104599326A (zh) * | 2014-12-11 | 2015-05-06 | 北京航空航天大学 | 一种人体心脏的实时逼真绘制方法 |
CN111869200A (zh) * | 2018-01-17 | 2020-10-30 | 奇跃公司 | 显示系统中的眼睛旋转中心确定、深度平面选择和渲染相机定位 |
KR20210058320A (ko) * | 2019-11-14 | 2021-05-24 | 한국전자통신연구원 | 단일 입력 영상을 이용한 3d 모델 생성 방법 및 이를 위한 장치 |
CN111145330A (zh) * | 2019-12-31 | 2020-05-12 | 广州华多网络科技有限公司 | 人体模型渲染方法、装置、电子设备及存储介质 |
CN110807451A (zh) * | 2020-01-08 | 2020-02-18 | 腾讯科技(深圳)有限公司 | 人脸关键点检测方法、装置、设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
WAECHTER M: "Virtual rephotography: Novel view prediction error for 3D reconstruction", 《ACM TRANSACTIONS ON GRAPHICS》, pages 1 - 11 * |
Also Published As
Publication number | Publication date |
---|---|
CN113538655B (zh) | 2023-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3614340B1 (en) | Methods and devices for acquiring 3d face, and computer readable storage media | |
CN109242961B (zh) | 一种脸部建模方法、装置、电子设备和计算机可读介质 | |
CN107223269A (zh) | 三维场景定位方法和装置 | |
CN111815755A (zh) | 虚拟物体被遮挡的区域确定方法、装置及终端设备 | |
EP3992919B1 (en) | Three-dimensional facial model generation method and apparatus, device, and medium | |
CN111639626A (zh) | 三维点云数据处理方法、装置、计算机设备和存储介质 | |
WO2023284713A1 (zh) | 一种三维动态跟踪方法、装置、电子设备和存储介质 | |
CN113643414B (zh) | 一种三维图像生成方法、装置、电子设备及存储介质 | |
US11922568B2 (en) | Finite aperture omni-directional stereo light transport | |
US20230237683A1 (en) | Model generation method and apparatus based on multi-view panoramic image | |
CN112766027A (zh) | 图像处理方法、装置、设备及存储介质 | |
CN115439607A (zh) | 一种三维重建方法、装置、电子设备及存储介质 | |
CN112733641A (zh) | 物体尺寸测量方法、装置、设备及存储介质 | |
CN113724391A (zh) | 三维模型构建方法、装置、电子设备和计算机可读介质 | |
JP7262530B2 (ja) | 位置情報の生成方法、関連装置及びコンピュータプログラム製品 | |
CN107203961B (zh) | 一种表情迁移的方法及电子设备 | |
CN112802208B (zh) | 一种航站楼内三维可视化方法及装置 | |
CN111460937B (zh) | 脸部特征点的定位方法、装置、终端设备及存储介质 | |
CN116932119B (zh) | 虚拟屏幕显示方法、装置、设备及计算机可读存储介质 | |
WO2019042028A1 (zh) | 全视向的球体光场渲染方法 | |
CN113496506A (zh) | 图像处理方法、装置、设备及存储介质 | |
CN113538655B (zh) | 一种虚拟人脸的生成方法及设备 | |
CN113223137B (zh) | 透视投影人脸点云图的生成方法、装置及电子设备 | |
CN116128744A (zh) | 消除图像畸变的方法、电子设备、存储介质及车辆 | |
WO2018151612A1 (en) | Texture mapping system and method |
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 |