CN112102480B - 图像数据处理方法、装置、设备以及介质 - Google Patents
图像数据处理方法、装置、设备以及介质 Download PDFInfo
- Publication number
- CN112102480B CN112102480B CN202011001720.1A CN202011001720A CN112102480B CN 112102480 B CN112102480 B CN 112102480B CN 202011001720 A CN202011001720 A CN 202011001720A CN 112102480 B CN112102480 B CN 112102480B
- Authority
- CN
- China
- Prior art keywords
- dimensional
- vertex
- object model
- texture
- dimensional object
- 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
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/04—Texture mapping
Abstract
本申请实施例提供了一种图像数据处理方法、装置、设备以及介质,该方法包括:获取第一三维对象模型,第一三维对象模型为携带目标纹理图的三维模型;获取第二三维对象模型,第二三维对象模型为不携带目标纹理图的三维模型,第一三维对象模型中的对象形状与第二三维对象模型中的对象形状之间的形状差异满足形态相似条件;获取第二三维对象模型中的顶点在第一三维对象模型中的投影点,根据投影点确定第二三维对象模型中顶点的迁移纹理坐标;在目标纹理图中获取迁移纹理坐标对应的纹理数据,根据迁移纹理坐标对应的纹理数据以及第二三维对象模型,生成携带纹理数据的目标三维模型。采用本申请实施例,可以提高三维模型的纹理迁移效率。
Description
技术领域
本申请涉及互联网技术领域,尤其涉及一种图像数据处理方法、装置、设备以及介质。
背景技术
随着3D(三维)扫描技术的成熟及人脸识别技术的进步,人脸3D识别相较于传统二维人脸识别的优越性,尤其在计算机视觉、动画绘画设计、医学、安防、机器学习等领域。可以通过现有人脸模型(携带纹理)对模板模型(不携带纹理)进行纹理迁移,以构建新的3D人脸模型库。
现有的模型纹理迁移过程中,要求人脸模型的顶点与模板模型的顶点之间要求具有对应关系(如模板模型的顶点由人脸模型的顶点降维得到,或者人脸模型的顶点由模板模型的顶点插值得到),进而根据人脸模型中顶点的纹理坐标,对模板模型中的顶点添加纹理坐标,根据添加的纹理坐标来完成模板模型的纹理迁移过程。当需要构建的3D人脸模型的数量过多时,意味着需要为每个现有的人脸模型设计一个相对应的模板模型,才能将现有的人脸模型中的纹理迁移到模板模型中,进而导致纹理迁移的效率过低。
发明内容
本申请实施例提供一种图像数据处理方法、装置、设备以及介质,可以提高三维模型的纹理迁移效率。
本申请实施例一方面提供了一种图像数据处理方法,包括:
获取第一三维对象模型;第一三维对象模型为携带目标纹理图的三维模型;
获取第二三维对象模型;第二三维对象模型为不携带目标纹理图的三维模型,第一三维对象模型中的对象形状与第二三维对象模型中的对象形状之间的形状差异满足形态相似条件;
获取第二三维对象模型中的顶点在第一三维对象模型中的投影点,根据投影点确定第二三维对象模型中顶点的迁移纹理坐标;
在目标纹理图中获取迁移纹理坐标对应的纹理数据,根据迁移纹理坐标对应的纹理数据以及第二三维对象模型,生成携带纹理数据的目标三维模型。
其中,该方法还包括:
获取第一三维对象模型对应的初始纹理图;
若初始纹理图为分散类型的纹理图,则对第一三维对象模型中顶点的第一三维空间坐标进行降维,得到第一三维对象模型中顶点的二维空间坐标;
获取与二维空间坐标相对应的原始纹理坐标,根据原始纹理坐标对应的纹理数据,生成第一三维对象模型对应的目标纹理图。
其中,上述对第一三维对象模型中顶点的第一三维空间坐标进行降维,得到第一三维对象模型中顶点的二维空间坐标,包括:
根据第一三维对象模型中顶点的第一三维空间坐标以及邻域点参数,生成与第一三维对象模型相关联的邻接距离矩阵;
获取邻接距离矩阵中任意两个顶点之间的最短路径距离,根据最短路径距离将邻接距离矩阵转换为最小路径矩阵,根据最小路径矩阵确定第一三维对象模型中顶点的二维空间坐标。
其中,上述获取第二三维对象模型,包括:
获取三维模板模型,获取三维模板模型中顶点的第二三维空间坐标,根据第一三维对象模型中的对象形状,获取第二三维空间坐标对应的形变参数;
根据形变参数对第二三维空间坐标进行变形,得到更新后的第二三维空间坐标;
根据更新后的第二三维空间坐标,将三维模板模型更新为第二三维对象模型。
其中,上述获取第二三维对象模型中的顶点在第一三维对象模型中的投影点,根据投影点确定第二三维对象模型中顶点的迁移纹理坐标,包括:
获取第二三维对象模型中的顶点bi,确定顶点bi对应的顶点法线ni;i为小于或等于第二三维对象模型中所包含的顶点数量的正整数;
根据顶点法线ni,确定顶点bi在第一三维对象模型中的投影点ci;
在第一三维对象模型中确定投影点ci所属的目标平面块,根据目标平面块对应的原始纹理坐标,确定顶点bi对应的迁移纹理坐标。
其中,上述根据顶点法线ni,确定顶点bi在第一三维对象模型中的投影点ci,包括:
获取第一三维对象模型中顶点的第一三维空间坐标,根据第一三维空间坐标建立空间二分树;
根据空间二分树,在第一三维对象模型中获取与第二三维对象模型中的顶点bi具有最短距离的候选顶点,获取与候选顶点相邻的至少两个平面块;至少两个平面块包括目标平面块;
根据顶点法线ni,在至少两个平面块中确定顶点bi对应的投影直线;
当存在投影直线与至少两个平面块相交时,将投影直线与至少两个平面块的交点确定为投影点ci。
其中,上述获取第一三维对象模型中顶点的第一三维空间坐标,根据第一三维空间坐标建立空间二分树,包括:
获取第一三维对象模型中顶点的第一三维空间坐标,统计第一三维空间坐标在空间坐标系中每个坐标轴上的坐标方差,根据最大的坐标方差所对应的坐标轴,确定顶点分割方向;
对第一三维空间坐标在目标坐标轴上的坐标值进行排序,得到排序后的坐标值;目标坐标轴是指最大的坐标方差所对应的坐标轴;
根据排序后的坐标轴中的中间值和顶点分割方向,确定第一三维对象模型对应的第一顶点分割超平面,根据第一顶点分割超平面将第一三维对象模型中的顶点划分为第一子空间和第二子空间;
根据第一子空间中所包含的顶点,确定第二顶点分割超平面,根据第二顶点分割超平面将第一子空间划分为第三子空间和第四子空间,直至第三子空间和第四子空间中所包含的顶点的数量为一个;
根据第二子空间中所包含的顶点,确定第三顶点分割超平面,根据第三顶点分割超平面将第二子空间划分为第五子空间和第六子空间,直至第五子空间和第六子空间中所包含的顶点的数量为一个;
根据第三子空间、第四子空间、第五子空间以及第六子空间建立空间二分树。
其中,该方法还包括:
获取投影点ci与顶点bi之间的空间距离;
若空间距离大于距离阈值,则将投影点ci确定为无效投影点,确定顶点bi关联有空纹理坐标;空纹理坐标用于指示目标纹理图中不具备顶点bi的纹理数据;
若空间距离小于或等于距离阈值,则执行在第一三维对象模型中确定投影点ci所属的目标平面块步骤。
其中,上述根据目标平面块对应的原始纹理坐标,确定顶点bi对应的迁移纹理坐标,包括:
在第一三维对象模型中获取目标平面块对应的原始纹理坐标a1、原始纹理坐标a2以及原始纹理坐标a3,获取投影点ci对应的重心坐标(w1,w2,w3);
根据重心坐标(w1,w2,w3)分别与原始纹理坐标a1、原始纹理坐标a2以及原始纹理坐标a3之间的乘积,确定顶点bi对应的迁移纹理坐标。
其中,上述根据迁移纹理坐标对应的纹理数据以及第二三维对象模型,生成携带纹理数据的目标三维模型,包括:
根据迁移纹理坐标对应的纹理数据,确定第二三维对象模型中顶点与纹理数据之间的映射关系;
根据映射关系对第二三维对象模型中的顶点进行纹理渲染,生成携带纹理数据的目标三维模型。
本申请实施例一方面提供了一种图像数据处理装置,包括:
第一获取模块,用于获取第一三维对象模型;第一三维对象模型为携带目标纹理图的三维模型;
第二获取模块,用于获取第二三维对象模型;第二三维对象模型为不携带目标纹理图的三维模型,第一三维对象模型中的对象形状与第二三维对象模型中的对象形状之间的形状差异满足形态相似条件;
纹理坐标确定模块,用于获取第二三维对象模型中的顶点在第一三维对象模型中的投影点,根据投影点确定第二三维对象模型中顶点的迁移纹理坐标;
纹理迁移模块,用于在目标纹理图中获取迁移纹理坐标对应的纹理数据,根据迁移纹理坐标对应的纹理数据以及第二三维对象模型,生成携带纹理数据的目标三维模型。
其中,该装置还包括:
第三获取模块,用于获取第一三维对象模型对应的初始纹理图;
降维模块,用于若初始纹理图为分散类型的纹理图,则对第一三维对象模型中顶点的第一三维空间坐标进行降维,得到第一三维对象模型中顶点的二维空间坐标;
纹理图生成模块,用于获取与二维空间坐标相对应的原始纹理坐标,根据原始纹理坐标对应的纹理数据,生成第一三维对象模型对应的目标纹理图。
其中,降维模块包括:
第一矩阵生成单元,用于根据第一三维对象模型中顶点的第一三维空间坐标以及邻域点参数,生成与第一三维对象模型相关联的邻接距离矩阵;
第二矩阵生成单元,用于获取邻接距离矩阵中任意两个顶点之间的最短路径距离,根据最短路径距离将邻接距离矩阵转换为最小路径矩阵,根据最小路径矩阵确定第一三维对象模型中顶点的二维空间坐标。
其中,第二获取模块包括:
形变参数单元,用于获取三维模板模型,获取三维模板模型中顶点的第二三维空间坐标,根据第一三维对象模型中的对象形状,获取第二三维空间坐标对应的形变参数;
变形单元,用于根据形变参数对第二三维空间坐标进行变形,得到更新后的第二三维空间坐标;
模型更新单元,用于根据更新后的第二三维空间坐标,将三维模板模型更新为第二三维对象模型。
其中,纹理坐标确定模块包括:
顶点选择单元,用于获取第二三维对象模型中的顶点bi,确定顶点bi对应的顶点法线ni;i为小于或等于第二三维对象模型中所包含的顶点数量的正整数;
投影点确定单元,用于根据顶点法线ni,确定顶点bi在第一三维对象模型中的投影点ci;
坐标确定单元,用于在第一三维对象模型中确定投影点ci所属的目标平面块,根据目标平面块对应的原始纹理坐标,确定顶点bi对应的迁移纹理坐标。
其中,投影点确定单元包括:
二分树建立子单元,用于获取第一三维对象模型中顶点的第一三维空间坐标,根据第一三维空间坐标建立空间二分树;
候选顶点获取子单元,用于根据空间二分树,在第一三维对象模型中获取与第二三维对象模型中的顶点bi具有最短距离的候选顶点,获取与候选顶点相邻的至少两个平面块;至少两个平面块包括目标平面块;
投影直线确定子单元,用于根据顶点法线ni,在至少两个平面块中确定顶点bi对应的投影直线;
投影点条件确定子单元,用于当存在投影直线与至少两个平面块相交时,将投影直线与至少两个平面块的交点确定为投影点ci。
其中,二分树建立子单元具体用于:
获取第一三维对象模型中顶点的第一三维空间坐标,统计第一三维空间坐标在空间坐标系中每个坐标轴上的坐标方差,根据最大的坐标方差所对应的坐标轴,确定顶点分割方向;
对第一三维空间坐标在目标坐标轴上的坐标值进行排序,得到排序后的坐标值;目标坐标轴是指最大的坐标方差所对应的坐标轴;
根据排序后的坐标轴中的中间值和顶点分割方向,确定第一三维对象模型对应的第一顶点分割超平面,根据第一顶点分割超平面将第一三维对象模型中的顶点划分为第一子空间和第二子空间;
根据第一子空间中所包含的顶点,确定第二顶点分割超平面,根据第二顶点分割超平面将第一子空间划分为第三子空间和第四子空间,直至第三子空间和第四子空间中所包含的顶点的数量为一个;
根据第二子空间中所包含的顶点,确定第三顶点分割超平面,根据第三顶点分割超平面将第二子空间划分为第五子空间和第六子空间,直至第五子空间和第六子空间中所包含的顶点的数量为一个;
根据第三子空间、第四子空间、第五子空间以及第六子空间建立空间二分树。
其中,该装置还包括:
距离获取模块,用于获取投影点ci与顶点bi之间的空间距离;
距离判断模块,用于若空间距离大于距离阈值,则将投影点ci确定为无效投影点,确定顶点bi关联有空纹理坐标;空纹理坐标用于指示目标纹理图中不具备顶点bi的纹理数据;
该距离判断模块,还用于若空间距离小于或等于距离阈值,则执行在第一三维对象模型中确定投影点ci所属的目标平面块步骤。
其中,坐标确定单元包括:
原始坐标获取子单元,用于在第一三维对象模型中获取目标平面块对应的原始纹理坐标a1、原始纹理坐标a2以及原始纹理坐标a3,获取投影点ci对应的重心坐标(w1,w2,w3);
乘积子单元,用于根据重心坐标(w1,w2,w3)分别与原始纹理坐标a1、原始纹理坐标a2以及原始纹理坐标a3之间的乘积,确定顶点bi对应的迁移纹理坐标。
其中,纹理迁移模块包括:
映射关系确定单元,用于根据迁移纹理坐标对应的纹理数据,确定第二三维对象模型中顶点与纹理数据之间的映射关系;
渲染单元,用于根据映射关系对第二三维对象模型中的顶点进行纹理渲染,生成携带纹理数据的目标三维模型。
本申请实施例一方面提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行本申请实施例中一方面中方法的步骤。
本申请实施例一方面提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序包括程序指令,程序指令当被处理器执行时,执行如本申请实施例中一方面中方法的步骤。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述一方面的各种可选方式中提供的方法。
本申请实施例可以通过获取第一三维对象模型和第二三维对象模型,该第一三维对象模型为携带目标纹理图的三维模型,第二三维对象模型不携带目标纹理图的三维模型,且第一三维对象模型中的对象形状与第二三维对象模型中的对象形状之间的形状差异满足形态相似条件;获取第二三维对象模型中的顶点在第一三维对象模型中的投影点,根据该投影点确定第二三维对象模型中顶点的迁移纹理坐标,在目标纹理图中获取迁移纹理坐标对应的纹理数据,根据该纹理数据和第二三维对象模型,生成携带该纹理数据的目标三维模型。可见,在三维对象模型的纹理迁移过程中,对于携带目标纹理图的第一三维对象模型和不携带目标纹理图的第二三维对象模型,只需两个三维对象模型中的对象形状之间的形状差异满足形态相似条件,即只需两个三维对象模型在形状上具有相似性,就可以将第一三维对象模型中的目标纹理图自动迁移至第二三维对象模型,可以提高三维模型的纹理迁移效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种图像处理系统的架构示意图;
图2是本申请实施例提供的一种三维人脸模型的纹理迁移场景示意图;
图3是本申请实施例提供的一种图像数据处理方法的流程示意图;
图4是本申请实施例提供的一种三维对象模型的变形示意图;
图5是本申请实施例提供的一种图像数据处理方法的流程示意图;
图6是本申请实施例提供的一种纹理图连续化处理的示意图;
图7是本申请实施例提供的一种基于三维人脸模型的人脸识别场景示意图;
图8是本申请实施例提供的一种图像数据处理装置的结构示意图;
图9是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
本申请实施例提供的方案涉及人工智能领域下属的机器学习(MachineLearning,ML)。机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。本申请实施例具体涉及机器学习中的纹理迁移学习。
本申请实施例还涉及以下几个概念:
三维模型:三维模型是物体的多边形表示,可以用计算机或者其它视频设备进行显示,所显示的物体可以是现实世界中的实体,也可以是虚构的物体。其中,三维模型本身是不可见的,可以使用简单的线框、单一颜色、以及纹理等对三维模型进行描绘,以加强三维模型的视觉效果,即增强三维模型的真实性。
纹理:纹理既包括通常意义上物体表面的纹理(可以使物体表面呈现凹凸不平的沟纹),同时也包括在物体的光滑表面上的彩色图案(也可以称为纹理贴图),当把纹理按照特定的方式映射到物体三维模型的表面时可以使物体三维模型看上去更真实。可以通过物体纹理图(如对物体进行拍摄或者扫描所得到的图像)对物体三维模型的网格进行纹理映射(可以理解为渲染过程),可以形成携带纹理信息的物体三维模型。
网格:网格是指由物体点云数据(即通过3D扫描仪扫对物体进行扫描所得到的数据,点云数据可以包括三维坐标、激光反射强度和颜色信息等)所形成的三维模型网格,网格可以由三角形、四边形或者其它简单凸多边形组成,通过三维模型网格可以简化物体三维模型的渲染。
请参见图1,图1是本申请实施例提供的一种图像处理系统的架构示意图。如图1所示,该图像处理系统可以包括终端设备10a和服务器10b,该图像处理系统中所包含的终端设备和服务器的数量可以为一个或多个,本申请不对终端设备和服务器的数量进行限定。其中,终端设备10a可以是指用于显示图像数据(例如,目标对象扫描模型、不携带纹理的目标模板模型以及携带纹理的目标模板模型等)。终端设备10a可以包括:智能手机、平板电脑、笔记本电脑、掌上电脑、移动互联网设备(mobile internet device,MID)、可穿戴设备(例如智能手表、智能手环等)以及智能电视等具有图像显示功能的智能终端。服务器10b可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。终端设备10a和服务器10b之间可以进行直接或者间接地通信连接,本申请对终端设备10a和服务器10b之间的具体连接方式不做具体限定。
在图1所示的图像处理系统中,终端设备10a可以展示三维对象模型(例如,携带纹理信息的三维对象模型、不携带纹理信息的三维对象模型等)。服务器10b可以获取携带纹理信息的三维对象模型A(该三维对象模型A可以为根据三维点云数据)和不携带纹理信息的三维对象模型B(该三维对象模型B可以为预先设计好的三维模板模型),当三维对象模型A和三维对象模型B之间满足形状差异条件(例如,三维对象模型A与三维对象模型B之间的形状相似度大于70%)时,可以将三维对象模型A所携带的纹理信息迁移到三维对象模型B中,完成三维对象模型B的自动贴图过程。在本申请的纹理信息迁移中,三维对象模型A和三维对象模型B之间的顶点坐标无需具有对应关系,也无需三维对象模型A与三维对象模型B之间具有相同的拓扑结构,就可以完成三维对象模型A至三维对象模型B之间的纹理迁移过程,可以提高纹理信息的迁移效率。
请一并参见图2,图2是本申请实施例提供的一种三维人脸模型的纹理迁移场景示意图。以上述图1所示图像处理系统中的服务器10b为例,对本申请中三维人脸模型的纹理迁移过程进行描述。在构建三维人脸模型库时,可以通过3D扫描仪对人脸进行扫描,以获取针对人脸的点云数据20a,服务器10b在获取到3D扫描仪所获得的点云数据20a后,可以根据点云数据20a生成三维人脸模型20b;其中,三维人脸模型20b中可以包括人脸纹理信息和三维模型网格,人脸纹理信息可以包括三维人脸模型20b表面的彩色图案,如人脸皮肤、眼睛、眉毛、嘴唇以及脸部斑点等,三维模型网格是通过点云数据20a所生成的,该三维模型网格由三角片构成,每个三角片的顶点也可以称为三维人脸模型20b的顶点。
为了有效利用点云数据20a,可以预先设计模板模型20c,此时的模板模型20c不携带纹理,且模板模型20c中的三维模型网格与三维人脸模型20b中的三维模型网格,即模板模型20c与三维人脸模型20b具有不同的拓扑结构。其中,拓扑结构是指多边形网格模型的点线面布局、结构、连接情况。
服务器10a在获得模板模型20c后,可以使用形变算法对模板模型20c进行变形处理,使得变形后的模板模型20c与三维人脸模型20b之间的形状差异满足形态相似条件,将变形后的模板模型20c如图2所示的三维人脸模型20d。其中,形变算法可以包括但不限于:三维动画形变算法(Laplacian-Based Deformation)、自由变形技术(Free-FormDeformation)、骨骼蒙皮动画算法(Linear Blending Skinning)、卡通图像变形算法(Moving Least Squares)、高阶Laplace曲面形变算法(Polyharmonic Deformation),本申请对模板模型20c所使用的形变算法不做具体限定。例如,模板模型20c中所包含的人脸为偏胖的人脸形状,三维人脸模型20b中所包含的人脸为偏瘦的人脸形状,则可以通过形变算法对模板模型20c中的三维模型网格进行变形,即改变模板模型20c中顶点的三维空间坐标,将模板模型20c中的人脸形状由偏胖变形为偏瘦,使得变形后的模板模型20c(即三维人脸模型20d)中的人脸形状与三维人脸模型20b中人脸形状之间的形状差异满足形态相似条件(例如,三维人脸模型20d)中的人脸形状与三维人脸模型20b中的人脸形状之间的相似度达到70%),三维人脸模型20d同样为不携带纹理的模型。
为了将三维人脸模型20b中所携带的纹理迁移到三维人脸模型20d中,可以获取三维人脸模型20d中的所有顶点,对于三维人脸模型20d中的任意一个顶点A,服务器10b均可以计算得到顶点A的法线n,随后可以从该顶点A出发,沿顶点法线n方向对三维人脸模型20b的表面(可以理解为三维人脸模型中所包含的三角片,在三维模型中,每个三角片均可以表示为一个平面)作投影,得到顶点A在三维人脸模型20b中的投影点B;根据三维人脸模型20a中投影点B的重心坐标以及该投影点B在三维人脸模型20b中所属三角片的三个顶点纹理坐标,确定顶点A对应的纹理坐标。基于顶点A对应的纹理坐标的计算方式,可以确定三维人脸模型20d中每个顶点分别对应的纹理坐标。服务器10b可以根据每个顶点分别对应的纹理坐标,获取每个纹理坐标分别对应的纹理数据,根据每个纹理坐标所对应的纹理数据对该三维人脸模型20d进行渲染,可以生成携带纹理数据的三维人脸模型20e。可以理解的是,三维人脸模型20e中每个顶点的纹理坐标与三维人脸模型20b中顶点的纹理坐标属于同一个纹理空间,在纹理空间中的每个纹理坐标均可以对应相应的纹理数据(或者称为纹理像素),三维人脸模型20e中所携带的纹理数据与三维人脸20b中所携带的纹理数据相同。
在本申请实施例中,三维人脸模型20b与三维人脸模型20e仅仅在人脸形状上满足形态相似条件,即可自动实现将三维人脸模型20b中所携带的纹理迁移至三维人脸模型20e中,可以提高三维模型的纹理迁移效率。
请参见图3,图3是本申请实施例提供的一种图像数据处理方法的流程示意图。可以理解地,该图像数据处理方法可以由计算机设备执行,该计算机设备可以为终端设备,或者为服务器,或者为终端设备和服务器组成的系统,这里不做具体限定。如图3所示,该图像数据处理方法可以包括以下步骤:
步骤S101,获取第一三维对象模型;第一三维对象模型为携带目标纹理图的三维模型。
具体的,计算机设备可以通过扫描仪扫描物体对象,获取物体对象对应的点云数据,进而可以根据点云数据获取第一三维对象模型(如上述图2所对应实施例中的三维人脸模型20b),由于物体对象对应的点云数据是携带颜色值的,因此该第一三维对象模型可以为携带目标纹理图的三维模型。其中,物体对象可以为现实世界中的物体,也可以为虚拟物体,例如,该物体对象可以包括但不限于:人脸、建筑物、文物;目标纹理图可以包括第一三维对象模型中物体对象的对象纹理信息。
步骤S102,获取第二三维对象模型;第二三维对象模型为不携带目标纹理图的三维模型,第一三维对象模型中的对象形状与第二三维对象模型中的对象形状之间的形状差异满足形态相似条件。
具体的,为了将第一三维对象模型中所携带的目标纹理图迁移至另一个三维对象模型中,计算机设备可以预先设计针对物体对象的三维模板模型(如上述图2所对应实施例中的三维人脸模型20c),并使用形变算法对三维模板模型进行变形,将三维模板模型更新为第二三维对象模型(如上述图2所对应实施例中的三维人脸模型20d),此时的第二三维对象模型为不携带目标纹理图的三维模型,且第一三维对象模型中的对象形状与第二三维对象模型中的对象形状之间的形状差异满足形态相似条件。其中,形态相似条件可以是指第一三维对象模型和第二三维对象模型之间的形状相似度为相似度阈值(例如,相似度阈值为70%)。当第一三维对象模型与三维模板模型均为人脸模型时,此时的三维模板模型可以理解为预先设计的标准人脸模型,人脸具有基本相同的结构(如眼睛、鼻子、嘴巴等脸部特征)和近似相同的面部动作(如眼睛的睁闭、嘴巴的开合等),这些人脸的公共特征为建立标准人脸模型提供了生理基础。每个人还具有个性特征,如眼睛的大小、眉毛的粗细、鼻子的高低、脸部轮廓的形状等,这些个性特征使得每个人的人脸各不相同。因此,计算机设备在获取到三维模板模型后,需要对三维模板模型进行变形处理,使得变形后的三维模板模型(即第二三维对象模型)与第一三维对象模型之间形状差异满足形态相似条件,即第二三维对象模型和第一三维对象模型可以表示相同的人脸。
进一步地,计算机设备可以获取三维模板模型,获取三维模板模型中顶点的三维空间坐标(为了区别第一三维对象模型中顶点的三维空间坐标和三维模板模型中顶点的三维空间坐标,在本申请中,可以将第一三维对象模型中顶点的三维空间坐标称为第一三维空间坐标,将三维模板模型中顶点的三维空间坐标称为第二三维空间坐标),根据第一三维对象模型中的对象形状,获取第二三维空间坐标对应的形变参数,根据该形变参数对第二三维空间坐标进行变形,得到更新后的第二三维空间坐标,进而可以根据更新后的第二三维空间坐标,将三维模板模型更新为第二三维对象模型。
可选的,以三维动画形变算法(Laplacian-Based Deformation)为例,对三维模板模型进行变形处理的过程可以包括:三维模板模型可以包括由三角片组成的三维模型网格,计算机设备可以将三维模型网格中顶点的Laplace坐标(可以称为拉普拉斯坐标,或者均匀权重)作为三维模型网格的细节特征,Laplace坐标在三维模型网格形变前后的局部坐标系内不发生变化,对于三维模型网格中任意一个顶点vi的Laplace坐标为:其中,δ(vi)可以表示为顶点vi的Laplace坐标,N1(vi)可以表示为三维模型网格中顶点vi的1环邻域,di可以表示为顶点vi的1环邻域顶点数量,vj可以表示为顶点vi的1环邻域中的第j个顶点,i,j均为正整数。
计算机设备可以获取三维模板模型的三维模型网格,此时的三维模型网格可以称为初始三维模型网格,在初始三维模型网格中的顶点上建立局部坐标系,可以利用顶点的Laplace坐标对初始三维模型网格进行变形处理;进而可以在变形后的初始三维模型网格中的顶点上建立局部坐标系,根据形变前后Laplace坐标在局部坐标系内不变,估计变形后的初始三维模型网格中顶点的Laplace坐标,如:δ(vi)=αni+βuij+Y(ni×uij),δ(v′i)=αn′i+βu′ij+Y(n′i×u′ij),其中,ni和n′i可以表示为三维模型网格在形变前后顶点vi的法线方向,uij和u′ij为三维模型网格在形变前后边ij在顶点vi切平面内的投影方向,δ(vi)和δ(v′i)为三维模型网格在形变前后顶点vi的Laplace坐标,α和β为常量参数。根据三维模型网格变形后的Laplace坐标δ(v′i),求解三维模型网格变形后顶点vi的第二三维空间坐标。计算机设备可以根据三维模型网格中顶点变形后的第二三维空间坐标,进而可以根据变形后的第二三维空间坐标,将三维模板模型更新为第二三维对象模型,变形处理后的第二三维对象模型与第一三维对象模型之间的形状差异满足形态相似条件。
请一并参见图4,图4是本申请实施例提供的一种三维对象模型的变形示意图。如图4所示,计算机设备可以获取三维模板模型30a,可以从三维模板模型30a对应的三维模型网格中获取每个顶点,如可以从三维模板模型30a中获取包含顶点A、顶点B以及顶点C的三角块,以及包含顶点A、顶点C以及顶点D的三角块。计算机设备可以分别获取顶点A、顶点B、顶点C以及顶点D分别对应的三维顶点坐标,其中,顶点A的三维空间坐标为(x1,y1,z1),顶点B的三维空间坐标为(x2,y2,z2),顶点C的三维空间坐标为(x3,y3,z3),顶点D的三维空间坐标为(x4,y4,z4)。根据形变算法对三维模板模型30a进行变形后,可以将顶点A的三维空间坐标由(x1,y1,z1)更新为(x5,y5,z5),将顶点B的三维空间坐标由(x2,y2,z2)更新为(x6,y6,z6),将顶点C的三维空间坐标由(x3,y3,z3)更新为(x7,y7,z7),将顶点D的三维空间坐标由(x4,y4,z4)更新为(x8,y8,z8)。计算机设备可以根据更新后的三维空间坐标,将三维模板模型30a更新为第二三维模板模型30b。
步骤S103,获取第二三维对象模型中的顶点在第一三维对象模型中的投影点,根据投影点确定第二三维对象模型中顶点的迁移纹理坐标。
具体的,计算机设备可以获取第二三维对象模型中每个顶点分别在第一三维对象模型中的投影点,在第一三维对象模型对应的三维模型网格中确定该投影点所在的目标平面块;根据目标平面块在目标纹理图中的原始纹理坐标,以及投影点的重心坐标,确定第二三维对象模型中每个顶点分别对应的迁移纹理坐标。需要说明的是,第一三维对象模型中顶点的原始纹理坐标与第二三维对象模型中顶点的迁移纹理坐标属于同一纹理空间,根据第一三维对象模型中顶点的原始纹理坐标,可以确定第二三维对象模型中顶点的迁移纹理坐标。
步骤S104,在目标纹理图中获取迁移纹理坐标对应的纹理数据,根据迁移纹理坐标对应的纹理数据以及第二三维对象模型,生成携带纹理数据的目标三维模型。
具体的,计算机设备可以在目标纹理图中获取迁移纹理坐标对应的纹理数据,进而可以根据迁移纹理坐标对应的纹理数据,确定第二三维对象模型中顶点与纹理数据之间的映射关系,根据该映射关系对第二三维对象模型中的顶点进行纹理渲染,生成携带上述纹理数据的目标三维模型(如上述图2所对应实施例中的三维人脸模型20e)。其中,同一个纹理空间中的每个纹理数据(也可以称为纹理像素)均可以通过纹理坐标来声明,纹理坐标可以使用U、V来表示。
本申请实施例中,在三维对象模型的纹理迁移过程中,对于携带目标纹理图的第一三维对象模型和不携带目标纹理图的第二三维对象模型,只需两个三维对象模型中的对象形状之间的形状差异满足形态相似条件,即只需两个三维对象模型在形状上具有相似性,就可以将第一三维对象模型中的目标纹理图自动迁移至第二三维对象模型,可以提高三维模型的纹理迁移效率。
请参见图5,图5是本申请实施例提供的一种图像数据处理方法的流程示意图。可以理解地,该图像数据处理方法可以由计算机设备执行,该计算机设备可以为终端设备,或者为服务器,或者为终端设备和服务器组成的系统,这里不做具体限定。如图5所示,该图像数据处理方法可以包括以下步骤:
步骤S201,获取第一三维对象模型,获取第一三维对象模型对应的初始纹理图。
具体的,计算机设备可以根据点云数据获取第一三维对象模型,第一三维对象模型的获取过程可以参见上述图3所对应实施例中的步骤S101,这里不再进行赘述。对于携带纹理信息的第一三维对象模型,第一三维对象模型中的每个顶点均对应有三维空间坐标和纹理坐标,每个顶点的三维空间坐标有且仅有一个,每个顶点的纹理坐标可以为一个或者多个。计算机设备可以获取第一三维对象模型对应的初始纹理图,当第一三维对象模型对应的初始纹理图为分散类型的纹理图时,表明第一三维对象模型中的同一个顶点在不同的三角块中可以对应不同的纹理坐标,即在第一三维对象模型中存在相邻的两个三角块分别属于初始纹理图中的两片区域,若使用第一三维对象模型对应的初始纹理图对第二三维对象模型进行渲染,则渲染生成的目标三维模型中所包含的纹理可能存在重叠,导致第二三维对象模型的纹理迁移效果较差。当第一三维对象模型对应的初始纹理图为连续类型的纹理图时,表明第一三维对象模型中的同一个顶点均具有一个纹理坐标,可以直接使用第一三维对象模型对应的初始纹理图对第二三维对象模型进行渲染,得到携带纹理的目标三维模型。
步骤S202,若初始纹理图为分散类型的纹理图,则对第一三维对象模型中顶点的第一三维空间坐标进行降维,得到第一三维对象模型中顶点的二维空间坐标。
具体的,若初始纹理图为分散类型的纹理图,则计算机设备可以使用降维算法对第一三维对象模型中顶点第一三维空间坐标进行降维,得到第一三维对象模型中顶点的二维空间坐标。其中,降维算法可以包括但不限于:主成分分析(Principal ComponentAnalysis,PCA)、多维缩放(Multi-Dimensional Scaling,MDS)、线性判别分析(LinearDiscriminant Analysis,LDA)、等度量映射(Isomap)、局部线性嵌入(Locally LinearEmbedding,LLE)。
进一步地,以Isomap算法为例,对第一三维空间坐标的降维过程可以包括:若初始纹理图为分散类型的纹理图,则计算机设备可以根据第一三维对象模型中顶点的第一三维空间坐标以及邻域点参数,生成与第一三维对象模型相关联的邻接距离矩阵,获取该邻接距离矩阵中任意两个顶点之间的最短路径距离,根据该最短路径距离将邻接距离矩阵转换为最小路径矩阵,根据最小路径矩阵确定第一三维对象模型中顶点的二维空间坐标。
计算机设备可以调用python(一种面向对象的动态类型的计算机程序设计语言)中sklearn库(包含分类、回归、聚类以及降维算法的数据库)的Isomap.fit_transform函数(用于实现Isomap算法的函数),对第一三维空间坐标进行降维处理。计算机设备可以计算第一三维对象模型中任意两个临近顶点ai和aj之间的欧氏距离dx(ai,aj),从第一三维对象模型中获取与选中顶点距离最近的K个顶点,或者以距离阈值为半径的圆区域内的所有顶点作为选中顶点的临近顶点(此处的K个顶点或距离阈值可以称为临近点参数),根据欧氏距离可以将第一三维对象模型的第一三维空间坐标构建为一个邻接距离矩阵,该邻接距离矩阵可以用于表征第一三维对象模型中的顶点临近关系。计算机设备可以计算第一三维对象模型中任意两个顶点之间的最短路径距离,根据该最短路径距离将上述邻接距离矩阵转换为最小路径矩阵。进而计算机设备可以使用MDS算法在三维空间中构造每个顶点的嵌入坐标向量,通过最小化代价函数获取二维空间中的任意两个嵌入坐标向量,根据求解代价函数的全局最优解确定第一三维对象模型中顶点的二维空间坐标。
步骤S203,获取与二维空间坐标相对应的原始纹理坐标,根据原始纹理坐标对应的纹理数据,生成第一三维对象模型对应的目标纹理图。
具体的,计算机设备可以获取与二维空间坐标相对应的原始纹理坐标,根据纹理空间中该原始纹理坐标对应的纹理数据,生成第一三维对象模型对应的目标纹理图。换言之,降维后的二维空间坐标所对应的顶点均会对应有唯一的原始纹理坐标,计算机设备可以使用正交投影的方式,根据原始纹理坐标对应的纹理数据进行渲染,生成目标纹理图。需要说明的是,对于第一三维对象模型而言,属于分散类型的初始纹理图或者属于连续类型的目标纹理图,在视觉展示效果上的差异可以忽略不计,但是对于即将进行纹理迁移的第二三维对象模型而言,使用属于分散类型的初始纹理图进行纹理迁移,或者使用属于连续类型的目标纹理图进行纹理迁移,在三维模型的视觉展示效果上的差异较大,且使用属于连续类型的目标纹理图进行纹理迁移后的展示效果,远远优于使用属于分散类型的初始纹理图进行纹理迁移后的展示效果。
请一并参见图6,图6是本申请实施例提供的一种纹理图连续化处理的示意图。如图6所示,计算机设备获取到的第一三维对象模型所对应的初始纹理图如纹理图40a,在纹理图40a为分散类型的纹理图,即纹理图40a中包括多个纹理区域,每个纹理区域中所包含的人脸纹理均为局部纹理,且不同的纹理区域中可以包含相同的纹理信息,如纹理区域40c仅包含人脸对象左半边脸,纹理区域40d仅包含人脸对象的左耳部分等,左耳部分的纹理所对应的顶点在纹理区域40c和纹理区域40d中具有不同的纹理坐标。
为了增强第二三维对象模型的纹理迁移效果,计算机设备可以对纹理图40a进行连续化处理,得到纹理图40b(即上述目标纹理图),其中,纹理图40a的连续化处理过程可以参见上述步骤S202-步骤S203的描述。这不再进行赘述。
步骤S204,获取第二三维对象模型;第二三维对象模型为不携带目标纹理图的三维模型,第一三维对象模型中的对象形状与第二三维对象模型中的对象形状之间的形状差异满足形态相似条件。
其中,步骤S204的具体实现方式可以参见上述图3所对应实施例中的步骤S102,这里不再进行赘述。
步骤S205,获取第二三维对象模型中的顶点bi,确定顶点bi对应的顶点法线ni;i为小于或等于第二三维对象模型中所包含的顶点数量的正整数。
步骤S206,根据顶点法线ni,确定顶点bi在第一三维对象模型中的投影点ci。
具体的,计算机设备可以从第二三维对象模型中获取任意一个顶点bi(i为正整数),确定该顶点bi对应的顶点法线ni,沿顶点法线ni的方向,在第一三维模型的平面块作投影,并通过投影直线与第一三维模型中每个平面块的相交情况,确定顶点bi在第一三维对象模型中的投影点ci。
可以理解的是,在投影过程中,若依次确定第一三维对象模型中每个平面块与顶点bi所对应的投影直线之间的相交情况,来确定投影点ci的过程是非常复杂的,因此本申请实施例可以通过建立空间二分树(例如,KD树)来确定顶点bi对应的投影点ci。计算机设备确定投影点ci的具体过程可以包括:计算机设备可以获取第一三维对象模型中顶点的第一三维空间坐标,根据第一三维空间坐标建立空间二分树;通过在空间二分树中进行搜索,可以从第一三维对象模型中获取与第二三维对象模型中的顶点bi具有最短距离的候选顶点,进而可以获取与候选顶点相邻的至少两个平面块;根据顶点法线ni的方向,可以在至少两个平面块中依次确定顶点bi所对应的投影直线;当存在投影直线与至少两个平面块相交时,可以将投影直线与至少两个平面块的交点确定为投影点ci。计算机设备可以获取该投影点ci与顶点bi之间的空间距离,若空间距离大于距离阈值(距离阈值可以是指预先设置的距离数值),则可以将投影点ci确定为无效投影点,即可以认为第一三维度向模型中没有与顶点bi相对应的顶点,此时可以确定顶点bi关联有空纹理坐标,该空纹理坐标可以用于指示目标纹理图中不具备顶点bi的纹理数据,即将顶点bi对应的迁移纹理坐标置空;若空间距离小于或等于距离阈值,则可以将投影点ci确定为有效投影点,即可以将投影点ci作为顶点bi在第一三维对象模型中的对应顶点,根据投影点ci确定顶点bi对应的迁移纹理坐标。可选的,当投影直线与至少两个平面块均不相交时,可以确定顶点bi在第一三维度向模型中不存在投影点,可以表明第一三维度向模型中没有与顶点bi相对应的顶点,此时可以将顶点bi对应的迁移纹理坐标置空。
进一步地,建立空间二分树的具体过程可以包括:计算机设备可以获取第一三维对象模型中顶点的第一三维空间坐标,统计第一三维空间坐标在空间坐标系中每个坐标轴上的坐标方差,根据最大的坐标方差所对应的坐标轴,确定顶点分割方向;对第一三维空间坐标在目标坐标轴上的坐标值进行排序,得到排序后的坐标值;目标坐标轴是指最大的坐标方差所对应的坐标轴;根据排序后的坐标轴中的中间值和顶点分割方向,确定第一三维对象模型对应的第一顶点分割超平面,根据第一顶点分割超平面将第一三维对象模型中的顶点划分为第一子空间和第二子空间;根据第一子空间中所包含的顶点,确定第二顶点分割超平面,根据第二顶点分割超平面将第一子空间划分为第三子空间和第四子空间,直至第三子空间和第四子空间中所包含的顶点的数量为一个;根据第二子空间中所包含的顶点,确定第三顶点分割超平面,根据第三顶点分割超平面将第二子空间划分为第五子空间和第六子空间,直至第五子空间和第六子空间中所包含的顶点的数量为一个;根据第三子空间、第四子空间、第五子空间以及第六子空间建立空间二分树。换言之,计算机设备可以通过每个顶点分别对应的第一三维空间坐标,在三维空间中对第一三维对象模型中的所有顶点进行划分,得到空间二分树,该空间二分树可以用于三维空间关键数据的搜索(例如,范围搜索和最近邻搜索等)。
举例来说,假设第一三维对象模型中包括6个顶点,该6个顶点分别对应的第一三维空间坐标可以表示为:顶点A的三维空间坐标为(x1,y1,z1),顶点8的三维空间坐标为(x2,y2,z2),顶点C的三维空间坐标为(x3,y3,z3),顶点D的三维空间坐标为(x4,y4,z4),顶点E的三维空间坐标为(x5,y5,z5),顶点F的三维空间坐标为(x6,y6,z6),计算得到上述6个顶点在x坐标轴上的坐标方差为:方差1,在y坐标轴上的坐标方差为:方差2,在z坐标轴上的坐标方差为:方差3,当方差1>方差2>方差3时,可以将x轴的垂直方向确定为顶点分割方向,进而可以对x1,x2,x3,x4,x5,x6进行大小排序,从排序后的x坐标值中选出中值x4,进而可以将顶点D(x4,y4,z4)作为节点,即此时通过顶点D且垂直于x坐标轴的平面可以称为第一顶点分割平面,因此可以将x坐标值小于x4的顶点划分为同一个子空间,如x1,x2,x3均小于x4时,可以将顶点A、顶点B以及顶点C划分至第一子空间,将顶点E和顶点F划分至第二子空间,即第一子空间包括:顶点A(x1,y1,z1)、顶点B(x2,y2,z2)、顶点C(x3,y3,z3),第二子空间包括:顶点E(x5,y5,z5),顶点F(x6,y6,z6);进而可以根据第一子空间中所包含的顶点A(x1,y1,z1)、顶点B(x2,y2,z2)以及顶点C(x3,y3,z3),可以确定顶点A、顶点B以及顶点C3个顶点分别在x坐标轴、y坐标轴以及z坐标轴上的坐标方差,当y坐标轴上的坐标方差最大,且y1<y2<y3时,可以将垂直于y坐标轴且通过顶点B(x2,y2,z2)的平面称为第二顶点分割平面,将顶点A划分至第三子空间,将顶点B划分至第四子空间,此时的第三子空间和第四子空间中均只包含一个顶点;当然,计算机设备可以获取顶点E和顶点F分别在x坐标轴、y坐标轴以及z坐标轴上的坐标方差,当y坐标轴上的坐标方差最大,且y5<y6时,可以将垂直于y坐标轴且通过顶点F(x6,y6,z6)的平面称为第二顶点分割平面,可以将顶点E(x5,y5,z5)划分至第五子空间,此时的第五子空间中仅包含一个顶点,根据上述第一子空间、第二子空间、第三子空间、第四子空间以及第五子空间,可以建立针对第一三维对象模型的空间二分树(KD树)。
步骤S207,在第一三维对象模型中确定投影点ci所属的目标平面块,根据目标平面块对应的原始纹理坐标,确定顶点bi对应的迁移纹理坐标。
具体的,计算机设备可以在第一三维对象模型中确定投影点ci所属的目标平面块(此处的目标平面块可以为三角块),该目标平面块属于上述至少两个平面块,可以在第一三维对象模型中,获取目标平面块分别对应的原始纹理坐标a1、原始纹理坐标a2以及原始纹理坐标a3,获取投影点ci对应的重心坐标(w1,w2,w3);根据重心坐标(w1,w2,w3)分别与原始纹理坐标a1、原始纹理坐标a2以及原始纹理坐标a3之间的乘积,确定顶点bi对应的迁移纹理坐标。例如,目标平面块可以为三角块,此时的目标平面块可以包括三个顶点,该三个顶点分别对应的原始纹理坐标可以表示为二维数据,如上述原始纹理坐标a1可以表示为(u1,v1),原始纹理坐标a2可以表示为(u2,v2),原始纹理坐标a3可以表示为(u3,v3),根据投影点ci对应的重心坐标(w1,w2,w3),可以计算得到顶点bi对应的迁移纹理坐标为:(w1u1+w2u2+w3u3,w1v1+w2v2+w3v3)。由于第一三维对象模型对应的目标纹理图为连续类型的纹理图,因此,根据第一三维对象模型中的投影点以及目标平面块的顶点所对应的原始纹理坐标计算得到的迁移纹理坐标,可以得到连续的纹理区域。换言之,第二三维对象模型所对应的纹理图属于连续类型。
步骤S208,在目标纹理图中获取迁移纹理坐标对应的纹理数据,根据迁移纹理坐标对应的纹理数据以及第二三维对象模型,生成携带纹理数据的目标三维模型。
其中,步骤S208的具体实现方式可以参见上述图3所对应实施例中的步骤S104,这里不再进行赘述。
下面以目标三维模型为三维人脸模型为例,对目标三维模型的应用进行描述。计算机设备在生成携带纹理数据的目标三维模型后,可以将目标三维模型添加至三维人脸模型库,该三维人脸模型库包括至少两个三维人脸模型,每个三维人脸模型均携带纹理信息。三维人脸模型可以应用在人脸识别、可视电话、动画制作、医学模拟手术、虚拟现实等领域中。
人脸识别是生物特征鉴别技术的一个主要方向。由于人脸图像受到光照和姿势表情的影响,使用人脸图像进行人脸识别所得到的准确度会受到限制。与二维信息(人脸图像)相比,三维信息可以更准确地描述人的脸部特征,且三维信息不受光照的影响,利用三维信息还可以消除姿势的影响,将三维人脸模型应用在人脸识别中,可以有效提高人脸识别的准确度。
可视电话要求语音和用户的表情和相貌都真实地展示给远程用户,电话通信线路可能由于带宽的限制,无法同时传送语音数据和图像数据。将三维人脸模型应用在可视电话中,可以将用户脸部的静态特征(例如,用户的脸部轮廓特征、头发颜色、脸部纹理等特征)在初始化时传输一次,而在可视电话的交流过程中,可以仅传输动态特征(例如,眼睛睁闭、嘴巴的开合、皱眉等特征)和语音数据,通过动态特征与初始化时传输静态特征可以构建用户人脸,可以减少线路中的数据流量。与此原理类似,三维人脸模型还可以应用于远程视频会议和视频通话中。
请一并参见图7,图7是本申请实施例提供的一种基于三维人脸模型的人脸识别场景示意图。如图7所示,在人脸识别场景中,计算机设备可以获取待识别三维人脸50a,该待识别三维人脸50a可以为计算机设备根据人脸图像信息合成的三维人脸模型。轮廓线可以表达人脸的细节特征,因此对待识别三维人脸50a进行人脸识别时,计算机设备可以在待识别三维人脸50a中定位感兴趣的点(也可以称为基准点),通过基准点之间的关系在待识别三维人脸50a中提取轮廓线,如可以提取待识别三维人脸50a对应的正面轮廓线50b和侧面轮廓线50c。可选的,计算机设备还可以从待识别三维人脸50a中提取其余对称性轮廓线,如眼睛部位的轮廓线,嘴巴部位的轮廓线,鼻子部位的轮廓线等。
为了提高人脸识别的准确度,计算机设备在待识别三维人脸50a中提取轮廓线的同时,还可以对待识别三维人脸50a中的关键部位(例如,眉毛、眼睛、鼻子以及嘴巴等部位)进行检测,提取关键部位的特征信息。如图7所示,计算机设备可以检测待识别三维人脸50a中的眉毛、眼睛、鼻子以及嘴巴等器官轮廓的边缘,根据轮廓边缘定位并提取与眉毛、眼睛、鼻子以及嘴巴等器官相关联的特征点,生成包含人脸特征点的三维人脸50d,即计算机设备可以在待识别三维人脸50a中对眉毛、眼睛、鼻子以及嘴巴等器官区域进行定位,并提取局部器官对应的特征点信息。
进一步地,计算机设备可以将提取到的正面轮廓线50b和侧面轮廓线50c,与提取到的人脸特征点信息进行特征融合,得到用于表征待识别三维人脸50a的人脸特征信息。计算机设备可以获取三维人脸数据库50e,该三维人脸数据库50e中可以包括多个真实三维人脸(例如,失踪人口对应的三维人脸模型),如三维人脸模型50f,三维人脸模型50g,三维人脸模型50h等。将人脸特征信息与三维人脸数据库50e中所包含的三维人脸模型进行匹配,得到待识别三维人脸50a与三维人脸数据库50e中每个三维人脸模型之间的匹配度,可以将匹配度最大的三维人脸模型作为待识别三维人脸50a的人脸识别结果。将三维人脸模型应用在人脸识别中,可以消除光照和姿态的影响,进而可以提高人脸识别的准确度。
本申请实施例中,在三维对象模型的纹理迁移过程中,对于携带目标纹理图的第一三维对象模型和不携带目标纹理图的第二三维对象模型,只需两个三维对象模型中的对象形状之间的形状差异满足形态相似条件,即只需两个三维对象模型在形状上具有相似性,就可以将第一三维对象模型中的目标纹理图自动迁移至第二三维对象模型,可以提高三维模型的纹理迁移效率;通过对第一三维模型对应的纹理图进行连续化处理,可以提高三维模型的纹理迁移展示效果。
请参见图8,图8是本申请实施例提供的一种图像数据处理装置的结构示意图。如图8所示,该图像数据处理装置1可以包括:第一获取模块11,第二获取模块12,纹理坐标确定模块13,纹理迁移模块14;
第一获取模块11,用于获取第一三维对象模型;第一三维对象模型为携带目标纹理图的三维模型;
第二获取模块12,用于获取第二三维对象模型;第二三维对象模型为不携带目标纹理图的三维模型,第一三维对象模型中的对象形状与第二三维对象模型中的对象形状之间的形状差异满足形态相似条件;
纹理坐标确定模块13,用于获取第二三维对象模型中的顶点在第一三维对象模型中的投影点,根据投影点确定第二三维对象模型中顶点的迁移纹理坐标;
纹理迁移模块14,用于在目标纹理图中获取迁移纹理坐标对应的纹理数据,根据迁移纹理坐标对应的纹理数据以及第二三维对象模型,生成携带纹理数据的目标三维模型。
其中,第一获取模块11,第二获取模块12,纹理坐标确定模块13,纹理迁移模块14的具体功能实现方式可以参见上述图3所对应实施例中的步骤S101-步骤S104,这里不再进行赘述。
请一并参见图8,该图像数据处理装置1还可以包括:第三获取模块15,降维模块16,纹理图生成模块17;
第三获取模块15,用于获取第一三维对象模型对应的初始纹理图;
降维模块16,用于若初始纹理图为分散类型的纹理图,则对第一三维对象模型中顶点的第一三维空间坐标进行降维,得到第一三维对象模型中顶点的二维空间坐标;
纹理图生成模块17,用于获取与二维空间坐标相对应的原始纹理坐标,根据原始纹理坐标对应的纹理数据,生成第一三维对象模型对应的目标纹理图。
其中,第三获取模块15,降维模块16,纹理图生成模块17的具体功能实现方式可以参见上述图5所对应实施例中的步骤S202-步骤S203,这里不再进行赘述。
请一并参见图8,降维模块16可以包括:第一矩阵生成单元161,第二矩阵生成单元162;
第一矩阵生成单元161,用于根据第一三维对象模型中顶点的第一三维空间坐标以及邻域点参数,生成与第一三维对象模型相关联的邻接距离矩阵;
第二矩阵生成单元162,用于获取邻接距离矩阵中任意两个顶点之间的最短路径距离,根据最短路径距离将邻接距离矩阵转换为最小路径矩阵,根据最小路径矩阵确定第一三维对象模型中顶点的二维空间坐标。
其中,第一矩阵生成单元161,第二矩阵生成单元162的具体功能实现方式可以参见上述图5所对应实施例中的步骤S202,这里不再进行赘述。
请一并参见图8,第二获取模块12可以包括:形变参数单元121,变形单元122,模型更新单元123;
形变参数单元121,用于获取三维模板模型,获取三维模板模型中顶点的第二三维空间坐标,根据第一三维对象模型中的对象形状,获取第二三维空间坐标对应的形变参数;
变形单元122,用于根据形变参数对第二三维空间坐标进行变形,得到更新后的第二三维空间坐标;
模型更新单元123,用于根据更新后的第二三维空间坐标,将三维模板模型更新为第二三维对象模型。
其中,形变参数单元121,变形单元122,模型更新单元123的具体功能实现方式可以参见上述图3所对应实施例中的步骤S102,这里不再进行赘述。
请一并参见图8,纹理坐标确定模块13可以包括:顶点选择单元131,投影点确定单元132,坐标确定单元133;
顶点选择单元131,用于获取第二三维对象模型中的顶点bi,确定顶点bi对应的顶点法线ni;i为小于或等于第二三维对象模型中所包含的顶点数量的正整数;
投影点确定单元132,用于根据顶点法线ni,确定顶点bi在第一三维对象模型中的投影点ci;
坐标确定单元133,用于在第一三维对象模型中确定投影点ci所属的目标平面块,根据目标平面块对应的原始纹理坐标,确定顶点bi对应的迁移纹理坐标。
其中,顶点选择单元131,投影点确定单元132,坐标确定单元133的具体功能实现方式可以参见上述图5所对应实施例中的步骤S207,这里不再进行赘述。
请一并参见图8,投影点确定单元132可以包括:二分树建立子单元1321,候选顶点获取子单元1322,投影直线确定子单元1323,投影点条件确定子单元1324;
二分树建立子单元1321,用于获取第一三维对象模型中顶点的第一三维空间坐标,根据第一三维空间坐标建立空间二分树;
候选顶点获取子单元1322,用于根据空间二分树,在第一三维对象模型中获取与第二三维对象模型中的顶点bi具有最短距离的候选顶点,获取与候选顶点相邻的至少两个平面块;至少两个平面块包括目标平面块;
投影直线确定子单元1323,用于根据顶点法线ni,在至少两个平面块中确定顶点bi对应的投影直线;
投影点条件确定子单元1324,用于当存在投影直线与至少两个平面块相交时,将投影直线与至少两个平面块的交点确定为投影点ci。
其中,二分树建立子单元1231可以具体用于:
获取第一三维对象模型中顶点的第一三维空间坐标,统计第一三维空间坐标在空间坐标系中每个坐标轴上的坐标方差,根据最大的坐标方差所对应的坐标轴,确定顶点分割方向;
对第一三维空间坐标在目标坐标轴上的坐标值进行排序,得到排序后的坐标值;目标坐标轴是指最大的坐标方差所对应的坐标轴;
根据排序后的坐标轴中的中间值和顶点分割方向,确定第一三维对象模型对应的第一顶点分割超平面,根据第一顶点分割超平面将第一三维对象模型中的顶点划分为第一子空间和第二子空间;
根据第一子空间中所包含的顶点,确定第二顶点分割超平面,根据第二顶点分割超平面将第一子空间划分为第三子空间和第四子空间,直至第三子空间和第四子空间中所包含的顶点的数量为一个;
根据第二子空间中所包含的顶点,确定第三顶点分割超平面,根据第三顶点分割超平面将第二子空间划分为第五子空间和第六子空间,直至第五子空间和第六子空间中所包含的顶点的数量为一个;
根据第三子空间、第四子空间、第五子空间以及第六子空间建立空间二分树。
其中,二分树建立子单元1321,候选顶点获取子单元1322,投影直线确定子单元1323,投影点条件确定子单元1324的具体功能实现方式可以参见上述图5所对应实施例中的步骤S207,这里不再进行赘述。
请一并参见图8,该图像数据处理装置1还可以包括:距离获取模块18,距离判断模块19;
距离获取模块18,用于获取投影点ci与顶点bi之间的空间距离;
距离判断模块19,用于若空间距离大于距离阈值,则将投影点ci确定为无效投影点,确定顶点bi关联有空纹理坐标;空纹理坐标用于指示目标纹理图中不具备顶点bi的纹理数据;
该距离判断模块19,还用于若空间距离小于或等于距离阈值,则执行在第一三维对象模型中确定投影点ci所属的目标平面块步骤。
其中,距离获取模块18,距离判断模块19的具体功能实现方式可以参见上述图5所对应实施例中的步骤S207,这里不再进行赘述。
请一并参见图8,坐标确定单元133可以包括:原始坐标获取子单元131,乘积子单元132;
原始坐标获取子单元131,用于在第一三维对象模型中获取目标平面块对应的原始纹理坐标a1、原始纹理坐标a2以及原始纹理坐标a3,获取投影点ci对应的重心坐标(w1,w2,w3);
乘积子单元132,用于根据重心坐标(w1,w2,w3)分别与原始纹理坐标a1、原始纹理坐标a2以及原始纹理坐标a3之间的乘积,确定顶点bi对应的迁移纹理坐标。
其中,原始坐标获取子单元131,乘积子单元132的具体功能实现方式可以参见上述图5所对应实施例中的步骤S207,这里不再进行赘述。
请一并参见图8,纹理迁移模块14可以包括:映射关系确定单元141,渲染单元142;
映射关系确定单元141,用于根据迁移纹理坐标对应的纹理数据,确定第二三维对象模型中顶点与纹理数据之间的映射关系;
渲染单元142,用于根据映射关系对第二三维对象模型中的顶点进行纹理渲染,生成携带纹理数据的目标三维模型。
其中,映射关系确定单元141,渲染单元142的具体功能实现方式可以参见上述图3所对应实施例中的步骤S104,这里不再进行赘述。
本申请实施例中,在三维对象模型的纹理迁移过程中,对于携带目标纹理图的第一三维对象模型和不携带目标纹理图的第二三维对象模型,只需两个三维对象模型中的对象形状之间的形状差异满足形态相似条件,即只需两个三维对象模型在形状上具有相似性,就可以将第一三维对象模型中的目标纹理图自动迁移至第二三维对象模型,可以提高三维模型的纹理迁移效率;通过对第一三维模型对应的纹理图进行连续化处理,可以提高三维模型的纹理迁移展示效果。
请参见图9,图9是本申请实施例提供的一种计算机设备的结构示意图。如图9所示,该计算机设备1000可以包括:处理器1001,网络接口1004和存储器1005,此外,上述计算机设备1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。可选的,网络接口1004可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器1005还可以是至少一个位于远离前述处理器1001的存储装置。如图9所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在如图9所示的计算机设备1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
获取第一三维对象模型;第一三维对象模型为携带目标纹理图的三维模型;
获取第二三维对象模型;第二三维对象模型为不携带目标纹理图的三维模型,第一三维对象模型中的对象形状与第二三维对象模型中的对象形状之间的形状差异满足形态相似条件;
获取第二三维对象模型中的顶点在第一三维对象模型中的投影点,根据投影点确定第二三维对象模型中顶点的迁移纹理坐标;
在目标纹理图中获取迁移纹理坐标对应的纹理数据,根据迁移纹理坐标对应的纹理数据以及第二三维对象模型,生成携带纹理数据的目标三维模型。
应当理解,本申请实施例中所描述的计算机设备1000可执行前文图3或图5所对应实施例中对图像数据处理方法的描述,也可执行前文图8所对应实施例中对图像数据处理装置1的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且计算机可读存储介质中存储有前文提及的图像数据处理装置1所执行的计算机程序,且计算机程序包括程序指令,当处理器执行程序指令时,能够执行前文图3或图5所对应实施例中对图像数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。作为示例,程序指令可被部署在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行,分布在多个地点且通过通信网络互连的多个计算设备可以组成区块链系统。
此外,需要说明的是:本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或者计算机程序可以包括计算机指令,该计算机指令可以存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器可以执行该计算机指令,使得该计算机设备执行前文图3或图5所对应实施例中对图像数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机程序产品或者计算机程序实施例中未披露的技术细节,请参照本申请方法实施例的描述。
需要说明的是,对于前述的各个方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某一些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
本申请实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
本申请实施例装置中的模块可以根据实际需要进行合并、划分和删减。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,存储介质可为磁碟、光盘、只读存储存储器(Read-Only Memory,ROM)或随机存储存储器(Random Access Memory,RAM)等。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (12)
1.一种图像数据处理方法,其特征在于,包括:
获取第一三维对象模型,获取所述第一三维对象模型对应的初始纹理图;
若所述初始纹理图为分散类型的纹理图,则对所述第一三维对象模型中顶点的第一三维空间坐标进行降维,得到所述第一三维对象模型中顶点的二维空间坐标;
获取与所述二维空间坐标相对应的原始纹理坐标,根据所述原始纹理坐标对应的纹理数据,生成所述第一三维对象模型对应的目标纹理图;
获取第二三维对象模型;所述第二三维对象模型为不携带目标纹理图的三维模型,所述第一三维对象模型中的对象形状与所述第二三维对象模型中的对象形状之间的形状差异满足形态相似条件;
获取所述第二三维对象模型中的顶点在所述第一三维对象模型中的投影点,根据所述投影点确定所述第二三维对象模型中顶点的迁移纹理坐标;
在所述目标纹理图中获取所述迁移纹理坐标对应的纹理数据,根据所述迁移纹理坐标对应的纹理数据以及所述第二三维对象模型,生成携带所述纹理数据的目标三维模型。
2.根据权利要求1所述的方法,其特征在于,所述对所述第一三维对象模型中顶点的第一三维空间坐标进行降维,得到所述第一三维对象模型中顶点的二维空间坐标,包括:
根据所述第一三维对象模型中顶点的第一三维空间坐标以及邻域点参数,生成与所述第一三维对象模型相关联的邻接距离矩阵;
获取所述邻接距离矩阵中任意两个顶点之间的最短路径距离,根据所述最短路径距离将所述邻接距离矩阵转换为最小路径矩阵,根据所述最小路径矩阵确定所述第一三维对象模型中顶点的二维空间坐标。
3.根据权利要求1所述的方法,其特征在于,所述获取第二三维对象模型,包括:
获取三维模板模型,获取所述三维模板模型中顶点的第二三维空间坐标,根据所述第一三维对象模型中的对象形状,获取所述第二三维空间坐标对应的形变参数;
根据所述形变参数对所述第二三维空间坐标进行变形,得到更新后的第二三维空间坐标;
根据所述更新后的第二三维空间坐标,将所述三维模板模型更新为所述第二三维对象模型。
4.根据权利要求1所述的方法,其特征在于,所述获取所述第二三维对象模型中的顶点在所述第一三维对象模型中的投影点,根据所述投影点确定所述第二三维对象模型中顶点的迁移纹理坐标,包括:
获取所述第二三维对象模型中的顶点bi,确定所述顶点bi对应的顶点法线ni;i为小于或等于所述第二三维对象模型中所包含的顶点数量的正整数;
根据所述顶点法线ni,确定所述顶点bi在所述第一三维对象模型中的投影点ci;
在所述第一三维对象模型中确定所述投影点ci所属的目标平面块,根据所述目标平面块对应的原始纹理坐标,确定所述顶点bi对应的迁移纹理坐标。
5.根据权利要求4所述的方法,其特征在于,所述根据所述顶点法线ni,确定所述顶点bi在所述第一三维对象模型中的投影点ci,包括:
获取所述第一三维对象模型中顶点的第一三维空间坐标,根据所述第一三维空间坐标建立空间二分树;
根据所述空间二分树,在所述第一三维对象模型中获取与所述第二三维对象模型中的顶点bi具有最短距离的候选顶点,获取与所述候选顶点相邻的至少两个平面块;所述至少两个平面块包括所述目标平面块;
根据所述顶点法线ni,在所述至少两个平面块中确定所述顶点bi对应的投影直线;
当存在所述投影直线与所述至少两个平面块相交时,将所述投影直线与所述至少两个平面块的交点确定为所述投影点ci。
6.根据权利要求5所述的方法,其特征在于,所述获取所述第一三维对象模型中顶点的第一三维空间坐标,根据所述第一三维空间坐标建立空间二分树,包括:
获取所述第一三维对象模型中顶点的第一三维空间坐标,统计所述第一三维空间坐标在空间坐标系中每个坐标轴上的坐标方差,根据最大的坐标方差所对应的坐标轴,确定顶点分割方向;
对所述第一三维空间坐标在目标坐标轴上的坐标值进行排序,得到排序后的坐标值;所述目标坐标轴是指最大的坐标方差所对应的坐标轴;
根据排序后的坐标轴中的中间值和所述顶点分割方向,确定所述第一三维对象模型对应的第一顶点分割超平面,根据所述第一顶点分割超平面将所述第一三维对象模型中的顶点划分为第一子空间和第二子空间;
根据所述第一子空间中所包含的顶点,确定第二顶点分割超平面,根据所述第二顶点分割超平面将所述第一子空间划分为第三子空间和第四子空间,直至所述第三子空间和所述第四子空间中所包含的顶点的数量为一个;
根据所述第二子空间中所包含的顶点,确定第三顶点分割超平面,根据所述第三顶点分割超平面将所述第二子空间划分为第五子空间和第六子空间,直至所述第五子空间和所述第六子空间中所包含的顶点的数量为一个;
根据所述第三子空间、第四子空间、第五子空间以及第六子空间建立所述空间二分树。
7.根据权利要求4所述的方法,其特征在于,还包括:
获取所述投影点ci与所述顶点bi之间的空间距离;
若所述空间距离大于距离阈值,则将所述投影点ci确定为无效投影点,确定所述顶点bi关联有空纹理坐标;所述空纹理坐标用于指示所述目标纹理图中不具备所述顶点bi的纹理数据;
若所述空间距离小于或等于所述距离阈值,则执行所述在所述第一三维对象模型中确定所述投影点ci所属的目标平面块步骤。
8.根据权利要求4所述的方法,其特征在于,所述根据所述目标平面块对应的原始纹理坐标,确定所述顶点bi对应的迁移纹理坐标,包括:
在所述第一三维对象模型中获取所述目标平面块对应的原始纹理坐标a1、原始纹理坐标a2以及原始纹理坐标a3,获取所述投影点ci对应的重心坐标(w1,w2,w3);
根据所述重心坐标(w1,w2,w3)分别与原始纹理坐标a1、原始纹理坐标a2以及原始纹理坐标a3之间的乘积,确定所述顶点bi对应的迁移纹理坐标。
9.根据权利要求1所述的方法,其特征在于,所述根据所述迁移纹理坐标对应的纹理数据以及所述第二三维对象模型,生成携带所述纹理数据的目标三维模型,包括:
根据所述迁移纹理坐标对应的纹理数据,确定所述第二三维对象模型中顶点与所述纹理数据之间的映射关系;
根据所述映射关系对所述第二三维对象模型中的顶点进行纹理渲染,生成携带所述纹理数据的目标三维模型。
10.一种图像数据处理装置,其特征在于,包括:
第一获取模块,用于获取第一三维对象模型,获取所述第一三维对象模型对应的初始纹理图;
所述第一获取模块,还用于若所述初始纹理图为分散类型的纹理图,则对所述第一三维对象模型中顶点的第一三维空间坐标进行降维,得到所述第一三维对象模型中顶点的二维空间坐标;
所述第一获取模块,还用于获取与所述二维空间坐标相对应的原始纹理坐标,根据所述原始纹理坐标对应的纹理数据,生成所述第一三维对象模型对应的目标纹理图;
第二获取模块,用于获取第二三维对象模型;所述第二三维对象模型为不携带目标纹理图的三维模型,所述第一三维对象模型中的对象形状与所述第二三维对象模型中的对象形状之间的形状差异满足形态相似条件;
纹理坐标确定模块,用于获取所述第二三维对象模型中的顶点在所述第一三维对象模型中的投影点,根据所述投影点确定所述第二三维对象模型中顶点的迁移纹理坐标;
纹理迁移模块,用于在所述目标纹理图中获取所述迁移纹理坐标对应的纹理数据,根据所述迁移纹理坐标对应的纹理数据以及所述第二三维对象模型,生成携带所述纹理数据的目标三维模型。
11.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,所述处理器执行权利要求1至9中任一项所述方法的步骤。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令被处理器执行时,执行权利要求1至9中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011001720.1A CN112102480B (zh) | 2020-09-22 | 2020-09-22 | 图像数据处理方法、装置、设备以及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011001720.1A CN112102480B (zh) | 2020-09-22 | 2020-09-22 | 图像数据处理方法、装置、设备以及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112102480A CN112102480A (zh) | 2020-12-18 |
CN112102480B true CN112102480B (zh) | 2021-07-13 |
Family
ID=73755804
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011001720.1A Active CN112102480B (zh) | 2020-09-22 | 2020-09-22 | 图像数据处理方法、装置、设备以及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112102480B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112819939B (zh) * | 2021-03-08 | 2023-07-07 | 网易(杭州)网络有限公司 | 矫正uv坐标的方法、装置、设备和计算机可读存储介质 |
CN113781622A (zh) * | 2021-08-31 | 2021-12-10 | 咪咕文化科技有限公司 | 三维模型纹理贴图的转换方法、装置、设备以及介质 |
CN114359465B (zh) * | 2021-12-22 | 2023-01-31 | 花脸数字技术(杭州)有限公司 | 一种基于ai算法的数字人外界纹理构造分析系统 |
CN114693856B (zh) * | 2022-05-30 | 2022-09-09 | 腾讯科技(深圳)有限公司 | 对象生成方法、装置、计算机设备和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6850274B1 (en) * | 1997-07-15 | 2005-02-01 | Silverbrook Research Pty Ltd | Image texture mapping camera |
CN107862749A (zh) * | 2017-11-27 | 2018-03-30 | 华南理工大学 | 一种点云几何细节特征去除方法 |
CN110097609A (zh) * | 2019-04-04 | 2019-08-06 | 上海凌笛数码科技有限公司 | 一种基于样本域的精细化绣花纹理迁移方法 |
CN111429566A (zh) * | 2020-03-20 | 2020-07-17 | 广东三维家信息科技有限公司 | 虚拟家装场景的重建方法、装置及电子设备 |
-
2020
- 2020-09-22 CN CN202011001720.1A patent/CN112102480B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6850274B1 (en) * | 1997-07-15 | 2005-02-01 | Silverbrook Research Pty Ltd | Image texture mapping camera |
CN107862749A (zh) * | 2017-11-27 | 2018-03-30 | 华南理工大学 | 一种点云几何细节特征去除方法 |
CN110097609A (zh) * | 2019-04-04 | 2019-08-06 | 上海凌笛数码科技有限公司 | 一种基于样本域的精细化绣花纹理迁移方法 |
CN111429566A (zh) * | 2020-03-20 | 2020-07-17 | 广东三维家信息科技有限公司 | 虚拟家装场景的重建方法、装置及电子设备 |
Non-Patent Citations (1)
Title |
---|
自动三维人脸迁移算法研究;陆炎;《中国优秀硕士学位论文全文数据库(电子期刊)》;20180630;I138-1921 * |
Also Published As
Publication number | Publication date |
---|---|
CN112102480A (zh) | 2020-12-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112102480B (zh) | 图像数据处理方法、装置、设备以及介质 | |
US10529137B1 (en) | Machine learning systems and methods for augmenting images | |
WO2022001236A1 (zh) | 三维模型生成方法、装置、计算机设备及存储介质 | |
US20040095352A1 (en) | Modeling object interactions and facial expressions | |
CN109325990B (zh) | 图像处理方法及图像处理装置、存储介质 | |
CN112085835B (zh) | 三维卡通人脸生成方法、装置、电子设备及存储介质 | |
CN112530005B (zh) | 一种三维模型直线结构识别与自动修复方法 | |
CN116109798B (zh) | 图像数据处理方法、装置、设备及介质 | |
JP7294788B2 (ja) | 3d配置のタイプに応じた2d画像の分類 | |
CN110458924B (zh) | 一种三维脸部模型建立方法、装置和电子设备 | |
CN113628327A (zh) | 一种头部三维重建方法及设备 | |
CN113570684A (zh) | 图像处理方法、装置、计算机设备和存储介质 | |
CN115578393B (zh) | 关键点检测方法、训练方法、装置、设备、介质及产品 | |
CN110176079A (zh) | 一种基于准共形映射的三维模型变形算法 | |
CN112862807A (zh) | 基于头发图像的数据处理方法及装置 | |
CN114742956B (zh) | 模型处理方法、装置、设备及计算机可读存储介质 | |
CN113593033A (zh) | 一种基于网格细分结构的三维模型特征提取方法 | |
Chalás et al. | Generating various composite human faces from real 3D facial images | |
CN113593001A (zh) | 目标对象三维重建方法、装置、计算机设备和存储介质 | |
CN115546361A (zh) | 三维卡通形象处理方法、装置、计算机设备和存储介质 | |
CN116664422A (zh) | 图像高光处理方法、装置、电子设备及可读存储介质 | |
CN117557699B (zh) | 动画数据生成方法、装置、计算机设备和存储介质 | |
CN117132501B (zh) | 一种基于深度相机的人体点云空洞修复方法及系统 | |
CN116912433B (zh) | 三维模型骨骼绑定方法、装置、设备及存储介质 | |
CN116385619B (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40036295 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |