云上工厂,XR分布式渲染技术探索

发布时间:2020-12-28 作者:中兴通讯 施嘉理,钱小兵 阅读量 :

       随着移动通信网络迈入5G时代,新应用场景和用户需求不断涌现,其中视频相关领域应用占比非常高。中兴通讯基于现有的视频技术积累,搭建视频云平台,将零散的能力集成于一个统一的平台,以实现技术整合以及产品化的可能。视频技术的基础能力中,渲染能力是重中之重。

随着工业的发展,第四次工业革命正在到来,未来的工厂是数字虚拟和物理现实相融合,ICT技术与现代制造业相融合的场景。针对工业大制造场景,在虚拟可视化方面的需求日渐强烈,一个3D多人可交互的云渲染平台被提出,其中的核心要求是可以实现大规模模型的实时在线渲染。

为什么是分布式云渲染

       从性能的角度去看渲染问题,现有的工业级显卡无法满足大模型的实时可交互渲染,因此我们引入了分布式的思想,将渲染的大规模模型进行拆解,分发给渲染集群完成渲染工作。同时针对多人可交互的场景,渲染的模型架设在云端以提供多人访问的服务,可以满足用户在不同的物理位置,对同一个大规模模型进行访问互动。这样不仅达到可交互的目标,也不需要对模型进行重复渲染,大大节省了服务器资源。

自主创新的关键技术

       中兴通讯分布式云渲染的整体系统架构如图1所示。从图中可以看出,相对于传统的单机渲染方式,分布式云渲染是将渲染任务进行分解,向下分配给渲染集群进行渲染。而这种任务分解过程对于用户或者应用来说是无感知的。同时渲染集群作为渲染能力提升的关键组件也是可以扩展的,根据需要渲染的模型规模进行相应适配。这样的系统架构既保持了对接应用的兼容性,同时满足了渲染能力的可扩展性,可以增强视频云平台的渲染能力。


         图1  分布式云渲染系统架构图

       分布式云渲染平台的搭建涉及很多关键技术,如大规模模型的拆解、任务的调度以及图像像素的快速合成等。本文重点介绍一种数据分块技术和一种针对大规模场景渲染的视锥分割技术。

交互式大规模场景渲染平台数据管理技术

       由于模型的数量级很大,首先对模型数据进行预处理工作,主要是对数据进行分块的处理。对数据的分块只需要进行一次,随后的查询阶段可以重复使用预处理得到的知识信息,这将节省大量的时间。

对于空间上进行数据的分块有多种方式,如八叉树、KD树、BSP树等,这些方法有利有弊。针对大规模模型的渲染场景我们希望使用一个相对优化的分块方式,因此引入层次包围盒的思想对数据进行预处理。核心思想是按照八叉树对模型进行划分,对需要渲染的目标块进行递归划分,对空块进行剔除,依次将模型划分到预设阈值的模块大小。该方法可以将不需渲染的部分剔除,最后得到全部需要渲染的数据模型。

针对分布式云渲染的核心诉求——降低时延,该专利方法可以大大提高模块查询效率,并行处理模型数据,是分布式云渲染性能提升的关键技术。

大规模场景渲染视锥分割技术

       进行渲染任务的分割时,需要使各个节点之间的渲染任务量尽可能地接近,这样可以实现负载均衡,同时在最终的画面合成时会更有利于画面的一致性合成。

       针对大规模场景渲染的应用场景,我们提出基于用户的视锥对模型任务进行分割的全新方式,实现渲染任务的均匀分配(见图2)。


   图2   视锥分割示意图

       在确定好需要渲染的资源之后,首先以目标渲染对象的物理中心为根节点,把视锥平均分成四块,紧接着检测每个视锥中需要渲染的图元数目,对于点云数据就是统计该区域中的点云数量,对于网格数据统计该区域的三角网格数量。如果子视锥中没有图元元素,则跳过这个视锥;如果图元数目超过阈值,则再次进行四等分,直到每个视锥中顶点数目小于阈值。分割完成后,根据当前渲染的数据块进行渲染复杂度评估,按照各个渲染单机的性能分配渲染任务到单机,以保证渲染任务总体的负载均衡。

       该专利方法可以保证各个渲染节点之间的渲染任务均衡分配,大大提高各模块利用率。

       5G的高带宽可以支持更加广阔的业务领域,智能制造是其中重要的发展方向。作为智能制造领域的关键技术之一,渲染技术也成为研究热点,一个成熟可靠的实时可交互渲染平台已经被科技部提出,作为国家重点科研计划方向。中兴通讯将继续投入分布式渲染技术的研发,不断提升自身视频产品和方案的技术竞争力。