欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 一种离线定位方法、装置、设备及存储介质独创技术53086字

一种离线定位方法、装置、设备及存储介质

2021-02-26 15:12:00

一种离线定位方法、装置、设备及存储介质

  技术领域

  本申请涉及互联网技术领域,尤其涉及一种离线定位方法、装置、设备及存储介质。

  背景技术

  离线定位,是指终端设备在不连接网络且不开启全球定位系统(GlobalPositioning System,GPS)等定位功能的情况下确定自身当前所处的位置。受到网络信号不稳定、在线定位需要耗费较多流量等因素的影响,如今离线定位被广泛地应用于各类场景。

  相关技术中,目前主要通过以下方式实现离线定位:终端设备扫描获得周围的基站信息,进而根据接收到的基站信号的强度,计算终端设备与周围的基站之间的距离,由此确定终端设备当前所处的位置。然而,这种实现方式的定位精度通常较差,特别是在基站稀少的地方这种实现方式的定位效果会更差。

  发明内容

  本申请实施例提供了一种离线定位方法、装置、设备及存储介质,能够准确地进行离线定位,保证离线定位结果的准确性。

  有鉴于此,本申请第一方面提供了一种离线定位方法,所述方法包括:

  扫描获得目标网络信息;所述目标网络信息包括目标基站信息、目标WiFi信息中的至少一个;

  在定位信息参照表中查找与所述目标网络信息匹配的历史在线定位记录,作为目标定位记录;所述定位信息参照表中包括多条历史在线定位记录,每条所述历史在线定位记录包括一次在线定位所依据的网络信息以及此次在线定位的定位结果,所述网络信息包括基站信息、WiFi信息中的至少一个;

  确定所述目标定位记录中包括的定位结果作为离线定位结果。

  本申请第二方面提供了一种离线定位装置,所述装置包括:

  扫描模块,用于扫描获得目标网络信息;所述目标网络信息包括目标基站信息、目标WiFi信息中的至少一个;

  查找模块,用于在定位信息参照表中查找与所述目标网络信息匹配的历史在线定位记录,作为目标定位记录;所述定位信息参照表中包括多条历史在线定位记录,每条所述历史在线定位记录包括一次在线定位所依据的网络信息以及此次在线定位的定位结果,所述网络信息包括基站信息、WiFi信息中的至少一个;

  确定模块,用于确定所述目标定位记录中包括的定位结果作为离线定位结果。

  本申请第三方面提供了一种离线定位设备,所述离线定位设备包括处理器以及存储器:

  所述存储器用于存储计算机程序;

  所述处理器用于根据所述计算机程序,执行如上述第一方面所述的离线定位方法的步骤。

  本申请第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行上述第一方面所述的离线定位方法的步骤。

  本申请第五方面提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述第一方面所述的离线定位方法的步骤。

  从以上技术方案可以看出,本申请实施例具有以下优点:

  本申请实施例提供了一种离线定位方法,在该方法中,先扫描获得周围环境中的目标网络信息,该目标网络信息中可以包括目标基站信息、目标WiFi信息中的至少一个;然后,在定位信息参照表中查找与该目标网络信息相匹配的历史在线定位记录作为目标定位记录,此处的定位信息参照表中通常包括多条历史在线定位记录,并且每条历史在线定位记录中包括一次在线定位所依据的网络信息以及此次在线定位的定位结果,该网络信息包括基站信息、WiFi信息中的至少一个;最终,将所查找到的目标定位记录中包括的定位结果,作为此次离线定位的定位结果。考虑到在线定位时产生的定位结果通常比较准确,因此,本申请基于离线定位时终端设备扫描的目标网络信息,在定位信息参照表中查找与该目标网络信息相匹配的历史在线定位记录,进而将该次历史在线定位记录中的定位结果作为本次离线定位的定位结果,由此借助历史在线定位结果的准确性,保证离线定位结果的准确性。

  附图说明

  图1为本申请实施例提供的离线定位方法的应用场景示意图;

  图2为本申请实施例提供的离线定位方法的流程示意图;

  图3为本申请实施例提供的离线定位模块的整体设计示意图;

  图4为本申请实施例提供的离线定位策略的流程示意图;

  图5为本申请实施例提供的离线定位装置的结构示意图;

  图6为本申请实施例提供的终端设备的结构示意图。

  具体实施方式

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

  本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

  相关技术中,终端设备进行离线定位时,通常需要扫描获得周围的基站信息,进而根据接收到的基站信号的强度计算自身与周围的基站之间的距离,从而确定自身当前所处的位置。这种实现方式的定位精度普遍较差,特别在基站稀少的地方这种实现方式的定位效果会更差。

  针对相关技术存在的问题,本申请实施例提供了一种离线定位方法,该方法能够在一定程度上提高离线定位的准确度。

  具体的,在本申请实施例提供的离线定位方法中,终端设备可以先扫描获得周围环境中的目标网络信息,该目标网络信息中可以包括目标基站信息、目标WiFi信息中的至少一个;然后,在定位信息参照表中查找与该目标网络信息相匹配的历史在线定位记录作为目标定位记录,此处的定位信息参照表中通常包括多条历史在线定位记录,并且每条历史在线定位记录中包括一次在线定位所依据的网络信息以及此次在线定位的定位结果,该网络信息包括基站信息、WiFi信息中的至少一个;最终,将所查找到的目标定位记录中包括的定位结果,作为此次离线定位的定位结果。

  由于在线定位时产生的定位结果通常比较准确,因此,本申请基于离线定位时终端设备扫描的目标网络信息,在定位信息参照表中查找与该目标网络信息相匹配的历史在线定位记录,并将该次历史在线定位记录中的定位结果作为本次离线定位的定位结果,如此,借助历史在线定位结果的准确性,保证离线定位结果的准确性。此外,由于定位信息参照表中包括的历史在线定位记录通常是在用户经常活动的区域中产生的,因此,基于该定位信息参照表确定离线定位结果时,能够有很大概率匹配到对应的历史定位记录,保证了本申请实施例提供的离线定位方法在实际应用中的实用性。

  应理解,本申请实施例提供的离线定位方法可以应用于终端设备,该终端设备具体可以为智能手机、平板电脑、个人数字助理(Personal Digital Assitant,PDA)等移动设备。

  为了便于理解本申请实施例提供的离线定位方法,下面对该离线定位方法所适用的应用场景进行示例性介绍。

  参见图1,图1为本申请实施例提供的离线定位方法的应用场景示意图。如图1所示,该应用场景中包括终端设备110,终端设备110进行离线定位时,可以扫描获得周围的基站信息作为目标基站信息,也可以扫描获得周围的WiFi信息作为目标WiFi信息,目标基站信息和目标WiFi信息均可被称为目标网络信息。

  然后,终端设备110可以调取其本地存储的定位信息参照表,该定位信息参照表中包括若干条历史在线定位记录,这些历史在线定位记录对应于终端设备110此前进行的在线定位操作,具体的,每条历史在线定位记录中可以包括一次在线定位时依据的网络信息以及此次在线定位的定位结果,此处在线定位时依据的网络信息具体可以包括在线定位时利用到的基站信息、WiFi信息中的至少一个。进而,终端设备110可以在定位信息参照表中,查找与此次离线定位扫描到的目标网络信息相匹配的历史在线定位记录,作为目标定位记录;最终,将该目标定位记录中包括的定位结果作为此次离线定位的定位结果。

  如此,在离线定位时扫描到的目标网络信息与某条历史在线定位记录中包括的网络信息相匹配的情况下,将该条历史在线定位记录中包括的定位结果确定为此次离线定位的定位结果,可以借助在线定位结果的准确性,保障离线定位结果的准确性。

  应理解,图1所示的应用场景仅为示例,在实际应用中,本申请实施例提供的离线定位方法还可以应用在其它应用场景中,本申请在此不对该离线定位方法适用的应用场景做任何限定。

  下面通过方法实施例对本申请提供的离线定位方法进行详细介绍。

  参见图2,图2为本申请实施例提供的离线定位方法的流程示意图,下述实施例以终端设备作为执行主体。如图2所示,该离线定位方法包括以下步骤:

  步骤201:扫描获得目标网络信息;所述目标网络信息包括目标基站信息、目标WiFi信息中的至少一个。

  终端设备进行离线定位时,可以自动扫描获得周围的网络信息作为目标网络信息。具体的,终端设备可以自动扫描获得周围的基站信息作为目标基站信息,和/或终端设备可以自动扫描获得周围的WiFi信息作为目标WiFi信息,上述目标基站信息和目标WiFi信息均可被称为目标网络信息。

  在一些实施例中,终端设备扫描获得的目标基站信息可以包括扫描到的目标基站的标识(cellid)以及与目标基站相关的代码串(cellkey)。其中,目标基站的标识能够唯一标识该目标基站,对于不同网络类型(如3G网络、4G网络和5G网络)下的基站,其所对应的标识的表现形式往往不同。与目标基站相关的代码串通常是由移动国家代码(MobileCountry Code,MCC)、移动网络号码(Mobile Network Code,MNC)和位置区域码(LocationArea Code,LAC)等字符串拼接而成的,相邻基站各自关联的代码串往往是先相同的。

  在一些实施例中,终端设备扫描获得的目标WiFi信息可以表现为目标WiFi列表,该目标WiFi列表包括终端设备此时扫描到的目标WiFi的标识,该目标WiFi的标识具体可以是目标WiFi的MAC(Media Access Control Address)地址,不同的WiFi对应于不同的MAC地址。

  应理解,在终端设备的WiFi开关开启的情况下,终端设备可以自动扫描到周围的若干WiFi,并获取到所扫描到的WiFi的MAC地址,将由这些WiFi的MAC地址构成的WiFi列表作为目标WiFi信息。

  步骤202:在定位信息参照表中查找与所述目标网络信息匹配的历史在线定位记录,作为目标定位记录;所述定位信息参照表中包括多条历史在线定位记录,每条所述历史在线定位记录包括一次在线定位所依据的网络信息以及此次在线定位的定位结果,所述网络信息包括基站信息、WiFi信息中的至少一个。

  终端设备进行离线定位时扫描到周围的目标网络信息后,可以进一步调取自身本地存储的定位信息参照表,并在该定位信息参照表中查找与所扫描到的目标网络信息相匹配的历史在线定位记录,将该历史在线定位记录作为目标定位记录。

  需要说明的是,定位信息参照表中通常存储有若干条历史在线定位记录,这些历史在线定位记录对应于终端设备此前执行的在线定位操作,即终端设备每完成一次在线定位,即可相应地创建一条与此次在线定位对应的历史在线定位记录,该历史在线定位记录中可以包括此次在线定位时所依据的网络信息和此次在线定位的定位结果(location),该网络信息具体可以包括基站信息、WiFi信息中的至少一个,完成历史在线定位记录的创建后,即可将所创建的历史在线定位记录存储至定位信息参照表。

  应理解,上述历史在线定位记录中的基站信息可以包括在线定位时所依据的基站的标识(cellid)和与该基站相关的代码串(cellkey),该代码串可以由MCC、MNC和LAC等字符串拼接而成。上述历史在线定位记录中的WiFi信息可以是终端设备在线定位时扫描到的WiFi列表,其中包括终端设备进行在线定位时扫描到的各WiFi的标识,该WiFi的标识具体可以为WiFi的MAC地址。上述历史在线定位记录中的定位结果具体可以是经纬度,终端设备创建历史在线定位记录时可以将该经纬度转换为对应的字符串形式,存储至定位信息参照表中。

  在实际应用中,定位信息参照表中的历史在线定位记录除了可以包括在线定位时依据的网络信息和在线定位结果外,还可以包括历史在线定位记录的标识(id)、定位结果对应的定位精度(accuracy)和历史在线定位记录的插入时间戳(time),其中,历史在线定位记录的标识能够唯一表征一条历史在线定位记录,定位结果对应的定位精度可以表征该定位结果的精确度,历史在线定位记录的插入时间戳是在将该历史在线定位记录插入定位信息参照表时配置的,越晚插入定位信息参照表的历史在线定位记录,所对应的插入时间戳越靠后。

  当然,在实际应用中,历史在线定位记录还可以包括其它信息,本申请在此不对历史在线定位记录中包括的信息做任何限定。

  可选的,终端设备将所创建的历史在线定位记录存储至定位信息参照表之前,可以先判断该历史在线定位记录是否与定位信息参照表中已存储的历史在线定位记录相重复,若是,则在该历史在线定位记录和定位信息参照表中与其重复的历史在线定位记录中,选取一个历史在线定位记录保留在定位信息参照表中。

  示例性的,在待存储的历史在线定位记录同时包括基站信息和WiFi信息的情况下,终端设备可以依据基站信息,在定位信息参照表中查找与该历史在线定位记录重复的历史在线定位记录。具体的,终端设备可以将待存储的历史在线定位记录中包括的基站信息视为参考基站信息,进而,在定位信息参照表中查找是否存在包括该参考基站信息的历史在线定位记录,若存在,则在所查找到的历史在线定位记录与待存储的历史在线定位记录中,选取所包括的WiFi信息最丰富(即WiFi列表中包括的WiFi标识最多)的历史在线定位记录,保留在定位信息参照表中。

  当然,在实际应用中,终端设备也可以采取其它方式对历史在线定位记录进行去重处理,本申请在此不对去重处理的具体实现方式做任何限定。

  在一种可能的实现方式中,若终端设备进行离线定位时扫描到的目标网络信息包括目标基站信息(包括目标基站的标识和与目标基站相关的代码串),且定位信息参照表中的历史在线定位记录中包括在线定位时依据的基站信息(包括在线定位时依据的基站的标识和与该基站相关的代码串),则终端设备可以通过以下方式在定位信息参照表中查找与目标网络信息匹配的目标定位记录:

  在定位信息参照表中查找同时包括目标基站的标识和与目标基站相关的代码串的历史在线定位记录,作为第一参考定位记录。若能够在定位信息参照表中查找到同时包括目标基站的标识和与目标基站相关的代码串的第一参考定位记录,则终端设备可以根据所查找到的第一参考定位记录确定目标定位记录。若未能在定位信息参照表中同时包括目标基站的标识和与目标基站相关的代码串的第一参考定位记录,则终端设备可以进一步在定位信息参照表中查找包括与目标基站相关的代码串的历史在线定位记录,作为第二参考定位记录;若能够在定位信息参照表中查找到包括与目标基站相关的代码串的第二参考定位记录,则终端设备可以根据所查找到的第二参考定位记录确定目标定位记录。

  具体的,由于依据基站的标识和与该基站相关的代码串通常可以唯一锁定一个基站,因此,在终端设备扫描到的目标基站信息包括目标基站的标识和与该目标基站相关的代码串的情况下,终端设备可以基于该目标基站的标识和与该目标基站相关的代码串,在定位信息参照表中查找是否存在基于目标基站进行在线定位的历史在线定位记录,即在定位信息参照表中查找是否存在同时包括目标基站的标识和与目标基站相关的代码串的第一参考定位记录。应理解,第一参考定位记录中包括的定位结果实质上即为基于目标基站进行在线定位时确定的定位结果,该定位结果对于此次离线定位具有极高的参考价值。

  若终端设备在定位信息参照表中查找到上述第一参考定位记录,那么终端设备可以在该第一参考定位记录中选取目标定位记录。具体的,若终端设备仅在定位信息参照表中查找到一条第一参考定位记录,则终端设备可以直接将该条第一参考定位记录作为目标定位记录;若终端设备在定位信息参照表中查找到多条第一参考定位记录,则终端设备需要在多条第一参考定位记录中选取一条第一参考定位记录,作为目标定位记录,终端设备具体在第一参考定位记录中选取目标定位记录时可以依据WiFi信息、定位精度等信息进行选取,下文将对选取目标定位记录的具体实现方式进行详细介绍。

  若终端设备没有在定位信息参照表中查找到上述第一参考定位记录,则说明终端设备此前没有基于目标基站进行过在线定位,此时,终端设备可以进一步在定位信息参照表中查找包括与目标基站相关的代码串的历史在线定位记录。需要说明的是,在实际应用中,相邻基站通常关联有相同的代码串,因此,若终端设备没有在定位信息参照表中查找到基于目标基站进行在线定位的历史在线定位记录,那么终端设备可以基于与目标基站相关的代码串,在定位信息参照表中查找是否存在基于与目标基站相邻的基站进行在线定位的历史在线定位记录,即在定位信息参照表中查找是否存在包括与目标基站相关的代码串的第二参考定位记录。应理解,第二参考定位记录中包括的定位结果实质上是基于与目标基站相邻的基站进行在线定位时确定的定位结果,该定位结果对于此次离线定位也具有一定的参考价值。

  若终端设备在定位信息参照表中查找到上述第二参考定位记录,那么终端设备可以在该第二参考定位记录中选取目标定位记录。具体的,若终端设备仅在定位信息参照表中查找到一条第二参考定位记录,则终端设备可以直接将该条第二参考定位记录作为目标定位记录;若终端设备在定位信息参照表中查找到多条第二参考定位记录,则终端设备需要在多条第二参考定位记录中选取一条第二参考定位记录,作为目标定位记录,终端设备具体在第二参考定位记录中选取目标定位记录时可以依据WiFi信息、定位精度等信息进行选取,下文将对选取目标定位记录的具体实现方式进行详细介绍。

  作为一种优选的实现方式,在终端设备扫描到的目标网络信息包括目标WiFi信息(即目标WiFi列表),且定位信息参照列表中的历史在线定位记录包括WiFi信息(即WiFi列表)的情况下,终端设备可以根据目标WiFi信息和多条第一参考定位记录中包括WiFi信息(或者多条第二参考定位记录中包括的WiFi信息),在多条第一参考定位记录(或者多条第二参考定位记录)中选出目标定位记录。

  本申请实施例提供了以下三种示例性的根据目标WiFi信息和多条第一参考定位记录中包括WiFi信息(或者多条第二参考定位记录中包括的WiFi信息),在多条第一参考定位记录(或者多条第二参考定位记录)中选出目标定位记录的实现方式。为了便于描述,介绍下述三种实现方式时均以在多条第一参考定位记录中选取目标定位记录为例,应理解,在多条第二参考定位记录中选取目标定位记录的实现方式与此相类似。

  第一种实现方式,终端设备可以基于WiFi信息间的重合度,在多条第一参考定位记录中选取目标定位记录。即终端设备可以针对每条第一参考定位记录,确定该第一参考定位记录中包括的WiFi信息与目标WiFi信息之间的重合度,作为该第一参考定位记录对应的重合度;进而,确定所对应的重合度最高的第一参考定位记录作为目标定位记录。

  具体的,由于目标WiFi信息和第一参考定位记录中的WiFi信息通常表现为WiFi列表,因此,终端设备在多条第一参考定位记录中选取目标定位记录时,可以针对每条第一参考定位记录,确定该条第一参考定位记录包括的WiFi列表与目标WiFi列表中重合的WiFi标识的数目,作为该条第一参考定位记录对应的重合度。最终,选取所对应的重合度最高的第一参考定位记录,作为目标定位记录。

  第二种实现方式,在定位信息参照表中还包括定位结果对应的在线定位的情况下,终端设备可以基于定位精度在多条第一参考定位记录中选取目标定位记录。即终端设备可以在多条第一参考定位记录中,选取所包括的定位精度最高的第一参考定位记录作为目标定位记录。

  第三种实现方式,在定位信息参照表中还包括定位结果对应的定位精度以及历史在线定位记录的插入时间戳的情况下,终端设备可以综合考虑WiFi信息、插入时间戳和定位精度,在多条第一参考定位记录中选取目标定位记录。即终端设备可以针对每条第一参考定位记录,确定该第一参考定位记录中包括的WiFi信息与目标WiFi信息之间的重合度,作为该条第一参考定位记录对应的重合度;若存在所对应的重合度高于预设重合度阈值的第一参考定位记录,则终端设备可以在所对应的重合度高于预设重合度阈值的第一参考定位记录中,选取所包括的插入时间戳最靠后的第一参考定位记录,作为目标定位记录;若不存在所对应的重合度高于预设重合度阈值的第一参考定位记录,则在多条第一参考定位记录中选取所包括的定位精度最高的第一参考定位记录,作为目标定位记录。

  具体的,终端设备可以先针对每条第一参考定位记录,确定该条第一参考定位记录中的WiFi列表与目标WiFi列表中重合的WiFi标识的数目,作为该条第一参考定位记录对应的重合度。然后,判断是否存在所对应的重合度高于预设重合度阈值的第一参考定位记录,示例性的,可以设置预设重合度阈值为3,相应地,终端设备需要判断是否存在WiFi列表中与目标WiFi列表重合的WiFi标识的数目大于或等于3的第一参考定位记录;若仅存在一条重合度高于预设重合度阈值的第一参考定位记录,则可以直接将该条第一参考定位记录作为目标定位记录;若存在多条重合度高于预设重合度阈值的第一参考定位记录,则可以在这些第一参考定位记录中,确定所包括的插入时间戳最靠后的第一参考定位记录作为目标定位记录;反之,若不存在重合度高于预设重合度阈值的第一参考定位记录,则终端设备可以在多条第一参考定位记录中,选出所包括的定位精度最高的第一参考定位记录作为目标定位记录。

  应理解,在实际应用中,终端设备除了可以通过上述三种实现方式在多条第一参考定位记录中选出目标定位记录外,还可以通过其它实现方式在多条第一参考定位记录中选出目标定位记录,本申请在此不对从多条第一参考定位记录中选出目标定位记录的实现方式做任何限定。

  上述方式先基于基站信息确定第一参考定位记录或者第二参考定位记录,实现在大范围的定位信息参照表中进行初步查找,进而,再基于WiFi信息在已查找到的第一参考定位记录或者第二参考定位记录中进行细致地二次查找,确保最终查找到的目标定位记录的准确性。

  在另一种可能的实现方式中,若终端设备进行离线定位时扫描到的目标网络信息包括目标WiFi信息(即目标WiFi列表),且定位信息参照表中的历史在线定位记录中包括在线定位时依据的WiFi信息(即WiFi列表)和定位结果的定位精度,则终端设备可以直接基于WiFi信息和定位精度,在定位信息参照表中进行细粒度的查找,以确定目标定位记录。

  具体的,终端设备可以针对定位信息参照表中的每条历史在线定位记录,确定该条历史在线定位记录中包括的WiFi信息与目标WiFi信息之间的重合度,作为该条历史在线定位记录对应的重合度;即针对定位信息参照表中的每条历史在线定位记录,终端设备可以确定该条历史在线定位记录中WiFi列表与目标WiFi列表中重合的WiFi标识的数目,作为该条历史在线定位记录对应的重合度。

  进而,在所对应的重合度高于预设重合度阈值、和/或所包括的定位精度高于预设精度阈值的历史在线定位记录中,选取目标定位记录。具体的,终端设备可以在所对应的重合度高于预设重合度阈值的历史在线定位记录中,确定所包括的定位精度最高的历史在线定位记录作为目标定位记录;或者,终端设备可以在所包括的精度阈值高于预设精度阈值的历史在线定位记录中,确定所对应的重合度最高的历史在线定位记录作为目标定位记录;再或者,终端设备可以确定出所对应的重合度高于预设重合度阈值,且所包括的定位精度高于预设精度阈值的历史在线定位记录,若满足该条件的历史在线定位记录仅有一条,则可以直接确定该条历史在线定位记录为目标定位记录,若满足该条件的历史在线定位记录包括多条,在历史在线定位记录中包括插入时间戳的情况下,可以确定插入时间戳最靠后的历史在线定位记录作为目标定位记录。

  当然,在实际应用中,终端设备还可以通过其它方式基于WiFi信息确定目标定位记录,本申请在此不对基于WiFi信息确定目标定位记录的实现方式做任何限定。

  步骤203:确定所述目标定位记录中包括的定位结果作为离线定位结果。

  终端设备确定出目标定位记录后,即可直接将该目标定位记录中包括的定位结果作为此次离线定位的定位结果,即将该目标定位记录中包括的经纬度作为此次离线定位的定位结果。

  考虑到在线定位时产生的定位结果通常比较准确,因此,本申请基于离线定位时终端设备扫描的目标网络信息,在定位信息参照表中查找与该目标网络信息相匹配的历史在线定位记录,并将该次历史在线定位记录中的定位结果作为本次离线定位的定位结果,如此,借助历史在线定位结果的准确性,保证离线定位结果的准确性。此外,由于定位信息参照表中包括的历史在线定位记录通常是在用户经常活动的区域中产生的,因此,基于该定位信息参照表确定离线定位结果时,能够有很大概率匹配到对应的历史定位记录,保证了本申请实施例提供的离线定位方法在实际应用中的实用性。

  为了便于进一步理解本申请实施例提供的离线定位方法,下面对本申请实施例提供的离线定位方法进行整体示例性介绍。

  首先,终端设备需要构建存储在本地的定位信息参照表,该定位信息参照表中包括若干条历史在线定位记录,示例性的,该定位信息参照表中可以包括300条历史在线定位记录。终端设备在将某条新创建的历史在线定位记录存储至定位信息参照表之前,可以将该条历史在线定位记录与定位信息参照表中原本存储的各条历史在线定位记录进行对比,若对比结果表征该条历史在线定位记录与定位信息参照表中原本存储的各条历史在线定位记录之间的差异度均超过预设差异度阈值,则将该条历史在线定位记录存储至定位信息参照表中,反之,若对比结果表征该条历史在线定位记录与定位信息参照表中原本存储的某条历史在线定位记录之间的差异度未超过预设差异度阈值,则终端设备可以根据这两条历史在线定位记录中包括的WiFi列表中WiFi标识的数目,选择将其中一条历史在线定位记录保留在定位信息参照表中。

  需要说明的是,定位信息参照表中存储的每条历史在线定位记录具体可以包括以下字段:

  历史在线定位记录的标识(即历史在线定位记录的id,主键)、基站标识cellid(在线定位时依据的基站的id)、与基站相关的代码串cellkey(由MCC、MNC、LAC等字符串拼接而成)、WiFi列表wifilist(通常转换为json字符串存储)、定位结果location(在线定位时确定的经纬度,通常以字符串形式存储)、定位结果的定位精度accuracy、插入时间戳time(将历史在线定位记录插入定位信息参照表时为该历史在线定位记录配置的时间戳)。

  本申请实施例提供的离线定位方法的实现,依赖于终端设备中的离线定位模块,下面结合图3对该离线定位模块的整体设计进行介绍。

  如图3所示,假设定位信息参照表以队列的形式存在,该队列的容量为300,表征该定位信息参照表可以存储300条历史在线定位记录,每次针对该定位信息参照表进行增加和删除操作时,终端设备都需要操作该队列以控制该定位信息参照表的容量。终端设备针对一次在线定位操作创建出对应的历史在线定位记录后,可以将该新创建的历史在线定位记录存储在缓存队列中,该缓存队列连接离线定位管理入口。将该新创建的历史在线定位记录插入定位信息参照表对应的队列时,可以先确定是否能够成功插入,应理解,当定位信息参照表对应的队列容量已满时通常无法成功插入新的历史在线定位记录,此时,需要删除该定位信息参照表对应的队列中插入时间戳最靠前的节点,即将定位信息参照表中最先插入的历史在线定位记录删除。

  可选的,本申请实施例提供的方法在完成离线定位后,还可以请求获取离线定位的定位结果,并对离线定位的定位结果进行处理,构建用于存储离线定位记录的队列。具体的,构建该用于存储离线定位记录的队列时,可以针对该队列进行离线定位记录的插入操作、离线定位记录的删除操作、离线记录结果的获取操作以及离线定位记录的查询操作,这些操作与上文中针对定位信息参照表对应的队列所执行的操作相类似,此处不再赘述。应理解,在实际应用中,该用于存储离线定位记录的队列也可以在离线定位的过程中提供相关参考信息。

  在实际应用中,定位信息参照表对应的队列和用于存储离线定位记录的队列实质上对应的都是数据库,相应地,本申请对于数据库所执行的操作具体包括插入操作、删除操作和查询操作。

  接下来,结合图4所示的流程示意图,对本申请实施例提供的离线定位时在定位信息参照表中的检索策略进行示例性介绍。

  具体的,终端设备进行离线定位时可以扫描获得周围的目标基站信息(包括目标基站的标识和与目标基站相关的代码串)以及目标WiFi信息(包括由扫描到的WiFi标识组成的目标WiFi列表)。

  进而,终端设备可以先基于目标基站的标识和与目标基站相关的代码串,在定位信息参照表中检索历史在线定位记录,若在定位信息参照表中检索到同时包括目标基站的标识和与目标基站相关的代码串的历史在线定位记录,则进一步判断所检索到的同时包括目标基站的标识和与目标基站相关的代码串的历史在线定位记录是否仅有一条,若仅有一条,则直接将该条历史在线定位记录中的定位结果,作为此次离线定位的结果,若存在多条,则基于检索到的历史在线定位记录中的WiFi信息和目标WiFi信息进行进一步的检索。

  若没有在定位信息参照表中检索到同时包括目标基站的标识和与目标基站相关的代码串的历史在线定位记录,则只使用与目标基站相关的代码串在定位信息参照表中进行检索,若没有在定位信息参照表中检索到包括与目标基站相关的代码串的历史在线定位记录,则返回无法离线定位的结果。若在定位信息参照表中检索到包括与目标基站相关的代码串的历史在线定位记录,则进一步判断所检索到的历史在线定位记录是否仅有一条,若仅有一条,则直接将该条历史在线定位记录中的定位结果,作为此次离线定位的结果,若存在多条,则基于检索到的历史在线定位记录中的WiFi信息和目标WiFi信息进行进一步的检索。

  具体基于检索到的历史在线定位记录中的WiFi信息和目标WiFi信息进行进一步的检索时,终端设备可以针对所检索到的每条历史在线定位记录,确定该条历史在线定位记录中包括的WiFi列表与目标WiFi列表中匹配的WiFi标识的数量,作为该条历史在线定位记录对应的重合度。进而,判断是否存在所对应的重合度大于预设重合度阈值(示例性的,可以为3)的历史在线定位记录,若存在,则在这些重合度大于预设重合度阈值的历史在线定位记录中,选出重合度最高的历史在线定位记录,将该历史在线定位记录中的定位结果作为此次离线定位的结果,若同时存在多条重合度最高的历史在线定位记录,则在这多条历史在线定位记录中查找插入时间戳最靠后的历史在线定位记录,将该历史在线定位记录中的定位结果作为此次离线定位的结果。若不存在所对应的重合度大于预设重合度阈值的历史在线定位记录,则在所检索到的各条历史在线定位记录中选取定位精度最高的历史在线定位记录,将该历史在线定位记录中的定位结果作为此次离线定位的结果,若同时存在多条定位精度最高的历史在线定位记录,则在这多条历史在线定位记录中查找插入时间戳最靠后的历史在线定位记录,将该历史在线定位记录中的定位结果作为此次离线定位的结果。

  针对上文描述的离线定位方法,本申请还提供了对应的离线定位装置,以使上述离线定位方法在实际中的应用以及实现。

  参见图5,图5为上文图2所示的离线定位方法对应的一种离线定位装置500的结构示意图,该离线定位装置500包括:

  扫描模块501,用于扫描获得目标网络信息;所述目标网络信息包括目标基站信息、目标WiFi信息中的至少一个;

  查找模块502,用于在定位信息参照表中查找与所述目标网络信息匹配的历史在线定位记录,作为目标定位记录;所述定位信息参照表中包括多条历史在线定位记录,每条所述历史在线定位记录包括一次在线定位所依据的网络信息以及此次在线定位的定位结果,所述网络信息包括基站信息、WiFi信息中的至少一个;

  确定模块503,用于确定所述目标定位记录中包括的定位结果作为离线定位结果。

  可选的,所述目标网络信息包括目标基站信息,所述目标基站信息包括扫描到的目标基站的标识以及与所述目标基站相关的代码串;所述历史在线定位记录中包括基站信息,所述基站信息包括在线定位时依据的基站的标识以及与所述基站相关的代码串;所述代码串由移动国家代码MCC、移动网络号码MNC和位置区域码LAC拼接而成;则所述查找模块502包括:

  第一查找单元,用于在所述定位信息参照表中查找包括所述目标基站的标识和与所述目标基站相关的代码串的历史在线定位记录,作为第一参考定位记录;

  第一确定单元,用于若在所述定位信息参照表中查找到所述第一参考定位记录,则根据所述第一参考定位记录确定所述目标定位记录;

  第二查找单元,用于若未在所述定位信息参照表中查找到所述第一参考定位记录,则在所述定位信息参照表中查找包括与所述目标基站相关的代码串的历史在线定位记录,作为第二参考定位记录;

  第二确定单元,用于若在所述定位信息参照表中查找到所述第二参考定位记录,则根据所述第二参考定位记录确定所述目标定位记录。

  可选的,所述目标网络信息包括目标WiFi信息,所述目标WiFi信息为目标WiFi列表,所述目标WiFi列表中包括扫描到的目标WiFi的标识;所述历史在线定位记录中包括WiFi信息,所述WiFi信息为在线定位时依据的WiFi列表,所述WiFi列表中包括在线定位时扫描到的WiFi的标识;

  则所述第一确定单元包括:

  第一确定子单元,用于当所述第一参考定位记录包括一条时,确定所述第一参考定位记录为所述目标定位记录;

  第二确定子单元,用于当所述第一参考定位记录包括多条时,根据所述目标WiFi信息和多条所述第一参考定位记录中包括的WiFi信息,在多条所述第一参考定位记录中选出所述目标定位记录;

  则所述第二确定单元包括:

  第三确定子单元,用于当所述第二参考定位记录包括一条时,确定所述第二参考定位记录为所述目标定位记录;

  第四确定子单元,用于当所述第二参考定位记录包括多条时,根据所述目标WiFi信息和多条所述第二参考定位记录中包括的WiFi信息,在多条所述第二参考定位记录中选出所述目标定位记录。

  可选的,所述第二确定子单元具体用于:

  针对每条所述第一参考定位记录,确定所述第一参考定位记录中包括的WiFi信息与所述目标WiFi信息之间的重合度,作为所述第一参考定位记录对应的重合度;

  确定重合度最高的所述第一参考定位记录,作为所述目标定位记录。

  可选的,所述历史在线定位记录中还包括所述定位结果对应的定位精度;则所述第二确定子单元具体用于:

  在多条所述第一参考定位记录中,选取所包括的定位精度最高的所述第一参考定位记录,作为所述目标定位记录。

  可选的,所述历史在线定位记录中还包括所述定位结果对应的定位精度和插入时间戳;则所述第二确定子单元具体用于:

  针对每条所述第一参考定位记录,确定所述第一参考定位记录中包括的WiFi信息与所述目标WiFi信息之间的重合度,作为所述第一参考定位记录对应的重合度;

  若存在重合度高于预设重合度阈值的所述第一参考定位记录,则在重合度高于所述预设重合度阈值的所述第一参考定位记录中,选取所包括的插入时间戳最靠后的所述第一参考定位记录,作为所述目标定位记录;

  若不存在重合度高于所述预设重合度阈值的所述第一参考定位记录,则在多条所述第一参考定位记录中,选取所包括的定位精度最高的所述第一参考定位记录,作为所述目标定位记录。

  可选的,所述目标网络信息包括目标WiFi信息,所述目标WiFi信息为目标WiFi列表,所述目标WiFi列表中包括扫描到的目标WiFi的标识;所述历史在线定位记录中包括WiFi信息,所述WiFi信息为在线定位时依据的WiFi列表,所述WiFi列表中包括在线定位时扫描到的WiFi的标识;所述历史在线定位记录中还包括所述定位结果对应的定位精度;

  则所述查找模块502具体用于:

  针对所述定位信息参照表中的每条所述历史在线定位记录,确定所述历史在线定位记录中包括的WiFi信息与所述目标WiFi信息之间的重合度,作为所述历史在线定位记录对应的重合度;

  在满足目标条件的所述历史在线定位记录中选取所述目标定位记录;所述目标条件包括以下至少一种:所对应的重合度高于预设重合度阈值、所包括的定位精度高于预设精度阈值。

  考虑到在线定位时产生的定位结果通常比较准确,因此,本申请基于离线定位时终端设备扫描的目标网络信息,在定位信息参照表中查找与该目标网络信息相匹配的历史在线定位记录,并将该次历史在线定位记录中的定位结果作为本次离线定位的定位结果,如此,借助历史在线定位结果的准确性,保证离线定位结果的准确性。此外,由于定位信息参照表中包括的历史在线定位记录通常是在用户经常活动的区域中产生的,因此,基于该定位信息参照表确定离线定位结果时,能够有很大概率匹配到对应的历史定位记录,保证了本申请实施例提供的离线定位装置在实际应用中的实用性。

  本申请实施例还提供了一种用于进行离线定位的终端设备,下面将从硬件实体化的角度对本申请实施例提供的终端设备进行介绍。

  参见图6,图6是本申请实施例提供的终端设备的结构示意图。如图6所示,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请实施例方法部分。该终端可以为包括手机、平板电脑、个人数字助理(英文全称:PersonalDigital Assistant,英文缩写:PDA)、销售终端(英文全称:Point of Sales,英文缩写:POS)、车载电脑等任意终端设备,以终端为智能手机为例:

  图6示出的是与本申请实施例提供的终端相关的智能手机的部分结构的框图。参考图6,智能手机包括:射频(英文全称:Radio Frequency,英文缩写:RF)电路610、存储器620、输入单元630、显示单元640、传感器650、音频电路660、无线保真(英文全称:wirelessfidelity,英文缩写:WiFi)模块670、处理器680、以及电源690等部件。本领域技术人员可以理解,图6中示出的智能手机结构并不构成对智能手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

  存储器620可用于存储软件程序以及模块,处理器680通过运行存储在存储器620的软件程序以及模块,从而执行智能手机的各种功能应用以及数据处理。存储器620可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据智能手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器620可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

  处理器680是智能手机的控制中心,利用各种接口和线路连接整个智能手机的各个部分,通过运行或执行存储在存储器620内的软件程序和/或模块,以及调用存储在存储器620内的数据,执行智能手机的各种功能和处理数据,从而对智能手机进行整体监控。可选的,处理器680可包括一个或多个处理单元;优选的,处理器680可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器680中。

  在本申请实施例中,该终端所包括的处理器680还具有以下功能:

  扫描获得目标网络信息;所述目标网络信息包括目标基站信息、目标WiFi信息中的至少一个;

  在定位信息参照表中查找与所述目标网络信息匹配的历史在线定位记录,作为目标定位记录;所述定位信息参照表中包括多条历史在线定位记录,每条所述历史在线定位记录包括一次在线定位所依据的网络信息以及此次在线定位的定位结果,所述网络信息包括基站信息、WiFi信息中的至少一个;

  确定所述目标定位记录中包括的定位结果作为离线定位结果。

  可选的,所述处理器680还用于执行本申请实施例提供的离线定位方法的任意一种实现方式的步骤。

  本申请实施例还提供一种计算机可读存储介质,用于存储计算机程序,该计算机程序用于执行前述各个实施例所述的一种离线定位方法中的任意一种实施方式。

  本申请实施例还提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行前述各个实施例所述的一种离线定位方法中的任意一种实施方式。

  所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

  在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

  所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

  另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

  所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文全称:Read-OnlyMemory,英文缩写:ROM)、随机存取存储器(英文全称:Random Access Memory,英文缩写:RAM)、磁碟或者光盘等各种可以存储计算机程序的介质。

  应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。

  以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

《一种离线定位方法、装置、设备及存储介质.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)