CN113032699B - 机器人的模型构建方法、模型构建装置和处理器 - Google Patents
机器人的模型构建方法、模型构建装置和处理器 Download PDFInfo
- Publication number
- CN113032699B CN113032699B CN202110241006.8A CN202110241006A CN113032699B CN 113032699 B CN113032699 B CN 113032699B CN 202110241006 A CN202110241006 A CN 202110241006A CN 113032699 B CN113032699 B CN 113032699B
- Authority
- CN
- China
- Prior art keywords
- model
- preparation
- robot
- final
- mapping
- 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
- 238000010276 construction Methods 0.000 title claims description 13
- 238000002360 preparation method Methods 0.000 claims abstract description 152
- 238000013507 mapping Methods 0.000 claims abstract description 79
- 238000000034 method Methods 0.000 claims abstract description 79
- 230000006835 compression Effects 0.000 claims abstract description 43
- 238000007906 compression Methods 0.000 claims abstract description 43
- 238000004088 simulation Methods 0.000 claims description 52
- 239000003086 colorant Substances 0.000 claims description 35
- 230000008569 process Effects 0.000 claims description 30
- 238000005457 optimization Methods 0.000 claims description 16
- 238000012545 processing Methods 0.000 claims description 16
- 238000005516 engineering process Methods 0.000 claims description 13
- 238000009877 rendering Methods 0.000 claims description 11
- 238000012544 monitoring process Methods 0.000 claims description 10
- 238000003860 storage Methods 0.000 claims description 10
- 238000013515 script Methods 0.000 claims description 6
- 230000000694 effects Effects 0.000 description 14
- 230000006870 function Effects 0.000 description 14
- 239000000463 material Substances 0.000 description 10
- 238000013139 quantization Methods 0.000 description 10
- 238000004422 calculation algorithm Methods 0.000 description 6
- 238000005286 illumination Methods 0.000 description 6
- 238000011161 development Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000005520 cutting process Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000008093 supporting effect Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000012800 visualization Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- 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
- G06T5/00—Image enhancement or restoration
- G06T5/40—Image enhancement or restoration using histogram techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/40—Analysis of texture
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/90—Determination of colour characteristics
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Geometry (AREA)
- Databases & Information Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请提供了一种机器人的模型构建方法、模型构建装置和处理器。该方法包括:对机器人进行建模,得到机器人的第一预备模型;对第一预备模型进行贴图,形成第二预备模型;对第二预备模型的贴图进行有损压缩,得到最终模型,最终模型的数据量小于第二预备模型的数据量;加载最终模型,以展示最终模型。该方法中,通过对第一预备模型进行贴图,可以形成第二预备模型,形成的第二预备模型的贴图经过有损压缩,得到最终模型,由于经过了有损压缩,使得最终模型的数据量小于第二预备模型的数据量,进而在对最终模型加载时,加载的数据量较少,提高了模型的加载速度,从而解决了模型加载速度较慢造成卡顿的问题。
Description
技术领域
本申请涉及三维模型显示领域,具体而言,涉及一种机器人的模型构建方法、模型构建装置、计算机可读存储介质和处理器。
背景技术
近年来,国内建筑机器人等机器人产业蓬勃发展,仅碧桂园博智林项目就有在研机器人50多款。由于建筑机器人等机器人研发周期比较长,涉及机器人设计、施工工艺仿真、测试等多个阶段,需要对机器人进行细节结构展示、零部件安装示范、机器人颜色调整、基本施工方案仿真等。
然而,研发过程中使用的Solidwork等三维软件展示时,响应速度慢,容易出现卡顿,并且要求用户安装体量庞大的客户端,不仅需要浪费大量资金购买软件许可,而且安装步骤繁琐、效果不好。
背景技术部分中公开的以上信息只是用来加强对本文所描述技术的背景技术的理解,因此,背景技术中可能包含某些信息,这些信息对于本领域技术人员来说并未形成在本国已知的现有技术。
发明内容
本申请的主要目的在于提供一种机器人的模型构建方法、模型构建装置、计算机可读存储介质和处理器,以解决现有技术中模型加载速度较慢造成卡顿的问题。
根据本发明实施例的一个方面,提供了一种机器人的模型构建方法,包括:对机器人进行建模,得到所述机器人的第一预备模型;对所述第一预备模型进行贴图,形成第二预备模型;对所述第二预备模型的贴图进行有损压缩,得到最终模型,所述最终模型的数据量小于所述第二预备模型的数据量;加载所述最终模型,以展示所述最终模型。
可选地,对机器人进行建模,得到所述机器人的第一预备模型,包括:对所述机器人的各个组成部分进行等比例建模,形成初始模型;对所述初始模型进行结构优化,得到所述第一预备模型,所述第一预备模型的体积小于所述初始模型,且所述第一预备模型的点的数量小于所述初始模型的点的数量,所述第一预备模型的线的数量小于所述初始模型的线的数量,所述第一预备模型的面的数量小于所述初始模型的面的数量。
可选地,对所述初始模型进行结构优化,得到第一预备模型,包括:采用Autodeskmaya软件对所述初始模型进行所述结构优化。
可选地,对所述第一预备模型进行贴图,形成第二预备模型,包括:使用maya软件对所述第一预备模型进行预渲染;对预渲染后的所述第一预备模型进行单通道贴图,形成所述第二预备模型。
可选地,对预渲染后的所述第一预备模型进行单通道贴图,形成所述第二预备模型,包括:加载预渲染后的所述第一预备模型;对预渲染后的所述第一预备模型新建UV通道,并对新建的所述UV通道中的UV进行处理,生成处理后的纹理图;对处理后的所述纹理图的所述UV通道进行烘焙,且将烘焙后的所述纹理图贴到原始UV通道中,删除多余的所述UV通道,形成所述第二预备模型,其中,所述原始UV通道为包括所述第一预备模型的原纹理的UV通道。
可选地,对新建的所述UV通道中的UV进行处理,生成处理后的纹理图,包括:对新建的所述UV通道中的UV进行展开;调整展开后的所述UV的缝隙参数,得到调整后的所述UV;重新排布调整后的所述UV,生成处理后的所述纹理图。
可选地,对处理后的所述纹理图的所述UV通道进行烘焙,且将烘焙后的所述纹理图贴到原始UV通道中,删除多余的所述UV通道,形成所述第二预备模型,其中,所述原始UV通道为包括所述第一预备模型的原纹理的UV通道,还包括:将删除多余的所述UV通道之后的所述第一预备模型的格式转换为gltf格式。
可选地,对所述第二预备模型的贴图进行有损压缩,得到最终模型,包括:对所述贴图的颜色进行量化,得到多个色盒;根据多个所述色盒,确定颜色直方图;确定每个色盒的颜色平均值,并建立调色板;采用所述色盒的索引值替换所述颜色直方图中对应位置处的颜色值;根据所述色盒在所述颜色直方图中的位置,确定对应的索引值;根据所述索引值,输出压缩后的贴图,得到所述最终模型。
可选地,加载所述最终模型,以展示所述最终模型,包括:使用引擎搭建虚拟场景;在所述虚拟场景中加载所述最终模型。
可选地,使用引擎搭建虚拟场景,包括:使用WebGL的Three.js引擎搭建所述虚拟场景。
可选地,在加载所述最终模型,以展示所述最终模型之后,所述方法还包括:加载所述最终模型的各所述组成部分,各所述组成部分对应的信息包括特定功能javascript脚本以及对应的贴图纹理信息;根据所述机器人装配的实际工艺,将所述组成部分拖入对应的装配区进行组装,形成所述机器人的仿真模型。
可选地,在形成所述机器人的仿真模型之后或者在得到所述最终模型之后,所述方法还包括:加载仿真建筑场景模型;将所述仿真模型或者所述最终模型加入所述仿真建筑场景模型中,根据所述机器人的实际施工工艺进行工艺仿真。
可选地,在形成所述机器人的仿真模型之后或者在得到所述最终模型之后,所述方法还包括:通过HTML5技术在浏览器的界面中创建模型的操作界面;对所述浏览器添加鼠标移动监听事件以及点击监听事件,并绑定事件处理函数,以通过在所述操作界面的预定操作实现对所述仿真模型或者所述最终模型的调整。
根据本发明实施例的又一方面,还提供了一种机器人的模型构建装置,包括:建模单元,用于对机器人进行建模,得到所述机器人的第一预备模型;贴图单元,用于对所述第一预备模型进行贴图,形成第二预备模型;有损压缩单元,用于对所述第二预备模型的贴图进行有损压缩,得到最终模型,所述最终模型的数据量小于所述第二预备模型的数据量;第一加载单元,用于加载所述最终模型,以展示所述最终模型。
根据本发明实施例的另一方面,还提供了一种计算机可读存储介质,所述存储介质包括存储的程序,其中,所述程序执行任意一种所述的方法。
根据本发明实施例的另一方面,还提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行任意一种所述的方法。
在本发明实施例中,首先,对机器人进行建模,得到机器人的第一预备模型,之后,对第一预备模型进行贴图,形成第二预备模型,然后,对第二预备模型的贴图进行有损压缩,得到最终模型,其中,最终模型的数据量小于第二预备模型的数据量,最后,加载最终模块,以展示最终模型。该方法中,通过对第一预备模型进行贴图,可以形成第二预备模型,形成的第二预备模型的贴图经过有损压缩,得到最终模型,由于经过了有损压缩,使得最终模型的数据量小于第二预备模型的数据量,进而在对最终模型加载时,加载的数据量较少,提高了模型的加载速度,从而解决了模型加载速度较慢造成卡顿的问题。该方法可以满足用户对服务器的并发性需求,使得加载速度较快,用户的体验效果较好。
附图说明
构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1示出了根据本申请的实施例的一种机器人的模型构建方法的流程示意图;
图2示出了搭建虚拟场景的示意图;
图3示出了根据本申请的实施例的一种机器人的模型构建装置的结构示意图;
图4示出了根据本申请的实施例的另一种机器人的模型构建方法的流程示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应该理解的是,当元件(诸如层、膜、区域、或衬底)描述为在另一元件“上”时,该元件可直接在该另一元件上,或者也可存在中间元件。而且,在说明书以及权利要求书中,当描述有元件“连接”至另一元件时,该元件可“直接连接”至该另一元件,或者通过第三元件“连接”至该另一元件。
正如背景技术中所说的,现有技术中模型加载速度较慢造成卡顿,为了解决上述问题,本申请的一种典型的实施方式中,提供了一种机器人的模型构建方法、模型构建装置、计算机可读存储介质和处理器。
根据本申请的实施例,提供了一种机器人的模型构建方法。图1是根据本申请实施例的机器人的模型构建方法的流程图。如图1所示,该方法包括以下步骤:
步骤S101,对机器人进行建模,得到上述机器人的第一预备模型;
步骤S102,对上述第一预备模型进行贴图,形成第二预备模型;
步骤S103,对上述第二预备模型的贴图进行有损压缩,得到最终模型,上述最终模型的数据量小于上述第二预备模型的数据量;
步骤S103,加载上述最终模型,以展示上述最终模型。
上述的方法中,首先,对机器人进行建模,得到机器人的第一预备模型,之后,对第一预备模型进行贴图,形成第二预备模型,然后,对第二预备模型的贴图进行有损压缩,得到最终模型,其中,最终模型的数据量小于第二预备模型的数据量,最后,加载最终模块,以展示最终模型。该方法中,通过对第一预备模型进行贴图,可以形成第二预备模型,形成的第二预备模型的贴图经过有损压缩,得到最终模型,由于经过了有损压缩,使得最终模型的数据量小于第二预备模型的数据量,进而在对最终模型加载时,加载的数据量较少,提高了模型的加载速度,从而解决了模型加载速度较慢造成卡顿的问题。该方法可以满足用户对服务器的并发性需求,使得加载速度较快,用户的体验效果较好。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请的一种实施例中,对机器人进行建模,得到上述机器人的第一预备模型,包括:对上述机器人的各个组成部分进行等比例建模,形成初始模型;对上述初始模型进行结构优化,得到上述第一预备模型,所述第一预备模型满足以下预定条件的至少之一:上述第一预备模型的体积小于上述初始模型、上述第一预备模型的点的数量小于上述初始模型的点的数量、上述第一预备模型的线的数量小于上述初始模型的线的数量、上述第一预备模型的面的数量小于上述初始模型的面的数量。该实施例中,在三维模型的数据量过大时,导入到Web中进行模型位置的定位、模型参数的调整等操作前,对机器人的各个组成部分进行等比例建模,可以对机器人的雷达、底盘、轮子等进行等比例建模,可以控制线面的精确度,保证了机器人在装配过程中不发生碰撞的情况。后续对建模后的结构进行优化,得到的第一预备模型的数据量较小,在保证几何外形特征突出的原则上,可以减少数据量,得到的第一预备模型更为简化,体积也较小,可以进一步提高模型加载的速度,保证了模型导入和后续交互时速度更快。
需要说明的是,可以采用Solidworks、ProE或者UG对机器人的各个组成部分进行等比例建模,还可以采用其他的软件对机器人的各个组成部分进行等比例建模,本领域技术人员可以根据实际情况选择合适的软件来对机器人的各个组成部分进行等比例建模。
本申请的又一种实施例中,对上述初始模型进行结构优化,得到第一预备模型,包括:采用Autodesk maya软件对上述初始模型进行上述结构优化。该实施例中,Autodeskmaya软件对百万级面数模型的支持效果较好,该软件内部具有更加方便快捷的减面命令和布线命令,可以更高效地对模型进行结构优化。
当然,并不限于上述的软件,还可以为3dmax、zbrush、C4D等三维设计软件,本领域技术人员可以根据实际情况选择合适的软件。
本申请的另一种实施例中,对上述第一预备模型进行贴图,形成第二预备模型,包括:使用maya软件对上述第一预备模型进行预渲染;对预渲染后的上述第一预备模型进行单通道贴图,形成上述第二预备模型。该实施例中,通过对第一预备模型进行预渲染,再对预渲染后的第一预备模型进行单通道贴图,形成的第二预备模型可以更细致地体现机器人的真实外形,使得仿真效果更为真实,可以实现机器人材料的材质作为参考,同时可以进一步减小模型的数据量,进一步简化了在给大量材质球添加贴图材质的过程。
本申请的再一种实施例中,对预渲染后的所述第一预备模型进行单通道贴图,形成所述第二预备模型,包括:加载预渲染后的所述第一预备模型;对预渲染后的所述第一预备模型新建UV通道,并对新建的所述UV通道中的UV进行处理,生成处理后的纹理图;对处理后的所述纹理图的所述UV通道进行烘焙,且将烘焙后的所述纹理图贴到原始UV通道中,删除多余的所述UV通道,形成所述第二预备模型,其中,所述原始UV通道为包括所述第一预备模型的原纹理的UV通道。该实施例中,可以进行贴图和材质的制作,以及UV通道的烘焙,可以调整位置信息以及设计简单的动画效果,烘焙后的纹理图含有光照、漫反射颜色以及凹凸等信息,纹理图中有很多冗余色彩,在不影响逼真度的情况下,对于不必要的色彩进行剔除,即删除多余的UV通道,可以得到单通道贴图,相对于漫反射贴图、法线贴图和高光贴图来说,单通道贴图的数据量更小,这样可以进一步减小三维模型文件的大小。
具体地,可以把色彩空间分成多个包含相等数量色彩的立体单元,色彩单元中心的颜色可以代表色彩单元的其他颜色,从而通过减少贴图中颜色的数量来减小贴图的大小。
为了进一步保证模型文件的数据量较小,本申请的一种实施例中,对新建的所述UV通道中的UV进行处理,生成处理后的纹理图,包括:对新建的所述UV通道中的UV进行展开;调整展开后的所述UV的缝隙参数,得到调整后的所述UV;重新排布调整后的所述UV,生成处理后的所述纹理图。
本申请的一种具体的实施例中,对处理后的所述纹理图的所述UV通道进行烘焙,且将烘焙后的所述纹理图贴到原始UV通道中,删除多余的所述UV通道,形成所述第二预备模型,包括:将删除多余的上述UV通道之后的上述第一预备模型的格式转换为gltf格式。该实施例中,可以使用开源工具fbx2gltf命令行工具将fbx格式转换为gltf格式,gltf格式文件相对于fbx格式文件的体积更小,进而进一步减小了模型文件的大小。
本申请的又一种具体的实施例中,对上述第二预备模型的贴图进行有损压缩,得到最终模型,包括:对上述贴图的颜色进行量化;根据多个所述色盒,确定颜色直方图;确定每个所述色盒的颜色平均值,并建立调色板;采用所述色盒的索引值替换所述颜色直方图中对应位置处的颜色值;根据所述色盒在所述颜色直方图中的位置,确定对应的索引值;根据所述索引值,输出压缩后的贴图,得到所述最终模型。这样通过量化后的调色板的颜色来代替原来的颜色,从而减少颜色的数量,从而可以进一步减小模型文件的大小,从而提高其的加载速度。并且,该方案中,索引值都是查找调色板来确定的,无需重新计算索引,这样可以很快速地得出图像色彩的量化值,从而高效地得到最终模型。
具体的一种实施例中,上述过程中,首先对贴图进行位截断,将RGB空间中所有颜色的直方图从24位预量化为15位(5:5:5),将原RGB空间采用划分为8×8×8的立方体单元,每个单元表示一种颜色,这样采样后的RGB空间中的每种颜色表征原RGB空间中的512种颜色,由于贴图的颜色在RGB空间分布的复杂性,预量化可能会导致最终量化结果的误差增大,分辨率相对不高。
为了进一步保证预量化后的分辨率较高,进而提高切割的量化质量,本申请的另一种具体的实施例中,可以采用18位(6:6:6)的分辨率,使用2个字符的无符号整数,以此来减小存储直方图空间,选择调色板为对每个色盒的所有颜色,在切割以前每个颜色的次数为权值求出数学sum(c_i×f_i)/sum(f_i),作为量化后的该色盒的颜色,然后求出该色盒R、G、B各分量全部集合的方差。接着分别沿色盒R、G、B轴计算部分集的方差,直到大于全部集合方差的一半,则以此时的R、G、B作为分割点,再根据颜色盒指定的立方盒在色彩直方图中的位置和颜色盒的索引值,将原色彩直方图的值填为颜色索引值的原中位切割算法代码(下方示出的原代码):其中n表示量化后的图像,o为原图像,find_nearby_color函数的功能是在每个像素位都需要从颜色查找表中计算出与原图像中最邻近颜色的索引,因此计算量非常大,改进后的算法(下方示出的改进代码)为改进后的算法,求颜色索引是基于查找表(调色板)进行的,而不需要重新计算索引,这样可以快速地得出图像色彩的量化值,进而可以进一步减小模型文件的大小(例如,未进行有损压缩时的贴图大小为3.4MB,经过有损压缩后的贴图大小为750.6KB,贴图减小了70%左右的大小),从而可以进一步提高加载速度。具体地,采用有损压缩可以进一步满足大体量数据的并发请求,且传播性和实用性更强,其技术转化率效果也较强。
原代码:
改进代码:
具体地,本申请的另一种实施例中,加载上述最终模型,以展示上述最终模型,包括:使用引擎搭建虚拟场景;在上述虚拟场景中加载上述最终模型;布置图像采集设备并设定预定光照条件。该实施例中,图像采集设备可以为摄像机,布置摄像机和光照条件,根据输入和导入的数据格式解析图形,可以模拟接近真实的机器人的三维视觉效果。具体地,可以在WEB端布置摄像头和设置平行光。保证虚拟场景正常显示,以搭建虚拟仿真环境。
本申请的再一种实施例中,使用引擎搭建虚拟场景,包括:使用WebGL的Three.js引擎搭建上述虚拟场景。该实施例中,WebGL技术具有跨浏览器、跨平台的兼容性,可以满足电脑、平板或者手机的在线浏览,Three.js引擎是一种成熟且开源的引擎,可以接触到底层代码,使得开发更加灵活,同时节省了成本,当然并不限于上中的引擎,还可以为thing.js或者图扑软件等来搭建虚拟场景。
具体地一种实施例中,可以使用WebGL的GLSL作为着色器的语言,为HTML5 Canvas提供3D加速渲染,使开发人员借助系统GPU可以在浏览器中更为流畅的展示3D场景,创建更为复杂的视觉化数据,后续可以更为方便地进行工艺仿真。
一种具体地实施例中,如图2所示,HTML5技术在常用浏览器中进行应用,javascript程序通过HTML5技术的Canvas运行3D环境,使用WebGL的Three.js引擎搭建虚拟场景。
本申请的又一种实施例中,在加载上述最终模型,以展示上述最终模型之后,上述方法还包括:加载上述最终模型的各上述组成部分,各上述组成部分对应的信息包括特定功能javascript脚本以及对应的贴图纹理信息;根据上述机器人装配的实际工艺,将上述组成部分拖入对应的装配区进行组装,形成上述机器人的仿真模型。该实施例中,通过加载最终模型的各组成部分,可以建立分布式的模型数据库和模型匹配信息数据库,统一接口文件,具体信息为模型贴图、模型姿态、模型部件型号等,该实施例可以得到较为准确地机器人的仿真模型,后续可以根据准确的仿真模型更高效地进行工艺仿真。具体地,机器人的拖拽、移动、旋转等通用操作通常会由挂载在场景摄像机中的javascript脚本控制。
本申请的另一种实施例中,在形成所述机器人的仿真模型之后或者在得到所述最终模型之后,上述方法还包括:加载仿真建筑场景模型;将上述仿真模型或者上述最终模型加入上述仿真建筑场景模型中,根据上述机器人的实际施工工艺进行工艺仿真。该实施例中,可以更为高效且准确地进行工艺仿真,且可以充分利用Web数据交互的特点,把模型数据保存在云端,可以实时调用,在浏览器中重构模型,且在模型部件的相关性基础之上,可以更充分地考虑数据的完整性,规避技术冲突。
本申请的再一种实施例中,在形成所述机器人的仿真模型之后或者在得到所述最终模型之后,上述方法还包括:通过HTML5技术在浏览器的界面中创建模型的操作界面;对上述浏览器添加鼠标移动监听事件以及点击监听事件,并绑定事件处理函数,以通过在上述操作界面的预定操作实现对上述仿真模型或者上述最终模型的调整。该实施例中,可以通过视口中世界坐标系的位置拾取模型,使用Three.js中的TrackballControls等控制实现模型的调整,调整可以为平移、旋转、缩放、更换颜色等,还可以通过js语言编写控制逻辑,这里不做阐述,该实施例可以建立操作人员和机器人三维模型的直观认识,操作人员可以更为方便且直观地对仿真模型或者最终模型进行调整,且仿真模型和最终模型的文件都较小,因此,在加载模型时,速度较快,进一步提高了用户的体验效果。
本申请实施例还提供了一种机器人的模型构建装置,需要说明的是,本申请实施例的机器人的模型构建装置可以用于执行本申请实施例所提供的用于机器人的模型构建方法。以下对本申请实施例提供的机器人的模型构建装置进行介绍。
图3是根据本申请实施例的机器人的模型构建装置的示意图。如图3所示,该装置包括:
建模单元10,用于对机器人进行建模,得到上述机器人的第一预备模型;
贴图单元20,用于对上述第一预备模型进行贴图,形成第二预备模型;
有损压缩单元30,用于对上述第二预备模型的贴图进行有损压缩,得到最终模型,上述最终模型的数据量小于上述第二预备模型的数据量;
第一加载单元40,用于加载上述最终模型,以展示上述最终模型。
上述的装置中,建模单元对机器人进行建模,得到机器人的第一预备模型,贴图单元对第一预备模型进行贴图,形成第二预备模型,有损压缩单元对第二预备模型的贴图进行有损压缩,得到最终模型,其中,最终模型的数据量小于第二预备模型的数据量,第一加载单元加载最终模块,以展示最终模型。该装置中,通过对第一预备模型进行贴图,可以形成第二预备模型,形成的第二预备模型的贴图经过有损压缩,得到最终模型,由于经过了有损压缩,使得最终模型的数据量小于第二预备模型的数据量,进而在对最终模型加载时,加载的数据量较少,提高了模型的加载速度,从而解决了模型加载速度较慢造成卡顿的问题。该装置可以满足用户对服务器的并发性需求,使得加载速度较快,用户的体验效果较好。
本申请的一种实施例中,建模单元包括建模模块和优化模块,建模模块用于对上述机器人的各个组成部分进行等比例建模,形成初始模型;优化模块用于对上述初始模型进行结构优化,得到上述第一预备模型,所述第一预备模型满足以下预定条件的至少之一:上述第一预备模型的体积小于上述初始模型、上述第一预备模型的点的数量小于上述初始模型的点的数量、上述第一预备模型的线的数量小于上述初始模型的线的数量、上述第一预备模型的面的数量小于上述初始模型的面的数量。该实施例中,在三维模型的数据量过大时,导入到Web中进行模型位置的定位、模型参数的调整等操作前,对机器人的各个组成部分进行等比例建模,可以对机器人的雷达、底盘、轮子等进行等比例建模,可以控制线面的精确度,保证了机器人在装配过程中不发生碰撞的情况。后续对建模后的结构进行优化,得到的第一预备模型的数据量较小,在保证几何外形特征突出的原则上,可以减少数据量,得到的第一预备模型更为简化,体积也较小,可以进一步提高模型加载的速度,保证了模型导入和后续交互时速度更快。
需要说明的是,可以采用Solidworks、ProE或者UG对机器人的各个组成部分进行等比例建模,还可以采用其他的软件对机器人的各个组成部分进行等比例建模,本领域技术人员可以根据实际情况选择合适的软件来对机器人的各个组成部分进行等比例建模。
本申请的又一种实施例中,优化模块包括优化子模块,优化子模块采用Autodeskmaya软件对上述初始模型进行上述结构优化。该实施例中,Autodesk maya软件对百万级面数模型的支持效果较好,该软件内部具有更加方便快捷的减面命令和布线命令,可以更高效地对模型进行结构优化。
当然,并不限于上述的软件,还可以为3dmax、zbrush、C4D等三维设计软件,本领域技术人员可以根据实际情况选择合适的软件。
本申请的另一种实施例中,贴图单元包括预渲染模块和贴图模块,预渲染模块使用maya软件对上述第一预备模型进行预渲染;贴图模块用于对预渲染后的上述第一预备模型进行单通道贴图,形成上述第二预备模型。该实施例中,通过对第一预备模型进行预渲染,再对预渲染后的第一预备模型进行单通道贴图,形成的第二预备模型可以更细致地体现机器人的真实外形,使得仿真效果更为真实,可以实现机器人材料的材质作为参考,同时可以进一步减小模型的数据量,进一步简化了在给大量材质球添加贴图材质的过程。
本申请的再一种实施例中,所述贴图模块包括贴图模块包括加载子模块、生成子模块和烘焙子模块,加载子模块用于加载预渲染后的所述第一预备模型;生成子模块用于对预渲染后的所述第一预备模型新建UV通道,并对新建的所述UV通道中的UV进行处理,生成处理后的纹理图;烘焙子模块用于对处理后的所述纹理图的所述UV通道进行烘焙,且将烘焙后的所述纹理图贴到原始UV通道中,删除多余的所述UV通道,形成所述第二预备模型,其中,所述原始UV通道为包括所述第一预备模型的原纹理的UV通道。该实施例中,可以进行贴图和材质的制作,以及UV通道的烘焙,可以调整位置信息以及设计简单的动画效果,烘焙后的纹理图含有光照、漫反射颜色以及凹凸等信息,纹理图中有很多冗余色彩,在不影响逼真度的情况下,对于不必要的色彩进行剔除,即删除多余的UV通道,可以得到单通道贴图,相对于漫反射贴图、法线贴图和高光贴图来说,单通道贴图的数据量更小,这样可以进一步减小三维模型文件的大小。
具体地,可以把色彩空间分成多个包含相等数量色彩的立体单元,色彩单元中心的颜色可以代表色彩单元的其他颜色,从而通过减少贴图中颜色的数量来减小贴图的大小。
为了进一步保证模型文件的数据量较小,本申请的一种实施例中,生成子模块还用于:对新建的所述UV通道中的UV进行展开;调整展开后的所述UV的缝隙参数,得到调整后的所述UV;重新排布调整后的所述UV,生成处理后的所述纹理图。
本申请的一种具体的实施例中,烘焙子模块用于将删除多余的上述UV通道之后的上述第一预备模型的格式转换为gltf格式。该实施例中,可以使用开源工具fbx2gltf命令行工具将fbx格式转换为gltf格式,gltf格式文件相对于fbx格式文件的体积更小,进而进一步减小了模型文件的大小。
本申请的又一种具体的实施例中,有损压缩单元还用于:对上述贴图的颜色进行量化;根据多个所述色盒,确定颜色直方图;确定每个所述色盒的颜色平均值,并建立调色板;采用所述色盒的索引值替换所述颜色直方图中对应位置处的颜色值;根据所述色盒在所述颜色直方图中的位置,确定对应的索引值;根据所述索引值,输出压缩后的贴图,得到所述最终模型。这样通过量化后的调色板的颜色来代替原来的颜色,从而减少颜色的数量,从而可以进一步减小模型文件的大小,从而提高其的加载速度。并且,该方案中,索引值都是查找调色板来确定的,无需重新计算索引,这样可以很快速地得出图像色彩的量化值,从而高效地得到最终模型。
具体的一种实施例中,上述有损压缩单元用于:首先对贴图进行位截断,将RGB空间中所有颜色的直方图从24位预量化为15位(5:5:5),将原RGB空间采用划分为8×8×8的立方体单元,每个单元表示一种颜色,这样采样后的RGB空间中的每种颜色表征原RGB空间中的512种颜色,由于贴图的颜色在RGB空间分布的复杂性,预量化可能会导致最终量化结果的误差增大,分辨率相对不高。
为了进一步保证预量化后的分辨率较高,进而提高切割的量化质量,本申请的另一种具体的实施例中,可以采用18位(6:6:6)的分辨率,使用2个字符的无符号整数,以此来减小存储直方图空间,选择调色板为对每个色盒的所有颜色,在切割以前每个颜色的次数为权值求出数学sum(c_i×f_i)/sum(f_i),作为量化后的该色盒的颜色,然后求出该色盒R、G、B各分量全部集合的方差。接着分别沿色盒R、G、B轴计算部分集的方差,直到大于全部集合方差的一半,则以此时的R、G、B作为分割点,再根据颜色盒指定的立方盒在色彩直方图中的位置和颜色盒的索引值,将原色彩直方图的值填为颜色索引值的原中位切割算法代码(下方示出的原代码):其中n表示量化后的图像,o为原图像,find_nearby_color函数的功能是在每个像素位都需要从颜色查找表中计算出与原图像中最邻近颜色的索引,因此计算量非常大,改进后的算法(下方示出的改进代码)为改进后的算法,求颜色索引是基于查找表(调色板)进行的,而不需要重新计算索引,这样可以快速地得出图像色彩的量化值,进而可以进一步减小模型文件的大小(例如,未进行有损压缩时的贴图大小为3.4MB,经过有损压缩后的贴图大小为750.6KB,贴图减小了70%左右的大小),从而可以进一步提高加载速度。具体地,采用有损压缩可以进一步满足大体量数据的并发请求,且传播性和实用性更强,其技术转化率效果也较强。
原代码:
改进代码:
具体地,本申请的另一种实施例中,第一加载单元包括搭建模块、加载模块和设定模块,搭建模块使用引擎搭建虚拟场景;加载模块用于在上述虚拟场景中加载上述最终模型;设定模块用于布置图像采集设备并设定预定光照条件。该实施例中,图像采集设备可以为摄像机,布置摄像机和光照条件,根据输入和导入的数据格式解析图形,可以模拟接近真实的机器人的三维视觉效果。具体地,可以在WEB端布置摄像头和设置平行光。保证虚拟场景正常显示,以搭建虚拟仿真环境。
本申请的再一种实施例中,搭建模块包括搭建子模块,搭建子模块使用WebGL的Three.js引擎搭建上述虚拟场景。该实施例中,WebGL技术具有跨浏览器、跨平台的兼容性,可以满足电脑、平板或者手机的在线浏览,Three.js引擎是一种成熟且开源的引擎,可以接触到底层代码,使得开发更加灵活,同时节省了成本,当然并不限于上中的引擎,还可以为thing.js或者图扑软件等来搭建虚拟场景。
具体地一种实施例中,可以使用WebGL的GLSL作为着色器的语言,为HTML5 Canvas提供3D加速渲染,使开发人员借助系统GPU可以在浏览器中更为流畅的展示3D场景,创建更为复杂的视觉化数据,后续可以更为方便地进行工艺仿真。
一种具体地实施例中,如图2所示,HTML5技术在常用浏览器中进行应用,javascript程序通过HTML5技术的Canvas运行3D环境,使用WebGL的Three.js引擎搭建虚拟场景。
本申请的又一种实施例中,上述装置还包括第二加载单元和组装单元,第二加载单元用于在加载上述最终模型,以展示上述最终模型之后,加载上述最终模型的各上述组成部分,各上述组成部分对应的信息包括特定功能javascript脚本以及对应的贴图纹理信息;组装单元用于根据上述机器人装配的实际工艺,将上述组成部分拖入对应的装配区进行组装,形成上述机器人的仿真模型。该实施例中,通过加载最终模型的各组成部分,可以建立分布式的模型数据库和模型匹配信息数据库,统一接口文件,具体信息为模型贴图、模型姿态、模型部件型号等,该实施例可以得到较为准确地机器人的仿真模型,后续可以根据准确的仿真模型更高效地进行工艺仿真。具体地,机器人的拖拽、移动、旋转等通用操作通常会由挂载在场景摄像机中的javascript脚本控制。
本申请的另一种实施例中,上述装置还包括第三加载单元和仿真单元,第三加载单元用于在形成上述机器人的仿真模型或者得到上述最终模型之后,加载仿真建筑场景模型;仿真单元用于将上述仿真模型或者上述最终模型加入上述仿真建筑场景模型中,根据上述机器人的实际施工工艺进行工艺仿真。该实施例中,可以更为高效且准确地进行工艺仿真,且可以充分利用Web数据交互的特点,把模型数据保存在云端,可以实时调用,在浏览器中重构模型,且在模型部件的相关性基础之上,可以更充分地考虑数据的完整性,规避技术冲突。
本申请的再一种实施例中,上述装置还包括创建单元和添加单元,创建单元用于在形成上述机器人的仿真模型或者得到上述最终模型之后,通过HTML5技术在浏览器的界面中创建模型的操作界面;添加单元用于对上述浏览器添加鼠标移动监听事件以及点击监听事件,并绑定事件处理函数,以通过在上述操作界面的预定操作实现对上述仿真模型或者上述最终模型的调整。该实施例中,可以通过视口中世界坐标系的位置拾取模型,使用Three.js中的TrackballControls等控制实现模型的调整,调整可以为平移、旋转、缩放、更换颜色等,还可以通过js语言编写控制逻辑,这里不做阐述,该实施例可以建立操作人员和机器人三维模型的直观认识,操作人员可以更为方便且直观地对仿真模型或者最终模型进行调整,且仿真模型和最终模型的文件都较小,因此,在加载模型时,速度较快,进一步提高了用户的体验效果。
为了使得本领域技术人员能够更加清楚本申请的技术方案,以下将结合具体的实施例来说明本申请的技术方案。
实施例
如图4所示,首先,程序开始运行,
对机器人的各个组成部分进行等比例建模,形成初始模型;
对初始模型进行结构优化,得到第一预备模型;
使用maya软件对第一预备模型进行预渲染;
对预渲染后的第一预备模型进行单通道贴图,形成第二预备模型;
对第二预备模型的贴图进行有损压缩,得到最终模型;
使用引擎搭建虚拟场景;
在虚拟场景中加载最终模型;
布置图像采集设备并设定预定光照条件;
加载最终模型的各组成部分,各组成部分对应的信息包括特定功能javascript脚本以及对应的贴图纹理信息;
根据机器人装配的实际工艺,将组成部分拖入对应的装配区进行组装,形成机器人的仿真模型。
加载仿真建筑场景模型;
将仿真模型或者最终模型加入仿真建筑场景模型中,根据机器人的实际施工工艺进行工艺仿真;
通过HTML5技术在浏览器的界面中创建模型的操作界面;
对浏览器添加鼠标移动监听事件以及点击监听事件,并绑定事件处理函数,以通过在操作界面的预定操作实现对仿真模型或者最终模型的调整;
程序结束运行。
该方案中,通过对第一预备模型进行贴图,可以形成第二预备模型,形成的第二预备模型的贴图经过有损压缩,得到最终模型,由于经过了有损压缩,使得最终模型的数据量小于第二预备模型的数据量,进而在对最终模型加载时,加载的数据量较少,提高了模型的加载速度,从而解决了模型加载速度较慢造成卡顿的问题。该方案可以满足用户对服务器的并发性需求,使得加载速度较快,用户的体验效果较好。
上述机器人的模型构建装置包括处理器和存储器,上述建模单元、贴图单元、有损压缩单元和第一加载单元等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来提高模型加载速度,解决加载卡顿的问题。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本发明实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现上述机器人的模型构建方法。
本发明实施例提供了一种处理器,上述处理器用于运行程序,其中,上述程序运行时执行上述机器人的模型构建方法。
本发明实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现至少以下步骤:
步骤S101,对机器人进行建模,得到上述机器人的第一预备模型;
步骤S102,对上述第一预备模型进行贴图,形成第二预备模型;
步骤S103,对上述第二预备模型的贴图进行有损压缩,得到最终模型,上述最终模型的数据量小于上述第二预备模型的数据量;
步骤S103,加载上述最终模型,以展示上述最终模型。
本文中的设备可以是服务器、PC、PAD、手机等。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有至少如下方法步骤的程序:
步骤S101,对机器人进行建模,得到上述机器人的第一预备模型;
步骤S102,对上述第一预备模型进行贴图,形成第二预备模型;
步骤S103,对上述第二预备模型的贴图进行有损压缩,得到最终模型,上述最终模型的数据量小于上述第二预备模型的数据量;
步骤S103,加载上述最终模型,以展示上述最终模型。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例上述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
从以上的描述中,可以看出,本申请上述的实施例实现了如下技术效果:
1)、本申请的机器人的模型构建方法,首先,对机器人进行建模,得到机器人的第一预备模型,之后,对第一预备模型进行贴图,形成第二预备模型,然后,对第二预备模型的贴图进行有损压缩,得到最终模型,其中,最终模型的数据量小于第二预备模型的数据量,最后,加载最终模块,以展示最终模型。该方法中,通过对第一预备模型进行贴图,可以形成第二预备模型,形成的第二预备模型的贴图经过有损压缩,得到最终模型,由于经过了有损压缩,使得最终模型的数据量小于第二预备模型的数据量,进而在对最终模型加载时,加载的数据量较少,提高了模型的加载速度,从而解决了模型加载速度较慢造成卡顿的问题。该方法可以满足用户对服务器的并发性需求,使得加载速度较快,用户的体验效果较好。
2)、本申请的机器人的模型构建装置,建模单元对机器人进行建模,得到机器人的第一预备模型,贴图单元对第一预备模型进行贴图,形成第二预备模型,有损压缩单元对第二预备模型的贴图进行有损压缩,得到最终模型,其中,最终模型的数据量小于第二预备模型的数据量,第一加载单元加载最终模块,以展示最终模型。该装置中,通过对第一预备模型进行贴图,可以形成第二预备模型,形成的第二预备模型的贴图经过有损压缩,得到最终模型,由于经过了有损压缩,使得最终模型的数据量小于第二预备模型的数据量,进而在对最终模型加载时,加载的数据量较少,提高了模型的加载速度,从而解决了模型加载速度较慢造成卡顿的问题。该装置可以满足用户对服务器的并发性需求,使得加载速度较快,用户的体验效果较好。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (13)
1.一种机器人的模型构建方法,其特征在于,包括:
对机器人进行建模,得到所述机器人的第一预备模型;
对所述第一预备模型进行贴图,形成第二预备模型;
对所述第二预备模型的贴图进行有损压缩,得到最终模型,所述最终模型的数据量小于所述第二预备模型的数据量;
加载所述最终模型,以展示所述最终模型;
对所述第一预备模型进行贴图,形成第二预备模型,包括:使用maya软件对所述第一预备模型进行预渲染;对预渲染后的所述第一预备模型进行单通道贴图,形成所述第二预备模型;
对预渲染后的所述第一预备模型进行单通道贴图,形成所述第二预备模型,包括:
加载预渲染后的所述第一预备模型;对预渲染后的所述第一预备模型新建UV通道,并对新建的所述UV通道中的UV进行处理,生成处理后的纹理图;对处理后的所述纹理图的所述UV通道进行烘焙,且将烘焙后的所述纹理图贴到原始UV通道中,删除多余的所述UV通道,形成所述第二预备模型,其中,所述原始UV通道为包括所述第一预备模型的原纹理的UV通道;
对所述第二预备模型的贴图进行有损压缩,得到最终模型,包括:
对所述贴图的颜色进行量化,得到多个色盒;
根据多个所述色盒,确定颜色直方图;
确定每个所述色盒的颜色平均值,并建立调色板;
采用所述色盒的索引值替换所述颜色直方图中对应位置处的颜色值;
根据所述色盒在所述颜色直方图中的位置,确定对应的所述索引值;
根据所述索引值,输出压缩后的贴图,得到所述最终模型。
2.根据权利要求1所述的方法,其特征在于,对机器人进行建模,得到所述机器人的第一预备模型,包括:
对所述机器人的各个组成部分进行等比例建模,形成初始模型;
对所述初始模型进行结构优化,得到所述第一预备模型,所述第一预备模型满足以下预定条件的至少之一:所述第一预备模型的体积小于所述初始模型、所述第一预备模型的点的数量小于所述初始模型的点的数量、所述第一预备模型的线的数量小于所述初始模型的线的数量、所述第一预备模型的面的数量小于所述初始模型的面的数量。
3.根据权利要求2所述的方法,其特征在于,对所述初始模型进行结构优化,得到所述第一预备模型,包括:
采用Autodesk maya软件对所述初始模型进行所述结构优化。
4.根据权利要求1所述的方法,其特征在于,对新建的所述UV通道中的UV进行处理,生成处理后的纹理图,包括:
对新建的所述UV通道中的UV进行展开;
调整展开后的所述UV的缝隙参数,得到调整后的所述UV;
重新排布调整后的所述UV,生成处理后的所述纹理图。
5.根据权利要求1所述的方法,其特征在于,对处理后的所述纹理图的所述UV通道进行烘焙,且将烘焙后的所述纹理图贴到原始UV通道中,删除多余的所述UV通道,形成所述第二预备模型,其中,所述原始UV通道为包括所述第一预备模型的原纹理的UV通道,还包括:
将删除多余的所述UV通道之后的所述第一预备模型的格式转换为gltf格式。
6.根据权利要求1至5中任一项所述的方法,其特征在于,加载所述最终模型,以展示所述最终模型,包括:
使用引擎搭建虚拟场景;
在所述虚拟场景中加载所述最终模型。
7.根据权利要求6所述的方法,其特征在于,使用引擎搭建虚拟场景,包括:
使用WebGL的Three.js引擎搭建所述虚拟场景。
8.根据权利要求1至5中任一项所述的方法,其特征在于,在加载所述最终模型,以展示所述最终模型之后,所述方法还包括:
加载所述最终模型的各组成部分,各所述组成部分对应的信息包括特定功能javascript脚本以及对应的贴图纹理信息;
根据所述机器人装配的实际工艺,将所述组成部分拖入对应的装配区进行组装,形成所述机器人的仿真模型。
9.根据权利要求8所述的方法,其特征在于,在形成所述机器人的仿真模型之后或者在得到所述最终模型之后,所述方法还包括:
加载仿真建筑场景模型;
将所述仿真模型或者所述最终模型加入所述仿真建筑场景模型中,根据所述机器人的实际施工工艺进行工艺仿真。
10.根据权利要求8所述的方法,其特征在于,在形成所述机器人的仿真模型之后或者在得到所述最终模型之后,所述方法还包括:
通过HTML5技术在浏览器的界面中创建模型的操作界面;
对所述浏览器添加鼠标移动监听事件以及点击监听事件,并绑定事件处理函数,以通过在所述操作界面的预定操作实现对所述仿真模型或者所述最终模型的调整。
11.一种机器人的模型构建装置,其特征在于,包括:
建模单元,用于对机器人进行建模,得到所述机器人的第一预备模型;
贴图单元,用于对所述第一预备模型进行贴图,形成第二预备模型;
有损压缩单元,用于对所述第二预备模型的贴图进行有损压缩,得到最终模型,所述最终模型的数据量小于所述第二预备模型的数据量;
第一加载单元,用于加载所述最终模型,以展示所述最终模型;
所述贴图单元包括预渲染模块和贴图模块,所述预渲染模块使用maya软件对所述第一预备模型进行预渲染;所述贴图模块用于对预渲染后的所述第一预备模型进行单通道贴图,形成所述第二预备模型;
所述贴图模块包括贴图模块包括加载子模块、生成子模块和烘焙子模块,加载子模块用于加载预渲染后的所述第一预备模型;生成子模块用于对预渲染后的所述第一预备模型新建UV通道,并对新建的所述UV通道中的UV进行处理,生成处理后的纹理图;烘焙子模块用于对处理后的所述纹理图的所述UV通道进行烘焙,且将烘焙后的所述纹理图贴到原始UV通道中,删除多余的所述UV通道,形成所述第二预备模型,其中,所述原始UV通道为包括所述第一预备模型的原纹理的UV通道;
所述有损压缩单元还用于:对所述贴图的颜色进行量化,得到多个色盒;根据多个所述色盒,确定颜色直方图;确定每个所述色盒的颜色平均值,并建立调色板;采用所述色盒的索引值替换所述颜色直方图中对应位置处的颜色值;根据所述色盒在所述颜色直方图中的位置,确定对应的所述索引值;根据所述索引值,输出压缩后的贴图,得到所述最终模型。
12.一种计算机可读存储介质,其特征在于,所述存储介质包括存储的程序,其中,所述程序执行权利要求1至10中任意一项所述的方法。
13.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至10中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110241006.8A CN113032699B (zh) | 2021-03-04 | 2021-03-04 | 机器人的模型构建方法、模型构建装置和处理器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110241006.8A CN113032699B (zh) | 2021-03-04 | 2021-03-04 | 机器人的模型构建方法、模型构建装置和处理器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113032699A CN113032699A (zh) | 2021-06-25 |
CN113032699B true CN113032699B (zh) | 2023-04-25 |
Family
ID=76467760
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110241006.8A Active CN113032699B (zh) | 2021-03-04 | 2021-03-04 | 机器人的模型构建方法、模型构建装置和处理器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113032699B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114022616B (zh) * | 2021-11-16 | 2023-07-07 | 北京城市网邻信息技术有限公司 | 模型处理方法及装置、电子设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111640180A (zh) * | 2020-08-03 | 2020-09-08 | 深圳市优必选科技股份有限公司 | 一种三维重建方法、装置及终端设备 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150015574A1 (en) * | 2013-07-09 | 2015-01-15 | Nvidia Corporation | System, method, and computer program product for optimizing a three-dimensional texture workflow |
US10055189B2 (en) * | 2014-01-02 | 2018-08-21 | Vid Scale, Inc. | Two-dimensional palette coding for screen content coding |
EP4044602A1 (en) * | 2014-03-14 | 2022-08-17 | Vid Scale, Inc. | Palette coding for screen content coding |
CN105608745B (zh) * | 2015-12-21 | 2019-01-29 | 大连新锐天地文化科技有限公司 | 应用于图像或视频的ar显示系统 |
CN108159693B (zh) * | 2017-12-05 | 2020-11-13 | 北京像素软件科技股份有限公司 | 游戏场景构建方法及装置 |
US10628990B2 (en) * | 2018-08-29 | 2020-04-21 | Intel Corporation | Real-time system and method for rendering stereoscopic panoramic images |
CN109697748B (zh) * | 2018-12-19 | 2023-05-16 | 网易(杭州)网络有限公司 | 模型压缩处理方法、模型贴图处理方法装置、存储介质 |
CN111192354A (zh) * | 2020-01-02 | 2020-05-22 | 武汉瑞莱保能源技术有限公司 | 一种基于虚拟现实的三维仿真方法及系统 |
CN111476882B (zh) * | 2020-03-26 | 2023-09-08 | 哈尔滨工业大学 | 一种面向浏览器的机器人虚拟图形建模方法 |
CN112348938A (zh) * | 2020-10-30 | 2021-02-09 | 杭州安恒信息技术股份有限公司 | 优化三维物体的方法、装置和计算机设备 |
-
2021
- 2021-03-04 CN CN202110241006.8A patent/CN113032699B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111640180A (zh) * | 2020-08-03 | 2020-09-08 | 深圳市优必选科技股份有限公司 | 一种三维重建方法、装置及终端设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113032699A (zh) | 2021-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
McHenry et al. | An overview of 3d data content, file formats and viewers | |
CN104346769B (zh) | 三维建模对象的压缩 | |
US9519999B1 (en) | Methods and systems for providing a preloader animation for image viewers | |
US9262853B2 (en) | Virtual scene generation based on imagery | |
JP2018514885A (ja) | 3次元ボクセル・ベース・モデリングのためのシステム、方法、およびデバイス | |
US20210209864A1 (en) | Generating height maps from normal maps based on virtual boundaries | |
WO2020097343A1 (en) | Interactive system and method providing real-time virtual reality visualization of simulation data | |
CN113593051B (zh) | 一种实景可视化方法及大坝可视化方法及计算机设备 | |
CN107092354B (zh) | Sketchup模型虚拟现实转化技术的方法 | |
CN112365598B (zh) | 倾斜摄影数据转换三维数据的方法、装置及终端 | |
CN116977523B (zh) | 一种step格式在web端的渲染方法 | |
CN112434365A (zh) | 一种可伸缩的bim模型轻量化方案 | |
EP3192054A1 (en) | System, method and computer program product for automatic optimization of 3d textured models for network transfer and real-time rendering | |
CN109697748A (zh) | 模型压缩处理方法、模型贴图处理方法装置、存储介质 | |
CN113032699B (zh) | 机器人的模型构建方法、模型构建装置和处理器 | |
CN116843841A (zh) | 基于网格压缩的大规模虚拟现实系统 | |
CN115659445A (zh) | 一种基于Open Cascade的CAD模型在网页轻量化渲染显示的方法 | |
CN109858059B (zh) | 基于cad超大模型的虚拟现实技术在水电站仿真的应用方法 | |
CN116843816B (zh) | 用于产品展示的三维图形渲染展示方法及装置 | |
CN117101127A (zh) | 虚拟场景中的图像渲染方法、装置、电子设备及存储介质 | |
CN109684656B (zh) | 一种基于SolidWorks的装配约束继承方法 | |
CN114590366B (zh) | 一种船舶结构有限元分析结果虚拟可视化系统 | |
CN117372662A (zh) | 一种基于复杂装备的三维模型轻量化方法 | |
CN113076631A (zh) | 一种机器人模拟器生成方法、机器人模型仿真方法及装置 | |
CN114307158A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |