一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

模型处理方法及装置、电子设备及存储介质与流程

2022-02-22 19:11:04 来源:中国专利 TAG:


1.本公开的实施例涉及一种模型处理方法、模型处理装置、电子设备及存储介质。


背景技术:

2.三维建模通常是指利用三维制作软件通过虚拟三维空间构建出具有三维数据的模型,也即,三维模型。三维模型可以用于物体的多边形表示,通常可以采用计算机或者其它视频设备等进行显示。显示的物体可以是现实世界中真实存在的实体对象,或者也可以是虚构的物体等。


技术实现要素:

3.本公开至少一个实施例提供一种模型处理方法,该模型处理方法包括:基于第一模型的模型框架,创建框架模型,所述第一模型的模型精度为第一精度,所述第一模型的坐标系为模型坐标系;基于所述第一模型,生成所述第一模型的模型贴图,并将所述模型贴图从所述模型坐标系映射到贴图坐标系中,创建贴图模型,所述模型贴图与所述模型框架之间具有绑定关系;以及基于所述框架模型和所述贴图模型,生成第二模型,所述第二模型的模型精度为第二精度,所述第二精度不同于所述第一精度。
4.例如,在本公开一实施例提供的模型处理方法中,所述第一精度大于所述第二精度。
5.例如,在本公开一实施例提供的模型处理方法中,所述第二模型的存储格式与所述第一模型的存储格式不同。
6.例如,在本公开一实施例提供的模型处理方法中,所述框架模型的存储格式与所述第一模型的存储格式不同。
7.例如,本公开一实施例提供的模型处理方法还包括:获取原始模型;以及调整所述原始模型的模型参数,创建所述第一模型。
8.例如,在本公开一实施例提供的模型处理方法中,调整所述原始模型的模型参数,创建所述第一模型,包括:确定所述原始模型的原始模型框架与所述原始模型的原始模型贴图之间是否匹配;响应于所述原始模型框架与所述原始模型贴图匹配,调整所述原始模型的模型参数,创建所述第一模型。
9.例如,在本公开一实施例提供的模型处理方法中,调整所述原始模型的模型参数,创建所述第一模型,还包括:响应于所述原始模型框架与所述原始模型贴图不匹配,调整所述原始模型框架与所述原始模型贴图之间的绑定关系。
10.例如,在本公开一实施例提供的模型处理方法中,调整所述原始模型的模型参数,创建所述第一模型,还包括:响应于所述原始模型框架与所述原始模型贴图不匹配,删除相对于所述原始模型框架多余的原始模型贴图,或者补充相对于所述原始模型框架缺少的原始模型贴图。
11.例如,在本公开一实施例提供的模型处理方法中,基于所述第一模型的模型框架,
创建所述框架模型,包括:根据所述第一模型的面数,得到第一预处理模型;以及基于所述第一预处理模型的模型框架,创建所述框架模型。
12.例如,在本公开一实施例提供的模型处理方法中,根据所述第一模型的面数,得到所述第一预处理模型,包括:确定所述第一模型的面数是否大于基准面数;响应于所述第一模型的面数大于所述基准面数,对所述第一模型进行减面操作,以得到所述第一预处理模型,所述第一预处理模型的面数小于或等于所述基准面数;响应于所述第一模型的面数小于或等于所述基准面数,将所述第一模型作为所述第一预处理模型。
13.例如,在本公开一实施例提供的模型处理方法中,基于所述第一预处理模型的模型框架,创建所述框架模型,包括:删除所述第一预处理模型中的材质信息,以得到所述框架模型,所述材质信息包括所述第一预处理模型的贴图信息。
14.例如,在本公开一实施例提供的模型处理方法中,基于所述第一模型的模型框架,创建所述框架模型,还包括:基于所述框架模型的模型结构,对所述框架模型进行校正处理。
15.例如,在本公开一实施例提供的模型处理方法中,基于所述第一模型,生成所述第一模型的模型贴图,包括:确定生成的所述第一模型的模型贴图是否准确;响应于生成的所述第一模型的模型贴图不准确,重新生成所述第一模型的模型贴图。
16.例如,在本公开一实施例提供的模型处理方法中,将所述模型贴图从所述模型坐标系映射到所述贴图坐标系中,创建所述贴图模型,包括:将所述模型贴图从所述模型坐标系映射到所述贴图坐标系中,得到与所述模型贴图对应的第一贴图,所述贴图模型包括所述第一贴图。
17.例如,在本公开一实施例提供的模型处理方法中,基于所述框架模型和所述贴图模型,生成所述第二模型,包括:将所述第一贴图从所述贴图坐标系映射到平面坐标系中,得到与所述第一贴图对应的第二贴图;根据所述模型贴图与所述模型框架之间的绑定关系,确定所述第二贴图与所述模型框架之间的绑定关系;以及根据所述第二贴图与所述模型框架之间的所述绑定关系,将所述第二贴图与所述框架模型进行绑定,以生成所述第二模型。
18.例如,在本公开一实施例提供的模型处理方法中,基于所述框架模型和所述贴图模型,生成所述第二模型,还包括:基于所述第一模型的材质信息,赋予所述第二贴图材质属性。
19.例如,在本公开一实施例提供的模型处理方法中,该模型处理方法中的各步骤适用于在同一软件环境下执行。
20.本公开至少一个实施例还提供一种模型处理装置,该模型处理装置包括框架模型创建单元、贴图模型创建单元和模型生成单元;所述框架模型创建单元配置为基于第一模型的模型框架,创建框架模型,所述第一模型的模型精度为第一精度,所述第一模型的坐标系为模型坐标系;贴图模型创建单元配置为基于所述第一模型,生成所述第一模型的模型贴图,并将所述模型贴图从所述模型坐标系映射到贴图坐标系中,创建贴图模型,所述模型贴图与所述模型框架之间具有绑定关系;模型生成单元配置为基于所述框架模型和所述贴图模型,生成第二模型,所述第二模型的模型精度为第二精度,所述第二精度不同于所述第一精度。
21.本公开至少一个实施例还提供一种电子设备,该电子设备包括处理器和存储器;所述存储器存储有计算机可执行指令;所述计算机可执行指令被存储在所述存储器中,并被配置为由所述处理器执行,以实现本公开任一实施例所述的模型处理方法。
22.本公开至少一个实施例还提供一种存储介质,该存储介质存储有计算机可执行指令,当所述计算机可执行指令由处理器执行时实现本公开任一实施例所述的模型处理方法。
附图说明
23.为了更清楚地说明本公开实施例的技术方案,下面将对实施例的附图作简单地介绍,显而易见地,下面描述中的附图仅仅涉及本公开的一些实施例,而非对本公开的限制。
24.图1为本公开一些实施例提供的一种模型处理方法的示意性流程图;
25.图2a为本公开一些实施例提供的一种第一模型的示意图;
26.图2b为本公开一些实施例提供的一种框架模型的示意图;
27.图2c为本公开一些实施例提供的一种贴图模型的示意图;
28.图3为本公开一些实施例提供的另一种模型处理方法的示意性流程图;
29.图4为本公开一些实施例提供的一种模型处理方法中的步骤s22的示意性流程图;
30.图5为本公开一些实施例提供的一种模型处理方法中的步骤s11的示意性流程图;
31.图6为本公开一些实施例提供的一种模型处理方法中的步骤s401的示意性流程图;
32.图7为本公开一些实施例提供的一种模型处理方法中的步骤s12的示意性流程图;
33.图8为本公开一些实施例提供的一种模型处理方法中的步骤s13的示意性流程图;
34.图9为本公开一些实施例提供的一种模型处理方法的具体示例的示意性流程图;
35.图10为本公开一些实施例提供的一种模型处理装置的示意性框图;
36.图11为本公开一些实施例提供的另一种模型处理装置的示意性框图;
37.图12为本公开一些实施例提供的一种电子设备的示意性框图;
38.图13为本公开一些实施例提供的另一种电子设备的示意性框图;以及
39.图14为本公开一些实施例提供的一种存储介质的示意图。
具体实施方式
40.为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例的附图,对本公开实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。基于所描述的本公开的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
41.除非另外定义,本公开使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。同样,“一个”、“一”或者“该”等类似词语也不表示数量限制,而是表示存在至少一个。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或
者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
42.目前,三维模型技术已被广泛地应用于各种不同的行业和领域中。例如,在医疗行业中,可以采用三维建模技术制作例如器官或医疗器械的精确三维模型;在建筑行业中,可以利用构建的三维模型展示例如建筑物、家居装潢或者风景等;在视频游戏行业中,可以将三维模型作为例如计算机与视频游戏中的制作资源,以增强用户的视觉体验及交互体验。
43.例如,以建筑行业中利用三维模型向用户展示房屋的例如结构布局、家居、装潢设计等信息为例,通常会利用建模技术构建关于该房屋的具有不同精度的多个模型,以满足不同的实际应用需求。例如,在对该房屋进行建模时,通常会建立一个对于该房屋的高精度模型,以供设计师后续进一步对该模型进行例如绘制、修改、调整等操作;同时,由于例如设备性能等因素的限制,导致该高精度模型可能不能够在一些客户端或应用端上直接进行展示,因此,通常还会建立一个对于该房屋的例如低精度模型,以便于构建的房屋模型能够满足在不同类型或不同性能的设备上均能实现正常显示的应用需求。
44.通常,在构建具有不同精度的房屋模型时,可以基于已创建的房屋模型进行例如修改或调整等操作,以将已创建的房屋模型转换成具有不同精度的新的房屋模型。但是,在对不同精度的房屋模型之间进行转换时,例如基于一个现有的高精度房屋模型生成相应的低精度房屋模型时,由于高精度房屋模型和低精度房屋模型的存储格式、所支持的运行环境等可能存在差异,导致在基于该高精度房屋模型生成相应的低精度房屋模型的过程中,往往会出现模型的框架与材质信息(或纹理信息,也即模型的纹理贴图)之间的绑定关系丢失或出现混乱。因而,可能会需要用户额外耗费大量的人为操作时间和精力,重新将模型的框架与材质信息之间进行绑定和匹配,由此导致操作成本增加,严重降低了模型转换效率。
45.并且,由于不同的操作软件或运行环境所支持的房屋模型的存储格式可能存在差异,因此,对于存储格式不同的高精度房屋模型和低精度房屋模型,往往可能还需要在不同的操作软件或运行环境中进行额外的格式转换操作,以实现不同精度的房屋模型之间的转换。这样,既进一步导致了操作成本的增加,又容易导致在模型格式转换的过程中模型的框架与材质信息之间的绑定关系出现丢失或混乱。
46.本公开至少一个实施例提供一种模型处理方法,该模型处理方法包括:基于第一模型的模型框架,创建框架模型,第一模型的模型精度为第一精度,第一模型的坐标系为模型坐标系;基于第一模型,生成第一模型的模型贴图,并将模型贴图从模型坐标系映射到贴图坐标系中,创建贴图模型,模型贴图与模型框架之间具有绑定关系;以及基于框架模型和贴图模型,生成第二模型,第二模型的模型精度为第二精度,第二精度不同于第一精度。
47.本公开上述实施例提供的模型处理方法可以在例如同一软件环境下实现基于第一模型生成相应的具有不同精度的第二模型,进而实现不同精度的第一模型与第二模型之间的转换。由此,既可以简化不同精度的模型之间的转换过程,又可以降低或避免在基于第一模型生成相应的第二模型时可能出现的模型框架与模型贴图之间的绑定关系或者匹配关系的丢失或混乱,从而减少所需花费的操作时间以及操作成本,提升模型转换效率,进而有利于模型转换过程的优化。
48.在本公开的一些实施例中,上述模型处理方法中的各个步骤可以均在同一软件环
境下执行,从而有助于进一步简化不同精度的模型之间的转换过程,提升模型转换效率。
49.下面,将参考附图详细地说明本公开的实施例。应当注意的是,不同的附图中相同的附图标记将用于指代已描述的相同的元件。
50.图1为本公开一些实施例提供的一种模型处理方法的示意性流程图。
51.如图1所示,本公开实施例提供的模型处理方法包括步骤s11至s13。
52.步骤s11:基于第一模型的模型框架,创建框架模型,第一模型的模型精度为第一精度,第一模型的坐标系为模型坐标系。
53.步骤s12:基于第一模型,生成第一模型的模型贴图,并将模型贴图从模型坐标系映射到贴图坐标系中,创建贴图模型,模型贴图与模型框架之间具有绑定关系。
54.步骤s13:基于框架模型和贴图模型,生成第二模型,第二模型的模型精度为第二精度,第二精度不同于第一精度。
55.例如,上述步骤s11至s13中基于第一模型生成相应的第二模型的操作过程可以在同一软件环境下实现,或者也可以根据实际需求在不同软件环境下实现。本公开实施例提供的模型处理方法可以无需执行额外的对模型的存储格式进行转换以适用于不同软件环境的操作或步骤,从而简化模型处理的整体操作流程,同时还可以降低或避免模型框架与模型贴图之间的绑定关系或匹配关系可能出现的丢失或混乱,从而减少所需的操作时间以及操作成本,提升模型转换效率,使模型转换过程得到优化。
56.例如,该软件环境可以为ue4(unreal engine 4)软件操作环境,第一模型和第二模型采用的存储格式可以为该ue4软件操作环境中所支持的uasset格式、glb格式或fbx格式等等。
57.例如,在一些实施例中,上述模型处理方法中的所有步骤均可以适用于在同一软件环境下执行。由此,使基于第一模型生成相应的第二模型的全部操作过程均可以在ue4软件操作环境中实现,无需通过不同的软件操作环境对第一模型和第二模型的存储格式进行转换,从而省去了额外的操作步骤,使操作流程得到简化,进一步降低了操作成本,提高了操作效率。
58.例如,在一些实施例中,根据实际不同需求,上述模型处理方法中的各步骤的具体实现方式也可以适用于在不同软件环境下执行。例如,上述步骤s13可以基于分别在ue4软件操作环境下和不同于ue4软件的用于例如图像处理的其他软件操作环境下执行的具体操作共同实现,例如可以基于分别在ue4软件操作环境下和dcc(digital content creating)软件操作环境下所执行的具体操作共同实现。由此,可以提升本公开实施例提供的模型处理方法的灵活性和实用性,有利于满足用户的不同需求。
59.例如,对于上述步骤s11,该模型框架中不包含第一模型的模型贴图,也即,不包含第一模型的纹理贴图。换句话说,该模型框架用于展示第一模型的框架结构,不包含关于第一模型的贴图信息、材质信息或纹理信息等。相应地,基于模型框架所创建的框架模型是指将第一模型中的例如材质、纹理等贴图信息删除后得到的对应于该第一模型的“白模”,也即,相比于已有的第一模型,框架模型中的框架结构(也即,该框架模型的模型框架)均未与模型贴图或纹理贴图之间进行绑定或匹配,或者,也可以理解为框架模型中的框架结构所对应的贴图信息设置为空白或者设置为初始参数,由此有助于后续步骤中对框架模型中的框架结构进行适当地修改或调整,降低所需的操作量及操作成本,提高操作效率。
60.例如,对于上述步骤s12,模型贴图用于表示第一模型中的例如材质、纹理等贴图信息。由此,通过将基于第一模型的模型贴图从模型坐标系映射到贴图坐标系中并创建新的贴图模型,既可以有利于后续步骤中根据实际不同需求,在贴图坐标系中对模型贴图进行相应地调整或修改,又可以通过映射操作避免模型贴图与模型框架之间的绑定关系或匹配关系出现丢失或混乱,从而有助于后续步骤s13中根据相应的贴图信息以及框架信息生成新的第二模型。
61.例如,对于上述步骤s13,模型的精度可以是指该模型所展示的建模对象的精确度或精准度。例如,模型的精度越高,则模型对该建模对象的展示效果越逼真,也即,与建模对象的实际构造以及外观越贴近、吻合。例如,模型的精度可以通过模型中所包含的面数或纹理图案体现,例如模型的精度越高,则模型中所包含的面数可能越多,纹理图案可能越精细,进而展示的对于该建模对象的精准度以及精确度也相应地越高,例如有利于展示关于该建模对象的更多细节特征;相应地,其所需要的存储空间以及对运行环境以及运行设备的性能要求可能也相对越高。
62.例如,在上述步骤s13中,可以对框架模型中的框架结构或贴图模型中的贴图信息进行修改或适应性调整,进而在将贴图模型中的贴图信息与框架模型中的框架结构之间进行匹配和绑定时,可以得到与第一模型的精度不同的第二模型,由此实现基于同一建模对象的不同精度的模型之间的转换。
63.例如,上述第一模型和第二模型可以为基于各种类型的实体对象或虚拟对象构建的二维模型或三维模型等,例如该实体对象或虚拟对象可以为建筑物(例如,房屋等)、家具、电器、家居装饰、车辆、人物、动物、日常用品、乐器、艺术品等,本公开的实施例对建模对象的类型、结构、形态等均不作具体限制。
64.例如,在本公开的一些实施例中,第一模型的第一精度大于第二模型的第二精度,也即,第一精度的数值大于第二精度的数值,第一模型的模型精度高于第二模型的模型精度。换句话说,相比于第二模型,第一模型能够展示更多关于建模对象的细节特征,具有更高的精准度以及精确度,例如第一模型中包含更多的面数或更多的纹理图案。例如,相比于第二模型,第一模型所需的存储空间以及对运行环境以及运行设备的性能要求也相对更高。
65.例如,第一模型的第一精度可以为高精度,第二模型的第二精度可以为低精度,也即,第一模型可以为高精度模型,第二模型可以为低精度模型。由此,通过基于精度较高的第一模型生成精度较低的第二模型,可以在满足根据实际需求对高精度模型进行例如存储、展示以及修改的同时,提供可以适用于更多不同运行环境、不同应用场景或不同性能设备的低精度模型,从而提升对于同一建模对象所构建的不同模型的应用范围,提高构建的模型的通用性以及实用性。
66.需要说明的是,在本公开的其他一些实施例中,也可以是第一模型的第一精度小于第二模型的第二精度,也即,第一精度的数值小于第二精度的数值,第一模型的模型精度低于第二模型的模型精度,例如第一模型可以为低精度模型,第二模型可以为高精度模型。换句话说,本公开上述实施例提供的模型处理方法既可以适用于基于高精度模型生成相应的低精度模型的操作过程,也可以适用于基于低精度模型生成相应的高精度模型的操作过程。
67.例如,第二模型的存储格式与第一模型的存储格式不同。例如,以第一模型为高精度模型,第二模型为低精度模型为例,相比于第一模型,生成的第二模型可以采用通用性或适用性更高的不同存储格式,或者也可以采用所需占用的存储空间更少的不同存储格式,从而有利于第一模型和第二模型分别适用于不同运行环境或软件中,以更好地服务于不同的应用场景。
68.例如,高精度的第一模型可以采用例如uasset等存储格式,也即,高精度模型可以存储为uasset文件,低精度的第二模型可以采用例如glb或fbx等存储格式,也即,低精度模型可以存储为glb文件或fbx文件等。由此,可以有助于高精度模型和低精度模型分别应用于不同应用场景,以满足不同的实际应用需求。例如,采用uasset存储格式的高精度模型可以服务于设计师对模型进行创造、绘制、修改等操作,从而可以通过高精度模型更好地反映建模对象的细节特征;又例如,采用例如glb或fbx等存储格式的低精度模型可以更好地满足不同客户端或应用端的运行需求或适用于不同的运行环境中,从而有利于基于该建模对象生成的模型在不同性能的设备或终端上的应用,增强模型的通用性以及适用性。
69.例如,基于第一模型生成的框架模型的存储格式与该第一模型的存储格式不同,例如,相比于第一模型,生成的框架模型可以采用通用性或适用性更高的不同存储格式,或者也可以采用所需占用的存储空间更少的不同存储格式,从而有利于后续对框架模型进行修改、调整等相应操作。
70.下面,本公开的一些实施例以建模的对象为房间中的关于床的家居设计为例,对本公开实施例提供的模型处理方法进行具体说明,但需要说明的是,本公开的实施例包括但并不仅限于此。
71.图2a为本公开的一些实施例提供的一种第一模型的示意图,例如该第一模型的建模对象为关于床的家居设计,例如包括床的结构、装饰设计、陈列摆设(例如床上用品)等特征,也即,该第一模型基于例如实际家居场景中的床进行建模。
72.图2b为本公开的一些实施例提供的一种框架模型的示意图,例如该框架模型用于展示对应于图2a中所示的基于床构建的第一模型的模型框架,也即,图2b中所示的框架模型为基于图2a中所示的第一模型的模型框架所创建。图2b中所示的框架模型不包含图2a中所示的第一模型中的模型贴图,例如,图2b中所示的框架模型的框架结构的贴图信息可以设置为初始值,例如不包含关于床的布局设计的色彩信息、纹理信息等。
73.图2c为本公开的一些实施例提供的一种贴图模型的示意图,例如该贴图模型对应于图2a中所示的基于床构建的第一模型的模型贴图,也即,图2c中所示的贴图模型为基于图2a中所示的第一模型的模型贴图所创建。例如,图2c中示出了关于图2a中所示的第一模型中的贴图信息,例如关于床的布局设计的色彩信息、图案信息、纹理信息等。
74.例如,上述步骤s11至s13中的第一模型和第二模型可以为用于向用户展示床的例如结构、装饰设计、陈列摆设等特征的家居设计模型。本公开的实施例以第一模型为关于家居设计的高精度模型(例如图2a中所示的第一模型),第二模型为关于家居设计的低精度模型(例如基于图2a中所示的第一模型生成的第二模型)为例,结合图2a至图2c对本公开实施例提供的模型处理方法进行具体说明,但需要说明的是,本公开的实施例包括但并不仅限于此。
75.图3为本公开一些实施例提供的另一种模型处理方法的示意性流程图。需要说明
的是,除步骤s21和s22以外,图3中所示的模型处理方法中的其他步骤s23至s25均与图1中所示的模型处理方法中的步骤s11至s13基本相同或相似,重复之处不再赘述。
76.例如,如图3所示,在本公开的一些实施例中,除步骤s23至s25以外,该模型处理方法还包括以下步骤s21和s22。
77.步骤s21:获取原始模型。
78.步骤s22:调整原始模型的模型参数,创建第一模型。
79.例如,原始模型可以直接从已创建好的模型中选取,或者也可以基于建模对象绘制生成。
80.例如,对于上述步骤s22,可以对该原始模型的模型参数进行调整或修改,例如上述调整及修改可以包括对原始模型的模型框架与模型贴图之间的绑定关系或匹配关系进行校正或优化,例如对可能存在错误、缺失或混乱的绑定关系或匹配关系进行修改,例如包括调整已有的模型框架与模型贴图之间的绑定关系或匹配关系、删除相对于模型框架多余的模型贴图、或者增加相对于模型框架缺失的模型贴图等操作。
81.例如,对于上述步骤s22,通过调整原始模型的模型参数,在实现对原始模型进行校正及优化的基础上,还可以根据实际需求,对原始模型的模型精度进行适当地修改或调整,从而有助于后续基于得到的第一模型进行相应的模型处理操作。
82.图4为本公开一些实施例提供的一种模型处理方法中的步骤s22的示意性流程图。例如,如图4所示,在本公开的一些实施例中,上述步骤s22可以包括以下步骤s301和步骤s302。
83.步骤s301:确定原始模型的原始模型框架与原始模型的原始模型贴图之间是否匹配。
84.步骤s302:响应于原始模型框架与原始模型贴图匹配,调整原始模型的模型参数,创建第一模型。
85.例如,对于上述步骤s301和s302,在确定原始模型的原始模型框架与原始模型贴图匹配后,可以根据实际不同应用需求,对原始模型框架的结构特征或者原始模型贴图的例如颜色、亮度、纹理等模型参数进行修改,以得到优化后的第一模型。例如,在步骤s302中,可以根据实际需要,通过调整原始模型的模型参数,对原始模型的例如结构特征、图案纹理特征、模型精度等进行适应性调整,从而有助于后续基于得到的第一模型进行相应的模型处理或模型转换操作。
86.又例如,在本公开的一些实施例中,在执行上述步骤s301并确定原始模型的原始模型框架与原始模型贴图匹配之后,也可以不修改原始模型的模型参数,直接把原始模型作为第一模型使用,从而简化模型处理的操作流程,提高处理效率。
87.例如,在本公开的一些实施例中,上述步骤s22还可以包括以下步骤s303。
88.步骤s303:响应于原始模型框架与原始模型贴图不匹配,调整原始模型框架与原始模型贴图之间的绑定关系。
89.例如,在原始模型框架与原始模型贴图之间存在不匹配的情况下,例如原始模型框架与原始模型贴图的绑定关系出现错误或出现混乱,则需要对出现错误或出现混乱的绑定关系进行修改或重新匹配,以使重新建立绑定关系后的原始模型框架与原始模型贴图之间能够彼此正确匹配。
90.例如,在本公开的一些实施例中,上述步骤s22还可以包括以下步骤s304。
91.步骤s304:响应于原始模型框架与原始模型贴图不匹配,删除相对于原始模型框架多余的原始模型贴图,或者补充相对于原始模型框架缺少的原始模型贴图。
92.例如,在原始模型框架与原始模型贴图之间存在不匹配的情况下,可能存在部分原始模型框架没有与该部分原始模型框架建立相应绑定关系的原始模型贴图,或者,在全部原始模型框架均具有与其正确匹配且建立绑定关系的原始模型贴图的情况下,原始模型中还存在多余的模型贴图,也即,没有与原始模型框架建立绑定关系的多余贴图信息。因此,通过上述步骤s304可以实现对相对于原始模型框架缺少的原始模型贴图进行补齐,从而提升得到的第一模型的准确度和精确度,同时还可以删除多余的贴图信息,减少可能产生的多余的运算量,降低操作成本,提高操作效率。
93.图5为本公开一些实施例提供的一种模型处理方法中的步骤s11的示意性流程图。例如,如图5所示,在本公开的一些实施例中,上述步骤s11可以包括以下步骤s401和步骤s402。
94.步骤s401:根据第一模型的面数,得到第一预处理模型。
95.步骤s402:基于第一预处理模型的模型框架,创建框架模型。
96.例如,模型的面数可以用于体现模型的精度,例如模型中所包含的面数越多,则模型展示的对于该建模对象的精准度以及精确度也相应地越高,例如可以展示关于该建模对象的更多细节特征。
97.例如,在本公开的一些实施例中,上述步骤s402包括:删除第一预处理模型中的材质信息,以得到框架模型。例如,材质信息包括第一预处理模型的贴图信息,例如包含关于第一预处理模型的图案信息、材质信息或纹理信息等。
98.例如,如图5所示,在本公开的一些实施例中,上述步骤s11还可以包括以下步骤s403。
99.步骤s403:基于框架模型的模型结构,对框架模型进行校正处理。
100.例如,对于得到的框架模型,由于在生成第一预处理模型时,可能对模型中的面数进行了修改或调整,例如进行了减面或增面操作。因此,通过执行步骤s403可以避免在例如减面或增面操作过程中可能出现的错误或混乱,例如在对模型进行减面或增面操作后可能导致的模型结构特征的不合理或混乱,从而有利于实现对生成的框架模型的进一步优化,提升后续基于框架模型生成的第二模型的准确性和精确性。
101.图6为本公开一些实施例提供的一种模型处理方法中的步骤s401的示意性流程图。例如,如图6所示,在本公开的一些实施例中,上述步骤s401可以包括以下步骤s4011至s4013。
102.步骤s4011:确定第一模型的面数是否大于基准面数。
103.步骤s4012:响应于第一模型的面数大于基准面数,对第一模型进行减面操作,以得到第一预处理模型,第一预处理模型的面数小于或等于基准面数。
104.步骤s4013:响应于第一模型的面数小于或等于基准面数,将第一模型作为第一预处理模型。
105.例如,以基于高精度的第一模型生成低精度的第二模型为例,为了降低生成的第二模型的模型精度,可以使第二模型中包含相对较少的面数。因此,在创建框架模型时,可
以根据第一模型中所包含的面数,确定是否需要对第一模型进行减面处理,以使得到的框架模型中可以包含相对较少的面数。换句话说,第一预处理模型、框架模型以及第二模型中包含的面数可以彼此基本相同或基本保持一致。
106.例如,基准面数可以根据实际应用需求确定,例如可以根据所需提供的第二模型的模型精度、应用场景或者运行环境的标准及要求等确定,进而有利于使后续生成的第二模型可以适用于不同的应用设备或应用场景中。
107.图7为本公开一些实施例提供的一种模型处理方法中的步骤s12的示意性流程图。例如,如图7所示,在本公开的一些实施例中,上述步骤s12可以包括以下步骤s501和s502。
108.步骤s501:确定生成的第一模型的模型贴图是否准确。
109.步骤s502:响应于生成的第一模型的模型贴图不准确,重新生成第一模型的模型贴图。
110.例如,对于上述步骤s501和s502,在将基于第一模型得到的模型贴图从模型坐标系映射到贴图坐标系之前,可以将生成的模型贴图与建模对象的例如实际构造、形态、图案、以及纹理信息等进行比较,以保证得到的模型贴图与建模对象相吻合,从而有利于提升后续基于贴图模型和框架模型生成的第二模型的准确性和精确性。
111.例如,如图7所示,在本公开的一些实施例中,上述步骤s12还可以包括以下步骤s503。
112.步骤s503:将模型贴图从模型坐标系映射到贴图坐标系中,得到与模型贴图对应的第一贴图,贴图模型包括第一贴图。
113.例如,第一贴图与模型贴图彼此对应,以使映射后得到的第一贴图同样可以与第一模型的模型框架相匹配,从而获取第一贴图与模型框架之间的绑定关系。
114.图8为本公开一些实施例提供的一种模型处理方法中的步骤s13的示意性流程图。例如,如图8所示,在本公开的一些实施例中,上述步骤s13可以包括以下步骤s601至s603。
115.步骤s601:将第一贴图从贴图坐标系映射到平面坐标系中,得到与第一贴图对应的第二贴图。
116.步骤s602:根据模型贴图与模型框架之间的绑定关系,确定第二贴图与模型框架之间的绑定关系。
117.步骤s603:根据第二贴图与模型框架之间的绑定关系,将第二贴图与框架模型进行绑定,以生成第二模型。
118.例如,为了有助于对模型中的贴图信息进行准确地提取,第一贴图和模型贴图可以用于表示模型中的三维贴图信息。例如,第二贴图可以用于实现将该三维贴图信息转换为二维贴图信息使用,进而有利于后续将第二贴图与模型框架之间进行绑定或匹配,例如基于第二贴图与模型框架进行合成处理,以生成相应的第二模型。
119.例如,第二贴图与第一贴图之间彼此对应,也即,第二贴图与模型贴图之间同样存在对应关系。由此,可以使映射后得到的第二贴图同样可以与第一模型的模型框架之间相匹配,从而建立第二贴图与模型框架之间的绑定关系。进而,在将第二贴图与框架模型进行例如绑定或合成等处理后,即可得到相应的第二模型。
120.例如,如图8所示,在本公开的一些实施例中,上述步骤s13还可以包括以下步骤s604。
121.步骤s604:基于第一模型的材质信息,赋予第二贴图材质属性。
122.例如,材质信息可以包括与建模对象的纹理、图案、构造材料等有关的信息,由此可以使第二贴图与建模对象的实际图案、材质、纹理等相匹配或吻合,进而提升后续基于第二贴图生成的第二模型的准确性和精确性。
123.例如,在一些实施例中,上述基于贴图模型中的第一贴图得到对应的第二贴图的操作过程以及创建贴图模型的操作过程可以在同一软件环境下实现;或者,在一些实施例中,上述基于贴图模型中的第一贴图得到对应的第二贴图的软件环境也可以不同于创建贴图模型的软件环境,本公开的实施例对此不作具体限制。
124.图9为本公开一些实施例提供的一种模型处理方法的具体示例的示意性流程图。
125.例如,结合图2a至图2c中所示的关于床的家居设计模型的示例为例,本公开实施例提供的模型处理方法可以在例如ue4软件操作环境中实现。
126.如图9所示,以基于高精度的家居模型生成相应的低精度的家居模型为例,首先获取已创建的且可以在ue4软件操作环境中运行的高精度模型,也即,上文中所述的原始模型。然后,确定该高精度模型的材质信息与框架结构(section)之间是否保持一致。若该高精度模型的材质信息与框架结构之间一致,例如彼此对应或匹配,则继续执行后续步骤;若该高精度模型的材质信息与框架结构之间存在不一致,则对该高精度模型的材质信息与框架结构之间进行校正或矫正处理,以使二者之间保持一致后再继续执行后续步骤。
127.在满足该高精度模型的材质信息与框架结构之间彼此匹配之后,可以根据实际需求,对该高精度模型的模型参数(例如uv参数)进行设置,以生成新的模型a(例如图2a中所示的家居模型),也即上文中所述的第一模型。在得到例如图2a中所示的模型a后,可以提取该模型a中的贴图信息或材质信息,以得到模型a的模型贴图(例如lightmapuv),以及提取该模型a中的框架信息或结构信息,以得到模型a的模型框架。
128.例如,在提取模型a的模型框架之前,需要预先根据模型a的面数确定是否需要对模型a进行减面处理。例如,需要判断模型a的面数是否大于预设的低模基准面数,也即上文中所述的基准面数。若模型a的面数大于预设的低模基准面数,则需要对模型a进行减面处理。例如,在执行减面操作时,需要计算相应的减面比例,并根据该减面比例对模型a进行减面处理,该减面比例可以为预设的低模基准面数与模型a的面数之间的比值,由此得到对模型a进行减面处理后的减面模型,也即上文中所述的第一预处理模型。若模型a的面数等于或小于预设的低模基准面数,则不需要对模型a进行减面处理,例如相应的减面比例为1,也即,不需要进行减面操作,直接将模型a作为上述第一预处理模型进行后续步骤。
129.例如,在得到第一预处理模型后,删除第一预处理模型中的材质结构、纹理图案等贴图信息,以得到对应于该第一预处理模型的“白模”,即模型b(例如图2b中所示的模型),也即上文中所述的框架模型。例如,该模型b可以存储并导出为例如glb格式或fbx格式等等。然后,判断得到的该模型b是否需要进行校准或矫正处理,例如判断以glb或fbx等格式存储的模型b的尺寸、中心点等是否符合建模规则,例如是否满足低精度模型规则。若该模型b符合建模规则,则可以将该模型b继续用于后续步骤中;若该模型b不符合建模规则,则需要重新对模型b的例如尺寸、中心点等进行矫正处理,以使模型b符合建模规则。
130.例如,对于提取得到的模型a的模型贴图,可以根据所建模的家居对象判断该模型贴图是否准确。若确定获取的模型a的模型贴图正确,则将该模型贴图映射到贴图坐标系中
以生成模型c(例如图2c中所示的模型),也即上文中所述的贴图模型。例如,可以将模型贴图按照贴图的各个顶点在贴图坐标系中依次铺开,以构建模型c。若获取的模型a的模型贴图不准确,例如模型贴图的图案、纹理等与建模对象不匹配,或者出现图像信息遗漏或丢失,则需要重新从模型a中提取相应的模型贴图(例如表示为uv0),并继续判断重新获取后的模型贴图是否准确。
131.在生成模型c后,可以基于实际的家居场景对模型c中的贴图信息进行比较和分析,以生成对应的平面lightmap贴图,也即上文中所述的第二贴图。进而,在后续赋予lightmap贴图与家居场景对应的材质信息或纹理信息后,可以将该lightmap贴图与模型框架通过合成单元或合成插件(例如blender)进行匹配或绑定,由此生成关于该家居对象的低精度模型,例如该低精度模型可以存储为glb格式或fbx格式等。
132.需要说明的是,在本公开的实施例中,本公开上述各个实施例提供的模型处理方法的流程可以包括更多或更少的操作,这些操作可以顺序执行或并行执行。虽然上文描述的模型处理方法的流程包括特定顺序出现的多个操作,但是应该清楚地了解,多个操作的顺序并不受限制。上文描述的模型处理方法可以执行一次,也可以按照预定条件执行多次。
133.本公开至少一实施例还提供一种模型处理装置。图10为本公开一些实施例提供的一种模型处理装置的示意性框图。
134.例如,如图10所示,该模型处理装置700包括框架模型创建单元701、贴图模型创建单元702和模型生成单元703。
135.框架模型创建单元701配置为基于第一模型的模型框架,创建框架模型,第一模型的模型精度为第一精度,第一模型的坐标系为模型坐标系。例如,框架模型创建单元701可以执行图1中所示的模型处理方法中的步骤s11。
136.贴图模型创建单元702配置为基于第一模型,生成第一模型的模型贴图,并将模型贴图从模型坐标系映射到贴图坐标系中,创建贴图模型,模型贴图与模型框架之间具有绑定关系。例如,贴图模型创建单元702可以执行图1中所示的模型处理方法中的步骤s12。
137.模型生成单元703配置为基于框架模型和贴图模型,生成第二模型,第二模型的模型精度为第二精度,第二精度不同于第一精度。例如模型生成单元703可以执行图1中所示的模型处理方法中的步骤s13。
138.例如,框架模型创建单元701、贴图模型创建单元702和模型生成单元703包括存储在存储器中的代码和程序;处理器可以执行该代码和程序以实现如上所述的框架模型创建单元701、贴图模型创建单元702和模型生成单元703的一些功能或全部功能。例如,框架模型创建单元701、贴图模型创建单元702和模型生成单元703可以是专用硬件器件,用来实现如上所述的框架模型创建单元701、贴图模型创建单元702和模型生成单元703的一些或全部功能。例如,框架模型创建单元701、贴图模型创建单元702和模型生成单元703可以是一个电路板或多个电路板的组合,用于实现如上所述的功能。在本技术实施例中,该一个电路板或多个电路板的组合可以包括:(1)一个或多个处理器;(2)与处理器相连接的一个或多个非暂时的存储器;以及(3)处理器可执行的存储在存储器中的固件。
139.需要说明的是,框架模型创建单元701用于实现图1所示的步骤s11,贴图模型创建单元702用于实现图1所示的步骤s12,模型生成单元703用于实现图1所示的步骤s13,从而关于框架模型创建单元701、贴图模型创建单元702和模型生成单元703的具体说明可以分
别参考上述模型处理方法的实施例中对应于图1所示的步骤s11至步骤s13的相关描述。此外,模型处理装置可以实现与前述模型处理方法相似的技术效果,在此不再赘述。
140.图11为本公开一些实施例提供的另一种模型处理装置的示意性框图。例如,如图11所示,除框架模型创建单元701、贴图模型创建单元702和模型生成单元703以外,该模型处理装置800还包括模型获取单元704。
141.例如,该模型获取单元704配置为:获取原始模型,以及调整原始模型的模型参数,创建第一模型。
142.例如,该模型获取单元704可以用于:确定原始模型的原始模型框架与原始模型的原始模型贴图之间是否匹配;以及响应于原始模型框架与原始模型贴图匹配,调整原始模型的模型参数,创建第一模型。
143.例如,该模型获取单元704还可以用于:响应于原始模型框架与原始模型贴图不匹配,调整原始模型框架与原始模型贴图之间的绑定关系。
144.例如,该模型获取单元704还可以用于:响应于原始模型框架与原始模型贴图不匹配,删除相对于原始模型框架多余的原始模型贴图,或者补充相对于原始模型框架缺少的原始模型贴图。
145.例如,模型获取单元704包括存储在存储器中的代码和程序;处理器可以执行该代码和程序以实现如上所述的模型获取单元704的一些功能或全部功能。例如,模型获取单元704可以是专用硬件器件,用来实现如上所述的模型获取单元704的一些或全部功能。例如,模型获取单元704可以是一个电路板或多个电路板的组合,用于实现如上所述的功能。在本技术实施例中,该一个电路板或多个电路板的组合可以包括:(1)一个或多个处理器;(2)与处理器相连接的一个或多个非暂时的存储器;以及(3)处理器可执行的存储在存储器中的固件。需要说明的是,模型获取单元704可以用于实现例如图3所示的步骤s21和s22,从而关于模型获取单元704的具体说明可以参考上述模型处理方法的实施例中对应于图3所示的步骤s21和s22的相关描述,在此不再赘述。
146.例如,框架模型创建单元701还配置为:根据第一模型的面数,得到第一预处理模型;以及基于第一预处理模型的模型框架,创建框架模型。
147.例如,框架模型创建单元701还配置为:确定第一模型的面数是否大于基准面数;响应于第一模型的面数大于基准面数,对第一模型进行减面操作,以得到第一预处理模型,第一预处理模型的面数小于或等于基准面数;以及响应于第一模型的面数小于或等于基准面数,将第一模型作为第一预处理模型。
148.例如,框架模型创建单元701还配置为:删除第一预处理模型中的材质信息,以得到框架模型,材质信息包括第一预处理模型的贴图信息。
149.例如,框架模型创建单元701还配置为:基于框架模型的模型结构,对框架模型进行校正处理。
150.例如,贴图模型创建单元702还配置为:确定生成的第一模型的模型贴图是否准确;以及响应于生成的第一模型的模型贴图不准确,重新生成第一模型的模型贴图。
151.例如,贴图模型创建单元702还配置为:将模型贴图从模型坐标系映射到贴图坐标系中,得到与模型贴图对应的第一贴图,贴图模型包括第一贴图。
152.例如,模型生成单元703还配置为:将第一贴图从贴图坐标系映射到平面坐标系
中,得到与第一贴图对应的第二贴图;根据模型贴图与模型框架之间的绑定关系,确定第二贴图与模型框架之间的绑定关系;以及根据第二贴图与模型框架之间的绑定关系,将第二贴图与框架模型进行绑定,以生成第二模型。
153.例如,模型生成单元703还配置为:基于第一模型的材质信息,赋予第二贴图材质属性。
154.本公开至少一个实施例还提供一种电子设备,该电子设备包括处理器和存储器。该存储器包括一个或多个计算机可执行指令。一个或多个计算机可执行指令被存储在存储器中并被配置为由处理器执行,一个或多个计算机可执行指令用于实现本公开任一实施例提供的模型处理方法。
155.图12为本公开一些实施例提供的一种电子设备的示意框图。如图12所示,该电子设备300包括处理器310和存储器320。存储器320用于非瞬时性地存储有计算机可执行指令(例如一个或多个计算机程序模块)。处理器310用于运行该计算机可执行指令,该计算机可执行指令被处理器310运行时可以执行上文所述的模型处理方法中的一个或多个步骤,进而实现上文所述的模型处理方法。存储器320和处理器310可以通过总线系统和/或其它形式的连接机构(未示出)互连。
156.例如,处理器310可以是中央处理单元(cpu)、图形处理单元(gpu)或者具有数据处理能力和/或程序执行能力的其它形式的处理单元。例如,中央处理单元(cpu)可以为x86或arm架构等。处理器310可以为通用处理器或专用处理器,可以控制电子设备300中的其它组件以执行期望的功能。
157.例如,存储器320可以包括一个或多个计算机程序产品的任意组合,计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。易失性存储器例如可以包括随机存取存储器(ram)和/或高速缓冲存储器(cache)等。非易失性存储器例如可以包括只读存储器(rom)、硬盘、可擦除可编程只读存储器(eprom)、便携式紧致盘只读存储器(cd-rom)、usb存储器、闪存等。在计算机可读存储介质上可以存储一个或多个计算机程序模块,处理器310可以运行一个或多个计算机程序模块,以实现电子设备300的各种功能。在计算机可读存储介质中还可以存储各种应用程序和各种数据以及应用程序使用和/或产生的各种数据等。
158.需要说明的是,本公开的实施例中,电子设备300的具体功能和技术效果可以参考上文中关于模型处理方法以及模型处理装置的描述,此处不再赘述。
159.图13为本公开一些实施例提供的另一种电子设备的示意框图。该电子设备400例如适于用来实施本公开实施例提供的模型处理方法。电子设备400可以是终端设备等。电子设备400可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、车载终端(例如车载导航终端)、可穿戴电子设备等等的移动终端以及诸如数字tv、台式计算机、智能家居设备等等的固定终端。需要注意的是,图13示出的电子设备400仅仅是一个示例,其不会对本公开实施例的功能和使用范围带来任何限制。
160.如图13所示,电子设备400可以包括处理装置(例如中央处理器、图形处理器等)410,其可以根据存储在只读存储器(rom)420中的程序或者从存储装置480加载到随机访问存储器(ram)430中的程序而执行各种适当的动作和处理。在ram 430中,还存储有电子设备
400操作所需的各种程序和数据。处理装置410、rom 420以及ram 430通过总线440彼此相连。输入/输出(i/o)接口450也连接至总线440。
161.通常,以下装置可以连接至i/o接口450:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置460;包括例如液晶显示器(lcd)、扬声器、振动器等的输出装置470;包括例如磁带、硬盘等的存储装置480;以及通信装置490。通信装置490可以允许电子设备400与其他电子设备进行无线或有线通信以交换数据。虽然图12示出了具有各种装置的电子设备400,但应理解的是,并不要求实施或具备所有示出的装置,电子设备400可以替代地实施或具备更多或更少的装置。
162.例如,根据本公开的实施例,上述模型处理方法可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包括用于执行上述模型处理方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置490从网络上被下载和安装,或者从存储装置480安装,或者从rom 420安装。在该计算机程序被处理装置410执行时,可以实现本公开实施例提供的模型处理方法中限定的功能。
163.图14为本公开一些实施例提供的一种存储介质的示意图。例如,如图14所示,存储介质500可以为非暂时性计算机可读存储介质,用于存储非暂时性计算机可执行指令501。当非暂时性计算机可执行指令501由处理器执行时可以实现本公开实施例所述的模型处理方法,例如,当非暂时性计算机可执行指令501由处理器执行时,可以执行根据上文所述的模型处理方法中的一个或多个步骤。
164.例如,该存储介质500可以应用于上述电子设备中,例如,该存储介质500可以包括电子设备中的存储器。
165.例如,存储介质可以包括智能电话的存储卡、平板电脑的存储部件、个人计算机的硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom)、便携式紧致盘只读存储器(cd-rom)、闪存、或者上述存储介质的任意组合,也可以为其他适用的存储介质。
166.例如,关于存储介质500的说明可以参考电子设备的实施例中对于存储器的描述,重复之处不再赘述。存储介质500的具体功能和技术效果可以参考上文中关于模型处理方法以及模型处理装置的描述,此处不再赘述。
167.对于本公开,还有以下几点需要说明:
168.(1)本公开实施例附图只涉及到本公开实施例涉及到的结构,其他结构可参考通常设计。
169.(2)在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合以得到新的实施例。
170.以上所述,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,本公开的保护范围应以所述权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献