CN110008801A - 基于移动遥测数据识别数字地图中的缺失要素 - Google Patents
基于移动遥测数据识别数字地图中的缺失要素 Download PDFInfo
- Publication number
- CN110008801A CN110008801A CN201811464562.6A CN201811464562A CN110008801A CN 110008801 A CN110008801 A CN 110008801A CN 201811464562 A CN201811464562 A CN 201811464562A CN 110008801 A CN110008801 A CN 110008801A
- Authority
- CN
- China
- Prior art keywords
- remote sensing
- map
- missing
- existing
- segment
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3833—Creation or updating of map data characterised by the source of data
- G01C21/3841—Data obtained from two or more sources, e.g. probe vehicles
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3863—Structures of map data
- G01C21/3867—Geometry of map features, e.g. shape points, polygons or for simplified maps
-
- 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/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
- G01S19/14—Receivers specially adapted for specific applications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/10—Terrestrial scenes
- G06V20/176—Urban or other man-made structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/10—Terrestrial scenes
- G06V20/182—Network patterns, e.g. roads or rivers
-
- 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/43—Determining position using carrier phase measurements, e.g. kinematic positioning; using long or short baseline interferometry
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/38—Services specially adapted for particular environments, situations or purposes for collecting sensor information
Abstract
本发明涉及基于移动遥测数据识别数字地图中的缺失要素。一种用于识别电子地图中的缺失地图要素的方法,包括接收指示移动计算设备的地理位置的遥感探测,以及识别与现有地图要素相对应的遥感探测的子集。然后将所识别子集从遥感探测的聚集中去除,并且剩余遥感探测用于生成密度图并识别遥感探测的缺失群集。确定缺失群集的几何形状,并且由缺失群集的几何形状定义缺失地图要素。可以用缺失地图要素更新电子地图。
Description
技术领域
本发明涉及基于移动遥测数据识别数字地图中的缺失要素。
背景技术
例如,数字存储的电子地图用于使用独立地图或方向应用程序或应用软件的宽组合中的任一个向移动设备的用户提供方向。现在的电子地图正确地判断移动设备在几尺或几米内,或者实时示出该移动设备的用户在电子地图上的位置。电子地图通常还包括其他功能,诸如向几乎任何位置提供逐个转弯方向。还可以示出添加元素,诸如交通或失事。
电子地图还在除了独立映射应用以外的其他应用中出现。例如,乘车共享应用、出租应用、视频游戏、以及其他应用可以使用数字地图。这些或其他应用通过应用编程接口(API)调用地图服务器计算机获得电子地图。因此,拥有或操作服务器计算机的单个电子地图提供商可以提供用于许多不同的应用的电子地图。
电子地图由各种不同的源构成,准确程度常常取决于它们期望的应用。对于用于在道路上提供逐个转弯方向的地图,电子地图中的道路位置的准确度对地图的功能来说是重要的,因为不准确性会在用户尝试导航时对用户变得非常明显。然而,收集道路位置信息以构建电子地图通常是一个劳动力密集的过程,并且常常通过使用交通工具队或其他地面上的收集基础设施手动收集街道数据来实现。此外,由于全球定位系统(GPS)收集数据中的系统误差可导致地图的部分失配,电子地图将用户的真实世界物理位置准确地投射到电子地图中的位置上的能力未得到保证。GPS收集数据中的系统误差可能由收集车辆的惯性测量单元(IMU)的校准误差、缺乏卫星信号、信号障碍、或多径误差引起。此外,由于道路可能改变,例如,由于建造,在再次采取手动收集街道数据之前的过渡期电子地图可能是不准确的。通常,改善测图精度的传统方法包括用新的地面数据收集更新地图,需要采取手动进行数据收集并重复更新。更新电子地图、识别道路的变化以及改善地图的准确度的改善方法需要提供更多实时更新而不需要手动重新获取街道数据。
发明内容
本文中提供了用于识别电子地图中缺失地图要素的系统和方法。移动计算设备(诸如,移动电话)收集指示用户移动通过与电子地图的一部分相对应的区域的位置数据。移动计算设备是识别电子地图的缺失要素并响应于地面上的变化更新地图的有用的信息来源。为了识别指示先前未知的地图要素(诸如,新道路)的集体用户行为,本文中描述的系统和方法聚集由移动计算设备提供的遥测数据。遥测数据是指由移动计算设备提供的指示在特定时间设备的位置(诸如,GPS位置)的位置数据。位置数据可以为遥感探测的形式,遥感探测为某时的单个位置数据点。
从多个移动计算设备接收的聚集的遥感探测数据位于现有电子地图内,并且去除与现有地图要素相关联的遥感探测。与现有地图要素相关联的遥感探测在现有电子地图中具有与先前已知的地图要素(诸如,道路)相对应的位置。与已知地图要素未关联的剩余遥感探测是包含与缺失要素有关的信息的可能候选者。这些剩余探测然后用于在电子地图的包含可能的缺失要素的部分内生成密度图。然后将该密度图内满足阀值密度要求的遥感探测组合为缺失群集。然后确定缺失群集的几何形状并且该几何形状被识别为地图要素,并且将与缺失群集相对应的缺失地图要素合并到检查之后的现有电子地图中。因此,基于反映在所接收的遥感探测中的用户行为用缺失地图要素更新现有电子地图。
在一些实施方式中,方法包括从多个移动计算设备中的每一个接收多个遥感探测。每个遥感探测包括在探测时移动计算设备的地理位置。方法包括聚集所接收的多个遥感探测以获得聚集的遥感探测集合。方法进一步包括识别聚集的遥感探测集合中的遥感探测的子集。遥感探测的子集中的每个遥感探测对应于电子地图过去表征的遥感探测的地理位置。方法进一步包括从聚集的遥感探测集合中去除所识别的遥感探测的子集以获得剩余遥感探测的集合,生成剩余遥感探测的集合的密度图,以及识别密度图中的缺失群集。缺失群集包括在密度图中具有至少阈值密度的剩余遥感探测的子集。方法进一步包括确定由所识别缺失群集形成的几何形状,以及从所确定几何形状限定缺失地图要素。
附图说明
在图中:
图1示出了根据一个实施方式的可以实践所描述的技术的示例性计算机系统。
图2示出了可以实现实施方式的计算机系统。
图3示出了实施方式中由所接收的遥感探测定义缺失地图要素的过程。
图4示出了实施方式中用于聚集所接收的遥感探测的过程。
图5示出了实施方式中利用剩余遥感探测生成密度图的过程。
图6示出了实施方式中用于识别缺失群集的过程。
图7A是实施方式中现有街道地图的图形表示。
图7B是实施方式中覆盖在现有街道地图上的遥测数据的图形表示。
图7C是实施方式中识别与现有地图要素相对应的遥感探测的图形表示。
图7D是实施方式中所识别缺失群集的图形表示。
图7E是实施方式中用缺失街道更新的现有街道图的图形表示。
图8A是实施方式中现有街道地图的图形表示。
图8B是实施方式中识别与现有地图要素相对应的遥感探测的图形表示。
图8C是实施方式中用重新对准街道更新的现有街道地图的图形表示。
具体实施方式
在下列具体实施方式中,为了说明的目的,阐述了很多具体细节以便提供对本发明的透彻理解。然而,显而易见的是,本发明可以在没有这些具体细节的情况下被实践。在其他情况下,已知的结构和设备以框图的形式示出,以避免使本发明不必要地晦涩难懂。
移动计算设备可以使用GPS卫星、其他定位卫星、WiFi信号、来自与移动计算设备通信的其他设备或者网络的信息、航位推算法、或者任何其他方法或方法的组合确定其位置。移动计算设备可以利用从网络接收的位置信息增加GPS卫星位置信息,诸如,蜂窝网络的塔位置。移动计算设备将其地理位置报告给电子地图提供商作为经纬度坐标的集合,并且可选地同样报告每个位置的高度和时间。本文中该位置数据和可选的时间数据称为遥测数据。
遥测数据是用于更新和维护电子地图的有用信息源,因为其不需要任何人工处理地面数据收集而提供地图区域内的用户的连续真实世界的行为诸如专门分派用以收集地图数据的交通工具。由于可以连续收集遥测数据,遥测数据可以比电子地图更快地反映变化。例如,用户可以在新的道路被包括在电子地图中之前在其上开始驾驶。通过将遥测数据中的要素与现有电子地图相比较,电子地图提供商可以更新电子地图以包括这些缺失的要素。
电子地图可以存储有关地图要素的信息。地图要素是与可以通过空间影响用户的移动的物理结构相对应的电子地图内的任何结构。地图要素可以是用户通过其能够移动的小路,诸如,道路、公路、人行道、桥、土路、小道、停车场、渡运航线、水路、或便于用户移动的任何其他基础设施。地图要素还可以是阻止用户移动的物理结构,尤其用户的用户移动,诸如,建筑物、障碍物、壁、或防止车辆通过物理空间自由通行的任何其他基础设施。可以通过各种源检测地图要素,包括卫星图、数字街道数据、建筑物或地点数据或地面数据。该数据的示例性源包括国家航空和航天局(NASA)、美国地质调查所(USGS)、以及DigitalGlobe。
然而,使用这些识别地图要素的传统源并不总是提供全面的或最新的信息。使用这些传统源,一些地图要素可能是缺失的或者不易发现的。如本文中使用的,“缺失要素”是指在电子地图中未反映为地图要素的可穿越的地理要素。电子地图中的缺失要素可能由最近的道路建筑、地面基础设施的增加、道路封闭、或其他来源产生的。通过收集遥测数据,可通过分析如反映在聚集的遥测数据中的用户行进行为发现经由卫星或上述另一数据源不可见或不可识别的地图要素。用缺失要素更新电子地图提高了电子地图的准确度和基于电子地图的方向性或者其他产品。
遥测数据同样可以通过识别未对准的地图要素帮助提高地图的准确度。例如,由于GPS收集中的卫星成像误差或系统误差(例如,由于IMU误校准),电子地图中道路的位置可能与其真正的位置未对准。通过收集反映路上实际用户移动的遥测数据,能够检测并校正地图的道路位置与实际位置之间的差异。
因此,通过收集遥测数据并聚集遥测数据以相对于现有地图要素识别用户的集体行为,可识别缺失地图要素并更新至电子地图。该过程提供了提高电子地图的准确度以及为电子地图提供频繁更新以反映现实世界变化的一种方式。
图1示出了所描述的技术可以实践的示例性计算机系统。在实施方式中,计算机系统100包括在一个或多个计算设备处至少部分地由硬件实现的组件,诸如执行存储在一个或多个存储器中用于执行本文中描述的功能的程序指令的一个或多个硬件处理器。换言之,本文中描述的所有功能旨在指示在各种实施方式中使用专用计算机或通用计算机中的编程执行的操作。图1仅示出了被配置为执行本文中描述的编程的组件的许多合理布置中的一种。其他布置可以包括更少的或不同的组件,并且组件之间的分工可根据布置而改变。
图1示出了经由无线网络连接165联接到服务器计算机105的移动计算设备145,服务器计算机连接到数据库120。GPS卫星经由无线连接连接到移动计算设备145。服务器计算机105包括映射应用110、应用编程接口(API)112、缺失特征检测指令115和数据库接口117。数据库120包括电子地图源数据125、电子地图数据130、遥测数据135、和聚集遥测数据140。移动计算设备145包括GPS收发器150、客户端地图应用155、软件开发工具包(SDK)157和无线网络接口159。在实施方式中,地图图块(map tile)由程序库和SDK(诸如,SDK157)用作在移动计算设备或者浏览器上的显示地图的一部分。地图应用或者浏览器可以请求一个或多个地图图块并处理地图图块以使视觉地图进行显示。
服务器计算机105可以是任何计算设备,包括但不限于:服务器、机架、工作站、个人计算机、通用计算机、笔记本电脑、互联网设备、无线设备、有线设备、多处理器系统、小型计算机等等。尽管图1示出了单个元件,服务器计算机105广泛表示一个或多个服务器计算机(诸如,服务器群集),并且服务器计算机可以位于一个或多个物理位置。服务器计算机105还可以表示使用数据中心中的一个或多个计算机执行的一个或多个虚拟计算实例,诸如虚拟服务器机群。
服务器计算机105使用有线和无线通信的任意组合通过任何种类的计算机网络通信连接到数据库120和移动计算设备145,包括但不限于:局域网(LAN)、广域网(WAN)、一个或多个互连网络(诸如,公共互联网)或公司网络。服务器计算机105可以承载或者执行映射应用110,并且可以包括其他应用、软件、以及其他可执行指令(诸如数据库接口117)以促进本文中描述的实施方式的各个方面。
在一个实施方式中,数据库接口117是与数据库120通信的程序化接口(诸如,JDBC或ODBC)。数据库接口117可以与任意数量的数据库和任何类型的数据库以任何形式通信。数据库接口117可以是由与映射应用110相关联的实体创建的或者可以是由第三方实体部分或完全创建的一个定制软件。
在一个实施方式中,数据库120是含有存储在任何合适的存储设备(诸如,一个或多个硬盘驱动器、存储器、或者被配置为存储数据的任何其他电子数字数据记录设备)上的程序和数据的数据存储子系统。尽管数据库120被描述为图1中的单个设备,但数据库120可以跨越位于一个或多个物理位置的多个设备。例如,数据库120可以包括位于一个或多个数据仓库的一个或多个节点。另外,在一个实施方式中,数据库120可以位于作为服务器计算机105的相同的一个或多个设备上。可替换地,数据库120可以位于与服务器计算机105分离的一个或多个设备上。
数据库120可以是任何形式,诸如关系数据库、noSQL数据库、或任何其他形式。数据库120使用先前描述的类型的有线和无线通信的任意组合通过任何种类的计算机网络与服务器计算机105通信连接。可选地,数据库120可以与其他组件(诸如,一个或多个第三方数据提供商)直接或间接通信连接。通常,数据库120存储与电子地图有关的数据,包括但不限于:电子地图源数据125、电子地图数据130、遥测数据135和聚集的遥测数据140。这些数据集可以作为关系数据库中的列式数据或作为扁平文件存储。
在一个实施方式中,电子地图源数据125是由各种源获得、下载或接收的原始数字地图数据。原始数字地图数据可以包括卫星图像、数字式街道数据、建筑物或地点数据或地面数据。示例性源包括国家航空和航天局(NASA)、美国地质调查所(USGS)、和DigitalGlobe。电子地图源数据125可以任何合适的间隔更新,并且可以存储任何时间量。一旦获得或接收,电子地图源数据125用于生成电子地图数据130。
在一个实施方式中,电子地图数据130是使用API直接或间接提供给客户端地图应用(诸如,客户端地图应用155)的数字地图数据。电子地图数据130基于电子地图源数据125。具体地,电子地图源数据125被作为多个矢量图块处理和组织,多个矢量图块可受制于风格数据以强加不同的显示风格。电子地图数据130可以任何合适的间隔更新,并且可以包括除源自电子地图源数据125以外的附加信息。电子地图数据130可以使用在服务器计算机105上实现的缺失特征检测指令115的结果定期更新。例如,使用下面论述的聚集的遥测数据140,各种附加信息可以存储在矢量图块中,诸如,交通图、转弯限制、绕行道、普通的或受欢迎的路线、速度限制、新街道、及与电子地图或电子地图的使用有关的任何其他信息。
在实施方式中,电子地图数据130被以多个缩放水平分成多个矢量地图图块,其中,每个地图图块对应于地理地图的一部分。例如,地图图块可以特定的缩放水平与地理地图的正方形区域相对应,或者与地理地图内的预定尺寸和位置的区域相对应。在实施方式中,每个地图图块内的部分电子地图数据可以紧凑、结构化的形式(诸如,Mapbox Inc.,旧金山,加利福尼亚的Mapbox矢量图块规范格式)组织。此外或可替换地,电子地图数据130可以包括多个地图图块集合。第一地图图块集合可以包括源自第一电子地图源数据集合的电子地图数据,而第二地图图块集合可以包括源自第二电子地图源数据集合的电子地图数据。
在实施方式中,地图图块包含描述地图上的要素的地图几何形状(诸如,点、线、和多边形)的数据。此外或可替换地,地图图块包含元数据,诸如道路名称、地名、门牌号、特征类型、以及其他属性。例如,与地理地图的一部分相对应的矢量地图图块中的电子地图数据可以包括表示地理地图的部分中要描述的道路、建筑物、水、停车场等的几何形状数据,以及所建议的标记及其他地物图像的放置的几何形状。地图图块还可以包括与每个要素(诸如,可作为标记渲染在数字地图上的名称)对应的元数据。此外或可替换地,元数据包括指示地图图块所对应的地理地图的部分的数据。例如,元数据可以包括指示地图图块的一个或多个坐标或地图图块的一个或多个分界线的数据。此外或可替换地,元数据包括指示要显示地图图块的缩放水平的数据。此外或可替换地,元数据指示地图图块的至少一部分是否在水体(诸如,湖、海洋、河等)内。
在实施方式中,电子地图数据被进一步组织到多个数据层中。电子地图数据可以描述多个地图要素,诸如,建筑物、水、道路等。地图要素可以被分组到多个数据层中。例如,“道路”数据层可以包括诸如,街道、桥、公路、小路等的地图要素。作为另一个实例,“水”数据层可以包括诸如,河、湖、海洋、运河等的地图要素。
在实施方式中,当客户端请求时,渲染地图图块,类似网络浏览器或移动式应用。可通过客户端地图应用或服务器计算机上的渲染库执行渲染。示例性渲染库包括但不限于:可购自加利福尼亚,旧金山,Mapbox,Inc.,的Mapbox GL JS、Mapbox iOS SDK、MapboxAndroid SDK、Mapbox GL本体渲染器、或通过Mapbox API。
在一个实施方式中,遥测数据135是经由软件开发工具包(SDK)中包含的应用开发者用于将电子地图集成并包含在应用中的函数调用从移动计算设备(诸如,移动计算设备145)获得或接收的数字数据。如通过虚线示出的,遥测数据135可被以临时方式存储,并且在作为聚集的遥测数据140存储之前按如下论述处理。
遥测数据可以包括基于GPS信号的移动设备位置信息。例如,遥测数据135可以包括一个或多个数字存储事件,其中每个事件包括多个事件属性值。遥测事件可以包括:会话开始、位置报告、速度和开头报告(heading report)、或包含停留时间加上位置的访问事件。遥测事件属性可以包括移动设备的随后当前位置(then-current position)的纬度-经度值、会话标识符、实例标识符、应用标识符、设备数据、连接性数据、浏览数据、和时间戳。
服务器计算机105从移动计算设备(诸如,移动计算设备145)接收遥测数据。遥测数据可以为遥感探测的形式。遥感探测是移动计算设备(诸如,移动计算设备145)的位置的单个指示。遥感探测包括收集遥感探测时指示移动计算设备的位置的值。遥感探测可以包括收集探测时经度、纬度、仰角的值和/或地理空间数据的任何其他形式。在一些实例中,遥感探测与电子地图没有关联,使得如服务器计算机105从移动计算设备145接收的遥感探测还不具有电子地图数据130内的指定位置。在这些实例中,遥感探测的位置数据处于原始GPS数据的形式。所接收的遥感探测可以存储在数据库120中作为遥测数据135或者聚集的遥测数据140。许多遥感探测可以由服务器计算机105从单个移动计算设备145接收,并且许多遥感探测可以从许多不同的移动计算设备(未示出)接收。
在一个实施方式中,聚集的遥测数据140是已使用匿名化、分块、过滤、或其组合处理的遥测数据135。匿名化可以包括去除识别特定移动设备或者人的任何数据。分块可以包括将相关遥测数据的连续集合分割成表示沿着路线行进的部分的不同的段或块。例如,可以在从约翰的家驾驶到约翰的办公室期间收集遥测数据。分块可能会将遥测数据的连续集合划分成多个块使得约翰的行程可以是从约翰的家到点A,从点A到点B的单独行程,以及从点B到约翰的办公室的另一单独行程而非组成一个连续的轨迹。分块还可以去除起点、端点或使其模糊,或者以另外的方式将遥测数据划分成任何大小。过滤可以去除不一致的或者不规则的数据,删除缺乏充分的数据点的行程,或者由于任何原因将任何类型或部分数据排除在外。一旦处理,将聚集的遥测数据140以关联于与电子地图数据130有关的一个或多个图块的方式存储。聚集的遥测数据140可以存储任何时间量,诸如,一天、一周、或更长。各种应用或功能可以根据需要进一步处理聚集的遥测数据140。
在一个实施方式中,移动计算设备145是能够向服务器计算机105提供地理空间数据的任何移动计算设备,诸如,膝上计算机、手持计算机、可穿戴计算机、蜂窝或移动电话、个人数字助理(PDA或平板电脑)。在一些实施方式中,移动计算设备145是车载导航设备或者其他具有GPS功能的设备。尽管在图1中描述了单个移动计算设备,但任意数量的移动计算设备可以存在并向服务器计算机105提供位置数据。每个移动计算设备145通过包括LAN、WAN、一个或多个互连网络(诸如,公共互联网)、蜂窝网络、或公司网络的任意组合的无线网络连接165通信连接到服务器计算机105。
使用GPS收发器150将移动计算设备145通信连接到GPS卫星160。GPS收发器150是移动计算设备145用于从GPS卫星160接收信号的收发器,GPS卫星广泛地表示移动计算设备可以从其接收信号用以经由三角测量计算分解为纬度-经度位置的三个以上的卫星。
移动计算设备145还包括由移动计算设备用于与其他设备无线通信的无线网络接口159。具体地,无线网络接口159用于建立至服务器计算机105的无线网络连接165。无线网络接口159可以使用WiFi、WiMAX、蓝牙、Zigbee、蜂窝标准或者其他网络。
移动计算设备145还包括图1中未描述的其他硬件元件,诸如一个或多个输入设备、存储器、处理器等等。移动计算设备145也包括应用、软件、以及其他可执行指令以便于本文中描述的实施方式的各个方面。这些应用、软件、以及其他可执行指令可以由用户、所有者、制造商、或与移动计算设备相关的其他实体安装。
在服务器计算机105中,映射应用110提供例如使用SDK157的客户端地图应用155可以访问的API 112以向客户端地图应用155提供电子映射。具体地,映射应用110包括编程或被配置为执行电子映射所需的各种后端功能的程序指令,包括但不限于:向移动计算设备发送电子地图数据,从移动计算设备接收遥测数据135,处理遥测数据以生成聚集的遥测数据140,从数据提供商接收电子地图源数据125,处理电子地图源数据125以生成电子地图数据130,以及本文中描述的实施方式的任何其他方面。映射应用110包括编程或被配置为使用电子地图数据130、遥测数据135、聚集的遥测数据140和/或数据库120中或从移动计算设备145接收的任何其他数据确定缺失地图要素的缺失要素检测指令115。
根据一个实施例,本文所述的技术通过一个或多个专用计算设备来实施。例如,服务器计算机105和移动计算设备145可以是配置为专用计算设备的计算机设备。专用计算设备可以是硬连线的以执行技术,或者可以包括数字电子设备,诸如,持久编程以执行技术的一个或多个专用集成电路(ASIC)或现场可编程门阵列(FPGA),或者可以包括编程以依据固件、存储器、其他存储器、或组合中的程序指令执行技术的一个或多个通用型硬件处理器。这样的专用计算设备还可以组合自定义硬连线逻辑、ASIC或自定义编程以实施该技术的FPGA。专用计算设备可以是台式计算机系统、便携式计算机系统、手持设备、网络设备或并入硬连线和/或程序逻辑以实施该技术的任何其他设备。
图2示出了可以实现实施方式的计算机系统。计算机系统200包括总线202或用于传输信息的其他通信机构,以及与总线202连接的用于处理信息的硬件处理器204。硬件处理器204可以是例如通用微处理器。
计算机系统200还包括连接至总线202的用于存储由处理器204执行的信息和指令的主存储器206,例如,随机访问存储器(RAM)或其他动态存储器件。主存储器206还可以用于存储在执行指令期间由处理器204执行的临时变量或其他中间信息。当被存储在处理器204可访问的非临时性存储介质中时,这样的指令使得计算机系统200成为被自定义为执行该指令指定的操作的专用机器。
计算机系统200进一步包括连接到总线202用于存储供处理器204的静态信息和指令的只读存储器(ROM)208或其他静态存储设备。提供存储设备210(诸如,磁盘或光盘)并连接到总线202用以存储信息和指令。
计算机系统200可以经由总线202连接到显示器212(诸如,LCD屏幕、LED屏幕、或触摸屏)用于向计算机用户显示信息。可以包括字母数字和其他按键、按钮、鼠标、触摸屏、或者其他输入元件的输入设备214连接到总线202用以向处理器204传送信息和命令选择。在一些实施方式中,计算机系统200还可以包括光标控制器216,诸如,鼠标、跟踪球、或光标方向键用以向处理器204传送方向信息和命令选择并用以控制显示器212上的光标移动。光标控制216通常在两个轴(第一轴(例如,x)和第二轴(例如,y))上具有允许该设备指定平面中的位置的两个自由度。
计算机系统200可使用定制硬连线逻辑、一个或多个ASIC或FPGA、固件和/或程序逻辑实施本文中所描述的技术,该程序逻辑与计算机系统组合使得或将计算机系统200编程成为专用机器。根据一个实施例,响应于处理器204执行包含在主存储器206中的一个或多个指令的一个或多个序列,由计算机系统200执行本文中的技术。这样的指令可以从其他存储介质(诸如,存储设备210)被读入到主存储器206中。包含在主存储器206中的指令序列的执行使得处理器204执行本文所述的过程步骤。在可替代实施方式中,可以使用硬连线电路替换软件指令或者可以使用与软件指令组合的硬连线电路。
如本文所利用的术语“存储介质”指的是存储了使得机器以指定方式运行的数据和指令的任何非临时性介质。这样的存储介质可以包括非易失性介质和易失性介质。非易失性介质例如包括诸如存储设备210的光盘或磁盘。易失性介质包括动态存储器,诸如,主存储器206。存储介质的常见形式包括例如,软盘、柔性盘、硬盘、固态驱动器、磁带或任何其他磁数据存储介质、CD-ROM、任何其他光数据存储介质、具有孔图案的任何物理介质、RAM、PROM和EPROM、FLASH-EPROM、NVRAM、任何其他存储器芯片或盒子。
存储介质与传输介质不同但是可以结合传输介质使用。传输介质参与在存储介质之间传输信息。例如,传输介质包括同轴电缆、铜线和光纤,包括包含总线202的电线。传输介质也可以采取声、无线电、或光波的形式,诸如在无线电波和红外数据通信期间生成的那些,诸如,WI-FI、3G、4G、蓝牙、或者遵循任何其他无线网络标准的无线通信。
在将一个或者多个指令的一个或者多个序列承载至用于执行的处理器204时可涉及各种形式的介质。例如,可以在远程计算机的磁盘或固态驱动器上初始地承载指令。远程计算机可以将指令加载到其动态存储器中并利用调制解调器通过电话线发送该指令。计算机系统200的本地调制解调器可以接收电话线上的数据并利用红外发送器将数据转换为红外信号。红外检测器可以接收在红外信号中携带的数据以及适当的线路可以将该数据置于总线202上。总线202将数据承载至主存储器206,处理器204从该主存储器检索并执行指令。在处理器204的执行之前或之后,由主存储器206接收的指令可选地存储在存储设备210上。
计算机系统200还包括连接到总线202的通信接口218。通信接口218提供连接到网络链路220的双向数据通信,该网络链路连接到本地网络222。例如,通信接口218可以是综合业务数字网(ISDN)卡,电缆调制解调器,卫星调制解调器,或向对应电话线类型提供数据通信连接的调制解调器。作为另一个实例,通信接口218可以是向兼容LAN提供数据通信连接的局域网(LAN)卡。无线链路也可以被实施。在任何这样的实施中,通信接口218发送和接收承载表示各种信息的数字数据流的电、磁或光信号。
网络链路220通常通过一个或多个网络向其他数据设备提供数据通信。例如,网络链路220可以提供通过本地网络222至主计算机224或至由互联网服务提供商(ISP)226运行的数据设备的连接。ISP 226进而通过现在通常称为“互联网”的全球分组数据通信网络228提供数据通信服务。本地网络222和互联网228都使用承载数字数据流的电、电磁或光信号。承载数字数据来往于计算机系统200的通过各个网络的信号以及在网络链路220和通过通信接口218的信号是传输介质的示例形式。
计算机系统200可以通过网络、网络链路220和通信接口218发送消息和接收包括程序代码的数据。在互联网实例中,服务器230可以通过互联网228、ISP 226、本地网222和通信接口218传送所请求的用于应用程序的代码。接收到的代码在其被接收时可以由处理器204执行,并存储在存储设备210或其他非易失性存储器中用于稍后执行。
在一个实施方式中,缺失要素检测指令115包括用于从遥测数据135、聚集的遥测数据140、和/或存储在数据库120中或者从移动计算设备145提供至服务器计算机105的任何其他数据识别缺失地图要素的指令。缺失要素检测指令115可以包括在图3至图6中示出并在下面更详细描述的过程中的描述的任何指令。
图3示出了由所接收的遥感探测定义缺失地图要素的过程。在各种实施方式中,在过程300中描述并在图3至图6中示出的操作可以由服务器计算机105或者如参照图1更详细描述的其组件在编程中实现。例如,可以根据如参照图3至图8描述的缺失要素检测指令115由映射应用110执行过程300的操作。在一些实例中,服务器计算机105执行指令或指令序列的集合(即缺失要素检测指令115)以控制服务器计算机105的功能元件以便执行如下所述的功能。
此外或可替换地,服务器计算机105可以使用专用硬件执行如下所述的功能的方面。在一些实施方式中,缺失要素检测指令115可以指示服务器计算机105通过数据库接口117与数据库120交互以执行如下所述的功能。在一些实施方式中,移动计算设备145执行如下所述的一个或多个功能。
在305,利用缺失要素检测指令115执行映射应用110的服务器计算机105通过无线网络连接165接收遥感探测。每个遥感探测包括收集探测数据时移动计算设备(诸如,移动计算设备145)的位置。可以由移动计算设备145基于通过GPS收发器150从GPS卫星160接收的信号确定遥感探测中包括的移动计算设备145的位置。在一些实例中,可以通过移动计算设备145与无线网络连接165(诸如,WiFi网络、LAN、WAN、一个或多个互连网络(诸如,公共互联网)、蜂窝网络、或公司网络)通信确定移动计算设备145的位置。包括在遥感探测中的移动计算设备145的位置可以包括纬度、经度、时间、仰角、或任何其他地理空间数据的值。
虽然系统100示出一个移动计算设备145与服务器计算机105通信,可以存在一个以上的移动计算设备145与服务器计算机105通信。在305处接收的遥感探测可以来自单个移动计算设备145或者多个移动计算设备。可以在接收时将在305处接收的遥感探测添加到数据库120,或者所接收的遥感探测可能先前已存储在数据库120中并从数据库进行检索。
在305处接收的遥感探测可以是由移动计算设备145在一时间间隔收集的遥感探测。例如,在305处接收的遥感探测可以由移动计算设备145从12:00-1:00pm收集,并且因此反映移动计算设备145在那个小时的过程中的位置。在其他实例中,在305处,接收遥感探测的时间间隔可以是一天、一周、一个月、或任何其他时间长度。在305处,服务器计算机105可以在一时间间隔内中继续接收遥感探测,之后前进至310。在305处,服务器计算机105可以在一时间间隔内继续接收遥感探测直至其达到阈值数量的遥感探测,在该点处其前进至310。遥感探测的阈值数量可以是跨多个地图图块的阈值数量,并且/或者可以对应于多个地图图块内的遥感探测的最小密度。
在305处,接收遥感探测的时间间隔到期之前,或者在接收到阈值数量的遥感探测之前,可以将在305处接收的遥感探测存储在数据库120中作为遥测数据135。在305处在一时间间隔内接收的遥感探测可以一起分组并在310处使用之前作为遥测数据135的子集存储。例如,如果服务器计算机105在305处从一天中的12:00am-12:00pm接收遥感探测,在12:00am开始收集的遥感探测可以临时分组到一起并且在310处一起使用之前作为遥测数据135或者遥测数据135的子集存储。在305处收集的并在310处聚集之前临时分组到一起的遥感探测可以表示跨电子地图的多个地图图块的位置。
在310中,利用缺失要素检测指令115执行映射应用110的服务器计算机105聚集在305处接收的遥感探测。聚集在305处接收的遥感探测包括从探测中包含的位置数据确定每个遥感探测在现有电子地图中所处的部分。例如,服务器计算机105可以识别与在305处接收的遥感探测相关联的位置。然后,通过数据库接口117访问数据库120,服务器计算机105访问电子地图数据130并识别地图图块和电子地图内与遥感探测的位置相对应的位置。
在310处,来自305的全部所接收的遥感探测根据它们相应的地图图块被分配和聚集。在305处接收的遥感探测还可以其他方式被分组到一起。例如,在305处接收的所有遥感探测可以通过它们被收集的时间间隔识别,并且在310处的聚集期间继续利用该时间间隔识别。参照图4更详细地描述聚集遥感探测的过程。
在315中,利用缺失要素检测指令115执行映射应用110的服务器计算机105识别与现有地图要素相对应的遥感探测。可以针对每个地图图块单独执行识别与现有地图要素相对应的遥感探测。在一些实施方式中,识别遥感探测可以针对位于每个地图图块内的遥感探测的集合单独执行或者可以使用给定地图图块的全部聚集的遥感探测执行。例如,特定地图图块的聚集的遥感探测可以基于它们与现有电子地图图块的现有地图要素的关系、基于收集遥感探测的一个时间周期或一组时间周期、或其他类型的分组为被分成子组。
现有地图要素的位置存储在电子地图数据130中。现有地图要素是在305之前已被识别并包含在电子地图中的要素。参照图7A至图7E和图8A至图8C更详细地示出和描述地图要素的实例。现有地图要素可以通过点、线、多边形、或电子地图中的任何N维空间表示。因此,每个现有地图要素占据由地图要素表示的物理对象的电子地图内的所占空间(footprint)相对应的N维表面。每个地图要素均包括表示围绕其占据的表面积、点或线的地图要素的周边的边界。例如,建筑物占据电子地图中与建筑物所占空间相对应的2维多边形。建筑物所占空间具有与建筑物的地图要素的边界相对应的周边。在另一实例中,路可以占据电子地图中的线。在该实例中,地图要素的“边界”与电子地图中的线相同。类似地,由电子地图中的点表示的地图要素将具有就是点本身的“边界”。
为了确定在305处收集的遥测数据是否对应于现有地图要素,服务器计算机105将如在310处确定的电子地图中的遥感探测的位置与现有地图要素占据的位置和区域相比较。在一些实例中,缓冲区形成在现有地图要素周围。缓冲区是通过向现有地图要素的周边增加距离从而形成延伸超出现有地图要素所占据的所占空间的表面积而形成的。向周边增加的距离可以取决于现有地图要素的类型。例如,向现有地图要素的周边增加的距离可以与现有地图要素的大小成比例。在实例中,如果现有地图要素是六车道公路,则其缓冲区将大于单个居住区街道。在实例中,如果现有地图要素是每个方向上有四个车道的8车道公路,那么向公路的边界增加的周边可以在25米与30米之间。缓冲的大小还可以取决于特定地理位置的特征基础设施。例如,美国的公路的缓冲可能不同于丹麦的公路的缓冲。在其他实例中,缓冲大小可以取决于地图图块内的遥感探测的数量和/或遥感探测的密度。例如,在具有大量遥感探测的地图图块中,缓冲可以更小以反映地图图块中位置数据的更高准确度。
如果遥感探测位于现有地图要素占据的区域内,那么服务器计算机105确定遥感探测与现有地图要素相关联。例如,如果道路已经在电子地图内,则道路可能占据电子地图中的矩形区域。如果在305处收集的遥感探测包含指示遥感探测位置在现有道路内的位置数据,那么遥感探测305与道路的现有地图要素相关联。如果道路包括缓冲区,并且遥感探测位于道路的缓冲区内但位于道路周边的外部,那么遥感探测还将被理解为与道路相关联。因此,将每个遥感探测与现有地图要素比较需要比较它们相应的位置并确定探测是否在现有地图要素占据的区域内。
在315处,将在310处聚集的所有遥感探测的位置与所有的现有地图要素比较以确定每个遥感探测是否与现有地图要素相关联。因此,遥感探测分支成子组,一个子组的遥感探测与任何现有地图要素没有关联,并且第二子组的遥感探测位于现有地图要素内。
在320处,利用缺失要素检测指令115执行映射应用110的服务器计算机105去除如在315处识别的与现有地图要素相对应的遥感探测。去除的遥感探测可以存储在数据库120中作为遥测数据135或者聚集的遥测数据140。针对电子地图中的每个地图图块,在每个地图图块内执行去除与现有地图要素相对应的遥感探测。
在325处,用缺失要素检测指令115执行映射应用110的服务器计算机105利用剩余遥感探测生成密度图。可在任意数量的包含剩余遥感探测的地图图块上执行利用剩余遥感探测生成密度图。在一些实施方式中,利用剩余遥感探测生成的密度图跨越多个地图图块。剩余遥感探测是在305处接收的在320处未去除的全部遥感探测。剩余遥感探测表示作为指示缺失的地图要素的候选者的遥感探测,因为它们示出与现有地图要素(诸如,现有道路、公路、路等)没有关联的用户移动。例如,剩余遥感探测可以对应于与现有电子地图中不存在的用户行进的道路。
在一些实施方式中,为了生成密度图,服务器计算机105利用先前收集的附加遥感探测聚集剩余遥感探测。服务器计算机105用包含与现有地图要素没有关联的遥感探测的所有地图图块形成密度图。聚集的遥感探测得到的密度图给出跨越一个或多个地图图块的候选缺失要素探测的密度。在一些实例中,密度图可以由包含与电子地图的部分的现有地图要素没有关联的遥感探测的所有地图图块形成。例如,可以针对电子地图中一个城市、一组城市、或一个国家的地图图块生成密度图。在其他实例中,可以针对电子地图的所有地图图块生成密度图。参照图5更详细地描述了生成密度图的该过程,并且参照图7D以图形表示示出。
在330处,利用缺失要素检测指令115执行映射应用110的服务器计算机105识别缺失群集。缺失群集是密度图中与现有地图要素没有关联的剩余遥感探测的分组并指示潜在缺失的地图要素。可以跨越325的密度图中任意数量的地图图块执行识别缺失群集。缺失群集中的遥感探测的高密度表示用户的通过电子地图的相应区域的大量移动。例如,缺失群集可以是指示现有电子地图中不存在的道路的电子地图中的用户移动的高密度矩形区域。密度图中的其他遥感探测可能不是缺失群集的一部分或者缺失地图要素的结果,并且相反可能是由不准确的GPS数据和由诸如移动计算设备145的移动计算设备向服务器计算机105提供的位置测定中的常规噪声产生的遥感探测。通过设置用于将遥感探测的集合识别为缺失群集的阈值密度,服务器计算机105可以将由噪声得到的探测与指示缺失的地图要素的探测之间进行区分。
使用在325处生成的密度图,服务器计算机105可以选择候选缺失群集的阈值密度。阈值密度用于滤出密度图中作为不准确的GPS计算、异常的用户行为、和剩余遥感探测的位置数据中的噪声的结果的遥感探测。遥感探测密度在阈值以上的遥感探测的群集被识别为缺失群集。如在330处确定的密度图中不是所识别缺失群集的部分的遥感探测从过程300中去除,但在330处可以在去除这些遥感探测之后与遥测数据135或聚集的遥测数据140一起存储在数据库120中。参照图6更详细地描述识别缺失群集的过程,并参照图7D以图形表示示出。
在335处,利用缺失要素检测指令115执行映射应用110的服务器计算机105确定所识别缺失群集的几何形状。可以跨如在325中确定的包括缺失群集的任意数量的地图图块执行确定所识别缺失群集的几何形状。可以基于最佳适应算法(best fit algorithm)计算缺失群集的几何形状,其中缺失群集的周边被识别出并基于周边计算出最佳适应形状。周边可以通过首先将遥感探测连接成直线而产生。所连接的遥感探测可以在彼此的阈值距离内。在一些实例中,群集形成多边形。可替换地,缺失群集形成矩形。每个缺失群集在335处其几何形状被定义之后,将在电子地图中具有与其周边及其在地面上所占据的区域相对应的分配的周边和所占空间区域。可以在缺失群集的分配几何形状并入现有电子地图中之前对其进行手动检查。参照图7D和图7E用图形表示示出该过程。
在340处,利用缺失要素检测指令115执行映射应用110的服务器计算机105定义缺失地图要素。在335处确定缺失群集的几何形状之后,将定义缺失地图要素并在检查之后并入现有电子地图。例如,在340处,在335处的候选缺失群集可以通过单独的检查算法进行检查或者手动查看以确定候选缺失群集实际上是否与缺失地图要素相对应。该检查可以包括参考电子地图源数据125(诸如,卫星图)。例如,卫星图可以指示在335处发现的候选缺失群集的区域中的道路建造,指示候选缺失群集反映自从收集来自电子地图源数据125的卫星图像的日期起建造的新道路。在其他实例中,检查算法可以确定候选缺失地图特征是否与候选缺失地图要素周围区域中的现有地图特征的类型匹配。例如,检查算法可以检查具有住宅道路的区域中的候选缺失地图要素是否也是住宅道路,并且以非附近的连接的公路标记区域中建议的公路候选缺失地图要素。候选缺失群集的手动查看可以包括请求从物理附近地区中的人进行地面查看。
在一些实例中,在将缺失群集完全并入之前的检查包括确定缺失群集是否是完全新的地图要素的检查,或者缺失群集是否是重新对准的现有地图要素的检查。该检查可以包括手动检查,或者可以包括在新的地图要素与指示335的缺失群集事实上为重新对准的现有要素的现有地图要素之间建立阈值距离。例如,335的所识别缺失群集可以是电子地图中的现有道路,其实际上在电子地图中与先前指示并存储在电子地图数据130中不同的位置。该差异可以由用于生成地图要素的不同的源产生。例如,缺失群集是由表示实际用户移动的遥测数据识别,然而现有地图要素可能基于卫星图生成,其由于定位误差而将地图要素错误地放置在电子地图中。用图形表示示出未对准的地图要素和并入缺失群集之前的检查并参照图8A至图8C更详细地描述。
在将缺失群集完全并入之前的检查还可以包括确定所识别缺失群集是否与水路相关联,并且因此表示水上面用户和移动计算设备的移动。例如,缺失群集可以指示用户行进的渡运航线,这导致跨越水体识别缺失群集和缺失地图要素。针对这种情况的检查包括确定所识别缺失地图要素的一部分是否位于水地图图块内。与地图图块相关联的元数据将会指示地图图块是否与水体相关联。如果所识别的缺失群集事实上是水路,则缺失群集作为水上航线并入,而非电子地图中对象(诸如,道路或公路)。
在检查之后,缺失群集可以完全并入现有电子地图中,并被添加到数据库120的电子地图数据130中。如果缺失群集被识别为现有地图要素的重新对准的要素,通过并入重新对准的地图要素并去除先前未对准的地图要素更新电子地图。这用图形表示示出并参照图8C更详细地描述。
图4示出了用于聚集所接收的遥感探测的示例性过程400。过程400可以是参照图3更详细地描述的过程300的步骤310的实施方式。首先,在405处,利用缺失要素检测指令115执行映射应用110的服务器计算机105检索描述地图图块的数据。将描述地图图块的数据与现有电子地图一起存储在电子地图数据130中的数据库120中。跨越与在305处接收的遥感探测的位置相对应的任意数量地图图块执行过程400。
如参照图1描述的,电子地图数据130以多个缩放水平分成多个矢量地图图块。从电子地图数据130中检索的图块的缩放水平可以是整个过程300使用的相同的缩放水平。在每个缩放水平中,地图图块包括电子地图的相应区域中的地理区域集合。可以根据地理区域中基础设施的密度调整整个过程300使用的缩放水平。例如,如果地理区域具有高密度基础设施,其可具有更高的缩放水平以提供地图要素的足够粒度。
在410处,利用缺失要素检测指令115执行映射应用110的服务器计算机105识别与在305处接收的每个遥感探测相对应的地图图块。因此,每个遥感探测内的位置数据用于给出每个遥感探测现有电子地图中(具体地,现有电子地图的地图图块中)的相应位置。识别与每个遥感探测相对应的地图图块可以包括搜索由地图图块组成的空间数据结构,诸如,优化的R-树、B-树、四树、网格结构、k-d树、范围树、优先级搜索树、或可用于索引多维数据(诸如,地理坐标)的任何其他数据结构。例如,在R-树形搜索中,可以通过地图图块的R-树进行的距离搜索确定遥感探测的位置。可以针对块载入遥感探测数据(bulk-loadingtelemetry probe data)进一步优化地图图块的空间数据结构。将地图图块信息作为电子地图数据130的一部分存储。
在415处,利用缺失要素检测指令115执行映射应用110的服务器计算机105将每个遥感探测存储在它们的所识别地图图块中。例如,将在305处接收的位于相同地图图块中的不同位置处的多个遥感探测与相应地图图块的识别一起作为聚集的遥测数据140进行存储。在继步骤415之后,在305处收集的所有的遥感探测位于现有电子地图的地图图块中并作为聚集的遥测数据140存储。
图5示出了利用剩余遥感探测生成密度图的过程。过程500可以是参照图3更详细地描述的过程300的步骤325的实施方式。在一些实施方式中,通过聚集与电子地图的相同的地图图块相关联的遥感探测的多个集合生成特定地图图块的密度图。例如,如果在特定时长(例如,1天)内所取的遥测数据的集合未包括确定图块是否包括缺失地图要素的足够的数据,则可以将多天内相同的地图图块的遥测数据聚集在一起生成密度图。过程500描述该实施方式。可以跨越遥测数据与现有地图要素没有关联的任意数量的地图图块执行过程500。
在过程300中,在310处,每个遥感探测均被分配有电子地图中的相应地图图块,并存储在地图图块中,如以上参照图3和图4描述的。在505处,利用缺失要素检测指令115执行映射应用110的服务器计算机105收集遥测数据与现有地图要素没有关联的所有的图块。每个图块可以分配有一个计数,其指示与位于图块中的现有地图要素没有关联的遥感探测的数量;该计数可以与图块存储在一起。在505处,服务器计算机105可以收集非零计数的任何地图图块。在一些实例中,在505处收集的图块会需要非零阈值以上的计数。
在510处,利用缺失要素检测指令115执行映射应用110的服务器计算机105按接收原始遥测数据的日期(诸如,一小时、一天、一周、一个月或任何其他单位时间)存储所收集的图块。具有候选缺失要素遥感探测数据的地图图块的集合通过收集遥测数据的共享的时间间隔存储并链接在一起。这些地图图块可以一起存储在数据库120中作为遥测数据135和/或聚集的遥测数据140。
在515处,利用缺失要素检测指令115执行映射应用110的服务器计算机105将新收集的图块与在之前的时间间隔收集的图块聚集在一起。具体地,将在510处存储的新遥感探测数据添加到在先前收集周期(例如,在步骤505和510的先前迭代中)期间收集的遥感探测数据。在515处聚集的图块可以包括在特定时间间隔收集的图块。例如,用于形成聚集的图块的图块可以是在最近收集的图块之前的30天的窗口内收集的图块。在一些实施方式中,可以调整聚集先前收集的图块的时间间隔以确保聚集的图块的每地图图块均具有至少最小数量的遥感探测。
在一些实例中,将在先前的时间间隔收集的地图图块存储在一起并按他们共同跨越的时间间隔进行识别。例如,在先前的时间间隔聚集的图块可以跨越先前30天。在步骤515之后,更新在先前的时间间隔聚集的图块以包括新收集的地图图块。
将新收集的图块与在先前的时间间隔收集的图块聚集在一起包括通过添加聚集的地图图块的计数聚集所聚集的收集图块的每个地图图块中的遥感探测。例如,如果新的地图图块包含5个遥感探测,并且在先前的时间间隔聚集的图块在该相同的地图图块中总共具有300个遥感探测,则所得到的聚集的地图图块将具有305个遥感探测的计数。所聚集的收集图块将全部具有非零计数,或者非零阈值以上的计数,这意味着所聚集的收集图块中的每个遥测图块包含至少一个或者至少非零阈值以上的数量的与现有地图要素没有关联的遥感探测。
在520处,利用缺失要素检测指令115执行映射应用110的服务器105由所聚集的图块生成密度图。密度图可以跨越单个地图图块、多个地图图块、以及地图图块本身内的区域测量遥感探测密度。例如,密度图可以确定图块跨整个地图图块具有3个探针/米的密度以及相同图块内的区域具有10个探针/米的密度。如参照图3和图6更详细地论述的,然后在330中使用在520处生成的密度图以识别缺失群集。
图6示出用于识别缺失群集的过程600。过程600可以是参照图3更详细描述的过程300的步骤330的实施方式。
在605处,利用缺失要素检测指令115执行映射应用110的服务器计算机105选择电子地图的区域的阈值密度。阈值密度可以取决于如由在325处生成的密度图确定的区域的遥感探测密度。地图图块的阈值密度可以与跨越几个相邻地图图块计算的平均遥感探测密度成比例。阈值密度可以与区域中聚集的遥感探测中的遥感探测的总数成比例。例如,阈值可能需要地图图块具有与现有地图要素没有关联的5个以上的遥感探测以便被识别为具有缺失群集。在具有大量遥测数据的区域中,阈值可以高于具有较少遥感探测的区域。例如,在具有高密度遥感探测的区域中,每个地图图块的阈值可以为15个遥感探测。
在610处,利用缺失要素检测指令115执行映射应用110的服务器计算机105消除具有低于阈值的遥测数据的图块。因此将低于阈值的图块从先前在520处用于生成密度图的图块的收集中去除,并且当确定缺失群集时不使用去除的图块中的遥测数据。消除的图块可以继续存储在数据库120中在先前时间间隔聚集的图块收集中。将遥测数据和地图图块后续添加到聚集的图块收集可能会最终使遥感探测的密度增加为高于605处的阈值,使得所消除图块然后可以用于确定缺失群集。
在615处,利用缺失要素检测指令115执行映射应用110的服务器计算机105将缺失点分组到缺失群集中。缺失点是对应于缺失的地图要素的单独的遥感探测。缺失群集是缺失点的分组,使得缺失群集中存在高密度的缺失点。可以计算地图图块中缺失点的高密度区域的中心,并用于定义缺失群集。缺失群集可以是线、多边形、或具有区域和周边的任何其他几何形状。在335处计算在615处定义的缺失群集的几何形状,并且然后在340处用于定义缺失的地图要素。
图7A是现有街道图的图形表示。现有电子地图700可以存储在数据库120中作为电子地图数据130,并且使用如上参照图3至图6描述的过程300用缺失地图要素进行更新。在该实例中,现有电子地图700对应于单个地图图块。现有电子地图700包含现有街道705,现有街道由周边和其在现有电子地图700中占据的所占空间区域限定。现有电子地图700还包含现有地图要素707a、707b、707c和707d,它们是电子地图700中的所有建筑物。现有地图要素707a-d在现有电子地图700中各自具有相应周边和所占空间区域。现有地图要素707a-d对应于整个现有电子地图700中阻止用户通过的建筑物,而现有街道705提供通过其用户可以穿过现有地图700的明确的路径。现有街道705和现有地图要素707a-d两者均作为电子地图数据130存储在数据库120中的现有电子地图700中。现有地图要素707a-d和现有街道705可以存储在将它们链接到它们在现有电子地图700中相应的地图图块的空间数据结构中。
图7B是覆盖在现有街道图上的遥测数据的图形表示710。包括遥测数据点715a、715b、715c、和715d的覆盖的遥测数据示出服务器计算机105执行过程300的步骤305至310的结果。如图7B所示,遥测数据点715b对应于现有街道705上的用户和移动计算设备的移动。在遥测数据715c中示出的点与现有地图要素不对应,而遥测数据715d在现有地图要素707b的所占空间内。遥测数据点可以是如关于图5描述的将在新的时间间隔内接收的遥感探测与在一个或多个先前时间间隔内接收的遥感探测聚集在一起的结果。
图7C是识别与现有地图要素相对应的遥感探测的图形表示720。表示720示出了服务器计算机105执行过程300的步骤305至315的结果。如图7C所示,为现有街道提供缓冲区,其是被添加到现有街道705的周边以形成缓冲街道725a和725b的距离。缓冲区现在包括已经在现有街道705内的遥测数据点,而且还包括在现有街道705的周边外部但是在缓冲街道725a和725b内的遥测数据点(诸如,点715a)。在将缓冲添加到现有街道705之后,遥测数据715c继续在现有地图要素的区域之外。因此,遥测数据715a和缓冲街道725a和725b内的全部遥感探测均与现有地图要素相关联,而遥测数据715c被确定为与现有地图要素没有关联。
图7D是所识别缺失群集的图形表示730。表示730示出了服务器计算机105执行过程300的步骤305至330的结果。已将与现有街道705(即,在图7C中的缓冲街道725a和725b内)相对应的遥感探测从聚集的遥感探测集合中去除。使用剩余遥测数据715c生成密度图。遥测数据715c的密度高于阈值,导致缺失群集735的识别。如图7D中所示,缺失群集735与如图7A中所示的现有电子地图的任何现有地图要素都不对应。继如上参照图3至图6所述的过程300之后,可以为缺失群集735提供几何形状并且可以将缺失群集并入现有电子地图。
图7E是用缺失街道更新的现有街道图的图形表示740。表示740示出了服务器计算机105执行过程300的步骤305至340的结果。具体地,在图7D中示出的缺失群集735已分配有矩形几何形状,并且并入现有电子地图内作为在图7A中示出的地图图块700中的缺失街道745。更新的电子地图现在反映缺失街道745。
如图7A至图图7E中所示,过程300能够基于所接收遥感探测的聚集和分析识别整个缺失地图要素。缺失街道745基于如由从移动计算设备收集的遥感探测指示的集体用户行为和移动通过现有电子地图700而识别。因此在不使用地面基础设施的情况下可以识别出缺失街道745,并且可以使用实时或接近实时用户行为(即,所接收的遥测数据715)更新和维护现有电子地图700。
图8A是现有街道图的图形表示800。现有地图800存储在数据库120中作为电子地图数据130。在该实例中,现有地图800表示单个地图图块。现有地图800包括现有街道805a和相交的现有街道805b。现有街道805a和805b可以通过它们的周边和它们在现有地图800中分别占据的所占空间区域限定在现有地图800内。现有街道805a和805b可以与其所在的相应地图图块一起存储在空间数据结构中。
图8B是识别与现有地图要素相对应的遥感探测的图形表示820。如图8B中所示的表示820示出服务器计算机105执行从305至315的过程300的结果。遥测数据820a和820b可以反映新的遥感探测与在先前时间间隔内收集的遥感探测聚集在一起以形成聚集的遥感探测集合。已将聚集的遥感探测集合的遥感探测的位置与现有地图要素(诸如,现有街道805a和805b)相比以识别与现有地图要素相对应的遥感探测。如图8B中所示,遥测数据820a和遥测数据820b的一部分与现有地图要素没有关联。如上参照图3所述,这些探测然后可以用于在325处生成密度图,在330处识别缺失群集,在335处确定缺失群集的几何形状并在340处定义缺失地图要素。
图8C是用重新对准的街道更新的现有街道图的图形表示830。如图8C中所示的表示830示出服务器计算机105执行从305至340的过程300的结果。在识别与遥测数据820a和820b相对应的缺失群集之后,如图8B中所示,矩形几何形状被分配给缺失群集以形成重新对准的街道835a和835b。具体地,在340处,在将所识别缺失群集并入现有电子地图800中之前,过程300将重新对准的街道835a识别为未对准的现有街道805b的重新对准。在识别重新对准的街道835a和835b之后,而非仅添加重新对准的街道835a和835b的缺失要素,将通过消除未对准的现有街道805b并用重新对准的街道835a和835b替换电子地图800中未对准的现有街道对现有电子地图800进行更新。
如本文中描述的,从移动计算设备收集的遥感探测数据提供用缺失的地图要素更新电子地图的信息源。使用遥感探测数据,识别与现有地图要素没有关联的用户的运动。这些不相关联的遥感探测然后用于确定现有电子地图内缺失要素的位置和形状。然后现有电子地图可以更新为包括缺失地图要素。
在前述说明书中,本发明的实施例已参照可以依实施而变化的多个特定细节进行了描述。因此,相应的规范和附图应被看作是示例性的,而不是限制性的。本发明范围的唯一和排他的指示,以及申请人意在保护的本发明范围是来自本申请公布的权利要求组的字面和等效范围,以这样的权利要求所公布的特定形式,包括任何随后的修改。
Claims (22)
1.一种用于识别电子地图中缺失的地图要素的方法,所述方法包括:
从多个移动计算设备中的每一个接收多个遥感探测,每个遥感探测包括在探测时移动计算设备的地理位置;
聚集所接收的多个遥感探测以获得聚集的遥感探测集合;
识别所述聚集的遥感探测集合中的遥感探测的子集,所述遥感探测的子集中的每个遥感探测对应于基于电子地图中所述遥感探测的地理位置的现有地图要素;
从所述聚集的遥感探测集合去除所识别的遥感探测的子集以获得剩余遥感探测集合;
生成所述剩余遥感探测集合的密度图;
识别所述密度图中的缺失群集,所述缺失群集包括在所述密度图中具有至少阈值密度的剩余遥感探测的子集;
确定由所识别的缺失群集形成的几何形状;以及
由所确定的几何形状定义缺失地图要素。
2.根据权利要求1所述的方法,其中,识别所述聚集的遥感探测集合中的遥感探测的子集,所述遥感探测的子集中的每个遥感探测对应于基于电子地图中所述遥感探测的地理位置的现有地图要素,进一步包括:
通过将距离添加至所述现有地图要素的周边在现有地图要素周围形成缓冲区;以及
将所述缓冲区中的遥感探测包含在所识别的遥感探测的子集中。
3.根据权利要求1所述的方法,其中,在第一时间间隔获得所述多个遥感探测。
4.根据权利要求1所述的方法,其中,生成所述剩余遥感探测集合的密度图包括:
将在第一时间间隔期间收集的剩余遥感探测集合与存储的在第二时间间隔期间收集的剩余遥感探测集合进行聚集;以及
基于在所述第一时间间隔和所述第二时间间隔期间的剩余遥感探测的聚集生成所述密度图。
5.根据权利要求1所述的方法,进一步包括:
至少部分基于所述区域中的遥感探测的数量选择所述密度图的区域的阈值密度。
6.根据权利要求1所述的方法,其中,所确定的由缺失群集形成的几何形状至少包括线。
7.根据权利要求1所述的方法,其中,所确定的由缺失群集形成的几何形状至少包括多边形。
8.根据权利要求1所述的方法,进一步包括:
检索描述地图图块的数据;以及
对于聚集的遥感探测集合中的每个遥感探测:
基于所述遥感探测的地理位置和描述地图图块的所述数据识别遥感探测所对应的地图图块;以及
将所述遥感探测存储在与所识别地图图块相关联的遥感探测的子集中。
9.根据权利要求1所述的方法,进一步包括:
确定由所识别缺失群集形成的几何形状是在所述电子地图中未对准的现有地图要素;以及
响应于所述确定,基于由所述缺失群集形成的几何形状调整所述电子地图中现有地图要素的位置。
10.根据权利要求1所述的方法,进一步包括:
确定由所识别缺失群集形成的几何形状位于所述电子地图中的水体中;以及
响应于所述确定,基于由所识别缺失群集形成的几何形状将水路路线添加到所述电子地图。
11.根据权利要求1所述的方法,进一步包括:
利用缺失的地图要素自动更新所述电子地图。
12.一种包含能够在处理器上执行的用于识别电子地图中缺失地图要素的计算机程序代码的非瞬时性计算机可读存储器,所述计算机程序代码用于:
从多个移动计算设备中的每一个接收多个遥感探测,每个遥感探测包括探测时移动计算设备的地理位置;
聚集所接收的多个遥感探测以获得聚集的遥感探测集合;
识别所述聚集的遥感探测集合中的遥感探测的子集,所述遥感探测的子集中的每个遥感探测对应于基于电子地图中所述遥感探测的地理位置的现有的地图要素;
从所述聚集的遥感探测集合中去除所识别的遥感探测的子集以获得剩余遥感探测集合;
生成所述剩余遥感探测集合的密度地图;
识别所述密度图中的缺失群集,所述缺失群集包括在所述密度图中具有至少阈值密度的剩余遥感探测的子集;
确定由所识别的缺失群集形成的几何形状;以及
由所确定的几何形状定义缺失地图要素。
13.根据权利要求12所述的计算机可读介质,其中,识别聚集的遥感探测集合中的遥感探测的子集,所述遥感探测子集中的每个遥感探测对应于基于电子地图中所述遥感探测的地理位置的现有地图要素,进一步包括:
通过将距离添加至所述现有地图要素的周边在现有地图要素周围形成缓冲区;以及
将所述缓冲区中的遥感探测包含在所识别的遥感探测的子集中。
14.根据权利要求12所述的计算机可读介质,其中,在第一时间间隔获得所述多个遥感探测。
15.根据权利要求12所述的计算机可读介质,其中,生成所述剩余遥感探测集合的密度图包括:
将在第一时间间隔期间收集的剩余遥感探测集合与存储的在第二时间间隔期间收集的剩余遥感探测集合进行聚集;以及
基于在所述第一时间间隔和所述第二时间间隔期间的剩余遥感探测的聚集生成所述密度图。
16.根据权利要求12所述的计算机可读介质,进一步包括:
至少部分基于所述区域中的遥感探测的数量选择所述密度图的区域的阈值密度。
17.根据权利要求12所述的计算机可读介质,其中,由缺失群集形成的所确定的几何形状至少包括线。
18.根据权利要求12所述的计算机可读介质,其中,由缺失群集形成的所确定的几何形状至少包括多边形。
19.根据权利要求12所述的计算机可读介质,进一步包括:
检索描述地图图块的数据;以及
对于聚集的遥感探测集合中的每个遥感探测:
基于所述遥感探测的地理位置和描述地图图块的所述数据识别遥感探测所对应的地图图块;以及
将所述遥感探测存储在与所识别的地图图块相关联的遥感探测的子集中。
20.根据权利要求12所述的计算机可读介质,进一步包括:
确定由所识别的缺失群集形成的几何形状是在所述电子地图中未对准的现有地图要素;以及
响应于所述确定,基于由所述缺失群集形成的几何形状调整所述电子地图中现有地图要素的位置。
21.根据权利要求12所述的计算机可读介质,进一步包括:
确定由所识别缺失群集形成的几何形状位于所述电子地图中的水体中;以及
响应于所述确定,基于由所识别的缺失群集形成的几何形状将水路路线添加至所述电子地图。
22.根据权利要求12所述的计算机可读介质,进一步包括:
利用缺失的地图要素自动更新所述电子地图。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/831,245 | 2017-12-04 | ||
US15/831,245 US10627242B2 (en) | 2017-12-04 | 2017-12-04 | Identifying missing features in digital maps based on mobile telemetry data |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110008801A true CN110008801A (zh) | 2019-07-12 |
CN110008801B CN110008801B (zh) | 2023-06-20 |
Family
ID=66659026
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811464562.6A Active CN110008801B (zh) | 2017-12-04 | 2018-12-03 | 基于移动遥测数据识别数字地图中的缺失要素 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10627242B2 (zh) |
CN (1) | CN110008801B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111750876A (zh) * | 2020-06-16 | 2020-10-09 | 北京百度网讯科技有限公司 | 路网修复方法、装置、设备以及存储介质 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11727794B2 (en) | 2018-03-14 | 2023-08-15 | Micron Technology, Inc. | Systems and methods for evaluating and sharing human driving style information with proximate vehicles |
US10997429B2 (en) * | 2018-04-11 | 2021-05-04 | Micron Technology, Inc. | Determining autonomous vehicle status based on mapping of crowdsourced object data |
US10859383B2 (en) * | 2018-05-16 | 2020-12-08 | Here Global B.V. | Method and apparatus for generating navigation guidance for an incomplete map |
US11161518B2 (en) | 2018-06-15 | 2021-11-02 | Micron Technology, Inc. | Detecting road conditions based on braking event data received from vehicles |
US11435202B2 (en) * | 2019-06-04 | 2022-09-06 | Here Global B.V. | Trajectory sampling using spatial familiarity |
US11468999B2 (en) * | 2020-07-31 | 2022-10-11 | Accenture Global Solutions Limited | Systems and methods for implementing density variation (DENSVAR) clustering algorithms |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1832407A (zh) * | 2005-03-11 | 2006-09-13 | 微软公司 | 遥测数据的类属收集和传递 |
US20100100835A1 (en) * | 2008-10-16 | 2010-04-22 | Curators Of The University Of Missouri | Visualizing geographic-area change detected from high-resolution, remotely sensed imagery |
CN103947230A (zh) * | 2011-09-28 | 2014-07-23 | 高通股份有限公司 | 发现相关地点以及自动设定其大小 |
US20160357188A1 (en) * | 2015-06-05 | 2016-12-08 | Arafat M.A. ANSARI | Smart vehicle |
-
2017
- 2017-12-04 US US15/831,245 patent/US10627242B2/en active Active
-
2018
- 2018-12-03 CN CN201811464562.6A patent/CN110008801B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1832407A (zh) * | 2005-03-11 | 2006-09-13 | 微软公司 | 遥测数据的类属收集和传递 |
US20100100835A1 (en) * | 2008-10-16 | 2010-04-22 | Curators Of The University Of Missouri | Visualizing geographic-area change detected from high-resolution, remotely sensed imagery |
CN103947230A (zh) * | 2011-09-28 | 2014-07-23 | 高通股份有限公司 | 发现相关地点以及自动设定其大小 |
US20160357188A1 (en) * | 2015-06-05 | 2016-12-08 | Arafat M.A. ANSARI | Smart vehicle |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111750876A (zh) * | 2020-06-16 | 2020-10-09 | 北京百度网讯科技有限公司 | 路网修复方法、装置、设备以及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US10627242B2 (en) | 2020-04-21 |
CN110008801B (zh) | 2023-06-20 |
US20190170519A1 (en) | 2019-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110008801A (zh) | 基于移动遥测数据识别数字地图中的缺失要素 | |
US10664616B2 (en) | Anonymization of geographic route trace data | |
US10008110B1 (en) | Detecting restrictions on turning paths in digital maps | |
Wang et al. | Crowdatlas: Self-updating maps for cloud and personal use | |
Krueger et al. | Visual analysis of movement behavior using web data for context enrichment | |
ES2366875T3 (es) | Dispositivo y procedimiento para actualizar datos cartográficos. | |
Jiang et al. | A review of urban computing for mobile phone traces: current methods, challenges and opportunities | |
CN102762957B (zh) | 历史交通数据压缩 | |
Kalim et al. | CRATER: A crowd sensing application to estimate road conditions | |
US20180306594A1 (en) | Method and apparatus for acquiring route popularity in road networks | |
CN110383006B (zh) | 用于基于探针数据更新道路地图几何形状的方法和设备 | |
US10859392B2 (en) | Dynamic one-way street detection and routing penalties | |
CN102667408A (zh) | 针对环境建模的3d路径分析 | |
CN103339627A (zh) | 评估表面数据 | |
US20230245002A1 (en) | Stationary Classifier for Geographic Route Trace Data | |
Conesa et al. | Geographical and fingerprinting data to create systems for indoor positioning and indoor/outdoor navigation | |
Blanke et al. | Crowdsourced pedestrian map construction for short-term city-scale events | |
Chen et al. | Enabling smart urban services with gps trajectory data | |
US10743090B2 (en) | Filtering noise values from telemetry data | |
Freitas et al. | Correcting routing information through GPS data processing | |
CN103440278A (zh) | 一种数据挖掘系统和方法 | |
Bakkal et al. | Modeling and querying trajectories using Neo4j spatial and TimeTree for carpool matching | |
CN107832445A (zh) | 数据索引方法、装置及电子设备 | |
Comai et al. | Maps for easy paths (MEP): accessible paths tracking and reconstruction | |
Funk et al. | Formulation and test of a model of positional distortion fields |
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 | ||
CP02 | Change in the address of a patent holder |
Address after: Washington, DC Patentee after: Mapbox, Inc. Address before: California, USA Patentee before: Mapbox, Inc. |
|
CP02 | Change in the address of a patent holder |