掌桥专利:专业的专利平台
掌桥专利
首页

用于制作三维物体表面顶层图案的方法及装置

文献发布时间:2023-06-19 09:41:38


用于制作三维物体表面顶层图案的方法及装置

技术领域

本申请涉及图像处理领域,尤其涉及一种用于制作或生成三维物体表面顶层图案的方法及装置。

背景技术

物体的模型在电脑上进行显示时,一般需要通过纹理渲染来实现,贴图是必经的过程之一。传统上,对于物体表面顶层贴图一般使用三种方案。

第一种方案是制作全组合贴图,例如假设一个物体在未使用顶层图案时共拥有3种不同颜色的表面,而后拥有3种不同的顶层图案可以应用,总共需要根据该物体的展开平面制作9张不同的贴图,用于显示所有颜色和所有顶层图案的组合;但是该技术方案工作量大,制作的贴图数量多,不能重复利用前期制作的没有顶层图案时的贴图,并且大量贴图会增加程序的数据大小,影响加载时间,占用更多的GPU显存。

第二种方案是制作一个额外的物体模型悬浮于原本的物体之上,并且将顶层图案的贴图应用在这个额外模型上;该技术方案需要制作额外的模型,给CPU带来额外负担,并且由于是悬浮在原物体之上,有可能会出现位置的偏差或者曲面吻合度差的问题;如果使用大面积的悬浮模型,为了不影响原物体未被遮罩的部分则必须使用透明通道,进而对GPU产生额外的负担。

第三种方案是基于屏幕空间后处理技术的延迟贴花渲染方案。这种方案利用GPU中的各种画面缓存数据来实时计算贴花的最终形态和视觉效果,一般用于实时生成动态贴花。这种方案的适应范围最广,但是性能开销也最大,对硬件有非常高的要求,在移动端平台很难大范围应用。

在对汽车模型进行渲染时,需要根据预设的需求在车身上显示各种样式的顶层图案(拉花),顶层图案的大小、颜色、位置不同,且不能影响车身本来的车漆颜色,无论采取上述两种现有技术中的哪一种,制造过程较为复杂且效率相对不高,需要投入大量的人力、物力、财力,因此需要另寻更优的技术方案,以至少在一定程度上解决上述缺陷中的至少一部分。

发明内容

有鉴于此,本申请提出了一种用于制作三维物体表面顶层图案的方法及装置,提高顶层图案的可复用性,并解决成本。

根据本申请的一个方面,提出了一种用于制作物体表面顶层图案的方法,该方法包括:

将物体模型展开为平面;

制作顶层图案贴图,其中顶层图案贴图与物体模型平面展开后的图案部分重叠;

根据物体模型平面展开的各顶点坐标定义各顶点的第一颜色值,并使用顶层图案贴图定义该物体在各顶点坐标处的第二颜色值,其中顶层图案贴图至少包含至少一个属性值用于指示物体表面顶层图案的权重值;

根据所述至少一个属性值、第一颜色值以及第二颜色值确定各顶点的最终颜色值。

优选地,所述至少一个属性值包括参考颜色值,该参考颜色值与顶层图案贴图固有颜色值不同。

优选地,根据所述至少一个属性值、第一颜色值以及第二颜色值确定各顶点的颜色值包括:

在所述第二颜色值等于所述参考颜色值的情况下,顶点的颜色值为第一颜色值,否则顶点的颜色值为第二颜色值。

优选地,所述至少一个属性值包括透明度,所述物体模型平面展开后的图案的透明度设置为完全透明,所述顶层图案贴图的透明度设置为不透明。

优选地,根据所述至少一个属性值、第一颜色值以及第二颜色值确定各顶点的颜色值包括:

在顶点的透明度为完全透明的情况下,顶点的颜色值为第一颜色值,否则顶点的颜色值为第二颜色值。

优选地,所述制作顶层图案贴图包括:

根据顶层图案预先设置的位置以及物体模型平面展开的各顶点坐标,确定各顶层图案中对应的顶点坐标;

将顶层图案中的顶点坐标与物体模型平面展开的各顶点坐标对应;

设置所述顶层图案贴图的至少一个属性值。

本申请提供了一种用于制作三维物体表面顶层图案的装置,该装置包括:

展开模块,用于将物体模型展开为平面;

制作模块,用于制作顶层图案贴图,其中顶层图案贴图与物体模型平面展开后的图案部分重叠;

定义模块,用于根据物体模型平面展开的各顶点坐标定义各顶点的第一颜色值,并使用顶层图案贴图定义该物体在各顶点坐标处的第二颜色值,其中顶层图案贴图至少包含至少一个属性值用于指示物体表面顶层图案的权重值;

确定模块,用于根据所述至少一个属性值、第一颜色值以及第二颜色值确定各顶点的最终颜色值。

优选地,所述至少一个属性值包括参考颜色值,该参考颜色值与顶层图案贴图固有颜色值不同。

优选地,所述确定模块还用于在所述第二颜色值等于所述参考颜色值的情况下,将顶点的颜色值设置为第一颜色值,否则将顶点的颜色值设置为第二颜色值。

优选地,所述至少一个属性值包括透明度,所述物体模型平面展开后的图案的透明度设置为完全透明,所述顶层图案贴图的透明度设置为不透明。

优选地,所述确定模块还用于在在顶点的透明度为完全透明情况下,将顶点的颜色值设置为第一颜色值,否则将顶点的颜色值设置为第二颜色值。

优选地,所述制作模块还用于根据顶层图案预先设置的位置以及物体模型平面展开的各顶点坐标,确定各顶层图案中对应的顶点坐标;将顶层图案中的顶点坐标与物体模型平面展开的各顶点坐标对应;设置所述顶层图案贴图的至少一个属性值。

根据本申请的技术方案,能够减少贴图的制作量,并能够重复使用已有的贴图,减少模型的加载量,减少CPU和GPU的运算负荷,并具有良好的兼容性。

本申请的其它特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

构成本申请的一部分的附图用来提供对本申请的进一步理解,本申请的示意性实施方式及其说明用于解释本申请。在附图中:

图1为根据本申请优选实施方式的用于制作物体表面顶层图案的方法构架图。

图2为根据本申请优选实施方式的用于制作物体表面顶层图案的方法的部分流程图。

图3为根据本申请优选实施方式的用于制作物体表面顶层图案的装置的方案架构图。

图4A-图4E为根据本申请优选实施方式的用于制作物体表面顶层图案的方法在实体模型上的处理过程和处理效果图解。

图5A-图5E为根据本申请优选实施方式的用于制作物体表面顶层图案的方法在汽车实时互动案例中的应用效果。

具体实施方式

需要说明的是,在不冲突的情况下,本申请中的实施方式及各个实施方式中的特征可以相互组合。

下面将参考附图并结合实施方式来详细说明本申请。

本申请提供的用于制作物体表面顶层图案的方法优选如图1所示,具体包括:

步骤101,将物体模型展开为平面;物体模型平面展开也可以称为物体模型UV展开,是将3维度物体模型展开到平面,例如将立方体各个面展开到平面上。

步骤102,制作顶层图案贴图,其中物体模型平面展开后不被顶层图案覆盖的顶点的颜色为参考颜色值,且不能与顶层图案中使的颜色值相同;在制作顶层贴图时,首先根据顶层贴图预先设置的位置,在上述物体模型UV展开平面中找到对应的UV坐标;然后将顶层图案放置在对应的坐标上,并将非顶层图案的其他区域的颜色值设置为一个在顶层图案中没有出现的参考颜色值。

步骤103,根据物体模型平面展开的各顶点坐标计算各顶点的第一颜色值,并计算顶层贴图在各顶点坐标处的第二颜色值;

步骤104,根据所述参考颜色值、第一颜色值以及第二颜色值确定各顶点的颜色值。

需要说明的是,在电脑上显示颜色一般使用RGB值表示。通过上述的步骤,可以确定在进行渲染时各个顶点应当使用的颜色。在一个物体上贴附加图案(顶层图案贴图)时,附加图案并不覆盖整个物体,即只有覆盖附加图案的部分是该图案的内容,其他部分仍然是物体原来的颜色(例如物体本身固有材质纹理)。在制作这个附加图案的贴图时,不用该图案覆盖的部分需要用一个特殊的颜色表示,这个颜色不能是在附加图案内容中使用到的颜色,且将这个颜色设置为参考颜色值。例如,附加图案的内容是蓝色的数字,而其他区域的颜色是在附加图案中没有出现过的深灰色,参考颜色也设置成深灰色。本示例中将该附加图案贴到一个几何体上,假设这个几何体的原颜色是红绿色方格。根据本申请的方法,第一颜色值为【红或绿】,第二颜色值为对应附加图案中的颜色,即【蓝色和深灰色】中的一种,具体要看该顶点是否覆盖了附加图案。如果第二色值是【深灰色】,即与参考色值相同,则证明该顶点没有附加图案覆盖,则最终颜色值为【红或绿】,具体取决于方格分布状态;如果不是深灰色,即与参考色值不同,则证明该顶点被附加图案覆盖,则最终颜色为【蓝色】,【蓝色】为附加图案的固有颜色。

为了进行详细说明,图2显示了上述步骤103和步骤104的详细流程,具体包括:

步骤201,获取顶层贴图,并校对贴图的参考颜色RGB值;此处校对参考颜色值,是为了确定该参考颜色值与顶层贴图中的颜色不同。

步骤202,获取物体模型UV展开后的一个顶点坐标;在物体模型中,其各个表面被分割为若干不规则的多边形,每个多边形具有若干顶点,每个顶点在进行UV展开后具有自己身的UV坐标;

步骤203,根据顶点的UV坐标定义物体模型确定该顶点的第一颜色值,即原始的颜色值;

步骤204,根据UV坐标定义对应的顶层图案中该坐标对应的第二颜色RGB值;

步骤205,判断第二颜色RGB值是否等于参考RGB值;如果是的话,执行步骤206,否则执行步骤207;

步骤206,UV坐标对应的顶点颜色值为第一颜色值;

步骤207,UV坐标对应的顶点颜色值为第二颜色值;

步骤208,判断所有的顶点是否处理完毕,如果是,则结束流程,否则执行步骤202。

此外,本申请还可以根据透明度来实现顶层图案的制作,下面仅描述该实施例与上述实施例不同之处,相同之处在此省略。该实施例中,可以将物体模型平面展开后图案的透明度设置0,即完全透明,而将顶层图案的透明度设置为1,即完全不透明。在计算出各顶点的颜色以及对应的顶层图案各顶点处的颜色后,如果顶点的透明度为0,则顶点使用物体模型原本的颜色;如果透明度为1,则顶点使用顶层图案的颜色,即附加图案的颜色。

为了进一步详细说明本申请的技术方案,本申请提供了如下的优选实施例:

步骤4.1,将三维物体模型(此示例中,使用一个正十二面体)展开为平面,即UV展开步骤,如图4A所示。

步骤4.2,根据经过二维展开的物体顶点在平面坐标内的对应位置,制作底层贴图。该贴图与物体二维展开平面内的图案部分重叠,其中的颜色(此例中,使用的是红绿色方格图案)信息用来定义物体各顶点的第一颜色值,如图4B所示。

步骤4.3,根据二维展开平面的顶点坐标,制作顶层图案贴图。该帖图与物体模型平面展开后的图案部分重叠,并使用其中的颜色(此例中,使用的是蓝色数字及深灰色的背景)信息来定义物体各顶点的第二颜色值。左侧图示意的是三维物体各个顶点完全采用第二颜色值显示、无视第一颜色值的呈现效果,如图4C所示。

步骤4.4,上述制作的顶层图案贴图中包含至少一个属性值,用以指示物体表面顶层图案的权重值。该属性描述了一个参考颜色值,该参考颜色值与顶层图案贴图固有颜色值、第二颜色值不同。在本例中,参考颜色值描述的是数字背景的深灰色。顶层图案贴图中所描绘的第二颜色值(4D图左)中,所有与参考颜色值相同的点,都将获得0权重,所有与参考颜色值不同的点,都将获得1权重。上图右呈现了该顶层图案贴图的权重图,白色为1权重,黑色为0权重,如图4D所示。

步骤4.5,根据上一步骤所获取到的顶层图案贴图的权重图,按照平面展开坐标确定三维物体模型各个顶点的最终着色状态。顶层图案贴图0权重的位置,将被设置为第一颜色值,即底层贴图颜色(本例中的红绿色方格图案);顶层图案贴图1权重的位置,将被设置为第二颜色值,即顶层贴图颜色(本例中的蓝色数字),如图4E所示。

图5A-图5E显示了对某品牌汽车展示的另一优选实施例。图5A中,对于某汽车线上交互展示案例,未使用车身贴花(附加图案)的展示效果。在未加载车身贴花时,车身呈现的绿色是预先定义好的第一颜色值。图5B中,启用车身贴花(附加图案)的展示效果。加载贴花后,车身被贴花覆盖的部分呈现出贴花图案内容,即第二颜色值;未被覆盖的部分依然呈现绿色的第一颜色值。图5C中,展示了车身部分的三维几何体模型,以及将该模型展开为平面坐标状态的图案。图5D中,左侧呈现的是按照上述车身三维几何体平面展开后的图案重叠制作的顶层图案贴图。该图案贴图中包含白色、浅蓝色、紫色等作为第二颜色值,其中紫色作为背景,不出现在车身实际贴花内容中。该图案贴图中包含至少一个属性值,其所描述的参考颜色值是背景中大面积存在的紫色。通过该属性值所描述的参考颜色值,以及实际图案贴图中的颜色值分布,可以得到右侧黑白示意图所描述的车身贴花颜色权重值。黑白示意图中的白色部分,在车身上呈现第二颜色值,即贴花内容;黑色部分,在车身上呈现第一颜色值,即原始绿色车身。图5E中,经过权重计算和判定,车身三维物体所呈现出的颜色分布状态,展示了正确的车身拉花图案与车身基础颜色的叠加效果。

相应地,本申请提供了一种用于制作物体表面顶层图案的装置,如图3所示,该装置包括:展开模块,用于将物体模型展开为平面;制作模块,用于制作顶层图案贴图,其中顶层图案与物体模型平面展开后的图案部分重叠;定义模块,用于根据物体模型平面展开的各顶点坐标定义各顶点的第一颜色值,并使用顶层图案贴图定义该物体在各顶点坐标处的第二颜色值,其中顶层图案贴图至少包含至少一个属性值用于指示物体表面顶层图案的权重值;确定模块,用于根据所述至少一个属性值、第一颜色值以及第二颜色值确定各顶点的颜色值。

本申请提供的上述技术方案能够减少贴图的制作量,且之前为原物体制作的贴图能够继续使用;减少模型的加载量,为CPU减少负担。减少贴图的夹在两,为GPU减少负担;可以在不影响原有项目或产品的情况下,添加该功能。

以上所述仅为本申请的较佳实施方式而已,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

相关技术
  • 用于制作三维物体表面顶层图案的方法及装置
  • 在三维物体表面印刷功能性印刷图案的增材印刷方法、相关计算机程序和计算机可读介质
技术分类

06120112268095