楼栋定位方法、装置、电子设备及存储介质与流程

文档序号:31716081发布日期:2022-10-04 21:52阅读:35来源:国知局
楼栋定位方法、装置、电子设备及存储介质与流程

1.本技术涉及定位技术领域,具体涉及一种楼栋定位方法、装置、电子设备及存储介质。


背景技术:

2.随着用户需求增长,终端设备的定位功能不仅需要普通的经纬度定位信息,如果用户处于室内,终端设备还需要确定当前所在的室内位置等其它信息。而不同的楼栋有不同的楼层面积,为了终端设备能够准确的计算当前所在的室内位置,需要先对当前所在的楼栋进行准确的定位,在确定楼栋的情况下和在不确定楼栋的情况下,定位当前所在的室内位置的准确度完全不同。因此,准确地定位到当前所在楼栋,能够起到至关重要的作用。


技术实现要素:

3.本技术实施例公开了一种楼栋定位方法、装置、电子设备及存储介质,能够对终端设备当前所在的楼栋进行定位,并且可以提高楼栋定位的准确性。
4.本技术实施例公开了一种楼栋定位方法,应用于终端设备,所述方法包括:
5.通过全球定位系统gps确定所述终端设备的当前位置信息;
6.采集所述当前位置信息对应的第一无线网络指纹数据;其中,所述第一无线网络指纹数据包括至少一个第一无线网络指纹;
7.根据所述当前位置信息,从数据库中获取与所述当前位置信息的距离小于第一距离阈值的各个附近楼栋对应的第二无线网络指纹数据,所述第二无线网络指纹数据包括至少一个第二无线网络指纹;
8.对所述第一无线网络指纹数据与所述各个附近楼栋对应的第二无线网络指纹数据进行聚类分析,以确定所述当前位置信息对应的目标楼栋。
9.在一个实施例中,所述对所述第一无线网络指纹数据与所述各个附近楼栋对应的第二无线网络指纹数据进行聚类分析,以确定所述当前位置信息对应的目标楼栋,包括:
10.对所述第一无线网络指纹数据与所述各个附近楼栋对应的第二无线网络指纹数据进行聚类分析;
11.若所述各个附近楼栋对应的第二无线网络指纹数据中存在与所述第一无线网络指纹数据聚类成功的第二无线网络指纹数据,则将所述聚类成功的第二无线网络指纹数据对应的附近楼栋确定为所述当前位置信息对应的目标楼栋;
12.若所述各个附近楼栋对应的第二无线网络指纹数据中不存在与所述第一无线网络指纹数据聚类成功的第二无线网络指纹数据,则确定所述当前位置信息对应的目标楼栋为新楼栋。
13.在一个实施例中,所述对所述第一无线网络指纹数据与所述各个附近楼栋对应的第二无线网络指纹数据进行聚类分析,包括:
14.分别计算各个所述第一无线网络指纹与第一附近楼栋对应的第二无线网络指纹
数据包含的各个第二无线网络指纹之间的第一距离,所述第一附近楼栋为任一所述附近楼栋;
15.根据各个所述第一无线网络指纹对应的第一距离,判断各个所述第一无线网络指纹是否与所述各个第二无线网络指纹匹配,并将匹配成功的第一无线网络指纹与第二无线网络指纹作为匹配指纹对;
16.对各个所述匹配指纹对进行筛选,并确定筛选后的指纹对数量;
17.若所述筛选后的指纹对数量大于第一数量阈值,则确定所述第一无线网络指纹数据与所述第二无线网络指纹数据聚类成功。
18.在一个实施例中,所述分别计算各个所述第一无线网络指纹与第一附近楼栋对应的第二无线网络指纹数据包含的各个第二无线网络指纹之间的第一距离,包括:
19.确定目标第一无线网络指纹与目标第二无线网络指纹中相同的无线接入点对应的相同数量;其中,所述目标第一无线网络指纹为所述第一无线网络数据中的任一第一无线网络指纹,所述目标第二无线网络指纹为所述第一附近楼栋对应的第二无线网络数据中的任一第二无线网络指纹;
20.若所述相同数量大于第二数量阈值,则根据所述相同的无线接入点分别对应的第一信号强度及第二信号强度,计算所述目标第一无线网络指纹与目标第二无线网络指纹之间的第一距离;
21.若所述相同数量不大于所述第二数量阈值,则确定所述目标第一网络指纹与目标第二无线网络指纹之间的第一距离为远距离值。
22.在一个实施例中,所述根据各个所述第一无线网络指纹对应的第一距离,判断各个所述第一无线网络指纹是否与所述第二无线网络指纹数据包含的各个第二无线网络指纹匹配,包括:
23.将各个所述第一无线网络指纹对应的第一距离与第二距离阈值进行比较;其中,所述第二距离阈值小于所述远距离值;
24.若所述第一无线网络指纹对应的第一距离小于所述第二距离阈值,则确定小于所述第二距离阈值的第一距离对应的第二无线网络指纹与第一无线网络指纹匹配;
25.若所述第一无线网络指纹对应的第一距离不小于所述第二距离阈值,则确定不小于所述第二距离阈值的第一距离对应的第二无线网络指纹与第一无线网络指纹不匹配。
26.在一个实施例中,在所述根据所述当前位置信息,从数据库中获取与所述当前位置信息的距离小于第一距离阈值的各个附近楼栋对应的第二无线网络指纹数据之前,所述方法还包括:
27.根据所述当前位置信息,判断是否存在与所述当前位置信息的距离小于第一距离阈值的附近楼栋;
28.若不存在所述附近楼栋,则将所述当前位置信息以及所述当前位置信息对应的第一无线网络指纹数据保存到数据库中,并确定所述当前位置信息对应的目标楼栋为新楼栋;
29.若存在所述附近楼栋,则执行所述根据所述当前位置信息,从数据库中获取与所述当前位置信息的距离小于第一距离阈值的各个附近楼栋对应的第二无线网络指纹数据的步骤。
30.在一个实施例中,所述通过全球定位系统gps确定所述终端设备的当前位置信息,包括:
31.若当前时刻的gps信号强度不大于强度阈值,则获取全球定位系统gps在所述当前时刻之前采集的多个历史gps定位坐标,以及各个所述历史gps定位坐标对应的gps信号强度;
32.从所述多个历史gps定位坐标中,选择gps信号强度大于强度阈值的历史gps定位坐标,并根据选择的历史gps定位坐标确定所述终端设备的当前位置信息。
33.本技术实施例公开了一种楼栋定位装置,包括:
34.gps定位模块,用于通过全球定位系统gps确定所述终端设备的当前位置信息;
35.数据采集模块,用于采集所述当前位置信息对应的第一无线网络指纹数据;其中,所述第一无线网络指纹数据包括至少一个第一无线网络指纹;
36.数据获取模块,用于根据所述当前位置信息,从数据库中获取与所述当前位置信息的距离小于第一距离阈值的各个附近楼栋对应的第二无线网络指纹数据,所述第二无线网络指纹数据包括至少一个第二无线网络指纹;
37.聚类分析模块,用于对所述第一无线网络指纹数据与所述各个附近楼栋对应的第二无线网络指纹数据进行聚类分析,以确定所述当前位置信息对应的目标楼栋。
38.本技术实施例公开了一种电子设备,包括:
39.存储有可执行程序代码的存储器;
40.与所述存储器耦合的处理器;
41.所述处理器调用所述存储器中存储的所述可执行程序代码,执行上述任一实施例所述的方法。
42.本技术实施例公开了一种计算机可读存储介质,所述计算机可读存储介质存储计算机程序,其中,所述计算机程序在被处理器执行时,使得所述处理器执行上述任一实施例所述的方法。
43.本技术实施例公开了一种楼栋定位方法、装置、电子设备及存储介质,能够通过gps确定终端设备的当前位置信息,并采集当前位置信息对应的第一无线网络指纹数据,根据当前位置信息,终端设备可以从数据库中获取与当前位置信息的距离小于第一距离阈值的各个附近楼栋对应的第二无线网络指纹数据,从而对采集到的第一无线指纹数据和获取到的第二无线网络指纹数据进行聚类分析,以确定当前位置信息对应的目标楼栋,因此能够对终端设备当前的楼栋进行定位,并且通过聚类分析的方法确定当前位置信息对应的目标楼栋,可以提高楼栋定位的准确性。
附图说明
44.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例中所需要使用的附图进行简单的介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
45.图1是本技术实施例公开的一种楼栋定位方法的应用场景示意图;
46.图2是本技术实施例公开的一种楼栋定位方法的流程示意图;
47.图3是本技术实施例公开的另一种楼栋定位方法的流程示意图;
48.图4是本技术实施例公开的对第一无线网络指纹数据与各个附近楼栋对应的第二无线网络指纹数据进行聚类分析的流程示意图;
49.图5是本技术公开的一种楼栋定位装置的模块化示意图;
50.图6是本技术实施例公开的一种电子设备的结构框图。
具体实施方式
51.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
52.需要说明的是,本技术实施例的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
53.可以理解,本技术所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本技术的范围的情况下,可以将第一无线网络指纹数据称为第二无线网络指纹数据,且类似地,可将第二无线网络指纹数据称为第一无线网络指纹数据。第一无线网络指纹数据和第二无线网络指纹数据两者都是无线网络指纹数据,但其不是同一无线网络指纹数据。
54.在相关技术中,楼栋定位的方法主要是基于gps(global positioning system,全球定位系统)坐标位置,通过采集终端设备进入楼栋时的gps坐标作为楼栋的坐标,以对楼栋进行区分。而gps定位精度受环境的影响较大,当终端设备处于一个较为空旷的环境时,gps定位精度可以达到米级,即gps坐标的误差仅为几米;当终端设备所处的环境不足够空旷时,gps定位精度较低,可能可以达到十几米、二十几米,使用该gps定位精度对应的gps定位坐标无法准确的对楼栋进行定位。
55.本技术实施例公开了一种楼栋定位方法、装置、电子设备及存储介质,能够对终端设备当前所在的楼栋进行定位,并且可以提高楼栋定位的准确性。
56.以下将结合附图进行详细描述。
57.如图1所示,图1是本技术实施例公开的一种楼栋定位方法的应用场景示意图,该场景下可以包括终端设备10、楼栋20、楼栋30,其中,终端设备10可包括但不限于手机、平板电脑、可穿戴设备、笔记本电脑、pc(personal computer,个人计算机)等。此外,上述终端设备10的操作系统可包括但不限于android(安卓)操作系统、ios操作系统、symbian(塞班)操作系统、blackberry(黑莓)操作系统、windows phone8操作系统等,本技术实施例不作限定。
58.终端设备10当前时刻位于楼栋20之中,楼栋20可以包括6个楼层,终端设备10位于第3层,由于位于楼栋20中间,终端设备10的gps信号强度较低,通过gps确定终端设备10的当前位置信息不能直接用于确定终端设备10所处的楼栋20。虽然终端设备10获得的当前位
置信息的精度较低,但是楼栋20与该当前位置信息的距离依然处于一定范围内,例如,当前位置信息的精度为20米,即当前位置信息的误差可以达到20米,所以楼栋20与该当前位置信息的距离可能达到20米。
59.而楼栋20中通常有无线网络,在终端设备10处于楼栋20内部时,终端设备10可以采集到楼栋20内部的无线网络的无线网络指纹数据,因此可以通过采集的无线网络指纹数据结合当前位置信息共同确定终端设备10当前所处的楼栋20,其中,该无线网络可以包括但不限于wi-fi、蓝牙等,本技术实施例对此不作限制。
60.具体的,终端设备10可以根据当前位置信息从数据库中确定第一距离阈值内的附近楼栋,楼栋20、楼栋30都可以处于该附近楼栋之中,再对终端设备10采集到的无线网络指纹数据与各个附近楼栋对应的无线网络指纹数据进行聚类分析,可以在所有附近楼栋中确定楼栋20。
61.可选的,该数据库可以是终端设备10的本地数据库,也可以是与终端设备10建立连接的云端数据库,对此不作限制。若数据库为本地数据库,则终端设备10可以根据当前位置信息直接获取处于第一距离阈值内的附近楼栋对应的位置信息和无线网络指纹数据;若数据库为与终端设备10建立连接的云端数据库,终端设备10可以将当前位置信息发送至云端,云端可以根据该当前位置信息确定处于一定范围内的楼栋,终端设备可以接收到云端发送的处于第一距离阈值内的附近楼栋对应的无线网络指纹数据。
62.需要说明的是,对处于楼栋20的终端设备10进行楼栋定位只是本技术实施例公开的一种场景,该楼栋定位方法也可以适用于对其它位置的终端设备进行楼栋定位的场景。
63.如图2所示,图2是本技术实施例公开的一种楼栋定位方法的流程示意图,该楼栋定位方法可以应用于上述实施例中的终端设备,该楼栋定位方法可以包括:
64.步骤210,通过全球定位系统gps确定终端设备的当前位置信息。
65.终端设备可以通过gps确定终端设备的当前位置信息。其中,gps信号强度影响当前位置信息的准确性,终端设备可以根据gps信号强度决定获取当前位置信息的方式。可选地,终端设备可以获取gps信号强度大于强度阈值的gps定位坐标,通过该大于强度阈值的gps定位坐标确定当前位置信息。其中,gps是指具备全球定位功能的系统,gps可以包括美国的全球卫星导航系统、欧洲的“伽利略”系统、俄罗斯的“格洛纳斯”系统以及中国的“北斗”系统。
66.作为一种可选的实施方式,若终端设备因在当前时刻的gps信号强度太弱导致无法获取到gps定位坐标,则可以将离当前时刻最近的一个历史gps定位坐标作为当前时刻对应的当前位置信息,该历史gps定位坐标对应的gps信号强度可以是大于强度阈值,也可以是不大于强度阈值。实施该实施方式,终端设备能够在无法获取到gps定位坐标时也能对楼栋进行定位,增大了楼栋定位方法的适用范围。
67.在一个实施例中,若当前时刻的gps信号强度不大于强度阈值,则终端设备获取全球定位系统gps在当前时刻之前采集的多个历史gps定位坐标,以及各个历史gps定位坐标对应的gps信号强度;终端设备可以从多个历史gps定位坐标中,选择gps信号强度大于强度阈值的历史gps定位坐标,并根据选择的历史gps定位坐标确定终端设备的当前位置信息。
68.其中,终端设备在进入楼栋前的gps信号强度通常都大于强度阈值,因此,若当前时刻的gps信号强度不大于强度阈值,可说明终端设备进入楼栋等室内场景,终端设备可以
选择进入楼栋前的且gps信号强度大于强度阈值的历史gps定位坐标,根据选择的历史gps定位坐标确定一个综合历史gps定位坐标,并将该综合历史gps定位坐标作为当前位置信息。确定综合历史gps定位坐标的方式可以是通过选择的历史gps定位坐标的平均值、中值等方式确定,例如,终端设备选择的历史gps定位坐标可以包括(50,50)、(51,51)以及(55,55),若通过历史gps定位坐标的平均值确定综合历史gps定位坐标,则综合历史gps定位坐标为(52,52),若通过历史gps定位坐标的中值确定综合历史gps定位坐标,则综合历史gps定位坐标为(51,51)。实施该实施例,终端设备可以通过多个历史gps定位坐标确定当前位置信息,提高当前位置信息的准确性,并且可以在后续步骤根据当前位置信息获取附近楼栋中,提高获取到的附近楼栋包含当前位置信息对应的目标楼栋的可能性,从而提高楼栋定位的准确性。
69.步骤220,采集当前位置信息对应的第一无线网络指纹数据;其中,第一无线网络指纹数据包括至少一个第一无线网络指纹。
70.其中,第一无线网络指纹数据可以包括至少一个无线网络指纹,无线网络指纹包括但不限于基于wi-fi的位置指纹、基于蓝牙的位置指纹以及基于rfid(radio frequency identification,射频识别)的位置指纹,本技术实施例对此不作限制。终端设备可以采集当前位置信息对应的第一无线网络指纹数据,而终端设备的当前位于目标楼栋之中,所以该第一无线网络指纹数据与目标楼栋的无线网络指纹数据之间的距离可以不超过第二距离阈值。
71.作为一种可选的实施方式,终端设备在采集当前位置信息对应的第一无线网络指纹数据时,若不存在第一无线网络指纹,则输出提示信息,以提示当前位置不存在无线网络,从而无法通过无线网络数据对当前位置进行定位。终端设备在检测到不存在无线网络的楼栋时,可以再通过当前位置信息与其它数据共同确定目标楼栋。例如,终端设备可以通过分析在当前时刻对应的当前时间段的历史移动轨迹,确定在当前时间段用户常去的各个常用历史楼栋,将各个常用历史楼栋结合当前位置信息确定当前可能所处的楼栋,终端设备也可以通过与周围其它电子设备建立连接,通过与其它电子设备通信,确定其它电子设备的位置信息,再通过其它电子设备的位置信息结合当前位置信息确定当前所处的楼栋。实施该实施方式,终端设备可以通过多种方式确定目标楼栋,提高楼栋定位方法的适用性。
72.步骤230,根据当前位置信息,从数据库中获取与当前位置信息的距离小于第一距离阈值的各个附近楼栋对应的第二无线网络指纹数据,第二无线网络指纹数据包括至少一个第二无线网络指纹。
73.其中,数据库中可以包括多个楼栋的位置信息、每个楼栋对应的无线网络指纹数据,以及每个楼栋的楼栋名称等信息,该数据库可以在使用终端设备的过程中不断更新数据。终端设备根据当前位置信息,在数据库中对附近楼栋进行查询,以查询到在距离该当前位置信息小于第一距离阈值的范围内存在的所有附近楼栋,并且获取到各个附近楼栋对应的第二无线网络指纹数据。例如,第一距离阈值为20米,终端设备可以在数据库中确定与当前位置信息的距离小于20米的楼栋作为附近楼栋,从而获取各个附近楼栋对应的第二无线网络指纹数据。
74.作为一种可选的实施方式,终端设备可以根据gps信号强度确定第一距离阈值的大小。由于gps信号强度影响gps定位坐标的精度,终端设备可以调整第一距离阈值与gps信
号强度成反比。gps信号强度越高,说明gps定位坐标的精度越小,第一距离阈值也越小,gps信号强度越低,说明gps定位坐标的精度越大,第一距离阈值也越大。实施该实施方式,可以提高获取的附近楼栋中包括当前位置信息对应的目标楼栋的可能性。
75.在一个实施例中,终端设备可以根据当前位置信息,判断是否存在于当前位置信息的距离小于第一距离阈值的附近楼栋;若不存在附近楼栋,则将当前位置信息以及当前位置信息对应的第一无线网络指纹数据保存到数据库,并确定当前位置信息对应的目标楼栋为新楼栋;若存在附近楼栋,则根据当前位置信息,从数据库中获取各个附近楼栋对应的第二无线网络指纹数据。
76.其中,终端设备在确定当前位置信息之后,需要计算数据库中存储的各个楼栋的位置信息与当前位置信息之间的距离,确定该各个楼栋的位置信息与当前位置信息之间的距离是否小于第一距离阈值,若存在与当前位置信息之间的距离小于第一距离阈值的附近楼栋,则可获取该附近楼栋对应的第二无线网络指纹数据。若不存在与当前位置信息之间的距离小于第一距离阈值的附近楼栋,说明终端设备当前所处的楼栋的信息未存储在数据库中,即该所在的楼栋是个新楼栋,则终端设备将当前位置信息以及当前位置信息对应的第一无线网络指纹数据等数据保存到数据库,并确定当前位置信息对应的目标楼栋为新楼栋。实施该实施例,终端设备能够及时更新数据库的数据,保证数据库数量的有效性及完整性,提高楼栋定位的准确性。
77.作为一种可选的实施方式,保存多个楼栋的位置信息和多个楼栋对应的无线网络指纹数据的数据库可以为云端的数据库,也可以为其它与终端设备建立连接的电子设备的数据库。若不存在当前位置信息对应的附近楼栋,终端设备将当前位置信息以及当前位置信息对应的第一无线网络指纹数据发送到云端或其它电子设备,以使得云端或电子设备将当前位置信息以及当前位置信息对应的第一无线网络指纹数据保存到数据库,终端设备还可以接收到云端或电子设备发送的保存信息。若保存信息指示数据保存成功,则终端设备输出提示信息,以提示当前位置信息对应的目标楼栋为新楼栋,若保存信息指示数据保存失败,则终端设备再次发送当前位置信息以及当前位置信息对应的第一无线网络指纹数据到云端或电子设备。实施该实施方式,终端设备可以不需要将数据库保存在本地,保留终端设备更多的存储空间。
78.步骤240,对第一无线网络指纹数据与各个附近楼栋对应的第二无线网络指纹数据进行聚类分析,以确定当前位置信息对应的目标楼栋。
79.终端设备可以对第一无线网络指纹数据与各个附近楼栋对应的第二无线网络指纹数据进行聚类分析,若存在附近楼栋对应的第二无线网络指纹数据可以与当前位置信息对应的第一无线网络指纹数据成功聚为一类,则说明当前位置信息与该附近楼栋之间的距离非常接近,从而可以确定当前位置信息对应的目标楼栋与该附近楼栋为同一楼栋。终端设备通过聚类分析可以将第一无线网络指纹数据与匹配的第二无线网络指纹数据聚为一类,从而可以确定匹配到的第二无线网络指纹数据对应的附近楼栋与当前位置信息对应的目标楼栋为同一个楼栋,即终端设备可以确定当前位置信息对应的目标楼栋。例如,第一无线网络指纹数据可以为a,各个附近楼栋对应的第二无线网络指纹数据可以包括b、c、d,终端设备通过聚类分析可以将a与c聚类一类,所以c对应的附近楼栋与当前位置信息对应的目标楼栋为同一个楼栋,即终端设备可以确定当前位置信息对应的目标楼栋为c。
80.在本技术实施例中,能够通过gps确定终端设备的当前位置信息,并采集当前位置信息对应的第一无线网络指纹数据,根据当前位置信息,终端设备可以从数据库中获取与当前位置信息的距离小于第一距离阈值的各个附近楼栋对应的第二无线网络指纹数据,从而对采集到的第一无线指纹数据和获取到的第二无线网络指纹数据进行聚类分析,以确定当前位置信息对应的目标楼栋,因此能够对终端设备当前的楼栋进行定位,并且通过聚类分析的方法确定当前位置信息对应的目标楼栋,可以提高楼栋定位的准确性。
81.如图3所示,图3是本技术实施例公开的另一种楼栋定位方法的流程示意图,该楼栋定位方法可以应用于上述实施例中的终端设备,该方法包括:
82.步骤310,通过全球定位系统gps确定终端设备的当前位置信息。
83.步骤320,采集当前位置信息对应的第一无线网络指纹数据;其中,第一无线网络指纹数据包括至少一个第一无线网络指纹。
84.步骤330,根据当前位置信息,从数据库中获取与当前位置信息的距离小于第一距离阈值的各个附近楼栋对应的第二无线网络指纹数据,第二无线网络指纹数据包括至少一个第二无线网络指纹。
85.步骤310~330与上述实施例中的步骤210~230相同,此处不再赘述。
86.步骤340,对第一无线网络指纹数据与各个附近楼栋对应的第二无线网络指纹数据进行聚类分析,以判断各个附近楼栋对应的第二无线网络指纹数据中是否存在与第一无线网络指纹数据聚类成功的第二无线网络指纹数据,若是,则执行步骤350,若否,则执行步骤360。
87.终端设备可以对第一无线网络指纹数据与各个附近楼栋对应的第二无线网络指纹数据进行聚类分析,并获得各个第二无线网络指纹数据与第一无线网络指纹数据的聚类分析结果,聚类分析结果可以说明各个第二无线网络指纹数据是否与第一无线网络指纹数据聚类成功,若各个聚类分析结果中存在聚类成功的结果,则附近楼栋中包括当前位置信息对应的目标楼栋,终端设备执行步骤350,若各个聚类分析结果中不存在聚类成功的结果,说明终端设备当前所处的目标楼栋不属于任一附近楼栋,则附近楼栋中不包括当前位置信息对应的目标楼栋,终端设备执行步骤360。
88.步骤350,将聚类成功的第二无线网络指纹数据对应的附近楼栋确定为当前位置信息对应的目标楼栋。
89.若各个附近楼栋对应的第二无线网络指纹数据中存在与第一无线网络指纹数据聚类成功的第二无线网络指纹数据,则终端设备可以将聚类成功的第二无线网络指纹数据对应的附近楼栋确定为当前位置信息对应的目标楼栋。在一些实施例中,若数据库中存在一个第二无线网络指纹数据与第一无线网络指纹数据聚类成功,则终端设备将该聚类成功的第二无线网络指纹数据对应的附近楼栋确定为当前位置信息对应的目标楼栋。
90.在一些实施例中,若数据库中存在多个第二无线网络指纹数据与第一无线网络指纹数据聚类成功,则将聚类成功的多个第二无线网络指纹数据分别对应的多个附近楼栋合并为一个楼栋。进一步地,终端设备可以将该多个附近楼栋对应的位置信息以及当前位置信息进行综合计算得到综合位置信息,例如将位置信息的平均值作为综合位置信息、将多个位置信息的中值作为综合位置信息等,终端设备可以将合并后的楼栋对应的位置信息确定为该综合位置信息,并将该合并后的楼栋确定为当前位置对应的目标楼栋。例如,第一无
线网络指纹数据为a,与第一无线网络指纹数据聚类成功的第二网络指纹数据包括b、c,b、c对应的位置信息分别为(50,50)、(51,51)、(55,55),位置信息中的第一个值可以为纬度值,位置信息中的第二个值可以为经度值,可以将b、c对应的位置信息的平均值(52,52)作为综合位置信息,也可以将将b、c对应的位置信息的中值(51,51)作为综合位置信息,终端设备可以将合并后的楼栋对应的位置信息确定为(51,51)或(52,52),并将合并后的楼栋确定为当前位置对应的目标楼栋。
91.步骤360,确定当前位置信息对应的目标楼栋为新楼栋。
92.若各个附近楼栋对应的第二无线网络指纹数据中不存在与第一无线网络指纹数据聚类成功的第二无线网络指纹数据,则终端设备可以确定当前位置信息对应的目标楼栋为新楼栋。终端设备也可以将当前位置信息以及当前位置信息对应的第一无线网络指纹数据保存到数据库。
93.在本技术实施例中,终端设备可以通过聚类分析确定数据库中是否存在聚类成功的第二无线网络指纹数据,终端设备可以通过聚类分析获得的结果确定目标楼栋为数据库中的楼栋或新楼栋,并在确定为新楼栋时将目标楼栋的数据保存到数据库中,以增加数据库的数据,使得终端设备可以通过数据库识别更多的楼栋,提高楼栋定位的准确性。
94.如图4所示,图4是本技术实施例公开的对第一无线网络指纹数据与各个附近楼栋对应的第二无线网络指纹数据进行聚类分析的流程示意图。步骤对第一无线网络指纹数据与各个附近楼栋对应的第二无线网络指纹数据进行聚类分析,可以包括以下步骤:
95.步骤410,分别计算各个第一无线网络指纹与第一附近楼栋对应的第二无线网络指纹数据包含的各个第二无线网络指纹之间的第一距离,第一附近楼栋为任一附近楼栋。
96.针对距离终端设备的当前位置信息小于第一距离阈值的各个附近楼栋,可计算每个附近楼栋对应的第二无线网络指纹数据包含的各个第二无线网络指纹与第一无线网络指纹数据中包含的各个第一无线网络指纹的之间第一距离。以各个附近楼栋中的第一附近楼栋为例,其中,第一附近楼栋可为任一附近楼栋,例如,第一无线网络指纹数据为a,第一附近楼栋对应的第二无线网络指纹数据包括b、c,a可以包括第一无线网络指纹a1、第一无线网络指纹a2,b可以包括第二无线网络指纹b1、第二无线网络指纹b2,c可以包括第二无线网络指纹c1、第二无线网络指纹c2,终端设备需要计算a1与b1、b2、c1、c2之间的第一距离,以及a2与b1、b2、c1、c2之间的第一距离。
97.在一个实施例中,第一无线网络指纹包括至少一个第一无线接入点(access point,ap),以及各个第一无线接入点对应的第一信号强度(received signal strength indication,rssi),第二无线网络指纹包括至少一个第二无线接入点,以及各个第二无线接入点对应的第二信号强度。
98.终端设备可以确定目标第一无线网络指纹与目标第二无线网络指纹中相同的无线接入点对应的相同数量;其中,目标第一无线网络指纹为第一无线网络数据中的任一第一无线网络指纹,目标第二无线网络指纹为第一附近楼栋对应的第二无线网络数据中的任一第二无线网络指纹;若相同数量大于第二数量阈值,则根据相同的无线接入点分别对应的第一信号强度及第二信号强度,计算目标第一无线网络指纹与目标第二无线网络指纹之间的第一距离;若相同数量不大于第二数量阈值,则确定目标第一网络指纹与目标第二无线网络指纹之间的第一距离为远距离值。
99.其中,目标第一无线网络指纹为第一无线网络数据中任一第一无线网络指纹,目标第二无线网络指纹为第一附近楼栋对应的第二无线网络数据中任一第二无线网络指纹,终端设备可计算每个第一无线网络指纹和每个第二无线网络指纹之间的第一距离。可获取目标第一无线网络指纹与目标第二无线网络指纹中相同的无线接入点的相同数量,并判断该相同数量是否大于第二数量阈值,若大于第二数量阈值,可说明目标第一无线网络指纹与目标第二无线网络指纹之间存在较多相同的无线接入点,二者较为接近,则可根据该相同的无线接入点分别对应的第一信号强度及第二信号强度,计算目标第一无线网络指纹与目标第二无线网络指纹之间的第一距离。若该相同数量不大于第二数量阈值,则可说明目标第一无线网络指纹与目标第二无线网络指纹之间相同的无线接入点较少,二者距离较远,区别较大,因此直接将第一距离确定为大于第二距离阈值的远距离值,该远距离值为一个固定值,远距离值的大小由相关人员提前设置。通过设置第二数量阈值,可以避免计算无线接入点相同数量较少的第二无线网络指纹,加快确定第一距离的速度。
100.举例进行说明,目标第一无线网络指纹为m,目标第二无线网络指纹为n,终端设备可以确定m和n之间存在相同的4个无线接入点,即相同的无线接入点对应的相同数量为4,m中该4个无线接入点对应的第一信号强度分别为{rssi_m1,rssi_m2,rssi_m3,rssi_m4},n中该4个无线接入点对应的第一信号强度分别为{rssi_n1,rssi_n2,rssi_n3,rssi_n4}。第二数量阈值可以为3,相同数量4大于第三数量阈值3,终端设备可以根据{rssi_m1,rssi_m2,rssi_m3,rssi_m4}和{rssi_n1,rssi_n2,rssi_n3,rssi_n4}计算m与n之间的第一距离,计算的方法如式(1)所示:
[0101][0102]
其中,n表示相同数量4,i表示变量,i包括1、2、3、4。第二数量阈值也可以为5,相同数量4不大于第三数量阈值5,终端设备则确定m与n之间的第一距离为远距离值,远距离值可以为500、1000等,但不限于此。
[0103]
步骤420,根据各个第一无线网络指纹对应的第一距离,判断各个第一无线网络指纹是否与各个第二无线网络指纹匹配,并将匹配成功的第一无线网络指纹与第二无线网络指纹作为匹配指纹对。
[0104]
终端设备可以通过第一无线网络指纹对应的第一距离的大小,判断各个第一无线网络指纹是否与各个第二无线网络指纹匹配,并将匹配成功的第一无线网络指纹与第二无线网络指纹作为匹配指纹对,例如,通过第一无线网络指纹a1与第二无线网络指纹b2之间的第一距离可以判断a1与b2匹配,终端设备可以将(a1,b2)作为匹配指纹对。
[0105]
在一个实施例中,终端设备可以将各个第一无线网络指纹对应的第一距离与第二距离阈值进行比较;其中,第二距离阈值小于远距离值;若第一无线网络指纹对应的第一距离小于第二距离阈值,则确定小于第二距离阈值的第一距离对应的第二无线网络指纹与第一无线网络指纹匹配;若第一无线网络指纹对应的第一距离不小于第二距离阈值,则确定不小于第二距离阈值的第一距离对应的第二无线网络指纹与第一无线网络指纹不匹配。
[0106]
其中,各个第一距离为每个第一无线网络指纹和每个第二无线网络指纹之间的第一距离,每个第一距离对应一个第一无线网络指纹和一个无线网络指纹。
[0107]
步骤430,对各个匹配指纹对进行筛选,并确定筛选后的指纹对数量。
[0108]
终端设备可以对各个匹配指纹对进行筛选,剔除各个匹配指纹对中包含相同的无线网络指纹的匹配指纹对,筛选后的各个匹配指纹对中不存在相同的无线网络指纹。也就是说,筛选后的各个匹配指纹对包含的第一无线网络指纹与其它第一匹配指纹对的不同,且包含的第二无线网络指纹也与其它第一匹配指纹对的不同。
[0109]
可选地,可通过不同的筛选方法对各个匹配指纹对进行筛选,例如,第一无线网络指纹数据为a,第一附近楼栋对应的第二无线网络指纹数据包括b,a可以包括第一无线网络指纹a1、第一无线网络指纹a2,b可以包括第二无线网络指纹b1、第二无线网络指纹b2,终端设备确定的匹配指纹对可以包括(a1,b1)、(a1,b2)、(a2,b1)、(a2,b2),(a1,b1)或(a2,b2)在(a1,b2)、(a2,b1)之前进行筛选,筛选后的第一匹配指纹对可以包括(a1,b1)、(a2,b2),(a1,b2)或(a2,b1)在(a1,b1)、(a2,b2)之前进行筛选,筛选后的第一匹配指纹对可以包括(a1,b2)、(a2,b1)。本技术实施例对筛选的方法不作限制,仅对筛选后得到的第一匹配指纹对进行限定。
[0110]
需要说明的是,筛选得到的第一匹配指纹对可能因为筛选的方法而不同,但是获得的第一匹配指纹对的指纹对数量是相同的,因此不同的筛选方法获得的结果不会影响后续步骤。
[0111]
步骤440,若筛选后的指纹对数量大于第一数量阈值,则确定第一无线网络指纹数据与第二无线网络指纹数据聚类成功。
[0112]
若筛选后的指纹对数量大于第一数量阈值,可说明第一无线网络指纹数据与第一附近楼栋对应的第二无线网络指纹数据较为接近,可确定第一无线网络指纹数据与第一附近楼栋对应的第二无线网络指纹数据聚类成功,若指纹对数量不大于第一数量阈值,则终端设备确定第一无线网络指纹数据与第二无线网络指纹数据聚类不成功。
[0113]
针对每个附近楼栋对应的第二无线网络指纹数据,均可采用步骤410~440所描述的方式进行聚类分析,从而可得到各个第二无线网络指纹数据是否能与第一无线网路指纹数据聚类成功的结果。
[0114]
在本技术实施例中,终端设备可以对第一无线网络指纹数据与各个附近楼栋对应的第二无线网络指纹数据进行聚类分析,通过计算第一无线网络指纹数据中的各个第一无线网络指纹和第二无线网络指纹数据中的各个第二无线网络指纹之间的第一距离,以判断各个第一无线网络指纹与各个第二无线网络指纹是否匹配,并确定第一无线网络指纹数据与第二无线网络指纹数据能否聚类成功,通过计算无线网络指纹数据的距离解决传统楼栋定位中gps精度不够的问题,提高楼栋定位的准确性。
[0115]
如图5所示,图5是本技术公开的一种楼栋定位装置的模块化示意图,该楼栋定位装置500包括gps定位模块510、数据采集模块520、数据分析模块530以及聚类分析模块540,其中:
[0116]
gps定位模块510,用于通过全球定位系统gps确定终端设备的当前位置信息。
[0117]
数据采集模块520,用于采集当前位置信息对应的第一无线网络指纹数据;其中,第一无线网络指纹数据包括至少一个第一无线网络指纹。
[0118]
数据获取模块530,用于根据当前位置信息,从数据库中获取与当前位置信息的距离小于第一距离阈值的各个附近楼栋对应的第二无线网络指纹数据,第二无线网络指纹数据包括至少一个第二无线网络指纹.
[0119]
聚类分析模块540,用于对第一无线网络指纹数据与各个附近楼栋对应的第二无线网络指纹数据进行聚类分析,以确定当前位置信息对应的目标楼栋。
[0120]
在一个实施例中,聚类分析模块540,还用于对所述第一无线网络指纹数据与所述各个附近楼栋对应的第二无线网络指纹数据进行聚类分析;若所述各个附近楼栋对应的第二无线网络指纹数据中存在与所述第一无线网络指纹数据聚类成功的第二无线网络指纹数据,则将所述聚类成功的第二无线网络指纹数据对应的附近楼栋确定为所述当前位置信息对应的目标楼栋;若所述各个附近楼栋对应的第二无线网络指纹数据中不存在与所述第一无线网络指纹数据聚类成功的第二无线网络指纹数据,则确定所述当前位置信息对应的目标楼栋为新楼栋。
[0121]
在一个实施例中,聚类分析模块540,还用于分别计算各个所述第一无线网络指纹与第一附近楼栋对应的第二无线网络指纹数据包含的各个第二无线网络指纹之间的第一距离,所述第一附近楼栋为任一所述附近楼栋;根据各个所述第一无线网络指纹对应的第一距离,判断各个所述第一无线网络指纹是否与所述各个第二无线网络指纹匹配,并将匹配成功的第一无线网络指纹与第二无线网络指纹作为匹配指纹对;对各个所述匹配指纹对进行筛选,并确定筛选后的指纹对数量;若所述筛选后的指纹对数量大于第一数量阈值,则确定所述第一无线网络指纹数据与所述第二无线网络指纹数据聚类成功。
[0122]
在一个实施例中,所述第一无线网络指纹包括至少一个第一无线接入点,以及各个所述第一无线接入点对应的第一信号强度;所述第二无线网络指纹包括至少一个第二无线接入点,以及各个所述第二无线接入点对应的第二信号强度。
[0123]
聚类分析模块540,还用于确定目标第一无线网络指纹与目标第二无线网络指纹中相同的无线接入点对应的相同数量;其中,所述目标第一无线网络指纹为所述第一无线网络数据中的任一第一无线网络指纹,所述目标第二无线网络指纹为所述第一附近楼栋对应的第二无线网络数据中的任一第二无线网络指纹;若所述相同数量大于第二数量阈值,则根据所述相同的无线接入点分别对应的第一信号强度及第二信号强度,计算所述目标第一无线网络指纹与目标第二无线网络指纹之间的第一距离;若所述相同数量不大于所述第二数量阈值,则确定所述目标第一网络指纹与目标第二无线网络指纹之间的第一距离为远距离值。
[0124]
在一个实施例中,聚类分析模块540,还用于将各个所述第一无线网络指纹对应的第一距离与第二距离阈值进行比较;其中,所述第二距离阈值小于所述远距离值;若所述第一无线网络指纹对应的第一距离小于所述第二距离阈值,则确定小于所述第二距离阈值的第一距离对应的第二无线网络指纹与第一无线网络指纹匹配;若所述第一无线网络指纹对应的第一距离不小于所述第二距离阈值,则确定不小于所述第二距离阈值的第一距离对应的第二无线网络指纹与第一无线网络指纹不匹配。
[0125]
在一个实施例中,数据分析模块530,还用于根据所述当前位置信息,判断是否存在与所述当前位置信息的距离小于第一距离阈值的附近楼栋;若不存在所述附近楼栋,则将所述当前位置信息以及所述当前位置信息对应的第一无线网络指纹数据保存到数据库中,并确定所述当前位置信息对应的目标楼栋为新楼栋;若存在所述附近楼栋,则执行所述根据所述当前位置信息,从数据库中获取与所述当前位置信息的距离小于第一距离阈值的各个附近楼栋对应的第二无线网络指纹数据的步骤。
[0126]
在一个实施例中,gps定位模块510,还用于若当前时刻的gps信号强度不大于强度阈值,则获取全球定位系统gps在所述当前时刻之前采集的多个历史gps定位坐标,以及各个所述历史gps定位坐标对应的gps信号强度;从所述多个历史gps定位坐标中,选择gps信号强度大于强度阈值的历史gps定位坐标,并根据选择的历史gps定位坐标确定所述终端设备的当前位置信息。
[0127]
在本技术实施例中,能够通过gps确定终端设备的当前位置信息,并采集当前位置信息对应的第一无线网络指纹数据,根据当前位置信息,终端设备可以从数据库中获取与当前位置信息的距离小于第一距离阈值的各个附近楼栋对应的第二无线网络指纹数据,从而对采集到的第一无线指纹数据和获取到的第二无线网络指纹数据进行聚类分析,以确定当前位置信息对应的目标楼栋,因此能够对终端设备当前的楼栋进行定位,并且通过聚类分析的方法确定当前位置信息对应的目标楼栋,可以提高楼栋定位的准确性。
[0128]
如图6所示,在一个实施例中,提供一种电子设备,该电子设备可以包括:
[0129]
存储有可执行程序代码的存储器610;
[0130]
与存储器610耦合的处理器620;
[0131]
处理器620调用存储器610中存储的可执行程序代码,可实现如上述各实施例中提供的楼栋定位方法。
[0132]
存储器610可以包括随机存储器(randomaccess memory,ram),也可以包括只读存储器(read-only memory,rom)。存储器610可用于存储指令、程序、代码、代码集或指令集。存储器610可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现上述各个方法实施例的指令等。存储数据区还可以存储电子设备在使用中所创建的数据等。
[0133]
处理器620可以包括一个或者多个处理核。处理器620利用各种接口和线路连接整个电子设备内的各个部分,通过运行或执行存储在存储器610内的指令、程序、代码集或指令集,以及调用存储在存储器610内的数据,执行电子设备的各种功能和处理数据。可选地,处理器620可以采用数字信号处理(digital signal processing,dsp)、现场可编程门阵列(field-programmable gate array,fpga)、可编程逻辑阵列(programmable logic array,pla)中的至少一种硬件形式来实现。处理器620可集成中央处理器(central processing unit,cpu)、图像处理器(graphics processing unit,gpu)和调制解调器等中的一种或几种的组合。其中,cpu主要处理操作系统、用户界面和应用程序等;gpu用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器620中,单独通过一块通信芯片进行实现。
[0134]
可以理解地,电子设备可包括比上述结构框图中更多或更少的结构元件,例如,包括电源模块、物理按键、wifi(wireless fidelity,无线保真)模块、扬声器、蓝牙模块、传感器等,还可在此不进行限定。
[0135]
本技术实施例公开一种计算机可读存储介质,其存储计算机程序,其中,该计算机程序使得计算机执行上述各实施例中所描述的方法。
[0136]
此外,本技术实施例进一步公开一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机可以执行上述实施例所描述的任意一种楼栋定位方法中的全部
或部分步骤。
[0137]
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质包括只读存储器(read-only memory,rom)、随机存储器(randomaccess memory,ram)、可编程只读存储器(programmable read-only memory,prom)、可擦除可编程只读存储器(erasable programmable read only memory,eprom)、一次可编程只读存储器(one-time programmable read-onlymemory,otprom)、电子抹除式可复写只读存储器(electrically-erasable programmable read-only memory,eeprom)、只读光盘(compact disc read-only memory,cd-rom)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
[0138]
以上对本技术实施例公开的一种楼栋定位方法、装置、电子设备及存储介质进行了详细介绍,本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;同时,对于本领域的一般技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本技术的限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1