聚焦产品:如视VR生产能力,为用户提供最优使用体验

我们深入工程领域的VR生产环节,深度解析如视如何通过支持多种采集设备生产、打造准确真实的3D点位预览效果,以及构建安全高效的数据传输体系,让VR生产更快速便捷,为用户打造更优质的VR采集体验。

打开APP,选择若干点位,一键轻点,采集完成。

这就是如视VR的生产流程——如此简单,但背后却又不简单

本期聚焦产品栏目,我们将深入工程领域的VR生产环节,深度解析如视如何通过支持多种采集设备生产打造准确真实的3D点位预览效果,以及构建安全高效的数据传输体系让VR生产更快速便捷为用户打造更优质的VR采集体验


多种采集设备支持

生产场景更丰富


如视VR APP,VR生产的“万能遥控”

  • 多样化采集需求下面临的问题

在VR生产中,用户的行业、空间采集规模、应用场景等各不相同,因此存在多样化采集需求。譬如,针对个人房产租赁场景,适合手机云台等轻量级采集方案;而面对工厂、博物馆等需要大规模、专业化的采集场景,则适用于专业级采集方案。

为此,如视搭建了适用于多场景的实景三维采集产品矩阵,包括伽罗华、庞加莱、Realsee智能手机云台、手机拍等产品,从专业级到消费级,覆盖绝大多数用户的应用场景。

然而,多样化的设备意味着彼此间采集方式和运行逻辑存在差异,其控制、展示的终端当然也有区别。这就好比家中同时存在三台空调和两台电视,我们就需要分别保管好五个遥控器,并一一对应,防止其丢失、混淆

那么,为了让操作、使用更便捷,是否存在一个能同时控制所有设备的终端呢

  • 打造万能遥控终端

在家用电器领域早已出现的“万能遥控器”就是这样的控制终端。同该方案类似,如视在VR生产中,推出了适用于所有采集产品的“万能遥控终端”:如视VR APP

在如视的创新下,如视VR APP不仅局限于“遥控操作”,更是一个集合了拍摄、处理、预览、数据传输、编辑等功能的超级处理终端。用户通过APP,无论采用何种拍摄方式和采集设备,简单几步即可实现空间完整复刻,生产出拥有沉浸式观览体验的VR。

软件静态+动态划分,提供最优生产体验

在APP使用过程中,由于对应产品不同,如视需要在各采集方式上都为用户提供最优质的采集体验;此外,当面对问题修复和功能更新时,如果针对各采集方式分别开发,则效率低下。

为应对该挑战,如视对APP进行功能模块采集流程划分,确保在不同采集方式和阶段,如视VR APP都拥有最佳的生产处理效率。

  • 静态架构:功能模块划分

模块功能划分,是指将一个大型系统或软件项目分解为多个独立、可管理组件的过程。每个模块都有特定的功能和责任,可以独立开发、测试和维护。

在如视APP中,如视将功能模块划分为定点式采集连续采集两部分。

定点式采集

定点式采集(扫描)指的是将设备放置在空间不同位置上进行扫描,并在空间内不断移动位置,直到整个空间扫描完成。采集过程中需要尽量保证各点位之间互相可见,方便后续进行算法自动拼接处理。

根据硬件和算法不同,在该功能模块下有两种采集方案:

第一种,是如视研发的“单目图像深度估算”模型Cyclops。通过该模型,用户在采集时无需深度传感器,仅采集空间图像即可实现三维重建,为包括手机拍、全景相机、Realsee G1云台等如视轻量级VR采集产品赋能。

第二种,是搭载激光雷达扫描仪,可直接生成高精度点云文件的设备伽罗华。通过如视强大的算法能力,伽罗华在定点采集时,可以通过提取特征寻找相似的匹配点位,并计算相对位置和姿态,实现点位自动拼接。

连续式采集

连续式采集(扫描)是区别于定点式扫描的一种空间数据采集方法,一般基于 SLAM(Simultaneous Localization And Mapping,同时定位与地图构建)技术,支持操作人员使用设备在空间内连续扫描

该采集方式的代表产品是如视搭载16线激光雷达,拥有120米超长扫描半径的扫描仪庞加莱。在连续采集时,庞加莱能够直出高品质彩色点云,用户在如视VR APP端可以对点云展示高度、色彩等进行调整,令采集、传输、编辑、展示一体化,操作体验更流畅。

  • 动态处理:采集流程划分

在APP运行过程中,如视将整个采集流程划分为若干阶段,确保针对不同采集方式,以及各流程都有可供选择的处理环节,同时不影响输出效果。

  • 拍摄阶段,针对定点采集与连续采集分别进行处理。
  • 数据生成阶段,先对已拍摄的数据进行处理,如数据传输、图片分辨率处理等;后逐个进行算法处理,如深度推测、位姿拼接等。
  • 然后进入到数据展示和编辑阶段,如3D点云渲染、特征工具提取等。
  • 最后,是数据上传阶段。需要先对数据进行预处理,然后上传至云端。

通过静态模块和动态流程划分,如视将生产流程中的"难点"逐个分解,让用户在各采集方式及阶段下都有最佳体验。


3D点云渲染交互

预览效果更佳


从2D到3D,预览效果更真实

预览是VR生产过程中的重要环节。用户透过预览,一方面能够“查漏补缺”,及时发现、纠正采集过程中遇见的问题;另一方面,预览提供的“所见即所得”展示,可以给予用户实时正向反馈,让用户主观上感知到更快速的VR生成体验。

因此,预览效果是否足够真实准确,十分影响用户使用感受。传统VR预览方式采用2D顶视角预览,也就是将摄像机镜头垂直对准地面,视线完全垂直于地平面的预览方式。其优点是简单易实现,缺点是细节表现力差。

相较于传统预览方式,如视在APP端,一直为用户提供实时的3D点云预览显示和交互体验,让用户能够在任意角度、位置上浏览真实、准确的采集效果。

如此真实的3D效果,得益于如视在移动端大量的顶点(vertices)渲染。在计算机图形学中,顶点是构成三维模型的基本元素,每个顶点在空间中都存在一个确定坐标,多个顶点可以组成一个三角形或多边形。渲染顶点数量越多代表图形细节更丰富,画面更真实

如视通过大量的顶点渲染,让3D采集点位预览更准确、漂亮、真实

打造全新渲染方案,预览交互更流畅

过去,用户使用的智能手机系统主要分为iOS(苹果机)、Android(安卓机)两大阵营,大部分软件开发都要基于不同系统打造对应运行逻辑。同样,如视也为两端分别提供了基于系统的点云渲染方案。

  • 曾经的渲染方案,存在哪些问题?
  • 由于系统存在差别,导致 iOS、Android双端渲染效果不一致,在交互时存在细节出入,需要付出双倍维护成本
  • 鸿蒙Next 新系统推出,用户量增加,需要为新系统重新优化APP
  • 如视采取的LOD视锥体裁剪方案双端不一致,造成用户在进行移动画布等操作时加载卡顿,同时伴随内存溢出(OOM)崩溃问题。

前两点问题比较好理解,而LOD、视锥体裁剪以及内存溢出又是什么呢?

《聚焦产品:让数字空间体验更快速、清晰、流畅,如视都做了什么?》中,我们提到,LOD是一种多层次细节展示技术,它根据物体与相机的距离来确定显示哪个模型,减少计算负担。

视锥体裁剪则是计算机图形学中的一个重要优化步骤,用于剔除不在摄像机视锥体内的对象,从而提高渲染效率。

而内存溢出,简单来说,就是需要的内存远大于实际能提供的内存,导致程序无法继续执行。

总结起来,LOD和视锥体裁剪都是一种渲染优化技术,但由于在不同系统内部运行时”没有达成共识“,导致APP发生卡顿。

  • 新的渲染方案是什么?

如视的解决方案,就是要在代码层面让两端运行“达成共识”,共同协作。

为此,如视重新设计并实现了一种全新的渲染方案,用 C++OpenGL ES 作为渲染引擎,用Flutter(Google 开源的应用开发框架,仅通过一套代码库,就能构建精美的、原生平台编译的多平台应用)实现上传交互,从而实现用户流畅、不卡顿的预览交互体验

同时,如视还实现了基于 BVH (层次包围体技术,主要作用是优化碰撞检测和光线追踪等操作。通过将复杂的几何对象组织成层次化的包围体结构,可以显著减少计算量和提高效率的视锥体裁剪,让不同系统内运行的如视APP速度更快、效果更好。


采集数据高速传输

生产流程更迅速


保证用户采集的原始数据,能够高速、完整的上传至服务器进行三维重建处理,一直是如视的重要工作。因此,如视VR APP作为”超级终端“,除了采集、预览等操作外,还要承担数据传输的中转站角色。

在数据传输时,有两个重要时机:一个是从拍摄设备传输到手机,另一个则是从手机端传输至服务端,也就是数据上传。如视通过自研通信协议+优化机制,保证两种传输方式都能够高速稳定的传输数据。

从拍摄设备到手机:重新设计底层协议

数据传输,简单来说,就是将数据从一处传送到另一处的过程。在传输时,往往会面临一些问题,比如,数据是单对单还是单对多传输?传输效率和准确性之间如何权衡?


为解决这些问题,产生了两种传输协议:UDP(用户数据报协议)和TCP(传输控制协议)。UDP在传输数据前无需先建立连接,而TCP在传输数据前必须建立连接。

UDP适用于对效率要求高、准确性相对较低的场景;TCP则适用于效率要求相对低,但对准确性要求相对高的场景。如果把UDP看做是校园广播,TCP则是两人单独打电话

基于此,如视的自研设备针对不同数据传输需求,重新设计底层协议,将传输拆分为基于 UDP 的实时预览数据传输和基于 TCP 的原始数据传输。并在此基础上构建了保障数据完整的校验机制,在保证数据传输安全性的前提下,提升数据传输速度

从手机传输到服务器:做好优化措施

同上述传输方式不同,由于数据上传到云端需要基于互联网通信,易受网速、用户设别性能等不可控因素影响。除了传统的断点续传、重传等机制外,如视基于数据特点,采取独特的优化措施,来保障数据传输的稳定性和效率。

  • 图片AVIF格式,提升上传效率

如视采用Cyclops算法进行数据传输时,大部分数据都以图片形式存在。因此,图像占用存储空间越少,传输速度越快。一般情况下,图像文件大小同质量成正比,如果能够在保证图像质量前提下缩小文件大小,就能够在保持真实VR效果的同时提升数据传输速度。

为此,如视针对性的采用了AVIF压缩格式。作为一种开源图像格式,AVIF支持全分辨率的10位和12位色彩以及HDR显示,通过更高效的压缩算法,在相同质量前提下,AVIF文件大小仅为JPEG文件的35%左右,让数据传输保质提速。

  • 压缩包验证流程,提升处理速度

由于需要上传的数据中存在大量分散的小文件,如视为提升上传效率,采用先将其压缩成单个文件形式,再进行上传的方式。

但线上处理数据服务时,由于某些原因,会遭遇压缩包内部文件损坏,或格式与需求不符问题。为此,如视在处理过程中加入压缩包验证流程,在数据上传前,预先对压缩包及其内部文件进行检查,确保文件符合后续流程使用要求。

通过以上优化措施,如视让数据从手机端上传至服务器的速度更快、传输更稳定

无论是通过打造如视VR APP来支持多种采集设备,还是大幅提升3D点云渲染交互效果、令采集数据得以高速传输,如视的最终目标都是希望为用户提供更优质的产品体验为客户提供数字孪生底座让更多人感受VR、受益于VR。而高效、便捷的VR生产能力,是如视实现这项目标的重要基础

未来如视会继续打磨VR生产流程不断拓宽VR应用场景用技术进步促进产业升级持续赋能VR大规模落地应用



来咨询如视专家

有疑问?来咨询如视专家

购买咨询:400-897-9658

工作日 9:00-19:00(北京时间)

售后服务:400-060-8206

工作日 9:00-19:00(北京时间)

扫码可以添加如视专家好友

添加企业微信,如视专家为您提供解答