一种基于多源地图的点位聚合方法及装置的制造方法

文档序号:9787406阅读:939来源:国知局
一种基于多源地图的点位聚合方法及装置的制造方法
【技术领域】
[0001] 本发明涉及数字地图技术领域,具体涉及一种基于多源地图的点位聚合方法及装 置。
【背景技术】
[0002] 近年来,新技术的不断涌现,使得网页功能更加丰富。数字地图创造性地将传统地 图与网页相结合,人们可以通过数字地图查询自己关注的任何地点的地理位置信息,极大 丰富和方便了人们的生活。从最初的"无缝"图片发展到现在的二维、三维,数字地图以其特 有的优势,得到了人们越来越多的青睐。
[0003] 在用户体验上,数字地图为用户提供了一种信息显示更精准全面的新的信息查询 方式,查询结果通常都是以标记形式展现,当在数字地图中查找所关注的地点时,数字地图 会将整个地区的地理范围内每个相应地点的位置以标记点的方式标识出来。
[0004] 然而用户的可视区域有限,在当前缩放级别下,如果位置标记太多,则会出现成千 上万个标记点的情况同时加载在地图中的现象,部分标记点之间重叠覆盖显得杂乱无章, 无法清楚地看到地理位置信息的问题,影响地图视觉效果和操作,并且过多的标记点会覆 盖地图底图,占用系统资源造成地图加载卡顿,极大影响了用户的体验。
[0005] 图1为现有地图中缩小的标记点在较小地图缩放层级上的显示示意图,图2为现有 地图中放大的标记点在较大地图层级上的显示示意图,可以看出,各标记点之间彼此覆盖, 无法清楚地看到地理位置信息,也降低了地图的加载速度。
[0006] 为此,需要一种聚合方法,让标记点能根据地图的层级,进行合理的聚合。目前,谷 歌、百度、高德等地图提供商提供了点位聚合算法以解决上述问题。
[0007] 例如,谷歌地图采用了基于方格和距离的点聚合算法,具体为:初始时没有任何已 知聚合点,然后对每个点进行迭代,计算一个点的外包正方形,若此点的外包正方形与现有 的聚合点的外包正方形不相交,则新建聚合点;若相交,则把该点聚合到该聚合点中,若点 与多个已知的聚合点的外包正方形相交,则计算该点到到聚合点的距离,聚合到距离最近 的聚合点中,如此循环,直到所有点都遍历完毕,每个缩放级别都重新遍历所有原始点要 素。
[0008] 但上述点位聚合算法只能比较准确或大致反应标记点的位置信息,精确度不高; 并且现有地图提供商提供的点聚合算法,缺少一种对各种地图均能进行处理的机制,使点 聚合算法能够针对不同的地图进行呈现,通常只适用于一种或同种投影类型的地图。譬如, 百度的点聚合算法,只能适用于百度投影方式的地图,对于其他地图,因为投影方式不同或 者不同厂商会对地图进行地图加密,聚合算法会出现很大偏差,则并不适用。

【发明内容】

[0009] 本发明的目的是提供一种基于多源地图的点位聚合方法及装置,解决现有技术聚 合方法只能针对特定地图、以及精度不高的问题。能够适用于不同地图,且精确度较高,能 够较精确地反映标记点所在的位置信息
[0010] 为了实现上述目的,本发明技术方案如下:
[0011] -种基于多源地图的点位聚合方法,所述聚合方法包括:
[0012] 对于待标记地图,将标记点的经炜度坐标转换为地图上的像素坐标;
[0013] 根据标记点的像素坐标以及给定的聚合距离,将标记点聚合为第一聚合类;
[0014] 根据第一聚合类之间的距离以及给定的聚合距离,对第一聚合类再次进行聚合, 得到第二聚合类,并将第二聚合类标示在待标记地图上。
[0015] 其中,所述对于待标记地图,将标记点的经炜度坐标转换为地图上的像素坐标,包 括:
[0016] 对于待标记地图,如果待标记地图是已知切片方案地图,且该切片方案地图对应 有已知的坐标像素转换关系,则根据已知的坐标像素转换关系对待标记地图进行经炜度坐 标与像素坐标之间的转换处理;
[0017] 对于待标记地图,如果待标记地图是未知切片方案地图,则先确定一种已知的投 影方式,获取该待标记地图在已知投影方式下的地图,通过待标记地图上的样本点与已知 投影方式下的地图对应点的关系拟合出待标记地图上的坐标像素转换关系,根据拟合出的 坐标像素转换关系对待标记地图进行经炜度坐标与像素坐标之间的转换处理。
[0018] 其中,所述根据标记点的像素坐标以及给定的聚合距离,将标记点聚合为第一聚 合类,包括:
[0019] 对于每个标记点,将其像素坐标同除以聚合距离的值;
[0020] 取所得的商的整数部分作为该标记点的新坐标;
[0021] 将新坐标相同的标记点放入同一个第一聚合类。
[0022]其中,所述根据第一聚合类之间的距离以及给定的聚合距离,对第一聚合类再次 进行聚合,得到第二聚合类,包括:
[0023]计算出第一聚合类的中心坐标;
[0024] 对于每一个第一聚合类,以其中心坐标计算该第一聚合类与周围左、左上、上、右 上、右、右下、下、左下方向上的其他第一聚合类的距离,将与该第一聚合类距离小于等于聚 合距离的其他第一聚合类合并为第二聚合类。
[0025] 其中,所述聚合距离为设定的像素数量,所述第一聚合类的中心坐标为第一聚合 类中所有标记点像素坐标的均值,所述第二聚合类在待标记地图上的坐标为第二聚合类的 中心坐标,所述第二聚合类的中心坐标为第二聚合类中所有标记点像素坐标的均值。
[0026] 本发明还提出了一种基于多源地图的点位聚合装置,所述聚合装置包括:
[0027] 坐标像素转换模块,用于对于待标记地图,将标记点的经炜度坐标转换为地图上 的像素坐标;
[0028]第一聚合模块,用于根据标记点的像素坐标以及给定的聚合距离,将标记点聚合 为第一聚合类;
[0029]第二聚合模块,用于根据第一聚合类之间的距离以及给定的聚合距离,对第一聚 合类再次进行聚合,得到第二聚合类,并将第二聚合类标示在待标记地图上。
[0030]本发明提出了一种基于多源地图的点位聚合方法及装置,通过坐标像素转换关系 将标记点的经炜度坐标转换为像素坐标,根据像素坐标与聚合距离对标记点进行聚合。能 够适用于任何地图,聚合的准确率高。
【附图说明】
[0031]图1为现有地图中缩小的标记点在较小地图缩放层级上的显示示意图;
[0032]图2为现有地图中放大的标记点在较大地图层级上的显示示意图;
[0033] 图3为本发明点位聚合方法流程图;
[0034] 图4为为发明实施例第一聚合类聚合示意图;
[0035] 图5为经过两次聚合后的聚合类的示意图。
【具体实施方式】
[0036]下面结合附图和实施例对本发明技术方案做进一步详细说明,以下实施例不构成 对本发明的限定。
[0037] 如图3所示,本实施例一种基于多源地图的点位聚合方法,包括以下步骤:
[0038] 步骤Sl、对于待标记地图,将标记点的经炜度坐标转换为地图上的像素坐标。
[0039] 经炜度坐标与地图上的像素坐标的转换,根据不同的源地图,对应的算法不同。目 前市场上采用的地图分为两类:一类采用标准GoogleOnline切片方案地图,如高德、谷歌 等;另一类采用非GoogleOnline切片方案地图,如百度地图。其中,前者地图上的经炜度坐 标和像素坐标之间的相互换算较为简单,这种坐标换算的方法十分成熟,精度也十分高,而 后者则较难,同时由于加密算法等原因,其坐标换算的算法较为复杂。
[0040] 本实施例的坐标像素转换算法,解决全球范围已知投影地图坐标系与经炜度坐标 系之间的换算问题。对于一个未知投影坐标系的地图,或者说该地图上的各个点对应的经 炜度坐标和像素坐标未知,该算法能够得出该地图上的坐标系,对地图上的经炜度坐标和 像素坐标进行相互换算,即能使不同地图提供商的地图能够准确地在同一个平台中显示。 [0041 ]其中,将标记点的经炜度坐标转换为地图上的像素坐标,包括:
[0042] 对于待标记地图,如果待标记地图是已知切片方案地图,且该切片方案地图对应 有已知的坐标像素转换关系,则根据已知的坐标像素转换关系对待标记地图进行经炜度坐 标与像素坐标之间的转换处理。
[0043] 例如,待标记地图为GoogleOnline切片方案,GoogleOnline切片方案每张瓦片的 大小为256个像素,切片的原点为-180,85 .05 1 12877980659,根据墨卡托投影 (WebMercator)的投影特征和具体的切片方案,可以得出GoogleOnline切片方案地图的坐 标转换公式如下:
[0044] 像素坐标转换至经炜度坐标:
[0048] lng = 360*xx
[0049] 经炜度坐标转换至像素坐标公式为:
[0053] x = xx*mapSizeX+0 · 5
[0054] y = yy*mapSizeY+0 · 5
[0055]其中x,y为像素坐标,mapSizeX为当前层级的X方
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1