CN112444834B - 一种定位方法及电子设备 - Google Patents
一种定位方法及电子设备 Download PDFInfo
- Publication number
- CN112444834B CN112444834B CN201910810205.9A CN201910810205A CN112444834B CN 112444834 B CN112444834 B CN 112444834B CN 201910810205 A CN201910810205 A CN 201910810205A CN 112444834 B CN112444834 B CN 112444834B
- Authority
- CN
- China
- Prior art keywords
- alternative
- satellite
- electronic device
- road
- grid
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 174
- 238000012800 visualization Methods 0.000 claims description 20
- 230000006870 function Effects 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 9
- 238000012937 correction Methods 0.000 claims description 7
- 238000013473 artificial intelligence Methods 0.000 claims description 3
- 238000013461 design Methods 0.000 description 42
- 238000010586 diagram Methods 0.000 description 35
- 230000005540 biological transmission Effects 0.000 description 31
- 238000004891 communication Methods 0.000 description 30
- 230000006854 communication Effects 0.000 description 30
- 238000012545 processing Methods 0.000 description 21
- 210000004027 cell Anatomy 0.000 description 18
- 230000008569 process Effects 0.000 description 16
- 230000001413 cellular effect Effects 0.000 description 14
- 230000008859 change Effects 0.000 description 9
- 238000005259 measurement Methods 0.000 description 9
- 238000007726 management method Methods 0.000 description 8
- 238000010295 mobile communication Methods 0.000 description 8
- 238000013528 artificial neural network Methods 0.000 description 6
- 238000012549 training Methods 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 5
- 230000003190 augmentative effect Effects 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000007635 classification algorithm Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000003416 augmentation Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000012706 support-vector machine Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000002238 attenuated effect Effects 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000007175 bidirectional communication Effects 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/38—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
- G01S19/39—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/40—Correcting position, velocity or attitude
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/38—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
- G01S19/39—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/42—Determining position
- G01S19/428—Determining position using multipath or indirect path propagation signals in position determination
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
Abstract
本申请实施例提供一种定位方法及电子设备,涉及定位技术领域,使得电子设备在卫星发射的信号容易被遮挡的场景下,仍然可以保障甚至提升定位精度。具体方案包括:第一电子设备得到第二电子设备的第一位置;以第一位置为中心点确定多个备选位置;根据多颗卫星相对于备选位置的高度角和方位角,多个备选位置对应的网格数据和第二电子设备接收多颗卫星发送的广播信号的信号参数从多个备选位置中选择出多个定位备选位置;根据多个定位备选位置修正第一位置输出修正后的第二位置。每个备选位置对应的网格数据包括该备选位置的位置信息和天空遮挡曲线。备选位置的天空遮挡曲线用于指示位于该备选位置周围的多个遮挡物相对于该备选位置的高度角和方位角。
Description
技术领域
本申请实施例涉及定位技术领域,尤其涉及一种定位方法及电子设备。
背景技术
全球导航卫星系统(global navigation satellite system,GNSS)是一种利用距离测量对电子设备进行位置定位的无线定位系统。例如,GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellitesystem,GLONASS),北斗卫星导航系统(beidou navigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellite system,QZSS),星基增强系统(satellite basedaugmentation systems,SBAS),和/或伽利略卫星导航系统(GALILEO)等。
其中,GNSS定位原理如下所述:卫星实时发送广播信号。电子设备(如手机)根据该广播信号可以确定电子设备与卫星之间的距离(称为伪距)。例如,如图1所示,手机与卫星1之间的距离为d1,手机与卫星2之间的距离为d2,手机与卫星3之间的距离为d3,手机与卫星4之间的距离为d4。然后,电子设备可以根据三颗卫星与电子设备之间的精确距离,找到分别以每个卫星为球心,对应距离为半径的三个球面。手机将这三个球面在地球表面的交点确定为该手机的位置。例如,如图2所示,手机的位置为:以卫星1为球心,d1为半径的球面,以卫星2为球心,d2为半径的球面,以及以卫星3为球心,d3为半径的球面在地球表面的交点。
由上述描述可知:手机根据多个卫星与手机的精确距离,才可以准确的计算出手机的位置。也就是说,手机根据广播信号测量得到的伪距越准确,手机的定位精度则越高。
但是,在一些场景(例如,图3所示的城市高楼密集的场景)下,卫星发射的广播信号会受到遮挡,广播信号经过遮挡物的反射后,才可以被手机接收到。例如,卫星2和卫星3发射的广播信号需要经过高楼的反射,才可以被手机接收到。在这种情况下,手机测量得到的卫星与手机的伪距则不是卫星2与手机的直线距离,而是广播信号经过反射后的距离。伪距的测量误差较大,会严重影响手机的定位精度。例如,如图3所示,用户持手机所处的真实位置与手机定位位置距离较远。
发明内容
本申请实施例提供一种定位方法及电子设备,使得电子设备在卫星发射的信号容易被遮挡的场景下,仍然可以保障甚至提升定位精度。
第一方面,本申请实施例提供一种定位方法,该方法可以用于第一电子设备对第二电子设备进行定位。该第二电子设备可接收多颗卫星发射的广播信号。该方法可以包括:第一电子设备得到第二电子设备的第一位置;然后,第一电子设备以第一位置为中心点,确定多个备选位置;第一电子设备根据多颗卫星相对于多个备选位置的高度角和方位角,多个备选位置对应的网格数据,以及第二电子设备接收多颗卫星发送的广播信号的信号参数,从多个备选位置中选择出多个定位备选位置;最后,第一电子设备根据多个定位备选位置的位置信息修正第一位置,以输出修正后的第二位置。
一种实现方式下,该第一位置可以是第二电子设备通过定位确定的。其中,每个备选位置对应的网格数据包括位置信息和天空遮挡曲线。一个备选位置的天空遮挡曲线用于指示位于该备选位置周围的多个遮挡物相对于该备选位置的高度角和方位角。
可以理解,由于备选位置对应的网格数据包括天空遮挡曲线,而一个备选位置的天空遮挡曲线用于指示位于该备选位置周围的多个遮挡物相对于该备选位置的高度角和方位角;因此,第一电子设备根据多颗卫星相对于多个备选位置的高度角和方位角,多个备选位置对应的网格数据,以及第二电子设备接收多颗卫星发送的广播信号的信号参数,可以得出各个备选位置上卫星的信号被遮挡的情况,即卫星发射的广播信号能否通过直线传输被备选位置上的第二电子设备接收到。第一电子设备根据各个备选位置上卫星的信号被遮挡的情况,从多个备选位置中选择出的多个定位备选位置的定位精度较高。因此,相比于第二电子设备定位获得的第一位置,第一电子设备根据该多个定位备选位置的位置信息修正第一位置得到的第二位置的定位精度较高。
综上所述,通过本申请实施例的方法,使得电子设备在卫星发射的信号容易被遮挡的场景下,仍然可以保障甚至提升定位精度。
结合第一方面,在一种可能的设计方式中,上述多个定位备选位置对应的网格数据,还可以包括:多个定位备选位置中、位于道路上的定位备选位置各自所在道路的道路标识。本申请实施例的方法还可以包括:第一电子设备根据上述位于道路上的定位备选位置中的部分或全部定位备选位置各自所在道路的道路标识对应的道路数据,确定第二电子设备位于定位道路的道路中心线的一侧。其中,上述道路数据可以包括道路起始点坐标、道路宽度信息和道路方向信息中的至少一个。上述定位道路是第二电子设备所在的道路。也就是说,通过本申请实施例的方法,第一电子设备不仅可以提升第二电子设备的定位精度,还可以准确定位出第二电子设备位于道路的哪一侧。这样,可以避免一些场景中,由于无法准确定位出第二电子设备位于道路的哪一侧,而导致其他用户无法及时找到第二电子设备的用户的问题。
结合第一方面,在一种可能的设计方式中,上述第一电子设备根据上述部分或全部定位备选位置各自所在道路的道路标识,确定第二电子设备位于定位道路的道路中心线的一侧的方法,具体可以包括:第一电子设备根据上述部分或全部定位备选位置各自所在道路的道路标识,获取上述部分或全部定位备选位置各自所在道路的道路数据;第一电子设备根据上述部分或全部定位备选位置在目标道路的分布情况,确定定位道路;其中,目标道路是上述部分或全部定位备选位置所在的道路;第一电子设备根据上述部分或全部定位备选位置在定位道路的道路中心线两侧的分布情况,确定第二电子设备位于定位道路的道路中心线的一侧。其中,上述道路数据可以包括道路起始点坐标、道路宽度信息和道路方向信息中的至少一个。
可以理解,上述部分或全部定位备选位置可以分布在一个或多个目标道路上。示例性的,第一电子设备根据部分或全部上述多个定位备选位置在一个或多个目标道路的分布情况,将分布有定位备选位置的数量最多的目标道路确定为上述定位道路。
结合第一方面,在一种可能的设计方式中,上述定位道路的道路中心线的一侧分布的定位备选位置的数量大于道路中心线的另一侧分布的定位备选位置的数量。也就是说,定位道路的道路中心线的哪一侧分布的定位备选位置的数量较多,第一电子设备便可以确定第二电子设备位于定位道路的道路中心线的这一侧。
结合第一方面,在一种可能的设计方式中,上述第一电子设备根据多个定位备选位置的位置信息修正第一位置,以输出修正后的第二位置的方法,具体可以包括:第一电子设备计算第一位置在所述道路中心线的一侧的道路边沿线的垂直投影,并输出垂直投影所在的第二位置。
其中,第一电子设备修正第一位置得到第二位置时,不仅参考了第一位置周围的遮挡物,还参考了第二电子设备的定位道路。以及第二电子设备与定位道路的相对位置(即第二电子设备位于定位道路的哪一侧)。因此,相比于第二电子设备的第一位置,该第二位置与第二电子设备的实际位置的误差较小。从而,提升了第二电子设备的定位精度。
结合第一方面,在一种可能的设计方式中,上述第一电子设备根据多颗卫星相对于多个备选位置的高度角和方位角,多个备选位置的天空遮挡曲线,以及第二电子设备接收多颗卫星发送的广播信号的信号参数,从多个备选位置中选择出多个定位备选位置的方法,具体可以包括:第一电子设备根据多颗卫星相对于多个备选位置的第一可视性和第二可视性,从多个备选位置中选择出多个定位备选位置。
其中,一颗卫星相对于一个备选位置的第一可视性用于指示这颗卫星是这个备选位置的视距卫星或非视距卫星;第一可视性与一颗卫星相对于这个备选位置的高度角和方位角,以及这个备选位置的天空遮挡曲线有关。一颗卫星相对于一个备选位置的第二可视性用于指示这颗卫星是这个备选位置的视距卫星的概率。第二可视性与第二电子设备接收多颗卫星发送的广播信号的信号参数有关。
可以理解,一颗卫星相对于一个备选位置的第一可视性与“这颗卫星相对于这个备选位置的高度角和方位角”,以及“这个备选位置对应的天空遮挡曲线”有关。而“一颗卫星相对于一个备选位置的高度角和方位角”和“一个备选位置对应的天空遮挡曲线”不会因为第二电子设备与这颗卫星的伪距的测量误差的大小而变化。因此,“一颗卫星相对于一个备选位置的第一可视性”是这颗卫星是这个备选位置的视距卫星或非视距卫星的真实情况。
第二电子设备接收该卫星发送的广播信号的信号参数(如伪距)可能会存在测量误差。由此可见,与“第二电子设备接收这颗卫星发送的广播信号的信号参数”有关的“这颗卫星相对于该备选位置的第二可视性”可能并不能反映这颗卫星是这个备选位置的视距卫星的真实情况。
综上所述,第一电子设备根据可以反映一颗卫星是一个备选位置的视距卫星或非视距卫星的真实情况的第一可视性,以及不能反映一颗卫星是一个备选位置的视距卫星的真实情况的第二可视性,便可以从多个备选位置中选择出第一可视性与第二可视性匹配度较高的备选位置,即多个定位备选位置。
结合第一方面,在一种可能的设计方式中,上述多个定位备选位置包括:满足预设条件的卫星的数量大于预设数量阈值的备选位置。或者,多个定位备选位置包括:多个备选位置中的M个备选位置。其中,M≥2,M是正整数。M个备选位置的满足预设条件的卫星的数量,大于其他备选位置的满足预设条件的卫星的数量。该其他备选位置包括多个备选位置中除M个备选位置之外备选位置;其中,上述满足预设条件的卫星是第一可视性与第二可视性匹配的卫星。
本申请实施例中,一颗卫星相对于一个备选位置的第一可视性和第二可视性匹配,具体可以包括:第一可视性指示这颗卫星是该备选位置的视距卫星,且第二可视性大于或等于预设概率阈值;或者,第一可视性指示这颗卫星是该备选位置的非视距卫星,且第二可视性小于预设概率阈值。
结合第一方面,在一种可能的设计方式中,在第一电子设备根据多颗卫星相对于多个备选位置的第一可视性和第二可视性,从多个备选位置中选择出多个定位备选位置之前,本申请实施例的方法还可以包括:第一电子设备针对每颗卫星和每个备选位置执行:根据一颗卫星相对于一个备选位置的高度角和方位角,以及一个备选位置对应的网格数据,确定一颗卫星相对于一个备选位置的第一可视性,以获取每颗卫星相对于每个备选位置的第一可视性;第一电子设备针对每颗卫星执行:根据第二电子设备接收一颗卫星发送的广播信号的信号参数,确定一颗卫星相对于每个备选位置的第二可视性,以获取每颗卫星相对于每个备选位置的第二可视性。
结合第一方面,在一种可能的设计方式中,第一电子设备可以参考以下方式,确定一颗卫星相对于一个备选位置的第一可视性:
首先,第一电子设备获取第一方位角和第一高度角。该第一方位角是一颗卫星相对于一个备选位置的方位角,第一高度角是一颗卫星相对于一个备选位置的高度角。第一电子设备根据一个备选位置的位置信息,确定一个备选位置的天空遮挡曲线。第一电子设备根据第一方位角,从一个备选位置的天空遮挡曲线获取第二高度角。其中,该第二高度角是第一遮挡物相对于一个备选位置的高度角,该第一遮挡物相对于一个备选位置的方位角是第一方位角。
如果第一高度角大于第二高度角,则表示上述卫星发射的广播信号可以通过直线传输被位于上述备选位置的电子设备接收到;此时,第一电子设备可以确定这颗卫星是备选位置的视距卫星。即这颗卫星相对于上述备选位置的第一可视性指示这颗卫星是视距卫星。
如果第一高度角小于或等于第二高度角,则表示上述卫星发射的广播信号不能通过直线传输被位于上述备选位置的电子设备接收到;此时,第一电子设备可以确定这颗卫星是备选位置的非视距卫星。即这颗卫星相对于上述备选位置的第一可视性指示这颗卫星是非视距卫星。
结合第一方面,在一种可能的设计方式中,第一电子设备保存有预设人工智能(artificial intelligence,AI)模型的模型代码。该预设AI模型具备根据位于任一个位置的电子设备接收任一颗卫星发送的广播信号的信号参数,确定这颗卫星相对于这个位置的第二可视性的功能。
其中,第一电子设备可以参考以下方式,确定一颗卫星相对于一个备选位置的第二可视性:第一电子设备运行预设AI模型的模型代码,将第二电子设备接收一颗卫星发送的广播信号的信号参数作为输入,通过该预设AI模型,确定这颗卫星相对于每个备选位置的第二可视性。
结合第一方面,在一种可能的设计方式中,上述网格数据可以是第一电子设备接收自服务器的。本申请实施例的方法还可以包括:第一电子设备接收来自服务器的至少一个第一网格的网格数据。该至少一个第一网格指示第一位置所在的一片地理区域,每个第一网格的面积小于预设面积阈值。一个第一网格的网格数据包括该第一网格的位置信息和天空遮挡曲线。第一电子设备保存该至少一个第一网格的网格数据。可以理解,一个备选位置对应的网格数据是距离该备选位置最近的第一网格的网格数据。
结合第一方面,在一种可能的设计方式中,上述网格数据可以是第一电子设备处理N层瓦片地图中的第i层瓦片地图得到的。本申请实例的方法还可以包括:第一电子设备获取N层瓦片地图中的第i层瓦片地图,该第i层瓦片地图包括多个地图瓦片。其中,2≤i≤N,i和N均为正整数。第一电子设备获取第i层瓦片地图中至少一个地图瓦片的至少一个第一网格的网格数据。其中,一个地图瓦片的至少一个第一网格是分割该地图瓦片得到的多个地理区域中的至少一个地理区域。每个第一网格的面积小于预设面积阈值。一个第一网格的网格数据包括该第一网格的位置信息和天空遮挡曲线。第一电子设备保存至少一个第一网格的网格数据。可以理解,一个备选位置对应的网格数据是距离该备选位置最近的第一网格的网格数据。
结合第一方面,在一种可能的设计方式中,上述第i层瓦片地图可以包括多个地图瓦片。上述至少一个地图瓦片可以包括:第i层瓦片地图的多个地图瓦片中、第一电子设备所在的地理区域的地图瓦片。其中,第一电子设备所在的地理区域可以对应一个或多个地图瓦片。
结合第一方面,在一种可能的设计方式中,上述至少一个第一网格是遮挡物密集的地理区域的第一网格。也就是说,第一电子设备可以只获取并保存遮挡物密集的地理区域的第一网格。这样,可以减少第一电子设备获取第一网格的网格数据的计算量,还可以减少网格数据对第一电子设备的存储空间的占用。
结合第一方面,在一种可能的设计方式中,在上述第一电子设备从多个备选位置中选择出多个定位备选位置之前,本申请实施例的方法还可以包括:第一电子设备从第一电子设备保存的至少一个第一网格的网格数据中,获取多个备选位置对应的网格数据。其中,上述多个备选位置对应的网格数据是距离上述多个备选位置最近的第一网格的网格数据。
结合第一方面,在一种可能的设计方式中,上述第一电子设备获取至少一个第一网格的网格数据的方法,可以包括:第一电子设备针对至少一个地图瓦片中的每个地图瓦片,执行步骤a-步骤b,以获取地图瓦片中至少一个第一网格的网格数据。步骤a:将一个地图瓦片分割为K个第一网格,K≥2,K为正整数。步骤b:获取K个第一网格中至少一个第一网格的网格数据。
结合第一方面,在一种可能的设计方式中,上述一个第一网格的网格数据还包括:该第一网格所在道路的道路标识。
结合第一方面,在一种可能的设计方式中,上述一个第一网格的网格数据还包括:该第一网格所在道路的道路数据。该道路数据包括道路起始点坐标、道路宽度信息和道路方向信息中的至少一个。
结合第一方面,在一种可能的设计方式中,上述多个备选位置对应的网格数据包括在一个或多个地图瓦片的数据中。该地图瓦片的数据还包括道路数据,道路数据包括道路起始点坐标、道路宽度信息和道路方向信息中的至少一个。
结合第一方面,在一种可能的设计方式中,上述广播信号的信号参数包括:载噪比(Carrier-to-noise ratio,CN0)、伪距残差和伪距率。
其中,所述CN0越大,一颗卫星相对于位于一个备选位置的电子设备可视的可能性越高。CN0越小,一颗卫星是一个备选位置的视距卫星的可能性越低。伪距残差越大,一颗卫星是一个备选位置的视距卫星的可能性越低。伪距残差越小,一颗卫星是一个备选位置的视距卫星的可能性越高。伪距率越大,一颗卫星是一个备选位置的视距卫星的可能性越低。伪距率越小,一颗卫星是一个备选位置的视距卫星的可能性越高。
结合第一方面,在一种可能的设计方式中,上述第一网格的网格数据还可以包括:建筑属性信息。该建筑属性信息用于指示第一网格位于建筑内部或建筑外部。
可以理解,如果第一网格的建筑属性信息指示该第一网格位于建筑内部;那么,位于该第一网格的电子设备则无法接收到卫星发射的广播信号。因此,位于该第一网格的电子设备是无法进行GNSS定位的。也就是说,该第一网格的网格数据也就不会用于进行位置校准,以提升定位精度。综上所述,上述至少一个第一网格可以是位于建筑外部的第一网格。这样,可以减少冗余的网格数据对第一电子设备的存储空间的占用。
第二方面,本申请实施例提供一种电子设备,该电子设备是上述第一电子设备,该第一电子设备对第二电子设备进行定位。该电子设备可以包括:第一确定模块、第二确定模块、选择模块和位置修正模块。其中,第一确定模块,用于得到第二电子设备的第一位置。第二确定模块,用于以第一确定模块确定的第一位置为中心点,确定多个备选位置。选择模块,用于根据多颗卫星相对于第二确定单元确定的多个备选位置的高度角和方位角,多个备选位置对应的网格数据,以及第二电子设备接收多颗卫星发送的广播信号的信号参数,从多个备选位置中选择出多个定位备选位置;其中,每个备选位置对应的网格数据包括位置信息和天空遮挡曲线,一个备选位置的天空遮挡曲线用于指示位于一个备选位置周围的多个遮挡物相对于一个备选位置的高度角和方位角。位置修正模块,用于根据多个定位备选位置的位置信息修正第一位置,以输出修正后的第二位置。一种实现方式下,该第一位置可以是第二电子设备通过定位确定的。
结合第二方面,在一种可能的设计方式中,上述多个定位备选位置对应的网格数据,还包括:多个定位备选位置中、位于道路上的定位备选位置各自所在道路的道路标识。上述电子设备还可以包括:第三确定模块。该第三确定模块,用于根据上述位于道路上的定位备选位置中的部分或全部定位备选位置各自所在道路的道路标识对应的道路数据,确定第二电子设备位于定位道路的道路中心线的一侧。其中,上述道路数据包括道路起始点坐标、道路宽度信息和道路方向信息中的至少一个。上述定位道路是第二电子设备所在的道路。
结合第二方面,在另一种可能的设计方式中,上述第三确定模块,具体用于:根据上述部分或全部定位备选位置各自所在道路的道路标识,获取上述部分或全部定位备选位置各自所在道路的道路数据;根据上述部分或全部定位备选位置在目标道路的分布情况,确定定位道路。其中,目标道路是上述部分或全部定位备选位置所在的道路;根据上述部分或全部定位备选位置在定位道路的道路中心线两侧的分布情况,确定第二电子设备位于定位道路的道路中心线的一侧。
结合第二方面,在一种可能的设计方式中,上述定位道路的道路中心线的一侧分布的定位备选位置的数量大于道路中心线的另一侧分布的定位备选位置的数量。
结合第二方面,在另一种可能的设计方式中,上述位置修正模块,具体用于:计算第一位置在道路中心线的一侧的道路边沿线的垂直投影,并输出垂直投影所在的第二位置。
结合第二方面,在一种可能的设计方式中,上述选择模块,具体用于:根据多颗卫星相对于多个备选位置的第一可视性和第二可视性,从多个备选位置中选择出多个定位备选位置。其中,第一可视性和第二可视性的详细描述可以参考第一方面及其可能的设计方式中的描述,本申请实施例这里不予赘述。
结合第二方面,在一种可能的设计方式中,上述多个定位备选位置包括:满足预设条件的卫星的数量大于预设数量阈值的备选位置。或者,多个定位备选位置包括:多个备选位置中的M个备选位置,M≥2,M是正整数,M个备选位置的满足预设条件的卫星的数量,大于其他备选位置的满足预设条件的卫星的数量,其他备选位置包括多个备选位置中除M个备选位置之外备选位置。其中,满足预设条件的卫星是第一可视性与第二可视性匹配的卫星。
结合第二方面,在一种可能的设计方式中,上述选择模块,具体用于:针对每颗卫星和每个备选位置执行:根据一颗卫星相对于一个备选位置的高度角和方位角,以及一个备选位置对应的网格数据,确定一颗卫星相对于一个备选位置的第一可视性,以获取每颗卫星相对于每个备选位置的第一可视性;针对每颗卫星执行:根据第二电子设备接收一颗卫星发送的广播信号的信号参数,确定一颗卫星相对于每个备选位置的第二可视性,以获取每颗卫星相对于每个备选位置的第二可视性。
结合第二方面,在一种可能的设计方式中,上述选择模块,用于根据一颗卫星相对于一个备选位置的高度角和方位角,以及一个备选位置对应的网格数据,确定一颗卫星相对于一个备选位置的第一可视性,可以包括:上述选择模块,用于获取第一方位角和第一高度角,第一方位角是一颗卫星相对于一个备选位置的方位角,第一高度角是一颗卫星相对于一个备选位置的高度角;根据一个备选位置的位置信息,确定一个备选位置的天空遮挡曲线;根据第一方位角,从一个备选位置的天空遮挡曲线获取第二高度角;其中,第二高度角是第一遮挡物相对于一个备选位置的高度角,第一遮挡物相对于一个备选位置的方位角是第一方位角;如果第一高度角大于第二高度角,确定一颗卫星相对于一个备选位置的第一可视性指示一颗卫星是视距卫星;如果第一高度角小于或等于第二高度角,确定一颗卫星相对于一个备选位置的第一可视性指示一颗卫星是非视距卫星。
结合第二方面,在一种可能的设计方式中,上述电子设备还可以包括:存储模块。该存储模块保存有预设AI模型的模型代码。该预设AI模型具备根据位于任一个位置的电子设备接收任一颗卫星发送的广播信号的信号参数,确定任一颗卫星相对于任一个位置的第二可视性的功能。
上述选择模块,用于根据第二电子设备接收一颗卫星发送的广播信号的信号参数,确定一颗卫星相对于每个备选位置的第二可视性,包括:选择模块,用于运行预设AI模型的模型代码,将第二电子设备接收一颗卫星发送的广播信号的信号参数作为输入,通过预设AI模型,确定一颗卫星相对于每个备选位置的第二可视性。
结合第二方面,在一种可能的设计方式中,上述电子设备还包括:接收模块和存储模块。接收模块,用于接收服务器发送的至少一个第一网格的网格数据;至少一个第一网格指示第一位置所在的一片地理区域,每个第一网格的面积小于预设面积阈值;一个第一网格的网格数据包括一个第一网格的位置信息和天空遮挡曲线;存储模块,用于保存接收模块接收的至少一个第一网格的网格数据。其中,一个备选位置对应的网格数据是距离一个备选位置最近的第一网格的网格数据。
结合第二方面,在一种可能的设计方式中,上述电子设备还包括:获取模块和存储模块。获取模块,用于获取N层瓦片地图中的第i层瓦片地图,第i层瓦片地图包括多个地图瓦片;其中,2≤i≤N,i和N均为正整数;获取第i层瓦片地图中至少一个地图瓦片的至少一个第一网格的网格数据;其中,一个地图瓦片的至少一个第一网格是分割地图瓦片得到的多个地理区域中的至少一个地理区域,每个第一网格的面积小于预设面积阈值;一个第一网格的网格数据包括一个第一网格的位置信息和天空遮挡曲线;存储模块,用于保存获取模块获取的至少一个第一网格的网格数据。其中,一个备选位置对应的网格数据是距离一个备选位置最近的第一网格的网格数据。
结合第二方面,在一种可能的设计方式中,上述至少一个第一网格是遮挡物密集的地理区域的第一网格。
结合第二方面,在一种可能的设计方式中,上述选择模块,还用于在从多个备选位置中选择出多个定位备选位置之前,从存储模块保存的至少一个第一网格的网格数据中,获取多个备选位置对应的网格数据。其中,多个备选位置对应的网格数据是距离多个备选位置最近的第一网格的网格数据。
结合第二方面,在一种可能的设计方式中,上述第一网格的网格数据还包括:一个第一网格所在道路的道路标识。
第三方面,本申请实施例提供一种电子设备,该电子设备是第一电子设备。该第一电子设备对第二电子设备进行定位。该电子设备包括:存储器和一个或多个处理器。该存储器与处理器耦合。存储器用于存储计算机程序代码,该计算机程序代码包括计算机指令。当所述计算机指令被所述处理器执行时,使得所述电子设备执行如第一方面及其任一种可能的设计方式所述的方法。
第四方面,本申请实施例提供一种芯片系统,该芯片系统应用于第一电子设备。该第一电子设备对第二电子设备进行定位。该芯片系统包括:一个或多个接口电路和一个或多个处理器。所述接口电路和所述处理器通过线路互联。所述接口电路用于从所述第一电子设备的存储器接收信号,并向所述处理器发送所述信号。该信号包括所述存储器中存储的计算机指令。当所述处理器执行所述计算机指令时,所述第一电子设备执行如第一方面及其任一种可能的设计方式所述的方法。
第五方面,本申请实施例提供一种计算机存储介质,该计算机存储介质包括计算机指令,当所述计算机指令在第一电子设备上运行时,使得所述第一电子设备执行如第一方面及其任一种可能的设计方式所述的方法。
第六方面,本申请实施例提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如第一方面及其任一种可能的设计方式所述的方法。
可以理解地,上述提供的第二方面和第三方面及其任一种可能的设计方式所述的电子设备,第四方面所述的芯片系统,第五方面所述的计算机存储介质,第六方面所述的计算机程序产品所能达到的有益效果,可参考如第一方面及其任一种可能的设计方式中的有益效果,此处不再赘述。
附图说明
图1为本申请实施例提供的一种手机的GNSS定位原理对应的通信系统示意图;
图2为本申请实施例提供的一种手机的GNSS定位原理示意图;
图3为本申请实施例提供的一种定位方法所应用的场景示意图;
图4为本申请实施例提供的一种定位方法所应用的通信系统示意图;
图5为本申请实施例提供的一种电子设备的硬件结构示意图;
图6为本申请实施例提供的一种卫星相对于电子设备所在位置的方位角和高度角的实例示意图;
图7为本申请实施例提供的一种在极坐标系中表示方位角和高度角的实例示意图;
图8为本申请实施例提供的一种定位方法流程图;
图9A为本申请实施例提供的一种多层瓦片地图的实例示意图;
图9B为本申请实施例提供的一种生成瓦片地图的原理示意图;
图10为本申请实施例提供的一种将地图瓦片划分为多个第一网格的原理示意图;
图11A为本申请实施例提供的一种建筑物(如高楼)相对于第一网格的方位角和高度角的实例示意图;
图11B为本申请实施例提供的一种天空遮挡曲线的实例示意图;
图11C为本申请实施例提供的一种确定第一可视性的原理示意图;
图12A为本申请实施例提供的一种瓦片数据库的实例示意图;
图12B为本申请实施例提供的一种地理区域的建筑分布示意图;
图12C为本申请实施例提供的一种由手机410执行定位方法的原理框图;
图13为本申请实施例提供的一种备选区域和备选位置的实例示意图;
图14为本申请实施例提供的另一种备选区域和备选位置的实例示意图;
图15A为本申请实施例提供的另一种天空遮挡曲线的实例示意图;
图15B为本申请实施例提供的另一种天空遮挡曲线的实例示意图;
图16A为本申请实施例提供的一种第二网格(即备选位置)的打分示意图;
图16B为本申请实施例提供的一种定位备选位置的打分示意图;
图16C为本申请实施例提供的一种地理区域的道路分布示意图;
图17为本申请实施例提供的一种定位原理框图;
图18为本申请实施例提供的另一种定位方法流程图;
图19为本申请实施例提供的一种定位原理框图;
图20A为本申请实施例提供的一种由服务器400协助可穿戴设备420执行定位方法的原理框图;
图20B为本申请实施例提供的另一种定位方法流程图;
图21A为本申请实施例提供的另一种定位方法流程图;
图21B为本申请实施例提供的另一种定位方法流程图;
图22为本申请实施例提供的一种定位方法的逻辑框图;
图23为本申请实施例提供的一种定位方法的定位效果实例示意图;
图24为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
为了便于理解,本申请实施例这里对电子设备进行GNSS定位的具体方法进行介绍。
卫星可以实时发送广播信号,该广播信号包括星历和导航电文。电子设备可以接收多个卫星发送的广播信号。例如,如图1所示,手机可以接收卫星1发送的广播信号1、接收卫星2发送的广播信号2,接收卫星3发送的广播信号3,接收卫星4发送的广播信号4。
其中,星历用于描述卫星当前的飞行位置和速度。电子设备根据一个卫星的星历可以确定该卫星相对于地心坐标系(earth centered earth fixed,ECEF)的三维坐标。例如,如图2所示,卫星1相对于ECEF的三维坐标为(x1,y1,z1),卫星2相对于ECEF的三维坐标为(x2,y2,z2),卫星3相对于ECEF的三维坐标为(x3,y3,z3),卫星4相对于ECEF的三维坐标为(x4,y4,z4)。
导航电文用于描述卫星的运行状态参数。电子设备根据一个卫星的导航电文可以计算出电子设备与该卫星之间的距离。一个导航电文中包括对应广播信号的发送时间。电子设备可以确定电子设备接收广播信号的时间。具体的,电子设备可以根据电子设备接收一个广播信号的时间、卫星发送该广播信号的时间,以及电子设备与卫星的时钟偏差,采用以下公式(1)计算电子设备与卫星之间的距离。
d=c*(tr+△t-ts) 公式(1)
其中,c为光速,tr为电子设备接收广播信号的时间,ts为卫星发送广播信号的时间,△t为电子设备与卫星的时钟偏差。
例如,假设上述广播信号1的发送时间为ts 1,手机接收广播信号1的时间为tr 1;广播信号2的发送时间为ts 2,手机接收广播信号2的时间为tr 2;广播信号3的发送时间为ts 3,手机接收广播信号3的时间为tr 3。那么,手机采用上述公式(1),可以计算得到:手机与卫星1的距离d1=c*(tr 1+△t-ts 1),手机与卫星2的距离d2=c*(tr 2+△t-ts 2),手机与卫星3的距离d3=c*(tr 3+△t-ts 3)。
随后,电子设备可以根据至少三个卫星相对于ECEF的三维坐标,以及电子设备与这至少三个卫星之间的距离,采用以下公式(2)计算电子设备的ECEF三维坐标(x,y,z),确定该电子设备的位置。
其中,公式(2)中,d1、d2、d3、x1、y1、z1、x2、y2、z2、x3、y3和z3都是已知量,电子设备可以采用公式(2),计算出电子设备的ECEF三维坐标(x,y,z),确定该电子设备的位置。
如图3所示,在城市高楼密集的场景下,卫星2和卫星3发射的广播信号需要经过高楼的反射,才可以被手机接收到。那么,上述伪距d2则不是卫星2与手机的直线距离,而是广播信号2经过反射后的距离;上述伪距d3则不是卫星3与手机的直线距离,而是广播信号2经过反射后的距离。也就是说,伪距d2和伪距d3的测量误差较大。如此,在伪距d2和伪距d3的测量误差较大的情况下,电子设备则无法准确定位,电子设备的定位精度较低。如图3所示,用户持手机所处的真实位置与手机定位位置距离较远,手机定位精度较低,影响用户体验。
本申请实施例提供一种定位方法,可以应用于电子设备进行GNSS定位过程中。其中,通过该方法,使得电子设备在卫星发射的信号容易被遮挡的场景下,仍然可以保障甚至提升定位精度。
请参考图4,其示出本申请实施例提供的一种定位方法所应用的定位系统示意图。如图4所示,该定位系统可以包括:服务器400和多个电子设备。例如,该多个电子设备可以包括手机410和可穿戴设备420。
其中,服务器400中用于保存多个瓦片数据。该多个瓦片数据可以用于识别卫星为视距卫星或非视距卫星。每个电子设备可以通过接收多个卫星发射的广播信号进行定位,确定该电子设备的第一位置。然后,电子设备可以根据服务器400中的瓦片数据,识别出卫星的可视性(包括第一可视性和第二可视性)。其中,卫星的第一可视性用于指示对于电子设备而言,该卫星为视距卫星或非视距卫星。卫星的第二可视性用于指示对于电子设备而言,该卫星为视距卫星的概率。最后,电子设备可以根据多个卫星的可视性,对上述第一位置进行修正,以提升电子设备的定位精度。
其中,如果对于一个电子设备而言,卫星被遮挡物遮挡,该卫星不能向电子设备直线传输广播信号;那么,对于该电子设备而言,该卫星是非视距卫星。如果对于一个电子设备而言,卫星未被遮挡物遮挡,该卫星可以向电子设备直线传输广播信号;那么,对于该电子设备而言,该卫星是视距卫星。例如,如图3所示,对于手机而言,卫星1未被遮挡,可以向手机直线传输广播信号;而卫星2和卫星3被建筑物遮挡,不能向手机直线传输广播信号。因此,对于图3所示的手机而言,卫星1是视距卫星,卫星2和卫星3是非视距卫星。
需要说明的是,由于不同电子设备所处的地理位置可能不同,而不同地理位置的遮挡物(如建筑物)可能不同;因此,对于不同的电子设备而言,同一卫星的可视性可以不同。当然,如果多个电子设备处于同一地理位置,那么对于这多个电子设备而言,卫星的可视性相同。并且,对于同一电子设备而言,不同卫星的可视性可以相同,也可以不同。
其中,本申请实施例中,将卫星向电子设备直线传输广播信号的传输方式称为:视距传输(light of sight,LOS)。例如,如图3所示,卫星1发射的广播信号经过视距传输LOS(即直线传输)被手机接收。本申请实施例中,将卫星向电子设备反射传输广播信号的传输方式称为:非视距传输(non light of sight,NLOS)。例如,如图3所示,卫星2和卫星3发射的广播信号经过非视距传输NLOS(即反射传输)被手机接收。
本申请实施例的方法,可以应用于第一电子设备对第二电子设备进行定位。其中,第一电子设备与第二电子设备可以是同一个电子设备。也就是说,本申请实施例的方法,可以应用于一个电子设备对该电子设备进行定位。或者,第一电子设备与第二电子设备可以是不同的设备。也就是说,本申请实施例的方法,可以应用于一个电子设备对其他电子设备进行定位。
示例性的,第一电子设备可以是手机(如图4所示的手机410)、车载设备(如车载导航仪)、平板电脑、桌面型、膝上型、手持计算机、可穿戴设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本,以及蜂窝电话、个人数字助理(personal digital assistant,PDA)、增强现实(augmented reality,AR)\虚拟现实(virtual reality,VR)设备等具备GNSS定位功能的设备。当然,第一电子设备还可以是图4所示的服务器400。本申请实施例对该第一电子设备的具体形态不作特殊限制。下面将结合附图对本申请实施例的实施方式进行详细描述。
示例性的,本申请实施例中的第二电子设备可以是手机、车载设备(如车载导航仪)、平板电脑、桌面型、膝上型、手持计算机、可穿戴设备(如图4所示的可穿戴设备420)、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本,以及蜂窝电话、个人数字助理(personal digital assistant,PDA)、增强现实(augmentedreality,AR)\虚拟现实(virtual reality,VR)设备等具备GNSS定位功能的设备,本申请实施例对该第二电子设备的具体形态不作特殊限制。下面将结合附图对本申请实施例的实施方式进行详细描述。
请参考图1,其以上述电子设备是图4所示的手机410为例,示出了电子设备500的硬件结构示意图。如图5所示,电子设备500可以包括处理器510,外部存储器接口520,内部存储器521,通用串行总线(universal serial bus,USB)接口530,充电管理模块540,电源管理模块541,电池542,天线1,天线2,移动通信模块550,无线通信模块560,音频模块570,扬声器570A,受话器570B,麦克风570C,耳机接口570D,传感器模块580,按键590,马达591,指示器592,摄像头593,显示屏594,以及用户标识模块(subscriber identificationmodule,SIM)卡接口595等。
其中,传感器模块580可以包括压力传感器580A,陀螺仪传感器580B,气压传感器580C,磁传感器580D,加速度传感器580E,距离传感器580F,接近光传感器580G,指纹传感器580H,温度传感器580J,触摸传感器580K,环境光传感器580L,骨传导传感器580M等。
可以理解的是,本发明实施例示意的结构并不构成对电子设备500的具体限定。在本申请另一些实施例中,电子设备500可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器510可以包括一个或多个处理单元,例如:处理器510可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是电子设备500的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器510中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器510中的存储器为高速缓冲存储器。该存储器可以保存处理器510刚用过或循环使用的指令或数据。如果处理器510需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器510的等待时间,因而提高了系统的效率。
在一些实施例中,处理器510可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。I2S接口可以用于音频通信。PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。MIPI接口可以被用于连接处理器510与显示屏594,摄像头593等外围器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(display serialinterface,DSI)等。GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为数据信号。USB接口530是符合USB标准规范的接口,具体可以是Mini USB接口,MicroUSB接口,USB Type C接口等。USB接口530可以用于连接充电器为电子设备500充电,也可以用于电子设备500与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如AR设备等。
可以理解的是,本发明实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备500的结构限定。在本申请另一些实施例中,电子设备500也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块540用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。电源管理模块541用于连接电池542,充电管理模块540与处理器510。电源管理模块541接收电池542和/或充电管理模块540的输入,为处理器510,内部存储器521,外部存储器,显示屏594,摄像头593,和无线通信模块560等供电。电源管理模块541还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。
电子设备500的无线通信功能可以通过天线1,天线2,移动通信模块550,无线通信模块560,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备500中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块550可以提供应用在电子设备500上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块550可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块550可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块550还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块550的至少部分功能模块可以被设置于处理器510中。在一些实施例中,移动通信模块550的至少部分功能模块可以与处理器510的至少部分模块被设置在同一个器件中。调制解调处理器可以包括调制器和解调器。
无线通信模块560可以提供应用在电子设备500上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),GNSS,调频(frequency modulation,FM),近距离无线通信技术(nearfield communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块560可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块560经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器510。无线通信模块560还可以从处理器510接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
示例性的,本申请实施例中的GNSS可以包括:GPS,GLONASS,BDS,QZSS,SBAS,和/或GALILEO等。
电子设备500通过GPU,显示屏594,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏594和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器510可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。显示屏594用于显示图像,视频等。显示屏594包括显示面板。
电子设备500可以通过ISP,摄像头593,视频编解码器,GPU,显示屏594以及应用处理器等实现拍摄功能。ISP用于处理摄像头593反馈的数据。摄像头593用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。视频编解码器用于对数字视频压缩或解压缩。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备500的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口520可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备500的存储能力。外部存储卡通过外部存储器接口520与处理器510通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器521可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器510通过运行存储在内部存储器521的指令,从而执行电子设备500的各种功能应用以及数据处理。
电子设备500可以通过音频模块570,扬声器570A,受话器570B,麦克风570C,耳机接口570D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块570用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。扬声器570A,也称“喇叭”,用于将音频电信号转换为声音信号。受话器570B,也称“听筒”,用于将音频电信号转换成声音信号。麦克风570C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。耳机接口570D用于连接有线耳机。耳机接口570D可以是USB接口530,也可以是3.5mm的开放移动电子设备平台(open mobile terminalplatform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunicationsindustry association of the USA,CTIA)标准接口。
按键590包括开机键,音量键等。按键590可以是机械按键。也可以是触摸式按键。电子设备500可以接收按键输入,产生与电子设备500的用户设置以及功能控制有关的键信号输入。马达591可以产生振动提示。马达591可以用于来电振动提示,也可以用于触摸振动反馈。指示器592可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。SIM卡接口595用于连接SIM卡。SIM卡可以通过插入SIM卡接口595,或从SIM卡接口595拔出,实现和电子设备500的接触和分离。电子设备500可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口595可以支持Nano SIM卡,Micro SIM卡,SIM卡等。
本申请实施例相关术语介绍:
一、伪距。
伪距是指电子设备进行GNSS定位,根据卫星发送的广播信号测量得到的电子设备与卫星之间的距离。例如,如图1所示,卫星1与手机的伪距为d1,卫星2与手机的伪距为d2。
二、载噪比CN0。
载噪比又称信噪比,常用于卫星通讯系统中。载噪比是卫星发射的广播信号的信噪比。其中,广播信号的CN0越大,表示该广播信号的信号质量越高;广播信号的CN0越小,表示该广播信号的信号质量越低。
可以理解,如果卫星发射的广播信号经过反射(如一次或多次反射)才被电子设备接收到,那么该广播信号则会发生衰减,该广播信号的信号质量则较低,该广播信号的CN0较小。因此,上述广播信号的CN0还可以用于反映该广播信号是否经过反射,以及该广播信号被反射的次数的多少。例如,一个广播信号的CN0越大,该广播信号被反射的次数可能越少;一个广播信号的CN0越小,该广播信号被反射的次数可能越多。
三、伪距率。
伪距率是指卫星与电子设备的伪距的变化速度。伪距率可以用于确定电子设备与卫星的伪距的变化速度。
四、伪距残差。
伪距残差是指电子设备与卫星的精确距离(即真实距离)和伪距的差值。其中,电子设备可以根据电子设备的真实位置和卫星的真实位置,确定电子设备与卫星之间的精确距离(即真实距离)。
五、卫星的高度角。
卫星的高度角(即卫星相对于电子设备所在位置的高度角)是指:以电子设备所在点(即位置)作为地理坐标系的原点,卫星所在点与地理坐标系的原点的连线和当地水平面的夹角。其中,如图6中的(a)所示,上述地理坐标系的x轴沿当地纬线指向东(E),y轴沿当地子午线线指向北(N),z轴沿当地地理垂线指向上。z轴与x轴和y轴构成右手直角坐标系。其中,x轴与y轴构成的平面即为当地水平面,y轴与z轴构成的平面即为当地子午面。卫星的高度角即为卫星所在点与地理坐标系的原点的连线,与x轴与y轴构成的平面的夹角。
例如,如图6中的(b)所示,以电子设备所在的点O作为地理坐标系的原点,x轴沿当地纬线指向东(E),y轴沿当地子午线线指向北(N),z轴沿当地地理垂线指向上。如图6中的(b)所示,卫星的高度角为点A与点O的连线OA与x轴与y轴构成的平面(即水平面)的夹角α1。
六、卫星的方位角。
卫星的方位角(即卫星相对于电子设备所在位置的方位角)是指:以电子设备所在点(即位置)作为地理坐标系的原点,卫星所在点在水平面的投影点与地理坐标系的原点的连线和y轴(即正北(N)方向)的夹角。
例如,如图6中的(b)所示,卫星的方位角为点A在水平面的投影点A'与点O的连线OA'与y轴的夹角β1。
需要注意的是,本申请实施例中,以卫星在第一极坐标系所在平面的投影点的极径ρwx表征该卫星的高度角(如上述α1),以卫星在第一极坐标系所在平面的投影点的极角θwx作为该卫星的方位角(如上述β1)。其中,上述第一极坐标系是以电子设备所在点(即位置)作为极点(如图7所示的O点),从极点向当地子午线线指向的正北(N)方向的射线(如图7所示的Oy)作为极轴,顺时针方向作为正向的极坐标系。
如图7所示,卫星在第一极坐标系所在平面的投影点A'的极角θwx,为卫星所在点在第一极坐标系所在平面的投影点A'与极点O的连线OA'和极轴Oy的夹角。其中,上述第一极坐标系所在平面为当地水平面(即图7所示的xoy平面)。如图7所示,投影点为A'点的卫星的方位角为θwx。
例如,如图7所示,卫星的方位角为0°,表示卫星处于电子设备的正北(N)方向;卫星的方位角为45°,表示卫星处于电子设备的东北方向;卫星的方位角为90°,表示卫星处于电子设备的正东(E)方向;卫星的方位角为135°,表示卫星处于电子设备的东南方向;卫星的方位角为180°,表示卫星处于电子设备的正南(S)方向;卫星的方位角为225°,表示卫星处于电子设备的西南方向;卫星的方位角为270°,表示卫星处于电子设备的正西(W)方向;卫星的方位角为315°,表示卫星处于电子设备的西北方向。
如图7所示,卫星在第一极坐标系所在平面的投影点A'的极径ρwx,为卫星所在点在第一极坐标系所在平面的投影点A'与极点O的距离,即连线OA'的长度。如图7所示,投影点为A'点的卫星的高度角可以通过ρ的长度来表征。具体的,卫星在第一极坐标系所在平面的投影点的极径越大,卫星的高度角越小;卫星在第一极坐标系所在平面的投影点的极径越小,卫星的高度角则越大。
例如,图7中虚线所示的圆圈a、圆圈b和圆圈c的圆心均为O点;圆圈a的半径为r,圆圈b的半径为2r,圆圈c的半径为3r。如图7所示,当卫星在第一极坐标系所在平面的投影点位于圆圈c上时,投影点的极径最大(极径为3r),卫星的高度角最小(高度角为零);当卫星在第一极坐标系所在平面的投影点位于圆圈b上时,投影点的极径为2r,卫星的高度角为30°;当卫星在第一极坐标系所在平面的投影点位于圆圈a上时,投影点的极径为r,卫星的高度角为60°;当卫星在第一极坐标系所在平面的投影点位于极点O上时,投影点的极径为零,卫星的高度角为90°。
综上所述,卫星在第一极坐标系所在平面的投影点的极坐标为(ρwx,θwx),该第一极坐标系以电子设备所在点作为极点。ρwx是卫星在第一极坐标系所在平面的投影点的极径,θwx是卫星在第一极坐标系所在平面的投影点的极角。本申请实施例中,以卫星在第一极坐标系所在平面的投影点的极径ρwx表征该卫星的高度角,以卫星在第一极坐标系所在平面的投影点的极角θwx作为该卫星的方位角。
为了便于理解,以下结合附图对本申请实施例提供的定位方法进行详细介绍。以下实施例中的方法均可以在图4所示的定位系统中实现。图4所示的定位系统包括服务器400、手机410和可穿戴设备420。
在第(1)种情况下,以上述第一电子设备和第二电子设备均为图4所示的手机410为例。在第(1)种情况下,由手机410执行本申请实施例提供的定位方法(如,以下“定位”流程),对手机410进行定位,以提升手机410的定位精度。
在第(2)种情况下,第一电子设备可以是图4所示的服务器400或手机410,第二电子设备可以是图4所示的可穿戴设备420。在第(2)种情况下,可以由图4所示的服务器400或手机410执行本申请实施例提供的定位方法(如,以下“定位”流程),协助可穿戴设备420进行定位,提升可穿戴设备420的定位精度。
示例性的,如图8所示,本申请实施例的方法可以包括:(一)“数据处理”流程;(二)“定位”流程。
(一)“数据处理”流程。
其中,“数据处理”流程用于生成多个瓦片数据。具体的,在上述第(1)种情况和第(2)种情况中的任一种情况下,如图8或图20B所示,该“数据处理”流程可以包括S801-S803。
S801、服务器400获取N层瓦片地图中的第i层瓦片地图。
其中,上述N层瓦片(Tile)地图是一种瓦片金字塔模型(如图9A所示的瓦片金字塔模型)。该瓦片金字塔模型是一种多分辨率层次模型。如图9A所示,瓦片金字塔模型的顶层是第0层瓦片地图,底层是第N-1层瓦片地图。从瓦片金字塔模型的顶层到底层,瓦片地图的分辨率越来越高,但每一层瓦片地图所表示的地理范围不变。其中,N≥2,N为正整数。
具体的,服务器400获取N层瓦片地图的方法可以包括:首先,确定瓦片地图的缩放级别N;获取第0层地图图片(第0层地图图片的缩放级别最高,地图比例尺最大);对第0层地图图片从左至右,从上到下进行分割,分割成相同大小的地图瓦片,形成第0层地图瓦片(也称为第0层地图瓦片矩阵);在第0层地图图片的基础上,按照每2*2像素合成为一个像素的方法,生成第1层地图图片;对第1层地图图片进行分割,分割成相同大小的地图瓦片,形成第1层地图瓦片(也称为第1层地图瓦片矩阵);……;第N-2层地图图片的基础上,按照每2*2像素合成为一个像素的方法,生成第N-1层地图图片;对第N-1层地图图片进行分割,分割成相同大小的地图瓦片,形成第N-1层地图瓦片(也称为第N-1层地图瓦片矩阵)。如此,服务器400便可以获取到N层瓦片地图。
需要注意的是,本申请实施例中的地图图片(如第0层地图图片)是一种矢量地图,是根据矢量数据绘制出来的地图。N层瓦片地图中的每一层瓦片地图都是由至少一张地图瓦片拼接而成的地图。例如,如图9B所示,在本申请实施例中,第0层瓦片地图可以包括东半球的地图瓦片910和西半球的地图瓦片920;第1层瓦片地图可以包括地图瓦片911、地图瓦片912、地图瓦片913和地图瓦片914,以及地图瓦片921、地图瓦片922、地图瓦片923和地图瓦片924。
可以理解,瓦片地图的层级越高,其所组成世界地图的地图瓦片的数量则越多,该层级的瓦片地图所展示的地图越详细。因此,N越大,那么第N层的瓦片地图所展示的地图则越详细。
示例性的,以i=15为例。采用图9B所示的分割方式,服务器400获取到世界地图的第15层瓦片地图中、每个地图瓦片的大小为p*p。p的单位为米(m)。其中,p的取值为600m左右。例如,p=611m,即每个地图瓦片的大小为611m*611m。又例如,p=600m,即每个地图瓦片的大小为600m*600m。
S802、服务器400获取第i层瓦片地图中至少一个地图瓦片的至少一个第一网格的网格数据。
其中,S802具体可以包括S802a和S802b。S802a:服务器400将第i层瓦片地图中的至少一个地图瓦片中的每个地图瓦片分割为K个第一网格,K≥2,K为正整数。S802b:服务器400获取K个第一网格中至少一个第一网格的网格数据。
可以理解,针对不同的地理区域可以分别设置一个服务器。一个地理区域的服务器用于生成并保存该地理区域的多个瓦片数据。其中,上述地理区域可以按照不同维度划分的地理区域。例如,可以沿着赤道将地球划分为两个地理区域,如南半球和北半球。又例如,可以沿着西经20°,东经160°的经线将将地球划分为两个地理区域,如东半球和西半球。再例如,可以按照固定的经纬度间隔将地球划分为多个面积相等的地理区域。再例如,可以按照行政区域(如国家或国家的省份等)将地球划分为多个地理区域,每个行政区域对应一个地理区域。当然,地理区域的划分方式包括但不显示上述划分方式,其他的划分方式可以参考常规技术中地理区域的划分方式,本申请实施例这里不予赘述。
其中,第i层瓦片地图可以包括多个地图瓦片。上述至少一个地图瓦片可以包括:第i层瓦片地图的多个地图瓦片中、服务器400所在的地理区域的地图瓦片。其中,服务器400所在的地理区域可以对应一个或多个地图瓦片。例如,上述至少一个地图瓦片可以包括:第i层瓦片地图的多个地图瓦片中、服务器400所在省份的地图瓦片。
可以理解,电子设备在城市建筑比较密集的地区进行定位时,才可能会因为卫星发射的广播信号无法通过直线传输被电子设备接收到而导致定位不准确的问题。而电子设备在海面、草原或者平地等比较空旷的地区进行定位时,卫星发射的广播信号被遮挡的可能性较低,从而不会影响定位精度。由此可见,针对上述比较空旷的地区,服务器400则不需要获取并保存对应的网格数据。这样,可以减少网格数据对服务器400的存储空间的占用。
在一些实施例中,上述至少一个第一网络可以是K个第一网络中、遮挡物密集的地理区域的第一网格。也就是说,服务器400可以只获取并保存遮挡物密集的地理区域的第一网格。这样,可以减少服务器400获取第一网格的网格数据的计算量,还可以减少网格数据对服务器400的存储空间的占用。
例如,上述第一网格可以是边长为L的正方形。如图10所示,地图瓦片1000可以是第i层瓦片地图中的一个地图瓦片。服务器400可以将图10所示的地图瓦片1000平均分割为25(即K=25)个第一网格,每个第一网格是变成为L的正方形。
可以理解,K越大,L则越小;服务器400划分地图瓦片得到的第一网格的数量则越多,服务器400得到的网格数据的数据量则越大。在本申请实施例中,K和L的大小可以由电子设备(如图4所示的手机410或可穿戴设备420)的定位精度决定。电子设备的定位精度越高,则K越大,L越小;电子设备的定位精度越低,则K越小,L越大。
示例性的,结合上述实例中,第i层瓦片地图中地图瓦片的大小为600m*600m。以L=3m为例。服务器400可以将地图瓦片划分为40000(即K=40000)个第一网格,每个第一网格为边长为3m的正方形。
本申请实施例中,第一网格的网格数据还可以包括:(I)该第一网格的位置信息;(II)该第一网格的天空遮挡曲线。
(I)第一网格的位置信息。
其中,第一网格的位置信息可以是第一网格中第一点的经纬度坐标。一个第一网格的第一点可以是该第一网格的中心点、该第一网格左上角的点、右上角的点、左下角的点、右下角的点或者第一网格上任一点,本申请实施例对此不作限制。
(II)第一网格的天空遮挡曲线。
其中,第一网格的天空遮挡曲线包括:位于第一点周围的遮挡物的外部轮廓的高度角和方位角,即位于该第一网格的第一点周围的遮挡物的外部轮廓上的多个点相对于该第一点的高度角和方位角。其中,第一点周围的遮挡物可以为各种建筑或者植物等。
需要注意的是,为了便于描述,本申请实施例中,将遮挡物(如建筑物)的外部轮廓上的多个点简称为遮挡物的多个点,将遮挡物(如建筑物)的外部轮廓上的一个点简称为遮挡物的一个点。
第一点的周围的一个遮挡物的一个点(简称为第三点)的高度角是指:以第一点作为地理坐标系的原点,第三点与地理坐标系的原点的连线和当地水平面的夹角。其中,地理坐标系的详细描述可以参考上述实施例中的相关内容,本申请实施例这里不予赘述。
例如,如图11A所示,以第一点O作为地理坐标系的原点,x轴沿当地纬线指向东(E),y轴沿当地子午线线指向北(N),z轴沿当地地理垂线指向上。如图11A所示,遮挡物(如高楼)的第三点B的高度角为该高楼的第三点B与点O的连线OB与x轴与y轴构成的平面(即水平面)的夹角α2。
第一点的周围的一个遮挡物的一个点(简称为第三点)的方位角是指:以第一点作为地理坐标系的原点,第三点在水平面的垂直投影点与地理坐标系的原点的连线和y轴(即正北(N)方向)的夹角。例如,如图11A所示,遮挡物(如高楼)的第三点B的方位角为的第三点B在水平面的垂直投影点B'与点O的连线OB'与y轴的夹角β2。
需要注意的是,本申请实施例中,以遮挡物的第三点在第二极坐标系所在平面的垂直投影点的极径ρzd表征该遮挡物的高度角(如上述α2),以遮挡物的第三点在第二极坐标系所在平面的垂直投影点的极角θzd作为该遮挡物的方位角(如上述β2)。其中,上述第二极坐标系是以第一点作为极点,从极点向当地子午线线指向的正北(N)方向的射线作为极轴,顺时针方向作为正向的极坐标系。
其中,以遮挡物的第三点在第二极坐标系所在平面的垂直投影点的极径表征该遮挡物的高度角,以遮挡物的第三点在第二极坐标系所在平面的垂直投影点的极角作为该遮挡物的方位角的具体方法和原理,可以参考上述实施例中,以极坐标(ρwx,θwx)的极角θwx作为卫星的方位角,以极径ρwx表征卫星的高度角的具体方法和原理,本申请实施例这里不予赘述。
服务器400可以根据位于第一点周围的每个遮挡物的多个点的高度角和方位角,确定该遮挡物的多个点在以第一点为极点的极坐标系中的极坐标(ρzd,θzd)。其中,ρzd表征遮挡物的一个点(如第三点)高度角,θzd是该遮挡物的第三点的方位角。然后,服务器400可以连接第一点周围的遮挡物的多个点在上述极坐标系中的极坐标,绘制出该第一点的天空遮挡曲线,即该第一点对应的第一网格的天空遮挡曲线。
例如,一个第一网格的第一点O位于图11B中的(a)所示的道路中间,该第一点O周围有很多的遮挡物(如高楼)。其中,如图11B中的(b)所示,图11B中的(a)所示的高楼的一个点D在以第一点O为极点的极坐标系中的极坐标为D(ρwx D,θwx D),高楼的一个点E在以第一点O为极点的极坐标系中的极坐标为E(ρwx E,θwx E)。服务器400可以在图11B中的(b)所示的极坐标系中绘制出第一点O的天空遮挡曲线S。
其中,由于遮挡物的任一点(如第三点)在第二极坐标系所在平面的投影点的极径越大,该遮挡物的第三点的高度角越小;该遮挡物的第三点在第二极坐标系所在平面的垂直投影点的极径越小,该遮挡物的第三点的高度角则越大;因此,图11B中的(b)所示的高楼E的最高点的高度角小于高楼D的最高点的高度角。
可以理解,每个第一网格的第一点的每个方位都可能会有遮挡物。在卫星的方位角与该第一点的一个遮挡物的任一点(如第三点)的方位角相同的前提下,如果该卫星的高度角小于该遮挡物的第三点的高度角,那么位于该第一点的电子设备则不能接收到该卫星直线传输的广播信号。也就是说,该卫星是该电子设备的非视距卫星。如果该卫星的高度角大于该遮挡物的第三点的高度角,那么位于该第一点的电子设备则可以接收到该卫星直线传输的广播信号。也就是说,该卫星是该电子设备的视距卫星。
例如,如图11C所示,高楼的一个点B的方位角、卫星A的方位角和卫星C的方位角均为β,高楼的点B的高度角为α2,卫星A的高度角为α1,卫星C的高度角为α3。其中,高楼的点B的方位角、卫星A的方位角和卫星C的方位角相同,即高楼的点B、卫星A和卫星C在第一点O的同一方位。那么,由于卫星A的高度角α1小于高楼的点B的高度角α2;因此,卫星A发射的广播信号会因为高楼的遮挡而无法通过直线传输被位于第一点O的电子设备接收,卫星A是第一点O的非视距卫星。由于卫星C的高度角α3大于高楼的点B的高度角α2;因此,卫星C发射的广播信号则不会被高楼遮挡,卫星C是第一点O的视距卫星。如果该卫星C发射的广播信号也不会被其他遮挡物遮挡,那么可以通过直线传输被位于第一点O的电子设备接收。
由上述描述可知:如果卫星在以第一点为极点的极坐标系中的极坐标位于第一点的天空遮挡曲线内(如图11B所示的天空遮挡曲线S围城的白色区域),则表示该卫星是位于第一点的视距卫星。该卫星发射的广播信号不会被遮挡,可以通过直线传输被位于第一点的电子设备接收。如果卫星在以第一点为极点的极坐标系中的极坐标位于第一点的天空遮挡曲线外(如图11B所示的天空遮挡曲线S外的灰色区域),则表示该卫星是第一网格的非视距卫星。该卫星发射的广播信号会被遮挡,不能通过直线传输被位于第一点的电子设备接收。
综上所述,一个第一网格的天空遮挡曲线,可以用于判断卫星是第一网格的视距卫星或非视距卫星,即用于判断该卫星发射的广播信号是否会被遮挡,是否可以通过直线传输被位于第一点的电子设备接收。
S803、服务器400保存上述至少一个第一网格的网格数据。
其中,服务器400可以针对上述至少一个地图瓦片中的每个地图瓦片,保存该地图瓦片的至少一个第一网格的网格数据。例如,服务器400中可以保存图12A所示的瓦片数据库1200。
例如,如图12A所示,瓦片数据库1200中保存有地图瓦片1的至少一个第一网格的网格数据、地图瓦片2的至少一个第一网格的网格数据和地图瓦片3的至少一个第一网格的网格数据等。以地图瓦片1为例,如图12A所示,地图瓦片1的至少一个网格数据可以包括:第一网格1的网格数据、第一网格2的网格数据、第一网格3的网格数据和第一网格4的网格数据。以第一网格1为例,如图12A所示,第一网格1的网格数据可以包括:第一网格1的天空遮挡曲线和位置信息。
其中,随着时间的推移,上述第一网格的第一点周围的遮挡物(如建筑物)可能会发生变化。因此,上述第一网格的天空遮挡曲线可能会发生变化。基于此,服务器400可以周期性执行上述S801-S803,以获取到最新的网格数据。
在一些实施例中,上述第一网格的网格信息还可以包括:(III)第一网格的建筑属性信息(也称为网格属性信息)。例如,如图12A所示,上述第一网格1的网格数据还可以包括网格属性信息(也称为建筑属性信息)。
其中,第一网格的建筑属性信息用于指示该第一网格(如第一网格的第一点)位于建筑内部,或者建筑外部。示例性的,服务器400可以根据第一网格的第一点的位置信息(如经纬度坐标)和第一点周围的各个建筑物的3D建筑数据,判断该第一点位于建筑内部还是建筑外部。具体的,该3D建筑数据可以包括建筑物的位置轮廓坐标和高度信息。一个建筑物的位置轮廓坐标包括该建筑物的外部轮廓上的每个点的经纬度坐标,高度信息用于指示该建筑物的外部轮廓上的每个点相比于水平面的高度。服务器400可以对比第一网格的第一点的经纬度坐标和第一点周围的各个建筑物的位置轮廓坐标,以判断该第一点位于建筑内部还是建筑外部。
举例来说,如果第一网格的建筑属性信息为第一标识信息,则表示该第一网格位于建筑内部;如果第一网格的建筑属性信息为第二标识信息,则表示该第一网格位于建筑外部。例如,上述第一标识信息可以为“1”,第二标识信息可以为“0”;或者,第一标识信息可以为“01”,第二标识信息可以为“00”等。
可以理解,如果第一网格的建筑属性信息指示该第一网格位于建筑内部;那么,位于该第一网格的电子设备则无法接收到卫星发射的广播信号。因此,位于该第一网格的电子设备是无法进行GNSS定位的。也就是说,该第一网格的网格数据也就不会用于进行位置校准,以提升定位精度。综上所述,服务器400可以不保存建筑属性信息为第二标识信息的第一网格(即位于建筑外部的第一网格)的网格数据。这样,可以减少网格数据对服务器400的存储空间的占用。
由上述描述可知:服务器400在执行S802之前,可以执行S800a。S800a:服务器400获取至少一个地图瓦片对应的3D建筑数据。其中,一个地图瓦片对应的3D建筑数据可以包括:该地图瓦片中的多个建筑物的3D建筑数据。该3D建筑数据可以包括建筑物的位置轮廓坐标和高度信息。
示例性的,上述建筑物的3D建筑数据可以是kml格式的数据。例如,以下示出一种基于kml格式的建筑物的3D建筑数据。
其中,上述3D建筑数据中的"ID">1367376<是建筑物的标识(Identification,ID)。建筑物的ID用于唯一标识该建筑物。上述3D建筑数据中的<coordinates>包括:建筑物的外部轮廓上多个点的经纬度和高度。建筑物的外部轮廓上一个点的高度为该点相对于水平面的高度。例如,上述<coordinates>中的“121.470016124,31.22345601100005,9.45”指示建筑物上的一个点的经度为“121.470016124°”,纬度为“31.22345601100005°”,该点相对于水平面的高度为9.45米。
需要注意的是,本申请实施例中,可以采用大于0的纬度表示北纬,采用小于0的纬度表示南纬。也就是说,当一个点的纬度为正值时,该纬度表示北纬,当一个点的纬度为负值时,该纬度表示南纬。例如,上述kml格式的3D建筑数据中、每个点的纬度均为北纬。
本申请实施例中,经度在(0°,180°)内,表示东经;经度在(-180°,0°)内,表示西经。或者,经度在(0°,180°)内,表示东经;经度在(180°,360°)内,表示西经。例如,上述kml格式的3D建筑数据中、每个点的经度均为东经。
可以理解,根据一个地图瓦片对应的3D建筑数据,可以按照该地图瓦片对应的地理区域中各个建筑物的相对位置,绘制出可以标注上述建筑物的轮廓的建筑分布示意图。例如,如图12B所示,为标注有一个地图瓦片对应的地理区域中各个建筑物的轮廓的建筑分布示意图。
(二)“定位”流程。
其中,“定位”流程用于对电子设备进行定位。通过该“定位”流程,可以提升电子设备的定位精度。
在第(1)种情况中,上述第一电子设备和第二电子设备是同一个电子设备。该电子设备可以是存储空间较大,计算能力较强的设备。例如,该电子设备可以是图4所示的手机410。在这种情况下,第一电子设备(如手机410)可以从服务器400获取至少一个地图瓦片的至少一个第一网格的网格数据,并保存获取到的数据;然后,由第一电子设备根据获取到的数据,对第一电子设备定位获得的第一位置进行修正,以提升电子设备的定位精度。
示例性的,本申请实施例这里以上述第一电子设备和第二电子设备均为图4所示的手机410为例,对上述第(1)种情况下的“定位”流程进行说明。
如图8所示,在第(1)种情况下,在执行“定位”流程之前,如图8所示,本申请实施例的方法还可以包括S804-S805。即上述“数据处理”流程还可以包括S804-S805。
S804、手机410从服务器400获取第i层瓦片地图中至少一个地图瓦片的至少一个第一网格的网格数据。
在一种实现方式中,手机410可以主动向服务器400发送网格数据请求,以请求从服务器400获取上述网格数据;服务器400响应于接收到该网格数据请求,可以向手机410发送上述网格数据。例如,手机410中可以安装有上述服务器400对应的数据下载客户端。手机410可以响应于用户在该客户端中的操作(即用于触发手机410获取上述网格数据的操作),向服务器400发送上述网格数据请求。
在另一种实现方式中,服务器400可以主动向手机410发送上述网格数据;手机410可以接收服务器400发送的网格数据。例如,手机410中可以安装有上述服务器400对应的客户端。手机410可以通过该客户端接收服务器400发送的网格数据。
S805、手机410保存上述至少一个地图瓦片的至少一个第一网格的网格数据。
其中,手机410可以针对至少一个地图瓦片中的每个地图瓦片,保存该地图瓦片的至少一个第一网格的网格数据。
可选的,为了降低手机410的负载,减少网格数据对手机410的存储空间的占用。手机410可以从服务器400获取预设地理区域对应的地图瓦片的至少一个第一网格的网格数据。
其中,预设地理区域可以是以手机410当前位置为圆心,以预设距离为半径的圆形所覆盖的地理区域。例如,该预设距离可以为10千米(km)、100km、1*103km、2*103km或者10*103km等任一距离。或者,预设地理区域可以为手机410在预设时间内经常活动的地理区域。例如,该预设时间可以为1个月,2个月、6个月或者1年等任一时间长度。
示例性的,请参考图12C,其示出上述第(1)种情况中,由手机410执行定位方法的原理框图。
在第(1)种情况中,上述“数据处理”流程可以包括图12C所示的以下过程:服务器400中保存有瓦片数据库401(如图12A所示的瓦片数据库1200)。例如,服务器400可以执行S801-S803,在服务器400中保存瓦片数据库。并且,服务器400可以为电子设备(如手机410)提供数据下载服务402。手机410包括数据下载客户端411。手机410可以执行S804从服务器400下载瓦片数据(即上述至少一个第一网格的网格数据)。手机410还可以在存储器414中保存瓦片数据。
在第(1)种情况中,上述“定位”流程可以包括图12C所示的以下过程:手机410的卫星接收机416可以接收多个卫星发射的广播信号,处理器415可以根据多个卫星发射的广播信号的信号参数执行S1201,确定手机410的第一位置。最后,处理器415可以根据本地瓦片数据412、第一位置和多个广播信号的信号参数,通过定位算法413对上述第一位置进行修正,得到并输出修正后的位置。
需要注意的是,图12C所示的定位原理框图仅以举例方式给出由手机410进行定位的简单原理示例,并不构成对本申请实施例提供的定位方法的具体限定。
示例性的,如图8所示,在第(1)种情况下,上述“定位”流程具体可以包括S1201-S1205。
S1201、手机410定位获得手机410的第一位置。
其中,手机410可以进行GNSS定位,以得到手机410的第一位置。GNSS可以包括:GPS,GLONASS,BDS,QZSS,SBAS和GALILEO中的一项或多项。例如,上述手机410确定手机410的第一位置,可以包括:手机410获取第一位置的经纬度坐标。
需要注意的是,手机410进行GNSS定位以确定第一位置的方法,可以参考常规技术中电子设备进行GNSS定位的具体方法,以及图1和图2的相关描述,本申请实施例这里不予赘述。
S1202、手机410以第一位置为中心点,确定多个备选位置。
示例性的,手机410以第一位置为中心点,确定多个备选位置的方法可以包括S1202a-S1202b。
S1202a、手机410以上述第一位置为中心点确定备选区域。
示例性的,手机410可以以上述第一位置为中心点,根据预设搜索距离在地图上确定备选区域。
例如,手机410可以以上述第一位置为中心点,在地图上确定出边长为2倍的预设搜索距离R的正方形区域,该正方形区域为上述备选区域。如图13中的(a)或(b)所示,手机410可以以第一位置为中心点,确定出备选区域1300。图13中的(a)所示的备选区域1300是边长为2R的正方形区域。
再例如,手机410可以确定地图上以第一位置为圆心(即中心点),以预设搜索距离R为半径的圆形区域为备选区域。如图14中的(a)所示,手机410可以以第一位置为圆心,确定出以预设搜索距离R为半径的备选区域1400。
S1202b、手机410在上述备选区域中确定多个备选位置。
其中,手机410可以在备选区域中确定多个备选位置,并获取该多个备选位置的经纬度坐标。
在一种实现方式中,手机410可以将上述备选区域分割为K个第二网格,K≥2,K为正整数;然后,手机410可以确定K个第二网格中每个第二网格的第二点为备选位置。
其中,一个第二网格的第二点可以是该第二网格的中心点。例如,如图13中的(b)所示,一个第二网格中的备选位置,可以为该第二网格的中心点(即第二点)。
或者,一个第二网格的第二点可以是该第二网格的左上角的点、右上角的点、左下角的点、右下角的点或者第一网格上任一点,本申请实施例对此不作限制。例如,如图14中的(b)所示,一个第二网格中的备选位置,可以为该第二网格的右下角的点(即第二点)。
在另一种实现方式中,手机410可以随机从备选区域中确定多个点作为备选位置,并获取该多个备选位置的经纬度坐标。
本申请实施例中,手机410可以根据多颗卫星相对于备选位置的高度角和方位角,多个备选位置对应的网格数据,以及手机410接收多颗卫星发送的广播信号的信号参数,从多个备选位置中选择出多个定位备选位置。其中,每个备选位置对应的网格数据包括位置信息和天空遮挡曲线。一个备选位置的天空遮挡曲线用于指示位于一个备选位置周围的多个遮挡物相对于一个备选位置的高度角和方位角。具体的,手机410可以执行S1203-S1204,从多个备选位置中选择出多个定位备选位置。
S1203、手机410根据多颗卫星相对于多个备选位置的高度角和方位角,多个备选位置对应的网格数据,以及手机410接收多颗卫星发送的广播信号的信号参数,确定多颗卫星相对于多个备选位置的第一可视性和第二可视性。
其中,上述多颗卫星是手机410可以接收到其发射的广播信号的卫星。一颗卫星相对于一个备选位置的第一可视性用于指示一颗卫星是一个备选位置的视距卫星或非视距卫星。一颗卫星相对于一个备选位置的第二可视性用于指示一颗卫星是一个备选位置的视距卫星的概率。
首先,本申请实施例这里以手机410确定一颗卫星相对于一个备选位置的第一可视性为例,对S1203中手机410确定多颗卫星相对于多个备选位置的第一可视性的方法进行说明。其中,手机410可以针对每颗卫星和每个备选位置执行“根据一颗卫星相对于一个备选位置的高度角和方位角,以及该备选位置对应的网格数据,确定该卫星相对于该备选位置的第一可视性”,以获取每颗卫星相对于每个备选位置的第一可视性。
示例性的,手机410以根据卫星a相对于备选位置a的高度角和方位角,以及备选位置a的天空遮挡曲线,确定卫星a相对于备选位置a的第一可视性为例,对本申请实施例的方法进行举例说明。其中,卫星a是上述多颗卫星中的任一颗卫星。备选位置a是上述多个备选位置中的任一个备选位置。手机410可以执行S(1)-S(6),以卫星a相对于备选位置a的第一可视性。
S(1):手机410获取第一方位角和第一高度角。该第一方位角是卫星a相对于备选位置a的方位角。该第一高度角是卫星a相对于备选位置a的高度角。
需要注意的是,手机410计算卫星a相对于备选位置a的高度角的方法,可以参考上述实施例中电子设备计算卫星相对于电子设备所在位置的高度角(即上述卫星的高度角)的方法,本申请实施例这里不予赘述。
同样的,手机410计算卫星a相对于备选位置a的方位角的方法,可以参考上述实施例中电子设备计算卫星相对于电子设备所在位置的方位角(即上述卫星的方位角)的方法,本申请实施例这里不予赘述。
S(2):手机410根据备选位置a的位置信息(如经纬度坐标)和上述至少一个第一网格的位置信息(如经纬度坐标),从至少一个第一网格中确定备选位置a对应的第一网格,获取备选位置a对应的第一网格的网格数据(即备选位置a对应的网格数据)。
首先,手机410可以对比备选位置a的经纬度坐标与上述至少一个第一网格的经纬度坐标。然后,手机410可以将至少一个第一网格中、经纬度坐标与该备选位置的经纬度坐标距离最近的第一网格,确定为备选位置a对应的第一网格。最后,手机410可以获取备选位置a对应的第一网格的网格数据(即备选位置a对应的网格数据)。备选位置a对应的网格数据可以包括:位置信息和天空遮挡曲线。
S(3):手机410根据第一方位角,从备选位置a的天空遮挡曲线获取第二高度角。其中,第二高度角是第一遮挡物相对于一个备选位置的高度角,第一遮挡物相对于一个备选位置的方位角是第一方位角。
由上述实施例可知:一个第一网格的天空遮挡曲线包括:位于该第一网格周围的多个遮挡物的多个点相对于该第一点的高度角和方位角。那么,备选位置a的天空遮挡曲线则可以包括:位于备选位置a所在的第一网格周围的多个遮挡物的多个点相对于该第一点的高度角和方位角。可以理解,手机410可以从备选位置a的天空遮挡曲线,确定方位角为第一方位角的第一遮挡物(或者第一遮挡物上的一个点);然后,手机410可以从备选位置a的天空遮挡曲线,确定该第一遮挡物相对于一个备选位置的高度角(即第二高度角)。
S(4):手机410判断第一高度角是否大于第二高度角。
具体的,如果第一高度角大于第二高度角,手机410则执行S(5);如果第一高度角小于或等于第二高度角,手机410则执行S(6)。
S(5):手机410确定卫星a是备选位置a的视距卫星。也就是说,卫星a相对于备选位置a的第一可视性指示卫星a是备选位置a的视距卫星。
S(6):手机410确定卫星a是备选位置a的非视距卫星。也就是说,卫星a相对于备选位置a的第一可视性指示卫星a是备选位置a的非视距卫星。
示例性的,本申请实施例这里以备选位置a对应的第一网格是第一网格I,手机410确定卫星a相对于备选位置a的第一可视性为例,对S(1)-S(6)进行详细说明:
首先,手机410执行S(1),可获取卫星a相对于备选位置a的方位角(如方位角1,即第一方位角)和高度角(如高度角1,即第一高度角)。然后,手机410执行S(2),可确定备选位置a所在的第一网格是第一网格I。其次,手机410执行S(3),可确定相对于第一网格I的方位角为方位角1的遮挡物(即第一遮挡物),并获取第一遮挡物相对于第一网格I的高度角(如高度角2,即第二高度角)。最后,手机410执行S(4),可比较高度角2和高度角1的大小。
如果卫星a相对于备选位置a的高度角1大于第一遮挡物相对于第一网格I的高度角2,则表示卫星a是该备选位置a的视距卫星。即卫星a相对于备选位置a的第一可视性指示卫星a是备选位置a的视距卫星。该卫星a发射的广播信号不会被遮挡,可以通过直线传输被位于备选位置a的电子设备接收。
如果卫星a相对于备选位置a的高度角1小于或等于第一遮挡物相对于第一网格I的高度角2,则表示卫星a是该备选位置a的非视距卫星。即卫星a相对于备选位置a的第一可视性指示卫星a是备选位置a的非视距卫星。该卫星a发射的广播信号被遮挡,不能通过直线传输被位于备选位置a的电子设备接收。
由上述实施例可知,卫星相对于一个位置的高度角和方位角可以采用以该位置为极点,以正北方向为级轴的极坐标系中的极坐标来表示。换言之,上述卫星a相对于备选位置a的高度角可以采用卫星a在以备选位置a为极点,以正北方向为级轴的极坐标系a中的极坐标来表示。具体的,可以以卫星a在极坐标系a所在平面的投影点的极径ρwx表征卫星a相对于备选位置a的高度角,以卫星a在极坐标系a所在平面的投影点的极角θwx作为卫星a相对于备选位置a的方位角。
在一些实施例中,手机410可以通过判断卫星a在极坐标系a中的极坐标(ρwx a,θwx a),是否位于上述第一网格I的天空遮挡曲线I内,确定该卫星a是备选位置a的视距卫星或非视距卫星,即确定该卫星a相对于备选位置a的第一可视性。
具体的,如果卫星a的极坐标(ρwx a,θwx a)位于天空遮挡曲线I内(如图15A所示的天空遮挡曲线I围城的白色区域),则表示卫星a是备选位置a的视距卫星。该卫星a发射的广播信号不会被遮挡,可以通过直线传输被位于备选位置a的电子设备接收。
如果卫星a的极坐标(ρwx a,θwx a)位于天空遮挡曲线I外(如图15A所示的天空遮挡曲线I外的灰色区域),则表示卫星a是备选位置a的非视距卫星。该卫星a发射的广播信号被遮挡,不能通过直线传输被位于备选位置a的电子设备接收。
例如,如图15A所示,由于卫星G03、卫星G22、卫星E09、卫星G32、卫星E19、卫星E21、卫星C14、卫星G10和卫星E01的极坐标位于天空遮挡曲线I外;因此,如表1所示,这些卫星是备选位置a的视距卫星。如图15A所示,由于卫星G01、卫星G11、卫星E04、卫星G18、卫星G14和卫星G31的极坐标位于天空遮挡曲线I内;因此,如表1所示,这些卫星是备选位置a的非视距卫星。
表1
图15A中采用黑色圆圈代表相对于备选位置a的第一可视性指示的非视距卫星,采用白色圆圈代表相对于备选位置a的第一可视性指示的视距卫星。
其中,上述卫星G03、卫星G22、卫星G32、卫星G10、卫星G01、卫星G11、卫星G14、卫星G31和卫星G18属于同一卫星系统的卫星。上述卫星E09、卫星E19、卫星E21、卫星E01和卫星E04属于同一卫星系统的卫星。而卫星C14是另一卫星系统的卫星。
可以理解,由于一颗卫星相对与地球的位置是不变的,且一个备选位置在地球上的坐标位置在一定时间内也是不变的;因此,在一定时间内,“一颗卫星相对于一个备选位置的高度角和方位角”是固定不变的。并且,在一定时间内,“一个备选位置对应的天空遮挡曲线”也是固定不变的。由此可见,“一颗卫星相对于一个备选位置的高度角和方位角”和“一个备选位置对应的天空遮挡曲线”不会因为手机410与这颗卫星的伪距的测量误差的大小而变化。
并且,由于一颗卫星相对于一个备选位置的第一可视性是根据“这颗卫星相对于这个备选位置的高度角和方位角”,以及“这个备选位置对应的天空遮挡曲线”确定的。因此,可以得出:手机410计算得到的“一颗卫星相对于一个备选位置的第一可视性”是这颗卫星是这个备选位置的视距卫星或非视距卫星的真实情况。
其次,本申请实施例这里以手机410确定一颗卫星相对于一个备选位置的第二可视性为例,对S1203中手机410确定多颗卫星相对于多个备选位置的第二可视性的方法进行说明。其中,手机410可以针对每颗卫星和每个备选位置执行“根据手机410接收多颗卫星发送的广播信号的信号参数,确定多颗卫星相对于一个备选位置的第二可视性”,以获取每颗卫星相对于每个备选位置的第二可视性。
本申请实施例中,可以将上述第二可视性称为预测可见性。其中,一颗卫星相对于一个备选位置的第二可视性用于指示这颗卫星是该备选位置的视距卫星的概率。
示例性的,上述信号参数可以包括CN0、伪距残差和伪距率中的至少一项。由上述实施例中关于CN0的描述可知:一个广播信号的CN0越大,该广播信号被反射的次数可能越少;一个广播信号的CN0越小,该广播信号被反射的次数可能越多。如果卫星发射的广播信号通过反射传输被电子设备接收,则表示该卫星是该电子设备所在的位置的非视距卫星。由此可以得出:一个卫星发射的广播信号的CN0越大,该卫星是电子设备所在位置的非视距卫星的概率越高,该卫星是电子设备所在位置的视距卫星的概率越低;一个卫星发射的广播信号的CN0越小,该卫星是电子设备所在位置的视距卫星的概率越高,该卫星是电子设备所在位置的非视距卫星的概率越低。
伪距残差是指电子设备与卫星的精确距离(即真实距离)和伪距的差值。其中,卫星发射的广播信号被反射的次数越多,伪距越大。伪距越大,电子设备与卫星的伪距残差则越大。结合上述描述可以得出:电子设备与卫星的伪距残差越大,该卫星是电子设备所在位置的非视距卫星的概率越高,该卫星是电子设备所在位置的视距卫星的概率越低;电子设备与卫星的伪距残差越小,,该卫星是电子设备所在位置的视距卫星的概率越高,该卫星是电子设备所在位置的非视距卫星的概率越低。
伪距率是指电子设备与卫星的伪距的变化速度。伪距率越大,表示伪距的变化越大,卫星是电子设备所在位置的非视距卫星的概率越高,该卫星是电子设备所在位置的视距卫星的概率越低。
综上所述,CN0、伪距率和伪距残差都会影响卫星相对于电子设备所在位置的可视性。
示例性的,手机410以根据手机410接收卫星a发送的广播信号的信号参数,确定卫星a相对于备选位置a的第二可视性为例,对本申请实施例的方法进行举例说明。
首先,手机410获取手机410接收备选位置a的电子设备接收卫星发射的广播信号的信号参数(包括CN0、伪距残差和伪距率)。例如,请参考表2,其示出备选位置a的电子设备接收图15A或者表1所示的多个卫星的广播信号的信号参数的实例示意表。
表2
卫星 | 伪距 | 伪距率 | CN0 |
卫星C14 | 25460640.4 | 547.284059 | 16 |
卫星E01 | 26171185.33 | -299.652085 | 18 |
卫星E04 | 23551635.63 | 164.1656862 | 17 |
卫星E09 | 25580824.59 | -175.703446 | 38 |
卫星E19 | 26271989.21 | 487.1018532 | 12 |
卫星E21 | 26777369.35 | 129.8596962 | 15 |
卫星G01 | 21243876.97 | -104.743798 | 35 |
卫星G03 | 23429238.77 | -412.131468 | 30 |
卫星G10 | 23521690.24 | 619.2646425 | 25 |
卫星G11 | 21566968.91 | 305.4507994 | 34 |
卫星G14 | 21025061.07 | 399.96051 | 31 |
卫星G18 | 20556599.03 | 330.3643939 | 19 |
卫星G22 | 21945800.04 | -292.945262 | 25 |
卫星G31 | 20765697.11 | -156.34733 | 23 |
卫星G32 | 21905732.79 | 566.4123715 | 31 |
最后,手机410将上述信号参数作为输入,通过预设AI模型,确定上述多个卫星相对于备选位置a的第二可视性。
其中,手机410中可以保存预设AI模型的模型代码。手机410可以运行预设AI模型的模型代码,将上述信号参数作为输入,通过该预设AI模型确定多颗卫星相对于备选位置a的第二可视性。
上述预设AI模型可以是由服务器400或者其他的服务器采用大量训练样本,经过大量的样本训练得到的AI模型。该预设AI模型具备根据“电子设备接收该卫星发射的广播信号的信号参数”确定卫星相对于电子设备所在位置的第二可视性的能力。上述训练样本包括:电子设备接收该卫星发射的广播信号的信号参数作为训练样本。
示例性的,上述预设AI模型可以为采用深度学习算法,经过大量样本训练得到的。或者,预设AI模型可以为采用分类算法,经过大量样本训练得到的。例如,上述分类算法可以包括支持向量机(support vector machine,SVM)模型、最大熵模型、快速文本分类算法(fasttext)模型、卷积神经网络(convolution neural network,CNN)模型、n元语法模型(n-gram)模型或循环神经网络(recurrent neural network,RNN)模型中的任一种。
本申请实施例中,一个卫星相对于备选位置a的第二可视性指示该卫星是备选位置a的视距卫星的概率。如果一个卫星是备选位置a的视距卫星的概率(即第二可视性指示的概率)大于或等于预设概率阈值,则表示该卫星是备选位置a的视距卫星。如果一个卫星是备选位置a的视距卫星的概率小于预设概率阈值,则表示该卫星是备选位置a的非视距卫星。例如,该预设概率阈值可以为90%、95%、96%或者85%等任一值。
例如,假设上述预设概率阈值为90%。如表3所示,卫星G03、卫星G22、卫星E09、卫星G32、卫星G10、卫星G01、卫星G11、卫星E04、卫星G18、卫星G14和卫星G31是备选位置a的视距卫星的概率大于或等于预设概率阈值。卫星E19、卫星E21、卫星C14和卫星E01是备选位置a的视距卫星的概率小于预设概率阈值。结合表3,如图15B所示,黑色圆圈代表备选位置a的非视距卫星,白色圆圈代表备选位置a的视距卫星。
表3
可以理解,手机410接收该卫星发送的广播信号的信号参数(如伪距)可能会存在测量误差。由此可见,根据“手机410接收这颗卫星发送的广播信号的信号参数”确定的“这颗卫星相对于该备选位置的第二可视性”可能并不能反映这颗卫星是这个备选位置的视距卫星的真实情况。
S1204、手机410根据多颗卫星相对于多个备选位置的第一可视性和第二可视性,从多个备选位置中选择出多个定位备选位置。
在一种实现方式中,上述多个定位备选位置可以包括:满足预设条件的卫星的数量大于预设数量阈值的备选位置。满足预设条件的卫星是第一可视性与第二可视性匹配的卫星。
本申请实施例中,一颗卫星相对于一个备选位置的第一可视性和第二可视性匹配,具体可以包括:第一可视性指示这颗卫星是该备选位置的视距卫星,且第二可视性大于或等于预设概率阈值;或者,第一可视性指示这颗卫星是该备选位置的非视距卫星,且第二可视性小于预设概率阈值。
例如,假设上述多颗卫星是6颗卫星(包括卫星1-卫星10),上述预设概率阈值是90%。上述多个备选位置包括:备选位置1、备选位置2、备选位置3和备选位置4。请参考表4,其示出卫星1-卫星10相对于备选位置1-备选位置3的第一可视性和第二可视性实例表。
表4
如表4所示,卫星1相对于备选位置1的第一可视性指示卫星1是备选位置1的视距卫星;第二可视性指示卫星1是备选位置1的视距卫星的概率是95%,95%大于90%(即预设概率阈值)。因此,卫星1相对于备选位置1的第一可视性与第二可视性匹配。如表4所示,卫星2相对于备选位置1的第一可视性指示卫星2是备选位置1的非视距卫星;第二可视性指示卫星1是备选位置1的视距卫星的概率是55%,55%小于90%(即预设概率阈值)。因此,卫星2相对于备选位置1的第一可视性与第二可视性匹配。
同理,由表4可以得出:卫星3相对于备选位置1的第一可视性与第二可视性不匹配;卫星4相对于备选位置1的第一可视性与第二可视性匹配;卫星5相对于备选位置1的第一可视性与第二可视性匹配;卫星6相对于备选位置1的第一可视性与第二可视性匹配。由此可以得出:对于备选位置1而言,满足预设条件的卫星的数量为5。
同样的,由表4可以得出:对于备选位置2而言,满足预设条件的卫星的数量为4;对于备选位置3而言,满足预设条件的卫星的数量为2;对于备选位置4而言,满足预设条件的卫星的数量为3。
假设上述预设数量阈值是3。那么,对于表4所示的备选位置1和备选位置2而言,满足预设条件的卫星的数量大于预设数据阈值。因此,表4所示的备选位置1和备选位置2是定位备选位置。
在另一种实现方式中,上述多个定位备选位置包括:多个备选位置中的M个备选位置,M≥2,M是正整数。该M个备选位置的满足预设条件的卫星的数量,大于其他备选位置的满足预设条件的卫星的数量。该其他备选位置包括多个备选位置中除M个备选位置之外备选位置。
例如,结合表4所示的实例,假设N=3。上述备选位置1、备选位置2、备选位置3和备选位置4。上述多个定位备选位置可以包括备选位置1、备选位置2和备选位置4。其中,备选位置1、备选位置2和备选位置4的预设条件的卫星的数量均大于备选位置2的预设条件的卫星的数量。
在另一种实现方式中,针对每个备选位置而言,满足预设条件的卫星(即第一可视性和第二可视性匹配的卫星)的数量可以用于确定该备选位置的打分。也就是说,手机410可以统计相对于每个备选位置,第一可视性和第二可视性匹配的卫星的数量,根据统计的数量确定对应备选位置的打分。然后,手机410可以根据每个备选位置的打分,从多个备选位置中选择出多个定位备选位置。
例如,以上述备选位置a为例。对比表1和表3可知:相对于备选位置a,卫星G03的第一可视性和第二可视性不匹配,卫星G22的第一可视性和第二可视性不匹配,卫星E09的第一可视性和第二可视性不匹配,卫星G32的第一可视性和第二可视性不匹配,卫星E19的第一可视性和第二可视性匹配,卫星E21的第一可视性和第二可视性匹配,卫星C14的第一可视性和第二可视性匹配,卫星G10的第一可视性和第二可视性不匹配,卫星E01的第一可视性和第二可视性不匹配,卫星G01的第一可视性和第二可视性匹配,卫星G11的第一可视性和第二可视性匹配,卫星E04的第一可视性和第二可视性匹配,卫星G18的第一可视性和第二可视性匹配,卫星G14的第一可视性和第二可视性匹配,卫星G31的第一可视性和第二可视性匹配。相对于备选位置a,第一可视性和第二可视性匹配的卫星的数量为9。
其中,针对一个备选位置所统计的数量与该备选位置的打分成正比。即针对一个备选位置所统计的数量越高,该备选位置的打分则越高;针对一个备选位置所统计的数量越低,该备选位置的打分则越低。
示例性的,每个备选位置的打分的取值区间可以为[0,T]。例如,T=10。其中,手机410统计得到相对于一个备选位置,第一可视性和第二可视性匹配的卫星的数量后,可以计算统计得到的数量与上述多个卫星的总数的比值;然后,计算该比值与T的乘积。手机410计算得到的乘积为该备选位置的打分。
示例性的,手机410可以从多个备选位置中,选择打分大于预设打分阈值的备选位置作为定位备选位置。该预设打分阈值小于T。以上述T=10为例,该预设打分阈值可以为8、9、7或者6等。
例如,以T=10,即备选位置的打分的取值区间可以为[0,10],上述预设打分阈值等于6为例。假设用户位于图11B中的(a)所示的O点。图16A所示的备选位置1600是手机410执行S1202a确定的备选区域。图16A所示的备选区域包括多个第二网格,每个第二网格对应一个备选位置。图16A中采用每个第二网格的填充颜色表征该第二网格对应的备选位置的打分。其中,第二网格的填充颜色越黑,该第二网格对应的备选位置的打分越高;第二网格的填充颜色越白,该第二网格对应的备选位置的打分越低。
手机410从图16A所示的多个备选位置中,选择打分大于预设打分阈值(如6)的备选位置作为定位备选位置,可以得到图16B所示的定位备选位置示意图。如图16B所示,备选位置1600中有颜色(非白色)填充的第二网格对应定位备选位置。图16B所示的定位备选位置的打分均大于6。
可以理解,相对于一个备选位置,第一可视性和第二可视性匹配的卫星的数量越大(即该备选位置的打分越高),则表示该备选位置的定位精度越高。因此,本申请实施例中,手机410根据打分较高的备选位置(即多个定位备选位置)的位置信息(如经纬度坐标),对上述第一位置进行修正,可以提升手机410的定位精度。
S1205、手机410根据多个定位备选位置修正上述第一位置,以输出修正后的第二位置。
示例性的,手机410可以采用以下公式(3):
确定手机410的第二位置的经纬度坐标(x,y)。(xi,yi)是上述多个定位备选位置(如n个定位备选位置)中第i个定位备选位置的经纬度坐标。Scorei是第i个定位备选位置的打分。
在一些实施例中,手机410确定出上述第二位置后,便可以将该第二位置作为手机410的最终定位位置。可以理解,由于第二位置是参考了多个卫星对于手机410的第一可视性和第二可视性确定的;因此,可以降低由于卫星发射的广播信号不能通过直线传输被手机410接收导致的伪距测量误差较大,从而导致手机410定位精度较低的可能性。相比于手机410定位的得到的第一位置,上述第二位置的定位精度较高。也就是说,通过本申请实施例的方法,使得手机410在卫星发射的信号容易被遮挡的场景下,仍然可以保障甚至提升定位精度。
在一些车载定位方案中,可以基于道路对电子设备定位获得的第一位置进行修正。例如,可以将手机410定位获得的第一位置修正到距离该第一位置最近的道路中心线上。但是,这种方案仅适用于高速运动场景下的定位误差修正;而低速场景(如用户步行的场景)和静止场景(如用户打车的场景)则不适用。并且,采用上述方案,并不能准确识别出电子设备位于道路的哪一侧。
针对上述问题,通过本申请实施例的方法,可以在提升GNSS定位精度的同时,准确定位出电子设备(如手机410)位于道路的哪一侧,以提升用户体验。具体的,上述第一网格的网格数据还可以包括:第一网格所在道路的道路标识。
示例性的,本申请实施例中,上述第一网格的网格数据还可以包括:(IV)该第一网格的道路属性信息。例如,如图12A所示,第一网格1的网格数据还可以包括道路属性信息。
第一网格的道路属性信息可以包括:道路指示信息。该道路指示用于指示该第一网格(如第一网格的第一点)在道路上或者道路外。
如果一个第一网格的道路指示信息指示该第一网格在道路上;那么,该第一网格的道路属性信息还可以包括:该第一网格所在道路的道路数据。该道路数据可以包括道路标识、道路起始点坐标、道路宽度信息和道路方向信息等。其中,一条道路的道路数据可以由一组点的经纬度坐标组成。
上述多个备选位置对应的网格数据包括在一个或多个地图瓦片的数据中。地图瓦片的数据不仅可以包括该地图瓦片中的建筑物的建筑数据,还可以包括该地图瓦片中道路的道路数据。
由上述描述可知:服务器400在执行S802之前,可以执行S800b。S800b:服务器400获取至少一个地图瓦片中道路的道路数据。然后,服务器400可以执行S802,从执行S800b获得的道路数据中,获取至少一个第一网格(即多个位置)的道路属性信息。
其中,一个地图瓦片中道路的道路数据可以包括:该地图瓦片中道路的道路数据。一条道路的道路数据可以包括:该道路的道路标识(也称为道路编号)、道路起始点坐标、道路宽度信息和道路方向信息等。
示例性的,上述道路的道路数据可以是kml格式的数据。例如,以下示出一种基于kml格式的道路数据。
其中,上述道路数据中的"ID">72520<是道路编号,也称为道路标识(ID)。道路ID用于唯一标识该道路。上述道路数据中的"WIDTH">20.0<指示道路的宽度为20米。上述道路数据中的<coordinates>包括:道路上多个点(如道路起始点)的经纬度坐标。例如,上述<coordinates>中的“121.46006087300009,31.194542826000017”指示道路上的一个点的经度为“121.46006087300009°”,纬度为“31.194542826000017°”。当然,上述道路数据中还包括上述道路的其他数据(如最大行驶速度等),本申请实施例这里不一一介绍。
由上述实施例中对经度和纬度的描述可知:大于0的纬度表示北纬,小于0的纬度表示南纬;经度在(0°,180°)内,表示东经。例如,上述kml格式的道路数据中、每个点的经度均为东经,纬度均为北纬。
可以理解,根据一个地图瓦片中道路的道路数据,可以按照该地图瓦片对应的地理区域中各条道路的相对位置,绘制出可以标注上述各条道路的道路分布示意图。例如,假设一个地图瓦片A对应的地理区域为图16C中的(a)所示的地理区域A。如图16C中的(a)所示,为标注有地理区域A中各条道路的轮廓的道路分布示意图。其中,图16C中的(a)所示的黑色线条标识地理区域A中的各条道路。服务器400针对地图瓦片A对应的地理区域A执行S800b,可以获取到图16C中的(a)所示黑色线条所标识的道路的道路数据(包括多条道路的道路标识和道路线路坐标等),即地图瓦片对应的道路数据。
可选的,在S802之前,服务器400可以从每个地图瓦片对应的地理区域中的道路中,筛选出低定位精度道路。其中,位于该低定位精度道路上的电子设备通过直线传输接收卫星发射的广播信号的可能性较低。换言之,位于该低定位精度道路上的电子设备定位获得的第一位置的定位精度较低。因此,电子设备(如手机410)位于上述低定位精度道路时,可以执行本申请实施例的方法可以有效提升电子设备的定位精度。
示例性的,在S800b之后,服务器400可以执行S800c-S800d,以获取上述低定位精度道路的道路数据。
S800c:服务器400从地图瓦片A对应的地理区域A的道路中,选择满足预设选择条件的道路;服务器400去掉满足预设选择条件的道路中的弯曲路段,确定一条或多条第一道路。其中,道路满足上述预设选择条件可以包括:道路的道路长度大于预设长度阈值的道路;道路为主干道路,而非辅道。例如,服务器400针对图16C中的(a)所示的地理区域A中的道路执行S800c,可以得到图16C中的(b)中黑色线条所标识的第一道路,并获取图16C中的(b)所示的黑色线条所标识的第一道路的道路数据。
S800d:服务器400按照预设长度间隔对上述一条或多条第一道路进行分段,得到多条第二道路;服务器400从多条第二道路中选择满足预设道路条件的第二道路。其中,满足预设道路条件的第二道路即为上述低定位精度道路。服务器400可以获取每条低定位精度道路的道路数据。
示例性的,上述满足预设道路条件的第二道路可以包括:道路两侧都有建筑物(如高楼),且两侧的建筑物最大高度与道路宽度的比值大于预设比例阈值的第二道路。
可以理解,如果一条道路的道路两侧有建筑物;那么,位置该道路上的电子设备通过直线传输接收卫星发射的广播信号的可能性较低,位于该低定位精度道路上的电子设备定位获得的第一位置的定位精度较低。
例如,上述预设比例阈值可以为100%,80%或者90%等。以预设比例阈值是100%为例。如果一条道路两侧的建筑物最大高度与该道路的道路宽度的比值大于100%;那么,位于该道路上的电子设备通过直线传输接收卫星发射的广播信号的可能性较低,位于该低定位精度道路上的电子设备定位获得的第一位置的定位精度较低。
例如,上述预设长度间隔可以为100m,80m,120m或者110米等。以预设长度间隔是100m为例。服务器400可以将图16C中的(b)所示的白色线条所标识的每条第一道路分割为多条道路长度小于或者等于100m的第二道路。图16C中的(c)所示的白色方框所标识的多条第二道路均为满足上述预设道路条件的第二道路。其中,图16C中的(c)所示的每个白色方框用于标识一条满足预设道路条件的第二道路。
综上所述,位于满足预设道路条件的第二道路(即低定位精度道路)上的电子设备通过直线传输接收卫星发射的广播信号的可能性较低。换言之,位于满足预设道路条件的第二道路(即低定位精度道路)上的电子设备定位获得的第一位置的定位精度较低。因此,电子设备(如手机410)位于该低定位精度道路的情况下,执行本申请实施例的方法可以有效提升电子设备的定位精度。
需要强调的是,上述第一网格的网格数据中包括的该第一网格的道路属性信息,是针对上述低定位精度道路(即满足预设道路条件的第二道路)而言的。具体的,一个第一网格的道路属性信息包括:道路指示信息。该道路指示信息用于指示该第一网格是否在一条第二道路上。如果该第一网格的道路指示信息指示该第一网格在一条第二道路上;那么,该第一网格的道路属性信息还可以包括:该第一网格所在第二道路的道路数据。该第二道路的道路数据可以包括道路标识、道路起始点坐标、道路宽度信息和道路方向信息等。
为了准确定位出上述手机410是否位于道路上,以及位于道路的哪一侧;手机410可以根据多个定位备选位置中、位于道路上的定位备选位置各自所在道路的道路标识对应的道路数据,确定手机410位于定位道路的道路中心线的一侧。其中,上述定位道路是手机410所在的道路。
如图18所示,在图8所示的S1204之后,本申请实施例的方法还可以包括S1701-S1703。如图18所示,图8所示的S1205可以替换为S1801。
S1701、手机410根据上述位于道路上的定位备选位置中的部分或全部定位备选位置各自所在道路的道路标识,获取该部分或全部定位备选位置各自所在道路的道路数据。
可以理解,上述多个定位备选位置中的一部分定位备选位置可能位于道路上;而另一部分定位备选位置可能位于道路之外。当然,多个定位备选位置中的所有定位备选位置均可能位于道路上;或者,所有定位备选位置均可能位于道路之外。
需要注意的是,本申请实施例中,手机在确定手机410位于定位道路的道路中心线的哪一侧时,可以使用上述位于道路上的定位备选位置中的部分或全部定位备选位置各自所在道路的道路标识对应的道路数据。
本申请实施例中,手机410可以先判断哪些定位备选位置位于道路上,然后获取这些定位备选位置(即上述部分或全部定位备选位置)中部分或全部定位备选位置各自所在目标道路的道路数据。例如,手机410可以执行S(a)-S(c),以获取上述目标道路的道路数据。
S(a):手机410根据定位备选位置的位置信息(如经纬度坐标)和上述至少一个第一网格的位置信息(如经纬度坐标),确定该定位备选位置的道路属性信息。
其中,手机410可以从上述至少一个第一网格中查找经纬度坐标距离定位备选位置的经纬度坐标最近的第一网格。手机410可以将查找到第一网格的道路属性信息,确定为该定位备选位置对应的道路属性信息。
S(b):手机410根据该定位备选位置对应的道路属性信息,判断该定位备选位置是否位于道路上。
其中,上述道路属性信息中包括道路指示信息。该道路指示用于指示该第一网格(如第一网格的第一点)在道路上或者道路外。具体的,手机410可以根据该定位备选位置对应的道路属性信息中的道路指示信息,确定该定位备选位置是否位于路上。
具体的,如果道路指示信息指示上述定位备选位置位于道路上,那么该定位备选位置对应的道路属性信息则还包括对应道路的道路数据,手机410可以执行S(c)。如果道路指示信息指示上述定位备选位置位于道路之外,那么该定位备选位置对应的道路属性信息则不包括道路数据。
S(c):手机410获取上述部分或全部定位备选位置各自所在的目标道路的道路数据。
例如,手机410针对图16B所示的部分或全部定位备选位置执行S(a)-S(b)之后,可以获取到上述部分或全部定位备选位置所在的目标道路的道路数据。例如,如图17所示,手机410可以确定目标道路1和目标道路2是上述部分或全部定位备选位置所在的道路。
S1702、手机410根据上述部分或全部定位备选位置在目标道路的分布情况,确定定位道路。该定位道路是手机410所在的道路。
示例性的,手机410可以将上述目标道路中,定位备选位置分布较多的目标道路确定为定位道路。例如,图17所示的目标道路1为手机410的定位道路。
S1703、手机410根据部分或全部定位备选位置在定位道路的道路中心线两侧的分布情况,确定手机410位于定位道路的道路中心线的一侧。
其中,上述定位道路的道路中心线的一侧分布的定位备选位置的数量大于道路中心线的另一侧分布的定位备选位置的数量。其中,一条道路的道路中心线的一侧和二侧分布在该道路的道路中心线的两侧。如图17所示,目标道路1(即定位道路)的道路中心线的一侧(如a侧)分布的定位备选位置的数量大于道路中心线的另一侧(如b侧)分布的定位备选位置的数量。手机410可以确定手机410位于图17所示的目标道路1的道路中心线的一侧(如a侧)。
通过本申请实施例的方法,手机410不仅可以提升手机410的定位精度,还可以准确定位出手机410位于道路的哪一侧。这样,可以避免一些场景中,由于无法准确定位出手机410位于道路的哪一侧,而导致其他用户无法及时找到手机410的用户的问题。例如,在滴滴打车场景中,如果打车客户的手机位于一条南北向道路的东侧,而打车客户的手机的定位显示该手机位于道路的西侧;那么,滴滴司机根据该定位则难以准时接到该打车客户。而通过本申请实施例的方法,则可以确定位出打车客户的手机位于道路的哪一侧,可以提升打车客户的使用体验。
S1801、手机410计算第一位置在上述定位道路的道路中心线的一侧的道路边沿线的垂直投影,并输出该垂直投影所在的第二位置。
例如,结合图17,如图19所示,手机410可以计算第一位置在目标道路1(即定位道路)的道路中心线的一侧的道路边沿线的垂直投影,并输出该垂直投影所在的第二位置。其中,图19所示的第二位置可以是修正第一位置得到的。
本申请实施例中,手机410准确定位出手机410位于道路的哪一侧,还可以根据手机410与手机410所在道路的相对位置(即手机410位于定位道路的第一侧),对手机410的第一位置进行修正,得到第二位置。该第二位置的确定,不仅参考了第一位置周围的遮挡物(如建筑物),还参考了手机410的定位道路,以及手机410与定位道路的相对位置(即手机410位于定位道路的一侧)。因此,相比于手机410的第一位置,该第二位置与手机410的实际位置的误差较小。也就是说,通过本申请实施例的方法,可以提升手机410的定位精度。
在第(2)种情况中,第二电子设备可以是存储空间较小,计算能力较弱的设备。例如,该第二电子设备可以是图4所示的可穿戴设备420。上述第一电子设备可以是服务器400或手机410等存储空间较大,计算能力较强的设备。
在这种情况下,第二电子设备(如可穿戴设备420)不需要从服务器400获取并保存上述至少一个地图瓦片的至少一个第一网格的网格数据。可穿戴设备420可以向服务器400或手机410上报可穿戴设备420定位获得的第一位置,以及可穿戴设备420接收到的广播信号的信号参数。由服务器400或手机410根据可穿戴设备420上报的信息,对可穿戴设备420的第一位置进行修正,提升电子设备的定位精度。
在第(2)种情况的一种实现方式中,本申请实施例这里以服务器400是第一电子设备,可穿戴设备420是第二电子设备为例,对本申请实施例的方法进行说明。
请参考图20A,其示出上述第(2)种情况的一种实现方式中,由服务器400执行定位方法,协助可穿戴设备420进行定位的原理实例框图。
在第(2)种情况的一种实现方式中,上述“数据处理”流程可以包括图20A所示的以下过程:服务器400中保存有瓦片数据库401(如图12A所示的瓦片数据库1200)。例如,服务器400可以执行S801-S803,在服务器400中保存瓦片数据库。
在第(2)种情况的一种实现方式中,上述“定位”流程可以包括图20A所示的以下过程:可穿戴设备420的卫星接收机424可以接收多个卫星发射的广播信号。首先,处理器423可以执行存储器422中保存的计算机程序代码中的指令,根据多个卫星发射的广播信号的信号参数执行S1201,确定手机410的第一位置。处理器423还可以通过在线定位客户端421向服务器400发送上述第一位置和多个广播信号的信号参数。然后,服务器400可以通过定位算法403为可穿戴设备420提供在线定位服务404。具体的,服务器400可以根据本地瓦片数据412、第一位置和多个广播信号的信号参数,通过定位算法413对上述第一位置进行修正,得到并输出修正后的位置(如第二位置)。最后,服务器400可以通过在线定位服务404向可穿戴设备420指示修正后的位置。
需要注意的是,图20A所示的定位原理框图仅以举例方式给出服务器400协助可穿戴设备420进行定位的简单原理示例,并不构成对本申请实施例提供的定位方法的具体限定。
示例性的,如图20B所示,在第(2)种情况下,上述“定位”流程具体可以包括S2001-S2011。
S2001、可穿戴设备420定位获得可穿戴设备420的第一位置。
S2002、可穿戴设备420向服务器400指示可穿戴设备420的第一位置。
S2003、服务器400得到可穿戴设备420指示的第一位置。
S2004、服务器400以上述第一位置为中心点确定多个备选位置。
S2005、可穿戴设备420向服务器400发送可穿戴设备420接收多颗卫星发送的广播信号的信号参数。
S2006、服务器400接收可穿戴设备420发送的多颗卫星的广播信号的信号参数。
S2007、服务器400根据多颗卫星相对于多个备选位置的高度角和方位角,多个备选位置对应的网格数据,以及手机410接收多颗卫星发送的广播信号的信号参数,确定多颗卫星相对于多个备选位置的第一可视性和第二可视性。
S2008、服务器400根据多颗卫星相对于多个备选位置的第一可视性和第二可视性,从多个备选位置中选择出多个定位备选位置。
S2009、服务器400根据多个定位备选位置修正上述第一位置,以输出修正后的第二位置。
S2010、服务器400向可穿戴设备420指示第二位置。
S2011、可穿戴设备420获取服务器400指示的第二位置,并输出第二位置。
需要注意的是,S2001可以参考上述实施例中S1201的详细描述,S2004可以参考S1202的详细描述,S2007可以参考S1203的详细描述,S2008可以参考S1204的详细描述,S2009可以参考S1205的详细描述,本申请实施例这里不予赘述。并且,服务器400和可穿戴设备420执行S2001-S2011所带来的技术效果,也可以参考上述实施例中手机410执行定位方法所带来的技术效果,本申请实施例这里不予赘述。
本申请实施例中,考虑到相比于手机410,可穿戴设备420的存储空间可能较小,且计算能力可能较弱。该可穿戴设备420中可以不保存瓦片数据(即上述至少一个第一网格的网格数据),也不需要执行S2004和S2007-S2009进行定位。而是由服务器400执行S2004和S2007-S2009,协助可穿戴设备420进行定位。这样,即使可穿戴设备420的存储空间和计算能力有限,也可以通过本申请实施例的方法提升可穿戴设备420的定位精度。
为了准确定位出上述可穿戴设备420是否位于道路上,以及位于道路的哪一侧。如图21A所示,在图20B所示的S2008之后,本申请实施例的方法还可以包括S2101-S2104,上述S2009可以替换为S2104。
S2101、服务器400根据多个定位备选位置中、位于道路上的定位备选位置中的部分或全部定位备选位置各自所在道路的道路标识,获取上述部分或全部定位备选位置各自所在道路的道路数据。
S2102、服务器400根据上述部分或全部定位备选位置在目标道路的分布情况,确定定位道路。该定位道路是可穿戴设备420所在的道路。其中,目标道路是上述部分或全部定位备选位置所在的道路。
S2103、服务器400根据上述部分或全部定位备选位置在定位道路的道路中心线的两侧的分布情况,确定可穿戴设备420位于定位道路的道路中心线的一侧。
S2104、服务器400计算第一位置或第二位置在上述定位道路的道路中心线的一侧的道路边沿线的垂直投影,并输出该垂直投影所在的第二位置。
其中,S2101可以参考上述实施例中S1701的详细描述,S2102可以参考上述实施例中S1702的详细描述,S2103可以参考上述实施例中S1703的详细描述,S2104可以参考上述实施例中S1801的详细描述,本申请实施例这里不予赘述。
在第(2)种情况的另一种实现方式中,第一电子设备可以是手机410,第二电子设备可以是可穿戴设备420。其中,如图21B所示,服务器400可以执行S801-S803,在服务器400中保存瓦片数据库。手机410可以执行S804和S805,得到至少一个地图瓦片的至少一个第一网格的网格数据。然后,手机410可以代替图21A所示的服务器400,与可穿戴设备420可执行S2001-S2009和S2101-S2104。
本申请实施例中,对于存储空间较小、计算能力较弱的设备(如可穿戴设备420),可以由服务器400或手机410等存储空间较大、计算能力较强的设备协助可穿戴设备420进行定位,提升可穿戴设备420的定位精度。
请参考图22,其示出本申请实施例提供的一种定位方法的简化流程图。如图22所示,本申请实施例中的“数据处理”流程可以包括以下步骤:
首先,第一电子设备可以获取3D建筑模型(Building Model)2211,以及道路数据(Road Data)2212。然后,第一电子设备可以执行道路选择2213从道路数据2212对应的道路中选择出低定位精度道路。最后,第一电子设备执行瓦片数据生成2214,得到瓦片数据(即第i层瓦片地图中每个地图瓦片的多个第一网格的网格数据)。
其中,获取3D建筑模型2211的方法可以参考S800a和上述实施例中的相关描述这里不予赘述。获取道路数据2212的方法的详细描述可以参考S800b,以及上述实施例中的相关描述,这里不予赘述。执行道路选择2213的详细描述可以参考S800c和S800d,以及上述实施例中的相关描述,这里不予赘述。2214的详细描述可以参考S802,以及上述实施例中的相关描述,这里不予赘述。
如图22所示,在“定位”流程之前,第一电子设备可以获取第二电子设备接收的多个广播信号的信号参数2200。如图22所示,本申请实施例的“定位”流程可以包括以下步骤:
首先,第一电子设备可以确定第二电子设备的第一位置2201,该第一位置是第二电子设备定位获得的。然后,第一电子设备可以根据第一位置2201确定多个备选位置(即执行2202)。具体的,第一电子设备可以根据第一位置2201确定备选区域,然后从备选区域中确定多个备选位置(即执行2202)。其次,第一电子设备可以根据2214中的瓦片数据,以及多颗卫星相对于多个备选位置的高度角和方位角,确定多个备选位置的标注可视性(即执行2203)。第一电子设备还可以根据2200中的广播信号的信号参数,确定多个备选位置的预测可视性(即执行2204)。第一电子设备还可以根据每个备选位置的预测可视性和标注可视性,对备选位置打分(即执行2205)。其中,第一电子设备可以根据对备选位置的打分,从多个备选位置中选择出多个定位备选位置。第一电子设备还可以获取每个定位备选位置所在的目标道路的道路数据;根据多个定位备选位置在目标道路的分布情况确定定位道路;再根据多个定位备选位置在定位道路的道路两侧的分布情况,确定第二电子设备位于定位道路的第一侧(即执行道路两侧识别2206)。最后,第一电子设备可以根据定位道路,修正上述第一位置(即执行修正第一位置2207)。
其中,确定第一位置2201的详细描述可以参考S1201或S2001;2202的详细描述可以参考S1202、S1202a、S1202b或S2004;2203和2204的详细描述可以参考S1203或S2007。具体的,2203的详细描述可以参考上述S(1)-S(6)。2205的详细描述可以参考S1204或S2008;2206的详细描述可以参考S1701-S1703,2207的详细描述可以参考S1801,本申请实施例这里不予赘述。
请参考图23,其示出一个电子设备(如手机)在道路上高速运动的场景(如车载场景)中,执行本申请实施例的方法前后的定位路线示意图。
其中,图23所示的定位路线1包括手机执行本申请实施例的方法前,在上述高速运动的场景中,定位获得的多个第一位置。如图23所示,定位路线1包括的多个第一位置偏离道路较远。图23所示的修正路线2包括手机执行本申请实施例的方法后,修正路线1的多个第一位置得到的多个第二位置。如图23所示,定位路线2包括的多个第二位置已经被修正至道路上;并且,不同的第二位置被修正至该道路的不同侧。
由上述测试场景可知:通过本申请实施例的方法,不仅可以提升电子设备的定位精度,还可以准确定位出电子设备位于道路的哪一侧。
可以理解的是,上述第一电子设备(如手机410或服务器400)为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请实施例能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请实施例的范围。
本申请实施例可以根据上述方法示例对上述电子设备(即第一电子设备,如手机410或服务器400)进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
在采用集成的单元的情况下,图24示出了上述实施例中所涉及的电子设备的一种可能的结构示意图。该电子设备2400包括:第一确定模块2401、第二确定模块2402、选择模块2403和位置修正模块2404。
其中,第一确定模块2401用于支持电子设备执行上述方法实施例中的S1201,S2003,和/或用于本文所描述的技术的其它过程。第二确定模块2402用于支持电子设备执行上述方法实施例中的S1202,S1202a-S1202b,S2004,和/或用于本文所描述的技术的其它过程。选择模块2403用于支持电子设备执行上述方法实施例中的S1203-S1204,S(1)-S(6),S2007,S2008,和/或用于本文所描述的技术的其它过程。位置修正模块2404用于支持电子设备执行上述方法实施例中的S1205,S1801,S2009,S2104,和/或用于本文所描述的技术的其它过程。
进一步的,上述电子设备2400还可以包括:第三确定模块。其中,第三确定模块用于支持电子设备执行上述方法实施例中的S1701-S1703,S(a)-S(c),S2101-S2103,和/或用于本文所描述的技术的其它过程。
进一步的,上述电子设备2400还可以包括:接收模块和存储模块。其中,接收模块用于支持电子设备执行上述方法实施例中的S804,和/或用于本文所描述的技术的其它过程。存储模块用于支持电子设备执行上述方法实施例中的S805,和/或用于本文所描述的技术的其它过程。
进一步的,上述电子设备2400还可以包括:获取模块和存储模块。其中,获取模块用于支持电子设备执行上述方法实施例中的S801,S802,和/或用于本文所描述的技术的其它过程。存储模块用于支持电子设备执行上述方法实施例中的S803,和/或用于本文所描述的技术的其它过程。
在采用集成单元的情况下,上述第一确定模块2401、第二确定模块2402、选择模块2403、位置修正模块2404、第三确定模块和获取模块等可以集成在一个处理模块中实现。该处理模块可以是处理器或控制器,例如可以是CPU,通用处理器,DSP,专用集成电路(Application-Specific Integrated Circuit,ASIC),现场可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。所述处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。上述接收模块可以是电子设备(如手机410)的通信模块,如RF电路、WiFi模块或者蓝牙模块。
例如,当上述处理模块是图5所示的处理器510,存储模块是图5所示的内部存储器520,通信模块为图5所示的无线通信模块560时,本申请所提供的电子设备可以为图5所示的电子设备500(如手机)。其中,上述无线通信模块560不仅可以包括射频电路,还可以包括WiFi模块和蓝牙模块。射频电路、WiFi模块和蓝牙模块等通信模块可以统称为通信接口。其中,上述处理器、通信接口和存储器可以通过总线耦合在一起。
本申请实施例还提供一种芯片系统,该芯片系统应用于上述第一电子设备。该第一电子设备对第二电子设备进行定位。该芯片系统包括:一个或多个接口电路和一个或多个处理器。所述接口电路和所述处理器通过线路互联。所述接口电路用于从所述第一电子设备的存储器接收信号,并向所述处理器发送所述信号。该信号包括存储器中存储的计算机指令。当处理器执行该计算机指令时,第一电子设备执行上述方法实施例中所述的方法。
本申请实施例还提供一种计算机存储介质,该计算机存储介质包括计算机指令,当所述计算机指令在第一电子设备上运行时,使得所述第一电子设备执行上述方法实施例中所述的方法。
本申请实施例还提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行上述方法实施例中所述的方法。
其中,本申请提供的电子设备、芯片系统、计算机存储介质或者计算机程序产品均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
通过以上实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (26)
1.一种定位方法,其特征在于,用于第一电子设备对第二电子设备进行定位,所述第二电子设备可接收多颗卫星发射的广播信号,所述方法包括:
所述第一电子设备得到所述第二电子设备的第一位置;
所述第一电子设备以所述第一位置为中心点,确定多个备选位置;
所述第一电子设备根据所述多颗卫星相对于所述多个备选位置的高度角和方位角,所述多个备选位置对应的网格数据,以及所述第二电子设备接收所述多颗卫星发送的广播信号的信号参数,从所述多个备选位置中选择出多个定位备选位置;其中,每个所述备选位置对应的网格数据包括位置信息和天空遮挡曲线,一个备选位置的天空遮挡曲线用于指示位于所述一个备选位置周围的多个遮挡物相对于所述一个备选位置的高度角和方位角;
所述第一电子设备根据所述多个定位备选位置的位置信息修正所述第一位置,以输出修正后的第二位置。
2.根据权利要求1所述的方法,其特征在于,所述多个定位备选位置对应的网格数据,还包括:所述多个定位备选位置中、位于道路上的定位备选位置各自所在道路的道路标识;所述方法还包括:
所述第一电子设备根据所述位于道路上的定位备选位置中的部分或全部定位备选位置各自所在道路的道路标识对应的道路数据,确定所述第二电子设备位于定位道路的道路中心线的一侧;其中,所述道路数据包括道路起始点坐标、道路宽度信息和道路方向信息中的至少一个,所述定位道路是所述第二电子设备所在的道路。
3.根据权利要求2所述的方法,其特征在于,所述第一电子设备根据所述位于道路上的定位备选位置中的部分或全部定位备选位置各自所在道路的道路标识,确定所述第二电子设备位于定位道路的道路中心线的一侧,包括:
所述第一电子设备根据所述部分或全部定位备选位置各自所在道路的道路标识,获取所述部分或全部定位备选位置各自所在道路的道路数据;
所述第一电子设备根据所述部分或全部定位备选位置在目标道路的分布情况,确定所述定位道路;其中,所述目标道路是所述部分或全部定位备选位置所在的道路;
所述第一电子设备根据所述部分或全部所述多个定位备选位置在所述定位道路的道路中心线两侧的分布情况,确定所述第二电子设备位于所述定位道路的道路中心线的一侧。
4.根据权利要求3所述的方法,其特征在于,所述定位道路的道路中心线的一侧分布的定位备选位置的数量大于所述道路中心线的另一侧分布的定位备选位置的数量。
5.根据权利要求2-4中任一项所述的方法,其特征在于,所述第一电子设备根据所述多个定位备选位置的位置信息修正所述第一位置,以输出修正后的第二位置,包括:
所述第一电子设备计算所述第一位置在所述道路中心线的一侧的道路边沿线的垂直投影,并输出所述垂直投影所在的所述第二位置。
6.根据权利要求5所述的方法,其特征在于,所述第一电子设备根据所述多颗卫星相对于所述多个备选位置的高度角和方位角,所述多个备选位置的天空遮挡曲线,以及所述第二电子设备接收所述多颗卫星发送的广播信号的信号参数,从所述多个备选位置中选择出多个定位备选位置,包括:
所述第一电子设备根据所述多颗卫星相对于所述多个备选位置的第一可视性和第二可视性,从所述多个备选位置中选择出所述多个定位备选位置;
其中,一颗卫星相对于一个备选位置的第一可视性用于指示所述一颗卫星是所述一个备选位置的视距卫星或非视距卫星,所述第一可视性与一颗卫星相对于所述一个备选位置的高度角和方位角,以及所述一个备选位置的天空遮挡曲线有关;所述一颗卫星相对于所述一个备选位置的第二可视性用于指示所述一颗卫星是所述一个备选位置的视距卫星的概率,所述第二可视性与所述第二电子设备接收所述多颗卫星发送的广播信号的信号参数有关。
7.根据权利要求6所述的方法,其特征在于,所述多个定位备选位置包括:满足预设条件的卫星的数量大于预设数量阈值的备选位置;或者,
所述多个定位备选位置包括:所述多个备选位置中的M个备选位置,M≥2,M是正整数,所述M个备选位置的满足预设条件的卫星的数量,大于其他备选位置的满足预设条件的卫星的数量,所述其他备选位置包括所述多个备选位置中除所述M个备选位置之外备选位置;
其中,所述满足预设条件的卫星是第一可视性与第二可视性匹配的卫星。
8.根据权利要求7所述的方法,其特征在于,在所述第一电子设备根据所述多颗卫星相对于所述多个备选位置的第一可视性和第二可视性,从所述多个备选位置中选择出所述多个定位备选位置之前,所述方法还包括:
所述第一电子设备针对每颗卫星和每个备选位置执行:根据所述一颗卫星相对于所述一个备选位置的高度角和方位角,以及所述一个备选位置对应的网格数据,确定所述一颗卫星相对于所述一个备选位置的第一可视性,以获取所述每颗卫星相对于所述每个备选位置的第一可视性;
所述第一电子设备针对每颗卫星执行:根据所述第二电子设备接收所述一颗卫星发送的广播信号的信号参数,确定所述一颗卫星相对于所述每个备选位置的第二可视性,以获取所述每颗卫星相对于所述每个备选位置的第二可视性。
9.根据权利要求8所述的方法,其特征在于,所述根据所述一颗卫星相对于所述一个备选位置的高度角和方位角,以及所述一个备选位置对应的网格数据,确定所述一颗卫星相对于所述一个备选位置的第一可视性,包括:
所述第一电子设备获取第一方位角和第一高度角,所述第一方位角是所述一颗卫星相对于所述一个备选位置的方位角,所述第一高度角是所述一颗卫星相对于所述一个备选位置的高度角;
所述第一电子设备根据所述一个备选位置的位置信息,确定所述一个备选位置的天空遮挡曲线;
所述第一电子设备根据所述第一方位角,从所述一个备选位置的天空遮挡曲线获取第二高度角;其中,所述第二高度角是第一遮挡物相对于所述一个备选位置的高度角,所述第一遮挡物相对于所述一个备选位置的方位角是所述第一方位角;
如果所述第一高度角大于所述第二高度角,所述第一电子设备确定所述一颗卫星相对于所述一个备选位置的第一可视性指示所述一颗卫星是视距卫星;
如果所述第一高度角小于或等于所述第二高度角,所述第一电子设备确定所述一颗卫星相对于所述一个备选位置的第一可视性指示所述一颗卫星是非视距卫星。
10.根据权利要求9所述的方法,其特征在于,所述第一电子设备保存有预设人工智能AI模型的模型代码;
所述预设AI模型具备根据位于任一个位置的电子设备接收任一颗卫星发送的广播信号的信号参数,确定所述任一颗卫星相对于所述任一个位置的第二可视性的功能;
其中,所述根据所述第二电子设备接收所述一颗卫星发送的广播信号的信号参数,确定所述一颗卫星相对于所述每个备选位置的第二可视性,包括:
所述第一电子设备运行所述预设AI模型的模型代码,将所述第二电子设备接收所述一颗卫星发送的广播信号的信号参数作为输入,通过所述预设AI模型,确定所述一颗卫星相对于所述每个备选位置的第二可视性。
11.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述第一电子设备接收服务器发送的至少一个第一网格的网格数据;所述至少一个第一网格指示所述第一位置所在的一片地理区域,每个第一网格的面积小于预设面积阈值;一个第一网格的网格数据包括所述一个第一网格的位置信息和天空遮挡曲线;
所述第一电子设备保存所述至少一个第一网格的网格数据;
其中,所述一个备选位置对应的网格数据是距离所述一个备选位置最近的第一网格的网格数据。
12.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述第一电子设备获取N层瓦片地图中的第i层瓦片地图,所述第i层瓦片地图包括多个地图瓦片;其中,2≤i≤N,i和N均为正整数;
所述第一电子设备获取所述第i层瓦片地图中至少一个地图瓦片的至少一个第一网格的网格数据;其中,一个地图瓦片的至少一个第一网格是分割所述地图瓦片得到的多个地理区域中的至少一个地理区域,每个第一网格的面积小于预设面积阈值;一个第一网格的网格数据包括所述一个第一网格的位置信息和天空遮挡曲线;
所述第一电子设备保存所述至少一个第一网格的网格数据;
其中,所述一个备选位置对应的网格数据是距离所述一个备选位置最近的第一网格的网格数据。
13.根据权利要求11所述的方法,其特征在于,所述至少一个第一网格是遮挡物密集的地理区域的第一网格。
14.根据权利要求11所述的方法,其特征在于,所述一个第一网格的网格数据还包括:所述一个第一网格所在道路的道路标识。
15.根据权利要求1所述的方法,其特征在于,所述多个备选位置对应的网格数据包括在一个或多个地图瓦片的数据中,所述地图瓦片的数据还包括道路数据,所述道路数据包括道路起始点坐标、道路宽度信息和道路方向信息中的至少一个。
16.一种电子设备,其特征在于,所述电子设备是第一电子设备,所述第一电子设备对第二电子设备进行定位,所述电子设备包括:
第一确定模块,用于得到所述第二电子设备的第一位置;
第二确定模块,用于以所述第一确定模块确定的所述第一位置为中心点,确定多个备选位置;
选择模块,用于根据多颗卫星相对于所述第二确定模块确定的所述多个备选位置的高度角和方位角,所述多个备选位置对应的网格数据,以及所述第二电子设备接收所述多颗卫星发送的广播信号的信号参数,从所述多个备选位置中选择出多个定位备选位置;其中,每个所述备选位置对应的网格数据包括位置信息和天空遮挡曲线,一个备选位置的天空遮挡曲线用于指示位于所述一个备选位置周围的多个遮挡物相对于所述一个备选位置的高度角和方位角;
位置修正模块,用于根据所述选择模块选择的所述多个定位备选位置的位置信息修正所述第一位置,以输出修正后的第二位置。
17.根据权利要求16所述的电子设备,其特征在于,所述多个定位备选位置对应的网格数据,还包括:所述多个定位备选位置中、位于道路上的定位备选位置各自所在道路的道路标识;所述电子设备还包括:第三确定模块;
所述第三确定模块,用于根据所述位于道路上的定位备选位置中的部分或全部定位备选位置各自所在道路的道路标识对应的道路数据,确定所述第二电子设备位于定位道路的道路中心线的一侧;其中,所述道路数据包括道路起始点坐标、道路宽度信息和道路方向信息中的至少一个,所述定位道路是所述第二电子设备所在的道路。
18.根据权利要求17所述的电子设备,其特征在于,所述位置修正模块,具体用于:
计算所述第一位置在所述道路中心线的一侧的道路边沿线的垂直投影,并输出所述垂直投影所在的所述第二位置。
19.根据权利要求16-18中任一项所述的电子设备,其特征在于,所述选择模块,具体用于:
根据所述多颗卫星相对于所述多个备选位置的第一可视性和第二可视性,从所述多个备选位置中选择出所述多个定位备选位置;
其中,一颗卫星相对于一个备选位置的第一可视性用于指示所述一颗卫星是所述一个备选位置的视距卫星或非视距卫星,所述第一可视性与一颗卫星相对于所述一个备选位置的高度角和方位角,以及所述一个备选位置的天空遮挡曲线有关;所述一颗卫星相对于所述一个备选位置的第二可视性用于指示所述一颗卫星是所述一个备选位置的视距卫星的概率,所述第二可视性与所述第二电子设备接收所述多颗卫星发送的广播信号的信号参数有关。
20.根据权利要求19所述的电子设备,其特征在于,所述选择模块,具体用于:
针对每颗卫星和每个备选位置执行:根据所述一颗卫星相对于所述一个备选位置的高度角和方位角,以及所述一个备选位置对应的网格数据,确定所述一颗卫星相对于所述一个备选位置的第一可视性,以获取所述每颗卫星相对于所述每个备选位置的第一可视性;
针对每颗卫星执行:根据所述第二电子设备接收所述一颗卫星发送的广播信号的信号参数,确定所述一颗卫星相对于所述每个备选位置的第二可视性,以获取所述每颗卫星相对于所述每个备选位置的第二可视性。
21.根据权利要求16所述的电子设备,其特征在于,所述电子设备还包括:接收模块和存储模块;其中,所述接收模块,用于接收服务器发送的至少一个第一网格的网格数据;所述至少一个第一网格指示所述第一位置所在的一片地理区域,每个第一网格的面积小于预设面积阈值;所述存储模块,用于保存所述接收模块接收的所述至少一个第一网格的网格数据;或者,
所述电子设备还包括:获取模块和存储模块;其中,所述获取模块,用于获取N层瓦片地图中的第i层瓦片地图,所述第i层瓦片地图包括多个地图瓦片;其中,2≤i≤N,i和N均为正整数;获取所述第i层瓦片地图中至少一个地图瓦片的至少一个第一网格的网格数据;其中,一个地图瓦片的至少一个第一网格是分割所述地图瓦片得到的多个地理区域中的至少一个地理区域,每个第一网格的面积小于预设面积阈值;所述存储模块,用于保存所述获取模块获取的所述至少一个第一网格的网格数据;
其中,所述一个备选位置对应的网格数据是距离所述一个备选位置最近的第一网格的网格数据;一个第一网格的网格数据包括所述一个第一网格的位置信息和天空遮挡曲线。
22.根据权利要求21所述的电子设备,其特征在于,所述选择模块,还用于在从所述多个备选位置中选择出所述多个定位备选位置之前,从所述存储模块保存的所述至少一个第一网格的网格数据中,获取所述多个备选位置对应的网格数据;
其中,所述多个备选位置对应的网格数据是距离所述多个备选位置最近的第一网格的网格数据。
23.一种电子设备,其特征在于,所述电子设备是第一电子设备,所述第一电子设备对第二电子设备进行定位,所述电子设备包括:存储器和一个或多个处理器;所述存储器与所述处理器耦合,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述计算机指令被所述处理器执行时,使得所述电子设备执行如权利要求1-15中任一项所述的方法。
24.一种芯片系统,其特征在于,所述芯片系统应用于第一电子设备,所述第一电子设备对第二电子设备进行定位;所述芯片系统包括:一个或多个接口电路和一个或多个处理器;所述接口电路和所述处理器通过线路互联;所述接口电路用于从所述第一电子设备的存储器接收信号,并向所述处理器发送所述信号,所述信号包括所述存储器中存储的计算机指令;当所述处理器执行所述计算机指令时,所述第一电子设备执行如权利要求1-15中任一项所述的方法。
25.一种计算机存储介质,其特征在于,包括计算机指令,当所述计算机指令在第一电子设备上运行时,使得所述第一电子设备执行如权利要求1-15中任一项所述的方法。
26.一种计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如权利要求1-15中任一项所述的方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910810205.9A CN112444834B (zh) | 2019-08-29 | 2019-08-29 | 一种定位方法及电子设备 |
PCT/CN2020/111328 WO2021037051A1 (zh) | 2019-08-29 | 2020-08-26 | 一种定位方法及电子设备 |
US17/683,080 US11960012B2 (en) | 2019-08-29 | 2022-02-02 | Positioning method and electronic device |
US18/390,690 US20240241269A1 (en) | 2019-08-29 | 2023-12-20 | Positioning method and electronic device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910810205.9A CN112444834B (zh) | 2019-08-29 | 2019-08-29 | 一种定位方法及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112444834A CN112444834A (zh) | 2021-03-05 |
CN112444834B true CN112444834B (zh) | 2024-07-30 |
Family
ID=74684886
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910810205.9A Active CN112444834B (zh) | 2019-08-29 | 2019-08-29 | 一种定位方法及电子设备 |
Country Status (3)
Country | Link |
---|---|
US (2) | US11960012B2 (zh) |
CN (1) | CN112444834B (zh) |
WO (1) | WO2021037051A1 (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113050127B (zh) * | 2021-04-13 | 2024-01-02 | 广州海格通信集团股份有限公司 | 信号处理方法、装置、计算机设备和存储介质 |
CN113313847B (zh) * | 2021-04-23 | 2023-01-10 | 北京万集科技股份有限公司 | 电子交易方法、路侧交易终端和车载交易终端 |
CN113642951B (zh) * | 2021-07-15 | 2024-06-25 | 鹏城实验室 | 一种基于区块链的信号定位系统的建立方法及定位方法 |
CN113376674B (zh) * | 2021-08-11 | 2021-11-26 | 腾讯科技(深圳)有限公司 | 一种终端的定位方法、装置、设备及存储介质 |
CN113419266B (zh) * | 2021-08-23 | 2021-12-10 | 腾讯科技(深圳)有限公司 | 定位方法及装置、电子设备、计算机可读存储介质 |
CN113866801B (zh) * | 2021-08-31 | 2024-05-28 | 郑州威科姆华大北斗导航科技有限公司 | 基于垂直投影的北斗卫星定位精度评估改进方法及系统 |
CN117092672A (zh) * | 2022-05-13 | 2023-11-21 | 腾讯科技(深圳)有限公司 | 一种定位方法以及相关装置 |
WO2023235447A1 (en) * | 2022-06-03 | 2023-12-07 | Apple Inc. | Line of sight estimator |
CN115168788B (zh) * | 2022-09-07 | 2022-11-22 | 中国科学院空天信息创新研究院 | 卫星遥感大数据的确定方法、装置、设备及介质 |
CN115685266B (zh) * | 2022-10-21 | 2023-07-11 | 中国人民解放军61081部队 | 基于全球网格的gps信号分量调整中心点确定方法 |
CN116953747A (zh) * | 2023-01-18 | 2023-10-27 | 腾讯科技(深圳)有限公司 | 移动终端的定位方法、装置、设备及存储介质 |
CN116068604A (zh) * | 2023-02-13 | 2023-05-05 | 腾讯科技(深圳)有限公司 | 融合定位方法、装置、计算机设备、存储介质及程序产品 |
CN117310772B (zh) * | 2023-11-28 | 2024-02-02 | 电子科技大学 | 一种基于地图信息视距或非视距检测的电磁目标定位方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101893702A (zh) * | 2009-05-18 | 2010-11-24 | 株式会社Ntt都科摩 | 移动通信终端和gps测位方法 |
CN104412065A (zh) * | 2012-06-27 | 2015-03-11 | 三菱电机株式会社 | 定位装置 |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002214322A (ja) * | 2001-01-16 | 2002-07-31 | Matsushita Electric Ind Co Ltd | 携帯型位置評定装置 |
US8271189B2 (en) | 2008-09-26 | 2012-09-18 | Qualcomm Incorporated | Enhanced database information for urban navigation |
JP4934167B2 (ja) * | 2009-06-18 | 2012-05-16 | クラリオン株式会社 | 位置検出装置および位置検出プログラム |
US9885789B2 (en) * | 2013-03-14 | 2018-02-06 | Google Llc | Accounting for atmospheric and terrestrial obstacles in geographic positioning |
US10031235B2 (en) * | 2013-05-20 | 2018-07-24 | The Foundation For The Promotion Of Industrial Science | Position detection device, position detection system, and position detection method |
US20150338522A1 (en) | 2014-05-21 | 2015-11-26 | Apple Inc. | Positioning Using Non-Line-Of-Sight Signals |
US9611057B2 (en) * | 2015-03-24 | 2017-04-04 | Elwha Llc | Systems, methods and devices for satellite navigation |
SG10201912062UA (en) | 2015-07-17 | 2020-02-27 | Univ California | System and method for localization and tracking using gnss location estimates, satellite snr data and 3d maps |
US10078138B2 (en) * | 2015-09-08 | 2018-09-18 | Apple Inc. | Doppler shift correction using three-dimensional building models |
CN105761310B (zh) | 2016-02-03 | 2019-03-05 | 东南大学 | 一种天空可视域数字地图的模拟分析及图像显示方法 |
CN105628033B (zh) | 2016-02-26 | 2019-04-02 | 广西鑫朗通信技术有限公司 | 一种基于道路连通关系的地图匹配方法 |
CN105807301B (zh) * | 2016-03-03 | 2018-05-15 | 东南大学 | 一种基于增强型数字地图的车辆优化选星定位方法 |
CN105911576B (zh) * | 2016-04-08 | 2018-09-07 | 北京无线电计量测试研究所 | 确定分布式协同系统中副分系统的位置信息的方法及装置 |
US9766349B1 (en) | 2016-09-14 | 2017-09-19 | Uber Technologies, Inc. | Localization and tracking using location, signal strength, and pseudorange data |
EP3339902A1 (en) * | 2016-12-23 | 2018-06-27 | Centre National d'Etudes Spatiales | Multipath management in global navigation satellite systems |
CN106886036B (zh) * | 2017-02-24 | 2019-07-26 | 广东小天才科技有限公司 | 一种终端定位方法及装置 |
CN107064974A (zh) * | 2017-02-28 | 2017-08-18 | 广东工业大学 | 一种抑制城市峡谷多径卫星信号的定位方法和系统 |
US10802157B2 (en) * | 2017-09-28 | 2020-10-13 | Apple Inc. | Three-dimensional city models and shadow mapping to improve altitude fixes in urban environments |
CN107966724B (zh) * | 2017-11-27 | 2019-06-14 | 南京航空航天大学 | 一种基于3d城市模型辅助的城市峡谷内卫星定位方法 |
US20190320409A1 (en) * | 2018-04-16 | 2019-10-17 | Nir Dvorecki | Enhanced crowd-sourcing navigation |
EP3671281A1 (en) * | 2018-12-21 | 2020-06-24 | European Space Agency | Method and system for processing a gnss signal using homomorphic encryption |
WO2021250524A1 (en) * | 2020-06-11 | 2021-12-16 | Nextnav, Llc | Characterizing height above terrain confidence |
US20230128817A1 (en) * | 2020-07-14 | 2023-04-27 | Spirent Communications Plc | Gnss forecast impacting receiver startup |
-
2019
- 2019-08-29 CN CN201910810205.9A patent/CN112444834B/zh active Active
-
2020
- 2020-08-26 WO PCT/CN2020/111328 patent/WO2021037051A1/zh active Application Filing
-
2022
- 2022-02-02 US US17/683,080 patent/US11960012B2/en active Active
-
2023
- 2023-12-20 US US18/390,690 patent/US20240241269A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101893702A (zh) * | 2009-05-18 | 2010-11-24 | 株式会社Ntt都科摩 | 移动通信终端和gps测位方法 |
CN104412065A (zh) * | 2012-06-27 | 2015-03-11 | 三菱电机株式会社 | 定位装置 |
Also Published As
Publication number | Publication date |
---|---|
US20240241269A1 (en) | 2024-07-18 |
WO2021037051A1 (zh) | 2021-03-04 |
CN112444834A (zh) | 2021-03-05 |
US11960012B2 (en) | 2024-04-16 |
US20220283318A1 (en) | 2022-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112444834B (zh) | 一种定位方法及电子设备 | |
AU2010257305B2 (en) | Techniques for density mapping | |
CN112558125B (zh) | 一种车辆定位的方法、相关装置、设备以及存储介质 | |
US6392661B1 (en) | Method and apparatus for improving situational awareness using multiple map displays employing peripheral range bands | |
US11321869B2 (en) | Accurate positioning system using attributes | |
KR101594288B1 (ko) | 수평각들을 사용하는 위치 결정 | |
US20160178754A1 (en) | Portable gnss survey system | |
CN110501736B (zh) | 利用视觉影像和gnss测距信号紧耦合定位系统与方法 | |
JP6804806B2 (ja) | 測位精度情報算出装置及び測位精度情報算出方法 | |
US20200265644A1 (en) | Method and system for generating merged reality images | |
CN111781619B (zh) | 基于近距离通信网络的定位方法、装置、设备和存储介质 | |
CN110715670A (zh) | 一种基于gnss差分定位构建驾考全景三维地图的方法 | |
CN114549633A (zh) | 位姿检测方法、装置、电子设备和存储介质 | |
CN117580054B (zh) | 基于使用需求数据的ntn小区构建方法、装置、设备及介质 | |
CN114624751A (zh) | 辅助定位方法、装置、电子设备和存储介质 | |
CN112904390B (zh) | 定位方法、装置、计算机设备和存储介质 | |
WO2024152673A1 (zh) | 移动终端的定位方法、装置、设备及存储介质 | |
RU2660631C1 (ru) | Способ и система для формирования изображений совмещенной реальности | |
CN111664860B (zh) | 定位方法、装置、智能设备及存储介质 | |
CN106705950A (zh) | 一种确定目标物体的地理位置的方法及电子设备 | |
KR100460527B1 (ko) | 전자 표지석을 이용한 위치 정보 처리 방법 및 시스템 | |
CN116263334A (zh) | 定位方法、装置、计算机设备、存储介质和程序产品 | |
CN117991310A (zh) | 可视概率确定的方法、装置、计算机设备和存储介质 | |
WO2020090510A1 (ja) | 情報処理装置および方法、並びにプログラム | |
CN117130028A (zh) | 一种公路施工人员的位置确定方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |