技术领域
[0001] 本
发明涉及虚拟现实技术领域,尤其涉及一种虚拟现实系统中三维环境地图的可视化方法。
背景技术
[0002] 在如救援、高危作业等各领域中广泛应用有虚拟现实(Virtual Reality,VR)技术,即通过操作人员在远端遥控
机器人执行各种操作,操作人员仅需根据机器人所处的实时
环境控制机器人,而无需操作人员现场进行操作,执行效率以及安全性能高。操作人员在远端遥控过程中,由于无法直接获取机器人环境信息,需要通过网络数据传输实时获取机器人环境信息,以控制机器人执行相应动作。
[0003] 为实现机器人环境信息的可视化,目前主要采用以下几种方式:
[0004] 1)通过网络传输获取实时环境视频数据,直接利用
液晶显示屏等显示设备将环境视频数据进行显示,以为操作人员提供机器人环境信息。直接利用显示设备显示机器人环境视频,操作人员在第三视
角下的临场感不强,而通常机器人所处
环境网络带宽有限,直接通过网络传输环境视频给显示设备,数据量大及所需的网络传输带宽大,且传回的
视频流经常会存在延时和丢包现象,不仅增加操作人员的操作难度,还容易使操作人员疲劳;
[0005] 2)直接使用图形函数进行绘制,即使用图形函数直接绘制出实景图像,实景的复杂程度一般比较高,其包括有大量的不规则曲面,用于函数绘制的参数选择难度大,难以绘制出准确的实景图像;
[0006] 3)使用第三方建模
软件对环境进行建模,导出模型后进行显示,但该方式必须基于环境信息进行建模,建模过程实现复杂,且应用环境受限,只能适用于场景已知的应用中,对于未知环境的应用则不能适用;
[0007] 4)使用特定的设备依靠非
接触的视觉技术来自动生成的方式。该类方式通常必须需要依赖于特定设备及处理方法来实现,实现过程复杂、实现成本高,且通常传输数据量依然较大,不能满足通信带宽要求严格应用场合的需求。
[0008] 中国
专利申请CN106131493A公开一种基于虚拟现实远端临场智能消防机器人的体感控制系统,其中就是由头戴式现实模
块接收机器人采集到的现场视频图像进行3D视觉显示,使得操作人员可以获取到现场机器人的现场视频图像,但是直接获取现场视频图像进行3D视觉显示,一方面需要复杂的视觉
算法实现图像3D视频显示;另一方面,现场视频图像数据量大,对现场视频图像数据进行传输时即需要较宽的网络通信带宽。
发明内容
[0009] 本发明要解决的技术问题就在于:针对
现有技术存在的技术问题,本发明提供一种能够在虚拟现实系统中实现三维环境地图的可视化,且具有实现方法简单、实现成本低、所需通信带宽小、应用环境灵活以及实现效果好的虚拟现实系统中三维环境地图的可视化方法。
[0010] 为解决上述技术问题,本发明提出的技术方案为:
[0011] 一种虚拟现实系统中三维环境地图的可视化方法,步骤包括:
[0012] S1. 实时采集控制目标所处环境的实景环境数据;
[0013] S2. 根据实时采集的所述实景环境数据构建对应的三维环境地图;
[0014] S3. 每隔
指定周期数获取所述三维环境地图更新的增量数据,得到增量地图数据;
[0015] S4. 实时将获取的所述增量地图数据传输至控制端,并在虚拟现实系统中进行显示以实现可视化。
[0016] 作为本发明的进一步改进:所述步骤S3得到所述增量地图数据时,还包括将所述增量地图数据进行压缩,得到最终增量地图数据步骤。
[0017] 作为本发明的进一步改进:具体基于3D-NDT算法对所述增量地图数据进行表示,以将所述增量地图数据进行压缩。
[0018] 作为本发明的进一步改进:所述基于3D-NDT算法对所述增量地图数据进行表示具体包括:将三维点
云空间按照NDT单元均匀分割为多个子空间,分别计算各个所述子空间的点云
位置均值、协方差矩阵,各个所述子空间分别使用所述点云在空间的位置均值作为质心,以及使用所述协方差矩阵的特征值作为点云在空间分布中的尺度,以对各所述子空间进行表示。
[0019] 作为本发明的进一步改进:所述将所述增量地图数据进行压缩后,还包括对压缩后数据进行JSon数据格式编码步骤;所述步骤S4中在控制端接收到数据后,还包括按照所述JSon数据格式对数据进行解析后,获取到传输的所述增量地图数据。
[0020] 作为本发明的进一步改进,所述步骤S3中增量数据的获取步骤为:将当前周期三维环境地图与指定周期数前三维环境地图进行比较;根据比较结果,去除当前周期三维环境地图中,与指定周期数前三维环境地图相似度在指定范围内的数据,得到增量数据。
[0021] 作为本发明的进一步改进:所述步骤S2中通过建立独立线程以构建所述三维环境地图。
[0022] 作为本发明的进一步改进:述步骤S1具体通过搭载在控制目标上的
激光雷达和IMU采集实景环境数据。
[0023] 与现有技术相比,本发明的优点在于:
[0024] 1)本发明虚拟现实系统中三维环境地图的可视化方法,通过获取实景环境数据构建三维环境地图,由三维环境地图更新的增量数据传输至虚拟现实系统实现可视化,使操作人员可以在第一视角下观察理解机器人所处环境,具有极强的
沉浸感,提高了操作人员的操作过程中的舒适度,同时由于仅传输增量数据,有效减少了所需传输的数据量大小,从而降低所需通信带宽要求,可以适用于多种复杂的电磁环境中;
[0025] 2)本发明虚拟现实系统中三维环境地图的可视化方法,获取到增量地图数据后采用3D-NDT算法对地图进行表示,使得在获取增量式地图的
基础上能够进一步高效压缩地图数据量,同时保留地图的主要信息,从而在保证可视化效果的基础上进一步减少了地图数据量,大大降低了所需网络通信带宽要求;
[0026] 3)本发明虚拟现实系统中三维环境地图的可视化方法,采集到实景环境数据后构建三维环境地图,将三维环境地图构建过程单独由一个线程完成,能够确保三维环境地图的实时性,结合增量式地图数据传输方式,能够实现三维环境地图在虚拟现实系统中的实时、高效可视化。
附图说明
[0027] 图1是本
实施例虚拟现实系统中三维环境地图的可视化方法的流程示意图。
[0028] 图2是本实施例中虚拟现实系统中实现三维环境地图可视化的详细流程示意图。
[0029] 图3是本实施例中获取增量式3D-NDT地图的实现原理示意图。
[0030] 图4是本实施例中机器人与控制端实现数据传输的实现原理示意图。
[0031] 图5是本发明具体实施例在虚拟现实系统中实现三维环境地图可视化的结果示意图。
具体实施方式
[0032] 以下结合
说明书附图和具体优选的实施例对本发明作进一步描述,但并不因此而限制本发明的保护范围。
[0033] 如图1、2所示,本实施例虚拟现实系统中三维环境地图的可视化方法步骤具体如下所示:
[0034] S1. 实时采集控制目标所处环境的实景环境数据。
[0035] 控制目标即为被遥控的机器人,可以为
飞行器、陆地
移动机器人或
水下机器人等,通过在机器人端布置采集设备,实时采集机器人所处现场的实景环境数据。
[0036] 在具体应用实例中,通过搭载在控制目标上的激光雷达和IMU(惯性测量单元)采集控制目标所处环境的实景环境数据。激光雷达可以为单线激光雷达或多线激光雷达,采用单线激光雷达时可以获取周围环境中一个平面的深度信息,采用多线激光雷达则可以采集空间的深度信息,获得实景的三维点云数据。结合激光雷达和IMU采集到的实景环境数据,可以准确的反映机器人所处的环境信息。
[0037] 采集实景环境数据前需要布置各
传感器,各传感器搭载在控制目标上,在具体应用实施例中,将网桥水平放置,IMU布置于激光雷达的正下方,且与激光雷达平行安装,激光雷达、IMU、机器人布置为相互之间
坐标系的Z轴保持基本重合,以高效采集实景环境数据。
[0038] S2. 根据实时采集的实景环境数据构建对应的三维环境地图。
[0039] 直接使用实景环境数据进行显示所需的网络带宽大,通过将实景环境数据构建三维环境地图,可有效表征实景环境的主要信息,同时减少传输数据量。
[0040] 由于地图数据量较大,在具体应用实施例中,采集到实景环境数据后通过建立独立线程以构建三维环境地图,即三维环境地图构建过程单独由一个线程完成,以可视化实现的实时性。
[0041] S3. 每隔指定周期数获取三维环境地图更新的增量数据,得到增量地图数据。
[0042] 由于相邻周期实景图像之间的变化小,实时构建的三维环境地图之间存在大量的重复、相似信息,若直接基于实时三维环境地图进行可视化,网络传输数据量依然大,且存在大量的相似信息。通过获取三维环境地图更新的增量数据,则可以去除三维环境地图中重复、相似信息,有效降低后续传输数据量,降低所需网络传输带宽的需求。
[0043] 增量数据的获取具体步骤S31为:将当前周期三维环境地图与指定周期数前三维环境地图进行比较;根据比较结果,去除当前周期三维环境地图中,与指定周期数前三维环境地图相似度在指定范围内的数据,得到增量数据。
[0044] 如图3所示,在具体应用实施例中,假设激光雷达和IMU的工作周期为k,获取增量地图数据时,将第k周期获取的新点云地图(三维环境地图)与第k-1周期之前构建的所有点云地图(三维环境地图)作对比,再滤除第k周期产生的新点云地图中与第k-n周期之前所有点云地图在空间上相近的点,得到增量式点云地图,其中n为设定的间隔周期数,n以及相似点判定的
阈值均根据实际需求设置。相似点判定的阈值具体可设定为0.01m,考虑到机器人平台运行速度,n可设定为5,即采用新产生5
帧地图做一次增量式计算,以获取三维环境地图更新的增量数据,使得可视化实现效率及
精度更高。
[0045] 若机器人运行速度较慢(如小于1m/s),则每帧获取的新地图点云数量有限,但相对于三维点云地图较为稠密,上述增量式地图依然无法满足虚拟现实系统的
渲染条件,仅简单利用点云数据在虚拟现实中进行渲染会导致虚拟场景发生闪烁现象,影响最终的可视化效果。本实施例得到增量地图数据时,还包括将增量地图数据进行压缩,得到最终增量地图数据步骤S32,能够极大的减少所需传输数据量,同时保证地图显示时整体轮廓和精度。
[0046] 本实施例中,步骤S32具体采用3D-NDT(Three-Dimensional Normal Distributions Transform, 3D正态分布变换)算法对增量地图数据进行表示,以将增量地图数据进行压缩。如图3所示,在获取上述增量式点云地图的基础上再将点云用3D-NDT算法进行地图表示,获取得到增量式3D-NDT地图,使得在获取三维环境地图增量数据的基础上进一步实现地图压缩。3D-NDT算法为根据NDT(正态分布)函数完成点云配准的配准算法,通过使用3D-NDT算法的特性来实现三维环境地图的表示,可以高效地压缩地图数据量,减少所需传输数据量,同时可以保留地图的主要信息。
[0047] 采用3D-NDT算法对增量地图数据进行表示具体包括:将三维点云空间按照NDT单元均匀分割为多个子空间,分别计算各个子空间的点云位置均值、协方差矩阵,各个子空间分布使用点云在空间的位置均值作为质心,以及使用协方差矩阵的特征值作为点云在空间分布中的尺度以表示各子空间,完成对增量地图数据进行表示,构成3D-NDTMap(地图)。采用3D-NDT算法最终在空间的表示结果类似于一个椭球,即基于3D-NDT算法在虚拟现实中将三维环境地图用椭球可视化每个子空间,每个子空间仅有6个参数,分布为空间位置x、y、z和在x、y、z方向的尺度信息,整个三维环境地图的数据量非常少,大大降低了系统对网络通信带宽的要求。
[0048] 如图4所示,在具体应用实施例中,将增量地图数据进行压缩后,还包括对压缩后数据进行JSon数据格式编码步骤S33,即对获取的增量式3D-NDT地图以JSon数据格式编码以用于网络传输,在控制端接收到数据后,再按照JSon数据格式对数据进行解析,基于JSon的数据编码格式可灵活适用于多平台的网络数据传输。
[0049] S4. 实时将获取的增量地图数据传输至控制端,并在虚拟现实系统中进行显示以实现可视化。
[0050] 在具体实施例中,在获取增量式3D-NDT地图的基础上,将获取的增量地图数据使用UDP等通信方式传输至控制端,控制端接收机器人端发送的数据后,按照JSon数据格式对数据进行解析,获取到传输的增量式3D-NDT地图数据在虚拟现实系统进行显示,即可实现三维环境地图的可视化,使操作人员可以在第一视角下观察理解机器人所处环境。
[0051] 如图5所示为在具体实施例中虚拟现实系统中实现三维环境地图可视化的结果,其中图(a)、(b)分别为采集到的机器人所处环境实景图像,(c)为采用上述方法后在虚拟现实系统中得到的可视化结果,从图中可以看出,相比较原图像,在虚拟现实系统中显示的数据量非常小,同时保留了实景图像主要的信息。
[0052] 采用上述方法,采集到机器人所处的实景环境信息后,构建机器人三维环境地图,实时获取三维环境地图更新的增量数据,并使用3D-NDT算法对地图进行表示,在高效压缩地图数据量的同时保留了地图的主要信息,将最终得到的增量式3D-NDT地图传输至操作控制端并在虚拟现实系统中可视化,使操作人员可以在第一视角下观察理解机器人所处环境,具有极强的沉浸感,提高了操作人员的操作过程中的舒适度,同时结合增量数据获取以及3D-NDT地图表示方式,能够大大减少所需传输的地图数据量,使得地图数据量小,极大的降低对网络通信带宽要求,因而可适用于多种复杂的电磁环境中。
[0053] 上述只是本发明的较佳实施例,并非对本发明作任何形式上的限制。虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明。因此,凡是未脱离本发明技术方案的内容,依据本发明技术实质对以上实施例所做的任何简单
修改、等同变化及修饰,均应落在本发明技术方案保护的范围内。