大范围、高精度位姿确定方法及其系统与流程

文档序号:24161058发布日期:2021-03-05 16:55阅读:80来源:国知局
大范围、高精度位姿确定方法及其系统与流程

[0001]
本申请涉及定位技术,具体地,涉及使用减少数量的基站实现定位的方法及其系统。


背景技术:

[0002]
定位技术已经被广泛使用。全球定位系统(gps,global positioning system)是定位技术的典型应用。在室内场景中,超宽带(uwb,uitra wide band)技术被使用来定位目标。
[0003]
传统的uwb定位方法主要有两种。一种是基于角度测量。即在设置一个已知位置坐标的基站(anchor,也称为uwb基站),在待定位的物体上设置电子标签(tag,也简称标签)。在基站上设置多个不同角度的天线组成天线阵列。根据基站各天线的信号强度和相位等来测定标签的信号到达方向(aoa,angle of arrival)和标签距基站的距离,从而计算出标签的坐标。
[0004]
另一种是三角定位。即设置n个已知坐标的基站,在待定位的物体上设置一个标签。用n个基站对标签进行测距,得到n个距离方程,联立n个方程即可求解出标签的具体坐标。图1展示了三角定位系统的示意图。图1的定位系统中部署了三个基站(s1、s2与s3),其各自具有已知的位置,分别记为s1(x1,y1,z1),s2(x2,y2,z2)与s3(x3,y3,z3)。物体a是定位系统中的待定位物体。例如,物体a携带uwb标签,而各基站(s1、s2与s3)接收根据从a接收的信号确定各自到物体a的距离(分别记为d1、d2与d3)。可选地,物体a根据从各基站接收的信号确定其到各基站的距离。
[0005]
记物体a的位置坐标为(x,y,z),则有:
[0006]
(x
1-x)2+(y
1-y)2+(z
1-z)2=d
12
[0007]
(x
2-x)2+(y
2-y)2+(z
2-z)2=d
22
[0008]
(x
3-x)2+(y
3-y)2+(z
3-z)2=d
32
[0009]
通过上面3个方程求解物体a的坐标的3个未知数(x,y,z),理论上可以求解。因为是2次方程,一般有两组解。可以理解为:三个已知球心和半径的球面,求它们的交点。其中两个球面的交点是一个圆。这个圆和三个已知球面中的另一个球面的交点是两个点。
[0010]
但测距有误差,实际测得的距离可能是d
′1、d
′2与d
′3,代入到上面的方程组右侧(替换d1,d2,d3),上面的方程可能就没有解了(例如3个球不相交)。这时就需要求满意解(x,y,z),使得计算值与实测值的差异最小,即,求使下面的式子最小的(x,y,z):
[0011]
(d
1-d
′1)2+(d
2-d
′2)2+(d
3-d
′3)2[0012]
用这种方案,每一个标签至少需要3个基站来对它测距。考虑到误差,可以多增加一些基站来求解以便增加定位精度。一般三维定位需使用4个基站。
[0013]
上述uwb定位方法的共同缺点是仅适用于狭小的室内环境,不适用于大型厂房、仓库、桥底、矿山、隧道等空间开阔的应用场景。其中基于角度测量的定位方法精度较低。其误差随标签到基站的距离增大而增大。目前此类方案的角度误差一般在1度左右,当标签距基
站20m时,定位误差将超过30cm。三角定位方法的缺点是需要大量的基站。uwb节点的通信距离有限,目前市场上常见的uwb节点(基站与标签)有效通信距离一般不超过200m。例如要覆盖一个2000m的隧道需要将整个空间分成10个200m的定位区间,每个区间部署4个基站,共需40个基站。在定位系统所在的空间中还可能存在遮挡,例如,墙壁、障碍物、转角等,这进一步增加了所需要使用的基站的数量。而这些基站的供电、自身位置测量、后期维护都会带来很多开销。
[0014]
也使用诸如wi-fi、蓝牙、红外、zigbee、射频、超声波等方式通过测量已知位置的基站与待测物体的距离来实现对待测物体的空间定位。


技术实现要素:

[0015]
现有技术的定位技术,需要使用多个基站(理论上至少3个,在大或复杂空间中需要的数量更多),这为定位技术的应用、部署与维护带来困难。希望使用更少数量的基站来实现定位,以使定位系统更便于部署与维护,以适应更复杂的场景,并降低定位系统的整体功耗与成本。根据本申请的第一方面,提供了根据本申请第一方面的第一确定物体的位置的方法,包括:获取m个基站到所述物体的n个标签的k个测量的距离;其中,m为大于0的整数,n为大于0的整数,所述n个标签被设置于所述物体,所述n个标签各自位于相对于所述物体的第一点(po)的标签位置,其中;在定位时,所述物体姿态为欧拉角(α,β,γ);以及所述m个基站各自位于基站位置;根据所述k个测量的距离得到所述欧拉角(α,β,γ)与所述第一点(po)的位置。
[0016]
根据本申请第一方面的确定物体位置的方法,其中m*n>=6,6<=k<=m*n。
[0017]
根据本申请第一方面的第一确定物体的位置的方法,提供了根据本申请第一方面的第二确定物体的位置的方法,还包括:根据所述n个标签各自的标签位置与所述欧拉角得到定位时所述n个标签各自的位置,其中所述标签位置是固定于所述物体的物体坐标系的位置,而所述n个标签各自的位置是在世界坐标系中的位置;求解所述k个测量的距离与根据定位时所述n个标签各自的位置与所述m个基站的位置得到的距离所建立的方程,方程的解为所述欧拉角(α,β,γ)与所述第一点(po)的位置。
[0018]
根据本申请第一方面的第一确定物体的位置的方法,提供了根据本申请第一方面的第三确定物体的位置的方法,其中根据所述k个测量的距离通过查找表得到所述欧拉角(α,β,γ)与所述第一点(po)的位置;或者将所述k个测量的距离提供给基于神经网络的推断单元,基于神经网络的推断单元输出所述欧拉角(α,β,γ)与所述第一点(po)的位置。
[0019]
根据本申请第一方面的第一确定物体的位置的方法,提供了根据本申请第一方面的第四确定物体的位置的方法,其中以所述第一点(po)的位置与所述欧拉角(α,β,γ)作为决策变量;建立由所述n个标签各自在世界坐标系中的位置与所述m个基站的基站位置所表达的k个距离与所述k个测量的距离的差异所表达的目标函数,其中所述n个标签各自在世界坐标系中的位置由所述物体的第一点(po)的位置与所述物体的姿态表达;所述方法还包括:求解由所述目标函数与决策变量所表达的最优化问题得到所述欧拉角(α,β,γ)与所述第一点(po)的位置。
[0020]
根据本申请第一方面的第一至第四确定物体的位置的方法之一,提供了根据本申请第一方面的第五确定物体的位置的方法,其中所述第一点(po)是固定于所述物体的物体
坐标系的原点,所述欧拉角(α,β,γ)是绕所述第一点(po)为原点的坐标轴的旋转角度。
[0021]
根据本申请第一方面的第二确定物体的位置的方法,提供了根据本申请第一方面的第六确定物体的位置的方法,其中测量的第j个基站同第i个标签的距离与根据定位时第i个标签的位置与第j个基站的位置得到的距离所建立的方程为|aj-(po+ti*m(α,β,γ))|=dij,其中po表示所述第一点的位置,ti表示第i个标签相对于所述第一点(po)的标签位置,aj表示第j个基站的基站位置,m(α,β,γ)为所述物体的旋转矩阵,dij表示测量的第j个基站同第i个标签的距离。
[0022]
根据本申请第一方面的第四确定物体的位置的方法,提供了根据本申请第一方面的第七确定物体的位置的方法,其中所述目标函数为min(h(x,y,z,α,β,γ)),其中h(x,y,z,α,β,γ)表示将变量x,y,z,α,β,γ代入后得到的k个距离差异的函数,其中所述距离差异是定位时根据标签i的位置与基站j的位置得到的距离g
j
(f
i
(x,y,z,α,β,γ)),与测量的标签i的位置与基站j的距离dij的差异,其中f
i
(x,y,z,α,β,γ)是标签i在世界坐标系中的位置。
[0023]
根据本申请第一方面的第一至第七确定物体的位置的方法之一,提供了根据本申请第一方面的第八确定物体的位置的方法,其中m>=2,并且n>=3。
[0024]
根据本申请第一方面的第一至第七确定物体的位置的方法之一,提供了根据本申请第一方面的第九确定物体的位置的方法,还包括:测量所述欧拉角(α,β,γ);以及其中m=1,并且n>=3;或者m>=2,并且n>=2。
[0025]
根据本申请第一方面的第一至第九确定物体的位置的方法之一,提供了根据本申请第一方面的第十确定物体的位置的方法,还包括:测量得到所述m个基站的一个或多个的基站位置。
[0026]
根据本申请第一方面的第一至第十确定物体的位置的方法之一,提供了根据本申请第一方面的第十一确定物体的位置的方法,其中所述第一点(po)的位置是世界坐标系中的三维向量。
[0027]
根据本申请第一方面的第一至第十一确定物体的位置的方法之一,提供了根据本申请第一方面的第十二确定物体的位置的方法,其中根据所述k个测量的距离,以及所述物体的位置和/或姿态的约束得到所述欧拉角(α,β,γ)与所述第一点(po)的位置。
[0028]
根据本申请第一方面的第十二确定物体的位置的方法,其中k<6。
[0029]
根据本申请第一方面的第十二确定物体的位置的方法,提供了根据本申请第一方面的第十三确定物体的位置的方法,其中所述物体的位置和/或姿态的约束包括所述物体在指定平面或指定曲线内移动,所述物体的位置的指定坐标为常数,所述物体姿态改变时仅绕指定的轴旋转,所述物体的姿态或姿态改变量、所述物体的速度、和/或所述物体的位置与姿态的初始值或上一时刻的值。
[0030]
根据本申请第一方面的第十三确定物体的位置的方法,提供了根据本申请第一方面的第十四确定物体的位置的方法,其中根据所述物体最近一个或多个时刻的位置和/或姿态改变量,估计所述物体当前时刻的速度,以作为所述物体的位置和/或姿态的约束。
[0031]
根据本申请第一方面的第十三确定物体的位置的方法,提供了根据本申请第一方面的第十四确定物体的位置的方法,其中所述物体的位置和/或姿态的约束作为所述最优化问题的约束条件。根据本申请第一方面的第十三或第十四确定物体的位置的方法,提供
了根据本申请第一方面的第十五确定物体的位置的方法,其中所述物体的位置和/或姿态的约束作为搜索所述最优化问题的最优解的初始值。
[0032]
根据本申请的第二方面,提供了根据本申请第二方面的第一确定物体的位置的方法,包括:进行第一次定位,获取m个基站到所述物体的n个标签的k1个测量的距离;其中,m为大于0的整数,n为大于0的整数,所述n个标签被设置于所述物体,所述n个标签各自位于相对于所述物体的第一点(po)的标签位置,以及所述m个基站各自位于基站位置;其中;在第一次定位时,所述物体的姿态为第一欧拉角(α,β,γ);以指定的第二欧拉角(α0,β0,γ0)改变所述物体的姿态,使得所述物体相对于第一次定位时的姿态变化为所述第二欧拉角(α0,β0,γ0),以及进行第二次定位,获取m个基站到所述物体的n个标签的k2个测量的距离;根据所述k1+k2个测量的距离得到所述第一点(po)的位置。
[0033]
根据本申请第二方面的第一确定物体的位置的方法,提供了根据本申请第二方面的第二确定物体的位置的方法,还包括:根据所述n个标签各自的标签位置与所述第一欧拉角(α,β,γ)得到第一次定位时所述n个标签各自的位置,其中所述标签位置是固定于所述物体的物体坐标系的位置,而所述n个标签各自的位置是在世界坐标系中的位置;根据所述n个标签各自的标签位置、所述第一欧拉角(α,β,γ)与所述第二欧拉角(α0,β0,γ0)得到第二次定位时所述n个标签各自的位置;根据所述k1个测量的距离与根据第一次定位时所述多个标签各自的位置与所述m个基站的位置得到的距离所建立的k1个方程,根据所述k2个测量的距离与根据第二次定位时所述多个标签各自的位置与所述m个基站的位置得到的距离所建立的k2个方程,所述k1个方程与所述k2个方程的解为所述第一欧拉角(α,β,γ)与所述第一点(po)的位置。
[0034]
根据本申请第二方面的第一确定物体的位置的方法,提供了根据本申请第二方面的第三确定物体的位置的方法,其中以所述第一点(po)的位置与所述第一欧拉角(α,β,γ)作为决策变量;建立由所述n个标签各自在世界坐标系中的位置与所述m个基站的基站位置所表达的k1+k2个距离与所述k1个测量的距离以及所述k2个测量的距离的差异所表达的目标函数,其中所述n个标签各自在世界坐标系中的位置由所述物体的第一点(po)的位置与所述物体的姿态表达;所述方法还包括:求解由所述目标函数与决策变量所表达的最优化问题得到所述欧拉角(α,β,γ)与所述第一点(po)的位置。
[0035]
根据本申请第二方面的第一至第三确定物体的位置的方法之一,提供了根据本申请第一方面的第四确定物体的位置的方法,其中根据所述k1+k2个测量的距离,以及所述物体的位置和/或姿态的约束得到所述欧拉角(α,β,γ)与所述第一点(po)的位置。
[0036]
根据本申请的第三方面,提供了根据本申请第三方面的第一确定物体的位置的方法,包括:保持所述物体的位置不变,进行q次定位,其中所述物体在第i次定位时相对于第i-1次定位时的姿态变化为指定的欧拉角(αi,βi,γi),q为大于1的整数,i为大于2的整数;在第i次定位中,获取m个基站到所述物体的n个标签的ki个测量的距离;其中,m为大于0的整数,n为大于0的整数,所述n个标签被设置于所述物体,所述n个标签各自位于相对于所述物体的第一点(po)的标签位置,以及所述m个基站各自位于基站位置;其中;在第一次定位时,所述物体的姿态为第一欧拉角(α,β,γ);其中q次定位获得了k个测量距离,根据所述k个测量的距离得到所述第一点(po)的位置。
[0037]
根据本申请第三方面的确定物体位置的方法,其中m>=2,k>=6。
[0038]
根据本申请第三方面的第一确定物体的位置的方法,提供了根据本申请第三方面的第二确定物体的位置的方法,还包括:根据所述k个测量的距离得到所述第一欧拉角(α,β,γ)。
[0039]
根据本申请第三方面的第一或第二确定物体的位置的方法,提供了根据本申请第三方面的第三确定物体的位置的方法,还包括:根据第i次定位的结果,根据所述n个标签各自的标签位置与相对于第i-1次定位的欧拉角(αi,βi,γi)得到第i次定位时所述n个标签各自的位置,其中所述标签位置是固定于所述物体的物体坐标系的位置,而所述n个标签各自的位置是在世界坐标系中的位置;求解根据所述k个测量的距离与根据q次定位时所述多个标签各自的位置与所述m个基站的位置得到的距离所建立的k个方程,方程的解为所述第一欧拉角(α,β,γ)与所述第一点(po)的位置。
[0040]
根据本申请第三方面的第一或第二确定物体的位置的方法,提供了根据本申请第三方面的第四确定物体的位置的方法,其中以所述第一点(po)的位置与所述第一欧拉角(α,β,γ)作为决策变量;建立由所述n个标签各自在世界坐标系中的位置与所述m个基站的基站位置所表达的k个距离与所述k个测量的距离的差异所表达的目标函数,其中所述n个标签各自在世界坐标系中的位置由所述物体的第一点(po)的位置与所述物体的姿态表达;所述方法还包括:求解由所述目标函数与决策变量所表达的最优化问题得到所述欧拉角(α,β,γ)与所述第一点(po)的位置。
[0041]
根据本申请的第四方面,提供了根据本申请第四方面的第一确定物体的位置的方法,包括:保持所述物体的位置不变,进行q次定位,其中所述物体在第i次定位时相对于第i-1次定位时的姿态变化为指定的欧拉角(αi,βi,γi),q为大于1的整数,2<=i<=q;在第i次定位中,获取m个基站到所述物体的n个标签的ki个测量的距离;其中,m为大于0的整数,n为大于0的整数,所述n个标签被设置于所述物体,所述n个标签各自位于相对于所述物体的第一点(po)的标签位置,以及所述m个基站各自位于基站位置;其中;在第一次定位时,所述物体的姿态为第一欧拉角(α,β,γ),测量得到所述第一欧拉角(α,β,γ);其中q次定位获得了k个测量距离,根据所述k个测量的距离得到所述第一点(po)的位置。
[0042]
根据本申请第四方面的确定物体位置的方法,其中m>=2,k>=3。
[0043]
根据本申请第四方面的确定物体位置的方法,其中根据所述k个测量的距离,以及所述物体的位置和/或姿态的约束得到所述第一点(po)的位置。
[0044]
根据本申请的第五方面,提供了根据本申请第五方面的第一确定物体的位置的方法,包括:根据第一基站的位置与标签相对于所述物体的第一点(po)的标签位置创建n个虚拟基站,其中第i虚拟基站相对于所述第一基站的位置向量为ti’,第i标签位置相对于所述第一点的位置向量为ti,ti’=ti,n是整数;用所述n个虚拟基站定位所述物体的第一点(po)。
[0045]
根据本申请第五方面的确定物体位置的方法,其中n>=3。
[0046]
根据本申请第五方面的确定物体位置的方法,其中用所述n个虚拟基站以及所述物体的位置和/或姿态的约束定位所述物体的第一点(po)。
[0047]
根据本申请第五方面的第一确定物体的位置的方法,提供了根据本申请第五方面的第二确定物体的位置的方法,其中所述物体包括固定设置于所述物体的n个标签;第i个标签具有相对于所述第一点的第i标签位置。
[0048]
根据本申请第五方面的第一确定物体的位置的方法,提供了根据本申请第五方面的第三确定物体的位置的方法,其中所述物体包括固定设置于所述物体的m个标签,其中m是大等于1的整数;保持所述物体的位置不变,进行q次定位,其中所述物体在第1次定位时相对于初始姿态的姿态变化为第一欧拉角(α,β,γ),测量得到所述第一欧拉角(α,β,γ),所述物体在第i次定位时相对于第i-1次定位时的姿态变化为指定的欧拉角(αi,βi,γi),q为大于1的整数,2<=i<=q;在第1次定位中,根据第一基站的位置与m个标签相对于所述物体的第一点(po)的标签位置创建至多m个虚拟基站,在第i次定位中,根据第一基站的位置与m个标签相对于所述物体的第一点(po)的标签位置创建至多m个虚拟基站,其中3<=qm<=n。
[0049]
根据本申请第五方面的第一确定物体的位置的方法,提供了根据本申请第五方面的第四确定物体的位置的方法,其中采用三角定位法用所述n个虚拟基站定位所述物体的第一点(po)。
[0050]
根据本申请第五方面的第一或第二确定物体的位置的方法,提供了根据本申请第五方面的第五确定物体的位置的方法,还包括:获取所述第一基站的位置。
[0051]
根据本申请第五方面的第一或第二确定物体的位置的方法,提供了根据本申请第五方面的第六确定物体的位置的方法,还包括:测量欧拉角(α,β,γ),所述欧拉角(α,β,γ)是定位时所述物体相对于初始姿态的姿态变化;根据所述n个标签各自的标签位置与所述欧拉角(α,β,γ)得到定位时所述n个标签各自相对于所述第一点的位置向量;其中标签位置是标签在固定于所述物体的物体坐标系中的位置向量,而定位时所述n个标签各自相对于所述第一点的位置向量是在世界坐标系中的位置向量。
[0052]
根据本申请的第六方面,提供了根据本申请第六方面的第一定位系统,包括m个基站、信息处理设备与待定位物体,所述待定位物体包括n个标签,n是整数;所述信息处理设备获取所述m个基站到所述物体的n个标签的k个测量的距离,以及根据所述k个测量的距离得到所述第一点(po)的位置作为所述待定位物体的位置;其中,所述n个标签各自位于相对于所述物体的第一点(po)的标签位置,其中;在定位时,所述物体的姿态为欧拉角(α,β,γ);以及所述基站位于基站位置。
[0053]
根据本申请第六方面的定位系统,其中m*n>=6,6<=k<=m*n。
[0054]
根据本申请第六方面的定位系统,其中所述信息处理根据所述k个测量的距离,以及所述物体的位置和/或姿态的约束得到所述第一点(po)的位置。
[0055]
根据本申请第六方面的第一定位系统,提供了根据本申请第六方面的第二定位系统,其中,所述信息处理设备根据所述n个标签各自的标签位置与所述欧拉角得到定位时所述n个标签各自的位置,其中所述标签位置是固定于所述物体的物体坐标系的位置,而所述n个标签各自的位置是在世界坐标系中的位置;求解所述k个测量的距离与根据定位时所述n个标签各自的位置与所述基站的位置得到的距离所建立的方程,方程的解为所述欧拉角(α,β,γ)与所述第一点(po)的位置。
[0056]
根据本申请第六方面的第一定位系统,提供了根据本申请第六方面的第三定位系统,其中所述信息处理设备根据所述k个测量的距离通过查找表得到所述欧拉角(α,β,γ)与所述第一点(po)的位置;或者所述信息处理设备将所述k个测量的距离提供给基于神经网络的推断单元,基于神经网络的推断单元输出所述欧拉角(α,β,γ)与所述第一点(po)的
位置。
[0057]
根据本申请第六方面的第一定位系统,提供了根据本申请第六方面的第四定位系统,其中以所述第一点(po)的位置与所述欧拉角(α,β,γ)作为决策变量;建立由所述n个标签各自在世界坐标系中的位置与所述m个基站的基站位置所表达的k个距离与所述k个测量的距离的差异所表达的目标函数,其中所述n个标签各自在世界坐标系中的位置由所述物体的第一点(po)的位置与所述物体的姿态表达;所述信息处理设备还求解由所述目标函数与决策变量所表达的最优化问题得到所述欧拉角(α,β,γ)与所述第一点(po)的位置。
[0058]
根据本申请第六方面的第一或第二定位系统,提供了根据本申请第六方面的第五定位系统,其中测量的所述m个基站同第i个标签的距离与根据定位时第i个标签的位置与所述基站的位置得到的距离所建立的方程为|aj-(po+ti*m(α,β,γ))|=dij,其中po表示所述第一点的位置,ti表示第i个标签相对于所述第一点(po)的标签位置,aj表示第j个基站的基站位置,m(α,β,γ)为所述物体的主动旋转矩阵,dij表示测量的第j个基站同第i个标签的距离。
[0059]
根据本申请第六方面的第四定位系统,提供了根据本申请第六方面的第六定位系统,其中所述目标函数为min(h(x,y,z,α,β,γ)),其中h(x,y,z,α,β,γ)表示将变量x,y,z,α,β,γ代入后得到的k个距离差异的函数,其中所述距离差异是定位时根据标签i的位置与所述第j个基站的位置得到的距离g
j
(f
i
(x,y,z,α,β,γ)),与测量的标签i的位置与所述第j个基站的距离dij的差异,其中f
i
(x,y,z,α,β,γ)是标签i在世界坐标系中的位置。
[0060]
根据本申请第六方面的第一至第六定位系统之一,提供了根据本申请第七方面的第六定位系统,还包括:所述基站集成于所述信息处理设备;所述信息处理设备测量自身的位置作为所述基站的基站位置。
[0061]
根据本申请的第七方面,提供了根据本申请第七方面的第一定位系统,包括第一基站、信息处理设备、姿态传感器与待定位物体,所述待定位物体包括标签;所述信息处理设备根据第一基站的位置与标签相对于所述待定位物体的第一点(po)的标签位置创建n个虚拟基站,其中第i虚拟基站相对于所述第一基站的位置向量为ti’,第i标签位置相对于所述第一点的位置向量为ti,ti’=ti,n是整数;所述信息处理设备用所述n个虚拟基站定位所述待定位物体的第一点(po)。
[0062]
根据本申请第七方面的定位系统,其中n>=3。
[0063]
根据本申请第七方面的定位系统,其中所述信息处理用所述n个虚拟基站以及所述物体的位置和/或姿态的约束定位所述物体的第一点(po)。
[0064]
根据本申请第七方面的第一定位系统,提供了根据本申请第七方面的第二定位系统,其中所述信息处理设备根据所述姿态传感器获取所述信息处理的多种姿态,以及获取在所述多种姿态下,所述第一基站到所述物体的标签的k个测量的距离,作为所述n个虚拟基站中的k个虚拟基站到所述第一点(po)的距离,以及根据所述k个虚拟基站定位所述第一点(po)。
[0065]
根据本申请第七方面的第一或第二定位系统,提供了根据本申请第七方面的第三定位系统,根据权利要求1或2所述的定位系统,其中:所述待定位物体包括固定设置于所述物体的m个标签,其中m是大等于1的整数;所述信息处理设备进行q次定位,其中所述信息处理设备在第1次定位时相对于初始姿态的姿态变化为第一欧拉角(α,β,γ),通过所述姿态
传感器测量得到所述第一欧拉角(α,β,γ),所述信息处理设备在第i次定位时相对于第i-1次定位时的姿态变化为指定的欧拉角(αi,βi,γi),q为大于1的整数,2<=i<=q;在第1次定位中,根据第一基站的位置与m个标签相对于所述待定位物体的第一点(po)的标签位置创建至多m个虚拟基站,在第i次定位中,根据第一基站的位置与m个标签相对于所述物体的第一点(po)的标签位置创建至多m个虚拟基站,其中3<=qm<=n。
[0066]
根据本申请的第八方面,提供了根据本申请第八方面的第一定位方法,包括:改变基站的位置,获得基站在至少2个位置的坐标;测量所述基站在所述至少2个位置同待定位物体的距离;根据所述至少2个位置与在所述至少2个位置同待定位物体的距离确定待定位物体的位置。
[0067]
根据本申请的第九方面,提供了根据本申请第九方面的第一信息处理设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的程序,其特征在于,所述处理器执行所述程序时实现根据本申请第一至第五方面与第八方面提供的定位方法之一。
附图说明
[0068]
当连同附图阅读时,通过参考后面对示出性的实施例的详细描述,将最佳地理解本申请以及优选的使用模式和其进一步的目的和优点,其中附图包括:
[0069]
图1展示了三角定位系统的示意图;
[0070]
图2展示了根据本申请实施例的定位系统的示意图;
[0071]
图3a展示了根据本申请实施例的待定位物体的示意图;
[0072]
图3b展示了根据本申请实施例的待定位物体发生姿态变化的示意图;
[0073]
图4展示了根据本申请又一实施例的定位系统的示意图;
[0074]
图5a展示了根据本申请再一实施例的定位系统的示意图;
[0075]
图5b展示了根据本申请依然再一实施例的定位系统的示意图;
[0076]
图6a与图6b展示了根据本申请依然又一实施例的定位系统的示意图;
[0077]
图7a、7b与7c展示了根据本申请依然另一实施例的定位系统的示意图;
[0078]
图8展示了根据本申请依然再一实施例的定位系统的示意图;
[0079]
图9展示了根据本申请依然另一实施例的定位系统的示意图。
具体实施方式
[0080]
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
[0081]
图2展示了根据本申请实施例的定位系统的示意图。
[0082]
根据本申请的实施例,定位系统包括一个或多个基站(s1),以及待定位物体a。物体a上携带了1个或多个标签(例如,a1、a2与a3)。根据现有技术或将来出现的距离测量技术,获得基站s1到物体a的各标签的距离。
[0083]
已知基站s1的坐标,记为a=(x1,y1,z1),而用待定位物体a上的o点的作为待定位物体a的坐标,记为o=(xo,yo,zo)。o是例如物体a的中心或物体a的其他指定位置。如未特别指出,本申请说明书中物体的坐标基于其在定位系统所在的场景中的世界坐标系。
[0084]
在图2中,将3个标签a1、a2与a3的坐标分别记为t1、t2与t3,其中
[0085]
t1=(xo1,yo1,zo1)
[0086]
t2=(xo2,yo2,zo2)
[0087]
t3=(xo3,yo3,zo3)
[0088]
基站s1到它们的距离记为d1,d2,d3。则:
[0089]
|a-t1|=d1
[0090]
|a-t2|=d2
[0091]
|a-t3|=d3
[0092]

[0093][0094][0095][0096]
这里,3个方程解包括9个未知数(x1、x2、x3、y1、y2、y3、z1、z2与z3),是无法解的。满足这3个距离方程解有多个,分布在同距离(d1、d2与d3)相关的球面上。即使在物体a上设置更多数量的标签并测量更多的距离,依然无法在球面上的多个符合这3个距离方程的解种确定物体a的实际位置。现有技术的基于距离的定位方法,需要使用至少3个基站,在基站数量少于3个时,无法实现定位。
[0097]
图3a展示了根据本申请实施例的待定位物体的示意图。
[0098]
作为举例,图3a展示的立方体是待定位物体a。这里将待定位物体a展示为立方体仅是出于清楚的目的,可以理解地,根据本申请的实施例,可应用于多种任意形状的物体。物体a上设置了例如三个标签(a1、a2与a3)。图3a中,坐标系oxyz是定位系统所在空间的世界坐标系,其中将物体的中心o作为世界坐标系的原点。图3a中,标签(a1、a2与a3)相对于中心o的坐标分别记为(t1、t2与t3)。通过将标签设置在物体a的指定位置,或者在对物体a定位前以其他方式确定这些标签在物体a上的位置,从而使得三个标签(a1、a2与a3)的坐标(t1、t2与t3)是已知的,其中记
[0099]
t1=(xo1,yo1,zo1)
[0100]
t2=(xo2,yo2,zo2)
[0101]
t3=(xo3,yo3,zo3)
[0102]
根据本申请的实施,物体a上的标签被固定设置于物体a,从而当物体a发生位移(在世界坐标系中)时,这些标签同物体a发生同样的位移。根据本申请的实施例,位移仅用于描述物体a的中心o在世界坐标系中的位置的变化,而同物体a的旋转无关。例如,物体a发生位移后,其中心o的位置为po,则三个标签(a1、a2与a3)(在世界坐标系中)的新坐标(t、t2与t3)分别变为(po+t1、po+t2与po+t3),即
[0103]
t1=po+t1
[0104]
t2=po+t2
[0105]
t3=po+t3
[0106]
还提供物体坐标系oxyz,物体坐标系oxyz固定于物体a,随物体a的运动而运动。为了简单的目的,将物体坐标系oxyz的原点记为物体的中心o。在图3a中,物体坐标系同世界
坐标系重合,因而未示出物体坐标系。但当物体a在世界坐标系中位移时,物体坐标系oxyz相对于世界坐标系oxyz发生同样的位移。在物体a位移后,三个标签(a1、a2与a3)(在物体oxyz坐标系中)的坐标依然分别为(t1、t2与t3)。
[0107]
物体a还可能发生旋转,用“姿态”描述物体a旋转的程度。姿态可由例如三个欧拉角描述。所属领域技术人员将理解,姿态也可由例如“四元数”等其他方式描述。也用“位姿”代表位置与姿态。
[0108]
图3b展示了根据本申请实施例的待定位物体发生姿态变化的示意图。
[0109]
参看图3b,坐标系oxyz是世界坐标系,其同图3a展示的世界坐标系相同。图3b还示出了物体坐标系oxyz。由于物体a发生旋转,使得物体坐标系oxyz同世界坐标系oxyz不再重合(但其原点o依然重合)。也由于物体a的姿态变化,物体上的三个标签的位置发生变化,位于新位置的三个标签分别记为a1’、a2’与a3’,在图3b中由带有网格线阴影的块表示。在物体a仅有姿态变化而不发生位移时,物体坐标系中点o的位置不改变。可由点o代表物体a在世界坐标系中的位置。
[0110]
物体坐标系的oxy面与世界坐标的oxy面的角线记为on。on相对于世界坐标系的x轴的旋转角度为记α,物体坐标系oxyz的z轴相对于世界坐标系的z轴的旋转角度记为β,物体坐标系oxyz的x轴相对于on的旋转角度记为γ,则图3b中,物体a相对于图3a的姿态变化可由三个欧拉角(α,β,γ)描述。根据图3b展示的旋转顺序所表达的欧拉角记为“z-x-z”欧拉角。所属领域技术人员理解,根据使姿态发生变化的绕轴旋转的顺序不同,由多种其他方式描述姿态的欧拉角。
[0111]
根据欧拉角,得以在物体坐标系中的坐标与世界坐标系中的对应坐标建立映射。根据“z-x-z”欧拉角,物体a的主动旋转矩阵m(α,β,γ)可表达为:
[0112][0113]
从而,在图3b的例子中,物体a上的三个标签(a1’、a2’与a3’)在世界坐标系oxyz中的坐标(t、t2与t3)可表达为
[0114]
t1=po+t1*m(α,β,γ)
[0115]
t2=po+t2*m(α,β,γ)
[0116]
t3=po+t3*m(α,β,γ)
[0117]
为表达坐标(t1、t2与t3),使用了未知数po与m(α,β,γ),其中po为世界坐标系中的坐标(x0,y0,z0)。从而对于物体a上的每个标签(例如,a1’、a2’与a3’),都可以用这6个变量(x0,y0,y0,α,β,γ)表达其世界坐标系中的坐标。
[0118]
从而,通过测量出物体a上的标签同基站之间的6个或6个以上的距离,得以求解物体a的点po在世界坐标系中的坐标(x0,y0,z0)。
[0119]
一般地,根据本申请的实施例,提供了基于待定位物体a的位置(po)与姿态(欧拉角m(α,β,γ))来为定位问题建模的方法,通过在基于测距的定位问题中引入姿态作为附加的决策变量,来区分到基站具有指定距离的球面上各个可能的位置。相对于现有技术的基于三角定位的方法,减少了定位过程中所需要的基站数量。以及也提高定位精度和速度。
[0120]
图4展示了根据本申请又一实施例的定位系统的示意图。
[0121]
根据本申请中的实施例,定位系统包括物体a与两个基站(s1与s2)。物体a是待定位物体,其上固定设置了3个标签(a1、a2与a3)。物体a是例如车辆、机器人、行人、可移动计算设备等。物体a与各基站通过诸如wi-fi、蓝牙、红外、zigbee、射频、超声波等方式通过测量各基站与物体a的距离。基站(s1与s2)的位置是已知的,将其世界坐标系中的坐标分别记为a1与a2。
[0122]
物体a在定位系统所在场景中移动,其上的点po可能发生位移与姿态变化。由于物体a的三个标签的位置发生变化,也参看图3b,某时刻位于新位置的三个标签分别记为a1’、a2’与a3’。
[0123]
测量标签(a1’、a2’与a3’)与基站(s1与s2)的距离,得到基站s1到三个标签的距离分别记为(d11、d12与d13),而基站s2到三个标签的距离分别记为(d21、d22与d23)。
[0124]
已经得到三个标签(a1’、a2’与a3’)在世界坐标系oxyz中的坐标(t1、t2与t3)可表达为
[0125]
t1=po+t1*m(α,β,γ)
[0126]
t2=po+t2*m(α,β,γ)
[0127]
t3=po+t3*m(α,β,γ)
[0128]
将三个标签的坐标代入距离方程,得到
[0129]
|a1-t1|=d11
[0130]
|a1-t2|=d12
[0131]
|a1-t3|=d13
[0132]
|a2-t1|=d21
[0133]
|a2-t2|=d22
[0134]
|a2-t3|=d23
[0135]
通过这6个方程,解出其中的未知数是po与m(α,β,γ)(共有6个变量),以得到物体a在该时刻的位置(po),以及也得到物体a的姿态(α,β,γ)。
[0136]
从而,根据图4展示的实施例,通过2个基站与待定位物体a上的3个标签,完成了对物体a的定位,除了获得物体a的位置,也获得了物体a的姿态。
[0137]
在可选的实施方式中,物体a上设置更多的标签(例如4个),各标签在物体坐标系中具有已知的位置。从而通过基站s1与s2测量得到每个标签到基站的距离,得到8个或更多距离方程。将这些距离方程的部分或全部组成方程组,以求解这些距离方程,得到物体a的位置与姿态。
[0138]
在依然可选的实施方式中,定位系统包括例如3个标签与更多数量的基站(例如,3个),各标签在物体坐标系中具有已知的位置。从而通过各基站测量得到每个标签到基站的距离,得到9个或更多距离方程。将这些距离的部分或全部组成方程组,以求解这些距离方程,得到物体a的位置与姿态。
[0139]
由于测量误差的存在,距离方程构成的方程组可能没有解。也通过例如最优化方法获得物体a的点po的位置与姿态。例如,使用一阶或二阶梯度法、高斯牛顿法、levenberg-marquardt法和dogleg等方法求解。
[0140]
根据本申请的实施例,根据三个标签(a1’、a2’与a3’)在世界坐标系oxyz中的坐标
(t1、t2与t3)构建最优化问题的目标函数。所构建的目标函数是例如使各标签到基站的距离同各自的测量距离的差异最小。该最优化问题的决策变量是点po的位置与物体a的姿态。
[0141]
例如,将标签a1与基站s1的距离同测量的距离的差异表示为(|a1-t1|-d11)2,则对于3个标签与2个基站(s1与s2),得到的最优化问题的目标函数为
[0142]
min{(|a1-t1|-d11)2+(|a1-t2|-d12)2+(|a1-t3|-d13)2+(|a2-t1|-d21)2+(|a2-t2|-d22)2+(|a2-t3|-d23)2},即寻找使目标函数取最小值的物体a的点po的位置与姿态。由于这样的目标函数是非线性函数,该最优化问题也成为非线性规划问题。在一些例子中,最优化方法获得的是局部最优解(而非全局最优解)。选择合理的初始值有助于通过最优化方法得到正确的解。例如,在定位系统中,物体a的位置和/或姿态的合理初始值容易获得(例如,物体a被设置于定位系统的位置,上一时刻的位置),或者容易获得其初始值的范围(例如,放置物体a的地面),并从该范围中随机或指定初始值。一些最优化方法中,除非故意选取不合理初始值,通常能得到正确的解。不合理的解通常也容易被识别,例如求出的物体a位于空中或地下。响应于得到了不合理的解,调整初始值或求解过程来得到可行的解。
[0143]
根据本申请的实施例,还提供了最优化问题的约束条件。例如,物体a的初始位置与移动速度、物体a的移动范围也定义了物体a的位置/姿态的取值范围。通过约束条件识别所得的解是否为可行解。
[0144]
在上面的例子中,目标函数中的未知量包括点po的位置(x,y,z)与物体a的姿态(α,β,γ),共6个未知量。一般地,通过例如至少6个测量的距离所构造的目标函数能求出物体a的最优解。通过设置更多的基站和/或更多的标签,得到更多数量的测量距离及其目标函数,更有利于求出代表物体a的真实位置和姿态的最优解。
[0145]
而当测量的距离少于6个时(例如,通过2个基站与设置于物体a的2个标签),所构造的目标函数将有多个最优解,从而无法确定物体a的位置与姿态。而通过为最优化问题引入约束条件(例如,测量获得物体a的姿态、物体a的移动被限制在指定平面等)来排除不满足约束条件的最优解,以确定物体a的位置和/或姿态。例如,当基站数量为1时,通过测量获得物体a的姿态(也参看图5a)来确定物体a的姿态。
[0146]
根据本申请的实施例,将对物体a的定位问题(确定位置和姿态)建模为一个非线性规划问题,从而通过求解非线性规划问题的方法得到代表物体a的合理位姿的6个未知数。
[0147]
图5a展示了根据本申请再一实施例的定位系统的示意图。
[0148]
根据本申请中的实施例,定位系统包括物体a与一个基站(s1)。物体a是待定位物体,其上设置了3个标签(a1、a2与a3)。基站(s1)的位置是已知的,将其世界坐标系中的坐标记为a1。3个标签(a1、a2与a3)在物体坐标系oxyz中的位置已知,分别记为t1、t2与t3。po是物体坐标系oxyz的原点,也代表了待定位物体a在世界坐标系的位置。
[0149]
某时刻,希望确定物体a的位置,此时物体a的3个标签位于图5中由a1、a2与a3所指示的实心矩形所指示的位置。测量3个标签(a1、a2与a3)与基站s1的距离,得到基站s1到3个标签(a1、a2与a3)的距离分别为(d11、d12与d13)。此时,物体a的姿态由欧拉角(α,β,γ)表示。通过例如在物体a上设置诸如imu(inertial measurement unit,惯性测量单元)等姿态传感器来获得欧拉角(α,β,γ)。
[0150]
三个标签(a1、a2与a3)在世界坐标系oxyz中的坐标(t1、t2与t3)可表达为
[0151]
t1=po+t1*m(α,β,γ)
[0152]
t2=po+t2*m(α,β,γ)
[0153]
t3=po+t3*m(α,β,γ)
[0154]
将三个标签坐标代入距离方程,得到
[0155]
|a1-t1|=d11
[0156]
|a1-t2|=d12
[0157]
|a1-t3|=d13
[0158]
通过这3个方程,解出其中的未知数是po(共有3个变量),以得到物体a在该时刻的位置(po)。
[0159]
从而,根据图5a展示的实施例,通过1个基站与待定位物体a上的3个标签,以及物体a的姿态,完成了对物体a的定位,获得物体a的位置与姿态。
[0160]
可以理解地,在物体a上设置更多的标签以获得更多的距离方程。将这些距离方程的部分或全部组成方程组,以求解这些距离方程,也能够完成对物体a的定位,并有助于提高定位的精度。
[0161]
可以理解地,上面的方程中,欧拉角(α,β,γ)已知,且用例如欧式距离表达基站(s1)到各标签的距离,得到的距离方程是2次方程,求解距离方程得到的解可能有2个,其中一个解明显偏离正常的位置,比如在地底下或者在空中,而另一解是合理解。
[0162]
也通过最优化方法或其他求解非线性规划问题的方法得到方程的合理解。所构建的目标函数是例如使各标签到基站的距离同各自的测量距离的差异最小。各标签到基站的距离由|a1-t1|、|a1-t2|与|a1-t3|表达。
[0163]
图5b展示了根据本申请依然再一实施例的定位系统的示意图。
[0164]
参看图5b,定位系统包括物体a与至少2个基站(s1与s2)。物体a上固定设置有2个标签。基站(s1与s2)的位置是已知的,将其世界坐标系中的坐标记为a1与a2。2个标签在物体坐标系oxyz中的位置已知,分别记为t1与t2。po是物体坐标系oxyz的原点,也代表了待定位物体a在世界坐标系的位置。
[0165]
某时刻,希望确定物体a的位置,此时物体a的2个标签在世界坐标系oxyz中的位置分别记为(t1与t2)(图5b中,由a1与a2指示),物体a的姿态为欧拉角(α,β,γ)(未知),测量2个标签与2个基站s1与s2各自的距离,得到基站s1与s2到2个标签的距离分别为(d11、d12、d21与d22)。
[0166]
接下来,使物体a的姿态发生指定或可测量的改变(但不发生位移),例如,物体a姿态的改变量为欧拉角(α0,β0,γ0)。例如,按指定的顺序以欧拉角(α0,β0,γ0)旋转物体a,来使物体a的姿态发生指定的改变,或者在物体a上设置诸如imu等姿态传感器,来获得物体a的姿态改变(欧拉角(α0,β0,γ0))。此时物体a的2个标签在世界坐标系oxyz中的位置分别记为(t1’与t2’)(图5b中,由a1’与a2’指示),测量2个标签各自与2个基站的距离,得到2个基站(s1与s2)到2个标签的距离分别为(d11’、d12’、d21’与d22’)。
[0167]
标签(a1与a2)在世界坐标系oxyz中的坐标(t1与t2)可表达为
[0168]
t1=po+t1*m(α,β,γ)
[0169]
t2=po+t2*m(α,β,γ)
[0170]
标签(a1’与a2’)在世界坐标系oxyz中的坐标(t1与t2’)可表达为
[0171]
t1’=po+t1*m(α,β,γ)*m(α0,β0,γ0)
[0172]
t2

=po+t2*m(α,β,γ)*m(α0,β0,γ0)
[0173]
将各标签姿态改变前后的坐标代入距离方程,得到
[0174]
|a1-t1|=d11
[0175]
|a1-t2|=d12
[0176]
|a2-t1|=d21
[0177]
|a2-t2|=d22
[0178]
|a1-t1’|=d11’[0179]
|a1-t2’|=d12’[0180]
|a2-t1’|=d21’[0181]
|a2-t2’|=d22’[0182]
通过这8个方程,解出其中的未知数是po与m(α,β,γ)(共有6个变量),以得到物体a的位置(po),以及也得到物体a的姿态(α,β,γ)。
[0183]
从而,根据图5b展示的实施例,通过2个基站与待定位物体a上的2个标签,以及在物体a不发生位移的情况下,改变物体a的姿态,完成了对物体a的定位,获得物体a的位置与姿态。
[0184]
可选地,在物体a上设置例如云台的容器来承载标签,从而无需物体的整体姿态改变来实施定位,而仅改变云台的姿态。通过将云台旋转欧拉角(α0,β0,γ0)来获得云台上的标签的新位置(例如,标签a1’与a2’)。
[0185]
在可选的实施方式中,物体a上设置例如更少的标签(例如1个)与至少2个基站,并在定位时,保持物体a不发生位移的情况下,进行多次已知角度的姿态变化。在每个姿态下,得到例如1个标签与各基站的距离,通过5次姿态变化,得到6个不同姿态下,该标签与每个基站的6个距离(对于2个基站的场景,得到12个距离)。进而得到该物体a的位置与姿态(6个变量)。以及可选地,进行其他次数的姿态变化,以得到不同数量的姿态下,标签与基站的距离方程,以在求解方程的精度和速度之间取舍。
[0186]
更一般地,根据本申请又一实施例的定位系统,包括m个基站与n个标签,用于定位物体a在定位场景中的位置,其中m与n均为大于0的整数。m个基站各自在定位场景中具有已知的位置。记录各基站在世界坐标系中的位置为aj,其中0<=j<=m。n个标签各自被设置在物体a上,并且在物体a的物体坐标系中具有已知的位置。记录各标签在物体坐标系中的位置为ti,其中0<=i<=n。在一个例子中,将物体坐标系的原点(o)在用于定位场景的世界坐标系中的坐标作为物体a在定位场景中的位置。例如,物体坐标系的原点o被设置在物体a的几何中心。可以理解地,物体坐标系的原点o可位于物体a表面、其内部或其外部的任何位置,而不影响本申请实施例的实施。物体a也可具有任意形状,而无需是具有规则几何形状的物体。
[0187]
当物体a在定位场景中因发生位移和/或旋转而到达某个未知的位置和姿态的情况下,测量n个标签各自到m个基站的每个的距离,其中第i标签到第j基站的距离记为dij(其中0<=i<=n,0<=j<=m)。物体a的物体坐标系随物体a发生位移与旋转。在该位置的位置与姿态,物体坐标系的原点o在世界坐标系中的位置记为po(x,y,z),而物体坐标系相对于初始状态的旋转记为欧拉角(α,β,γ)。
[0188]
从而此时第i标签在世界坐标系中的坐标可表达为fi(x,y,z,α,β,γ),例如fi(x,y,z,α,β,γ)=po+ti*m(α,β,γ)。可见,fi是关于x,y,z,α,β,γ这6个变量的非线性表达式。
[0189]
由第i标签的坐标fi与第j基站的已知位置,得到第i标签与第j基站的距离的表达式,记为gj(fi(x,y,z,α,β,γ)),例如,gj(fi(x,y,z,α,β,γ))=|aj-fi(x,y,z,α,β,γ)|。对于多个标签与多个基站,根据第i标签与第j基站的距离的表达式gj(fi(x,y,z,α,β,γ))与测量得到的第i标签与第j基站的距离dij得以建立距离方程。并通过求解距离方程得到位置po(x,y,z)与欧拉角(α,β,γ)以确定物体a的该未知的位置和姿态。
[0190]
考虑到定位系统所处环境的复杂性,一般需设置m个基站和n个标签,满足m*n>=6,则可建立m*n个距离方程,或者得到m*n个测量的距离。通过求解这些m*n个距离方程得到x,y,z,α,β,γ这6个变量的解。可选地,由于遮挡或设备维护,一些基站和/或标签可能临时不工作,则无法得到所有m*n个距离方程,但当距离方程的数量不少于6个且m>=2的情况下,则能从这些方程中求解x,y,z,α,β,γ这6个变量。当m=1时,即使通过设置6个或更多标签得到了6个或更多距离方程,这些方程存在多个解。通过补充物体a的与x,y,z,α,β,γ这6个变量的一个或多个相关的一种或多种约束条件来得到合理解。
[0191]
进一步地,通过使用其他方式(例如通过imu)测量物体a的姿态从而确定欧拉角(α,β,γ)的值,从而减少了距离方程中的未知变量,则只需m*n>=3,代入欧拉角(α,β,γ)的值求解上述最优化问题得到所求的物体a的位置po(x,y,z)。
[0192]
可选地或进一步地,利用其他方式获取物体a的x,y,z,α,β,γ中的一个或多个值,来求解距离方程,以得到物体a的x,y,z,α,β,γ中的剩下的未知变量的值,则使得所需的距离方程进一步减少,从而可进一步减少使用的基站和/或标签数量。例如,物体a仅在定位场景的地面发生位移,从而物体a的位置的变量z事实上是已知的。在有一个例子中,物体a定位场景内的已知轨道上移动,该轨道所在的曲线满足例如关系式f(x,y,z)=0。利该关系式得到减少上述最优化问题中所需的距离方程数量的变量数,从而加快方程求解过程算或减少需要的基站/标签数量。
[0193]
根据本申请的又一种实施方式,定位系统包括m(m=1)个基站与n个标签。测量n个标签各自到基站的距离来建立m*n个距离方程。并通过额外的手段来补充相对于至少2个基站定位方式所损失的自由度。例如,物体a由在地面移动的机器人或车辆所承载,从而物体a仅在地面移动,此时物体a的各标签的位置还要满足的约束为z=hi,其中z为世界坐标系oxyz的垂直于地面的坐标轴,而hi代表了第i个标签相对于地面的垂直高度。又例如,物体a只在一个平面上移动,则物体a的位置符合某一个方程(ax+by+cz+d=0,其中a、b、c与d为世界坐标系oxyz中的平面方程的已知参数),进而各标签的位置也由该平面约束。又例如,物体a只在一条轨道上移动,则物体a的位置符合某两个曲面方程(例如f(x,y,z)=0与g(x,y,z)=0)(两个曲面的交线,确定一条曲线)。又例如,物体a的各标签的姿态变化受到约束,例如仅绕一个轴旋转,则各标签的欧拉角(α,β,γ)中有2个变量仅能取常数值。又例如,当物体a的角度只能在某个范围内改变,则可以得到某个关于欧拉角(α,β,γ)的不等式。测距方程组通常需要和这些等式或不等式约束条件一起求解,才能估计出最可能的位姿。又例如,由于惯性,物体a的位姿不会瞬间移动,从而理论上物体a在下一时刻的位置处于以当前时刻的位置为圆心的球面内。进一步地,若物体a的速度可获得,则物体a在下一时刻的位置处
于以当前时刻的位置为圆心的球面上(球面的半径为下一时刻与当前时刻的时间差,与速度的乘积)。从而该球面也为物体a的位置提供了约束。又例如,即使物体a的速度不可获得,通过物体a最近多个时刻的位姿改变,得以估计物体a的速度,并将估计的速度作为物体a当前时刻的速度(基于惯性,物体a的速度不会突变)。又例如,基于物体a上一时刻的定位结果与最近多个时刻的位姿改变量,估计当前时刻的多个位姿改变量(例如速度)(对应物体a下一时刻可位于的多个球面和/或姿态,这些球面也为物体a的位置提供了约束)。
[0194]
作为一个例子,物体a的多种约束条件包括,仅在平面ax+by+cz+d=0内移动,且各标签的姿态变化仅绕一个轴旋转(例如,α=0且γ=0)。通过这些约束补充了3个方程。再通过3(n=3)个标签与1(m=1)个基站得到的3个距离方程,通过共6个方程求解物体a的位置与姿态。
[0195]
根据本申请的又一实施例,在包括m个基站与n个标签的定位系统中,通过最优化方法求解待定位物体a的位置po与姿态。
[0196]
建立表达第i标签的位置与第j基站位置的距离同测量距离dij的差异的目标函数,其中第i标签的位置由物体a的位置po与姿态表达,其中1<i<=n,1<=j<=m,dij>=0。由第i标签的坐标fi与第j基站的已知位置,得到第i标签与第j基站的距离的表达式,记为gj(fi(x,y,z,α,β,γ)),其中由第i标签的坐标fi由待定位物体a的位置与姿态来表达,例如,gj(fi(x,y,z,α,β,γ))=|aj-fi(x,y,z,α,β,γ)|。对于多个标签与多个基站,根据第i标签与第j基站的距离的表达式gj(fi(x,y,z,α,β,γ))与测量得到的第i标签与第j基站的距离dij的差构造目标函数,目标函数是例如min(h(x,y,z,α,β,γ)),其中h(x,y,z,α,β,γ)表示将x,y,z,α,β,γ代入后得出的基站与标签的距离(计算值)与实际测得距离(测量值)的差异,该值越小则整体计算值与测量值的差异越小,例如使用欧氏距离:
[0197][0198]
通过求解该最优化问题得到位置po(x,y,z)与欧拉角(α,β,γ)以确定物体a的位置和姿态。物体a的多种约束条件也作为该最优化问题的约束条件。
[0199]
根据本申请实施例所展示的原理,在可选的实施方式中,使用机器学习的方法确定物体的位置。机器学习方法包括训练与推断两部分。使用机器学习方法的定位系统包括带有多个标签的待定位物体与一个或多个基站,以及基于神经网络的训练单元和基于神经网络的推断单元。通过计算机、ai加速器、gpu和/或云计算平台提供基于神经网络的训练单元与推单元。
[0200]
在一种实施方式中,在训练中,在定位系统所在的场景中布设一个或多个基站和携带了一个或多个标签的待定位物体,将待定位物体摆放为不同的位置和姿态,测量基站到各标签的距离作为训练单元的输入,用其它方式测得待定位物体的位置与姿态作为训练单元的预期输出,来训练神经网络,使得该多层神经网络的输出与预期输出尽量接近。训练好的该神经网络被用于测量待定位物体的位置与姿态。在定位过程中,待定位物体的各标签到基站的距离被提供给基于神经网络的推断单元,基于神经网络的推断单元输出待定位物体的位置与姿态。
[0201]
在又一种实施方式中,在训练中,在定位系统所在的场景中布设一个或多个基站和携带了一个或多个标签的待定位物体,将待定位物体摆放为不同的位置和指定姿态,测
量基站到各标签的距离以及物体的姿态(欧拉角或四元数)作为训练单元的输入,用其它方式测得待定位物体的位置作为训练的预期输出,来训练神经网络。训练好的该神经网络被用于测量待定位物体的位置。在定位过程中,待定位物体的各标签到基站的距离与姿态被提供给基于神经网络的推断单元,基于神经网络的推断单元输出待定位物体的位置。
[0202]
在再一种实施方式中,在训练中,在定位系统所在的场景中布设一个或多个基站和携带了一个或多个标签的待定位物体,将待定位物体摆放为不同的位置。对于待定位物体的每个位置,改变待定位物体的姿态,使得待定位物体处于2种或更多种姿态下,测量每种姿态下基站到各标签的距离(将每种姿态下,基站到各标签的距离称为距离组)。而神经网络的每个输入,包括多个距离组。例如,神经网络的每个输入包括2个距离组,这两个距离组各自的姿态具有指定的差异(例如,欧拉角(α,β,γ))。用其它方式测得待定位物体对应神经网络的每个输入的位置作为训练单元的预期输出,来训练神经网络。训练好的该神经网络被用于测量待定位物体的位置。在定位过程中,待定位物体的各标签到基站的距离组被提供给基于神经网络的推断单元,基于神经网络的推断单元输出待定位物体的位置。例如,在定位时,使待定位物体位置保持不变,并在多种姿态下(例如,2种姿态,其差异为欧拉角(α,β,γ)),测量基站到各标签的距离组。
[0203]
在依然可选的实施方式中,建立输入为测量的标签到基站的多个距离与可选的待定位物体的姿态,而输出为带定位物体的位置和/或姿态的查找表。在定位过程中,获取待定位物体的各标签到基站的距离,以及可选地待定位物体的姿态提供给查找表,以从查找表获得对应的输出来得到待定位物体的位置和/或姿态。
[0204]
在依然又一种可选的实施方式中,建立查找表,查找表的输入为测量的标签到基站的多个距离、一个或多个基站的位置,以及可选的待定位物体的姿态,而输出为带定位物体的位置和/或姿态的查找表。在定位过程中,获取待定位物体的各标签到基站的距离,各基站的位置,以及可选地待定位物体的姿态提供给查找表,以从查找表获得对应的输出来得到待定位物体的位置和/或姿态。
[0205]
图6a与图6b展示了根据本申请依然又一实施例的定位系统的示意图。
[0206]
参看图6a,定位系统被应用于狭长的通道(例如,用于交通的隧道)中确定物体a的位置。定位系统包括待定位的物体a与多个基站。物体a可在通道中移动。基站被固定设置于通道内的指定位置。基站被分组设置。以及通道被分为多个区段。例如,基站的每组包括2个基站,基站组对应于通道的区段之一,从而使得物体在通道中移动时,无论处在哪个位置与何种姿态,均能获得从物体a的标签到至少2个基站的距离。而物体上被设置了3个标签,每个标签各自具有已知的位置。
[0207]
在图6a的例子中,展示了通道的3个区段,其中分别被设置了基站组(s1与s2),基站组(s3与s4)以及基站组(si与si+1)。
[0208]
物体a在通道中移动时,通过测量到所感知的2个或更多基站的距离,并利用根据本申请提供的实施例获得物体a的位置。
[0209]
参看图6b,其定位系统同图6a展示的定位系统的区别在于,其基站组仅包括1个基站。减少基站的数量有助于降低定位系统的成本与维护开销。通道的每个区段被设置1个基站组(例如,s1、s3或si)。从而使得物体在通道中移动时,无论处在哪个位置与何种姿态,均能获得从物体a的标签到至少1个基站的距离。待定位的物体a携带了6个或更多标签。物体a
在通道中移动时,通过测量到所感知的1个或更多基站的距离,并利用根据本申请提供的实施例获得物体a的位置。
[0210]
图7a、7b与7c展示了根据本申请依然另一实施例的定位系统的示意图。
[0211]
在结合图7a、图7b与图7c展示的实施例中,使用单一的基站与设置于待定位物体a的3个或更多标签实现定位。
[0212]
参看图7a,定位系统包括固定且具有已知坐标的基站s(其在世界坐标系中的位置记为三维向量a)与待定位物体a。物体a上被固定设置了例如3个标签(a1、a2与a3)。物体a上可被设置4个或更多数量的标签。点po代表物体a的位置。3个标签(a1、a2与a3)各自到点po的位置是已知的。物体a的姿态的初始位置,3个标签其各自相对于点po的位置记为三维向量t1、t2与t3。一般地,对于物体a上的第i个标签,在物体a的姿态初始位置,其相对于点po的位置记为ti。
[0213]
作为举例,用物体坐标系oxyz来定义向量ti。当物体a在定位场景中发生位移与姿态变化,到达了未知的位置,通过例如imu获得物体a的姿态变化,将该姿态变化由例如欧拉角(α,β,γ)表示。此时,可以得到三个标签各自相对于点po的位置(世界坐标系中的),各自表达为向量
[0214]
t1=t1*m(α,β,γ)
[0215]
t2=t2*m(α,β,γ)
[0216]
t3=t3*m(α,β,γ)
[0217]
参看图7b,以标签a3为例,将从po点到标签a3位置的向量t3平移到基站s,平移的向量记为t3’,其起点为基站s的位置向量a。在向量t3’的终点设置虚拟基站s3。由于t3=t3’,从而得到虚拟基站s3的位置(表达为a+t3’)。
[0218]
从而物体a的点po、标签a3、基站s与虚拟基站s3构成了平行四边形。进而得到基站s到标签a3的距离(记为d3)同虚拟基站s3到点po的距离(记为d3’)相等,因为平行四边形具有相等的对角线长度。
[0219]
参看图7c,以类似的方式,将从po点到标签a1位置的向量t1平移到基站s,平移的向量记为t1’,其起点为基站s的位置向量a,其终点设置虚拟基站s1;将从po点到标签a2位置的向量t2平移到基站s,平移的向量记为t2’,其起点为基站s的位置向量a,其终点设置虚拟基站s2。
[0220]
以及一般地,对于物体a的第i个标签(ai),将从po点到标签ai位置的向量ti平移到基站s,平移的向量记为ti’,其起点为基站s的位置向量a,其终点设置虚拟基站si。虚拟基站si到物体a的点po的距离(di’)同基站s到标签ai的距离(di)相等。
[0221]
根据本申请的实施例,虚拟基站是假设的存在于相对于基站s的指定位置的基站,虚拟基站si相对于基站s的指定位置由相对于基站s的位置a的向量ti’表达,而向量ti’对应于标签ai相对于物体a的点po的向量ti,且ti’=ti。
[0222]
由于虚拟基站si到物体a的点po的距离(di’)与同虚拟基站si对应的标签ai到基站s的距离(di)相等,以及测量能得到基站s到标签ai的距离(di),从而相当于测量测到了从每个虚拟基站到物体a的点po的距离。
[0223]
在图7c的例子中,通过测量三个标签(a1、a2与a3)各自到基站s的距离(d1、d2与d3),得到三个虚拟基站(s1、s2与s3)到物体a的点po的距离分别为(d1’、d2’与d3’)。以及三
个虚拟基站(s1、s2与s3)各自的位置为
[0224]
t1’=a+t1=a+t1*m(α,β,γ)
[0225]
t2’=a+t2=a+t2*m(α,β,γ)
[0226]
t3’=a+t3=a+t2*m(α,β,γ)
[0227]
从而对物体a的点po的定位问题被转换为利用三个已知位置的基站(虚拟基站)定位物体a的位置点po的问题,通过现有技术的三角定位方法得到点p0的坐标(也参看例如图1)。
[0228]
可选地,物体a设有k个(k>=3)标签,每个标签具有相对于物体的点po的已知位置。通过根据每个标签相对于点po的位置创建k个虚拟基站,每个虚拟基站si相对于基站s的位置向量同标签ai相对于点po的位置向量相同。以及将测量得到的标签ai到基站s的距离作为虚拟基站ki到点po的距离,并通过三角定位方式确定点po的位置。
[0229]
根据图7a-图7c的实施例,仅需求解由三维向量表达的点po的位置,未知数有3个(无需求解代表物体a的姿态的欧拉角)。作为对比,根据图4或图5的实施例,需要求解待测量点po的位置和物体a的姿态(欧拉角)共6个变量。从而根据图7a-图7c的实施例的计算过程更快,并且可利用现有技术的具有三角定位功能的软件和/或硬件完成定位。
[0230]
图8展示了根据本申请依然再一实施例的定位系统的示意图。
[0231]
参看图8,定位系统被应用于例如移动终端(手机)的信息处理设备。定位系统包括设置于移动终端的2个基站(s1与s2)与包括例如3个标签(分别记为a1、a2、
……
a6)的贴纸。贴纸作为定位系统的待定位物体,并可被贴附于多种物体。例如,将贴纸贴附于钱包、眼镜、杯子、宠物等希望被定位系统定位的物体。贴纸内的标签分布式贴纸的不同位置(标签a1、a2与a3相对于贴纸的点po的相对位置分别记为t1、t2与t3)。各标签相对于贴纸的点po具有已知的相对位置。贴纸相对于初始位置的姿态改变为欧拉角(α,β,γ)。
[0232]
作为举例,标签包括用于给自身供电的电池,或者标签可被以远程或无线方式供电无源的,以便于被设置于贴纸。标签能与基站交互,使得通过基站测量其到一个或多个标签的距离。在图8的例子中,贴纸被贴附于钱包。
[0233]
图8的例子中,2个基站随移动终端移动。移动终端还包括诸如gps(全球定位系统)的定位装置,以提供移动终端所在的位置。以及根据该位置也得到基站的位置,将基站s1与s2的位置分别记为a1与a2。
[0234]
为实施定位,移动终端操作获取2个基站各自同贴纸的各标签的距离(分别记为d11、d12、d13、d21、d22与d23),将各标签在世界坐标系中的位置分别记为t1、t2与t3,从而有
[0235]
t1=po+t1*m(α,β,γ)
[0236]
t2=po+t2*m(α,β,γ)
[0237]
t3=po+t3*m(α,β,γ),以及
[0238]
|a1-t1|=d11
[0239]
|a1-t2|=d12
[0240]
|a1-t3|=d13
[0241]
|a2-t1|=d21
[0242]
|a2-t2|=d22
[0243]
|a2-t3|=d23
[0244]
通过这6个方程,解出其中的未知数是po与m(α,β,γ)(共有6个变量),以得到贴纸的点po的位置,以及也得到贴纸的姿态(α,β,γ)。
[0245]
也通过例如人工神经网络、最优化方法等,得到贴纸的点po的位置,以及也得到贴纸的姿态(α,β,γ)。
[0246]
从而,根据图8展示的实施例,通过手机与贴附于钱包上的带有标签的贴纸,实现了对钱包的定位。
[0247]
依然作为举例,移动终端运行例如“查找我的物品”的应用程序(app)。“查找我的物品”app运行时,在图形界面中展示导航区域。导航区域的中心对应当前基站的位置,而根据本申请实施例提供的定位方法,获得贴纸相对于基站的位置(例如,东北方向5米远),并在屏幕的导航区域中显示贴纸的位置。以及还在导航区域中展示从当前位置去到贴纸位置的方向和/或路线指示,以引导用户定位钱包。
[0248]
可选地,贴纸被贴附于物体表面的有弧度或弯角的位置,使得贴纸内的多个标签位于不同的平面内,从而增加标签的位置的自由度以提高定位的精度。依然可选地,将两个或多个贴纸(每个贴纸内设有多个标签)贴附于物体表面,并使得这些贴纸位于不同的平面内。依然可选地,贴纸具有一定的厚度,使得帖子内的多个标签不在同一平面内。将贴纸内的多个标签设置在不重合、不位于同一直线,来增加多个标签的坐标的自由度,降低根据各标签同基站的距离方程之间的相关性,也有利于提高定位的精度。
[0249]
图9展示了根据本申请依然另一实施例的定位系统的示意图。
[0250]
参看图9,定位系统被应用于例如移动终端(手机)的信息处理设备。定位系统包括设置于移动终端的基站与包括标签(a1)的贴纸。贴纸作为定位系统的待定位物体,并可被贴附于多种物体。在图9的例子中,贴纸被贴附于钱包。
[0251]
图9的例子中,基站随移动终端移动。移动终端还包括诸如gps(全球定位系统)的定位装置,以提供移动终端所在的位置。以及根据该位置也作为基站的位置,获得根据该位置得到基站的位置。
[0252]
为实施定位,移动终端操作基站在多种位置下获取基站同贴纸的各标签的距离。通过例如用户移动移动终端来获得基站的多个位置。例如,在图9的例子中,展示了相同移动终端所处的3个不同位置(910(a1)、912(a2)与914(a3)),其中位置a1、a2与a3为通过移动终端的定位装置获得的在世界坐标系中的位置。
[0253]
在位置910(a1),测量基站与标签a1的距离为d1;在位置912(a2),测量基站与标签a1的距离为d2;在位置914(a3),测量基站与标签a1的距离为d3。从而,根据不同位置的基站测量的到标签的距离,采用例如三角定位法确定标签a1的位置,作为贴纸所贴附的物体的位置。
[0254]
可由设置于基站、标签或外部于基站/标签的信息处理设备的软件、硬件、固件、fpga(现场可编程门阵列,field programmable gate array)、单片机、微处理器、微控制器和/或asic(应用专用集成电路,application specific integrated circuit)等实现根据本申请实施例所提供的定位方法。
[0255]
虽然当前申请参考的示例被描述,其只是为了解释的目的而不是对本申请的限制,对实施方式的改变,增加和/或删除可以被做出而不脱离本申请的范围。
[0256]
这些实施方式所涉及的、从上面描述和相关联的附图中呈现的教导获益的领域中的技术人员将认识到这里记载的本申请的很多修改和其他实施方式。因此,应该理解,本申请不限于公开的具体实施方式,旨在将修改和其他实施方式包括在所附权利要求书的范围内。尽管在这里采用了特定的术语,但是仅在一般意义和描述意义上使用它们并且不是为了限制的目的而使用。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1