一种导航的方法和终端与流程

文档序号:12117077阅读:362来源:国知局
一种导航的方法和终端与流程

本发明涉及导航技术,尤指一种导航的方法和终端。



背景技术:

随着移动通信技术的不断演进,智能终端越来越多的深入到社会的各个层面,智能终端与人们的购物、娱乐、出行等活动联系越来越紧密,其中,智能终端可以为用户出行时提供路线导航,借助全球定位系统(Global Positioning System,GPS)以及无线网络,在室外的情况下,往往可以轻松的获取到位置信息,实现导航等功能。

但是目前应用在智能终端上的GPS或辅助全球定位系统(Assisted GPS,A-GPS)还存在以下的问题:在室内例如建筑物内的情况下,由于GPS系统无法搜索到卫星信号,所以在室内的情况下并不能为用户导航,例如在以下场景中:用户驾车去某大型商场购物,待购完物后返回车库,却忘记了停车的具体位置,这时,由于在GPS或A-GPS系统下终端无法搜索到卫星信号来为用户进行导航,那么,面对偌大的商场地下停车库,用户要找到自己的车往往需要花费很大的精力。



技术实现要素:

为了解决上述技术问题,本发明提供了一种导航的方法和终端,能够在无法利用卫星信号导航的情况下为用户进行导航,为用户带来极大的便利。

为了达到本发明目的,本发明提供了一种导航的方法,包括:

当终端需要从第一位置移动到第二位置时,获取所述终端运动时所述终端基于所述终端自身坐标系采集的运动数据;

根据预设转换算法将所述运动数据转换为基于世界坐标系的运动数据;

根据所述转换后的运动数据以及预设算法确定所述终端的运动轨迹;

根据所述终端的运动轨迹以及所述第一位置与所述第二位置之间的路线数据引导所述终端从所述第一位置移动到所述第二位置。

进一步的,

所述第一位置与所述第二位置之间的路线数据通过以下步骤得到:

所述终端从所述第二位置移动到所述第一位置时,执行所述获取所述终端运动时所述终端基于所述终端自身坐标系采集的运动数据;

执行所述根据预设转换算法将所述运动数据转换为基于世界坐标系的运动数据;

执行所述根据所述转换后的运动数据以及预设算法确定所述终端的运动轨迹;

将所述终端从所述第二位置移动到所述第一位置的运动轨迹作为所述第一位置与所述第二位置之间的路线数据并保存。

进一步的,所述第一位置与所述第二位置之间的路线数据是预先存储到所述终端中的。

进一步的,所述根据所述转换后的运动数据以及预设算法确定所述终端的运动轨迹,包括:

将所述转换后的运动数据中加速度数据中重力方向的数据剔除处理,根据经过剔除处理后得到的加速度数据的零值计算所述终端运动的频率;

根据所述经过剔除处理后得到的加速度数据中水平方向的数据计算获得所述终端运动的步长;

根据所述频率以及所述步长计算所述终端的移动距离数据:

根据所述转换后的运动数据中的角速度数据以及方向矫正算法确定所述终端的运动方向;

根据所述移动距离数据以及所述终端的运动方向确定所述终端的运动轨 迹。

进一步的,在所述获取所述终端运动时所述终端基于所述终端自身坐标系采集的运动数据之前或之后,所述方法还包括:

获取所述终端采集的高度数据;

相应的,在所述根据所述移动距离数据以及所述终端的运动方向确定所述终端的运动轨迹之后,所述方法还包括:

根据所述终端的高度数据对所述终端的运动轨迹进行校正。

本发明提供一种终端,包括:

获取单元,用于当终端需要从第一位置移动到第二位置时,获取所述终端运动时所述终端基于所述终端自身坐标系采集的运动数据;

转换单元,用于根据预设转换算法将所述运动数据转换为基于世界坐标系的运动数据;

确定单元,用于根据所述转换后的运动数据以及预设算法确定所述终端的运动轨迹;

导航单元,用于根据所述终端的运动轨迹所述第一位置与所述第二位置之间的路线数据引导所述终端从所述第一位置移动到所述第二位置。

进一步的,

所述获取单元,还用于所述终端从所述第二位置移动到所述第一位置时,获取所述终端运动时所述终端基于所述终端自身坐标系采集的运动数据;

所述转换单元,还用于根据预设转换算法将所述运动数据转换为基于世界坐标系的运动数据;

所述确定单元,还用于根据所述转换后的运动数据以及预设算法确定所述终端的运动轨迹;

相应的,所述终端还包括:

处理单元,用于将所述终端从所述第二位置移动到所述第一位置的运动轨迹作为所述第一位置与所述第二位置之间的路线数据并保存。

进一步的,所述第一位置与所述第二位置之间的路线数据是预先存储到所述终端中的。

进一步的,所述确定单元具体用于:

将所述转换后的运动数据中加速度数据中重力方向的数据剔除处理,根据经过剔除处理后得到的加速度数据的零值计算所述终端运动的频率;

根据所述经过剔除处理后得到的加速度数据中水平方向的数据计算获得所述终端运动的步长;

根据所述频率以及所述步长计算所述终端的移动距离数据:

根据所述转换后的运动数据中的角速度数据以及方向矫正算法确定所述终端的运动方向;

根据所述移动距离数据以及所述终端的运动方向确定所述终端的运动轨迹。

进一步的,所述获取单元还用于:获取所述终端采集的高度数据;

相应的,所述确定单元具体用于:

将所述转换后的运动数据中加速度数据中重力方向的数据剔除掉,通过分析经过剔除处理后得到的加速度数据的零值计算所述终端运动的频率;

根据所述经过剔除处理后得到的加速度数据中水平方向的数据计算获得所述终端运动的步长;

根据所述频率以及所述步长计算所述终端的移动距离数据:

根据所述转换后的运动数据中的角速度数据以及方向矫正算法确定所述终端的运动方向;

根据所述移动距离数据以及所述终端的运动方向确定所述终端的运动轨迹;

根据所述终端的高度数据对所述终端的运动轨迹进行校正。

本发明实施例提供的一种导航的方法和终端,当终端需要从第一位置移动到第二位置时,获取所述终端运动时所述终端基于所述终端自身坐标系采 集的运动数据;根据预设转换算法将所述运动数据转换为基于世界坐标系的运动数据;根据所述转换后的运动数据以及预设算法确定所述终端的运动轨迹;根据所述终端的运动轨迹以及所述第一位置与所述第二位置之间的路线数据引导所述终端从所述第一位置移动到所述第二位置。通过本发明的技术方案,能够在无法利用卫星信号导航的情况下为用户进行导航,为用户带来极大的便利。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

附图说明

附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。

图1为本发明实施例提供的一种导航的方法的流程示意图;

图2为本发明实施例中的世界坐标系的示意图;

图3为本发明实施例中的终端坐标系的示意图;

图4为本发明实施例中的MOD函数的角度映射示意图;

图5为本发明实施例中HDE算法的反馈控制图;

图6为本发明实施例中卡尔曼滤波算法的流程示意图;

图7为本发明实施例中提供的一种终端的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。

在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

本发明实施例提供一种导航的方法,基于终端,如图1所示,该方法包括:

步骤101、当终端需要从第一位置移动到第二位置时,获取所述终端运动时所述终端基于所述终端自身坐标系采集的运动数据;

步骤102、根据预设转换算法将所述运动数据转换为基于世界坐标系的运动数据;

步骤103、根据所述转换后的运动数据以及预设算法确定所述终端的运动轨迹;

步骤104、根据所述终端的运动轨迹以及所述第一位置与所述第二位置之间的路线数据引导所述终端从所述第一位置移动到所述第二位置。

进一步的,所述第一位置与所述第二位置之间的路线数据通过以下步骤得到:

所述终端从所述第二位置移动到所述第一位置时,执行所述获取所述终端运动时所述终端基于所述终端自身坐标系采集的运动数据;

执行所述根据预设转换算法将所述运动数据转换为基于世界坐标系的运动数据;

执行所述根据所述转换后的运动数据以及预设算法确定所述终端的运动轨迹;

将所述终端从所述第二位置移动到所述第一位置的运动轨迹作为所述第一位置与所述第二位置之间的路线数据并保存。

进一步的,所述第一位置与所述第二位置之间的路线数据是预先存储到所述终端中的。

示例性的,可以是由路测人员携带测试仪器对所述第一位置与所述第二位置之间的路线进行具体测量后获得路线数据后存储到所述终端中。

进一步的,所述根据所述转换后的运动数据以及预设算法确定所述终端的运动轨迹,包括:

将所述转换后的运动数据中加速度数据中重力方向的数据剔除处理,根据经过剔除处理后得到的加速度数据的零值计算所述终端运动的频率;

根据所述经过剔除处理后得到的加速度数据中水平方向的数据计算获得所述终端运动的步长;

根据所述频率以及所述步长计算所述终端的移动距离数据:

根据所述转换后的运动数据中的角速度数据以及方向矫正算法确定所述终端的运动方向;

根据所述移动距离数据以及所述终端的运动方向确定所述终端的运动轨迹。

进一步的,在所述获取所述终端运动时所述终端基于所述终端自身坐标系采集的运动数据之前或之后,所述方法还可以包括:

获取所述终端采集的高度数据;

相应的,在所述根据所述移动距离数据以及所述终端的运动方向确定所述终端的运动轨迹之后,所述方法还包括:

根据所述终端的高度数据对所述终端的运动轨迹进行校正。

本发明实施例提供的一种导航的方法,当终端需要从第一位置移动到第二位置时,获取所述终端运动时所述终端基于所述终端自身坐标系采集的运动数据;根据预设转换算法将所述运动数据转换为基于世界坐标系的运动数据;根据所述转换后的运动数据以及预设算法确定所述终端的运动轨迹;根据所述终端的运动轨迹以及所述第一位置与所述第二位置之间的路线数据引导所述终端从所述第一位置移动到所述第二位置。通过本发明的技术方案,能够在无法利用卫星信号导航的情况下为用户进行导航,为用户带来极大的便利。

为了使本领域技术人员能够更清楚地理解本发明提供的技术方案,下面对本发明提供的技术方案中的一些具体步骤进行详细说明:

上述实施例中:获取所述终端运动时所述终端基于所述终端自身坐标系采集的运动数据,该步骤可以具体为:

首先需要进行坐标系的变换:

在导航系统中,由于终端的陀螺仪所采集的数据是基于自身坐标系的,所以不能直接应用,必须经过一定的变换后才能使用,即将终端坐标系转换为世界坐标系。下面首先简要的介绍世界坐标系以及终端坐标系。

世界坐标系,也称为全局坐标系,它是一个右手坐标系,该坐标系是恒定不变的,以地球为参考系,具体见图2,世界坐标系的x轴沿球面水平向东,y轴沿球面水平向北,z轴垂直球面指向天空。

终端坐标系根据终端屏幕的方向进行定义,如图3所示,x轴平行终端屏幕向右,y轴平行终端屏幕向左,z轴垂直于终端屏幕指向终端屏幕的朝向,终端坐标系不会因为终端位置的改变而改变。

坐标系的转换需要三次旋转,第一次是关于z轴的逆时针旋转,转动角度为ψ,令世界坐标系为(E1,E2,E3)绕z轴旋转后的坐标为(a1,a2,a3)。旋转的公式为:

第二次是关于y轴的逆时针旋转,转动角度为θ,令绕y轴旋转后的坐标为(b1,b2,b3)。旋转的公式为:

第三次是关于x轴的逆时针旋转,转动角度为ф,令绕y轴旋转后的坐标为(e1,e2,e3)。旋转的公式为:

(e1,e2,e3)即为从终端坐标系转换到世界坐标系下的值,三次旋转的 公式为:

至此,通过以上过程可以完成终端采集的基于所述终端坐标系的数据转换为基于世界坐标系的数据。

上述实施例中:根据所述转换后的运动数据以及预设算法确定所述终端的运动轨迹,可以具体为如下内容:

本发明实施例中确定终端运动轨迹的算法的核心主要包含两步,第一步计算终端(实际上是指该终端的使用用户)的步频,第二步计算终端(实际上是指终端的使用用户)的步长,获取到终端运动的步频以及步长数据之后即可得到终端的使用用户移动的距离数据进而可以确定终端的运动轨迹:

步骤一:计算用户的步频,这个步骤的基本原理为:用户的行走过程即为一个加速以及减速的过程,所以从加速度计获取的数据剔除掉重力加速度后,判断加速度的零点即可判断用户运动的开始以及结束。

具体步骤如下:

其中,air为第i个采样点的总加速度,aix、aiy、aiz分别为加速度计在x y z三个轴上面的加速度值。

计算静止状态下的重力加速度:其中,M为采样点数,具体由终端的传感器而定,在探测重力加速度过程中,该终端需保持静止。

计算去除掉重力加速度后的加速度值:其中C为探测范围。

具体的,整个计算过程的具体流程如下:

1设置探测参数并开始;

2初始化探测范围;

3获取加速度数据;

4获取当地重力;

5剔除重力加速度;

6更新探测范围;

7探测到峰值,寻找跨步结束点:

8探测到跨步结束点,计算该步统计值。

步骤二:计算用户的步长;

其中,S为步长,k为常数。

通过以上的算法,系统即可探测出用户所移动的距离,进而确定终端的运动轨迹。

优选的,在本发明提供的技术方案中,获取到高度数据可以对终端的运动轨迹进一步校正优化。在终端中,一般都设置有压力传感器,压力传感器可以充当气压计用于测量海拔高度变化。

在地球大气层的底层,大气压随着海拔高度上升而降低。我们将在59℉(华氏温度)时的29.92in.Hg(英寸汞柱)海平面气压规定为标准大气压,这个平均值不受时间影响,而受到测量点的地理位置、气温和气流的影响。因此,我们必须了解不同高度的大气压。

1个标准大气压=14.7psi=76cm.Hg=29.92in.Hg=1.01325bar=1013.25mbar;其中,psi–磅/平方英寸;cm.Hg–厘米汞柱;in.Hg–英寸汞柱;Pa–帕,国际制压力单位,1Pa=1N/m2;bar–巴,气压单位,1bar= 105Pa;mbar–毫巴,1mbar=10-3bar。

可以用下面的公式表示大气压与海拔高度之间关系:

其中,P0是标准大气压,等于1013.25mbar;Altitude是以米为单位的海拔高度,P是在某一高度的以mbar为单位的气压。

根据上述公式,当高度从海平面上升到海拔11000米高时,大气压从1013.25mbar降到230mbar,当高度低于1500米时,大气压几乎呈线性降低,每100米大约降低11.2mbar,即每10米大约降低1.1mbar。为了取得更精确的高度测量数据,可以在终端中存储一个大气压高度查询表,根据压力传感器的测量结果,确定对应的海拔高度。

需要说明的是,在本发明提供的技术方案中,确定终端的运动轨迹时还需要对终端的运动方向做出准确的判断,具体的,下面详细说明上述实施例中所述根据所述转换后的运动数据中的角速度数据以及方向矫正算法确定所述终端的运动方向的过程:

本发明的技术方案中方向判断主要基于终端中的陀螺仪而实现,根据陀螺仪的工作原理可知,对陀螺仪的瞬时角速度进行不断积分即可得到终端的转向角,但是室内环境受到各种各样的干扰,例如磁场的干扰,同时受制于陀螺仪本身的精度以及转向不足效应的影响,终端中内置的陀螺仪中直接获取的数据并不足以用来进行方向判断。

为了将方向估计误差限制在一定范围内,J.Borenstein等人提出了启发式消除算法(Heuristic Drift Elimination,HDE)来校正陀螺仪的数据,HDE算法不仅能减低由于陀螺仪造成的方向误差,甚至能够完全消除误差,HDE算法在几秒钟内便能达到稳定状态,使方向误差基本为零,HDE算法的基本原理基于这样一个事实情况:通常,建筑物的走廊(墙壁)都是直线,并且和其他的走廊(墙壁)保持垂直或者平行,但是同时也就限制了HDE算法的使用条件,即终端的使用者所走的路径之间必须为垂直或者是相互平行,目前大部分的建筑物均可达到这一要求,在满足条件的建筑物中运动时,HDE算法能将由陀螺仪计算的方向逐渐向最靠近的主方向靠近,不断矫正方向,消除陀螺仪偏差,当终端的使用者转弯的时候,HDE算法停止矫正,当HDE 算法停止校正时候,陀螺仪的偏差会造成新的偏差。

假设终端的使用者行走的路径有四个主方向ψ,并且相邻的主方向之间的夹角为Δ=90°,当用户将终端竖直放在裤兜中时,将陀螺仪按照终端Y轴转过的角度校正为终端使用者行进方向,令ε表示陀螺仪偏移,则陀螺仪角速度计算公式可表示为:ωraw=ωtrue+ωd;其中ωraw表示直接从陀螺仪读出的原始角速度,ωtrue表示实际但是未知的角速度,ωd表示陀螺仪动态偏移,不可知且缓慢变化。

在详细描述HDE算法之前,需要定义一个非常重要的子函数MOD(n,Δ)。MOD(n,Δ)是一个求模函数,它的作用是求两个数n和Δ的余数,它的具体计算公式如下:

如图4所示,说明了MOD的角度映射,MOD的作用是将任意大小的角度映射到(0,Δ)的区间内,(0,Δ)的区间又均分为两个子空间R和L,当△=90°时,(0,Δ)和坐标系的第一象限重合,MOD(n,90°)将任意角度n(大于360°或者为负数等)映射到R和L区间,MOD的重要性在于,在有四个主方向的ψ=90° 180° 270° 360°时,凡是在所有主方向左侧的任意角度θ都可映射到区间L,凡是在所有主方向右侧的任意角度θ都可映射到区间R,在主方向右侧是指在ψ和ψ-△/2的角度,在主方向左侧是指在ψ和ψ+△/2的角度,MOD函数使得沿任意主方向行走都能变为沿0°角行走。

HDE算法是一个反馈控制系统,如图5所示为HDE算法的反馈过程,其步骤如下:

1、当终端的使用者走直线路径时,ωtrue=0,此时陀螺仪的输出为ωd,ωd与二元控制器I-Controller的输出Ii(初始情况下Ii=0),相加得到ωd+Ii,之后ωd+Ii被送往数值积分器,积分结果为行进方向的相对变化角ψi

2、在第一次迭代之后,反馈控制系统形成回路,并将ψi做z-1处理得到ψi-1,并送给MOD函数,z-1表示延迟一个采样间隔,公式ψ*i=MOD(ψi-1,Δ)表 示ψi-1经MOD函数处理之后得到映射到(0,△)的ψ*i

3、将ψ*i和固定值фset=△/2比较,得到误差信号

4、Ei会被送到二元控制器I-Controller,I-Controller仅根据Ei的符号调节输出。当Ei的符号为正时,(ψi-1偏向主方向右侧),积分器Ii增加固定的小增量ic;当Ei符号为负时,(ψi-1偏向主方向左侧,积分器Ii减少ic,下面公式说明了二元控制器的控制过程;

需要说明的是,HDE算法在直线上可以很好的消除陀螺仪的偏移误差,但是在转弯过程中HDE算法会停止,在这个过程中误差有可能累积,所以,本发明提供的技术方案中,在HDE算法的基础上使用卡尔曼滤波算法,对曲线路径以及转弯处的陀螺仪偏移误差进行校正,卡尔曼滤波的基本思想如下:

利用上一时刻的估计,再加上实时得到的量测来进行实时估计。卡尔曼滤波是一种递推线性最小方差估计,因为上一时刻的估计是利用上一时刻和以前的量测得到的,所以这种递推的实时估计就是利用所有的量测数据得到的;其次,卡尔曼滤波把被估计量作为系统的状态,用系统状态方程来描述状态的转移过程,因此,各时刻之间的状态相关函数,就可以根据状态方程的转移特性来描述,解决非平稳随机过程估计的困难。卡尔曼滤波的最优准则与线性最小方差估计一样,每一时刻的估计都使估计均方误差最小。由于采用了状态方程,进行卡尔曼滤波的系统必须是线性的;要用卡尔曼滤波来估计非线性系统的状态,必须对系统进行线性化。

卡尔曼滤波算法:

设随机线性离散系统的方程(先不考虑控制作用)为:

Z(k)=HX(k)+V(k)

上式中,X(k)是系统的n维状态向量,Z(k)是系统的m维观测序列,W(k) 是p维系统过程噪声序列,V(k)是m维观测噪声序列,ф是系统的n×n维状态转移矩阵,Γ是n×p维噪声输入矩阵,H是m×n维观测矩阵。

关于系统过程噪声和观测噪声的统计特性,我们假定如下:

其中,Q(k)是系统过程噪声W(k)的p×p维对称非负定方差矩阵,R(k)是系统观测噪声V(k)的m×m维对称正定方差阵,而δkj是Kronecker-δ函数。

上述离散系统卡尔曼滤波的计算流程为:

计算状态一步预测:

状态估计:

滤波增益矩阵:K(k)=P(k|k-1)=ΦP(k-1)HT[HP(k|k-1)HT+R(k)]-1; (3)

一步预测误差方差阵:P(k|k-1)=ΦP(k-1)ΦT+ΓQ(k-1)ΓT; (4)

估计误差方差阵:P(k)=[I-K(k)H]P(k|k-1); (5)

以上五个公式即为随机线性离散系统卡尔曼滤波基本方程。只要给定初值,根据k时刻的观测值Z(k),就可以递推计算得k时刻的状态估计值。在一个滤波周期内,从卡尔曼滤波在使用信息和观测信息的先后顺序来看,卡尔曼滤波具有两个明显的信息更新过程:时间更新过程和观测更新过程。公式(3)说明了根据k-1时刻的状态估计预测k时刻状态的方法,公式(4)对这种预测的质量做了定量描述。公式(3)和公式(4)的计算中仅使用了与系统的动态特性有关的信息,如状态一步转移矩阵、噪声输入阵、过程噪声方差阵。从时间的推移过程来看,该两式将时间从k-1时刻推进至k时刻,描述了卡尔曼滤波的时间更新过程。公式(2)、公式(3)及公式(5)用来计算对时间更新值的修正量,该修正量由时间更新的质量优劣P(k|k-1)、观测信息的质量优劣(R(k))、观测与状态的关系(H)以及具体的观测信息Z(k)所确定, 所有这些方程围绕一个目的,即正确、合理地利用观测Z(k),所以这一过程描述了卡尔曼滤波器的观测更新过程。

本发明的技术方案中的卡尔曼滤波算法可用方框图表示,如图6所示,从图中可以明显看出卡尔曼滤波算法具有两个计算回路:增益计算回路和滤波计算回路。其中增益计算回路是独立计算的,滤波计算回路依赖于增益计算回路。

判断终端的移动方式为直线或拐弯的算法如下:

1、初始情况下,陀螺仪沿Y轴转动的角度设置为终端使用者当前的行走方向,对一次脚步的开始点以及结束点的陀螺仪Y轴读数进行积分得到增量角△ψi

2、在直线路径可以直接使用HDE算法,在曲线路径上使用卡尔曼滤波器处理陀螺仪获取的数据;

下面的公式中给出了如何判断直线曲线。其中Th是一个常量阈值,ψi-1和ψi-2是当前脚步i的前两步i-1和i-2的估计方向,T=0表示没有拐弯,T=1表示左转,T=-1表示右转。

3、在直线上,HDE算法的补偿公式如下:

其中,Ii表示HDE在第i步的补偿值,c是一个很小的常量增量,用于方向误差的补偿,n是在一个探测脚步内的采样数。

4、在转弯以及曲线过程中,使用卡尔曼滤波器处理陀螺仪获取的数据,通过对角速度进行积分,便能得到转向的角度值。

5、最后,该终端的使用者的行进方向由如下公式来表示:

ψi=Δψii-1+P

其中,为直线路径上每一个探测脚步的I值的平均值。

综上所述,本领域技术人员可以根据上述内容实现本发明的技术方案。

本发明实施例提供一种终端10,如图7所示,该终端10包括:

获取单元11,用于当终端需要从第一位置移动到第二位置时,获取所述终端运动时所述终端基于所述终端自身坐标系采集的运动数据;

转换单元12,用于根据预设转换算法将所述运动数据转换为基于世界坐标系的运动数据;

确定单元13,用于根据所述转换后的运动数据以及预设算法确定所述终端的运动轨迹;

导航单元14,用于根据所述终端的运动轨迹所述第一位置与所述第二位置之间的路线数据引导所述终端从所述第一位置移动到所述第二位置。

进一步的,

所述获取单元11,还用于所述终端从所述第二位置移动到所述第一位置时,获取所述终端运动时所述终端基于所述终端自身坐标系采集的运动数据;

所述转换单元12,还用于根据预设转换算法将所述运动数据转换为基于世界坐标系的运动数据;

所述确定单元14,还用于根据所述转换后的运动数据以及预设算法确定所述终端的运动轨迹;

相应的,所述终端10还可以包括:

处理单元15,用于将所述终端从所述第二位置移动到所述第一位置的运动轨迹作为所述第一位置与所述第二位置之间的路线数据并保存。

进一步的,所述第一位置与所述第二位置之间的路线数据是预先存储到 所述终端中的。

进一步的,所述确定单元14具体用于:

将所述转换后的运动数据中加速度数据中重力方向的数据剔除处理,根据经过剔除处理后得到的加速度数据的零值计算所述终端运动的频率;

根据所述经过剔除处理后得到的加速度数据中水平方向的数据计算获得所述终端运动的步长;

根据所述频率以及所述步长计算所述终端的移动距离数据:

根据所述转换后的运动数据中的角速度数据以及方向矫正算法确定所述终端的运动方向;

根据所述移动距离数据以及所述终端的运动方向确定所述终端的运动轨迹。

进一步的,所述获取单元11还用于:获取所述终端采集的高度数据;

相应的,所述确定单元12具体用于:

将所述转换后的运动数据中加速度数据中重力方向的数据剔除掉,通过分析经过剔除处理后得到的加速度数据的零值计算所述终端运动的频率;

根据所述经过剔除处理后得到的加速度数据中水平方向的数据计算获得所述终端运动的步长;

根据所述频率以及所述步长计算所述终端的移动距离数据:

根据所述转换后的运动数据中的角速度数据以及方向矫正算法确定所述终端的运动方向;

根据所述移动距离数据以及所述终端的运动方向确定所述终端的运动轨迹;

根据所述终端的高度数据对所述终端的运动轨迹进行校正。

本实施例用于实现上述各方法实施例,本实施例中各个单元的工作流程和工作原理参见上述各方法实施例中的描述,在此不再赘述。

本发明实施例提供的一种终端,当终端需要从第一位置移动到第二位置 时,获取所述终端运动时所述终端基于所述终端自身坐标系采集的运动数据;根据预设转换算法将所述运动数据转换为基于世界坐标系的运动数据;根据所述转换后的运动数据以及预设算法确定所述终端的运动轨迹;根据所述终端的运动轨迹以及所述第一位置与所述第二位置之间的路线数据引导所述终端从所述第一位置移动到所述第二位置。通过本发明的技术方案,能够在无法利用卫星信号导航的情况下为用户进行导航,为用户带来极大的便利。

虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。

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