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

定位方法、装置、电子设备及计算机存储介质与流程

2022-02-22 07:42:59 来源:中国专利 TAG:


1.本技术实施例涉及计算机技术领域,尤其涉及一种定位方法、装置、电子设备及计算机存储介质。


背景技术:

2.导航技术是一种通过实时定位用户的位置,并根据用户的位置进行路线规划和引导的技术。以导航引导为例,在导航引导过程中,需要实时对用户的位置进行定位,在室外,现有的定位方式主要是通过卫星定位系统(如gps或者北斗等)对用户的位置进行定位,但是卫星信号在隧道或地下等场景会被遮挡,从而导致在这些场景无法通过卫星定位系统对用户的位置进行定位。
3.为解决隧道等场景因为无卫星信号难以定位的问题,现有技术中一般通过航位推算等方式进行辅助定位。航位推算一方面需要依赖用户进入隧道之前的卫星定位信息,另一方面随着车辆在隧道等场景行驶时间的增长,容易产生较大累计推算误差,从而导致通过航位推算得到的位置的误差较大。
4.因此,现有技术缺少能够在隧道等场景对用户的位置进行准确定位的技术方案。


技术实现要素:

5.有鉴于此,本技术实施例提供一种定位方案,以至少部分解决上述问题。
6.根据本技术实施例的第一方面,提供了一种定位方法,包括:接收定位请求,所述定位请求至少携带了待定位对象扫描到的定位指纹信息;根据所述定位指纹信息和所述待定位对象的历史定位位置信息,确定所述定位请求是否为隧道定位请求;若是,则根据所述定位指纹信息、所述待定位对象的历史定位位置信息和对应的指纹定位特征,确定所述待定位对象在所述隧道内的位置。
7.根据本技术实施例的第二方面,提供了一种定位装置,包括:接收模块,用于接收定位请求,所述定位请求至少携带了待定位对象扫描到的定位指纹信息;第一确定模块,用于根据所述定位指纹信息和所述待定位对象的历史定位位置信息,确定所述定位请求是否为隧道定位请求;第二确定模块,用于若是,则根据所述定位指纹信息、所述待定位对象的历史定位位置信息和对应的指纹定位特征,确定所述待定位对象在所述隧道内的位置。
8.根据本技术实施例的第三方面,提供了一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如第一方面所述的定位方法对应的操作。
9.根据本技术实施例的第四方面,提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面所述的定位方法。
10.根据本技术实施例提供的定位方案,利用待定位对象扫描到的定位指纹信息和历史定位位置信息,确定定位请求是否为隧道定位请求,并在是隧道定位请求时,根据定位指
纹信息、历史定位位置信息和对应的指纹定位特征,确定待定位对象在隧道内的位置。这样使得能够准确地隧道中进行定位,由于每次定位都是根据扫描到的定位指纹信息,因此不会产生累计误差,解决了隧道中没有卫星信号无法准确定位的问题。
附图说明
11.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
12.图1a为根据本技术实施例一的一种定位方法的步骤流程图;
13.图1b为图1a所示实施例中的一种场景示例的示意图;
14.图2a为根据本技术实施例二的一种定位方法的步骤流程图;
15.图2b为图2a所示实施例中的一种在隧道外和隧道内不同轨迹点的示意图;
16.图2c为图2a所示实施例中的一种隧道判定模型和隧道定位模型训练的示意图;
17.图3为根据本技术实施例三的一种定位装置的结构框图;
18.图4为根据本技术实施例四的一种电子设备的结构示意图。
具体实施方式
19.为了使本领域的人员更好地理解本技术实施例中的技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术实施例一部分实施例,而不是全部的实施例。基于本技术实施例中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本技术实施例保护的范围。
20.下面结合本技术实施例附图进一步说明本技术实施例具体实现。
21.实施例一
22.参照图1a,示出了本技术实施例一的定位方法的步骤流程示意图。
23.在本实施例中,以定位方法配置于服务端为例,对定位方法的实现过程进行说明。当然,在其他实施例中,该定位方法也可以配置在终端设备(如用户携带的手机或者是车载终端等)上,实现对目标对象的定位。
24.其中,定位方法包括以下步骤:
25.步骤s102:接收定位请求。
26.定位请求至少携带了待定位对象扫描到的定位指纹信息。待定位对象可以是任何适当的设备,如可以是用户携带的终端设备(如手机、智能手表、智能眼镜等)或者是安装在交通工具上的终端设备(如车载电脑等)。
27.待定位对象扫描到的定位指纹信息包括但不限于:扫描到的基站信息和/或扫描到的无线网络信息(如wifi网络)。其中,基站和wifi热点的创建设备均可以称为指纹设备。
28.定位指纹信息用于指示待定位对象当前所处位置的网络环境,由于不同位置的网络环境不同,因此可以通过网络环境对待定位对象进行定位,以便满足用户的定位和导航的需求。
29.基站可以为终端设备提供互联网接入服务,通过基站信息可以了解终端设备所处
的大致地理范围。
30.无线网络信息是指除基站外,按照无线通讯协议实现与终端设备进行无线通信的网络。例如,wifi网络等。
31.以用户驾驶车辆出行过程中的定位场景为例,车辆在行驶的过程中,用户携带的终端设备每隔一段时间就会扫描自身所在位置的基站信息和/或无线网络信息(这些信息可以统称为定位指纹信息),并将这些信息携带在定位请求中发送至服务端,以便服务端根据定位请求中携带的定位指纹信息进行定位。
32.当然,在其他实施例中,若定位方法配置于用户携带的终端设备本地,则终端设备可以在本地根据定位指纹信息实现定位,本实施例对此不作限制。
33.步骤s104:根据所述定位指纹信息和所述待定位对象的历史定位位置信息,确定所述定位请求是否为隧道定位请求。
34.由于在隧道内和隧道外对应的定位方式不同,为了保证定位的准确性,需要确定接收的定位请求是否为隧道定位请求。又由于待定位对象处于不同位置时的定位指纹信息不同,因此通过分析定位指纹信息和历史定位位置信息可以快速地确定定位请求是否为隧道定位请求,这样提升了判断的速度,而且能够保证准确性,有助于减少定位延迟,使用户体验更好。
35.本领域技术人员可以采用任何适当的方式确定定位请求是否为隧道定位请求,本实施例对此不作限制。例如,根据定位指纹信息包括的基站信息确定扫描的基站,再根据扫描到的基站是否包括预采集的隧道对应的定位指纹设备(例如为基站或者wifi网络热点的创建设备等),若包括则表示待定位对象在隧道内的概率较高。需要说明的是,若待定位对象具有视频或者图像拍摄能力,亦可结合或者基于待定位对象拍摄的视频或者图像确定是否处于隧道定位场景。
36.若确定定位请求为隧道定位请求,则执行步骤s106,采用与隧道内对应的定位方式进行定位,以保证定位准确度。或者,若确定定位请求不为隧道定位请求,则可以采用隧道外对应的定位方式进行定位。
37.步骤s106:若是,则根据所述定位指纹信息、待定位对象的历史定位位置信息和对应的指纹定位特征,确定所述待定位而对象在所述隧道内的位置。
38.在隧道内时,由于难以获得卫星信号,因此需要根据定位指纹信息进行定位。
39.待定位对象的历史定位位置信息中包括定位时间、定位类型和定位位置中至少之一,但不限于此。
40.指纹定位特征可以是对应的指纹设备的特征,其包括指纹设备的信号覆盖区域包含的网格的位置信息和/或指纹设备在网格内的信号强度等,但不限于此。网格可以是根据适当的方式对指纹设备的信号覆盖区域进行划分获得区域。
41.在一具体实现中,可以使用训练出的隧道定位模型确定待定位对象的位置。例如,使用定位指纹信息、历史定位位置信息和指纹定位特征构建定位特征数据,再将定位特征数据输入到隧道定位模型中,以获得隧道定位模型输出的位置信息。
42.当然,在其他实施例中,也可以采用其他适当的方式确定待定位对象在隧道内的位置,本实施例对此不作限制。
43.通过上述步骤,实现了通过待定位对象的定位指纹信息(包括基站信息和无线网
络信息中至少之一)和历史定位位置信息对定位请求是否为隧道定位请求进行判断,并在是隧道定位请求的情况下,根据定位指纹信息、历史定位位置信息和指纹定位特征确定待定位对象在隧道内的位置。由于定位依赖于定位指纹信息、历史定位位置信息和指纹定位特征,因此保证了在隧道内时定位的准确度,而且每次定位都是依赖当前扫描到的定位指纹信息,所以不会产生累计误差,使得定位准确度更高。
44.下面结合一具体使用场景,对定位方法的实现过程进行说明。
45.如图1b所示,以用户驾驶车辆驶入隧道a,并在隧道a内进行定位为例进行说明。
46.在t1时刻,用户携带着终端设备,并驾驶车辆驶入隧道a内,由于在隧道内导致卫星信号难以获得。在t2时刻,车辆中用户携带的终端设备扫描所在位置处的定位指纹信息(如扫描基站信息和wifi网络信息),由于基站、wifi热点的信号源等的信号均具有对应的覆盖范围,因此,在t2时刻,终端设备采集到的定位指纹信息包括基站1的信息和wifi-1、wifi-2的信息,终端设备将定位指纹信息携带在定位请求中,并将定位请求发送至服务端。
47.服务端接收定位请求。由于定位请求中无卫星信号,因此根据定位指纹信息和待定位对象的历史定位位置信息确定定位请求是否为隧道定位请求。例如,预采集时,根据大数据分析确定基站1为隧道的定位指纹设备,即在隧道a内时大概率会扫描到基站1。在定位指纹信息包括的基站信息中包含基站1时,确定定位请求为隧道定位请求的概率较高。
48.在确定定位请求为隧道定位请求的情况下,采用对应的隧道内定位方式进行定位,即根据定位指纹信息、历史定位位置信息和指纹定位特征,确定待定位对象在隧道内的具体位置,并将确定的位置信息发送给终端设备。
49.通过本实施例,利用待定位对象扫描到的定位指纹信息和历史定位位置信息,确定定位请求是否为隧道定位请求,并在是隧道定位请求时,根据定位指纹信息、历史定位位置信息和对应的指纹定位特征,确定待定位对象在隧道内的位置。这样使得能够准确地隧道中进行定位,由于每次定位都是根据扫描到的定位指纹信息,因此不会产生累计误差,解决了隧道中没有卫星信号无法准确定位的问题。
50.实施例二
51.参照图2a,示出了本技术实施例二的定位方法的步骤流程图。
52.在本实施例中,仍以定位方法配置于服务端为例进行说明。当然,在其他实施例中,定位方法也可以配置于任何适当的终端设备中,本实施例对此不作限制。
53.其中,定位方法包括前述的步骤s102~步骤s106。为了能够准确地根据网络指纹信息确定目标对象是否在隧道内以及准确地进行定位,定位方法还包括步骤s100a~步骤s100d。
54.步骤s100a:根据穿行过样本隧道的定位对象的历史轨迹数据包括的轨迹点的信息,确定处于样本隧道内的轨迹点。
55.历史轨迹数据可以是通过任何适当的方式获得。例如,其可以从定位日志数据中获得。历史轨迹数据包括多个轨迹点的信息。如轨迹点的位置信息、轨迹点的定位指纹信息等。通过对历史轨迹数据进行分析(该分析可以是人工分析,也可以通过现有的数据分析工具进行分析)可以从获取的历史轨迹数据中挖掘出穿行过样本隧道的历史轨迹数据。当然,根据需要也可以获取未穿行隧道但经过隧道外围道路的历史轨迹数据(为了便于描述记作外围轨迹数据)。
56.其中,针对穿行过样本隧道的历史轨迹数据中轨迹点的位置信息可以通过下述方式获得:
57.根据所述多个历史轨迹数据中的驶入隧道时间和驶出隧道时间,确定所述多个历史轨迹数据对应的隧道内平均穿行速度。
58.针对每个历史轨迹数据,由于进入隧道后会丢失卫星信号,因此可以确定位置在隧道入口之前的最后一个包含卫星信号的轨迹点作为驶入隧道的轨迹点,并以该驶入隧道的轨迹点的定位时间作为驶入隧道时间。
59.同理,在驶出隧道后可以重新采集到卫星信号,因此可以在确定位置在隧道出口之后的第一个包含卫星信号的轨迹点作为驶出隧道的轨迹点,并以该驶出隧道的轨迹点的定位时间作为驶出隧道时间。
60.基于驶入隧道时间、驶出隧道时间和对应的样本隧道的长度可以计算出该历史轨迹数据对应的穿行所述样本隧道的平均穿行速度。
61.针对所述多个历史轨迹数据中的多个隧道内的轨迹点,根据所述多个隧道内轨迹点的定位时间和隧道内平均穿行速度,确定所述多个隧道内轨迹点的位置信息。
62.为了确保检测准确性,排除隧道内堵车情况造成的不利影响,根据多个历史轨迹数据的平均穿行速度和历史轨迹数据的数量计算总体平均穿行速度。根据总体平均穿行速度,从多个历史轨迹数据中确定平均穿行速度大于总体平均穿行速度的历史轨迹数据,这些历史轨迹数据为非堵车状态的历史轨迹数据。
63.针对这些非堵车状态的历史轨迹数据,针对每个非堵车状态的历史轨迹数据的隧道内轨迹点,根据当前的隧道内轨迹点的定位时间和隧道内平均穿行速度,确定当前的隧道内轨迹点相对隧道入口的行驶距离,进而确定当前的隧道内轨迹点的位置信息。
64.例如,如图2b所示,t1时刻,待定位对象在a点时采集到卫星信号,根据该卫星信号确定待定位对象a在a点的位置信息。t2时刻,待定位对象行驶到b点,采集到定位指纹信息,根据历史轨迹数据的平均穿行速度和t1时刻到t2时刻的时间差,确定待定位对象行驶的距离,进而确定b点的位置信息。步骤s100b:根据所述处于样本隧道内的轨迹点的位置信息和采集到的定位指纹信息指示的定位指纹设备,确定所述样本隧道对应的定位指纹设备、以及确定所述定位指纹设备的指纹定位特征。
65.定位指纹设备可以是在隧道内能够扫描到的基站、wifi热点创建设备等。
66.定位指纹设备的指纹定位特征包括所述定位指纹设备的信号覆盖区域包含的网格的位置信息和/或信号强度信息,但不限于此。网格可以通过对定位指纹设备的信号覆盖区域进行划分获得。
67.在一具体实现中,步骤s100b通过下述过程实现:
68.过程a:根据所述样本隧道内的轨迹点对应的定位指纹信息指示的定位指纹设备,确定所述样本隧道对应的定位指纹设备。
69.这些轨迹点可以是一个待定位对象(如终端设备)的轨迹点,也可以是多个待定位对象的轨迹点。
70.若轨迹点1~3对应的定位指纹信息均指示待定位对象扫描到了基站a和b,轨迹点4~10对应的定位指纹信息均指示待定位对象扫描到了基站b和c,基于这些轨迹点能够扫描到的定位指纹信息指示的定位指纹设备,就可以确定该隧道对应的定位指纹设备。
71.过程b:根据采集到相同定位指纹设备的样本隧道内的轨迹点的位置信息,确定所述定位指纹设备的信号覆盖区域。
72.基于每个轨迹点的位置信息和该轨迹点的定位指纹信息指示的定位指纹设备,可以确定能够扫描到该定位指纹设备的待定位对象的位置分布,即各定位指纹设备的信号覆盖区域。
73.例如,轨迹点1~3、17~22等均扫描到基站a,则可以根据这些轨迹点的位置信息确定基站a的信号覆盖区域。该覆盖区域用于指示基站a的信号能够覆盖的地理区域。以覆盖区域为圆形为例,其可以采用中心点的经纬坐标和半径的方式表示。当然,也可以采用其他适当的方式表示。
74.过程c:将所述定位指纹设备的信号覆盖区域划分为网格。
75.为了提升定位精度,将定位指纹设备的信号覆盖区域划分为多个更小的网格。网格的划分方式可以根据需要确定,本实施例对此不作限制。
76.一种可行的划分方式可以是确定每个网格覆盖的地理区域的面积,将定位指纹设备的信号覆盖区域划分为多个面积一致或接近网格。网格可以是矩形网格、正六边形网格、圆形网格等等。
77.过程d:根据落入相应所述网格的轨迹点的位置信息,确定对应的所述网格的位置信息,和/或,根据落入相应所述网格的轨迹点对应的定位指纹信息中所述定位指纹设备的信号强度信息,确定所述网格的信号强度信息。
78.在一具体实现中,确定网格的位置信息时,针对每个网格,从落入网格内的轨迹点中选取距离最远的两个轨迹点,以这两个轨迹点的位置信息定义网格的边界。
79.确定网格的信号强度信息时,设覆盖网格a的定位指纹设备有基站a和c。落入网格a中的轨迹点1~10采集到基站a,且每个轨迹点都有对应的采集到的信号强度,根据轨迹点1~10采集到的信号强度确定网格a中的基站a的信号强度信息。落入网格a中的轨迹点11~22采集到基站c,且每个轨迹点都有对应的采集到的信号强度,根据轨迹点11~22采集到的信号强度确定网格a中的基站c的信号强度信息。
80.通过这种方式可以实现对隧道内定位指纹设备和定位指纹设备的指纹定位特征的预采集,以备在后续隧道定位过程中使用。
81.为了准确定位,除了可以预采集定位指纹设备和对应的指纹定位特征外,还可以预先训练出用于隧道判定的隧道判定模型和用于隧道定位的隧道定位模型。
82.例如,通过步骤s100c训练第一神经网络模型作为隧道判定模型。
83.步骤s100c:训练用于确定定位请求是否为隧道定位请求的隧道判定模型。
84.隧道判定模型可以是神经网络模型,如卷积神经网络(cnn)与注意力机制(attention)结合的神经网络模型。或者其他适当结构的模型。
85.针对隧道判定模型可以使用历史轨迹数据(如从定位日志数据中获取的历史轨迹数据)对其进行训练,以使训练获得的隧道判定模型能够很好地确定定位请求是否为隧道定位请求。
86.如图2c所示,训练过程可以通过下述的过程e~g实现:
87.过程e:根据获得的定位日志数据,确定穿行隧道的多个隧道内历史轨迹数据和/或经过隧道外围道路的多个隧道外历史轨迹数据。
88.如前所述,定位日志数据包括多个定位对象的历史轨迹数据。历史轨迹数据包括多个轨迹点(即历史定位点),每个历史定位点均包括定位时间和定位位置。通过对历史轨迹数据进行分析,可以确定有穿行隧道的隧道内历史轨迹数据,和/或,确定经过隧道外围道路的隧道外历史轨迹数据。
89.例如,在已知隧道的坐标取值范围的情况下,若历史轨迹数据中的一个或多个历史定位点的位置信息在隧道的坐标取值范围内,则将其确定为隧道内历史轨迹数据。或者,若历史轨迹数据中并未有历史定位点的位置信息在隧道的坐标取值范围内,但历史轨迹数据中的一个或多个历史定位点的位置信息与隧道的坐标取值范围之间的差值小于设定值(设定值可以根据需要确定),则确定该历史轨迹数据为隧道外历史轨迹数据。
90.过程f:从多个隧道内历史轨迹数据中选取多个隧道内定位点,并根据隧道内定位点的网络指纹信息确定正样本,和/或,从多个隧道外历史轨迹数据中选取多个隧道外定位点,并根据隧道外定位点的网络指纹信息确定负样本。
91.除此历史轨迹数据之外,定位日志数据中还包括多个网络点的数据,网络点的数据分为两种,一种是基于卫星信号的网络点,此种网络点包括采集时间、卫星信号和对应的历史轨迹。另一种是基于定位指纹数据的网络点,此种网络点包括采集时间、定位指纹数据和对应的历史轨迹。
92.通过将网络点与历史轨迹数据中的历史定位点按照时间进行匹配,就可以确定历史定位点对应的定位指纹信息或历史定位点对应的卫星信号。
93.隧道内定位点可以是隧道内历史轨迹数据中位置信息处于隧道内的历史定位点。
94.隧道外定位点可以是隧道外历史轨迹数据中位置信息与隧道的坐标取值范围小于设定值的历史定位点。例如,隧道的坐标取值范围为(x1,y1)和(x2,y2)定义的一个矩形区域,则在确定隧道外定位点时,可以从隧道外历史轨迹的历史定位点中查找位置信息在x向的坐标位于x1~x2之间,y向的坐标在y1~y2之外,且距离y1或y2小于设定值(设定值可以根据需要确定)的历史定位点作为隧道外定位点。
95.当然,在其他实施例中,可以采用其他方式确定隧道内定位点和隧道外定位点,本实施例对此不作限制。
96.在确定历史定位点的定位指纹信息后,可以从隧道内历史轨迹数据中确定隧道内定位点,并根据隧道内定位点对应的定位指纹信息确定正样本。例如,针对隧道内定位点1,将其定位指纹信息和隧道内定位点1之前的n个(n可以根据需要确定,n大于或等于1)相邻的定位点是否在隧道内的信息组成第一输入数据,将第一输入数据和正标记数据组成正样本。
97.和/或,
98.从隧道外历史轨迹数据中选取隧道外定位点,并根据隧道外定位点对应的定位指纹信息确定负样本。例如,针对隧道外定位点3,将其定位指纹信息和隧道外定位点3之前的n个相邻的定位点是否在隧道内的信息组成第二输入数据,将第二输入数据和负标记数据组成负样本。
99.过程g:使用所述正样本和/或所述负样本对第一神经网络模型进行训练,以获得根据目标对象的定位指纹信息确定目标对象是否处于隧道内的第一神经网络模型。
100.将正样本输入第一神经网络模型中,对第一神经网络模型进行训练,使得第一神
经网络模型能够学习隧道内定位点的定位指纹信息的特征,从而使训练完的第一神经网络模型能够准确地根据定位指纹信息确定目标对象是否在隧道内。
101.和/或,将负样本输入第一神经网络模型中,对第一神经网络模型进行训练,使得第一神经网络能够学习隧道外定位点的定位指纹信息的特征,从而使训练完的第一神经网络模型能够根据目标对象的定位指纹信息确定目标对象是否在隧道外。
102.在使用正样本和负样本对第一神经网络模型进行训练时,第一神经网络模型能够较好地根据定位指纹信息确定目标对象是否在隧道内,从而提升判断的准确度,从而避免当目标对象在隧道外围的道路行驶时被误判处于隧道内,而导致定位不准确的问题。
103.当然,在其他实施例中,可以采用其他的方式训练第一神经网络模型,本实施例对比不作限制。
104.除了训练隧道判定模型以提升对定位请求是否为隧道定位请求进行判断的准确性外,还可以执行步骤s100d,以对隧道定位模型进行训练,使训练的隧道定位模型能够根据定位指纹信息对待定位对象在隧道内的位置进行准确定位,从而提升定位的准确性。
105.具体地,步骤s100d:训练用于确定待定位对象在隧道内位置的隧道定位模型。
106.隧道定位模型可以是卷积神经网络与注意力机制结合的神经网络模型。
107.在本实施例中,针对每个隧道,对隧道进行划分将其分割为多个网格,根据历史定位日志数据,确定每个网格中包含的网络点,进而根据每个网格包括的网络点的定位指纹信息和网格的位置形成训练样本,并使用训练样本对隧道定位模型进行,使得隧道定位模型能够学习出各网格的网络特征信息,以便后续能够据此定位待定位对象的位置。
108.需要说明的是,在待定位对象的一次定位请求过程中,前述的步骤s100a~步骤s100d可以执行也可以不执行,本实施例对此不作限制。在本实施例中,待定位对象在随车辆等移动过程中,每隔一段时间就会向配置有定位方法的服务端发送一次定位请求,该定位请求中至少携带有待定位对象采集的定位指纹信息。在本实施例中,以定位指纹信息包括基站信息和无线网络信息为例进行说明。
109.为了实现对待定位对象的定位,配置有定位方法的服务端执行前述的步骤s102~步骤s106。
110.在本实施例中,为了保证对定位请求是否为隧道定位请求判断的准确性,同时避免判断耗时过长而影响非隧道内待定位对象的定位响应速度,步骤s104包括以下子步骤s1041~步骤s1042。
111.子步骤s1041:根据所述定位指纹信息包括的指纹设备信息,确定对应的所述指纹设备是否包含预采集的所述隧道的定位指纹设备。
112.预采集的隧道的定位指纹设备可以是前述步骤中采集的。如果定位指纹信息中携带的基站信息中包含隧道的定位指纹设备,则表示待定位对象有可能在隧道内,即定位请求是隧道定位请求的概率较高。但是因为隧道的定位指纹设备具有一定的覆盖范围,导致待定位对象在隧道外围道路时也可能采集到其信号,因此可能会出现误判的情况,为了提升判断的准确性,可以在确定包含隧道的定位指纹设备时,执行子步骤s1042,进行进一步、更加准确地判断。
113.子步骤s1042:若包含,则根据所述定位指纹信息、所述待定位对象的历史定位位置信息,确定所述请求是否为隧道定位请求。
114.在一具体实现中,子步骤s1042通过过程h~过程i实现:
115.过程h:根据所述定位指纹信息和所述对象的历史定位位置信息包括的定位时间和定位类型,构建判定特征数据。
116.例如,根据需要将定位指纹信息中的基站信息、无线网络信息(包括但不限于wifi网络信息)和待定位对象的历史定位位置信息(例如当前时刻之前的、最接近的m个历史定位位置信息)中的定位时间和定位类型分别转换为设定长度的向量,设定长度可以根据需要确定,并将与基站信息对应的第一向量、与无线网络信息对应的第二向量和与历史定位位置信息对应的第三向量进行拼接,构建出判定特征数据。。
117.过程g:将所述判定特征数据输入到预先训练的隧道判定模型,由所述隧道判定模型确定所述请求是隧道定位请求的概率,若所述概率大于预设的阈值,则确定所述请求为隧道定位请求。
118.预设的阈值可以根据需要确定,本实施例对此不作限制。如预设的阈值可以是90%、95%等。
119.隧道判定模型可以根据判定特征数据确定定位请求是隧道定位请求的概率。由于隧道判定模型综合了多种数据因此使得判断更加准确,有效防止误判情况的出现,从而提升后续定位的准确度。
120.若确定定位请求是隧道定位请求,则执行步骤s106,;反之,则可以采用任何适当的与隧道外对应的方式进行定位,本实施例对此不作限制。
121.步骤s106:若是,则根据所述定位指纹信息、所述待定位对象的历史定位位置信息和对应的指纹定位特征,确定所述待定位对象在所述隧道内的位置。
122.在一具体实现中,步骤s106可以通过以下子步骤实现:
123.子步骤s1061:获取所述定位指纹信息指示的指纹设备匹配的指纹定位特征。
124.在一具体实现中,指纹设备匹配的指纹定位特征是从与采集的指纹定位特征库中检索出的。指纹定位特征库即为前述步骤中预采集的定位指纹设备的指纹定位特征构建的。
125.例如,隧道a对应的定位指纹设备为基站a和b。在用户经过隧道a时,定位指纹信息指示扫描到基站a和b,则可以从前述预采集的各定位指纹设备的指纹定位特征中,检索出与基站a和b匹配的指纹定位特征。
126.指纹定位特征包括基站a和b的信号覆盖区域包含的网格的位置信息和/或信号强度信息。该网格可以是基站a和b的信号覆盖区域包含的所有网格,也可以是从所有网格中选取的部分网格。
127.在选取部分网格时,针对每个网格,计算该网格中基站a的权重和基站b的权重,并将两个权重相加作为总权重。然后将基站a和b覆盖的所有网格的总权重进行排序,选取排序最前的n个。采用这种方式一方面可以减少指纹定位特征的数据量,又可以快速地选取出基站a和基站b重合区域的网格。
128.当然,在其他实施例中,可以采用其他方式获取指纹定位特征,本实施例对此不作限制。
129.子步骤s1062:根据所述定位指纹信息、所述对象的历史定位位置信息包括的定位时间、定位类型和定位位置、以及所述指纹定位特征,构建定位特征数据。
130.例如,与构建判定特征数据类似的,将定位指纹信息、历史定位位置信息中的定位时间、定位类型和定位位置、以及指纹定位特征向量化,再拼接形成定位特征数据。
131.子步骤s1063:将所述定位特征数据输入到预先训练的隧道定位模型中,由所述隧道定位模型确定所述待定位对象在所述隧道内的位置。
132.由于隧道定位模型学习了不同位置的网络环境特征,因此将定位特征数据输入到隧道定位模型后,隧道定位模型就可以根据定位特征数据确定待定位对象在隧道内的位置。隧道定位模型可以直接输出位置的经纬度,也可以采用其他方式表示位置。
133.下面结合一具体使用场景对定位方法的实现过程进行说明如下:
134.待定位对象在随车辆行驶过程中,车辆在隧道外行驶时,每隔一段时间,待定位对象采集一次卫星信号,并根据卫星信号确定待定位对象的位置。当车辆驶入隧道内之后,待定位对象难以获取卫星信号,此时将扫描到的定位指纹信息携带在定位请求中发送给服务端。
135.定位指纹信息服务端确定定位指纹信息指示的指纹设备包含隧道的定位指纹设备,则确定定位请求是隧道定位请求的概率高,为了更加准确地确定是否在隧道内,根据所述定位指纹信息和所述对象的历史定位位置信息包括的定位时间和定位类型,构建判定特征数据,并将判定特征数据输入到隧道判定模型中,若隧道判定模型判定定位请求是隧道定位请求的概率大于预设的阈值,则确定采用隧道定位方式进行定位。
136.具体地,根据扫描到的定位指纹信息、待定位对象的历史定位位置信息中的定位时间、定位类型(如网络定位或卫星定位等)和定位位置、以及定位指纹信息指示的指纹设备对应的指纹定位特征,构建定位特征数据,并将定位特征数据输入隧道定位模型,获取隧道定位模型输出的位置。
137.这种定位方式除了随身携带能连接互联网的终端设备(如手机)外,不需要使用者携带其他特定的硬件装置,只需利用基站信息和无线网络信息等定位指纹信息就可以确定待定位对象是否在隧道内而且可以实现定位,且定位主要基于当前时刻的基站信息和无线网络信息,因此不会产生累计误差。
138.在定位之前,可以预先采用基于历史的定位日志数据确定隧道真值,从而可以较为准确地确定在隧道的定位指纹设备,以及定位指纹设备的指纹定位特征等,进而可以基于定位指纹设备初步判断待定位对象是否在隧道内,有助于提升对待定位对象是否在隧道内判断的准确性和判断速度。
139.实施例三
140.参照图3,示出了本技术实施例三的定位装置的结构框图。
141.在本实施例中,定位装置包括:
142.接收模块302,用于接收定位请求,所述定位请求至少携带了待定位对象扫描到的定位指纹信息;
143.第一确定模块304,用于根据所述定位指纹信息和所述待定位对象的历史定位位置信息,确定所述定位请求是否为隧道定位请求;
144.第二确定模块306,用于若是,则根据所述定位指纹信息、所述待定位对象的历史定位位置信息和对应的指纹定位特征,确定所述待定位对象在所述隧道内的位置。
145.可选地,所述第一确定模块304包括:
146.第三确定模块3041,用于根据所述定位指纹信息包括的指纹设备信息,确定对应的所述指纹设备是否包含预采集的所述隧道的定位指纹设备;
147.第四确定模块3042,用于若包含,则根据所述定位指纹信息、所述待定位对象的历史定位位置信息,确定所述请求是否为隧道定位请求。
148.可选地,所述第四确定模块3042用于根据所述定位指纹信息和所述对象的历史定位位置信息包括的定位时间和定位类型,构建判定特征数据;将所述判定特征数据输入到预先训练的隧道判定模型,由所述隧道判定模型确定所述请求是隧道定位请求的概率,若所述概率大于预设的阈值,则确定所述请求为隧道定位请求。
149.可选地,第二确定模块306用于获取所述定位指纹信息指示的指纹设备匹配的指纹定位特征;根据所述定位指纹信息、所述对象的历史定位位置信息包括的定位时间、定位类型和定位位置、以及所述指纹定位特征,构建定位特征数据;将所述定位特征数据输入到预先训练的隧道定位模型中,由所述隧道定位模型确定所述待定位对象在所述隧道内的位置。
150.可选地,所述装置还包括:
151.第五确定模块308,用于在接收模块302接收定位请求之前,根据穿行过样本隧道的定位对象的历史轨迹数据包括的轨迹点的信息,确定处于样本隧道内的轨迹点;
152.第六确定模块310,用于根据所述处于样本隧道内的轨迹点的位置信息和采集到的定位指纹信息指示的定位指纹设备,确定所述样本隧道对应的定位指纹设备、以及确定所述定位指纹设备的指纹定位特征。
153.可选地,所述定位指纹设备的指纹定位特征包括所述定位指纹设备的信号覆盖区域包含的网格的位置信息和/或信号强度信息。
154.可选地,第六确定模块310,包括:
155.第七确定模块3101,用于根据所述样本隧道内的轨迹点对应的定位指纹信息指示的定位指纹设备,确定所述样本隧道对应的定位指纹设备;
156.第八确定模块3102,用于根据采集到相同定位指纹设备的样本隧道内的轨迹点的位置信息,确定所述定位指纹设备的信号覆盖区域;
157.划分模块3103,用于将所述定位指纹设备的信号覆盖区域划分为网格;
158.第九确定模块3104,用于根据落入相应所述网格的轨迹点的位置信息,确定对应的所述网格的位置信息,和/或,根据落入相应所述网格的轨迹点对应的定位指纹信息中所述定位指纹设备的信号强度信息,确定所述网格的信号强度信息。
159.本实施例的定位装置用于实现前述多个方法实施例中相应的定位方法,并具有相应的方法实施例的有益效果,在此不再赘述。此外,本实施例的定位装置中的各个模块的功能实现均可参照前述方法实施例中的相应部分的描述,在此亦不再赘述。
160.实施例四
161.参照图4,示出了根据本技术实施例四的一种电子设备的结构示意图,本技术具体实施例并不对电子设备的具体实现做限定。
162.如图4所示,该电子设备可以包括:处理器(processor)402、通信接口(communications interface)404、存储器(memory)406、以及通信总线408。
163.其中:
164.处理器402、通信接口404、以及存储器406通过通信总线408完成相互间的通信。
165.通信接口404,用于与其它电子设备或服务器进行通信。
166.处理器402,用于执行程序410,具体可以执行上述定位方法实施例中的相关步骤。
167.具体地,程序410可以包括程序代码,该程序代码包括计算机操作指令。
168.处理器42可能是中央处理器cpu,或者是特定集成电路asic(application specific integrated circuit),或者是被配置成实施本技术实施例的一个或多个集成电路。智能设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个cpu;也可以是不同类型的处理器,如一个或多个cpu以及一个或多个asic。
169.存储器406,用于存放程序410。存储器406可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
170.程序410具体可以用于使得处理器402执行以下操作:接收定位请求,所述定位请求至少携带了待定位对象扫描到的定位指纹信息;根据所述定位指纹信息和所述待定位对象的历史定位位置信息,确定所述定位请求是否为隧道定位请求;若是,则根据所述定位指纹信息、所述待定位对象的历史定位位置信息和对应的指纹定位特征,确定所述待定位对象在所述隧道内的位置。
171.在一种可选的实施方式中,程序410还用于使得处理器402在所述根据所述定位指纹信息和所述待定位对象的历史定位位置信息,确定所述定位请求是否为隧道定位请求时,根据所述定位指纹信息包括的指纹设备信息,确定对应的所述指纹设备是否包含预采集的所述隧道的定位指纹设备;若包含,则根据所述定位指纹信息、所述待定位对象的历史定位位置信息,确定所述请求是否为隧道定位请求。
172.在一种可选的实施方式中,程序410还用于使得处理器402在所述根据所述定位指纹信息、所述对象的历史定位位置信息,确定所述请求是否为隧道定位请求时,根据所述定位指纹信息和所述对象的历史定位位置信息包括的定位时间和定位类型,构建判定特征数据;将所述判定特征数据输入到预先训练的隧道判定模型,由所述隧道判定模型确定所述请求是隧道定位请求的概率,若所述概率大于预设的阈值,则确定所述请求为隧道定位请求。
173.在一种可选的实施方式中,程序410还用于使得处理器402在所述根据所述定位指纹信息、所述待定位对象的历史定位位置信息和对应的指纹定位特征,确定所述待定位对象在所述隧道内的位置时,获取所述定位指纹信息指示的指纹设备匹配的指纹定位特征;根据所述定位指纹信息、所述对象的历史定位位置信息包括的定位时间、定位类型和定位位置、以及所述指纹定位特征,构建定位特征数据;将所述定位特征数据输入到预先训练的隧道定位模型中,由所述隧道定位模型确定所述待定位对象在所述隧道内的位置。
174.在一种可选的实施方式中,程序410还用于使得处理器402在接收定位请求之前,根据穿行过样本隧道的定位对象的历史轨迹数据包括的轨迹点的信息,确定处于样本隧道内的轨迹点;根据所述处于样本隧道内的轨迹点的位置信息和采集到的定位指纹信息指示的定位指纹设备,确定所述样本隧道对应的定位指纹设备、以及确定所述定位指纹设备的指纹定位特征。
175.在一种可选的实施方式中,定位指纹设备的指纹定位特征包括所述定位指纹设备的信号覆盖区域包含的网格的位置信息和/或信号强度信息。
176.在一种可选的实施方式中,程序410还用于使得处理器402在根据所述样本隧道内的轨迹点的位置信息和采集到的定位指纹信息指示的定位指纹设备,确定所述样本隧道对应的定位指纹设备、以及确定所述定位指纹设备的指纹定位特征时,根据所述样本隧道内的轨迹点对应的定位指纹信息指示的定位指纹设备,确定所述样本隧道对应的定位指纹设备;根据采集到相同定位指纹设备的样本隧道内的轨迹点的位置信息,确定所述定位指纹设备的信号覆盖区域;将所述定位指纹设备的信号覆盖区域划分为网格;根据落入相应所述网格的轨迹点的位置信息,确定对应的所述网格的位置信息,和/或,根据落入相应所述网格的轨迹点对应的定位指纹信息中所述定位指纹设备的信号强度信息,确定所述网格的信号强度信息。
177.程序410中各步骤的具体实现可以参见上述定位方法实施例中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
178.需要指出,根据实施的需要,可将本技术实施例中描述的各个部件/步骤拆分为更多部件/步骤,也可将两个或多个部件/步骤或者部件/步骤的部分操作组合成新的部件/步骤,以实现本技术实施例的目的。
179.上述根据本技术实施例的方法可在硬件、固件中实现,或者被实现为可存储在记录介质(诸如cd rom、ram、软盘、硬盘或磁光盘)中的软件或计算机代码,或者被实现通过网络下载的原始存储在远程记录介质或非暂时机器可读介质中并将被存储在本地记录介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件(诸如asic或fpga)的记录介质上的这样的软件处理。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件(例如,ram、rom、闪存等),当所述软件或计算机代码被计算机、处理器或硬件访问且执行时,实现在此描述的定位方法。此外,当通用计算机访问用于实现在此示出的定位方法的代码时,代码的执行将通用计算机转换为用于执行在此示出的定位方法的专用计算机。
180.本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术实施例的范围。
181.以上实施方式仅用于说明本技术实施例,而并非对本技术实施例的限制,有关技术领域的普通技术人员,在不脱离本技术实施例的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本技术实施例的范畴,本技术实施例的专利保护范围应由权利要求限定。
再多了解一些

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

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

相关文献