一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种定位数据库的创建方法及电子设备与流程

2021-12-18 01:51:00 来源:中国专利 TAG:


1.本技术涉及定位技术领域,尤其涉及一种定位数据库的创建方法及电子设备。


背景技术:

2.随着大型室内场所(如,大型医院、大型商场等)的出现,室内定位服务的市场需求也随之增加。当然,实现室内定位服务的前提是建立对应的定位数据库。
3.相关技术中,建立定位数据库时,需专业人员在指定位置点采集指纹数据,例如,定点采集无线保真(wireless fidelity,wi

fi)信号或蓝牙信号,如此,每个指纹数据对应着指定位置点的绝对坐标。然而,人工采集的方式,受限于人力成本,可采集到的指纹数据有限。这样,所建立的定位数据库的定位准确性也低。


技术实现要素:

4.本技术提供一种定位数据库的创建方法及电子设备,通过众包的方式让进入室内场所的用户,参与到室内场所的指纹数据采集过程中,获取室内场所中更多的指纹数据。利用更多的指纹数据,提升所建定位数据库的定位准确性。
5.为达到上述目的,本技术采用如下技术方案:
6.第一方面,本技术实施例提供的一种定位数据库的创建方法,应用于第一设备,所述第一设备与位于室内场所中的多个第二设备之间通信连接,所述方法包括:所述第一设备接收来自每个所述第二设备的第一众包数据;其中,所述第一众包数据包括第一轨迹点、第二轨迹点,以及与所述第一轨迹点、所述第二轨迹点分别对应的指纹数据;所述第一轨迹点和所述第二轨迹点是用户在所述室内场所中移动所产生的第一位移轨迹上的轨迹点,所述指纹数据用于指示轨迹点在所述室内场所中对应位置的电磁信息;所述第一设备确定所述第一轨迹点在预设坐标系中的第一坐标;所述第一设备根据所述第一轨迹点的第一坐标,对所述第二轨迹点相对于所述第一轨迹点的距离和方向进行校准;所述第一设备根据所述第一坐标和校准后的所述距离和方向,确定所述第二轨迹点在所述预设坐标系中的第二坐标;所述第一设备根据所述第一坐标、第二坐标以及与所述第一轨迹点、所述第二轨迹点分别对应的指纹数据,构建定位数据库,所述定位数据库包括所述第一坐标、所述第二坐标与对应指纹数据之间的对应关系。
7.可理解地,第一众包数据包括轨迹点和指纹数据,第二设备在采集第一众包数据时,仅需携带第二设备的用户在室内场所中正常行走即可。换句话说,第二设备采集第一众包数据,可以在用户无感知的情况下进行。无感知地采集第一众包数据,不仅利于更多第二设备加入到第一众包数据的采集,还能有效降低采集的人力成本。
8.针对一条第一众包数据,第一设备可以先确定第一轨迹点的第一坐标。再利用第一坐标对第二轨迹点相对于所述第一轨迹点的距离和方向进行校准,从而获取第二轨迹点在预设坐标系下的第二坐标。这样,第一众包数据中所有的轨迹点都能够准确地投影到预设坐标系。再配合轨迹点与指纹数据之间的对应关系,可确定出预设坐标系中多个坐标点
与指纹数据之间的对应关系。
9.这样,在第一设备得到多个第一众包数据的情况下,第一设备可以在预设坐标系中确定更多坐标点所对应的指纹数据。基于更多的坐标点和指纹数据,便可建立更精准的定位数据库。利用该定位数据库,可更准确地识别用户在预设坐标系中的实际位置,提升室内定位的精准度。
10.在一些可能的实施例中,所述第一众包数据还包括:与所述第一轨迹点对应的第一区域名称;所述预设坐标系为世界坐标系;所述第一坐标为在所述世界坐标系下的第一绝对坐标;所述第一设备确定所述第一轨迹点在预设坐标系中的第一坐标,包括:所述第一设备根据所述第一区域名称及预配置的兴趣点poi数据库,确定所述第一轨迹点在所述世界坐标系下的第一绝对坐标;其中,所述poi数据库包括不同区域名称所对应的绝对坐标。
11.在上述实施例中,以世界坐标系作为预设坐标系,从而,确定指纹数据与真实世界之间的关联。这样所建立的定位数据库更便于在真实世界内进行定位。另外,利用第一轨迹点对应的第一区域名称,从poi数据库中确定第一轨迹点在世界坐标系下的第一绝对坐标。简化确定第一绝对坐标的算法复杂性,提升确定第一绝对坐标的效率。
12.在一些可能的实施例中,所述poi数据库还包括:不同区域名称所对应的区域面积;所述第一设备根据所述第一区域名称及预配置的兴趣点poi数据库,确定所述第一轨迹点在所述世界坐标系下的第一绝对坐标,包括:所述第一设备根据所述第一区域名称,从所述poi数据库中,查询与所述第一区域名称对应的第二绝对坐标及区域面积;在查询到的所述区域面积不超过预设面积阈值的情况下,所述第一设备确定查询到的所述第二绝对坐标为所述第一绝对坐标。
13.在上述实施例中,在第一轨迹点属于面积较小的区域时,快速地确定第一轨迹点的第一绝对坐标,改善查找到的第一绝对坐标不够准确的问题。
14.在一些可能的实施例中,所述第一设备根据所述第一区域名称及预配置的兴趣点poi数据库,确定所述第一轨迹点在所述世界坐标系下的第一绝对坐标,还包括:在查询到的所述区域面积超过所述预设面积阈值的情况下,所述第一设备获取第二众包数据及第三众包数据;其中,所述第二众包数据包括第三轨迹点及对应的第二区域名称,所述第三众包数据包括第四轨迹点和第五轨迹点,所述第四轨迹点与所述第一轨迹点所对应的指纹数据匹配,所述第五轨迹点与所述第三轨迹点所对应的指纹数据匹配;所述第一设备根据所述第二区域名称,从所述poi数据库中,查询与所述第二区域名称对应的第三绝对坐标;所述第一设备获取所述第四轨迹点和第五轨迹点之间的轨迹距离;所述第一设备根据所述第二绝对坐标、所述第三绝对坐标及所述轨迹距离进行线性拟合,确定所述第一绝对坐标。
15.考虑到区域面积过大时,poi数据库查询到的绝对坐标不能准确地指示第一轨迹点的真实位置。在上述实施例中,通过多个众包数据相配合,对从poi数据库中查询到的第二绝对坐标进行校准,得到准确指示第一轨迹点真实位置的第一绝对坐标。
16.在一些可能的实施例中,所述第一位移轨迹包括至少两个所述第一轨迹点;所述第一设备根据所述第一轨迹点的第一坐标,对所述第二轨迹点相对于所述第一轨迹点的距离和方向进行校准,包括:所述第一设备根据至少两个所述第一轨迹点的第一坐标,结合图优化graph slam模型,对所述第一位移轨迹的初始方向和所述第一位移轨迹包含的轨迹点之间的距离进行校准,得到第二位移轨迹。
17.在上述实施例中,利用graph slam模型,配合至少两个第一坐标,对第二轨迹点相对于第一轨迹点的初始方向和距离进行校准,得到能够准确指示用户真实位移情况的第二位移轨迹。
18.在一些可能的实施例中,所述第一位移轨迹包括一个所述第一轨迹点;所述第一设备根据所述第一轨迹点的第一坐标,对所述第二轨迹点相对于所述第一轨迹点的距离和方向进行校准,包括:所述第一设备获取第三轨迹;其中,所述第三轨迹中至少一个轨迹点的指纹数据与所述第一轨迹点或第二轨迹点的指纹数据匹配;所述第三轨迹中至少一个轨迹点在所述预设坐标系下的第四坐标已确定;所述第一设备将所述第一位移轨迹与所述第三轨迹拼接,得到组合轨迹;所述第一设备根据所述第一坐标和第四坐标,结合graph slam模型,对所述组合轨迹的初始方向和所述组合轨迹包含的轨迹点之间的距离进行校准,得到第二位移轨迹。
19.在上述实施例中,通过组合轨迹的方式,确保graph slam模型所处理的轨迹中具有至少两个在预设坐标系下已知坐标的轨迹点。这样,经由graph slam模型校准后,得到能够准确指示用户真实位移情况的第二位移轨迹。
20.在一些可能的实施例中,在所述第一设备根据所述第一坐标和校准后的所述距离和方向,确定所述第二轨迹点在所述预设坐标系中的第二坐标之前,所述方法还包括:所述第一设备根据所述第二位移轨迹,确定校准后的所述距离和方向。
21.在上述实施例中,利用所得到的第二位移轨迹替代第一位移轨迹,改善第一位移轨迹初始方向存在较大误差,轨迹点间距离也不够准确的问题。从而,确保得到的第二轨迹点的第二坐标的准确性。
22.在一些可能的实施例中,在所述定位数据库创建之后,所述方法还包括:所述第一设备利用graph slam模型对所述定位数据库进行优化。
23.在上述实施例中,利用graph slam模型对定位数据库中指示相同位置点的坐标进行均值化处理,提升定位数据库的准确性。
24.第二方面,本技术实施例提供的一种定位数据库的创建方法,应用于位于室内场所的第二设备,所述第二设备与第一设备之间通信连接,所述方法包括:所述第二设备响应于检测到的第一事件,采集第一轨迹点以及对应的指纹数据;其中,所述指纹数据用于指示轨迹点在所述室内场所中对应位置的电磁信息;所述第一事件包括接收到用于指示扫码的操作或者识别出经过地标位置点;在检测到的第一事件之后,所述第二设备采集第二轨迹点及对应的指纹数据;其中,所述第一轨迹点和第二轨迹点是用户在所述室内场所中移动所产生的第一位移轨迹上的轨迹点;所述第二设备向所述第一设备发送第一众包数据;所述第一众包数据包括:第一轨迹点、第二轨迹点,以及与所述第一轨迹点、所述第二轨迹点分别对应的指纹数据;其中,所述第一众包数据用于所述第一设备确定所述第一轨迹点在预设坐标系中的第一坐标和所述第二轨迹点在所述预设坐标系中的第二坐标,并构建定位数据库;所述定位数据库包括所述第一坐标、所述第二坐标与对应指纹数据之间的对应关系。
25.在上述实施例中,第二设备响应于第一事件启动轨迹点和指纹数据的采集。采集过程可以在用户无感知的情况下进行。无感知地采集启动轨迹点和指纹数据,避免对用户产生影响,又能够为创建定位数据库提供可用的数据。
26.在一些可能的实施例中,所述第一事件为接收到用于指示扫码的操作,所述第一众包数据还包括所述第一轨迹点对应的第一区域名称,所述方法还包括:所述第二设备响应于第一事件,获取包含扫描结果的显示界面;所述第二设备对所述显示界面进行文字识别;所述第二设备依据识别出的文字信息,确定为所述第一区域名称。
27.在一些可能的实施例中,所述第一事件为识别出经过地标位置点,所述第一众包数据还包括所述第一轨迹点对应的第一区域名称,所述方法还包括:所述第二设备利用场景识别模型,确定所述第二设备经过所述地标位置点;所述第二设备获取所述地标位置点对应的地标名称;所述第二设备确定所述地标名称为所述第一区域名称。
28.在一些可能的实施例中,所述第一事件还包括采集到第一图像,所述第一图像包括室内场所中的陈列物品;所述第二设备包括不同陈列物品所对应的放置区域名称;所述第一众包数据还包括所述第一轨迹点对应的第一区域名称,所述方法还包括:所述第二设备查询所述陈列物品所对应的放置区域名称;所述第二设备将所述放置区域的名称确定为所述第一区域名称。
29.在一些可能的实施例中,所述方法还包括:所述第二设备采集第一指纹数据;所述第二设备向所述第一设备发送所述第一指纹数据;所述第二设备接收所述第一设备反馈的第一定位坐标;所述第一定位坐标为所述定位数据库中与所述第一指纹数据匹配的坐标。
30.在一些可能的实施例中,所述方法还包括:所述第二设备接收所述第一设备发送的所述定位数据库;所述第二设备采集第一指纹数据;所述第二设备依据所述第一指纹数据,从所述定位数据库中,查询匹配的第一定位坐标;所述第二设备依据所述第一定位坐标,从所述定位数据库中,获取至少一个第二定位坐标;所述第一定位坐标与每一个所述第二定位坐标对应一条位移轨迹;所述第二设备采集第二指纹数据;所述第二设备依据所述第二指纹数据从所述所述第二定位坐标中确定匹配的第三定位坐标。
31.在上述实施例中,改善每一次定位均需要遍历定位数据库中所有的指纹数据,提升定位的效率。
32.第三方面,本技术实施例提供的一种电子设备,(例如,上述第一设备),电子设备包括一个或多个处理器和存储器;所述存储器与处理器耦合,存储器用于存储计算机程序代码,计算机程序代码包括计算机指令,当一个或多个处理器执行计算机指令时,所述一个或多个处理器,用于接收来自每个所述第二设备的第一众包数据;其中,所述第一众包数据包括第一轨迹点、第二轨迹点,以及与所述第一轨迹点、所述第二轨迹点分别对应的指纹数据;所述第一轨迹点和所述第二轨迹点是用户在所述室内场所中移动所产生的第一位移轨迹上的轨迹点,所述指纹数据用于指示轨迹点在所述室内场所中对应位置的电磁信息;确定所述第一轨迹点在预设坐标系中的第一坐标;根据所述第一轨迹点的第一坐标,对所述第二轨迹点相对于所述第一轨迹点的距离和方向进行校准;根据所述第一坐标和校准后的所述距离和方向,确定所述第二轨迹点在所述预设坐标系中的第二坐标;根据所述第一坐标、第二坐标以及与所述第一轨迹点、所述第二轨迹点分别对应的指纹数据,构建定位数据库,所述定位数据库包括所述第一坐标、所述第二坐标与对应指纹数据之间的对应关系。
33.在一些可能的实施例中,所述第一众包数据还包括:与所述第一轨迹点对应的第一区域名称;所述预设坐标系为世界坐标系;所述第一坐标为在所述世界坐标系下的第一绝对坐标;所述一个或多个处理器,还用于:根据所述第一区域名称及预配置的兴趣点poi
数据库,确定所述第一轨迹点在所述世界坐标系下的第一绝对坐标;其中,所述poi数据库包括不同区域名称所对应的绝对坐标。
34.在一些可能的实施例中,所述poi数据库还包括:不同区域名称所对应的区域面积;所述一个或多个处理器,还用于:根据所述第一区域名称,从所述poi数据库中,查询与所述第一区域名称对应的第二绝对坐标及区域面积;在查询到的所述区域面积不超过预设面积阈值的情况下,确定查询到的所述第二绝对坐标为所述第一绝对坐标。
35.在一些可能的实施例中,所述一个或多个处理器,还用于:在查询到的所述区域面积超过所述预设面积阈值的情况下,获取第二众包数据及第三众包数据;其中,所述第二众包数据包括第三轨迹点及对应的第二区域名称,所述第三众包数据包括第四轨迹点和第五轨迹点,所述第四轨迹点与所述第一轨迹点所对应的指纹数据匹配,所述第五轨迹点与所述第三轨迹点所对应的指纹数据匹配;根据所述第二区域名称,从所述poi数据库中,查询与所述第二区域名称对应的第三绝对坐标;获取所述第四轨迹点和第五轨迹点之间的距离;根据所述第二绝对坐标、所述第三绝对坐标及所述轨迹距离进行线性拟合,确定所述第一绝对坐标。
36.在一些可能的实施例中,所述第一位移轨迹包括至少两个所述第一轨迹点;所述一个或多个处理器,还用于:根据至少两个所述第一轨迹点的第一坐标,结合图优化graph slam模型,对所述第一位移轨迹的初始方向和所述第一位移轨迹包含的轨迹点之间的距离进行校准,得到第二位移轨迹。
37.在一些可能的实施例中,所述第一位移轨迹包括一个所述第一轨迹点;所述一个或多个处理器,还用于:获取第三轨迹;其中,所述第三轨迹中至少一个轨迹点的指纹数据与所述第一轨迹点或第二轨迹点的指纹数据匹配;所述第三轨迹中至少一个轨迹点在所述预设坐标系下的第四坐标已确定;将所述第一位移轨迹与所述第三轨迹拼接,得到组合轨迹;根据所述第一坐标和第四坐标,结合graph slam模型,对所述组合轨迹第一轨迹的初始方向和所述组合轨迹第一轨迹包含的轨迹点之间的距离进行校准,得到第二位移轨迹。
38.在一些可能的实施例中,在根据所述第一坐标和校准后的所述距离和方向,确定所述第二轨迹点在所述预设坐标系中的第二坐标之前,所述所述一个或多个处理器,还用于:根据所述第二位移轨迹,确定校准后的所述距离和方向。
39.在一些可能的实施例中,在所述定位数据库创建之后,所述一个或多个处理器,还用于:利用graph slam模型对所述定位数据库进行优化。
40.第四方面,本技术实施例提供的一种电子设备(例如,上述第二设备),电子设备包括一个或多个处理器和存储器;所述存储器与处理器耦合,存储器用于存储计算机程序代码,计算机程序代码包括计算机指令,当一个或多个处理器执行计算机指令时,所述一个或多个处理器,用于:
41.响应于检测到的第一事件,采集第一轨迹点以及对应的指纹数据;其中,所述指纹数据用于指示轨迹点在所述室内场所中对应位置的电磁信息;所述第一事件包括接收到用于指示扫码的操作或者识别出经过地标位置点;
42.在检测到的第一事件之后,采集第二轨迹点及对应的指纹数据;其中,所述第一轨迹点和第二轨迹点是用户在所述室内场所中移动所产生的第一位移轨迹上的轨迹点;
43.向所述第一设备发送第一众包数据;所述第一众包数据包括:第一轨迹点、第二轨
迹点,以及与所述第一轨迹点、所述第二轨迹点分别对应的指纹数据;
44.其中,所述第一众包数据用于所述第一设备确定所述第一轨迹点在预设坐标系中的第一坐标和所述第二轨迹点在所述预设坐标系中的第二坐标,并构建定位数据库;所述定位数据库包括所述第一坐标、所述第二坐标与对应指纹数据之间的对应关系。
45.在一些可能的实施例中,所述第一事件为接收到用于指示扫码的操作,所述第一众包数据还包括所述第一轨迹点对应的第一区域名称,所述一个或多个处理器,还用于:
46.响应于第一事件,获取包含扫描结果的显示界面;
47.对所述显示界面进行文字识别;
48.依据识别出的文字信息,确定为所述第一区域名称。
49.在一些可能的实施例中,所述第一事件为识别出经过地标位置点,所述第一众包数据还包括所述第一轨迹点对应的第一区域名称,所述一个或多个处理器,还用于:
50.利用场景识别模型,确定电子设备经过所述地标位置点;
51.获取所述地标位置点对应的地标名称;
52.确定所述地标名称为所述第一区域名称。
53.在一些可能的实施例中,所述第一事件还包括采集到第一图像,所述第一图像包括室内场所中的陈列物品;所述电子设备包括不同陈列物品所对应的放置区域名称;所述第一众包数据还包括所述第一轨迹点对应的第一区域名称,所述一个或多个处理器,还用于:
54.查询所述陈列物品所对应的放置区域名称;
55.将所述放置区域的名称确定为所述第一区域名称。
56.在一些可能的实施例中,所述一个或多个处理器,还用于:
57.采集第一指纹数据;
58.向所述第一设备发送所述第一指纹数据;
59.接收所述第一设备反馈的第一定位坐标;所述第一定位坐标为所述定位数据库中与所述第一指纹数据匹配的坐标。
60.在一些可能的实施例中,所述一个或多个处理器,还用于:
61.接收所述第一设备发送的所述定位数据库;
62.采集第一指纹数据;
63.依据所述第一指纹数据,从所述定位数据库中,查询匹配的第一定位坐标;
64.依据所述第一定位坐标,从所述定位数据库中,获取至少一个第二定位坐标;所述第一定位坐标与每一个所述第二定位坐标对应一条位移轨迹;采集第二指纹数据;依据所述第二指纹数据从所述所述第二定位坐标中确定匹配的第三定位坐标。
65.第五方面,本技术实施例提供的一种计算机存储介质,包括计算机指令,当所述计算机指令在电子设备(如,上述第一设备)上运行时,使得电子设备执行上述第一方面及其可能的实施例中所述的方法;或者,当所述计算机指令在电子设备(如,上述第二设备)上运行时,使得电子设备执行上述第二方面及其可能的实施例中所述的方法。
66.第六方面,本技术提供一种计算机程序产品,当计算机程序产品在上述电子设备(如,上述第一设备)上运行时,使得电子设备执行上述第一方面及其可能的实施例中所述的方法;或者,当计算机程序产品在电子设备(如,上述第二设备)上运行时,使得电子设备
执行上述第二方面及其可能的实施例中所述的方法。
67.可以理解地,上述各个方面所提供的电子设备、计算机可读存储介质以及计算机程序产品均应用于上文所提供的对应方法,因此,其所能达到的有益效果可参考上文所提供的对应方法中的有益效果,此处不再赘述。
附图说明
68.图1为相关技术中创建定位数据库的示例图;
69.图2为本技术实施例提供的定位系统示意图;
70.图3为本技术实施例提供的服务器结构示例图;
71.图4为本技术实施例提供的手机结构示例图;
72.图5为本技术实施例提供的采集指纹数据和位移轨迹的示例图之一;
73.图6为本技术实施例提供的采集指纹数据和位移轨迹的示例图之二;
74.图7a为本技术实施例提供的手机的显示界面示例图;
75.图7b为本技术实施例提供的方法的步骤流程图之一;
76.图8为本技术实施例提供的确定轨迹点的绝对坐标的示例图;
77.图9为本技术实施例提供的商店的绝对坐标与轨迹点d之间的间距示例图;
78.图10为本技术实施例提供的利用众包数据4确定轨迹点b和轨迹点f之间的轨迹距离的示例图;
79.图11为本技术实施例提供的对位移轨迹进行校准的示例图;
80.图12为本技术实施例提供的多条可用路径整合的示例图;
81.图13为本技术实施例提供的方法的步骤流程图之二;
82.图14为本技术实施例提供的芯片系统的示例图。
具体实施方式
83.下面将结合附图对本实施例的实施方式进行详细描述。
84.随着大型室内场所(如,大型医院、大型商场等)的出现,用户对室内定位服务的需求也随之增加。
85.然而,由于受建筑墙体的影响,位于室内场所中的用户使用常规的定位技术(如卫星定位技术)进行定位时,容易出现定位漂移等问题。为了改善这一问题,室内定位技术应运而生。其中,室内定位技术与卫星定位技术的区别在于:实现室内定位技术需要预先建立对应的定位数据库。
86.上述定位数据库可以包括室内场所中多个位置点和对应的指纹数据。其中,上述指纹数据可以用于指示对应位置点所处的电磁环境。可理解地,不同位置点的电磁环境存在差异。这样用户处于室内场所中,只需将当前位置的指纹数据与定位数据库中的指纹数据进行比对,即可确定出用户在室内场所中的实际位置。
87.可见,为室内场所创建准确的定位数据库之后,就可以向用户提供准确的室内定位服务。相关技术中,定位数据库需通过专业人员在室内场所中测量后生成。
88.以为商场创建定位数据库进行举例。首先,专业人员需要在图1中的(a)所示的商场地图101中,选择多个测量点102。可理解地,上述商场地图的地图坐标系与世界坐标系
digital assistant,pda)、可穿戴电子设备、虚拟现实设备等具有惯性测量单元、具备电磁环境采集功能的便携式设备,本技术实施例对此不做任何限制。
96.在本技术实施例中,便携式的设备2可以由用户携带进入室内场所(如图2中所示的商场)。设备2在用户无感知的情况下,采集实时的惯性信息,该惯性信息可用于指示用户在室内场所中的位移轨迹。
97.示例性地,可以是利用设备2中的传感器(sensor)感知用户在行进过程中的加速度、角速度、磁力和压力等惯性信息。设备2每个时间点所采集到的惯性信息,经过处理,如经过pdr处理后,可确定出一个对应的轨迹点。同时,多个采集时间点所对应的轨迹点,按照采集的时间先后顺序,可组成指示用户在室内场所中的位移轨迹。
98.在一些实施例中,设备2还可以检测用户是否途径预设位置点。其中,预设位置点所对应的绝对坐标可以确定。例如,设备2在采集惯性信息的过程中,可以通过检测是否出现与预定位置对应的事件,从而判断该用户是否途径预设位置点。
99.在确定途径预设位置点时,设备2可以标记此时所采集的惯性信息,从而,指示该惯性信息对应的轨迹点与预设位置点为同一位置。换句话说,实现指示用户的位移轨迹途径预设位置点。
100.另外,在本技术实施例中,设备2还可以采集指纹数据。上述指纹数据可以与惯性信息同步采集,使惯性信息所指示的轨迹点与指纹数据在时间轴上对齐。也即,所采集的指纹数据与轨迹点之间存在对应关系。
101.其中,上述指纹数据可以用于区分不同采集位置点的电磁环境。例如,指纹数据可以由采集到的无线电信号指示。其中,上述无线电信号可以包括无线局域网(wireless

fidelity,wi

fi)信号、蓝牙信号、基站信号、调频信号等之一或之间的组合。
102.可理解地,在室内场所中,不同位置点可采集到的无线电信号类型可能不同。故,不同位置点的指纹数据所包括的无线电信号类型也不同。例如,设备2在位置点1采集到了wi

fi信号和蓝牙信号,则可确定出位置点1对应的指纹数据包括wi

fi信号和蓝牙信号。设备2在位置点2采集到了基站信号和蓝牙信号,则可确定出位置点2对应的指纹数据包括基站信号和蓝牙信号。
103.可见,利用不同采集位置点上可采集的无线电信号类型,确定对应的指纹数据,可以实现基于指纹数据对不同采集位置点的电磁环境进行区分。
104.还可以理解地,不同位置点除了可采集的无线电信号类型不同之外,采集的无线电信号的强度、频率等也可能不同。
105.以wi

fi信号为例。在不同位置点被不同的wi

fi信号覆盖时,于不同位置点采集的wi

fi信号的媒体存取控制(media access control,mac)字段、服务集标识(service set identifier,ssid)、开机时间(boottime)及中心频率(frequency)也可能不同。此外,即便是被相同wi

fi信号覆盖的不同位置点,也会因为距离路由器的远近差异,对应的接收的信号强度指示(received signal strength indication,rssi)不同。
106.可见,在指纹数据中包括wi

fi信号时,该wi

fi信号可以由mac字段、rssi、boottime及中心频率frequency等之一或之间的组合进行表征。从而,更准确地区分不同采集位置点的电磁环境。
107.再以基站信号为例。不同位置点被不同的基站信号覆盖时,于不同位置点采集的
驻留蜂窝小区标识不同,例如,boottime,也即,小区的开机时间、移动国家码(mobile country code,mcc)、移动运营商码(mobile network codes,mnc)、地区码(location area code,lac)、小区id、小区的网络制式(rat)、小区的信道号(channelnumber)等标识不同。同样地,即便是被相同基站信号覆盖的不同位置点,由于距离基站的远近差异,对应的基站rssi也不同。
108.可见,在指纹数据中包括基站信号时,该基站信号可以由boottime、mcc、mnc、lac、小区id、小区的网络制式(rat)、channelnumber等之一或之间的组合进行表征。从而,更准确地区分不同采集位置点的电磁环境。
109.再以蓝牙信号为例。不同位置点所对应的蓝牙信号不同,故,不同位置点可采集的蓝牙信号的蓝牙名称、蓝牙地址等不同。
110.可见,在指纹数据中包括蓝牙信号时,该蓝牙信号可以由蓝牙名称、蓝牙地址等之一或之间的组合进行表征。从而,更准确地区分不同采集位置点的电磁环境。
111.再以调频信号为例。不同位置点在同一频点检测到的调频信号强度可能不同。可见,在指纹数据中包括调频信号时,该调频信号可以由指定频点的调频信号强度指示。从而,更准确地区分不同采集位置点的电磁环境。
112.在本技术实施例中,设备2所采到的用于指示位移轨迹的数据和对应的指纹数据由设备1进行汇总。这样,设备1可以确定不同用户的位移轨迹及位移轨迹中各个轨迹点所对应的指纹数据。
113.然后,设备2根据多条位移轨迹和对应的指纹数据,确定出多个绝对坐标与指纹数据之间的对应关系。
114.示例性地,在位移轨迹途径至少两个预设位置点的情况下,设备1可以根据预设位置点,确定出位移轨迹中至少两个轨迹点的绝对坐标。基于两个轨迹点的绝对坐标,对位移轨迹中各个轨迹点之间的相对位置进行校准。之后,确定出位移轨迹中所有校准后的轨迹点的绝对坐标。这样,设备1可以确定出多个绝对坐标与指纹数据之间的对应关系。
115.又示例性地,在位移轨迹途径一个预设位置点的情况下,设备1可以确定与该位移轨迹交汇的已知轨迹,其中,已知轨迹包括至少一个已确定绝对坐标的轨迹点。根据已知轨迹与该位移轨迹之间的交汇点,确定出该位移轨迹中至少两个轨迹点的绝对坐标。基于两个轨迹点的绝对坐标,对位移轨迹中各个轨迹点之间的相对位置进行校准。之后,确定出位移轨迹中所有校准后的轨迹点的绝对坐标。这样,设备1又可以确定出多个绝对坐标与指纹数据之间的对应关系。这样,便可以根据大量的绝对坐标与指纹数据之间的对应关系,构建定位精准的定位数据库。
116.另外,设备2会持续且长期的向设备1提供所采集的数据,确保即使室内场所中的电磁环境变化,所创建的定位数据库也可以及时更新,确保准确性。
117.在一些实施例中,不同的室内场所可以对应有不同的设备1,当然,不同的室内场所也可以对应同一台设备1。对此,本技术实施例不作任何限定。
118.下面以服务器作为上述定位系统中的设备1进行举例,图3示出了服务器的结构示意图。
119.如图3所示,上述服务器可以包括:处理器310,存储器320,通信模块330等。
120.其中,所述处理器310,存储器320,通信模块340各元件相互之间直接或间接地电
性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。
121.其中,处理器310可以包括一个或多个处理单元,例如:处理器310可以包括应用处理器(application processor,ap),调制解调处理器,图形处理器(graphics processing unit,gpu),图像信号处理器(image signal processor,isp),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,dsp),基带处理器,和/或神经网络处理器(neural

network processing unit,npu)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
122.控制器可以是服务器的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
123.处理器310中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器310中的存储器为高速缓冲存储器。该存储器可以保存处理器310刚用过或循环使用的指令或数据。如果处理器310需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器310的等待时间,因而提高了系统的效率。
124.所述存储器320可以是,但不限于,随机存取存储器(random access memory,ram),只读存储器(read only memory,rom),可编程只读存储器(programmable read

only memory,prom),可擦除只读存储器(erasable programmable read

only memory,eprom),电可擦除只读存储器(electric erasable programmable read

only memory,eeprom)等。其中,存储器320用于存储程序或者数据。
125.所述通信模块340用于通过所述服务器与其它设备之间的通信连接,并用于通过所述网络收发数据。
126.应当理解的是,图3所示的结构仅为服务器的结构示意图,所述服务器还可包括比图3中所示更多或者更少的组件,或者具有与图3所示不同的配置。图3中所示的各组件可以采用硬件、软件或其组合实现。
127.又示例性的,以手机作为上述定位系统中的设备2进行举例,图4示出了服务器的结构示意图。
128.如图4所示,设备2(如,手机)可以包括:处理器210,外部存储器接口220,内部存储器221,通用串行总线(universal serial bus,usb)接口230,充电管理模块240,电源管理模块241,电池242,天线1,天线2,移动通信模块250,无线通信模块260,音频模块270,扬声器270a,受话器270b,麦克风270c,耳机接口270d,传感器模块280,按键290,马达291,指示器292,摄像头293,显示屏294,以及用户标识模块(subscriber identification module,sim)卡接口295等。
129.其中,上述传感器模块280可以包括压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器和骨传导传感器等传感器。
130.可以理解的是,本实施例示意的结构并不构成对手机的具体限定。在另一些实施例中,手机可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
131.处理器210可以包括一个或多个处理单元,例如:处理器210可以包括应用处理器
(application processor,ap),调制解调处理器,图形处理器(graphics processing unit,gpu),图像信号处理器(image signal processor,isp),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,dsp),基带处理器,和/或神经网络处理器(neural

network processing unit,npu)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
132.控制器可以是手机的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
133.处理器210中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器210中的存储器为高速缓冲存储器。该存储器可以保存处理器210刚用过或循环使用的指令或数据。如果处理器210需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器210的等待时间,因而提高了系统的效率。
134.在一些实施例中,处理器210可以包括一个或多个接口。接口可以包括集成电路(inter

integrated circuit,i2c)接口,集成电路内置音频(inter

integrated circuit sound,i2s)接口,脉冲编码调制(pulse code modulation,pcm)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,uart)接口,移动产业处理器接口(mobile industry processor interface,mipi),通用输入输出(general

purpose input/output,gpio)接口,用户标识模块(subscriber identity module,sim)接口,和/或通用串行总线(universal serial bus,usb)接口等。
135.可以理解的是,本实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对手机的结构限定。在另一些实施例中,手机也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
136.充电管理模块240用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。充电管理模块240为电池242充电的同时,还可以通过电源管理模块241为手机供电。
137.电源管理模块241用于连接电池242,充电管理模块240与处理器210。电源管理模块241接收电池242和/或充电管理模块240的输入,为处理器210,内部存储器221,外部存储器,显示屏294,摄像头293,和无线通信模块260等供电。在一些实施例中,电源管理模块241和充电管理模块240也可以设置于同一个器件中。
138.手机的无线通信功能可以通过天线1,天线2,移动通信模块250,无线通信模块260,调制解调处理器以及基带处理器等实现。在一些实施例中,手机的天线1和移动通信模块250耦合,天线2和无线通信模块260耦合,使得手机可以通过无线通信技术与网络以及其他设备通信,如与可穿戴设备通信。
139.天线1和天线2用于发射和接收电磁波信号。手机中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
140.移动通信模块250可以提供应用在手机上的包括2g/3g/4g/5g等无线通信的解决方案。移动通信模块250可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,lna)等。移动通信模块250可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。
141.移动通信模块250还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块250的至少部分功能模块可以被设置于处理器210中。在一些实施例中,移动通信模块250的至少部分功能模块可以与处理器210的至少部分模块被设置在同一个器件中。
142.无线通信模块260可以提供应用在手机上的包括wlan(如(wireless fidelity,wi

fi)网络),蓝牙(bluetooth,bt),全球导航卫星系统(global navigation satellite system,gnss),调频(frequency modulation,fm),近距离无线通信技术(near field communication,nfc),红外技术(infrared,ir)等无线通信的解决方案。
143.其中,gnss可以包括北斗卫星导航系统(beidou navigation satellite system,bds),全球定位系统(global positioning system,gps),全球导航卫星系统(global navigation satellite system,glonass),准天顶卫星系统(quasi

zenith satellite system,qzss)和/或星基增强系统(satellite based augmentation systems,sbas)。
144.无线通信模块260可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块260经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器210。无线通信模块260还可以从处理器210接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
145.手机通过gpu,显示屏294,以及应用处理器等实现显示功能。gpu为图像处理的微处理器,连接显示屏294和应用处理器。gpu用于执行数学和几何计算,用于图形渲染。处理器210可包括一个或多个gpu,其执行程序指令以生成或改变显示信息。
146.显示屏294用于显示图像,视频等。该显示屏294包括显示面板。
147.手机可以通过isp,摄像头293,视频编解码器,gpu,显示屏294以及应用处理器等实现拍摄功能。isp用于处理摄像头293反馈的数据。摄像头293用于捕获静态图像或视频。在一些实施例中,手机可以包括1个或n个摄像头293,n为大于1的正整数。
148.外部存储器接口220可以用于连接外部存储卡,例如micro sd卡,实现扩展手机的存储能力。外部存储卡通过外部存储器接口220与处理器210通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
149.内部存储器221可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器210通过运行存储在内部存储器221的指令,从而执行手机的各种功能应用以及数据处理。例如,在本技术实施例中,处理器210可以通过执行存储在内部存储器221中的指令,内部存储器221可以包括存储程序区和存储数据区。
150.其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储手机使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器221可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,ufs)等。
151.可以理解的是,本技术实施例示意的结构并不构成对手机的具体限定。在本技术另一些实施例中,手机可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
152.以下实施例中的方法均可以在具有上述硬件结构的设备中实现。下面以设备1为
服务器,设备2为手机,创建适用于商场定位的定位数据库进行举例,描述本技术实施例提供的方法。
153.在本技术实施例中,定位数据库的建立可以分为数据采集阶段和数据处理阶段。其中,数据采集阶段可以由接受了众包任务的手机实现。
154.在一些实施例中,进入室内场所的手机均可以默认已接受众包任务。在另一些实施例中,也可以是手机接收到用户指示参与数据采集的操作之后,确定已接受众包任务。
155.示例性地,在用户激活所购买的手机的情况下,手机可显示提示信息1。其中,上述提示信息1用于询问是否参与构建定位数据库的数据采集阶段。这样,在接收到用户的确定操作之后,确定该手机已接受针对所有室内场所的众包任务。
156.又示例性地,还可以是用户进入室内场所之前,手机显示上述提示信息2。其中,上述提示信息2用于询问用户是否在该室内场所中采集并上传位移轨迹和指纹数据。这样,在接收到用户的确定操作之后,确定手机已接受针对该室内场所的众包任务。
157.在实现过程中,触发手机显示提示信息2的方式,可以根据不同室内场所的实际情况而定。
158.例如,在室内场所的入口处配置有广播设备(如,室内场所的入口处配置有智能广告牌、智能指示牌等)的场景中。上述广播设备可以发送针对该室内场所的众包请求信息。这样,在用户携带手机经过广播设备时,手机可接收到该众包请求信息,并显示前述提示信息2。
159.又例如,室内场所需要扫场所码才能进入的场景中。用户的手机扫描场所码后,可得到该室内场所对应的场所信息。手机根据该场所信息,查询到该室内场所为需构建定位数据库的场所时,可触发手机显示上述提示信息2。
160.当然,无论何种场景下,手机显示提示信息2之后,可根据用户指示确定的操作,判断手机已接受众包任务。
161.接收众包任务的手机,在随用户进入对应的室内场所后,可以执行采集位移轨迹和对应的指纹数据的任务。
162.在一些实施例中,在进行位移轨迹和指纹数据采集之前,手机可以先确定是否已进入室内场所。
163.作为一种可能的方式,手机根据卫星定位技术确定手机是否进入室内场所。例如,手机检测到当前位置与室内场所的入口之间的间距小于设定值,且手机的惯性测量单元检测到运动方向朝向室内场所内部,可判定手机进入室内场所。再例如,手机检测到当前位置与室内场所的入口之间的间距小于设定值,且手机接收到的全球定位系统(global positioning system,gps)信号强度低于设定强度阈值,可判定手机进入室内场所。
164.作为另一种可能的方式,手机可以根据是否接收到广播设备(如,室内场所中的智能指示牌、智能广告牌、室内导航机器人等)发送的数据,判断手机是否进入室内场所。例如,接收到携带室内场所标识的信息,判定已进入室内场所。
165.作为再一种可能的方式,手机还可以根据是否扫描室内场所的场所码,确定手机是否进入室内场所。例如,手机扫描的场所码,可得到对应的场所信息。在场所信息指示当前场所为室内场所,判定手机进入室内场所。
166.作为其他可能的方式,手机通过识别地理围栏的方式,判断手机是否进入室内场
所。例如,手机识别到室内场所的地理围栏,判定手机已随用户进入室内场所中。
167.此外,还可以采用以上多种方式的组合,对手机是否进入室内场景进行判断。
168.在本技术实施例中,在确定手机进入室内场景之后,手机启动采集用于指示位移轨迹的惯性信息和对应的指纹数据。在一些实施例中,手机采集惯性信息和对应的指纹数据的方式可以包括以下几种:
169.方式一,如图5所示,从手机进入室内场所开始,周期性地采集指纹数据,直至检测到手机离开室内场所。
170.在一些实施例中,手机判定是否进入室内场所可以参考前述实施例中的描述。在确定手机进入室内场所后,手机可以按照预设的时间周期,进行指纹数据的采集。所采集的指纹数据可以是wi

fi信号的mac字段、ssid、boottime、rssi、及frequency等之一或之间的组合。所采集的指纹数据还可以是蓝牙信号的蓝牙名称及蓝牙地址等之一或之间的组合。所采集的指纹数据还可以是基站信号或调频信号等,对此,本技术实施例中不作具体限定。
171.另外,采集指纹数据的同时手机还可以采集自身的惯性信息。例如,每个采集时间点所采集的惯性信息,可经pdr推算出对应的轨迹点。多个轨迹点按照采集的先后顺序,可组成位移轨迹。其中,每一个惯性信息可对应有时间戳,该时间戳用于该惯性信息的采集时间。同样,指纹数据也对应有时间戳,该时间戳用于指示指纹数据的采集时间。这样,利用时间戳,手机可以将惯性信息和指纹数据对齐,从而,确定惯性信息所指示的轨迹点与指纹数据之间的对应关系。
172.当然,在其他可能的实施例中,可以是每采集一个惯性信息,便对应的采集一指纹数据。从而,确定惯性信息所指示的轨迹点与指纹数据之间的对应关系。
173.在本技术实施例中,手机离开室内场所则停止指纹数据的采集。作为一种示例,手机根据卫星定位技术确定手机是否离开室内场所。例如,手机接收到的gps信号恢复正常且利用卫星定位技术确定手机位于室内场所的出口,可判定手机离开室内场所。作为另一种示例,手机还可以通过识别地理围栏的方式,判断手机是否离开室内场所。例如,手机未识别到室内场所的地理围栏,判定手机已随用户离开室内场所。
174.可见,手机从进入室内场所到离开室内场所期间,可以持续进行指纹数据的采集。这样,增加所采集到的指纹数据的数量,更有利于后续建立定位数据库。
175.方式二,如图6中的(a)所示,从手机进入室内场所开始,周期性地采集指纹数据,直至检测到设定的触发事件,手机暂停指纹数据的采集。
176.在一些实施例中,上述触发事件可以是手机检测到手机停止位移,且连接室内场所中的路由器,例如,连接到商场中商店提供的wi

fi路由器。
177.在其他实施例中,上述触发事件还可以是手机经过室内场所中的地标位置点(landmark),如,电梯、拐弯处、扶梯、进出口、商场内每层唯一的收银台等。示例性地,可以利用手机中的ai模型对实际场景进行识别,根据识别结果确定手机是否经过地标位置点。在确定手机经过地标位置点时,确定手机检测到触发事件。又示例性地,地标位置点为电梯时,检测触发事件的方式可以是手机感应到用户乘坐电梯。再例如,地标位置点为厕所,触发事件可以是手机识别出厕所中水流冲刷的声音。再例如,地标位置点是扶梯,触发事件可以是手机采集到位移方向与水平面之间的夹角超过阈值。再例如,触发事件还可以是手机实时采集的指纹数据与地标位置点所对应的指纹数据匹配。
178.在其他实施例中,触发事件还可以手机扫描室内场所中的区域码。室内场所内可以设置多个区域码。每个区域码对应着室内场所中的一空间。手机通过扫描区域码可获取当前所处空间的绝对坐标。
179.例如,商场内每一家商店可以对应着一区域码,用户达到商店后,可以使用手机扫描对应的区域码,获得用户所进入的商店的绝对坐标。
180.再例如,医院中每一个诊室可以对应着一个区域码,用户达到诊室后可以使用手机扫描对应的区域码,获得用户所抵达的诊室的绝对坐标。
181.再例如,博物馆每一个展示区都对应有一个区域码,用户达到展示区后,可通过扫描区域码,获取展示区对应的讲解内容及绝对坐标。
182.此外,还可以根据不同的室内场所的特点设定不同的触发事件。
183.示例性地,室内场所为医院时,触发事件可以是手机在诊室前扫码签到、手机利用电子社保卡实现刷卡或者手机停留在同一位置点超过指定时长。
184.又示例性地,室内场所为商场时,触发事件还可以是手机扫码支付、手机扫描点单、手机扫码连接wi

fi、手机通过拍照获取到商场展示商品的照片、手机查找商品的价格或手机启用应用程序的买单功能。
185.在本技术实施例中,上述触发事件可以利用手机内预置的人工智能(artificial intelligence,ai)算法实现检测。
186.另外,在手机暂停指纹数据采集之后,若手机检测到启动事件,重新开始周期性地采集指纹数据,直至再次检测到设定的触发事件。
187.在一些实施例中,上述启动事件可以是:手机恢复到休眠状态(例如,手机息屏或者手机锁屏)且手机从静止状态变为运动状态。换句话说,用户暂停玩手机且继续在室内场所中行走的情况下,手机可以重启指纹数据的采集。
188.在另一些实施例中,上述启动事件还可以是:手机当前位置与轨迹点1之间的距离超过距离阈值1。其中,触发事件发生时手机采集到的惯性信息可用于指示轨迹点1。换句话说,用户已离开触发事件发生地的情况下,手机可以重启指纹数据的采集。
189.可见,在方式二中,利用策略暂停或重启手机对指纹数据的采集,不仅确保能够得到室内场所中丰富的指纹数据,还可以减少手机的能量消耗。改善采集指纹数据等行为对手机资源的长期占用,一定程度上,改善了对用户正常使用手机的影响。
190.方式三,如图6中的(b)所示,在手机在室内场所中,检测到设定的触发事件,手机启动周期性地采集指纹数据的采集,直至采集时长达到设定时间阈值。
191.在一些实施例中,上述触发事件可参考方式二中的触发事件,在此不再赘述。例如,时间阈值为2分钟,那么手机在商场中扫描支付之后的2分钟内,手机周期性地采集指纹数据。
192.可见,方式三可以更加有效地减少手机采集指纹数据的时间,提升手机的节能。
193.当然,除了以上三种方式外,手机还可以采用其他方式采集指纹数据和用于指示位移轨迹的数据。例如,手机在进入室内场所后,还可以是在手机移动的情况下,随机启动采集惯性信息和指纹数据,并在采集时长达到设定时间阈值后,停止采集。
194.在一些实施例中,手机可以根据用户的配置操作,从以上多种方式中确定出采集指纹数据和惯性信息的方式。在另一些实施例中,手机还可以默认采用方式一、方式二或方
式三进行指纹数据和惯性信息的采集。
195.另外,手机位于室内场所中,除了采集指纹数据和用于指示位移轨迹的数据之外,还可以采集标定信息。上述标定信息与世界坐标系中一个绝对坐标对应,可用于确定轨迹点1的绝对坐标。也即,上述标定信息可用于确定轨迹点1在真实空间中所对应的位置。
196.在一些实施例中,手机可响应于触发事件,进行标定信息的采集。所采集的标定信息可以是真实空间的区域名称,比如,商店名称或者诊室名称等。可理解的,室内场所中,不同区域所对应的区域名称可以不同。同时,在室内场所中,不同区域所对应的绝对坐标可预先确定出。这样,根据采集到的区域名称,便可确定出对应的绝对坐标。
197.在一些实施例中,针对不同类型的触发事件,采集标定信息的方式不同。
198.作为一种示例,部分类型的触发事件,可触发手机显示包含区域名称(例如,商店名称、诊室名称)的界面。故,对于该类触发事件,手机可以捕获显示区域名称的界面,并从该界面中识别出作为标定信息的区域名称。
199.例如,触发事件为扫描支付的场景中,手机检测到扫码支付之后,手机可显示如图7a中的(a)所示的界面701,该界面701用于指示扫码支付成功。另外,该界面701中包括收款商店的名称,如,a奶茶店。由于扫码支付通常发生在收款商店附近,故可确定检测到扫码支付时手机位于收款商店附近。此时,手机可以捕获界面701,并从界面701识别出“a奶茶店”,以作为标定信息。
200.另外,类似扫桌码点单、消费应用程序中买单之类的触发事件,也可触发手机显示包括商店名称的界面。在检测到该类触发事件之后,手机也可以捕获显示有商店名称的界面,并从界面中识别出商店名称,作为标定信息。
201.再如,触发事件为诊室前扫码签到时,手机可显示指示签到成功的界面。该界面包括成功签到的诊室名称。由此可确定手机此时位于该诊室附近,故手机可以捕获该界面,并从该界面中识别出诊室名称,作为标定信息。
202.再比如,触发事件为连接路由器时,在检测到连接商家提供的路由器的情况下,手机可显示如图7a中的(b)所示的界面702,该界面702中包括名为“a奶茶店”的路由器、“b影院”的路由器等。其中,界面702中对应a奶茶店的路由器显示有标识703和标识704。上述标识703指示a奶茶店的路由器信号满格,上述标识704用于指示手机已接入a奶茶店的路由器。由此可确定手机位于a奶茶店的附近,在此情况下,手机根据从界面702识别出的标识703、标识704和“a奶茶店”,确定“a奶茶店”为标定信息。
203.作为另一种示例,部分类型的触发事件出现之后,手机可采集到包含区域名称的环境语音数据。故,该类触发事件所对应的标定信息还可以是环境音频数据。例如,手机在商场内,手机扫码支付后,手机采集到“a奶茶店收款10元”。在此情况下,手机可通过语音识别技术从“a奶茶店收款10元”中确定出a奶茶店为标定信息。再例如,手机在商场内,手机扫码连接wi

fi之后,手机采集到的“欢迎光临a奶茶店”,在此情况下,手机可通过语音识别技术从“欢迎光临a奶茶店”中确定出a奶茶店为标定信息。
204.作为一种示例,在部分类型的触发事件发生之后,手机可获取包含室内场所中陈列物品的图像,如称为第一图像。由于物品的陈放区域可预先确定,故,手机可以通过识别物品的方式,确定对应的区域名称,以作为标定信息。
205.例如,触发事件为手机拍摄商品查价格时,手机识别出该商品为c品牌的衣服,而c
品牌的衣服统一由c衣服店售卖,故可以确定“c衣服店”为标定信息。
206.再一种示例中,手机在检测到触发事件为经过地标位置点时,可以将识别出的地标名称作为对应的标定信息。例如,手机ai识别出手机经过电梯,那么将地标名称“电梯”作为标定信息。
207.另外,在手机检测到触发事件后,也可能出现未获取到标定信息的情况。比如,手机扫描支付之后,未捕获到显示有商店名称的界面,从而未得到标定信息。再如,手机连接的路由器未以商店名称进行命名,故,手机连接入商店提供的路由器之后,未获取到包含商店名称的界面,进而也未得到标定信息等。
208.在未获取到标定信息的场景下,可以将该触发事件对应的轨迹点1视为普通轨迹点,并同步记录对应的指纹数据。
209.在手机采集到指纹数据、用于指示位移轨迹的数据和标定信息的情况下,可以向服务器发送指纹数据、用于指示位移轨迹的数据和标定信息。在手机采集到指纹数据和用于指示位移轨迹的数据情况下,可以向服务器发送指纹数据和用于指示位移轨迹的数据。
210.在一些示例中,上述用于指示位移轨迹的数据,可以是采集到的惯性信息。在另一些示例中,上述用于指示位移轨迹的数据,也可以惯性信息所对应轨迹点。也就是,在该示例中,手机采集到惯性信息后,手机还可以利用pdr推算该惯性信息对应的轨迹点。
211.作为一种实现方式,如图7b所示,本技术实施例所提供的方法可以包括:
212.s101,手机检测到第一事件。
213.在一些实施例中,上述第一事件可以是前述实施例中提到的触发事件。
214.s102,手机响应于检测到的第一事件,采集第一轨迹点以及对应的指纹数据。
215.在一些实施例中,手机以第一事件为契机采集第一轨迹点,以使第一轨迹点可以指示第一事件的发生地。在采集第一轨迹点的同时,采集对应的指纹数据。
216.s103,在检测到的第一事件之后,手机采集第二轨迹点及对应的指纹数据。
217.在一些实施例中,上述第二轨迹点的采集时间点可以在第一轨迹点之后。上述第一轨迹点和第二轨迹点可以通过手机采集到的惯性信息确定,可用于指示手机所感知到的位移轨迹。
218.在其他实施例中,也可以是先采集第二轨迹点,直至检测到第一事件,并采集到第一轨迹点。
219.s104,手机向服务器发送第一轨迹点、第二轨迹点以及对应的指纹数据。
220.在一些实施例中,第一轨迹点、第二轨迹点,以及与所述第一轨迹点、所述第二轨迹点分别对应的指纹数据可以组成手机采集的第一众包数据。
221.在另一些实施例中,上述第一众包数据还包括:与第一轨迹点对应的第一区域名称。其中,第一区域名称可以是第一事件的发生地的名称。比如,第一事件为刷卡支付等事件时,第一区域名称可以是商店名。再比如,第一事件为诊室报到时,第一区域名称可以是诊室名称。
222.在另一些实施例中,手机向服务器发送的还可以是采集到的一些原始数据,比如,用于指示轨迹点的惯性信息、指纹数据和第一区域名称。这样,服务器接收到上述原始数据后,可以根据惯性信息确定轨迹点,从而确定出来自该手机的第一众包数据。
223.在一些实施例中,服务器根据手机所发送的数据,确定手机所对应的众包数据。
224.示例性地,众包数据包括指示手机的位移轨迹的多个轨迹点、对应的指纹数据及标定数据。例如,下表1所示的众包数据1:
225.表1
226.轨迹点指纹数据标定信息轨迹点a指纹数据a无轨迹点b指纹数据b标定信息a
227.其中,表1中轨迹点a和轨迹点b按照采集的时间先后顺序排列,可用于指示手机的位移轨迹。另外,表1示出手机在轨迹点a采集到指纹数据a,在轨迹点b采集到指纹数据b。手机在轨迹点b检测到触发事件,并在检测到触发事件之后,采集到标定信息a。
228.又示例性地,众包数据包括指示手机的位移轨迹的多个轨迹点及对应的指纹数据。例如,下表2所示的众包数据2:
229.表2
230.轨迹点指纹数据轨迹点c指纹数据c轨迹点d指纹数据d轨迹点e指纹数据e
231.其中,表2中轨迹点c、轨迹点d和轨迹点e按照采集的时间先后顺序排列,可用于指示手机的位移轨迹。另外,手机在轨迹点c采集到指纹数据c,在轨迹点d采集到指纹数据d,在轨迹点e采集到指纹数据e。此外,表2显示手机在位移轨迹上未检测到触发事件。
232.在一些实施例中,手机向服务器发送多个惯性信息,而不是发送轨迹点的情况下,服务器还可以利用pdr推算每个惯性信息所对应的轨迹点,并基于惯性信息和指纹信息和标定信息的对应关系,确定轨迹点与指纹数据、标定信息之间的对应关系。
233.在大量用户携带手机(或者其他类型的设备2)在同一室内场所随机活动后,服务器可以获得多条众包数据。这样,服务器可以根据多条众包数据进入数据处理阶段。
234.在数据处理阶段,服务器可以根据属于同一室内场所的众包数据,确定该室内场所中多个绝对位置点与指纹数据之间的对应关系。其中,绝对位置点是具有绝对坐标的位置点。
235.下面以室内场所为商场为例,描述服务器确定室内场所中多个绝对位置点与指纹数据之间的对应关系的过程。
236.在一些实施例中,服务器中可以包括该已测位置点和对应的指纹数据。其中,上述已测位置点是商场中绝对坐标已知的位置点。例如,预先标定出绝对坐标和对应的指纹数据的位置点。为了方便描述,将已测位置点的绝对坐标称为绝对坐标3,在绝对坐标3处采集的指纹数据又称为指纹数据4。
237.在一些实施例中,服务器可以利用指纹数据4与各条众包数据中包括指纹数据进行比对。在指纹数据4与众包数据中指纹数据5匹配时,从该众包数据中确定与指纹数据5对应的轨迹点2。服务器确定轨迹点2与已测位置点在空间上为同一点,那么轨迹点2的绝对坐标也随之确定。
238.例如,服务器内记录有商场收银台的绝对坐标a与指纹数据4对应。另外,表2所示的众包数据2可以指示如图8所示的位移轨迹801,位移轨迹801中包括轨迹点c、轨迹点d和
轨迹点e等。在该众包数据2指示轨迹点d的指纹数据d与指纹数据4匹配,那么确定轨迹点d与指纹数据4匹配。这样,服务器可将绝对坐标a确定为轨迹点d的绝对坐标。
239.在另一些实施例中,服务器还可以包括地标名称与绝对坐标之间的对应关系。这样,在众包数据中的标定信息为地标名称时,可确定标定信息所对应的轨迹点的绝对坐标。
240.在另一些实施例中,服务器还可以包括兴趣点(point of interest,poi)数据库。上述poi数据库包括商店名称和商店的位置相关信息。
241.例如,位于成都的华联商场6楼在poi数据库中对应的poi数据,如下表3:
242.表3
[0243][0244][0245]
在一些实施例中,在众包数据包括标定信息的情况下,服务器还可以根据标定信息和poi数据库,确定出该众包数据中至少一个轨迹点的绝对坐标。例如,对于表1所示的众包数据1,可以利用标定信息a确定轨迹点b的绝对坐标。
[0246]
示例性地,在表1中标定信息a为“a奶茶店”的情况下,通过poi查询到“a奶茶店”的绝对坐标为(x1,y1),这样服务器可确定轨迹点b的绝对坐标也为(x1,y1)。
[0247]
另外,在poi数据库包括多个商场的poi数据的情况下,由于不同商场中可能存在
相同的商店名称,那么服务器依据标定信息可以从poi数据库中查询出多条poi数据。
[0248]
例如,在多个商场都具有a奶茶店的情况下,根据“a奶茶店”从poi数据库中查询到的poi数据,如表4所示:
[0249]
表4
[0250][0251][0252]
此时,为了确定表1所示的众包数据1中轨迹点b的绝对坐标,还可以结合手机进入商场时采集到的地理围栏进行判断。例如,手机采集到用于众包数据1的原始数据之前,识别到“四川省成都市锦江区华联商场a座”的地理围栏,那么可确定众包数据1中轨迹点b的绝对坐标为(x1,y1)。同理,手机采集到众包数据1的原始数据之前,识别到“四川省成都市锦江区茂业商场”的地理围栏,那么可确定众包数据1中轨迹点b的绝对坐标为(x5,y5)。
[0253]
可以理解地,poi数据库中商店的绝对坐标通常是商店的几何中心,而手机检测到触发事件的实际位置(如,轨迹点b)与该商店的几何中心之间存在间距。例如,如图9所示,a奶茶店的收银台设于区域901,那么轨迹点b可位于区域901内。显然,轨迹点b与商店的几何中心902之间存在间距d。在商店面积越大时,间距d也越大。
[0254]
故,在另一些实施例,为了提升确定出的轨迹点b的准确性,在利用众包数据1的标定信息a从poi数据库中查询到绝对坐标,也即(x1,y1)后,将轨迹点b的绝对坐标记为(x1 δ1,y1 γ1),其中,δ1和γ1都是取值未定的待定参数。这样,服务器通过结合其他众包数据,即可拟合出δ1和γ1的取值,从而得到轨迹点b的准确绝对坐标。
[0255]
作为一个示例,上述拟合δ1和γ1的取值的过程如下:
[0256]
s1,获取具有标定信息b的众包数据,如称为第二众包数据。其中,标定信息b所指示的商店与标定信息a指示的商店不同。例如,标定信息b为第二区域名称。
[0257]
示例性地,具有标定信息b的众包数据3可以如下表5所示:
[0258]
表5
[0259]
轨迹点指纹数据标定信息轨迹点f指纹数据f标定信息b轨迹点g指纹数据g无
[0260]
其中,标定信息b为“b影院”,通过查询poi数据库,确定b影院的绝对坐标为(x2,y2),如称为第三绝对坐标。此时,也记轨迹点f的绝对坐标(x2 δ2,y2 γ2)。轨迹点f又可称
为第三轨迹点。
[0261]
s2,获取同时具有指纹数据f和指纹数据b的众包数据,如称为第三众包数据。例如,下表6所示的众包数据4:
[0262]
表6
[0263]
轨迹点指纹数据轨迹点h指纹数据b轨迹点i指纹数据f
[0264]
如图10所示,众包数据4指示了通过轨迹点h(如称为第四轨迹点)和轨迹i(如称为第五轨迹点)的位移轨迹a。其中,轨迹点h对应的指纹数据与轨迹点b对应的指纹数据匹配,均为指纹数据b,也即,轨迹点h与轨迹点b为同一点。同时,轨迹点i对应的指纹数据与轨迹点f对应的指纹数据匹配,均为指纹数据f,也即,轨迹点i与轨迹点f为同一点。也即,s2所获取的众包数据所指示的位移轨迹可视为同时经过轨迹点f和轨迹点b。
[0265]
s3,获取轨迹点f和轨迹点b之间的轨迹距离m1。
[0266]
在一些实施例中,依据众包数据4,基于pdr推算出轨迹点h和轨迹点i之间的直线距离,以作为轨迹距离m1。
[0267]
另外,在获取到多个同时具有指纹数据f和指纹数据b的众包数据的情况下。若不同众包数据指示采用不同位移轨迹通过轨迹点f和轨迹点b,那么依据多个众包数据,结合pdr推算出多个直线距离。服务器可以根据多个直线距离确定轨迹距离m1。比如,将多个直线距离的平均值作为轨迹距离m1。s4,然后根据绝对坐标为(x1 δ1,y1 γ1)、(x2 δ2,y2 γ2)及轨迹距离m1,构建待解方程。例如,待解方程为
[0268]
s5,获取具有标定信息c的众包数据。其中,标定信息c所指示的商店与标定信息a指示的商店以及标定信息b指示的商店都不同。
[0269]
具有标定信息c的众包数据,可称为众包数据5,如下表7所示:
[0270]
表7
[0271]
轨迹点指纹数据标定信息轨迹点j指纹数据j无轨迹点k指纹数据k标定信息c
[0272]
其中,标定信息c为“c衣服店”,通过查询poi数据库,确定c衣服店的绝对坐标为(x3,y3),此时,也记轨迹点k的绝对坐标(x3 δ3,y3 γ3)。
[0273]
s6,获取同时经过轨迹点f和轨迹点k的其他众包数据,并获取轨迹点f和轨迹点k之间的轨迹距离m2。
[0274]
在一些实施例中,上述s6的原理可参考上述s2和s3,在此不再赘述。
[0275]
s7,然后根据绝对坐标为(x3 δ3,y3 γ3)、(x2 δ2,y2 γ2)及轨迹距离m2,构建待解方程。例如,待解方程为
[0276]
以上步骤描述了确定两个待解方式的过程,按照以上步骤的原理,基于其他众包数据,确定至少十个待解方程。然后,将得到所有待解方式联立求解。从而,确定出δ1、δ2、γ1、γ2等待定参数的取值。
[0277]
如此,不仅可以确定轨迹点b的绝对坐标(x1 δ1,y1 γ1),还可以确定轨迹点f的
绝对坐标(x2 δ2,y2 γ2)、轨迹点k的绝对坐标(x3 δ3,y3 γ3)等。
[0278]
在其他实施例中,服务器可以在标定信息所指示的商店面积超过预设面积时,采用上述结合其他众包数据的方式,确定该标定信息对应的轨迹点的绝对坐标。在标定信息所指示的商店面积不超过预设面积时,利用poi数据库中查询到的商店绝对坐标,作为该标定信息对应的轨迹点的绝对坐标。如此,充分结合两种方式的优势。
[0279]
通过上述方式,服务器可以确定众包数据中一个或多个轨迹点的绝对坐标。确定了绝对坐标的轨迹点又可称为已知轨迹点。服务器可以利用已知轨迹点,校准众包数据中其他轨迹点与已知轨迹点之间的相对位置关系(如,方向和距离),改善pdr推算出的位移轨迹初始方向有误、轨迹点之间距离评估存在误差等问题。多个轨迹点之间的相对位置关系校准后,利用已知轨迹点的绝对坐标,即可确定出其他轨迹点的绝对坐标。
[0280]
在一些实施例中,在同一众包数据包括至少两个已知轨迹点情况下,可以利用该众包数据中的已知轨迹点,对该众包数据中其他轨迹点与已知轨迹点间相对位置关系进行校准。例如,众包数据6如下表8:
[0281]
表8
[0282][0283][0284]
上述众包数据6指示了图11中的(a)所示的位移轨迹1101,该位移轨迹1101包括轨迹点m、轨迹点n、轨迹点o和轨迹点r。
[0285]
服务器依据标定信息m确定出轨迹点m的绝对坐标m,依据标定信息r确定出轨迹点r的绝对坐标r。这样,服务器可以利用绝对坐标m和绝对坐标r之间的方向,校准轨迹点m和轨迹点n之间的相对方向,也即,校准位移轨迹1101的初始方向。在初始方向校准之后,位移轨迹1101中的其他轨迹点相对于轨迹点m的方向也调整。调整后的多个轨迹点之间的位置关系如图11中的(b)所示。
[0286]
在初始方向校准后,众包数据6中其他轨迹点之间的相对位置关系也就准确了。另外,还可以利用绝对坐标m和绝对坐标r之间实际距离,确定用户行走时的实际单位步长。例如,pdr基于标准步长(如,每步0.6米),确定从轨迹点m走到轨迹点r走了6m,然而,绝对坐标m和绝对坐标r之间实际距离5m,那么可以确定用户的实际单位步长为0.5米。在确定出用户的实际单位步长后,再根据实际单位步长确定校正位移轨迹1101中任意两个轨迹点之间的位移距离。
[0287]
对位移轨迹1101经过上述校准处理后,得到如图11中的(b)所示的位移轨迹1102。如此,服务器基于已知轨迹点的绝对坐标,便可确定出其他轨迹点的绝对坐标。
[0288]
在另一些实施例中,众包数据包括至少两个已知轨迹点时,还可以把该众包数据所指示的位移轨迹和已知轨迹点的绝对坐标,输入图优化(graph slam)模型中,从而得到该位移轨迹中的其他轨迹点的绝对坐标。可以理解的,graph slam模型也可以用于对位移轨迹中各轨迹点之间的方向和距离进行校准。
[0289]
在另一些实施例中,在众包数据中仅有一个已知轨迹点的情况下,可以配合其他具有已知轨迹点的众包数据,对该众包数据中多个轨迹点的相对位置关系进行校准。从而,确定出更多轨迹点所对应的绝对坐标。
[0290]
作为一个示例,针对仅有一个已知轨迹点的众包数据,进行轨迹点间相对位置关系的校准过程如下:
[0291]
a1,将只包含一个已知轨迹点(也即,已确定绝对坐标的轨迹点)的众包数据与其他具有至少一个已知轨迹点的众包数据进行拼接,从而得到具有至少两个已知轨迹点的组合轨迹。
[0292]
以众包数据1为例,轨迹点b的绝对坐标已通过标定信息a确定,但轨迹点a的绝对坐标未知。此时,众包数据2中轨迹点d的绝对坐标也已确定。同时,服务器中包括众包数据7,如表9所示:
[0293]
表9
[0294]
轨迹点指纹数据轨迹点q指纹数据a轨迹点w轨迹点w轨迹点y指纹数据c
[0295]
如图12中的(a)所示,众包数据7的轨迹点q和众包数据1中的轨迹点a具有匹配的指纹数据,可视为同一位置点。众包数据7的轨迹点y和众包数据2中的轨迹点c具有匹配的指纹数据,可视为同一位置点。
[0296]
此时,服务器利用指纹的相似性,将众包数据1、众包数据7和众包数据2所指示的位移轨迹拼接为一条组合轨迹,如图12中的(b)所示。这样,得到的组合轨迹具有两个已知轨迹点。
[0297]
a2,利用图优化(graph slam)模型,处理具有两个已知轨迹点的组合轨迹,得到组合轨迹中所有轨迹点的绝对坐标。
[0298]
又例如,服务器中包括众包数据8,如表10所示:
[0299]
表10
[0300]
轨迹点指纹数据轨迹点z指纹数据a轨迹点x指纹数据x
[0301]
其中,众包数据8的轨迹点z、众包数据1中的轨迹点a和众包数据7中的轨迹点q具有匹配的指纹数据,可视为同一点。换句话说,众包数据1、众包数据7和众包数据8所指示的位移轨迹交汇于同一点,该点可称为交汇点。在此场景下,若轨迹点w、轨迹点x和轨迹点b均为已知轨迹点,那么利用轨迹点b的绝对坐标b,确定穿过绝对坐标b的多条待选路径1。其中,确定待选路径1的方式为:采用绝对坐标b为基点,确定不同初始方向下轨迹点a的可能位置,然后,根据轨迹点a的可能位置和绝对坐标b,确定待选路径1。
[0302]
同理,利用轨迹点w的绝对坐标w,确定穿过绝对坐标w的多条待选路径2。利用轨迹点x的绝对坐标x,确定穿过绝对坐标x的多条待选路径3。
[0303]
在一些实施例中,还可以结合商场地图对待选路径1、待选路径2和待选路径3进行筛选,筛除在商场地图中不可通行的待选路径。需要说明的是,上述待选路径中每个轨迹点
均对应有绝对坐标。然后,确定筛选后的待选路径1、待选路径2和待选路径3的交汇点及对应的绝对坐标。
[0304]
另外,在确定出多个交汇点时,还可以结合商场地图,筛除一些不可能存在的交汇点。比如,筛除交汇于室外的点、筛除交汇于悬空区域的点等。
[0305]
如此,上述三条位移轨迹中均可以确定出至少两个已知轨迹点。对于具有至少两个已知轨迹点的位移轨迹,服务器利用graph slam模型,可确定出该位移轨迹中其他轨迹点的绝对坐标。
[0306]
在一些实施例中,服务器还可以利用众包数据中的轨迹点作为纽带,建立绝对坐标和指纹数据之间的对应关系。这样,轨迹点的绝对坐标均已确定的众包数据,还可以指示由多个绝对坐标构成的条绝对轨迹。当然,绝对轨迹中各绝对坐标也对应有指纹数据。这样,利用绝对轨迹和对应的指纹数据,便可构建定位数据库。
[0307]
作为一种示例,定位数据库可以由多个表格构成。每个表格包括指示绝对坐标的一列和指示指纹数据的一列,绝对坐标和指纹数据之间一一对应。同一表格中的绝对坐标可构成一条绝对轨迹。如此,建立的定位数据库,不仅包括位置点和指纹数据之间的对应关系,还包括路径与指纹数据之间的对应关系。
[0308]
由于多个用户在同一商场中行走于同一实际路径,服务器所创建的定位数据库中可以包括指示同一实际路径的多条绝对轨迹。
[0309]
在一些实施例中,服务器获取指示同一实际路径的多条绝对轨迹。示例性地,服务器可以根据绝对轨迹所对的指纹数据,确定指示同一实际路径的多条绝对轨迹。例如,两条绝对轨迹所对应的指纹数据之间存在两两匹配关系,那么可确定这两条绝对轨迹指示同一实际路径。
[0310]
然后,服务器可以利用graph slam模型,对获取的多条绝对轨迹进行处理,得到指示该实际路径的修正轨迹。其中,graph slam模型可用于对多条绝对轨迹进行均值化处理。在利用graph slam模型处理绝对轨迹的过程中,绝对轨迹的绝对坐标可被修正,但是绝对坐标对应的指纹数据不会改变。故,修正后的绝对坐标也对应着指纹数据。利用修正轨迹和对应的指纹数据,更新定位数据库中指示同一条实际路径的多条绝对轨迹,实现对定位数据库的优化。
[0311]
在本技术实施例中,定位数据库包括商场中绝对坐标和指纹数据之间的对应关系。这样,利用上述定位数据库为手机导航的过程可以是:手机每采集到一个指纹数据,便利用该指纹数据遍历定位数据库,查找对应的绝对坐标,从而实现定位。
[0312]
在另一些实施例中,定位数据库还包括绝对轨迹与指纹数据之间的对应关系。这样,利用上述定位数据库为手机导航的过程可以是:
[0313]
手机采集到第一个指纹数据(如称为第一指纹数据)之后,利用该指纹数据从定位数据库中查找对应的绝对坐标,如称为第一定位坐标。确定查找到的绝对坐标所对应的绝对轨迹,如称为绝对轨迹1。这样,手机采集到第二个指纹数据时,将第二个指纹数据(如称为第二指纹数据)与绝对轨迹1中其他坐标点(如称为第二定位坐标)所对应的指纹数据进行匹配,以便快速确定出对应的绝对坐标,也即,第二个指纹数据所对应的第三定位坐标。如此,避免了手机采集的所有指纹数据都需要遍历定位数据库进行比对,提高室内定位的准确性和时效性。
[0314]
作为一种示例,手机可以采集到指纹数据后,将指纹数据发送给服务器,由服务器利用定位数据库进行定位,并将定位结果反馈给手机。
[0315]
作为另一种示例,还可以是手机从服务器获取定位数据库,这样手机就可以根据实时采集的指纹数据,从定位数据库中确定出定位结果。
[0316]
作为一种实现方式,本技术实施例所提供的方法,还可以应用于第二设备,如服务器。
[0317]
如图13所示,上述方法可以包括以下步骤:
[0318]
s201,服务器接收来自每个手机的第一众包数据。
[0319]
在一些实施例中,上述第一众包数据包括第一轨迹点、第二轨迹点,以及与所述第一轨迹点、所述第二轨迹点分别对应的指纹数据。上述第一轨迹点和第二轨迹点同属于第一位移轨迹,也即,手机自感知到移动轨迹。
[0320]
s202,服务器确定所述第一轨迹点在预设坐标系中的第一坐标。
[0321]
在一些实施例中,上述预设坐标系可以是世界坐标系,也可以是预先选择的地图坐标系。为了方便描述,以预设坐标系是世界坐标系,第一坐标是绝对坐标为例进行说明。
[0322]
作为一个示例,可以利用指纹数据的相似性,结合已知轨迹点(如,已知绝对坐标的轨迹点),确定第一轨迹点的第一坐标,也即,第一绝对坐标。
[0323]
作为另一个示例,还可以利用第一轨迹点对应的标定信息(如,第一区域名称),结合poi数据库,确定第一轨迹点的第一坐标,如,第一绝对坐标。结合poi数据库,确定第一轨迹点的第一绝对坐标的过程中,利用第一区域名称直接从poi数据库查询到的绝对坐标称为第二绝对坐标。在第一区域名称所对应的区域面积不超过预设面积阈值时,第二绝对坐标可以直接作为第一绝对坐标。在第一区域名称所对应的区域面积超过预设面积阈值时,还需要根据第二绝对坐标,结合其他众包数据,确定第一绝对坐标,确定原理可参考前述实施例中的描述,在此不再赘述。
[0324]
s203,服务器根据所述第一轨迹点的第一坐标,对所述第二轨迹点相对于所述第一轨迹点的距离和方向进行校准。
[0325]
在一些实施例中,校准后的第二轨迹点与第一轨迹点之间同属第二位移轨迹,该第二位移轨迹可以更准确的指示手机真实的移动轨迹。
[0326]
作为一种示例,在第一位移轨迹上具有至少两个已确定第一坐标的第一轨迹点时,可以直接利用graph slam模型对第一位移轨迹进行处理,从而得到调整后的第二位移轨迹。
[0327]
作为另一种示例,在第一位移轨迹上只有一个已确定第一坐标的第一轨迹点时,服务器获取第三轨迹。上述第三轨迹中至少一个轨迹点的指纹数据与所述第一轨迹点或第二轨迹点的指纹数据匹配;所述第三轨迹中至少一个轨迹点在预设坐标系下的第四坐标已确定。将所述第一位移轨迹与第三轨迹拼接,得到组合轨迹。这样,根据所述第一坐标和第四坐标,结合graph slam模型,对所述组合轨迹的初始方向和所述组合轨迹包含的轨迹点之间的距离进行校准,得到第二位移轨迹。
[0328]
s204,服务器根据第一坐标和校准后的所述距离和方向,确定所述第二轨迹点在预设坐标系中的第二坐标。
[0329]
s205,服务器根据所述第一坐标、第二坐标以及与所述第一轨迹点、所述第二轨迹
点分别对应的指纹数据,构建定位数据库。
[0330]
此外,本技术实施例还提供一种电子设备,该电子设备可以包括:存储器和一个或多个处理器。该存储器和处理器耦合。该存储器用于存储计算机程序代码,该计算机程序代码包括计算机指令。当处理器执行计算机指令时,可使得电子设备执行上述实施例中手机或服务器执行的各个步骤。当然,该电子设备包括但不限于上述存储器和一个或多个处理器。例如,该电子设备的结构可以参考图3所示的服务器的结构。再例如,该电子设备的结构还可以图4所示的手机的结构。
[0331]
本技术实施例还提供一种芯片系统,该芯片系统可以应用于前述实施例中的电子设备。如图14所示,该芯片系统包括至少一个处理器2201和至少一个接口电路2202。该处理器2201可以是上述电子设备中的处理器。处理器2201和接口电路2202可通过线路互联。该处理器2201可以通过接口电路2202从上述电子设备的存储器接收并执行计算机指令。当计算机指令被处理器2201执行时,可使得电子设备执行上述实施例中手机执行的各个步骤。当然,该芯片系统还可以包含其他分立器件,本技术实施例对此不作具体限定。
[0332]
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0333]
在本技术实施例各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0334]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:快闪存储器、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
[0335]
以上所述,仅为本技术实施例的具体实施方式,但本技术实施例的保护范围并不局限于此,任何在本技术实施例揭露的技术范围内的变化或替换,都应涵盖在本技术实施例的保护范围之内。因此,本技术实施例的保护范围应以所述权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献