用于基于探针数据更新道路地图几何形状的方法和设备与流程

文档序号:18975636发布日期:2019-10-29 03:15阅读:228来源:国知局
用于基于探针数据更新道路地图几何形状的方法和设备与流程

本发明的实例实施例涉及地图生成和修改,并且更具体地,涉及基于探针数据递增地修改地图几何形状并且委托对地图几何形状修改进行处理。



背景技术:

几个世纪以来,地图一直被用来提供路线几何形状和地理信息。历史上包含来自快照的道路和地理特征的静态图像的传统纸质地图已经被计算机和移动装置上呈现的数字地图代替。可以对这些数字地图进行更新和修改,使得用户在每次查看由地图绘制服务服务器托管的地图时都能获得最新的地图。然而,由于新道路以及现有道路的关闭或重新布线,如道路和沿着道路的路线等地图特征随着相对频率改变,并且考虑到有数百万英里的道路和数千个道路项目不断更改交通路线,地图绘制服务可能难以跟上地图特征变化。



技术实现要素:

根据实例实施例,提供了一种用于基于特定地理区域的探针数据来修改地图几何形状的方法、设备和计算机程序产品。在实例实施例中,可以提供一种地图绘制系统,其包含:存储器,其具有地图数据;以及处理电路系统。所述处理电路系统可以被配置成:将探针数据点位置与道路进行地图匹配;沿着所述道路标识出对应于所述位置的已建立顶点;确定对应于所述已建立顶点的平均位置;确定所述已建立顶点的方差;确定对所述已建立顶点的所述平均位置和所述方差有贡献的数据点数量;使用所述探针数据点位置、所述平均位置、所述方差和所述数据点数量计算经过修改的平均位置和经过修改的方差;以及使所述已建立顶点的所述经过修改的平均位置和经过修改的方差存储在所述存储器中,并且增加对所述已建立顶点的所述平均位置和所述方差有贡献的所述数据点数量,以促进更新包含具有所述经过修改的平均位置的所述已建立顶点的地图表示。

根据一些实施例,被配置成使用所述探针数据点位置计算经过修改的平均位置和经过修改的方差的所述处理电路系统可以包含被配置成进行以下操作的处理电路系统:通过以下来计算经过修改的平均位置:将所述探针数据点位置减去所述平均位置除以(1+对所述平均位置有贡献的所述数据点数量)的分数加上所述平均位置;以及将所述探针数据点位置作为单个数据点考虑在内。被配置成使用所述探针数据点位置计算经过修改的平均位置和经过修改的方差的所述处理电路系统可以包含被配置成进行以下操作的处理电路系统:通过以下来计算经过修改的方差:根据所述数据点数量除以(1+对所述已建立顶点的所述平均位置有贡献的所述数据点数量)的分数对所述方差进行缩放;以及加上所述探针数据点位置与所述平均位置之差和所述探针数据点位置与所述经过修改的平均位置之差的乘积的分数;以及将所述乘积除以(1+对所述平均位置有贡献的所述数据点数量)。被配置成沿着所述道路标识出对应于所述位置的已建立顶点的所述处理电路系统可以包含被配置成进行以下操作的处理电路系统:从地图数据库接收对应于所述已建立顶点的所述平均位置;从所述地图数据库接收所述已建立顶点的所述方差;以及接收对所述已建立顶点的所述平均位置和所述方差有贡献的所述数量的数据点。被配置成使存储所述已建立顶点的所述经过修改的平均位置和所述经过修改的方差的所述处理电路系统可以包含被配置成进行以下操作的处理电路系统:将经过修改的平均位置和所述经过修改的方差提供到所述地图数据库以代替所述平均位置和所述方差。

地图绘制系统的实施例可以包含:其中对经过修改的平均位置和经过修改的方差的计算响应于所述探针数据点位置在所述平均位置的预定义距离内,其中所述预定义距离是所述平均位置的标准偏差的倍数。所述平均位置是沿着表示所述道路的折线的位置,其中所述方差可以是沿着在所述已建立顶点处垂直于所述折线的方向对所述平均位置有贡献的所述数据点的位置的方差。可以基于所述探针数据点位置沿着在所述已建立顶点处垂直于所述折线的所述方向从所述已建立顶点的所述平均位置的位移来计算所述经过修改的平均位置。

所述处理电路系统可以任选地被配置成:由不对应于现有道路的探针数据轨道生成所述道路,其中所述道路包含多个顶点。标识出已建立顶点可以包含:标识出所述多个顶点中在预定义距离内对应于所述探针数据点位置的顶点。

本发明的实施例可以提供一种设备,其包含至少一个处理器和包括计算机程序代码的至少一个存储器。所述至少一个存储器和所述计算机程序代码被配置成利用所述处理器使所述设备:将探针数据点位置与道路进行地图匹配;沿着所述道路标识出对应于所述位置的已建立顶点;确定对应于所述已建立顶点的平均位置;确定所述已建立顶点的方差;确定对所述已建立顶点的所述平均位置和所述方差有贡献的数据点数量;使用所述探针数据点位置、所述平均位置、所述方差和所述数据点数量计算经过修改的平均位置和经过修改的方差;以及使所述已建立顶点的所述经过修改的平均位置和所述经过修改的方差存储在所述存储器中,并且增加对所述已建立顶点的所述平均位置和所述方差有贡献的所述数据点数量,以促进更新包含具有所述经过修改的平均位置的所述已建立顶点的地图表示。

根据一些实施例,使所述设备使用所述探针数据点位置计算经过修改的平均位置和经过修改的方差可以包含使所述设备:通过以下来计算经过修改的平均位置:将所述探针数据点位置减去所述平均位置除以(1+对所述平均位置有贡献的所述数据点数量)的分数加上所述平均位置;以及将所述探针数据点位置作为单个点考虑在内。使所述设备使用所述探针数据点位置计算经过修改的平均位置和经过修改的方差可以包含使所述设备:通过以下来计算经过修改的方差:根据所述数据点数量除以(1+对所述已建立顶点的所述平均位置有贡献的所述数据点数量)的分数对所述方差进行缩放;以及加上所述探针数据点位置与所述平均位置之差和所述探针数据点位置与所述经过修改的平均位置之差的乘积的分数;以及将所述乘积除以(1+对所述平均位置有贡献的所述数据点数量)。

使所述设备沿着所述道路标识出对应于所述位置的已建立顶点可以包含使所述设备:从地图数据库接收对应于所述已建立顶点的所述平均位置;从所述地图数据库接收所述已建立顶点的所述方差;并且接收对所述已建立顶点的所述平均位置和所述方差有贡献的所述数量的数据点。使所述设备使存储所述已建立顶点的所述经过修改的平均位置和所述经过修改的方差可以包含使所述设备:将所述经过修改的平均位置和所述经过修改的方差提供到所述地图数据库以代替所述平均位置和所述方差。

可以响应于所述探针数据点位置在所述平均位置的预定义距离内来执行对经过修改的平均位置和经过修改的方差的计算,其中所述预定义距离可以是所述平均位置的标准偏差的倍数。所述平均位置可以是沿着表示所述道路的折线的位置,并且所述方差可以是沿着在所述已建立顶点处垂直于所述折线的方向对所述平均位置有贡献的所述数据点的位置的方差。可以基于所述探针数据点位置沿着在所述已建立顶点处垂直于所述折线的所述方向从所述已建立顶点的所述平均位置的位移来计算所述经过修改的平均位置。可以任选地使所述设备:由不对应于现有道路的探针数据轨道生成所述道路,其中所述道路包含多个顶点。标识出已建立顶点可以包含:标识出所述多个顶点中在预定义距离内对应于所述探针数据点位置的顶点。

本文所描述的实施例可以提供一种计算机程序产品,其包含至少一个非暂时性计算机可读存储媒体,所述至少一个非暂时性计算机可读存储媒体在其中存储有计算机可执行程序代码部分。所述计算机可执行程序代码部分可以包含程序代码指令,所述程序代码指令被配置成:将探针数据点位置地图与道路进行地图匹配;沿着所述道路标识出对应于所述位置的已建立顶点;确定对应于所述已建立顶点的平均位置;确定所述已建立顶点的方差;确定对所述已建立顶点的所述平均位置和所述方差有贡献的数据点数量;使用所述探针数据点位置、所述平均位置、所述方差和所述数据点数量计算经过修改的平均位置和经过修改的方差;以及使所述已建立顶点的所述经过修改的平均位置和所述经过修改的方差存储在存储器中,并且增加对所述已建立顶点的所述平均位置和所述方差有贡献的所述数据点数量,以促进更新包含具有所述经过修改的平均位置的所述已建立顶点的地图表示。

根据一些实施例,被配置成使用所述探针数据点位置计算经过修改的平均位置和经过修改的方差的所述程序代码指令可以包含被配置成进行以下操作的所述程序代码指令:通过以下来计算经过修改的平均位置:将所述探针数据点位置减去所述平均位置除以(1+对所述平均位置有贡献的所述数据点数量)的分数加上所述平均位置;以及将所述探针数据点位置作为单个数据点考虑在内。被配置成沿着所述道路标识出对应于所述位置的已建立顶点的所述程序代码指令可以包含被配置成进行以下操作的程序代码指令:从地图数据库接收对应于所述已建立顶点的所述平均位置;从所述地图数据库接收所述已建立顶点的所述方差;以及接收对所述已建立顶点的所述平均位置和所述方差有贡献的所述数量的数据点。被配置成使存储所述已建立顶点的所述经过修改的平均位置和所述经过修改的方差的所述程序代码指令可以包含被配置成进行以下操作的程序代码指令:将所述经过修改的平均位置和所述经过修改的方差提供到所述地图数据库以代替所述平均位置和所述方差。

实施例可以包含:其中响应于所述探针数据点位置在所述平均位置的预定义距离内来执行对经过修改的平均位置和经过修改的方差的计算,其中所述预定义距离是所述平均位置的标准偏差的倍数。所述平均位置可以是沿着表示所述道路的折线的位置,并且所述方差可以是沿着在所述已建立顶点处垂直于所述折线的方向对所述平均位置有贡献的所述数据点的位置的方差。可以基于所述探针数据点位置沿着在所述已建立顶点处垂直于所述折线的所述方向从所述已建立顶点的所述平均位置的位移来计算所述经过修改的平均位置。

本文所描述的实施例可以提供一种方法,其包含:将探针数据点位置与道路进行地图匹配;沿着所述道路标识出对应于所述位置的已建立顶点;确定对应于所述已建立顶点的平均位置;确定所述已建立顶点的方差;确定对所述已建立顶点的所述平均位置和所述方差有贡献的数据点数量;使用所述探针数据点位置、所述平均位置、所述方差和所述数据点数量计算经过修改的平均位置和经过修改的方差;以及使所述已建立顶点的所述经过修改的平均位置和所述经过修改的方差存储在存储器中,并且增加对所述已建立顶点的所述平均位置和所述方差有贡献的所述数据点数量,以促进更新包含具有所述经过修改的平均位置的所述已建立顶点的地图表示。

根据一些实施例,使用所述探针数据点位置计算经过修改的平均位置和经过修改的方差可以包含:通过以下来计算经过修改的平均位置:将所述探针数据点位置减去所述平均位置除以(1+对所述平均位置有贡献的所述数据点数量)的分数加上所述平均位置;以及将所述探针数据点位置作为单个数据点考虑在内。使用所述探针数据点位置计算经过修改的平均位置和经过修改的方差可以包含:通过以下来计算经过修改的平方差:根据所述数据点数量除以(1+对所述已建立顶点的所述平均位置有贡献的所述数据点数量)的分数对所述方差进行缩放;以及加上所述探针数据点位置与所述平均位置之差和所述探针数据点位置与所述经过修改的平均位置之差的乘积的分数;以及将所述乘积除以(1+对所述平均位置有贡献的所述数据点数量)。沿着所述道路标识出对应于所述位置的已建立顶点可以包含:从地图接收对应于所述已建立顶点的所述平均位置;从地图数据库接收所述已建立顶点的所述方差;以及接收对所述已建立顶点的所述平均位置和所述方差有贡献的所述数量的数据点。使存储所述已建立顶点的所述经过修改的平均位置和所述经过修改的方差可以包含:将经过修改的平均位置和所述经过修改的方差提供到所述地图数据库以代替所述平均位置和所述方差。

响应于所述探针数据点位置在所述平均位置的预定义距离内来执行对经过修改的平均位置和经过修改的方差的计算,其中所述预定义距离可以是所述平均位置的标准偏差的倍数。所述平均位置可以是沿着表示所述道路的折线的位置,其中所述方差可以是沿着在所述已建立顶点处垂直于所述折线的方向对所述平均位置有贡献的所述数据点的位置的方差。可以基于所述探针数据点位置沿着在所述已建立顶点处垂直于所述折线的所述方向从所述已建立顶点的所述平均位置的位移来计算所述经过修改的平均位置。方法可以包含:由不对应于现有道路的探针数据轨道生成所述道路,其中所述道路包含多个顶点。标识出已建立顶点可以包含:标识出所述多个顶点中在预定义距离内对应于所述探针数据点位置的顶点。

附图说明

在已经这样总体上描述了本发明的实例实施例之后,现在将参考附图,附图不一定按比例绘制,并且在附图中:

图1展示了根据本发明的实例实施例的通信图;

图2是根据本发明的实例实施例的可以被具体配置成用于基于探针数据生成地图几何形状并修改地图几何形状的设备的框图;

图3展示了描绘根据本发明的实例实施例的更新表示道路的折线的顶点的位置和方差的方法的流程图;

图4描绘了根据本发明的实例实施例的包含相对较低数量的探针数据点和通过递增地加上探针数据点得到的折线的道路;

图5描绘了根据本发明的实例实施例的包含多个数量的探针数据点和通过递增地加上新的探针数据点取得的经过改善的折线形状的道路;

图6描绘了根据本发明的实例实施例的包含相对较高数量的探针数据点和通过递增地加上另外的探针数据点取得的经过细化的折线形状的道路;

图7展示了描绘根据本发明的另一个实例实施例的更新表示道路的折线的顶点的位置和方差的方法的流程图。

具体实施方式

现在将参考附图在下文更全面地描述本发明的一些实施例,附图中示出了本发明的一些但并非全部实施例。事实上,本发明的各个实施例可以以许多不同的形式具体化并且不应被解释为限于本文所阐述的实施例;相反,提供这些实施例使得本公开将满足适用的法律要求。相同的附图标记自始至终指代相同的元件。如本文所使用的,术语“数据”、“内容”、“信息”和类似术语可以可互换地用来指代能够根据本发明的实施例被发射、接收和/或存储的数据。因此,任何这种术语的使用不应被视为限制本发明的实施例的精神和范围。

如本文所限定的,指代非暂时性物理存储媒体(例如,易失性或非易失性存储器装置)的“计算机可读存储媒体”可以区别于指代电磁信号的“计算机可读传输媒体”。

本文提供了根据实例实施例的用于基于探针数据递增地生成或修改地图几何形状的方法、设备和计算机程序产品。图1展示了用于实施本文所描述的实例实施例的系统的实例实施例的通信图。图1所示的实施例包含地图开发者系统116、与地理地图数据库例如地图数据库108数据通信的处理服务器102、到网络112、以及一个或多个移动装置114。移动装置114可以与车辆相关联、耦合或以其它方式整合,如例如内置式车辆导航单元、车辆头部单元、电子控制单元或高级驾驶员辅助系统(adas)。可以提供另外的、不同的或更少部件。例如,许多移动装置114可以与网络112连接。地图开发者116可以包含计算机系统和系统操作者的网络。处理服务器102可以包含地图数据库108,如远程地图服务器。

网络可以是有线通信网络、无线通信网络或有线通信网络和无线通信网络的任何组合,如蜂窝网、wi-fi、互联网、局域网等。

处理服务器102可以是一个或多个固定的或移动的计算装置。移动装置114可以被配置成经由处理服务器102通过例如地图绘制应用访问地图数据库108,使得用户设备可以向用户提供导航帮助以及通过访问地图开发者116提供的其它服务。

地图数据库108可以包含节点数据、道路区段数据或链路数据、兴趣点(poi)数据等。地图数据库108还可以包含制图数据、布线数据和/或操纵数据。根据一些实例实施例,道路区段数据记录可以是表示道路、街道或路径的链路或区段,如可以用于计算路线或记录的路线信息以确定一条或多条个性化路线。链路或道路可以由折线表示,其中每条折线包括建立道路几何形状的路径的多个顶点。节点数据可以是对应于道路区段数据的相应链路或区段的端点。道路链路数据和节点数据可以表示如车辆、汽车、卡车、公共汽车、摩托车和/或其它实体所使用的道路网络。任选地,例如,除了车辆道路记录数据之外或代替车辆道路记录数据,地图数据库108可以含有路径区段和节点数据记录或可以表示行人路径或区域的其它数据。道路/链路区段和节点可以与以下相关联:属性,如地理坐标、街道名称、地址范围、速度限制、交叉口转弯限制和其它导航相关属性;以及poi,如燃料供应站、酒店、餐馆、博物馆、体育馆、办公室、汽车修理店、建筑物、商店,公园等。地图数据库108可以包含关于poi的数据和数据在poi记录中的相应位置。地图数据库108可以包含关于如城市、城镇或其它社区等地方和如水体、山脉等其它地理特征的数据。这种地方或特征数据可以是poi数据的一部分,或者可以与poi或poi数据记录(如用于显示或表示城市的位置的数据点)相关联。另外,地图数据库108可以包含与poi数据记录或地图数据库108的其它记录相关联的事件数据(例如,交通事件、施工活动、安排事件、未安排事件等)。

地图数据库108可以由内容提供者例如地图开发者维护。例如,地图开发者可以收集地理数据以生成并增强地图数据库108。根据一些实施例,地图数据库108可以将地图生成和修改委托给其它装置,如移动装置114。地图开发者可以使用不同的方式来收集数据。这些方式可以包含从其它来源获得数据,如市政当局或各自的地理权威机构。另外,例如,地图开发者可以雇用现场工作人员沿着整个地理区域内的道路乘车行进,以观察关于道路的特征和/或记录信息。而且,可以使用如航空或卫星摄影等遥感来直接或通过如本文所描述的机器学习生成地图几何形状。

地图数据库108可以是以促进更新、维护和开发的格式存储的主地图数据库。例如,主地图数据库或主地图数据库中的数据可以采用甲骨文空间格式(oraclespatialformat)或其它空间格式,如以用于开发或生产。可以将甲骨文空间格式或开发/生产数据库编译成交付格式,如地理数据文件(gdf)格式。可以对呈生产和/或交付格式的数据进行编译或进一步编译以形成可以在最终用户导航装置或系统中使用的地理数据库产品或地理数据库。

例如,可以通过导航装置(如例如通过移动装置114)编译地理数据(如编译成平台规范格式(psf))以组织和/或配置用于执行导航相关功能和/或服务的数据,如路线计算、路线引导、地图显示、速度计算、距离和行进时间功能以及其它功能。导航相关功能可以对应于车辆导航、行人导航或其它类型的导航。虽然本文所描述的实例实施例总体上涉及沿着道路的车辆行进,但是可以实施用于沿着人行道的行人行进、沿着自行车路径的自行车行进、沿着海上航行路线的船只行进等实例实施例。用于产生最终用户数据库的编译可以由与地图开发者分开的一方或实体来执行。例如,地图开发者的客户(如导航装置开发者或其它最终用户装置开发者)可以以交付格式对接收的地图数据库执行编译,以产生一个或多个经过编译的导航数据库。

如上文提及的,服务器侧地图数据库108可以是主地理数据库,但是在替代性实施例中,客户端侧地图数据库108可以表示可以在最终用户装置(例如,移动装置114)中或与最终用户装置一起用于提供导航和/或地图相关功能的经过编译的导航数据库。例如,地图数据库108可以与移动装置114一起用于为最终用户提供导航特征。在这种情况下,地图数据库108可以下载或存储在最终用户装置(移动装置114)上,所述最终用户装置可以如例如经由处理服务器102和/或网络112通过无线或有线连接访问地图数据库108。任选地,地图数据库108的一部分(如关于特定道路的地图数据)可以临时下载或存储在最终用户装置上,并且根据本文所描述的各个实施例,移动装置114可以被配置成在将地图数据发送回地图数据库108之前修改关于道路的地图数据。

在一个实施例中,移动装置114可以是车载导航系统如adas、个人导航装置(pnd)、便携式导航装置、蜂窝电话、智能电话、个人数字助理(pda)、手表、相机、计算机和/或可以执行如数字路由和地图显示等导航相关功能的其它装置。根据一些实例实施例,用于导航和地图功能如例如引导和地图显示以及用于基于一个或多个计算的和记录的路线确定一条或多条个性化路线或路线区段的移动装置。

处理服务器102可以从移动装置114或与移动装置114通信的装置接收探针数据。移动装置114可以包含一个或多个检测器或传感器作为内置或嵌入到移动装置114中或在所述移动装置内部内的定位系统。可替代地,移动装置114使用通信信号进行位置确定。移动装置114可以从定位系统接收位置数据,所述定位系统如全球定位系统(gps)、蜂窝塔定位法、接入点通信指纹识别等。服务器102可以接收被配置成描述移动装置的位置的传感器数据,或者移动装置114的控制器可以从移动装置114的定位系统接收传感器数据。移动装置114还可以包含用于跟踪移动装置移动如旋转、速度或加速度的系统。还可以使用定位系统确定移动信息。移动装置114可以使用检测器和传感器来提供指示车辆的位置的数据。在本文中还被成为“探针数据”的此车辆数据可以由能够确定必要信息并且向远程实体提供必要信息的任何装置收集。移动装置114是可以用作探针器收集车辆的探针数据的装置的一个实例。

更具体地,探针数据(例如,由移动装置114收集)表示车辆在相应时间点的位置,并且可以在车辆沿着路线行进时进行收集。虽然探针数据在本文中被描述为是车辆探针数据,但是可以用行人探针数据、海上车辆探针数据或非机动车辆探针数据(例如,来自自行车、滑板、马背等)来实施实例实施例。根据下文关于来自沿道路行进的机动车辆的探针数据所描述的实例实施例,探针数据可以包含但不限于位置数据(例如,纬度、经度位置和/或高度、gps坐标、与射频识别(rfid)标签相关联的接近度读数等)、行进速率(例如,速度)、行进方向(例如,前进方向、基本方向等)、装置标识符(例如,车辆标识符、用户标识符等)、与数据收集相关联的时间戳等。移动装置114可以是能够收集上述探针数据的任何装置。移动装置114的一些实例可以包含专用车辆地图绘制设备、导航系统、如电话或个人数据助理等移动装置等。

处理服务器102的实例实施例可以在如图2所示的设备中具体化。如图2所示的设备等设备可以根据本发明的实施例被具体配置成基于实时探针数据递增地更新地图几何形状。设备可以包含处理器202、存储器装置204、通信接口206和用户接口208或以其它方式与处理器202、存储器装置204、通信接口206和用户接口208通信。在一些实施例中,处理器(和/或协处理器或者辅助处理器或以其它方式与处理器相关联的任何其它处理电路系统)可以经由用于在设备的部件之间传递信息的总线与存储器装置通信。存储器装置可以是非暂时性的并且可以包含例如一个或多个易失性和/或非易失性存储器。换句话说,例如,存储器装置可以是电子存储装置(例如,计算机可读存储媒体),所述电子存储装置包括被配置成存储可由机器(例如计算装置,如处理器202)检索的数据(例如,比特)的门。存储器装置可以被配置成存储信息、数据、内容、应用、指令等,以用于使设备能够根据本发明的实例实施例执行各种功能。例如,存储器装置可以被配置成缓冲输入数据以由处理器处理。另外或可替代地,存储器装置可以被配置成存储指令以由处理器执行。

处理器202可以以多种不同的方式具体化。例如,处理器可以具体化为各种硬件处理装置中的一个或多个硬件处理构件,如协处理器、微处理器、控制器、数字信号处理器(dsp)、具有或不具有附带dsp的处理元件、或各种其它处理电路系统,所述其它处理电路系统包含集成电路,如例如asic(专用集成电路)、fpga(现场可编程门阵列)、微控制器单元(mcu)、硬件加速器、专用计算机芯片等。因此,在一些实施例中,处理器可以包含被配置成独立地执行的一个或多个处理核。多核处理器可以在单个物理封装体内实现多重处理。另外或可替代地,处理器可以包含经由总线被协力地配置成实现独立地执行指令、流水线和/或多线程的一个或多个处理器。

在实例实施例中,处理器202可以被配置成执行存储在存储器装置204中或以其它方式可由处理器访问的指令。可替代地或另外,处理器可以被配置成执行硬编码功能。因此,无论是通过硬件或软件方法配置还是通过其组合配置,处理器都可以表示能够在被相应地配置时执行根据本发明的实施例的操作的实体(例如,物理地具体化在电路系统中)。因此,例如,当处理器被具体化为asic、fpga等时,处理器可以是用于进行本文所描述的操作的被具体配置的硬件。可替代地,作为另一个实例,当处理器被具体化为软件指令的执行器时,指令可以将处理器具体地配置成在执行指令时执行本文所描述的算法和/或操作。然而,在一些情况下,处理器可以是处理器特定装置(例如,移动终端或固定计算装置),所述处理器特定装置被配置成通过用于执行本文所描述的算法和/或操作的指令进一步配置处理器来采用本发明的实施例。处理器可以包含被配置成支持处理器的操作的时钟、算术逻辑单元(alu)和逻辑门等等。

实例实施例的设备200还可以包含通信接口206,所述通信接口可以是如以硬件或硬件和软件的组合具体化的装置或电路系统等任何构件,所述构件被配置成向/从与设备通信的通信装置发射和/或接收数据如以便促进与一个或多个移动装置114等的通信。在这方面,通信接口可以包含例如用于实现与无线通信网络的通信的天线(或多个天线)和支持硬件和/或软件。另外或可替代地,通信接口可以包含用于与一个或多个天线交互以便使信号经由一个或多个天线传输或者处理经由一个或多个天线接收的信号的接收的电路系统。在一些环境中,通信接口可以可替代地或者也支持有线通信。因此,例如,通信接口可以包含通信调制解调器和/或用于支持经由电缆、数字用户线(dsl)、通用串行总线(usb)或其它机构进行通信的其它硬件和/或软件。

设备200还可以包含用户接口208,所述用户接口进而可以与处理器202通信以便向用户提供输出并且在一些实施例中接收用户输入的指示。因此,用户接口可以包含显示器,并且在一些实施例中,还可以包含键盘、鼠标、操纵杆、触摸屏、触摸区域、软键、一个或多个麦克风、多个扬声器或其它输入/输出机构。在一个实施例中,处理器可以包括用户接口电路系统,所述用户接口电路系统被配置成控制一个或多个用户接口元件如显示器以及在一些实施例中多个扬声器、振铃器、一个或多个麦克风等的至少一些功能。处理器和/或包括处理器的用户接口电路系统可以被配置成通过存储在处理器可访问的存储器(例如,存储器装置204等)上的计算机程序指令(例如,软件和/或固件)来控制一个或多个用户接口元件的一个或多个功能。

本发明的实例实施例可以提供用于使用来自沿着特定地理区中的一条或多条道路行进的多个车辆的探针数据(例如,来自移动装置114)来修改地图信息(例如,存储在地图数据库108中)的机构。如道路的路径、所述道路上的交通方向、交叉点等地图信息可以存储在例如地图数据库108中。由于道路基础设施随着时间的推移劣化,现有道路上的道路施工是将至少暂时更改道路的不可避免的事件。进一步地,人口和车辆交通的增加导致需要新的或扩展的道路,而其它道路可能被移除或代替。如本文所使用的,术语“道路”可以指代车辆从一个地方移动到另一个地方可以采取的任何路径。道路可以是铺设的、经过改善的道路、砾石道路、泥路等,使得道路并不暗示所绘制的道路必定被识别为县、州或联邦政府维护的道路,并且可以包含如入口道路、附近街道等道路。由于这些道路可能随着时间的推移改变,因此与这些道路相关的地图信息可能需要修改以跟上道路路径的变化。

本文所描述的实例实施例提供了使用探针数据以递增方式更新或改变道路几何形状的机制,所述机制不仅受益于沿着道路行进的多个探针生成的数据,而且可以将某种程度的处理卸载到探针和与探针相关联的移动装置114。本文所描述的方法利用每个新探针数据点使用递增平均值和递增方差来更新道路顶点的平均位置值和方差或标准偏差,而不需要大量处理能力。

生成和更新包含沿着道路的顶点或点的位置的道路形状可以是需要大量数据、复杂算法、处理能力和时间的复杂的处理密集型活动。传统上,可以在使用大量历史探针数据的批量处理进程中执行道路形状和沿着道路的顶点的位置的生成和更新,以便使用与沿着道路行进过的车辆相关联的所有探针数据来更新沿着道路的平均顶点位置。接近顶点的探针数据点的平均位置可以用于建立顶点的位置(例如,纬度和经度或笛卡尔坐标),并且数据可以用于建立与顶点相关联的数据的标准偏差。

道路的顶点可以是沿着道路的限定道路的位置的点。最初可以通过以高精度穿过路径的已知车辆或探针来建立顶点,如地图绘制数据服务探针车辆。任选地,可以基于从多个探针收集的多个数据点来建立顶点,以建立道路的顶点的位置,而无需地图数据服务提供者利用高度精确的地图绘制探针车辆穿过道路。可以使用接近顶点的探针位置的算术平均值来建立顶点的位置。每个顶点可以沿着由道路的多个顶点生成的折线放置,以生成地图绘制的道路。

用作探针以生成沿着道路行进的探针数据点的移动装置114可以以探针数据点的形式报告探针数据点的位置。这些探针数据点可以包含位置以外的各种信息,如前进方向、速度、车辆标识、车辆类型等。然而,在位置的情况下,可以将位置建立为绝对位置,包含纬度和经度。可以基于从道路折线到探针数据点的法向量来确定来自地图绘制的道路折线的位置的量度。由法向量表示的距离可以是探针数据点与在沿着法量延伸自的折线的点或顶点处建立的道路折线的偏差。基于与顶点相关联的探针数据点,这个顶点可以经受更新。

传统上,可以收集与顶点相关联的历史探针数据并对其取平均以确定是否应该对道路折线顶点进行移位。可以根据以下方程式建立平均值或算术平均值(μ),其中xi表示探针数据点与顶点的距离。

(1)

类似地,可以根据以下方程式使用历史探针数据点为与顶点相关的探针数据点建立标准偏差或方差(σ2)。

(2)

其中

使用平均值μ和标准偏差σ,,可以如下计算得出置信区间:

(3)

例如,95%的置信区间产生的显著性水平为α=0.05,因为我们从累积分布函数φ(z)得到:

(4)

使得:

(5)

从而产生了在平均值左右的95%的置信区间:

(6)

如上文所示,使用探针数据点建立道路的折线的顶点的平均值和标准偏差会是计算上密集的,从而需要处理能力、历史数据和时间。进一步地,在道路折线的顶点数量可以非常大时,会需要重复进行这些计算以确定道路折线的平均位置及其标准偏差。处理道路的平均位置和标准偏差不太可能是高度常规的任务,并且可以仅定期地执行,这可能不足以使某些道路具有足够的准确性,特别是在执行道路工作之前、期间和之后,在道路施工项目过程期间,所述道路工作可以多次改变道路的位置和可用性。

本文所描述的实施例避免了对于道路位置的定期批量计算的需要,并且利用了递增平均值和递增方差技术以基本上实时的方式一致且准确地更新道路折线的顶点的位置,同时最小化地图绘制数据服务提供者这样做的处理要求。代替在每次更新时需要针对每个顶点处理大量数据,更新所需的唯一信息是顶点位置的平均值(μn-1)、顶点的方差以及目前为止对位置平均值和方差有贡献的数据点数量(n-1)。

在实例实施例中,移动装置114可以沿着道路行进并且将探针数据位置信息提供给例如地图数据服务提供者,如地图开发者116。进而,地图开发者116可以将对应于探针数据位置的道路折线顶点信息发送到移动装置114。所述道路折线顶点信息可以包含顶点的位置的平均值(μn-1),顶点的方差以及目前为止对位置平均值和方差有贡献的数据点数量(n-1)。进而,移动装置114可以递增地更新顶点的位置的平均值、顶点的方差、以及对顶点的平均值和方差有贡献的数据点数量。用于更新顶点的平均值(μn-1)的递增平均值公式如下:

(7)

新平均值μn是先前平均值(μn-1)用来自移动装置114的探针数据点的新数据值xn更新的。用于利用新数据值xn更新方差的递增公式为:

(8)

可替代地,可以通过将方程式的两边均乘以数据点的数量n来重写递增更新方程式(8),从而更新方差我们更新缩放了n的方差,从而产生了:

(9)

然后可以通过计算上不那么密集的公式递增地更新sn:

(10)sn=sn-1+(xn-μn-1)(xn-μn)

然后据此可以通过将sn除以n来计算经过修改的方差

(11)

如上所述,探针数据点的位置可以用于生成法向量和距折线顶点的距离。然而,可以由全球定位系统(gps)收集的探针数据点的位置数据可以与不确定性或准确性度量相关联,所述不确定性或准确性度量可以从gps精度因子得出。为了抵消gps位置的不确定性,每个探针数据点可以与权重wi相关联,从而实现使用递增加权平均值和递增加权方差并且将其并入到xn的新数据值中以包含权重wn。例如,权重可以是相应探针数据点的gps的相对置信度或准确度的表示。

(12)

其中wn是可以递增地更新的权重之和

(13)wn=wn-1+wn

使用以上加权公式,可以根据以下计算递增加权方差:

(15)

新平均值μn和新方差或加权方差可以由移动装置114发送到地图开发者116,以便基于来自移动装置114的探针数据点的加入用关联方差更新顶点的位置。使用本文所描述的方法,可以容易地更新表示沿着折线的道路中心位置的顶点,并且可以将处理卸载到移动装置114。虽然使用上述递增公式进行的处理可能相对较低,但是鉴于由沿着任何给定的道路的多个探针器报告的大量探针数据点,对数百万个数据点的处理变得势不可挡并且受到处理能力的限制。将递增平均值和递增方差的处理卸载到移动装置114可能对移动装置114几乎没有影响,但是可能通过分布式处理对地图开发者116和处理服务器102产生实质性影响。

除了分布式处理使用上述方法递增地修改道路折线顶点位置的益处之外,本文所描述的实施例还可以提供的额外益处是匿名数据收集。当移动装置114接收顶点的平均值和方差时,移动装置可以根据与移动装置114相关联的探针的位置数据来更新平均值和顶点。然后,移动装置114可以向地图开发者116提供经过修改的平均值和方差,包含来自移动装置的探针数据,而地图开发者116不必访问移动装置的探针数据。这种匿名性可以向用户保证其数据是安全且匿名的,同时还可能遵守各个司法管辖区的各种隐私法。

虽然上述方法可用于更新沿着道路折线的顶点的位置,但是一些探针数据点可能被低估为异常值并且不计入平均值或方差。异常值可能由gps误差导致并且可能产生不表示道路的数据,所述gps误差可以是影响gps位置的准确度的特征的结果,例如城市峡谷、隧道、桥梁等。异常值可以包含确定远离道路中心放置的探针数据点,由道路折线表示,使得探针数据点不在考虑范围之内。例如,如果探针数据点与道路折线之间的法向量超过来自折线的标准偏差σ的预定乘数,则可以排除法向量并且不使用法向量来计算新平均值或方差。乘数可以是例如2.5,使得阈值距离是标准偏差的2.5倍,超出所述阈值距离,探针数据点就被排除在外。

上述方法使用来自道路折线的法向量来建立探针数据点相对于顶点的位置值,实例实施例可以使用原始笛卡尔坐标(x,y)或纬度和经度来建立探针数据点相对于道路折线顶点的位置,所述位置对道路折线的前进方向误差不太敏感。进一步地,道路的每个顶点可以包含前进方向,所述朝向可以以类似于顶点的位置的前进方向的方式递增地更新。顶点前进方向可以基于先前记录的探针数据点的平均前进方向和来自当前探针数据点的前进方向递增地更新。前进方向的方差可以以相同的方式建立并递增地更新。

本文所描述的实施例可以应用于地图开发者116的地图数据库108中的现有道路,以更新几何形状以及验证道路和表示道路的折线的存在。地图数据库可以包含不同类型的道路,如分车道的高速公路、不分车道的狭窄双向街道、单向街道等。可能需要不同的更新方法对道路折线的顶点的位置进行递增更新。对于住宅街道或狭窄的双向街道,可以有单条折线表示两个行进方向的道路。因此,当更新表示所述道路的折线的顶点的位置时,需要考虑在道路的两个方向上前进的探针数据点。对于分车道的高速公路,每个行进方向可以有单条折线,并且我们可以只需要考虑前进方向与关联道路的前进方向相匹配的探针。再进一步地,根据一些实施例,道路可以包含基于每个车道的折线,在这种情况下,第一操作将会是将每个探针数据点与特定的行进车道相关联。然而,在每种情况下,可以根据上文所概述的相同的一般方法来执行递增更新。

根据一些实施例,可以接收地图开发者116的地图数据库108中不存在的道路的探针数据点。这些道路可以是新道路、重新布线的道路、弯路或以前未地图绘制的道路。一种建立新道路的方法可以是对可以存储在例如地图数据库108中的批量探针数据执行初始取平均。可以如方程式(1)到(6)所示的使用批量探针数据来生成道路折线的初始平均位置和方差。一旦用顶点创建了初始道路折线,就可以应用上文所描述的用于修改和更新顶点的递增方法。

由于顶点的平均位置和方差的递增更新可能取决于执行更新的移动装置114,因此可能无法同时更新顶点的平均位置和方差。例如,在单条道路折线表示同一前进方向上的多个车道的情境中,多个车辆可以在基本上相同的时间接近顶点。对所述顶点平均值和方差的递增更新可以由移动装置114中的一个移动装置根据其相应的探针数据点来执行,并且可以由正在更新的移动装置114“锁定”顶点平均值和方差直到更新完成为止,并且释放锁定。一旦解锁顶点,使用其探针数据点的下一个移动装置114就可以执行递增更新,从而补充先前移动装置114的更新。这个机制每次允许仅一个车辆或移动装置更新各个顶点。

虽然用于递增地更新道路折线的顶点的平均位置和方差的上述方法已被描述为卸载到移动装置114以供处理,但是根据一些实施例,包含平均值计算和方差计算的递增更新可以由地图开发者116的处理服务器102执行。这种实施例可以促进同时或快速连续地使用多个探针数据点进行递增更新。例如,如果与单个顶点相关联的两个探针数据点几乎同时到达,则可以使用这两个探针数据点的平均值和探针数据点计数二来执行递增更新。

为了使本文所描述的方法向后兼容未使用顶点和关联探针数据点生成的道路折线,实例实施例可以使用现有的地图绘制道路并且通过插入顶点(例如,每五米)以允许在如存储在地图数据库中的现有形状点之间细化道路链路几何折线来针对每个道路区段创建密集顶点序列s。可以确定每个顶点的初始方差和虚拟探针计数或权重和。对于不在地图绘制数据库108中的道路,可以通过第一高频探针轨迹数据的初始化并设定n=1(或从gps误差得出w1)、μ1=(x,y)或(纬度,经度)来生成道路折线。

图3和图7展示了说明根据本发明的实例实施例的方法的流程图。应理解,流程图的每个框和流程图中的框的组合可以通过各种构件来实施,如硬件、固件、处理器、电路系统和/或与包含一个或多个计算机程序指令的软件的执行相关联的其它通信装置。例如,上述程序中的一个或多个进程可以通过计算机程序指令具体化。在这方面,具体化上述进程的计算机程序指令可以由采用本发明的实施例的设备的存储器装置204存储并且由设备的处理器202执行。如应了解的,可以将任何这种计算机程序指令加载到计算机或其它可编程设备(例如,硬件)上以产生机器,使得所得计算机或其它可编程设备实施流程图框中指定的功能。这些计算机程序指令还可以存储在计算机可读存储器中,所述计算机可读存储器可以引导计算机或其它可编程设备以特定方式起作用,使得存储在计算机可读存储器中的指令产生制品,所述制品的产生的执行实施了流程图框中指定的功能。计算机程序指令还可以加载到计算机或其它可编程设备上,以促使在计算机或其它可编程设备上执行一系列操作从而产生计算机实施的过程,使得在计算机或其它可编程设备上执行的指令提供用于实施流程图框中指定的功能的操作。

因此,流程图的框支持用于执行指定功能的构件的组合和用于执行指定功能的操作的组合。还应理解,流程图的一个或多个框以及流程图中的框的组合可以通过执行指定功能的基于专用硬件的计算机系统或者专用硬件和计算机指令的组合来实施。

图3展示了描绘根据本发明的实例实施例的递增地更新道路折线的顶点的位置和方差的方法的流程图,其中通过移动装置114处的分布式处理来执行道路几何形状的递增更新。在310处,将沿其驾驶具有探针的车辆或其中布置有移动装置114从而生成探针数据的道路区段与地图数据的道路区段进行地图匹配。在320处,可将与地图匹配道路区段相关联的顶点序列提供到移动装置114,并且在330处,可以确定相对于顶点序列的最近顶点的探针数据位置。探针数据位置可以例如经由gps确立并且与来自地图开发者116的地图数据库108所提供的地图数据的最近顶点相关。在340处,确定顶点是否被解锁并且可用于更新,或者顶点是否在通过另一个装置更新时被锁定。一旦顶点被确立为已解锁,就被移动装置114锁定以进行更新。在350处,确定来自与顶点相关联的移动装置114的探针数据点是否在地图开发者116所提供的顶点位置的预定义距离内。这个预定义距离可以是标准偏差的倍数,以确保探针数据点不是相对于顶点位置的异常值。标准偏差的乘数可以是例如2.5,使得大约99%的探针数据点应落在预定义距离内。任选地,在gps数据可能容易出错的噪声环境中,如在城市峡谷中,标准偏差乘数可以更低以消除更多噪声。在360处,可以任选地确定来自探针数据点的数据值的权重。在370处,可以如上文通过方程式(7)到(11)所描述的那样执行对地图开发者116所提供的顶点信息的递增更新。一旦确立了顶点的平均值和方差的更新值,就可以在380处将更新值上传到地图开发者116以存储在地图数据库106中,并且在390处解锁顶点以由另一个探针更新。

图4-6中展示了如何更新道路折线的顶点的实例说明。如图4所示,可以根据道路类型在一个或两个行进方向上从探针数据中的高频车辆轨迹信息初始化缺失道路区段的交通探针数据。可以如图4所示建立高保真折线,其中探针数据点由点410以及通过递增地加上示出为折线420的探针数据点得到的折线形状表示。由于相对稀疏的探针数据点410,折线420的初始几何形状相对有噪声并且不能高度表示实际道路400几何形状。如图5所示,在探针数据点410的数量增加时,折线420的拟合变得更好,但仍不是实际道路400几何形状的完美表示。图6展示了折线420,所述折线由于沿着道路的探针数据点的数量的大量增加而明显更准确地表示了道路400几何形状。

图7展示了根据本发明的实例实施例的用于递增地更新表示道路的折线的顶点的平均位置和方差的方法的流程图。如710所示,可以基于接近度将包含探针数据点位置的探针数据与道路进行地图匹配。在720处,可以标识出表示道路的折线的已建立顶点。在730处,可以确定对应的平均位置,并且在740处,可以确定已建立顶点的平均方差。在740处,可以确定对平均位置和方差有贡献的数据点数量。使用平均位置、方差和数据点数量,如760所示,可以使用探针数据点位置来计算经过修改的平均位置和经过修改的方差。在770处,可以将经过修改的平均位置和经过修改的方差存储在存储器中并且与已建立顶点相关联,同时增加对经过修改的平均位置和经过修改的方差有贡献的数据点数量。根据一些实施例,所存储的数据可以用于在基于经过修改的平均位置和经过修改的方差具有经过修改的、更准确的道路位置的地图上提供道路的表示的显示。

在实例实施例中,用于执行上文中图7的方法的设备可以包括被配置成执行上述操作(710-770)中的一些操作或每个操作的处理器(例如,处理器202)。例如,处理器可以被配置成通过执行硬件实施的逻辑功能、执行存储的指令或执行用于执行操作(710-770)中的每个操作的算法来执行操作。可替代地,设备可以包括用于执行上述操作中的每个操作的构件。在这方面,根据实例实施例,用于执行操作710-770的构件的实例可以包括例如处理器202和/或用于执行指令或执行用于处理如上所述信息的算法的装置或电路。

受益于前述描述和关联附图中呈现的教导,本发明所属领域的技术人员将想到本文所阐述的对本发明的许多修改和其它实施例。因此,应理解,本发明不应限于所公开的具体实施例,并且修改和其它实施例旨在包含在所附权利要求书的范围内。此外,尽管前述描述和关联附图在元件和/或功能的某些实例组合的上下文中描述了实例实施例,但是应理解,在不脱离所附权利要求书的范围的情况下,可以通过替代性实施例提供元件和/或功能的不同组合。在这方面,例如,如可以在所附权利要求书中的一些权利要求中阐述的,还设想了与上文明确描述的组合不同的元件和/或功能组合。尽管本文采用了具体术语,但其仅用于一般性和描述性意义,而不是为了限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1