基于环境视觉特征点识别技术的增强现实定位方法及装置与流程

文档序号:19314528发布日期:2019-12-03 23:51阅读:221来源:国知局
基于环境视觉特征点识别技术的增强现实定位方法及装置与流程

本发明涉及虚拟现实技术领域,尤其涉及一种基于环境视觉特征点识别技术的增强现实定位方法及装置。



背景技术:

增强现实技术(augmentedreality,简称ar),是一种实时地计算摄影机影像的位置及角度并加上相应图像的技术,这种技术的目标是在屏幕上把虚拟世界套在现实世界并进行互动。目前这种技术已经获得了较为成熟的发展,主要体现在各种ar眼镜、ar头盔等产品上。但在室内应用ar设备时,由于没有gps信号,且uwb、蓝牙等有源定位方式定位精度不高,使得ar设备不能实时定位,导致虚拟世界与现实世界叠加不够及时、不准确的问题。



技术实现要素:

本发明实施例提供一种基于环境视觉特征点识别技术的增强现实定位方法及装置,以解决室内场景中ar设备不能实时定位,导致虚拟世界与现实世界叠加不够及时以及不准确的问题。

为了解决上述室内场景中ar设备定位存在的技术问题,本发明采用如下技术方案:

一方面,本发明的实施例提供了一种基于环境视觉特征点识别技术的增强现实定位方法,包括:

基于即时定位与地图构建方法获取现实场景的三维空间位置数据;

获取现实场景的环境描述文件;

建立所述环境描述文件与虚拟场景的世界坐标系的对应关系;

根据所述对应关系将所述三维空间位置数据转化成虚拟场景的世界坐标数据。

在一些实施例中,所述基于即时定位与地图构建方法获取现实场景的三维空间位置数据的步骤包括:

获取现实场景中ar设备的轨迹与姿态数据;

获取现实场景中ar设备的位移数据;

对所述ar设备的轨迹与姿态数据以及所述ar设备的位移数据进行几何变换得到所述现实场景的三维空间位置数据。

在一些实施例中,所述获取现实场景中ar设备的轨迹与姿态数据的步骤包括:

根据不同图像帧计算得到ar设备的惯性测量数据;

对所述ar设备的惯性测量数据进行预积分处理得到所述ar设备的轨迹与姿态数据。

在一些实施例中,所述获取现实场景中ar设备的位移数据的步骤包括:

根据连续图像帧建立图像特征光流方程;

计算所述图像特征光流方程得到所述ar设备的位移数据。

在一些实施例中,采用标准透视变换的矩阵方程对所述ar设备的轨迹与姿态数据以及所述ar设备的位移数据进行几何变换处理。

在一些实施例中,所述获取现实场景的环境描述文件的步骤包括:

记录时刻t以及对应时刻t的ar设备的相机所拍摄的图像特征点在相机坐标系的归一化坐标;

根据记录的所述时刻t以及所述归一化坐标建立索引树以形成所述环境描述文件。

在一些实施例中,所述建立所述环境描述文件与虚拟场景的世界坐标系的对应关系的步骤包括:

将所述相机的当前位置作为所述虚拟场景中的世界坐标系的原点;

获取所述相机的当前位置的三维空间坐标;

根据所述虚拟场景中的世界坐标系的原点以及所述相机的当前位置的三维空间坐标建立所述环境描述文件与虚拟场景的世界坐标系的对应关系。

在一些实施例中,所述根据所述对应关系将所述三维空间位置数据转化成虚拟场景的世界坐标数据的步骤之后还包括:

计算所述三维空间位置数据与所述世界坐标数据的偏移量;

根据所述偏移量调整虚拟摄像头的偏转量以使所述虚拟摄像头的姿态与所述ar设备的姿态对齐。

另一方面,本发明实施例还提供了一种基于环境视觉特征点识别技术的增强现实定位装置,包括:

位置数据获取模块,用于基于即时定位与地图构建方法获取现实场景的三维空间位置数据;

环境描述文件获取模块,用于获取现实场景的环境描述文件;

对应关系建立模块,用于建立所述环境描述文件与虚拟场景的世界坐标系的对应关系;

数据转换模块,用于根据所述对应关系将所述三维空间位置数据转化成虚拟场景的世界坐标数据。

在一些实施例中,本发明实施例的用于室内场景的增强现实定位装置还包括:

计算模块,用于计算所述三维空间位置数据与所述世界坐标数据的偏移量;

调整模块,用于根据所述偏移量调整虚拟摄像头的偏转量以使所述虚拟摄像头的姿态与所述ar设备的姿态对齐。

本发明实施例的基于环境视觉特征点识别技术的增强现实定位方法首先基于即时定位与地图构建方法进行现实场景的建图与定位,获取得到现实场景的三维空间位置数据,之后从现实场景中获得环境描述文件(areadescriptionfile),该环境描述文件中包含图像特征点的位置信息和坐标轴信息,以及处于此坐标系中相机应该复原的姿态,然后将环境描述文件与ar系统进行对接,建立环境描述文件与虚拟场景的世界坐标系的对应关系,最后利用对应关系将三维空间位置数据转化为虚拟场景(即ar场景)中的世界坐标数据,从而实现增强现实场景与真实场景的高精度叠加,以及室内实时定位。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获取其他的附图。

图1是本发明的基于环境视觉特征点识别技术的增强现实定位方法的一些实施例的流程示意图;

图2是本发明的基于环境视觉特征点识别技术的增强现实定位方法的步骤100的一些实施例的流程示意图;

图3是本发明的基于环境视觉特征点识别技术的增强现实定位方法的步骤200的一些实施例的流程示意图;

图4是本发明的基于环境视觉特征点识别技术的增强现实定位方法的步骤300的一些实施例的流程示意图;

图5是本发明的基于环境视觉特征点识别技术的增强现实定位方法的另一些实施例的流程示意图;

图6是本发明的基于环境视觉特征点识别技术的增强现实定位装置的一些实施例的结构示意图;

图7是本发明的环境描述文件的一些实施例的示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获取的所有其他实施例,都属于本发明保护的范围。

下面首先对本发明一些实施例提供的基于环境视觉特征点识别技术的增强现实定位方法进行说明。如图1所示,本发明的实施例提供了一种基于环境视觉特征点识别技术的增强现实定位方法,包括:

步骤100:基于即时定位与地图构建方法获取现实场景的三维空间位置数据;

步骤200:获取现实场景的环境描述文件;

步骤300:建立环境描述文件与虚拟场景的世界坐标系的对应关系;

步骤400:根据对应关系将三维空间位置数据转化成虚拟场景的世界坐标数据。

本发明实施例的基于环境视觉特征点识别技术的增强现实定位方法首先基于即时定位与地图构建方法进行现实场景的建图与定位,获取得到现实场景的三维空间位置数据,之后从现实场景中获得环境描述文件(areadescriptionfile),该环境描述文件中包含图像特征点的位置信息和坐标轴信息,以及处于此坐标系中相机应该复原的姿态,然后将环境描述文件与ar系统进行对接,建立环境描述文件与虚拟场景的世界坐标系的对应关系,最后利用对应关系将三维空间位置数据转化为虚拟场景(即ar场景)中的世界坐标数据,从而实现增强现实场景与真实场景的高精度叠加,以及室内实时定位。

对于ar移动设备而言,在室内场景,无法依靠gps设备进行精确的定位和导航服务,因此需要进行自定位。而在机器人领域,这个问题被定义为即时定位与地图构建(simultaneouslocalizationandmapping,即slam),slam问题可以描述为:机器人在未知环境中从一个未知位置开始移动,在移动过程中根据位置估计和地图进行自身定位,同时在自身定位的基础上建造增量式地图,实现机器人的自主定位和导航。对于一个slam问题,根据其使用的传感器的不同,主要有三种解决方法:基于rgbd相机的slam,基于激光点云的slam,以及基于视觉的slam。基于视觉的slam需要结合视觉惯性里程计(visual–inertialodometry,即vio),其又分为基于单目摄像头、双目摄像头和rgbd摄像头三种。三种摄像头的视觉slam方案各有优劣:

基于单目摄像头的视觉slam方案的优点是成本低,距离不受限制,缺点是尺度不确定性,初始化问题;

双目摄像头的视觉slam方案的优点是计算深度,距离不受限制,缺点是配置复杂,计算量大;

rgbd摄像头的视觉slam方案的主动测量深度,测量距离和范围受限制,受日光干扰,受材质干扰。

对于大多数ar移动设备而言,更普遍的情况是只拥有一个摄像头。因此,在本实施例首先选择基于单目摄像头的slam方法。

在一些实施例中,如图2所示,本发明实施例的基于环境视觉特征点识别技术的增强现实定位方法的步骤100包括:

步骤101:获取现实场景中ar设备的轨迹与姿态数据;

步骤102:获取现实场景中ar设备的位移数据;

步骤103:对ar设备的轨迹与姿态数据以及ar设备的位移数据进行几何变换得到现实场景的三维空间位置数据。

对于ar移动设备的slam建图与定位时,有两类数据需要测量获取,第一类是后置摄像头采集到的视频帧(即图片),还有一类是ar移动设备内置的加速度计、陀螺仪、磁力计等惯性测量元件(inertialmeasurementunit,简称imu)。在建图和定位的过程中,我们既识别和追踪不同帧图像的特征点差异,同时imu的测量数据也一直在进行数据处理和优化。根据这两类数据我们可以计算得到现实场景中ar设备的轨迹与姿态数据以及ar设备的位移数据,从而推导得到现实场景的三维空间位置数据。

可选地,本发明的实施例的基于环境视觉特征点识别技术的增强现实定位方法的步骤101包括:

步骤1011:根据不同图像帧计算得到ar设备的惯性测量数据;

步骤1012:对ar设备的惯性测量数据进行预积分处理得到ar设备的轨迹与姿态数据。

在本实施例中通过对imu的测量数据进行预积分与优化可以得到ar设备的轨迹与姿态数据,具体计算过程为:

计算两图像帧之间imu的相对变化,其中角速度为加速度为测量偏差为b,噪声为η,不同时刻为t,则

k和k+1代表相邻图像帧bk和bk+1,代表四元数的累乘操作,常见的,通过以下式子,我们能够预积分获得任意两图像帧之间ar移动设备的姿态和速度,其中α,β,γ表示流程、线速度、角速度与上述影响因子的关系。

本实施例中我们做出的优化有:1)通过分段的积分,减少了漂移;2)将重力加速度g提取到了积分外面,减少了计算量;3)生成加速度方向的方向向量,对方向向量进行积分,则可以形成轨迹,在忽略图像特征情况下,对于imu的预积分,有效得到了对ar移动设备在未知空间中的姿态与轨迹。

在一些实施例中,本发明的实施例的基于环境视觉特征点识别技术的增强现实定位方法的步骤102包括:

步骤1021:根据连续图像帧建立图像特征光流方程;

步骤1022:计算图像特征光流方程得到ar设备的位移数据。

本实施例中通过对连续图像帧中图像特征点的监测与追踪获取得到ar设备的位移数据。我们默认ar移动设备有单目摄像头,并以每秒30帧的速度从视频流中获取图像,不同的图像帧中,很多的低级特征,例如边,角,团,脊会比一个像素的灰度值所带有的信息多的多。在不同的应用,一些特征会比其它特征更加的有用。一旦想好我们想要的特征的构成,我们就要想办法在图片里找到我们想要的特征。考虑到在30fps的情况下,有如下假设:1、连续的两帧图像之间,目标像素亮度不便;2.相邻的像素之间有相似的运动。

考虑第一帧的像素i(x,y,t)表示在时间t时像素i(x,y)的值,在经过时间dt后,此像素在下一帧移动了(dx,dy)。由于这些像素是相同的,而且亮度不变,表示成:i(x,y,t)=i(x+dx,y+dy,t+dt)。

假设移动很小,使用泰勒公式可以表示成:

其中,h.o.t是高阶无穷小,由第一个假设和使用泰勒公式展开的式子可以得到:

我们做如下变换令:

则可以得到光流方程:

fxu+fyv+ft=0

其中,fx和fx为图像的梯度,ft为图像沿着时间的梯度。

这个方程可以用已有的计算稀疏特征集光流的lucas-kanade方法来计算从而给出连续图像间的估计的水平和垂直位移,给出每个视频流里图像帧的位移矩阵{δx,δy}。

在一些实施例中,本发明的实施例的基于环境视觉特征点识别技术的增强现实定位方法中采用标准透视变换的矩阵方程对ar设备的轨迹与姿态数据以及ar设备的位移数据进行几何变换处理。

从空间三维点经过世界坐标系到相机坐标系的转换,以及透视投影和相机的镜头畸变得到最终的2维点。前者称为外参数,后者成为内参数,两者的乘积称为cameramatrix相机矩阵。内参数主要为焦距、主点等。畸变参数的主要成分为径向畸变,一般到第一项就可以。外参数中旋转矩阵满足单位正交性质,这些性质在标定相机内外参数时会用到。

上式为标准透视变换的矩阵方程,通过以上矩阵变换方程,可以将通过imu测量出来的轨迹与姿态{α,β,γ}以及通过图像特征光流法测量出来的位移数据{δx,δy}变为三维空间内的{x,y,z}。

在一些实施例中,如图3所示,本发明的实施例的基于环境视觉特征点识别技术的增强现实定位方法的步骤200包括:

步骤201:记录时刻t以及对应时刻t的ar设备的相机所拍摄的图像特征点在相机坐标系的归一化坐标;

步骤202:根据记录的时刻t以及归一化坐标建立索引树以形成环境描述文件。

本实施例中构造环境描述文件是对于每个t时刻,记录t时刻的相机id和相机所看到的图像特征点在相机坐标系的归一化坐标,其中相机id号即为t,特征点位置为x,y,z。之后根据记录的时刻t以及归一化坐标建立索引树形成的环境描述文件,如图7所示。

在一些实施例中,如图4所示,本发明的实施例的基于环境视觉特征点识别技术的增强现实定位方法的步骤300包括:

步骤301:将相机的当前位置作为虚拟场景中的世界坐标系的原点;

步骤302:获取相机的当前位置的三维空间坐标;

步骤303:根据虚拟场景中的世界坐标系的原点以及相机的当前位置的三维空间坐标建立环境描述文件与虚拟场景的世界坐标系的对应关系。

本实施例中步骤300用于完成将环境文件与ar系统的对接,对于一个真实的世界来说,是存在世界坐标系的,在每次开机后,通过步骤100ar移动设备可以获得当前时刻的图像特征信息和imu信息,我们构建了一个方法,使得保存后的叶子节点存储着相机id和图像特征点list。建好kmeans树后,对环境描述文件中的每幅图像的每个特征点,根据visualword的检索方法,检索到最为相似的叶子节点,叶子节点会存下这个特征点的数据(相机id和图像特征id,权重)。最后每个叶子节点里保存有一个list,包含一系列图像。实际运行时,当新的图像加入到图像数据库中的时候,反向索引就会更新。

反向索引用于提取与给定图像相似的图像,通过投票机制,选取候选者,而不需要计算与所有图像之间的相似度,加速搜索。

这样就完成了实时建立的直角坐标系与保存好的ar中世界坐标系的统一,将ar中世界坐标系的原点设置为相机镜头当前的位置,相机镜头当前的位置可在空间直角坐标系内获得坐标,从而可以将ar物体相对于ar中世界坐标系的坐标转换为空间直角坐标系内的坐标,从而将ar物体坐标与空间直角坐标系进行统一。

具体地:

将特征点们分成了n(n等于第4层node的个数)个簇,每个簇都有id号,也就是nodeid。匹配时从关键帧中选择一个簇,从当前帧选择nodeid号一样的簇,对这两个簇里的特征点进行匹配,词袋模型就是这样子减少了匹配的范围。如果层数选择了根节点,相对于一幅图像只有一个簇,没有优化。

两个簇的特征点的匹配是暴力的逐个对比,算描述子之间的距离。对于关键帧中的每一个特征点,算出与当前帧特征点的描述子的距离,保存下最小距离和倒数第二小距离,成功匹配的要求是:最小距离小于一个误差阈值。

在一些实施例中,如图5所示,本发明的实施例的基于环境视觉特征点识别技术的增强现实定位方法的步骤400之后还包括:

步骤500:计算三维空间位置数据与世界坐标数据的偏移量;

步骤600:根据偏移量调整虚拟摄像头的偏转量以使虚拟摄像头的姿态与ar设备的姿态对齐。

ar图像在真实位置的叠加,对于每一个在真实世界中存在的固定物体,如建筑物等,都有一个固定的空间坐标,即其统一尺度下的空间直角坐标系坐标是固定的,相对来说,坐标系下的坐标对应的ar世界的xyz(ar世界坐标系的坐标)也是固定的。

对于手机读取的视频帧而言,真实位置上既有现实位置坐标又有虚拟位置坐标,两者一致的映射关系成为而后感知交互顺利进行的先决条件。

本实施例通过将渲染3d内容的虚拟摄像头的姿态与真实位置的物体姿态对齐,即可达到ar图像在真实位置的叠加。

本实施例将作为参照的真实世界的固定物体的空间直角坐标系坐标换算为位于ar中世界坐标系的坐标,再计算这两个坐标的偏移量,然后通过调节渲染3d内容的虚拟摄像头按照上述偏移量进行偏转对齐即可,也就是将渲染3d内容的虚拟摄像头的姿态与真实位置的物体姿态对齐,从而实现高精度的叠加。

另一方面,如图6所示,本发明实施例还提供了一种基于环境视觉特征点识别技术的增强现实定位装置,包括:

位置数据获取模块10,用于基于即时定位与地图构建方法获取现实场景的三维空间位置数据;

环境描述文件获取模块20,用于获取现实场景的环境描述文件;

对应关系建立模块30,用于建立环境描述文件与虚拟场景的世界坐标系的对应关系;

数据转换模块40,用于根据对应关系将三维空间位置数据转化成虚拟场景的世界坐标数据。

在一些实施例中,如图6所示,本发明实施例的用于室内场景的增强现实定位装置还包括:

计算模块50,用于计算三维空间位置数据与世界坐标数据的偏移量;

调整模块60,用于根据偏移量调整虚拟摄像头的偏转量以使虚拟摄像头的姿态与ar设备的姿态对齐。

本发明实施例的基于环境视觉特征点识别技术的增强现实定位装置首先通过位置数据获取模块实现现实场景的建图与定位,获取得到现实场景的三维空间位置数据,之后环境描述文件获取模块从现实场景中获得环境描述文件(areadescriptionfile),该环境描述文件中包含图像特征点的位置信息和坐标轴信息,以及处于此坐标系中相机应该复原的姿态,然后对应关系建立模块将环境描述文件与ar系统进行对接,建立环境描述文件与虚拟场景的世界坐标系的对应关系,最后数据转换模块将三维空间位置数据转化为虚拟场景(即ar场景)中的世界坐标数据,从而实现增强现实场景与真实场景的高精度叠加,以及室内实时定位。

以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

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