一种定位物体的定位方法、系统和头戴显示设备与流程

文档序号:11233489阅读:365来源:国知局
一种定位物体的定位方法、系统和头戴显示设备与流程

本发明涉及定位技术领域,特别涉及一种定位物体的定位方法、系统和头戴显示设备。



背景技术:

定位技术被广泛应用于虚拟现实、增强现实、动作捕捉等领域,是人机交互的重要组成部分。其中,光学定位以其高精度、低成本、高刷新率等优点成为室内定位领域中被最广泛应用的技术。

现有技术中的光学定位一般是通过外置于物体的定位设备进行物体的定位。但是,这种方案的定位范围依赖定位设备的视角和可识别距离,定位范围有限,特别是在头戴显示设备和手柄的定位应用中,一旦头戴显示设备或手柄不在定位范围内,无法实现头戴显示设备或手柄的准确定位;且需要预先设置外置定位设备,应用不便利,影响用户体验。



技术实现要素:

鉴于现有技术中的光学定位方案的定位范围有限,应用不便利,影响用户体验的问题,提出了本发明的一种定位物体的定位方法和系统,以便解决或至少部分地解决上述问题。

根据本发明的一个方面,提供了一种定位物体的定位方法,所述方法包括:

通过头戴显示设备上设置的摄像头获取所述头戴显示设备所处空间的空间图像;

通过所述头戴显示设备的第一惯性测量单元(inertialmeasurementunit,简称imu)采集所述头戴显示设备的第一姿态信息,依据所述空间图像和所述第一姿态信息,获取所述头戴显示设备的六个自由度信息;

所述头戴显示设备获取发光体的历史轨迹和第二imu的历史轨迹;其中,所述发光体和所述第二imu均设置在与所述头戴显示设备对应的手柄上;

所述头戴显示设备接收所述第二imu采集的所述手柄的姿态信息;

依据所述历史轨迹和所述空间图像中发光点的位置信息,确定所述发光体的三维坐标,其中,所述发光点与所述发光体相对应;

根据所述三维坐标和所述手柄的姿态信息,确定所述手柄的六个自由度信息。

根据本发明的另一个方面,提供了一种头戴显示设备,所述头戴显示设备包括摄像头、第一惯性测量单元imu;所述头戴显示设备还包括:

图像采集单元,用于通过所述摄像头获取所述头戴显示设备所处空间的空间图像;

定位单元,通过所述第一惯性测量单元imu采集所述头戴显示设备的第一姿态信息,依据所述空间图像和所述第一姿态信息,获取所述头戴显示设备的六个自由度信息;

获取单元,用于获取发光体的历史轨迹和第二imu的历史轨迹;其中,所述发光体和所述第二imu均设置在与所述头戴显示设备对应的手柄上;

接收单元,用于接收所述第二imu采集的所述手柄的姿态信息;

三维坐标确定单元,用于依据所述历史轨迹和所述空间图像中发光点的位置信息,确定所述发光体的三维坐标,其中,所述发光点与所述发光体相对应;

所述定位单元,还用于根据所述三维坐标和所述手柄的姿态信息,确定所述手柄的六个自由度信息。

根据本发明的又一个方面,提供了一种定位物体的定位系统,所述系统包括:如前所述的头戴显示设备和与所述头戴显示设备对应的手柄;

所述手柄有线或无线连接所述头戴显示设备。

综上所述,本发明通过头戴显示设备上设置的摄像头获取头戴显示设备所处空间的空间图像;通过头戴显示设备的第一惯性测量单元imu采集头戴显示设备的第一姿态信息,依据空间图像和第一姿态信息,获取头戴显示设备的六个自由度信息,实现头戴显示设备的定位;并且,头戴显示设备获取发光体的历史轨迹和第二imu的历史轨迹;其中,发光体和第二imu均设置在与头戴显示设备对应的手柄上;接收第二imu采集的手柄的姿态信息;依据历史轨迹和空间图像中发光点的位置信息,确定发光体的三维坐标,其中,发光点与发光体相对应;根据三维坐标和手柄的姿态信息,确定手柄的六个自由度信息,实现手柄的定位。可见,本发明的技术方案区别于现有技术中外置的摄像头,是通过头戴显示设备上的摄像头实现头戴显示设备和与头戴显示设备对应的手柄的定位,摄像头随着头戴显示设备的移动而移动,定位范围广。也就是说,本发明的技术方案中的定位设备是设置在定位物体上,不需要预先设置外置的定位设备,应用便利,定位范围广,可提高用户体验。

附图说明

图1为本发明一个实施例提供的一种定位物体的定位方法的流程示意图;

图2为本发明一个实施例提供的一种头戴显示设备的结构示意图;

图3为本发明一个实施例提供的一种定位物体的定位系统的结构示意图。

具体实施方式

本发明的设计思路是:通过设置在头戴显示设备上的摄像头采集的空间图像,结合设置在头戴显示设备上的第一imu采集的头戴显示设备的第一姿态信息,实现头戴显示设备的定位;以及,通过确定设置在与头戴显示设备对应的手柄上的发光体的历史轨迹,以及第二imu采集的手柄的姿态信息,实现手柄的定位。为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。

图1为本发明一个实施例提供的一种定位物体的定位方法的流程示意图。如图1所示,该方法包括:

步骤s110,通过头戴显示设备上设置的摄像头获取头戴显示设备所处空间的空间图像。

本实施例中,设置在头戴显示设备上的摄像头可以是广角摄像头,使得本实施例中适用的定位范围更广。并且,为了在手柄定位中可以通过空间图像获得与图像中的发光点对应的发光体的三维坐标,头戴显示设备上的摄像头的个数至少是2个,当采集头戴显示设备所处的空间图像时,该至少2个摄像头同时采集空间图像,每个摄像头均获取一个空间图像。因为本实施例中是至少2个广角摄像头,所以,空间图像也是至少2个。

步骤s120,通过头戴显示设备的第一惯性测量单元imu采集头戴显示设备的第一姿态信息,依据空间图像和第一姿态信息,获取头戴显示设备的六个自由度信息。

这里的惯性测量单元为inertialmeasurementunit,以下简称imu。

本实施例中,依据空间图像中的空间结构信息,采用即时定位与地图构建(simultaneouslocalizationandmapping,简称slam)方法进行计算,可以获得头戴显示设备的移动自由度(即三维坐标);依据第一惯性测量单元imu采集的头戴显示设备的第一姿态信息(例如,四元数信息),可以获得头戴显示设备的转动自由度(即偏航角、俯仰角和翻滚角);利用上述的移动自由度和转动自由度就可以确定头戴显示设备的六个自由度信息,实现头戴显示设备的定位。

步骤s130,头戴显示设备获取发光体的历史轨迹和第二imu的历史轨迹;其中,发光体和第二imu均设置在与头戴显示设备对应的手柄上。

在本实施例中,头戴显示设备不仅要实现自身的定位,还要实现与头戴显示设备对应的手柄的定位。为实现手柄的定位,需要获取手柄上的发光体的历史轨迹和第二imu的历史轨迹。

本实施例中,在手柄上设置一个发光体,也可以设置多个发光体。设置多个发光体的目的是,在进行手柄的定位时,防止空间图像中出现其他干扰发光点,或者,在没有手柄的历史轨迹的情况下,可以利用空间图像中的与多个发光体对应的发光点的分布规律进行手柄的定位。

步骤s140,头戴显示设备接收第二imu采集的手柄的姿态信息。

例如,第二imu采集的手柄的四元数信息。

步骤s150,依据历史轨迹和空间图像中发光点的位置信息,确定发光体的三维坐标,其中,发光点与发光体相对应,所以,根据图像中发光点的位置信息,可以确定与发光点对应的发光体的三维坐标。

例如,在上述说明中,指出本实施例中的摄像头的个数是至少2个,那么获得的对应同一个发光体的图像就有至少2个,就可以利用双目成像原理,依据至少2个图像中对应同一个发光体的发光点的位置信息,获得该发光体的三维坐标。这里的双目成像原理,是基于视差原理并利用双目摄像头从不同的位置获取物体的两幅图像,通过计算图像中对应点间的位置偏差,来获取物体三维集合信息的方法。该方法的优点是效率高、精度高、结构简单、成本低等优点。

步骤s160,根据三维坐标和手柄的姿态信息,确定手柄的六个自由度信息。

这里的三维坐标可以确定手柄的移动自由度信息;姿态信息(四元数)可以确定手柄的转动自由度信息,依据移动自由度和转动自由度即可确定手柄的六个自由度信息。

可见,本发明的技术方案区别于现有技术中外置的摄像头,是通过头戴显示设备上的摄像头实现头戴显示设备和与头戴显示设备对应的手柄的定位,摄像头随着头戴显示设备的移动而移动,定位范围广。也就是说,本发明的技术方案中的定位设备是设置在定位物体上,不需要预先设置外置的定位设备,应用便利,定位范围广,可提高用户体验。

在本发明的一个实施例中,上述的头戴显示设备为虚拟现实(virtualreality,简称vr)设备,上述的手柄为与vr设备对应的手柄。

在本方的技术方案中,确定手柄上的发光体的三维坐标时,可能会有不同的情况,如,手柄上的发光体没有被遮挡,且有发光体的历史轨迹;手柄上的发光体没有被遮挡,但是没有发光体的历史轨迹;手柄上的发光体被遮挡,且有发光体的历史轨迹。那么,在确定发光体的三维坐标时,采用的方法应该是不同的。下面针对上述情况具体说明。

(1)手柄上的发光体没有被遮挡,且有发光体的历史轨迹。

在本发明的一个实施例中,步骤s150的依据历史轨迹和空间图像中发光点的位置信息,确定发光体的三维坐标包括:

①根据发光体的历史轨迹获取发光体的线速度和线加速度;②依据线速度和线加速度确定发光体的三维坐标,这里的发光体的三维坐标时根据历史轨迹估算的,是一个估算值;③将发光体的三维坐标反投影到空间图像上,获得空间图像中发光体的二维坐标,因为发光体的三维坐标是一个估算值,这里获得的发光体的二维坐标也是估算值;④计算空间图像中的发光点的二维坐标;其中,空间图像中的发光点与发光体相对应,也就是说,发光点对应的是发光体的真实位置,所以本步骤中计算的发光点的二维坐标应该是发光体的真实二维坐标,但是,此时发光点与发光体之间的对应关系还未确定,即图像中的发光点具体对应哪一个发光体还未确定;⑤将发光体的二维坐标值和发光点的二维坐标值进行比较,也就是将计算的发光点的二维坐标和计算的发光体的二维坐标估算值进行比较;将发光点的二维坐标值和发光体的二维坐标值的差异值在预设阈值范围的发光点,确定为与发光体具有对应关系的发光点;⑥依据与发光体具有对应关系的发光点的二维坐标,确定发光体的三维坐标。

例如,在上述说明中,指出本实施例中的摄像头的个数是至少2个,那么依据与同一个发光体具有对应关系的发光点的二维坐标,就可以利用双目成像原理,确定发光体的三维坐标,确定的三维坐标就是发光体的三维坐标的真实值。

上述说明中,在手柄上可以设置一个发光体,也可以设置多个发光体。上述方法尤其适用于多个发光体的情况。当存在多个发光体,并且头戴显示设备包括有至少2个摄像头时,对于手柄上的一个发光体,根据该发光体的历史轨迹获取该发光体的线速度和线加速度;依据线速度和线加速度确定该发光体的三维坐标;将该发光体的三维坐标分别反投影到每个空间图像上,分别获得每个空间图像中该发光体的二维坐标;分别计算每个空间图像中的每个发光点的二维坐标;对于一个空间图像,将空间图像中该发光体的二维坐标和每个发光点的二维坐标比较,将发光点的二维坐标和该发光体的二维坐标差异值在预设阈值范围的发光点,确定为与该发光体具有对应关系的发光点,以此类推,确定每个空间图像中的与该发光体具有对应关系的发光点;使用对应该发光体的至少2个发光点的二维坐标,确定与该发光体的三维坐标。通过该方法就可以确定手柄上的每个发光体的三维坐标。

在将发光体的三维坐标分别反投影到每个空间图像上之前,需要保证空间图像中的发光点在至少2个空间图像中均出现,排除没有同时出现在至少2个空间图像中的发光点。例如,有3个摄像头,采集了3个空间图像,分别是空间图像1、空间图像2、空间图像3,对于空间图像1中的发光点1,在空间图像2和空间图像3中均未出现,那么就排除该发光点1。

当确定每个发光体的三维坐标后,采用rpnp算法或其他现有技术中的相关算法,结合第二imu采集的手柄的姿态信息,确定手柄的六个自由度信息,实现手柄的定位。

(2)手柄上的发光体没有被遮挡,但是无发光体的历史轨迹或历史轨迹不完整。本实施例适用于手柄上设置有多个发光体的情况。

在本发明的一个实施例中,步骤s150的依据历史轨迹和空间图像中发光点的位置信息,确定发光体的三维坐标包括:

①计算空间图像中的每个发光点的二维坐标;②根据空间图像中的发光点的分布规律,确定空间图像中的发光点和手柄上的发光体的对应关系;③使用对应手柄上的发光体的发光点的二维坐标,确定与其对应的手柄上的发光体的三维坐标。因为本方法在现有技术中有相关方案,在此不再详细说明。

例如,手柄上设置有四个发光体,排列为四面体形,在空间图像中的分布规律为四边形,那么,在空间图像中,有排列成相似四边形的四个发光点就对应为手柄,且可根据四边形中的发光点之间的相对位置信息,确定发光点与手柄上的发光体之间的对应关系。

本实施例,适用于手柄上设置有多个发光体的情况,且为了保证定位的准确性,本实施例中的一个或多个发光体不能处于同一平面。

(3)在手柄上的发光体被遮挡,且有发光体的历史轨迹。

当手柄因噪声干扰,或者遮挡等原因无法被定位时,会造成定位的暂时中断,为了防止上述情况的出现影响到用户的使用体验,在本发明的一个实施例中,步骤s150的依据历史轨迹和空间图像中发光点的位置信息,确定发光体的三维坐标包括:

①根据发光体的历史轨迹确定发光体的第一时刻的三维位置、第二imu的第一时刻的速度、以及第二imu第一时刻的单位方向向量,这里的第一时刻可以认为是在发光体被遮挡前最后的时刻;②根据第二imu采集的姿态信息获取第二imu第二时刻的单位方向向量;③根据第二时刻的单位方向向量和第一时刻的单位方向向量,计算第二imu的方向变化单位向量;④根据三维坐标公式计算发光体第二时刻的三维坐标。

具体地,本实施例中的第一时刻可以认为是第二时刻的前一时刻。上述的三维坐标公式为:pt=pt-1+vt×l;其中,pt为发光体第二时刻的三维坐标;pt-1为发光体的第一时刻的三维坐标;vt为第二imu的方向变化单位向量;l为第二imu的第一时刻的速度。

本实施例中,在手柄无法被定位时,可以利用手柄中每个发光体的历史三维轨迹以及第二imu相结合的方法实现手柄的定位。

因为每个发光体的第二时刻的三维坐标是三维的,则上述公式中的l具体应为第二imu的第一时刻的在三维方向上的分速度。

为了使头戴显示设备和手柄的定位更加精确,在本发明的一个实施例中,在步骤s120中的获取头戴显示设备的六个自由度信息之后,图1所示的方法进一步包括:结合第一imu采集的第一姿态信息,将头戴显示设备的六个自由度进行平滑插值滤波,将滤波后的头戴显示设备的六个自由度作为头戴显示设备最终的六个自由度。

在步骤s160的确定手柄的六个自由度信息之后,图1所示的方法进一步包括:结合第二imu采集的手柄的姿态信息,将手柄的六个自由度进行平滑插值滤波,将滤波后的手柄的六个自由度作为手柄最终的六个自由度。

本实施例中,将头戴显示设备的六个自由度信息以及手柄的六个自由度信息进行平滑插值滤波可以采用卡尔曼滤波方法。其中,卡尔曼滤波是一种利用线性系统状态方程,通过系统输入输出观测数据,对系统状态进行最优估计的算法,由于观测数据中包括系统中的噪声和干扰的影响,所以最优估计也可看作是滤波过程。在本实施例中,卡尔曼滤波可以将过去测量估计去查合并得到新的测量误差,将定位物体的六个自由度滤波后,可以获得更加准确的数据,有效提高刷新频率。

另外,在本实施例中,结合imu采集的姿态信息进行平滑插值滤波,也是为了进一步获得更加准确的定位物体的六个自由度。

还需要说明的是,在进行平滑插值滤波时,利用的不仅是imu采集的姿态信息,还需要利用imu采集的加速度信息。因为imu采集的数据不仅包括上述的姿态信息,同时还会输出加速度信息,所以当进行平滑插值滤波时,只要从imu采集的数据中提取加速度信息即可。

本发明中,在确定手柄上的发光体的三维坐标需要利用发光体和第二imu的历史轨迹。在本发明的一个实施例中,在步骤s160中的确定手柄的六个自由度信息之后,图1所示的方法还包括:保存手柄的六个自由度信息,六个自由度信息用以记录发光体和第二imu的历史轨迹。

图2为本发明一个实施例提供的一种头戴显示设备的结构示意图。如图2所示,该头戴显示设备200包括摄像头210、第一惯性测量单元imu220;头戴显示设备200还包括:

图像采集单元230,用于通过摄像头获取头戴显示设备所处空间的空间图像;

定位单元240,通过第一惯性测量单元imu采集头戴显示设备的第一姿态信息,依据空间图像和第一姿态信息,获取头戴显示设备的六个自由度信息;

获取单元250,用于获取发光体的历史轨迹和第二imu的历史轨迹;其中,发光体和第二imu均设置在与头戴显示设备对应的手柄上;

接收单元260,用于接收第二imu采集的手柄的姿态信息;

三维坐标确定单元270,用于依据历史轨迹和空间图像中发光点的位置信息,确定发光体的三维坐标,其中,发光点与发光体相对应;

定位单元240,还用于根据三维坐标和手柄的姿态信息,确定手柄的六个自由度信息。

在本发明的一个实施例中,三维坐标确定单元270,具体用于根据发光体的历史轨迹获取发光体的线速度和线加速度;依据线速度和线加速度确定发光体的三维坐标;将发光体的三维坐标反投影到空间图像上,获得空间图像中发光体的二维坐标,其中,空间图像中的发光点与发光体相对应;计算空间图像中的发光点的二维坐标;其中,空间图像中的发光点与发光体相对应;将发光体的二维坐标值和发光点的二维坐标值进行比较,将发光点的二维坐标值和发光体的二维坐标值的差异值在预设阈值范围的发光点,确定为与发光体具有对应关系的发光点;依据与发光体具有对应关系的发光点的二维坐标,确定发光体的三维坐标。

在本发明的一个实施例中,三维坐标确定单元270,具体用于根据历史轨迹确定发光体的第一时刻的三维位置、第二imu的第一时刻的速度、以及第二imu第一时刻的单位方向向量;根据第二imu采集的姿态信息获取第二imu第二时刻的单位方向向量;根据第二时刻的单位方向向量和第一时刻的单位方向向量,计算第二imu的方向变化单位向量;根据三维坐标公式计算发光体第二时刻的三维坐标。

在本发明的一个实施例中,头戴显示设备200进一步包括:滤波单元,用于结合第一imu采集的第一姿态信息,将头戴显示设备的六个自由度进行平滑插值滤波,将滤波后的头戴显示设备的六个自由度作为头戴显示设备最终的六个自由度;以及,结合第二imu采集的手柄的姿态信息,将手柄的六个自由度进行平滑插值滤波,将滤波后的手柄的六个自由度作为手柄最终的六个自由度。

历史轨迹记录单元,用于保存手柄的六个自由度信息,六个自由度信息记录发光体和第二imu的历史轨迹。

图3为本发明一个实施例提供的一种定位物体的定位系统的结构示意图。如图3所示,该定位物体的定位系统300包括:如图2所示的头戴显示设备200和与头戴显示设备200对应的手柄320。

手柄320有线或无线连接头戴显示设备200,以保证头戴显示设备200可以获取到相应数据。

需要说明的是,图2所示的头戴显示设备和图3所示的系统的各实施例与图1所示的方法的各实施例对应相同,上文已有详细说明,在此不再赘述。

综上所述,本发明通过头戴显示设备上设置的摄像头获取头戴显示设备所处空间的空间图像;通过头戴显示设备的第一imu采集头戴显示设备的第一姿态信息,依据空间图像和第一姿态信息,获取头戴显示设备的六个自由度信息,实现头戴显示设备的定位;并且,头戴显示设备获取发光体的历史轨迹和第二imu的历史轨迹;其中,发光体和第二imu均设置在与头戴显示设备对应的手柄上;接收第二imu采集的手柄的姿态信息;依据历史轨迹和空间图像中发光点的位置信息,确定发光体的三维坐标,其中,发光点与发光体相对应;根据三维坐标和手柄的姿态信息,确定手柄的六个自由度信息,实现手柄的定位。可见,本发明的技术方案区别于现有技术中外置的摄像头,是通过头戴显示设备上的摄像头实现头戴显示设备和与头戴显示设备对应的手柄的定位,摄像头随着头戴显示设备的移动而移动,定位范围广。也就是说,本发明的技术方案中的定位设备是设置在定位物体上,不需要预先设置外置的定位设备,应用便利,定位范围广,可提高用户体验。

以上所述,仅为本发明的具体实施方式,在本发明的上述教导下,本领域技术人员可以在上述实施例的基础上进行其他的改进或变形。本领域技术人员应该明白,上述的具体描述只是更好的解释本发明的目的,本发明的保护范围应以权利要求的保护范围为准。

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