一种基于虚拟现实的人机交互方法与流程

文档序号:11758132阅读:607来源:国知局
一种基于虚拟现实的人机交互方法与流程

本发明涉及人机交互技术领域,尤其涉及一种基于虚拟现实(virtualreality,vr)的人机交互方法。



背景技术:

人机交互技术即为通过人与机器人之间的信息交互,实现人控制机器人执行各种动作。在如救援、高危作业等各领域中需要应用机器人执行相应任务,通过人机交互技术,由操作人员在远端遥控机器人,获取机器人的实时动作、周围环境信息后,再控制机器人调整相应执行动作,无需操作人员现场进行操作,执行效率以及安全性能高。

为实现人机交互,目前通常是直接通过网络数据传输机器人的运动信息、实景环境视频数据等,再直接利用液晶显示屏等显示设备将视频数据进行显示,以使得操作人员能够获取到机器人运动、环境信息。但是直接利用显示设备显示机器人环境信息,操作人员在第三视角下的临场感不强,且通常机器人所处环境网络带宽有限,直接通过网络获取环境信息给显示设备显示时,所需的带宽大,使得传回的视频流经常会存在延时和丢包现象,不仅增加操作人员的操作难度,还容易使操作人员疲劳。

虽然通过肌电、脑电、语音等新兴的交互设备也可以实现有效的人机交互,完成在特定任务下的机器人动作级、行为级、任务级等控制,但是存在以下问题:

1)均只能特定的适用于基于如肌电、脑电、语音等信息执行交互,具有极强的针对性和局限性,不能广泛适用于多种任务和机器人平台中;

2)对于实时实景环境数据获取,仍然是基于完整的实景视频数据传输,直接使用显示设备将视频数据进行显示,数据量大、对网络传输带宽要求高,且实时性不强。



技术实现要素:

本发明要解决的技术问题就在于:针对现有技术存在的技术问题,本发明提供一种实现方法简单、所需通信带宽小、人机交互效率高以及效果好,且应用灵活的基于虚拟现实的人机交互方法。

为解决上述技术问题,本发明提出的技术方案为:

一种基于虚拟现实的人机交互方法,步骤包括:

1)在被控机器人端,实时采集被控机器人的运动信息、所处环境的实景环境数据,根据采集的所述运动信息对被控机器人的位姿进行估计以及根据采集的所述实景环境数据构建对应的三维环境地图,实时获取所述位姿估计结果以及所述三维环境地图实时更新得到的增量数据进行发送;

2)在控制端,通过虚拟现实系统显示所述三维环境地图以及由建立的机器人模型显示被控机器人的位姿状态,并实时接收所述位姿估计结果、所述增量数据,根据接收到的所述位姿估计结果、所述增量数据分别对机器人模型的位姿状态、所述三维环境地图进行更新;根据更新后的位姿状态以及三维环境地图生成控制指令发送给被控机器人,以控制被控机器人执行所需动作。

作为本发明的进一步改进,所述步骤1)中具体通过每隔指定周期数时,将当前周期三维环境地图与指定周期数前三维环境地图进行比较,去除当前周期三维环境地图中,与指定周期数前三维环境地图相似度在指定范围内的数据,得到所述增量数据。

作为本发明的进一步改进:所述步骤1)中具体采用一个线程对被控机器人的位姿进行估计,并实时获取所述位姿估计结果进行发送,由另一个线程构建三维环境地图,并实时获取所述三维环境地图实时更新得到的增量数据进行发送。

作为本发明的进一步改进:所述实现对被控机器人的位姿进行估计,并实时获取所述位姿估计结果进行发送,以及所述构建三维环境地图,并实时获取所述三维环境地图实时更新得到的增量数据进行发送,具体采用loam算法的双线程分别执行。

作为本发明的进一步改进:所述步骤1)中具体基于搭载在被控机器人上的三维距离传感器和imu,实时采集被控机器人的运动信息、所处环境的实景环境数据。

作为本发明的进一步改进,所述步骤2)中虚拟现实系统显示所述三维环境地图以及被控机器人的位姿状态的具体步骤为:

2.1)预先构建机器人模型,并在虚拟现实系统中进行可视化渲染;

2.2)获取所述机器人模型的位姿状态、所述三维环境地图的初始数据,根据获取的所述初始数据在虚拟现实系统中构建机器人模型的初始位姿状态、初始三维环境地图;

2.3)所述虚拟现实系统实时接收被控机器人端发送的所述位姿估计结果、所述增量数据,由接收到的所述位姿估计结果对机器人模型的位姿状态进行可视化渲染,以更新被控机器人的位姿状态,以及将所述增量数据在当前三维环境地图中进行可视化渲染,以更新三维环境地图。

作为本发明的进一步改进:所述步骤1)中进行发送时,将待发送数据进行json格式编码,将编码后的数据进行发送;所述步骤2)中接收到被控机器人端发送的数据时,按照json格式进行解码后,得到传输的所述位姿估计结果、所述增量数据。

作为本发明的进一步改进:所述被控机器人端与所述控制端具体使用udp通信方式进行数据传输。

与现有技术相比,本发明的优点在于:

1)本发明基于虚拟现实的人机交互方法,通过实时采集机器人运动信息和实景环境信息,分别估计机器人位姿和构建三维环境地图,然后将机器人位姿、三维环境地图更新的增量数据传输至控制端,将位姿、地图增量数据在虚拟现实系统中进行可视化渲染,实现机器人位姿以及三维环境地图实时更新,使操作人员能够在第一视角下获取到机器人的运动状态、所处三维环境,从而基于虚拟现实系统对机器人进行远程控制,实现人与机器人的高级交互,同时三维环境地图更新时仅实时传输三维环境地图实时更新的增量数据,传输的数据量小,能够有效降低所需网络带宽,提高人机交互的实时性;

2)本发明基于虚拟现实的人机交互方法,构建得到三维环境地图后,采用增量式的地图传输方式,每次向控制端发送地图数据时,仅发送新产生的三维环境地图的增量数据以进行地图可视化渲染,相比于传统的需要传输整个环境视频数据,数据传输量非常小,从而有效降低人机交互时所需网络带宽需求;

3)本发明基于虚拟现实的人机交互方法,进一步采用双线程分别对被控机器人的位姿进行估计及数据传输、构建对应的三维环境地图及数据传输,由两个线程分别处理机器人位姿、三维环境地图,避免位姿更新频率高、地图数据量大而使得机器人位姿更新滞后等问题,保证人机交互的实时性。

附图说明

图1是本实施例基于虚拟现实的人机交互方法的实现流程示意图。

图2是本实施例基于虚拟现实的人机交互方法的详细实现原理示意图。

图3是本实施例获取增量式地图的具体实现原理示意图。

图4是本实施例步骤2)的详细步骤实现流程示意图。

具体实施方式

以下结合说明书附图和具体优选的实施例对本发明作进一步描述,但并不因此而限制本发明的保护范围。

如图1、2所示,本实施例基于虚拟现实的人机交互方法步骤包括:

1)在被控机器人端,实时采集被控机器人的运动信息、所处环境的实景环境数据,根据采集的运动信息对被控机器人的位姿进行估计以及根据采集的实景环境数据构建对应的三维环境地图,实时获取位姿估计结果以及三维环境地图实时更新得到的增量数据进行发送;

2)在控制端,通过虚拟现实系统显示三维环境地图以及由建立的机器人模型显示被控机器人的位姿状态,并实时接收位姿估计结果、增量数据,根据接收到的位姿估计结果、增量数据分别对机器人模型的位姿状态、三维环境地图进行更新;根据更新后的位姿状态以及三维环境地图生成控制指令后发送给被控机器人,以控制被控机器人执行所需动作。

本实施例通过采集机器人周围环境和运动信息,分别估计机器人位姿和构建三维环境地图,然后将机器人位姿和三维环境地图更新的增量数据传输至控制端,进一步在虚拟现实系统中进行可视化渲染,实现机器人位姿以及三维环境地图实时更新,使操作人员能够在第一视角下获取到机器人的运动状态、所处三维环境,基于虚拟现实系统对机器人进行控制,实现人与机器人的高级交互,同时三维环境地图更新时仅实时传输三维环境地图实时更新的增量数据,传输的数据量小,能够有效降低所需网络带宽,提高人机交互的实时性。

本实施例中,步骤1)中具体基于搭载在被控机器人上的三维距离传感器和imu,实时采集被控机器人的运动信息、所处环境的实景环境数据,三维距离传感器可采用三维激光雷达、单线激光雷达和电机组合、kinect等,三维距离传感器可获取空间的深度信息,由三维距离传感器结合惯性测量单元进行实景环境数据采集,能够获取完整的环境数据,从而准确的反映机器人所处的环境信息。

由于网络通信带宽有限,同时考虑虚拟现实系统中渲染效果的限制,本实施例构建得到三维环境地图后,采用增量式的地图传输方式,每次向控制端发送地图数据时,仅发送新产生的三维环境地图的增量数据以进行地图可视化渲染,相比于传统的需要传输整个环境视频数据,数据传输量非常小,从而能够有效降低人机交互时所需网络带宽需求。

本实施例中,获取增量地图数据的具体步骤为:每隔指定周期数时,通过将当前周期三维环境地图与指定周期数前三维环境地图进行比较,去除当前周期三维环境地图中,与指定周期数前三维环境地图相似度在指定范围内的数据,得到增量数据,构成增量式地图。

如图3所示,在具体应用实施例中,假设激光雷达和imu的工作周期为k,获取增量地图数据时,将第k周期获取的新点云地图(三维环境地图)与第k-1周期之前构建的所有点云地图(三维环境地图)作对比,再滤除第k周期产生的新点云地图中与第k-n周期之前所有点云地图在空间上相近的点,得到增量式点云地图,其中n为设定的间隔周期数,n以及相似点判定的阈值均根据实际需求设置。相似点判定的阈值具体可设定为0.01m,考虑到机器人平台运行速度,n可设定为5,即采用新产生5帧地图做一次增量式计算,以获取三维环境地图更新的增量数据,使得交互实现效率及精度更高。

由于在虚拟现实系统中执行人机交互时,相比于地图更新,机器人位姿的更新频率要求较高,且地图数据量远远大于机器人位姿数据量,若机器人位姿估计及位姿数据发送、三维环境地图构建及发送采用同一线程,则会导致机器人位姿更新严重滞后。本实施例步骤1)中具体采用双线程分别对被控机器人的位姿进行估计及数据传输、构建对应的三维环境地图及数据传输,即由一个线程估计机器人位姿,并发送位姿估计结果给控制端,由另一个线程构建三维环境地图,并发送三维环境地图更新的增量数据给控制端,两个线程相互独立执行,避免机器人位姿更新滞后,保证人机交互的实时性。

如图2所示,在具体应用实施例中,实现对被控机器人的位姿进行估计,并实时获取所述位姿估计结果进行发送,以及构建三维环境地图,并实时获取三维环境地图实时更新得到的增量数据进行发送,具体采用loam算法(low_driftandreal-timelidarodometryandmapping)的双线程分别执行。loam算法为异频双线程icp算法,loam算法使用一个独立线程获取实时采集到的机器人的运动信息进行位姿估计,将位姿估计结果通过网络传输至控制端,使用另一个独立线程获取实时采集到的实景环境数据,构建对应的三维环境地图后,每隔指定周期数时计算三维环境地图的增量数据,得到增量式地图,将增量式地图通过网络传输发送给控制端,基于loam算法能够进一步提高位姿估计、三维环境地图构建的精度及实时性。

如图4所示,本实施例步骤2)中虚拟现实系统显示三维环境地图以及被控机器人的位姿状态的具体步骤为:

2.1)预先构建机器人模型,并在虚拟现实系统中进行可视化渲染;

2.2)获取机器人模型的位姿状态、三维环境地图的初始数据,根据获取的初始数据在虚拟现实系统中构建机器人模型的初始位姿状态、初始三维环境地图;

2.3)虚拟现实系统实时接收被控机器人端发送的位姿估计结果、增量数据,由接收到的位姿估计结果对机器人模型的位姿状态进行可视化渲染,以更新被控机器人的位姿状态,以及将获取的增量数据在当前三维环境地图中增加进行可视化渲染,以更新三维环境地图。

在具体应用实施例中,首先采用建模软件(如3dsmax)构建机器人模型以表示被控机器人,使操作人员可以在虚拟现实系统中识别该模型,并可获取机器人位姿的状态;当控制端接收到被控机器人端发送的位姿估计结果数据,则对位姿估计结果数据在机器人模型中进行可视化渲染,以实时更新模型中机器人的位姿状态,以及接收到被控机器人端发送的三维环境地图的增量数据后,对增量数据在当前三维环境地图中进行可视化渲染,以实时更新模型中三维地图环境,其中更新频率可设置为不低于24hz,通过虚拟现实系统可直接观测到机器人的实时位姿状态以及周围实景环境状态。

本实施例中,步骤1)中进行发送时,将待发送数据进行json格式编码,将编码后的数据进行发送;步骤2)中接收到被控机器人端发送的数据时,按照json格式进行解码后,得到传输的位姿估计结果、增量数据,基于json的数据编码格式可灵活适用于多平台的网络数据传输。被控机器人端与控制端具体使用udp通信方式进行数据传输,也可以根据实际需求采用其他通信方式。

在虚拟现实系统中渲染地图和机器人位姿后,结合更新后的三维环境地图以及机器人的位姿状态对机器人当前所处情况做出判断,生成控制指令以控制机器人执行下一步的动作序列或任务,其中控制端发送控制指令可与机器人位姿数据传输采用同一线程,也可采用新的线程发送控制指令。在具体实施例中,操作人员可采用虚拟现实手柄、头显设备或手柄衍生的射线等为机器人下达运动指令或任务指令,操作人员下达的运动指令或任务指令通过网络通信传输至机器人;当机器人接收到控制指令后,解析并执行该控制指令,由此完成人与机器人之间基于虚拟现实系统的人机交互过程。

本发明上述人机交互方法,可适用于多种机器人平台以执行多种任务,包括与飞行器、地面移动机器人、水下机器人等各种移动机器人,实现指定动作控制的动作级、包括多种动作控制的行为级和包含多种行为控制的任务级等多种任务交互。

上述只是本发明的较佳实施例,并非对本发明作任何形式上的限制。虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明。因此,凡是未脱离本发明技术方案的内容,依据本发明技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均应落在本发明技术方案保护的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1