一种WIFI室内定位方法、装置及存储介质与流程

文档序号:15685666发布日期:2018-10-16 21:01阅读:158来源:国知局

本发明涉及定位技术领域,特别是涉及一种wifi室内定位方法、装置及存储介质。



背景技术:

wifi室内定位是指根据手持设备如手机等接收到的wifi信息,进而对其定位的技术。根据在定位过程中是否涉及到距离计算,可将wifi室内定位方法分为以下两种:基于测距方法和非测距方法。基于测距方法和非测距方法均有若干传统定位算法,例如,基于测距方法,包括基于信号到达时间、基于信号传播时间差、基于信号射入角度、基于信号强度等定位方法;基于非测距方法,包括位置指纹库法等。

虽然上述的传统算法均能够得到定位结果,但是单一的方法均存在定位精度有限,定位效果不稳定等缺点。

由此可见,如何克服单一定位方法存在的定位精度较低,定位效果不稳定的问题是本领域技术人员亟待解决地问题。



技术实现要素:

本发明的目的是提供一种wifi室内定位方法、装置及存储介质,用于克服单一定位方法存在的定位精度较低,定位效果不稳定的问题。

为解决上述技术问题,本发明提供一种wifi室内定位方法,包括:

预先设置一种定位算法与其余一种或多种定位算法在同一定位场景下对定位结果影响的权重值;

确定当前定位环境所采用的目标定位算法;

利用各所述目标定位算法的定位结果及各所述权重值得到当前定位环境的最终定位结果;

其中,所述权重值大于0且小于1,各所述权重值的和为1,所述目标定位算法至少为2种。

优选地,所述目标定位算法具体为2种,分别为第一定位算法和第二定位算法;

所述预先设置一种定位算法与其余一种或多种定位算法在同一定位场景下对定位结果影响的权重值具体为:

预设设置第一定位算法和第二定位算法在同一定位场景下分别对定位结果影响的第一权重值和第二权重值。

优选地,所述预设设置第一定位算法和第二定位算法在同一定位场景下分别对定位结果影响的第一权重值和第二权重值具体包括:

建立所述第一定位算法的第一平均定位误差和第二定位算法的第二平均定位误差的数学模型;

确定所述第一定位误差与所述第二定位误差对所述最终定位结果的轨迹方程;

根据所述轨迹方程得到所述最终定位结果的平均误差;

计算当所述平均误差最小时对应的目标第一权重值和目标第二权重值。

为解决上述技术问题,本发明还提供一种wifi室内定位装置,包括:

设置单元,用于预先设置一种定位算法与其余一种或多种定位算法在同一定位场景下对定位结果影响的权重值;

确定单元,用于确定当前定位环境所采用的目标定位算法;

定位单元,用于利用各所述目标定位算法的定位结果及各所述权重值得到当前定位环境的最终定位结果;

其中,所述权重值大于0且小于1,各所述权重值的和为1,所述目标定位算法至少为2种。

优选地,所述目标定位算法具体为2种,分别为第一定位算法和第二定位算法;

所述设置单元具体用于,预设设置第一定位算法和第二定位算法在同一定位场景下分别对定位结果影响的第一权重值和第二权重值。

优选地,所述设置单元具体包括:

建立子单元,用于建立所述第一定位算法的第一平均定位误差和第二定位算法的第二平均定位误差的数学模型;

确定子单元,用于确定所述第一定位误差与所述第二定位误差对所述最终定位结果的轨迹方程;

获取子单元,用于根据所述轨迹方程得到所述最终定位结果的平均误差;

计算子单元,用于计算当所述平均误差最小时对应的目标第一权重值和目标第二权重值。

为解决上述技术问题,本发明还提供一种wifi室内定位装置,包括存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如上述所述的wifi室内定位方法的步骤。

为解决上述技术问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述所述的wifi室内定位方法的步骤。

本发明所提供的wifi室内定位方法,包括预先设置一种定位算法与其余一种或多种定位算法在同一定位场景下对定位结果影响的权重值;确定当前定位环境所采用的目标定位算法;利用各目标定位算法的定位结果及各权重值得到当前定位环境的最终定位结果;其中,权重值大于0且小于1,各权重值的和为1,目标定位算法至少为2种。由此可见,本发明在已有传统定位算法得出两个定位结果的情况下,通过探索最佳权重值两个定位结果集成为最终定位结果,有效降低了平均定位误差。另外,本方法无需利用额外的硬件,因此,大大降低了成本。最后,本发明还提供一种与该方法对应的wifi室内定位装置及计算机存储介质,效果如上所述。

附图说明

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

图1为本发明实施例提供的一种wifi室内定位方法的流程图;

图2为本发明实施例提供的一种第一平均定位误差和第二定位算法的第二平均定位误差的数学模型示意图;

图3为本发明实施例提供的一种最终定位结果的轨迹方程示意图;

图4为本发明实施例提供的一种wifi室内定位装置的结构图。

具体实施方式

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

本发明的核心是提供一种wifi室内定位方法、装置及存储介质,用于克服单一定位方法存在的定位精度较低,定位效果不稳定的问题。

为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。

在具体实施中,为了克服单一定位方法带来的定位精度较低的缺点,可以采用多次定位,例如采用一种定位方法,多次进行定位取其平均值,但是由于单一定位方法的固有缺陷,仅仅能够避免单次定位由于随机性所带来的不准确的问题。考虑到这一问题,本发明中,对两种以上的定位方法进行综合考虑,利用权重的分配得到多种定位方法相结合的定位结果。具体方法在下文中详细描述。

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

s10:预先设置一种定位算法与其余一种或多种定位算法在同一定位场景下对定位结果影响的权重值。其中,权重值大于0且小于1,各权重值的和为1,目标定位算法至少为2种。

本步骤中,需要预先对多种算法在不同组合时各自的权重值进行设置,例如,算法a和算法b在同一定位场景下,算法a的权重值为wa,算法b的权重值为wb,当然,wa与wb的和为1。可以理解的是,本定位方法并并不限定所用几种算法,但是最小是为两种,并且各自的权重值需要在同一定位场景下才有意义。需要说明的是,这里的权重值可以通过神经网络算法等训练方法得到,也可以经过多次试验寻求各算法对应的最佳权重值,本实施例不作限定。下文中,将给出一种权重值的具体选取方法。另外,本步骤中的定位算法可以为基于测距方法的算法或者是基于非测距方法的算法,本实施例不作限定,至于这些定位算法如何实现定位请参见现有技术,本发明不再赘述。

当通过特定的方式得到一种定位算法与其余一种或多种定位算法在同一定位场景下对定位结果影响的权重值后,可以通过列表等形式进行存储记录,以便后续在后续步骤中使用。

s11:确定当前定位环境所采用的目标定位算法。

可以理解的是,本步骤中的目标定位算法需要是步骤s10中预先设置有权重值的算法中的至少两种。之所以采用目标定位算法是与s10中的其余定位算法相区分,例如步骤s10中所涉及到的定位算法为a-e,共5种,而本步骤中的只涉及到定位算法a和定位算法b,那么定位算法a和定位算法b就是目标定位算法,定位算法c、定位算法d定位算法e就是普通的定位算法,不参与本步骤以及后续步骤的运算。

s12:利用各目标定位算法的定位结果及各权重值得到当前定位环境的最终定位结果。

本发明中以二维定位作为例子进行说明,当得到目标定位算法各自的定位结果和权重值后,就可以得到最终定位结果。由于最终定位结果并不是按照某一种定位算法的定位结果作为最终结果,而是,融合了至少两种定位算法,并且每种定位算法都设置了权重值,从而得到的最终定位结果相对于任意一种定位算法来说,其精度都有所提高。考虑到进一步提高定位精度,在选取目标定位算法时,应尽量选取定位精度在同一精度等级的定位算法,避免两种定位算法在精度等级上有数量级的差异。假设定位算法a的定位结果为(x1,y1),定位算法b的定位结果为(x2,y2),则最终的定位结果为(x,y),则表达式如下:

x=x1×w+x2×(1-w),y=y1×w+y2×(1-w)

式中,w为定位算法a的权重值,1-w为定位算法b的权重值。

本实施例提供的wifi室内定位方法,包括预先设置一种定位算法与其余一种或多种定位算法在同一定位场景下对定位结果影响的权重值;确定当前定位环境所采用的目标定位算法;利用各目标定位算法的定位结果及各权重值得到当前定位环境的最终定位结果;其中,权重值大于0且小于1,各权重值的和为1,目标定位算法至少为2种。由此可见,本发明在已有传统定位算法得出两个定位结果的情况下,通过探索最佳权重值两个定位结果集成为最终定位结果,有效降低了平均定位误差。另外,本方法无需利用额外的硬件,因此,大大降低了成本。

作为优选地实施方式,目标定位算法具体为2种,分别为第一定位算法和第二定位算法;则步骤s10具体为:预设设置第一定位算法和第二定位算法在同一定位场景下分别对定位结果影响的第一权重值和第二权重值。

可以理解的是,虽然选取多种目标定位算法能够降低每种定位算法的平均误差对最终定位结果的影响,但是由于目标定位算法数量越多,则算法也越复杂,且如果这些目标定位算法在精度等级上相差较大时,并不一定能够明显提高最终定位结果的精度。考虑到上述因素,本实施例中,优选两种目标定位算法。可以理解的是,这里的第一定位算法和第二定位算法并不是特指某种定位算法,仅仅是为了区分两种不同的定位算法而已,换句话说,任意一种定位算法都可以成为第一定位算法,也可以成为第二定位算法。另外,如果目标定位算法只有2种,则确定了某一种目标定位算法的权重值之后,另一种目标定位算法的权重值也就确定了。也就是说,第一权重值与第二权重值的和为1。

在上述实施例的基础上,本实施例提供一种设置权重值的具体实施方式。预设设置第一定位算法和第二定位算法在同一定位场景下分别对定位结果影响的第一权重值和第二权重值具体包括:

s20:建立第一定位算法的第一平均定位误差和第二定位算法的第二平均定位误差的数学模型。

首先将两种目标定位算法标记为算法a和算法b,不妨假设它们的平均定位误差分别为r和r(r>r),在算法a和算法b定位结果偏差的方向为随机且互相独立的情况下,如图2所示,两种算法的定位结果可以看成随机分布在两个同心圆上(事实应该是分布在各自的圆周周围,但这对问题的讨论没有影响),即是算法a定位结果随机落在半径为r的小圆上,算法b定位结果随机落在半径为r的大圆上,且两者互相独立。

s21:确定第一定位误差与第二定位误差对最终定位结果的轨迹方程。

在第一步的前提下,可以取一种算法的定位偏差方向固定,即可以在小圆r上任取一点,这里为方便计算不妨取点a(0,r),而后讨论算法b的定位偏差方向变化时对集成定位结果的影响。首先,设按权重值w(0<w<1)集成的最终定位结果坐标为(x,y),在大圆r上任意取一点p(x,y),则

x=0×w+x×(1-w),y=r×w+y×(1-w),即

又易知,大圆的轨迹方程为x2+y2=r2,所以有:

化简,得x2+(y-r×w)2=[r(1-w)]2

令r1=r(1-w),a=r×w,则上述轨迹方程为:

x2+(y-a)2=r12

至此,按权重值w集成的最终定位结果的轨迹方程已求出,其轨迹图像如图3所示。可以看出,轨迹为一个圆形,其半径为r1,圆心位于y轴上半轴,距离原点的距离为a。

s22:根据轨迹方程得到最终定位结果的平均误差。

a)计算最终定位结果的平均误差e

由s21可知,圆r1圆周上所有的点到坐标原点的平均距离即为集成定位结果的平均误差e。

①上半圆周的方程为

上半圆周的点投影到x轴,为区间[-r1,r1],且上半圆周上的点与区间[-r1,r1]上的点一一对应。因此随机变量x服从区间[-r1,r1]上的均匀分布,其密度函数为:

上半圆周上的点到坐标原点的距离为

于是上半圆周上的点到坐标原点的平均距离为:

②下半圆周的方程为

下半圆周上的点到坐标原点的距离为

于是下半圆周上的点到坐标原点的平均距离为:

③圆周上所有的点到坐标原点的平均距离为

设定积分ez1和ez1的被积函数分别为f(x)和g(x),下面用定积分的定义计算ez1和ez2的近似值:

首先,分别令

则对应的被积函数值分别为:

把区间[-r1,r1]分成n个小区间,[x0,x1],[x1,x2],......,[xn-1,xn],则每个小区间的长度q均为在每个小区间上任取一点,这里不妨取区间的右端点,作函数值与小区间长度的乘积,并作其和,即得:

当q取很小即n取很大时,有ez1≈s1,ez2≈s2。

因此圆r1圆周上所有的点到坐标原点的平均距离,即最终定位结果的平均误差为:

s23:计算当平均误差最小时对应的目标第一权重值和目标第二权重值。

本步骤的目的是探索第一权重值和第二权重值的最佳值。可以理解的是,上述过程中,仅仅是设计到其中一个权重值w,另外一个权重值就是1-w。

在上文中,已令r1=r(1-w),a=r×w。故由上可知,当两种定位算法的平均定位误差均已知的情况下,即r与r为常量的情况下,集成定位结果的平均误差e只与权重值w相关,即二者的函数关系式为:e=f(w),因此可按以下步骤探索权重值w的最佳值。

首先,分别令

其中,下标j表示多种w的取值,n为探索最佳权重值w的次数。

对于每个wj,按照上述步骤a中的方法分别计算出集成定位结果的平均误差ej,使得ej为最小值的wj即为最佳权重值w。由于定位结果的平均定位误差e只与权重值w相关,对于每个权重值wj,有其对应的定位结果的平均误差ej,因此最佳权重值w需要通过不断试探得出,因此,上述公式中的n为探索最佳权重值w的次数,即是n越大,得出的最佳权重更优。值得一提的是,当第一定位算法与第二定位算法确定之后,通常此过程只需计算一遍,即是通常只需求一次最佳权重值w,而非每一次定位均需求一次。)

为了验证本发明所提供的定位方法的有效性,本申请文件还提供多种实验数据,如表1所示。

表1应用本发明的定位方法的数据测试结果

需要说明的是,上述各实施例中,第一定位算法和第二定位算法可以均为基于测距方法的算法,也可以均为基于非测距方法的算法,或者二者可以不同。但是,第一定位算法和第二定位算法需满足的条件有且只有以下3点:

1)第一定位算法的定位偏差方向随机;

2)第二定位算法的定位偏差方向随机;

3)两种定位算法的定位偏差方向互不影响(即是第一定位算法的定位偏差方向不影响第二定位算法的定位偏差方向,反之亦然)。

因此,满足以上3点条件的任意两种定位算法均可作为第一定位算法和第二定位算法。

上述各实施例中从wifi室内定位方法的角度进行了详细描述,本发明还提供一种与该方法对应的wifi室内定位装置。该装置部分主要从功能模块化的角度进行说明,但是本质上与方法部分的实施例相同。图4为本发明实施例提供的一种wifi室内定位装置的结构图。如图4所示,该装置包括:

设置单元10,用于预先设置一种定位算法与其余一种或多种定位算法在同一定位场景下对定位结果影响的权重值;

确定单元11,用于确定当前定位环境所采用的目标定位算法;

定位单元12,用于利用各目标定位算法的定位结果及各权重值得到当前定位环境的最终定位结果;

其中,权重值大于0且小于1,各权重值的和为1,目标定位算法至少为2种。

作为优选地实施方式,目标定位算法具体为2种,分别为第一定位算法和第二定位算法;

设置单元具体用于,预设设置第一定位算法和第二定位算法在同一定位场景下分别对定位结果影响的第一权重值和第二权重值。

作为优选地实施方式,设置单元具体包括:

建立子单元,用于建立第一定位算法的第一平均定位误差和第二定位算法的第二平均定位误差的数学模型;

确定子单元,用于确定第一定位误差与第二定位误差对最终定位结果的轨迹方程;

获取子单元,用于根据轨迹方程得到最终定位结果的平均误差;

计算子单元,用于计算当平均误差最小时对应的目标第一权重值和目标第二权重值。

由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。

可以理解的是,所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

本实施例提供的wifi室内定位装置,包括预先设置一种定位算法与其余一种或多种定位算法在同一定位场景下对定位结果影响的权重值;确定当前定位环境所采用的目标定位算法;利用各目标定位算法的定位结果及各权重值得到当前定位环境的最终定位结果;其中,权重值大于0且小于1,各权重值的和为1,目标定位算法至少为2种。由此可见,本发明在已有传统定位算法得出两个定位结果的情况下,通过探索最佳权重值两个定位结果集成为最终定位结果,有效降低了平均定位误差。另外,本装置无需利用额外的硬件,因此,大大降低了成本。

此外,本发明实施例还提供另一种wifi室内定位装置,该实施例主要从硬件实体的角度进行描述,但是本质上与方法部分的实施例相同。一种wifi室内定位装置,包括存储器,用于存储计算机程序;

处理器,用于执行计算机程序时实现如上述实施例所述的wifi室内定位方法的步骤。

由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。

本实施例提供的wifi室内定位装置,包括预先设置一种定位算法与其余一种或多种定位算法在同一定位场景下对定位结果影响的权重值;确定当前定位环境所采用的目标定位算法;利用各目标定位算法的定位结果及各权重值得到当前定位环境的最终定位结果;其中,权重值大于0且小于1,各权重值的和为1,目标定位算法至少为2种。由此可见,本发明在已有传统定位算法得出两个定位结果的情况下,通过探索最佳权重值两个定位结果集成为最终定位结果,有效降低了平均定位误差。另外,本装置无需利用额外的硬件,因此,大大降低了成本。

最后,本发明还提供一种计算机可读存储介质的实施例。其中,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述实施例所述的wifi室内定位方法的步骤。

上述作为功能模块化的单元,如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台移动终端(可以是手机,平板电脑,或者手持设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

本实施例提供的计算机可读存储介质,用于执行wifi室内定位方法,该方法包括预先设置一种定位算法与其余一种或多种定位算法在同一定位场景下对定位结果影响的权重值;确定当前定位环境所采用的目标定位算法;利用各目标定位算法的定位结果及各权重值得到当前定位环境的最终定位结果;其中,权重值大于0且小于1,各权重值的和为1,目标定位算法至少为2种。由此可见,本发明在已有传统定位算法得出两个定位结果的情况下,通过探索最佳权重值两个定位结果集成为最终定位结果,有效降低了平均定位误差。另外,本方法无需利用额外的硬件,因此,大大降低了成本。

以上对本发明所提供的wifi室内定位方法、装置及存储介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

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