一种定位方法及装置转让专利

申请号 : CN201710142987.4

文献号 : CN108574984B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 许闱帏石世磊施洋林宇俊刘超林甜甜张利梅铮杜建雄李晓平黄伟杰

申请人 : 中国移动通信集团上海有限公司中移(杭州)信息技术有限公司中国移动通信集团公司

摘要 :

本发明公开了一种定位方法及装置,用以解决现有定位技术中基站定位方式存在的定位精度较低的问题,以及MR定位方式和DPI定位方式存在的由于定位数据上报中断导致无法实现定位的问题。该方法为:实时采集各类定位数据;确定满足预设的定位条件的情况下,获取在设定时间范围内采集到的所有定位数据作为待处理数据;基于预先为各类定位数据分别设置的定位优先级,从待处理数据中选取当前定位优先级最高的一类定位数据进行定位,获取当前位置信息。通过实时采集各类定位数据,优先选取当前定位优先级最高的一类定位数据进行定位,尽可能地提高了定位精度,降低了由于数据上报中断导致定位失败的可能性,较好地解决了用户位置信息缺失的问题。

权利要求 :

1.一种定位方法,其特征在于,包括:

实时采集各类定位数据;

确定满足预设的定位条件的情况下,获取在设定时间范围内采集到的所有定位数据作为待处理数据;

基于预先为各类定位数据分别配置的定位优先级,从所述待处理数据中选取当前定位优先级最高的一类定位数据进行定位,获取当前位置信息;

其中,所述各类定位数据至少包括:深度包检测DPI数据、测量报告MR数据和基站信令数据;各类定位数据分别对应的定位优先级从高到低的顺序依次为:DPI数据、MR数据、基站信令数据,则基于预先为各类定位数据分别设置的定位优先级,从所述待处理数据中选取当前定位优先级最高的一类定位数据进行定位,获取当前位置信息,包括:确定所述待处理数据中存在DPI数据的情况下,优先基于所述待处理数据中存在的DPI数据获取当前位置信息;或者,确定所述待处理数据中不存在DPI数据的情况下,若不存在上一条位置信息,则确定所述待处理数据中存在MR数据的情况下,优先基于所述待处理数据中存在的MR数据获取当前位置信息;或者,确定所述待处理数据中不存在MR数据且存在基站信令数据的情况下,直接基于所述待处理数据中存在的基站信令数据获取当前位置信息。

2.如权利要求1所述的方法,其特征在于,基于所述待处理数据中存在的DPI数据获取当前位置信息,包括:从所有DPI数据中筛选目标DPI数据,其中,目标DPI数据是对应的发送时间与当前时间之间的时间差在预设范围内的DPI数据;

确定筛选出的目标DPI数据的数目,按照与所述数目相关联的处理方式,对筛选出的目标DPI数据进行相应处理,以获取经纬度信息,并基于所述经纬度信息,确定当前定位栅格。

3.如权利要求1所述的方法,其特征在于,若存在上一条位置信息,则,在确定所述待处理数据中存在MR数据的情况下,从所有MR数据中筛选出目标MR数据,其中,所述目标MR数据是对应的发送时间与当前时间之间的时间差最小的MR数据;基于所述目标MR数据的发送时间以及所述上一条位置信息的获取时间,判断所述目标MR数据是否存在时延,若是,则丢弃所述目标MR数据,并将所述上一条位置信息作为当前位置信息;若否,则基于所述目标MR数据获取当前位置信息;或者,在确定所述待处理数据中不存在MR数据且存在基站信令数据的情况下,从所有基站信令数据中筛选出目标基站信令数据,其中,所述目标基站信令数据是对应的发送时间与当前时间之间的时间差最小的基站信令数据;基于所述目标基站信令数据的发送时间以及所述上一条位置信息的获取时间,判断所述目标基站信令数据是否存在时延,若是,则丢弃所述目标基站信令数据,并将所述上一条位置信息作为当前位置信息;若否,则确定所述上一条位置信息满足预设条件的情况下,基于所述上一条位置信息获取当前位置信息。

4.如权利要求3所述的方法,其特征在于,确定所述上一条位置信息满足预设条件,包括:

若所述上一条位置信息是基于MR数据获得的,则认定所述上一条位置信息满足所述预设条件;或者,若所述上一条位置信息是基于基站信令数据获得的且基站覆盖区域未发生变化,则认定所述上一条位置信息满足所述预设条件。

5.如权利要求3或4所述的方法,其特征在于,若确定所述上一条位置信息是基于基站信令数据获得的且基站覆盖区域已发生变化,则认定所述上一条位置信息不满足所述预设条件,并基于两个基站覆盖区域的重叠区域获取当前位置信息。

6.一种定位装置,其特征在于,包括:

采集单元,用于实时采集各类定位数据;

获取单元,用于确定满足预设的定位条件的情况下,获取在设定时间范围内采集到的所有定位数据作为待处理数据;

定位单元,用于基于预先为各类定位数据分别配置的定位优先级,从所述待处理数据中选取当前定位优先级最高的一类定位数据进行定位,获取当前位置信息;

其中,所述各类定位数据至少包括:深度包检测DPI数据、测量报告MR数据和基站信令数据;各类定位数据分别对应的定位优先级从高到低的顺序依次为:DPI数据、MR数据、基站信令数据,则基于预先为各类定位数据分别设置的定位优先级,从所述待处理数据中选取当前定位优先级最高的一类定位数据进行定位,获取当前位置信息时,所述定位单元具体用于:确定所述待处理数据中存在DPI数据的情况下,优先基于所述待处理数据中存在的DPI数据获取当前位置信息;或者,确定所述待处理数据中不存在DPI数据的情况下,若不存在上一条位置信息,则确定所述待处理数据中存在MR数据的情况下,优先基于所述待处理数据中存在的MR数据获取当前位置信息;或者,确定所述待处理数据中不存在MR数据且存在基站信令数据的情况下,直接基于所述待处理数据中存在的基站信令数据获取当前位置信息。

7.如权利要求6所述的装置,其特征在于,基于所述待处理数据中存在的DPI数据获取当前位置信息时,所述定位单元具体用于:从所有DPI数据中筛选目标DPI数据,其中,目标DPI数据是对应的发送时间与当前时间之间的时间差在预设范围内的DPI数据;

确定筛选出的目标DPI数据的数目,按照与所述数目相关联的处理方式,对筛选出的目标DPI数据进行相应处理,以获取经纬度信息,并基于所述经纬度信息,确定当前定位栅格。

8.如权利要求6所述的装置,其特征在于,若存在上一条位置信息,则所述定位单元还用于:

在确定所述待处理数据中存在MR数据的情况下,从所有MR数据中筛选出目标MR数据,其中,所述目标MR数据是对应的发送时间与当前时间之间的时间差最小的MR数据;基于所述目标MR数据的发送时间以及所述上一条位置信息的获取时间,判断所述目标MR数据是否存在时延,若是,则丢弃所述目标MR数据,并将所述上一条位置信息作为当前位置信息;若否,则基于所述目标MR数据获取当前位置信息;或者,在确定所述待处理数据中不存在MR数据且存在基站信令数据的情况下,从所有基站信令数据中筛选出目标基站信令数据,其中,所述目标基站信令数据是对应的发送时间与当前时间之间的时间差最小的基站信令数据;基于所述目标基站信令数据的发送时间以及所述上一条位置信息的获取时间,判断所述目标基站信令数据是否存在时延,若是,则丢弃所述目标基站信令数据,并将所述上一条位置信息作为当前位置信息;若否,则确定所述上一条位置信息满足预设条件的情况下,基于所述上一条位置信息获取当前位置信息。

9.如权利要求8所述的装置,其特征在于,确定所述上一条位置信息满足预设条件时,所述定位单元具体用于:若所述上一条位置信息是基于MR数据获得的,则认定所述上一条位置信息满足所述预设条件;或者,若所述上一条位置信息是基于基站信令数据获得的且基站覆盖区域未发生变化,则认定所述上一条位置信息满足所述预设条件。

10.如权利要求8或9所述的装置,其特征在于,所述定位单元还用于:若确定所述上一条位置信息是基于基站信令数据获得的且基站覆盖区域已发生变化,则认定所述上一条位置信息不满足所述预设条件,并基于两个基站覆盖区域的重叠区域获取当前位置信息。

说明书 :

一种定位方法及装置

技术领域

[0001] 本发明涉及无线定位技术领域,尤其涉及一种定位方法及装置。

背景技术

[0002] 随着人们对位置服务需求的飞速增长,无线定位技术也越来越得到重视,目前,主要提出了以下四种定位方法:
[0003] 第一种定位方法:基于全球定位系统(Global Positioning System,GPS)进行定位。GPS定位主要是通过终端的GPS定位模块将GPS信号发送到定位后台,由定位后台基于该GPS信号获取用户的当前位置信息。虽然GPS定位精度较高,但是,由于GPS信号的穿透能力较弱,因此,在室内无法使用GPS定位进行定位,此外,采用GPS定位终端的耗电量较大。
[0004] 第二种定位方法:基于基站信令进行定位。基站定位主要是根据采集到的基站信令数据对用户轨迹进行测算,以此来确定用户的当前位置信息。虽然基站定位不需要终端具有GPS定位能力,对终端配置要求较低,但是,基站定位的定位精度很大程度地依赖于基站的分布及覆盖范围的大小,定位误差有时可能会超过一公里,而在当前市场上基于位置服务的应用场景所要求的定位精度大都在十米级,显然,基站定位并不能满足目前主流的应用场景。
[0005] 第三种定位方法:基于测试报告(Measurement Report,MR)进行定位。MR定位主要是通过终端上报的MR数据,查找与该MR数据携带的接收信号强度指示(Received Signal Strength Indication,RSSI)最接近的RSSI,以便根据查找到的RSSI对应的已知位置确定用户的当前位置信息。相对于基站定位,MR定位的定位精度较高,但是,由于MR上报的质量较低,而且,用户处于静默状态时终端将不再上报MR,进而,给MR精确定位带来了极大挑战。
[0006] 第四种定位方法:基于深度包检测(Deep Packet Inspection,DPI)进行定位。DPI定位主要是根据终端应用上报的DPI数据,确定用户的当前位置信息。DPI定位很大程度上依赖于终端应用上报的DPI数据,当终端应用不上报DPI数据时,将无法实现定位。
[0007] 基于上述分析,现有定位技术中的基站定位方式主要存在定位精度较低的问题,MR定位方式和DPI定位方式主要存在由于定位数据上报中断导致无法实现定位的问题。

发明内容

[0008] 本发明实施例提供了一种定位方法及装置,用以解决现有定位技术中基站定位方式存在的定位精度较低的问题,以及MR定位方式和DPI定位方式存在的由于定位数据上报中断导致无法实现定位的问题。
[0009] 本发明实施例提供的具体技术方案如下:
[0010] 一种定位方法,包括:
[0011] 实时采集各类定位数据;
[0012] 确定满足预设的定位条件的情况下,获取在设定时间范围内采集到的所有定位数据作为待处理数据;
[0013] 基于预先为各类定位数据分别配置的定位优先级,从待处理数据中选取当前定位优先级最高的一类定位数据进行定位,获取当前位置信息。
[0014] 较佳的,各类定位数据至少包括:DPI数据、MR数据和基站信令数据;各类定位数据分别对应的定位优先级从高到低的顺序依次为:DPI数据、MR数据、基站信令数据,则基于预先为各类定位数据分别设置的定位优先级,从待处理数据中选取当前定位优先级最高的一类定位数据进行定位,获取当前位置信息,包括:
[0015] 确定待处理数据中存在DPI数据的情况下,优先基于待处理数据中存在的DPI数据获取当前位置信息;或者,
[0016] 确定待处理数据中不存在DPI数据的情况下,若不存在上一条位置信息,则确定待处理数据中存在MR数据的情况下,优先基于待处理数据中存在的MR数据获取当前位置信息;或者,确定待处理数据中不存在MR数据且存在基站信令数据的情况下,直接基于待处理数据中存在的基站信令数据获取当前位置信息。
[0017] 较佳的,基于待处理数据中存在的DPI数据获取当前位置信息,包括:
[0018] 从所有DPI数据中筛选目标DPI数据,其中,目标DPI数据是对应的发送时间与当前时间之间的时间差在预设范围内的DPI数据;
[0019] 确定筛选出的目标DPI数据的数目,按照与数目相关联的处理方式,对筛选出的目标DPI数据进行相应处理,以获取经纬度信息,并基于经纬度信息,确定当前定位栅格。
[0020] 较佳的,若存在上一条位置信息,则,
[0021] 在确定待处理数据中存在MR数据的情况下,从所有MR数据中筛选出目标MR数据,其中,目标MR数据是对应的发送时间与当前时间之间的时间差最小的MR数据;基于目标MR数据的发送时间以及上一条位置信息的获取时间,判断目标MR数据是否存在时延,若是,则丢弃目标MR数据,并将上一条位置信息作为当前位置信息;若否,则基于目标MR数据获取当前位置信息;或者,
[0022] 在确定待处理数据中不存在MR数据且存在基站信令数据的情况下,从所有基站信令数据中筛选出目标基站信令数据,其中,目标基站信令数据是对应的发送时间与当前时间之间的时间差最小的基站信令数据;基于目标基站信令数据的发送时间以及上一条位置信息的获取时间,判断目标基站信令数据是否存在时延,若是,则丢弃目标基站信令数据,并将上一条位置信息作为当前位置信息;若否,则确定上一条位置信息满足预设条件的情况下,基于上一位置信息获取当前位置信息。
[0023] 较佳的,确定上一条位置信息满足预设条件,包括:
[0024] 若上一条位置信息是基于MR数据获得的,则认定上一条位置信息满足预设条件;或者,
[0025] 若上一条位置信息是基于基站信令数据获得的且基站覆盖区域未发生变化,则认定上一条位置信息满足预设条件。
[0026] 较佳的,若确定上一条位置信息是基于基站信令数据获得的且基站覆盖区域已发生变化,则认定上一条位置信息不满足预设条件,并基于两个基站覆盖区域的重叠区域获取当前位置信息。
[0027] 一种定位装置,包括:
[0028] 采集单元,用于实时采集各类定位数据;
[0029] 获取单元,用于确定满足预设的定位条件的情况下,获取在设定时间范围内采集到的所有定位数据作为待处理数据;
[0030] 定位单元,用于基于预先为各类定位数据分别配置的定位优先级,从待处理数据中选取当前定位优先级最高的一类定位数据进行定位,获取当前位置信息。
[0031] 较佳的,各类定位数据至少包括:DPI数据、MR数据和基站信令数据;各类定位数据分别对应的定位优先级从高到低的顺序依次为:DPI数据、MR数据、基站信令数据,则基于预先为各类定位数据分别设置的定位优先级,从待处理数据中选取当前定位优先级最高的一类定位数据进行定位,获取当前位置信息时,定位单元具体用于:
[0032] 确定待处理数据中存在DPI数据的情况下,优先基于待处理数据中存在的DPI数据获取当前位置信息;或者,
[0033] 确定待处理数据中不存在DPI数据的情况下,若不存在上一条位置信息,则确定待处理数据中存在MR数据的情况下,优先基于待处理数据中存在的MR数据获取当前位置信息;或者,确定待处理数据中不存在MR数据且存在基站信令数据的情况下,直接基于待处理数据中存在的基站信令数据获取当前位置信息。
[0034] 较佳的,基于待处理数据中存在的DPI数据获取当前位置信息时,定位单元具体用于:
[0035] 从所有DPI数据中筛选目标DPI数据,其中,目标DPI数据是对应的发送时间与当前时间之间的时间差在预设范围内的DPI数据;
[0036] 确定筛选出的目标DPI数据的数目,按照与数目相关联的处理方式,对筛选出的目标DPI数据进行相应处理,以获取经纬度信息,并基于经纬度信息,确定当前定位栅格。
[0037] 较佳的,若存在上一条位置信息,则定位单元还用于:
[0038] 在确定待处理数据中存在MR数据的情况下,从所有MR数据中筛选出目标MR数据,其中,目标MR数据是对应的发送时间与当前时间之间的时间差最小的MR数据;基于目标MR数据的发送时间以及上一条位置信息的获取时间,判断目标MR数据是否存在时延,若是,则丢弃目标MR数据,并将上一条位置信息作为当前位置信息;若否,则基于目标MR数据获取当前位置信息;或者,
[0039] 在确定待处理数据中不存在MR数据且存在基站信令数据的情况下,从所有基站信令数据中筛选出目标基站信令数据,其中,目标基站信令数据是对应的发送时间与当前时间之间的时间差最小的基站信令数据;基于目标基站信令数据的发送时间以及上一条位置信息的获取时间,判断目标基站信令数据是否存在时延,若是,则丢弃目标基站信令数据,并将上一条位置信息作为当前位置信息;若否,则确定上一条位置信息满足预设条件的情况下,基于上一位置信息获取当前位置信息。
[0040] 较佳的,确定上一条位置信息满足预设条件时,定位单元具体用于:
[0041] 若上一条位置信息是基于MR数据获得的,则认定上一条位置信息满足预设条件;或者,
[0042] 若上一条位置信息是基于基站信令数据获得的且基站覆盖区域未发生变化,则认定上一条位置信息满足预设条件。
[0043] 较佳的,定位单元还用于:若确定上一条位置信息是基于基站信令数据获得的且基站覆盖区域已发生变化,则认定上一条位置信息不满足预设条件,并基于两个基站覆盖区域的重叠区域获取当前位置信息。
[0044] 本发明实施例的有益效果如下:
[0045] 本发明实施例中,通过实时采集各类定位数据,优先选取当前定位优先级最高的一类定位数据进行定位,尽可能地提高了定位精度,降低了由于数据上报中断导致定位失败的可能性,较好地解决了用户位置信息缺失的问题。

附图说明

[0046] 图1为本发明实施例一中定位方法的流程示意图;
[0047] 图2A和图2B为本发明实施例二中定位方法的具体流程示意图;
[0048] 图3A和图3B为本发明实施例三中定位方法的具体流程示意图;
[0049] 图4为本发明实施例四中定位装置的功能结构示意图。

具体实施方式

[0050] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,并不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0051] 为了解决现有定位技术中基站定位方式存在的定位精度较低的问题,以及现有技术中MR定位方式和DPI定位方式存在的由于定位数据上报中断导致无法实现定位的问题,本发明实施例中,实时采集基站信令数据、MR数据和DPI数据等各类定位数据,并将采集到的所有定位数据保存至指定存储区域,以便在确定满足预设的定位条件的情况下,从指定存储区域中获取在设定时间范围内采集到的待处理数据,并基于预先按照定位精度为各类数据分别配置的定位优先级,从获得的待处理数据中,选取当前定位优先级最高的一类定位数据进行定位,获取当前位置信息。
[0052] 下面通过具体实施例对本发明方案进行详细描述,当然,本发明并不限于以下实施例。
[0053] 实施例一
[0054] 参阅图1所示,本发明实施例一中,定位方法的流程如下:
[0055] 步骤100:实时采集各类定位数据。其中,各类定位数据至少包括:DPI数据、MR数据和基站信令数据。
[0056] 步骤101:确定满足预设的定位条件的情况下,获取在设定时间范围内采集到的所有定位数据作为待处理数据。比如:确定到达预设的定位周期的情况下,认定满足预设的定位条件;又如,接收到定位指示的情况下,认定满足预设的定位条件,等等。
[0057] 步骤102:基于预先为各类定位数据分别配置的定位优先级,从待处理数据中选取当前定位优先级最高的一类定位数据进行定位,获取当前位置信息。较佳的,各类定位数据分别对应的定位优先级从高到低的顺序依次为:DPI数据、MR数据、基站信令数据。
[0058] 本发明实施例中,通过实时采集DPI数据、MR数据和基站信令数据等各类定位数据,优先选取当前定位优先级最高的一类定位数据进行定位,尽可能地提高了定位精度,降低了由于数据上报中断导致定位失败的可能性,较好地解决了用户位置信息缺失的问题。
[0059] 实施例二
[0060] 下面对上述实施例中的定位方法作进一步详细说明,参阅图2A和图2B所示,本发明实施例二中,定位方法的具体流程如下:
[0061] 步骤200:实时采集DPI数据、MR数据和基站信令数据等各类定位数据,并将采集到的所有定位数据保存至指定存储区域。
[0062] 步骤201:确定满足预设的定位条件的情况下,从指定存储区域中获取在设定时间范围内采集到的待处理数据。
[0063] 步骤202:判断获得的待处理数据中是否存在DPI数据,若存在,则执行步骤203;若不存在,执行步骤204。
[0064] 步骤203:基于待处理数据中存在的DPI数据获取当前位置信息。
[0065] 可选地,在执行步骤203时,可以采用但不限于以下方式:
[0066] 步骤一:从所有DPI数据中筛选目标DPI数据,其中,目标DPI数据是对应的发送时间与当前时间之间的时间差在预设范围内的DPI数据。
[0067] 步骤二:确定筛选出的目标DPI数据的数目,按照与目标DPI数据的数目相关联的处理方式,对待筛选出的目标DPI数据进行相应处理,以获取经纬度信息,并基于获得的经纬度信息,确定当前定位栅格。
[0068] 具体地,在执行步骤二时,可能存在但不限于以下两种情况:
[0069] 第一种情况:筛选出一个目标DPI数据。
[0070] 在此情况下,直接获取该目标DPI数据中携带的经纬度信息,并基于该经纬度信息,确定当前定位栅格。
[0071] 第二种情况:筛选出至少两个目标DPI数据。
[0072] 在此情况下,可对筛选出的所有目标DPI数据进行聚类处理,获取至少一个聚类,并从获得的至少一个聚类中选取目标聚类,基于该目标聚类对应的经纬度信息,确定当前定位栅格。
[0073] 值得说的是,在获得一个聚类的情况下,直接选取获得的该聚类作为目标聚类,在获得至少两个聚类的情况下,针对每一个聚类,计算该聚类包含的每一个目标DPI数据对应的发送时间戳表征的发送时间与当前时间之间的时间差,并对计算出的所有时间差的绝对值进行累加求均值,获取该聚类对应的时间差;从获得的所有聚类中,选取对应的时间差最小的聚类作为目标聚类。
[0074] 具体地,基于获得的经纬度信息,确定当前定位栅格时,可以采用但不限于以下方式:
[0075] 确定该经纬度信息在预设坐标轴中表征的坐标点,并获取该坐标点在X轴方向的投影和在Y轴方向的投影,以及基于该坐标点在X轴方向的投影和在Y轴方向的投影以及预设的单位栅格,在时间复杂度最小的情况下,计算当前定位栅格。
[0076] 例如:一经纬度信息在一坐标轴中表征坐标点A,坐标点A在X轴方向的投影为240m,在Y轴方向的投影为290m,单位栅格为50m×50m,在时间复杂度为O(1)的情况下,可确定出坐标点A对应的当前定位栅格,比如,确定出的当前定位栅格对应的编号为X005Y006。
[0077] 步骤204:判断是否存在上一条位置信息,若存在,则执行步骤208;若不存在,则执行步骤205。
[0078] 值得说的是,执行步骤204的目的在于:由于MR数据和基站信令数据可能存在不同程度的时延,所以,为了保证定位精度,避免由于时延造成的定位不准确的问题,可以在确定存在上一条位置信息的情况下,利用上一条位置信息判断MR数据/基站信令数据是否存在时延,以便对部分时延过大的MR数据/基站信令数据作丢弃处理,进一步地保证了定位精度。
[0079] 步骤205:判断待处理数据中是否存在MR数据,若存在,则执行步骤206;若不存在,则执行步骤207。
[0080] 步骤206:基于待处理数据中存在的MR数据获取当前位置信息。
[0081] 可选地,在执行步骤206时,可以采用但不限于以下方式:
[0082] 步骤一:从所有MR数据中筛选出目标MR数据,其中,目标MR数据是对应的发送时间与当前时间之间的时间差最小的MR数据。
[0083] 步骤二:获取当前基站对应的N个预设参考基点,并基于获得的N个预设参考基点,将当前基站的覆盖区域划分为N个子覆盖区域,使得一个预设参考基点对应一个子覆盖区域。
[0084] 步骤三:从预先基于路测数据建立的MR数据指纹库中,筛选出N个预设参考基点对应的RSSI。
[0085] 步骤四:从N个预设参考基点中,筛选出对应的RSSI与目标MR数据携带的RSSI之间的相似度最大的预设参考基点作为目标参考基点,以便将MR数据指纹库的匹配范围缩小至该目标参考基点对应的子覆盖区域。
[0086] 步骤五:基于欧几里得距离度量算法,从该目标参考基点对应的子覆盖区域包含的所有栅格中,筛选出与目标MR数据中携带的RSSI对应的未知栅格之间的距离最短的栅格作为目标栅格,并基于该目标栅格,获取当前定位栅格,即获取当前位置信息。
[0087] 步骤207:在确定待处理数据中存在基站信令数据的情况下,基于待处理数据中存在的基站信令数据获取当前位置信息。
[0088] 可选地,在执行步骤207时,可以采用但不限于以下方式:
[0089] 步骤一:从所有基站信令数据中筛选出目标基站信令数据,其中,目标基站信令数据是对应的发送时间与当前时间之间的时间差最小的基站信令数据。
[0090] 步骤二:根据目标基站信令数据,获取在切入当前基站时的切入方向,并从预先建立的热门轨迹数据库中,筛选出与该切入方向相匹配的热门轨迹作为目标轨迹。
[0091] 步骤三:基于当前时间与在切入当前基站时的切入时间之间的时间差以及预设行走速度,计算行走路程。
[0092] 步骤四:基于计算出的行走路程和筛选出的目标轨迹,获取当前定位栅格。
[0093] 具体地,在建立热门轨迹数据库时,可以采用但不限于以下方式:
[0094] 步骤一:根据基站类型、方向角、有效覆盖半径等工参数据,确定各个基站覆盖区域包含的栅格。
[0095] 步骤二:根据地图中不同RGB表征的不同地形,确定基站覆盖区域内存在的各个RGB以及各个RGB对应的地形,并将各个RGB转化成灰度值,建立如表1所示的RGB、地形和灰度值范围之间的对应关系。
[0096] 步骤三:统计指定时间范围内不同地形的客流量,并结合基站覆盖区域的实际地形,建立如表2所示的客流分布热力表,用客流分布热力表表征该基站覆盖区域内的每个栅格的访问概率,以便排除无客流量和/或客流量较少的栅格(比如,湖泊、喷泉等)。
[0097] 表1
[0098]RGB 地形 灰度值范围
白色 道路、建筑物 247-255
灰色 广场 220-224
淡蓝色-蓝色 喷泉、泳池、湖泊 188-207
浅绿色-绿色 草坪、树林 208-231
… … …
[0099] 表2
[0100] 栅格编号 访问概率 创建时间X001Y001 0.222222 2016-09-29 15:02:00
X001Y002 0.555556 2016-09-29 15:02:00
X001Y003 0.222222 2016-09-29 15:02:00
… … …
[0101] 步骤四:根据指定时间范围内所有的用户轨迹,计算每两个栅格之间的支持度和置信度,并利用每两个栅格之间的支持度和置信度,从指定时间范围内所有的用户轨迹中,挖掘出用户在基站覆盖域包含的所有栅格内的热门轨迹,以此建立热门轨迹数据库。其中,在计算支持度时,可以采用但不限于公式(1);在计算置信度时,可以采用但不限于公式(2)。值得说的是,在分析每两个栅格之间的关系时,不仅需要考虑每一条用户轨迹中频繁出现的某些栅格,同时,还需要考虑访问栅格的前后顺序。至此,完成了热门轨迹数据库的建立。
[0102]
[0103]
[0104] 步骤208:判断待处理数据中是否存在MR数据,若存在,则执行步骤209;若不存在,则执行步骤214。
[0105] 步骤209:从所有MR数据中筛选出目标MR数据,并判断上一条位置信息是基于MR数据获得的,还是基于基站信令数据获得的,若是基于MR数据获得的,则执行步骤210;若是基于基站信令数据获得的,则执行步骤213。
[0106] 步骤210:判断目标MR数据对应的发送时间与上一条位置信息的获取时间之间的时间差是否小于第一预设阈值;若是,则执行步骤211;否则,执行步骤212。
[0107] 步骤211:认定目标MR数据存在时延,并丢弃目标MR数据,将上一条位置信息作为当前位置信息,即将上一条位置信息对应的定位栅格作为当前定位栅格。
[0108] 步骤212:认定目标MR数据不存在时延,并基于目标MR数据获取当前位置信息。具体地,在基于目标MR数据获取当前位置信息时,可以采用但不限于在执行上述步骤206时采用的步骤二—步骤五所描述的定位方法进行定位。
[0109] 步骤213:判断目标MR数据对应的发送时间与上一条位置信息的获取时间之间的时间差是否小于第二预设阈值;若是,则执行步骤211;否则,执行步骤212。
[0110] 值的说的是,在判断目标MR数据是否存在时延时,根据上一条位置信息是基于MR数据获得的还是基于基站信令数据获得的,设置两个不同的预设阈值(即第一预设阈值和第二预设阈值)的目的在于:若上一条位置信息是基于MR数据获得的,两次获得的数据的数据类型相同,此时,可以不考虑定位精度的问题,即可以不考虑定位优先级的问题,直接根据目标MR数据是否存在时延,确定是基于目标MR数据获取当前位置信息,还是将上一条位置信息作为当前位置信息;若上一条位置信息是基于基站信令数据获得的,两次获得的数据的数据类型不同,此时,需要考虑定位精度的问题,即考虑定位优先级的问题(本次获得的目标MR数据的定位优先级高于上一次获得的基站信令数据的定位优先级),进而,在获取当前位置信息时,若目标MR数据的时延在可接受范围内,则可以优先选取目标MR数据进行定位,以保证定位精度,比如,目标MR数据的时延小于1分钟,由于在1分钟内用户的位置信息变化比较微弱,所以,由目标MR数据时延造成的定位误差远小于基于基站信令数据进行定位时存在的定位误差,在此情况下,可以选取目标MR数据确定当前位置信息。基于此,在具体实施时,可以为第二预设阈值配置一个较大数值,为第一预设阈值配置一个较小数值,以便在确定上一条位置信息是基于MR数据获得的情况下,仅考虑目标MR数据的时延问题即可,在确定上一条位置信息是基于基站信令数据获得的情况下,确定目标MR数据的时延在可接受范围内后,优先选取目标MR数据进行定位,以保证定位精度。
[0111] 当然,根据上一条位置信息是基于MR数据获得的还是基于基站信令数据获得的,设置两个不同的预设阈值是本发明实施例的较佳技术方案,也可以在确定待处理数据中存在目标MR数据的情况下,不考虑上一条位置信息是基于MR数据获得的还是基于基站信令数据获得的,直接根据目标MR数据对应的发送时间戳表征的发送时间与上一条位置信息的获取时间之间的时间差,判断目标MR数据是否存在时延,进而,确定出是基于目标MR数据获取当前位置信息,还是将上一条位置信息作为当前位置信息。
[0112] 步骤214:确定待处理数据中存在基站信令数据的情况下,从所有基站信令数据中筛选出目标基站信令数据,并判断目标基站信令数据对应的发送时间与上一条位置信息的获取时间之间的时间差是否小于第一预设阈值;若是,则执行步骤215;否则,执行步骤216。
[0113] 步骤215:认定目标基站信令数据存在时延,并丢弃目标基站信令数据,将上一条位置信息作为当前位置信息,即将上一条位置信息对应的定位栅格作为当前定位栅格。
[0114] 步骤216:认定目标基站信令数据不存在时延,并判断上一条位置信息是否满足预设条件,其中,若确定上一条位置信息是基于MR数据获得的,则认定上一条位置信息满足预设条件;或者,若确定上一条位置信息是基于基站信令数据获得的且基站覆盖区域未发生变化,则认定上一条位置信息满足预设条件,若是,则执行步骤217;若否,则执行步骤218。
[0115] 步骤217:基于上一位置信息获取当前位置信息。
[0116] 可选地,在执行步骤217时,可以采用但不限于以下方式:结合在切入当前基站时的切入方向,从上一位置信息对应的定位栅格的周围区域包含的所有栅格中,选取对应的访问概率最大的栅格作为当前定位栅格(即当前位置信息)。
[0117] 步骤218:基于两个基站覆盖区域的重叠区域获取当前位置信息。
[0118] 可选地,在执行步骤218时,可以采用但不限于以下方式:结合在切入当前基站时的切入方向,从两个基站覆盖区域的重叠区域以及该重叠区域的周围区域包含的所有栅格中,选取对应的访问概率最大的栅格作为当前定位栅格(即当前位置信息)。
[0119] 值得说的是,在确定目标基站信令数据不存在时延的情况下,根据上一位置信息/两个基站覆盖区域的重叠区域获取当前位置信息的目的在于:在短时间内用户的位置信息变化比较微弱,进而,利用上一位置信息/两个基站覆盖区域的重叠区域获取当前位置信息,尽可能地降低了基于基站信令数据进行定位时存在的定位误差。
[0120] 当然,在确定目标基站信令数据不存在时延的情况下,根据上一位置信息/两个基站覆盖区域的重叠区域获取当前位置信息是本发明实施例的较佳技术方案,也可以在确定目标基站信令数据不存在时延的情况下,直接根据目标基站信令数据获取当前位置信息,具体地,可以采用但不限于在执行上述步骤207时采用的步骤二—步骤四所描述的定位方法进行定位。
[0121] 实施例三
[0122] 下面采用具体的应用场景对上述实施例作进一步详细说明,参阅图3A和图3B所示,本发明实施例三中,定位方法的具体流程如下:
[0123] 步骤300:实时采集DPI数据、MR数据和基站信令数据等各类定位数据,并将采集到的所有定位数据保存至指定存储区域。
[0124] 步骤301:确定满足预设的定位条件的情况下,比如,确定到达预设的定位周期的情况下,从指定存储区域中获取在5分钟内(即设定时间范围内)采集到的待处理数据。
[0125] 步骤302:判断获得的待处理数据中是否存在DPI数据,若存在,则执行步骤303;若不存在,执行步骤304。
[0126] 步骤303:从所有DPI数据中筛选目标DPI数据,其中,目标DPI数据是对应的发送时间与当前时间之间的时间差在预设范围内的DPI数据,并确定筛选出的目标DPI数据的数目,按照与目标DPI数据的数目相关联的处理方式,对筛选出的目标DPI数据进行相应处理,以获取经纬度信息,并基于获得的经纬度信息,确定当前定位栅格。
[0127] 具体地,若筛选出的一个目标DPI数据,则获取该目标DPI数据中携带的经纬度信息,并基于该经纬度信息,确定当前定位栅格;若筛选出的至少两个目标DPI数据,则对筛选出的所有目标DPI数据进行聚类处理,获取至少一个聚类,并从获得的至少一个聚类中选取目标聚类,基于该目标聚类对应的经纬度信息,确定当前定位栅格,其中,在获得一个聚类的情况下,直接选取获得的该聚类作为目标聚类,在获得至少两个聚类的情况下,从获得的所有聚类中,选取对应的发送时间与当前时间之间的时间差最小的一个聚类作为目标聚类。
[0128] 具体地,基于获得的经纬度信息,确定当前定位栅格时,可以采用但不限于以下方式:确定该经纬度信息在预设坐标轴中表征的坐标点,并获取该坐标点在X轴方向的投影和在Y轴方向的投影,以及基于该坐标点在X轴方向的投影和在Y轴方向的投影以及预设的单位栅格,在时间复杂度最小的情况下,计算当前定位栅格。
[0129] 步骤304:判断是否存在上一条位置信息,若存在,则执行步骤313;若不存在,则执行步骤305。
[0130] 步骤305:判断待处理数据中是否存在MR数据,若存在,则执行步骤306;若不存在,则执行步骤310。
[0131] 步骤306:从所有MR数据中筛选出目标MR数据,其中,目标MR数据是对应的发送时间与当前时间之间的时间差最小的MR数据。
[0132] 步骤307:获取当前基站对应的N个预设参考基点,基于获得的N个预设参考基点,将当前基站的覆盖区域划分为N个子覆盖区域,使得一个预设参考基点对应一个子覆盖区域。
[0133] 步骤308:从预先基于路测数据建立的MR数据指纹库中,筛选出N个预设参考基点对应的RSSI,并从N个预设参考基点中,筛选出对应的RSSI与目标MR数据携带的RSSI之间的相似度最大的预设参考基点作为目标参考基点,以便将MR数据指纹库的匹配范围缩小至该目标参考基点对应的子覆盖区域。
[0134] 步骤309:基于欧几里得距离度量算法,从该目标参考基点对应的子覆盖区域包含的所有栅格中,筛选出与目标MR数据中携带的RSSI对应的未知栅格之间的距离最短的栅格作为目标栅格,并基于该目标栅格,获取当前定位栅格。
[0135] 步骤310:在确定待处理数据中存在基站信令数据的情况下,从所有基站信令数据中筛选出目标基站信令数据,其中,目标基站信令数据是对应的发送时间与当前时间之间的时间差最小的基站信令数据。
[0136] 步骤311:根据目标基站信令数据,获取在切入当前基站时的切入方向,从预先建立的热门轨迹数据库中,筛选出与该切入方向相匹配的热门轨迹作为目标轨迹。
[0137] 步骤312:基于当前时间与在切入当前基站时的切入时间之间的时间差以及预设行走速度,计算行走路程,并基于计算出的行走路程和筛选出的目标轨迹,获取当前定位栅格。
[0138] 步骤313:判断待处理数据中是否存在MR数据,若存在,则执行步骤314;若不存在,则执行步骤319。
[0139] 步骤314:从所有MR数据中筛选出目标MR数据,并判断上一条位置信息是基于MR数据获得的,还是基于基站信令数据获得的,若是基于MR数据获得的,则执行步骤315;若是基于基站信令数据获得的,则执行步骤318。
[0140] 步骤315:判断目标MR数据对应的发送时间与上一条位置信息的获取时间之间的时间差是否小于0分钟(即第一预设阈值);若是,则执行步骤316;否则,执行步骤317。
[0141] 步骤316:认定目标MR数据存在时延,并丢弃目标MR数据,将上一条位置信息对应的定位栅格作为当前定位栅格。
[0142] 步骤317:认定目标MR数据不存在时延,并基于目标MR数据获取当前位置信息。具体地,在基于目标MR数据获取当前位置信息时,可以采用但不限于上述步骤307—步骤309描述的定位方法进行定位。
[0143] 步骤318:判断目标MR数据对应的发送时间与上一条位置信息的获取时间之间的时间差是否小于1分钟(即第二预设阈值);若是,则执行步骤316;否则,执行步骤317。
[0144] 步骤319:确定待处理数据中存在基站信令数据的情况下,从所有基站信令数据中筛选出目标基站信令数据,并判断目标基站信令数据对应的发送时间戳表征的发送时间与上一条位置信息的获取时间之间的时间差是否小于0分钟(即第一预设阈值);若是,则执行步骤320;否则,执行步骤321。
[0145] 步骤320:认定目标基站信令数据存在时延,并丢弃目标基站信令数据,以及,将上一条位置信息对应的定位栅格作为当前定位栅格。
[0146] 步骤321:认定目标基站信令数据不存在时延,并判断上一条位置信息是否是基于基站信令数据获得的,若是,则执行步骤322;若否,则直接执行步骤324。
[0147] 步骤322:判断基站覆盖区域是否已发生变化,若是,则执行步骤323;若否,则执行步骤324。
[0148] 步骤323:结合在切入当前基站时的切入方向,从两个基站覆盖区域的重叠区域以及该重叠区域的周围区域包含的所有栅格中,选取对应的访问概率最大的栅格作为当前定位栅格。
[0149] 步骤324:结合在切入当前基站时的切入方向,从上一位置信息对应的定位栅格的周围区域包含的所有栅格中,选取对应的访问概率最大的栅格作为当前定位栅格。
[0150] 实施例四
[0151] 基于上述实施例,参阅图4所示,本发明实施例四中,定位装置至少包括:
[0152] 采集单元400,用于实时采集各类定位数据;
[0153] 获取单元401,用于确定满足预设的定位条件的情况下,获取在设定时间范围内采集到的所有定位数据作为待处理数据;
[0154] 定位单元402,用于基于预先为各类定位数据分别配置的定位优先级,从待处理数据中选取当前定位优先级最高的一类定位数据进行定位,获取当前位置信息。
[0155] 较佳的,各类定位数据至少包括:DPI数据、MR数据和基站信令数据;各类定位数据分别对应的定位优先级从高到低的顺序依次为:DPI数据、MR数据、基站信令数据,则基于预先为各类定位数据分别设置的定位优先级,从待处理数据中选取当前定位优先级最高的一类定位数据进行定位,获取当前位置信息时,定位单元402具体用于:
[0156] 确定待处理数据中存在DPI数据的情况下,优先基于待处理数据中存在的DPI数据获取当前位置信息;或者,
[0157] 确定待处理数据中不存在DPI数据的情况下,若不存在上一条位置信息,则确定待处理数据中存在MR数据的情况下,优先基于待处理数据中存在的MR数据获取当前位置信息;或者,确定待处理数据中不存在MR数据且存在基站信令数据的情况下,直接基于待处理数据中存在的基站信令数据获取当前位置信息。
[0158] 较佳的,基于待处理数据中存在的DPI数据获取当前位置信息时,定位单元402具体用于:
[0159] 从所有DPI数据中筛选目标DPI数据,其中,目标DPI数据是对应的发送时间与当前时间之间的时间差在预设范围内的DPI数据;
[0160] 确定筛选出的目标DPI数据的数目,按照与数目相关联的处理方式,对筛选出的目标DPI数据进行相应处理,以获取经纬度信息,并基于经纬度信息,确定当前定位栅格。
[0161] 较佳的,若存在上一条位置信息,则定位单元402还用于:
[0162] 在确定待处理数据中存在MR数据的情况下,从所有MR数据中筛选出目标MR数据,其中,目标MR数据是对应的发送时间与当前时间之间的时间差最小的MR数据;基于目标MR数据的发送时间以及上一条位置信息的获取时间,判断目标MR数据是否存在时延,若是,则丢弃目标MR数据,并将上一条位置信息作为当前位置信息;若否,则基于目标MR数据获取当前位置信息;或者,
[0163] 在确定待处理数据中不存在MR数据且存在基站信令数据的情况下,从所有基站信令数据中筛选出目标基站信令数据,其中,目标基站信令数据是对应的发送时间与当前时间之间的时间差最小的基站信令数据;基于目标基站信令数据的发送时间以及上一条位置信息的获取时间,判断目标基站信令数据是否存在时延,若是,则丢弃目标基站信令数据,并将上一条位置信息作为当前位置信息;若否,则确定上一条位置信息满足预设条件的情况下,基于上一位置信息获取当前位置信息。
[0164] 较佳的,确定上一条位置信息满足预设条件时,定位单元402具体用于:若上一条位置信息是基于MR数据获得的,则认定上一条位置信息满足预设条件;或者,若上一条位置信息是基于基站信令数据获得的且基站覆盖区域未发生变化,则认定上一条位置信息满足预设条件。
[0165] 较佳的,定位单元402还用于:若确定上一条位置信息是基于基站信令数据获得的且基站覆盖区域已发生变化,则认定上一条位置信息不满足预设条件,并基于两个基站覆盖区域的重叠区域获取当前位置信息。
[0166] 综上所述,本发明实施例中,实时采集各类定位数据;确定满足预设的定位条件的情况下,获取在设定时间范围内采集到的所有定位数据作为待处理数据;基于预先为各类定位数据分别配置的定位优先级,从待处理数据中选取当前定位优先级最高的一类定位数据进行定位,获取当前位置信息。该方法通过实时采集各类定位数据,优先选取当前定位优先级最高的一类定位数据进行定位,尽可能地提高了定位精度,降低了由于数据上报中断导致定位失败的可能性,较好地解决了用户位置信息缺失的问题,此外,不再使用GPS进行定位,不存在由于开启终端流量和GPS功能带来的耗电量大的问题,也不存在由于GPS信号穿透能力较弱导致室内无法实现定位等问题。
[0167] 本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0168] 本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0169] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0170] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0171] 尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
[0172] 显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。