CN103309859B - 数据抽稀方法及装置 - Google Patents
数据抽稀方法及装置 Download PDFInfo
- Publication number
- CN103309859B CN103309859B CN201210057128.2A CN201210057128A CN103309859B CN 103309859 B CN103309859 B CN 103309859B CN 201210057128 A CN201210057128 A CN 201210057128A CN 103309859 B CN103309859 B CN 103309859B
- Authority
- CN
- China
- Prior art keywords
- line
- line segment
- polyline
- broken
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 52
- 239000002245 particle Substances 0.000 claims description 66
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 claims description 15
- 238000012545 processing Methods 0.000 claims description 14
- 230000000694 effects Effects 0.000 abstract description 6
- 238000009877 rendering Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000004304 visual acuity Effects 0.000 description 1
Landscapes
- Image Analysis (AREA)
Abstract
本发明的实施例提供一种数据抽稀方法及装置,涉及地理信息技术领域,包括:获取折线网中每条折线被其他所有折线以预定阈值近似覆盖的部分;按照所述每条折线的等级从高到低,同等级的折线按照折线的长度从大到小,依次计算所述每条折线的近似覆盖率和最大连续未被覆盖长度;当所述折线的近似覆盖率大于第一阈值并且所述折线的最大连续未被覆盖长度小于第二阈值时,删除所述折线,否则,将所述折线加入所述预设保留折线集合中。本发明实施例可以实现根据道路之间的近似重叠关系进行数据抽稀处理,在不影响地图显示效果的前提下,有效地减少冗余数据量。
Description
技术领域
本发明涉及地理信息技术领域,尤其涉及一种数据抽稀方法及装置。
背景技术
目前,在对矢量地理信息数据的处理过程中,通过采用数据抽稀方法可以在一定的比例尺下尽可能减少数据量,同时却不影响该比例尺下地理信息数据的地图显示,即在肉眼看来,数据抽稀前后对应的地图显示没有变化或几乎没有变化。
例如,对手机矢量地图进行矢量地理信息数据抽稀,一方面,可以减少网络数据传输量,为手机用户节省网络流量,减少网络传输等待时间;另一方面,通过减少数据量,也可以减少手机矢量地图渲染客户端的计算量,减少手机矢量地图的渲染响应时间。又如,对web光栅地图进行矢量地理信息数据抽稀,可以实现通过减少数据量来减少光栅地图图片离线渲染的计算量,从而减少离线渲染时间。
通常,矢量路网数据抽稀是矢量地理信息数据抽稀的主要内容,现有技术中主要采用如下两类矢量路网数据抽稀方法:
第一类为,对单条道路的抽稀方法。
例如道格拉斯-普克算法(Douglas and Peucker Algorithm)等,主要是通过减少表示单条道路的数据点的数目来减少数据量。
第二类为,对上下线分离道路的抽稀方法。
主要是对上下线分离的两条道路求出一条插值道路,将两上下线分离的两条道路变成一条道路来减少数据量,称为双线抽单线。
考虑到在一定的比例尺下,以人眼的分辨能力来看,地图上如果一条道路被其他一条或多条道路完全覆盖(实际上是近似覆盖),那么从数据上删除这条道路并不影响这个比例尺下地图的显示,此时,这条道路即为冗余数据。然而,现有技术中的上述两类数据抽稀方法都无法根据道路之间的近似重叠关系对上述冗余数据进行删除,因而,无法有效地减少冗余数据量。
发明内容
本发明的实施例提供一种数据抽稀方法及装置,可以实现根据道路之间的近似重叠关系进行数据抽稀处理,在不影响地图显示效果的前提下,有效地减少冗余数据量。
为达到上述目的,本发明的实施例采用如下技术方案:
一种数据抽稀方法,包括:
获取折线网中每条折线被其他所有折线以预定阈值近似覆盖的部分,其中,一条折线被其他所有折线以预定阈值近似覆盖的部分由所述一条折线上的所有线段被其他所有折线上的线段以预定阈值近似覆盖的部分组成;
按照所述每条折线的等级从高到低,同等级的折线按照折线的长度从大到小,依次计算所述每条折线的近似覆盖率和最大连续未被覆盖长度,其中,一条折线的近似覆盖率为所述一条折线被预设保留折线集合中的所有折线以预定阈值近似覆盖的部分的长度之和除以所述一条折线的总长度,一条折线的最大连续未被覆盖长度为所述一条折线被未预设保留折线集合中的所有折线以预定阈值近似覆盖的部分中的最大连续长度;
当所述折线的近似覆盖率大于第一阈值并且所述折线的最大连续未被覆盖长度小于第二阈值时,删除所述折线,否则,将所述折线加入所述预设保留折线集合中。
一种实现数据抽稀方法的装置,包括:
获取单元,用于获取折线网中每条折线被其他所有折线以预定阈值近似覆盖的部分,其中,一条折线被其他所有折线以预定阈值近似覆盖的部分由所述一条折线上的所有线段被其他所有折线上的线段以预定阈值近似覆盖的部分组成;
计算单元,用于按照所述每条折线的等级从高到低,同等级的折线按照折线的长度从大到小,依次计算所述每条折线的近似覆盖率和最大连续未被覆盖长度,其中,一条折线的近似覆盖率为所述一条折线被预设保留折线集合中的所有折线以预定阈值近似覆盖的部分的长度之和除以所述一条折线的总长度,一条折线的最大连续未被覆盖长度为所述一条折线未被预设保留折线集合中的所有折线以预定阈值近似覆盖的部分中的最大连续长度;
处理单元,用于当所述折线的近似覆盖率大于第一阈值并且所述折线的最大连续未被覆盖长度小于第二阈值时,删除所述折线,否则,将所述折线加入所述预设保留折线集合中。
由上述技术方案所描述的本发明实施例中,通过获取折线网中每条折线被其他所有折线以预定阈值近似覆盖的部分,按照所述每条折线的等级从高到低,同等级的折线按照折线的长度从大到小,依次计算所述每条折线的近似覆盖率和最大连续未被覆盖长度,当所述折线的近似覆盖率大于第一阈值并且所述折线的最大连续未被覆盖长度小于第二阈值时,删除所述折线,否则,将所述折线加入所述预设保留折线集合中。所述删除的折线即为由于折线之间存在近似覆盖而产生的冗余数据,这部分冗余数据删除之后,也不影响折线网的显示效果。同时,由于对折线是按照折线的等级从高到低,同等级的折线按照折线的长度从大到小进行处理的,因而,可以将折线中等级较高或者长度较长的折线保留下来,而将折线中等级较低或者长度较短的折线进行删除。
因而,将上述方法应用到矢量地图中时,由于矢量路网即为一个折线网,从而可以将路段之间存在近似覆盖而产生的冗余道路删除,减少了冗余道路的数目,同时,删除的冗余道路也是等级较低或者长度较短的。可见,本发明实施例实现了一种新的根据道路之间的近似重叠关系进行数据抽稀的方法,在不影响地图显示效果的前提下,有效地减少了冗余数据量。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例1提供的线段之间近似重叠的示意图;
图2为本发明实施例1提供的一种数据抽稀方法的流程图;
图3为本发明实施例1提供的一种数据抽稀方法中步骤101实现的流程图;
图4为本发明实施例1提供的另一种数据抽稀方法的流程图;
图5为本发明实施例2提供的一种实现数据抽稀方法的装置的结构图;
图6为本发明实施例2提供的一种实现数据抽稀方法的装置中获取单元的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1:
为了更好地理解和描述本发明实施例,首先对本发明实施例中提到的概念进行如下介绍:
1、线段之间的近似重叠
一条线段被另一条线段以预定阈值近似覆盖的部分为:假设线段AB上任意一点均可向任何方向发射一种粒子,所述粒子离开线段AB后做直线运动的最远距离为所述预定阈值,那么线段CD上被来自线段AB上的粒子击中的点构成的集合称之为线段CD被线段AB以预定阈值近似覆盖的部分。
上述粒子可以向任何方向进行发射,但在具体应用时,可以根据实际处理数据的需要,对上述粒子的发射方向进行限定。例如可以将上述粒子的发射方向限定为垂直于线段CD的方向、水平坐标轴方向和竖直坐标轴方向。优选的,其中一种所述一条线段被另一条线段以预定阈值近似覆盖的部分可进行限定如下:
如图1所示,假设线段AB上任意一点均可向垂直于线段CD的方向、水平坐标轴方向和竖直坐标轴方向发射一种粒子,所述粒子离开线段AB后做直线运动的最远距离为所述预定阈值,那么线段CD上被来自线段AB上的粒子击中的点构成的集合称之为线段CD被线段AB以预定阈值近似覆盖的部分;
所述一条线段被另一条线段以预定阈值近似覆盖的部分包括:所述一条线段被另一条线段以预定阈值正投影近似覆盖的部分、水平投影近似覆盖的部分和竖直投影近似覆盖的部分;
其中,所述一条线段被另一条线段以预定阈值正投影近似覆盖的部分为:当所述线段AB上任意一点仅向垂直于线段CD的方向发射一种粒子,所述粒子离开线段AB后做直线运动的最远距离为所述预定阈值,那么线段CD上被来自线段AB上的粒子击中的点构成的集合称之为线段CD被线段AB以预定阈值正投影近似覆盖的部分;
所述一条线段被另一条线段以预定阈值水平投影近似覆盖的部分为:当所述线段AB上任意一点仅向水平坐标轴方向发射一种粒子,所述粒子离开线段AB后做直线运动的最远距离为所述预定阈值,那么线段CD上被来自线段AB上的粒子击中的点构成的集合称之为线段CD被线段AB以预定阈值水平投影近似覆盖的部分;
所述一条线段被另一条线段以预定阈值竖直投影近似覆盖的部分为:当所述线段AB上任意一点仅向垂直坐标轴方向发射一种粒子,所述粒子离开线段AB后做直线运动的最远距离为所述预定阈值,那么线段CD上被来自线段AB上的粒子击中的点构成的集合称之为线段CD被线段AB以预定阈值竖直投影近似覆盖的部分。
2、折线之间的近似重叠
一条折线被其他折线以预定阈值近似覆盖的部分为:假设一条折线上的每条线段上任意一点均可向任何方向发射一种粒子,所述粒子离开线段后做直线运动的最远距离为所述预定阈值,那么所述一条折线被来自其他折线上的线段上的粒子击中的点构成的集合称之为一条折线被其他折线以预定阈值近似覆盖的部分。
可以看出,一条折线被其他所有折线以预定阈值近似覆盖的部分由所述一条折线上的所有线段被其他所有折线上的线段以预定阈值近似覆盖的部分组成。
一条折线被其他折线以预定阈值近似覆盖的部分通常由1个或多个子线段组成,相邻的子线段之间可能连续也可能不连续,即可能有共同的端点,也可能没有。
3、折线的近似覆盖率
一条折线的近似覆盖率为所述一条折线被其他折线以预定阈值近似覆盖的部分的长度之和除以所述一条折线的总长度。
由于所述一条折线被其他折线以预定阈值近似覆盖的部分是点的集合,连续的点组成线段,那么所述一条折线被其他折线以预定阈值近似覆盖的部分的长度具体为所述点的集合中连续的点组成的线段长度之和。
4、折线的最大连续未被覆盖长度
一条折线的最大连续未被覆盖长度为所述一条折线未被其他折线以预定阈值近似覆盖的部分中的最大连续长度。
如图2所示,本发明实施例提供一种数据抽稀方法,包括:
101、获取折线网中每条折线被其他所有折线以预定阈值近似覆盖的部分。
102、按照所述每条折线的等级从高到低,同等级的折线按照折线的长度从大到小,依次计算所述每条折线的近似覆盖率和最大连续未被覆盖长度。需要说明的是,由于预设保留折线集合中保存的折线是折线网在进行显示时需要显示出来的折线,因而,本步骤中在计算所述每条折线的近似覆盖率和最大连续未被覆盖长度,仅考虑预设保留折线集合中的所有折线对每条折线近似覆盖的部分。亦即,本步骤中一条折线的近似覆盖率为所述一条折线被预设保留折线集合中的所有折线以预定阈值近似覆盖的部分的长度之和除以所述一条折线的总长度,一条折线的最大连续未被覆盖长度为所述一条折线未被预设保留折线集合中的所有折线以预定阈值近似覆盖的部分中的最大连续长度。
103、当所述折线的近似覆盖率大于第一阈值并且所述折线的最大连续未被覆盖长度小于第二阈值时,删除所述折线,否则,将所述折线加入所述预设保留折线集合中。
例如,当步骤102中按照所述每条折线的等级从高到低,同等级的折线按照折线长度从大到小,依次计算所述每条折线的近似覆盖率和最大连续未被覆盖长度时,进行计算的第一条折线为等级最高,长度最大的折线,由于初始时所述预设保留折线集合为空,此时,可计算出该第一条折线的近似覆盖率为0%,该第一条折线的最大连续未被覆盖长度为其自身的长度。
根据实际应用的需要,上述第一阈值可设置为99%,第二阈值可设置为delta/5,所述delta表示上述预定阈值。
如果第一条折线的近似覆盖率大于第一阈值并且所述第一条折线的最大连续未被覆盖长度小于第二阈值时,则删除所述第一条折线,否则,将所述第一条折线加入所述预设保留折线集合中。
通过上述步骤的计算可以看出,所述删除的折线即为由于折线之间存在近似覆盖而产生的冗余数据,这部分冗余数据删除之后,也不影响折线网的显示效果。同时,由于对折线是按照折线的等级从高到低,同等级的折线按照折线的长度从大到小进行处理的,因而,可以将折线中等级较高或者长度较长的折线保留下来,而将折线中等级较低或者长度较短的折线进行删除。
因而,将上述方法应用到矢量地图中时,由于矢量路网即为一个折线网,从而可以将路段之间存在近似覆盖而产生的冗余道路删除,减少了冗余道路的数目,同时,删除的冗余道路也是等级较低或者长度较短的。可见,本发明实施例实现了一种新的根据道路之间的近似重叠关系进行数据抽稀的方法,在不影响地图显示效果的前提下,有效地减少了冗余数据量。
上述所述折线由至少一条线段组成,进一步地,如图3所示,所述步骤101获取折线网中每条折线被其他所有折线以预定阈值近似覆盖的部分具体包括:
101a、使用水平扫描线在折线网中扫描每条折线上的事件点,当扫描到所述事件点时,确定此刻与所述水平扫描线相交的所有线段,并获取所述事件点所在的线段被所述此刻与所述水平扫描线相交的所有线段以预定阈值水平投影近似覆盖的部分和正投影近似覆盖的部分,所述事件点为所述折线网中每条折线的节点和折线之间的交点,所述节点包括折线的起始点和转折点;
具体在获取所述事件点所在的线段被所述此刻与所述水平扫描线相交的所有线段以预定阈值水平投影近似覆盖的部分和正投影近似覆盖的部分时,可以按照此刻与所述水平扫描线相交的所有线段与水平扫描线的交点到所述事件点的距离由近到远,依次检测所述事件点所在的线段是否被这些与水平扫描线相交的线段以预定阈值近似覆盖,直到检测到的线段没有近似覆盖该事件点所在的线段为止。每扫描到一个事件点,均在局部范围内进行线段的近似重叠查找。
101b、使用竖直扫描线在折线网中扫描每条折线上的事件点,当扫描到所述事件点时,确定此刻与所述竖直扫描线相交的所有线段,并获取所述事件点所在的线段被所述此刻与所述竖直扫描线相交的所有线段以预定阈值竖直投影近似覆盖的部分和正投影近似覆盖的部分。
具体地,采用计算几何学中的直线扫描法(sweep line approach)快速扫描出上述事件点,例如,采用Bentley-Ottman algorithm能够在O((N+K)*logN)的时间内找出平面上任意N条线段的所有交点(亦即上述事件点),其中K为N条线段的交点的总数。在扫描时,水平扫描线可以从左向右扫描,也可以从右向左扫描;竖直扫描线可以从上向下扫描,也可以从下向上扫描。在扫描的过程中,会动态维护一个与扫描线当前所在位置相交的所有线段集合,并且该集合中的线段保存的顺序与扫描线的扫描方向保持一致。即对于水平扫描线,该集合中的线段根据与扫描线的交点从左向右或从右向左进行保存;对于竖直扫描线,该集合中的线段根据与扫描线的交点从上向下或从下向上进行保存。
需要说明的是,所述预定阈值,采用delta表示,可以根据实际应用时采用的比例尺和要求的显示误差而定。例如,以高德公司提供的上海矢量路网数据(采用墨卡托坐标,并且相邻接的同等级同名称的路段已经进行了合并)为例,在1∶75000.0的比例尺下,要求在该比例尺地图上显示误差为0.9mm则可以将上述预定阈值设为67.5(75000.0*0.0009)。
经过实验,采用上述方法可以减少约53%的道路数目,减少了约34%的数据量,注意该阈值内能退化成点的道路数目约只有0.8%,这说明了该方法的能非常有效地通过消除路网中的近似重叠性来减少道路数目。
进一步地,如图4所示,上述步骤103中将所述折线加入所述预设保留折线集合中可采用如下子步骤实现:
103a、获取所述折线未被所述预设折线保留集合中的所有折线以预定阈值近似覆盖的部分;
103b、当所述折线未被所述预设折线保留集合中的所有折线以预定阈值近似覆盖的部分中所包含的子折线的节点数之和小于所述折线的节点数时,将所述折线未被所述预设折线保留集合中的所有折线以预定阈值近似覆盖的部分中所包含的子折线加入所述预设保留折线集合中。
在预设保留折线集合中加入上述每条折线未被所述预设折线保留集合中的所有折线以预定阈值近似覆盖的部分,可以进一步地减少冗余数据量。
进一步地,上述方法除了能够完成现有技术中第2类方法的双线抽单线的功能外,还能够完成多线抽单线,找出并消除各种道路之间的近似重叠性,并且适应于各种道路的抽稀,对于其他线状地理要素也同样适用(例如线状水系等),能够减少更大的冗余数据量,却不影响地图的显示。
当对矢量路网数据进行抽稀时,所述折线网具体为矢量地图;所述折线网中的折线为矢量地图中的路段,所述折线的等级为所述路段的等级,所述折线的长度为所述路段的长度。
当对其他非道路的线状地理要素进行抽稀时,例如,对线状水系的抽稀。其中,所述折线网中的折线为矢量地图中的线状水系,所述折线的等级为所述线状水系的等级,所述折线的长度为所述线状水系的长度。
实际应用中,可以运用本发明的方法弥补现有技术没有充分考虑道路之间近似重叠关系的缺点,即不能有效减少道路数目的缺点。即先用现有技术的第1类方法(对单条道路的抽稀方法)对矢量路网数据进行抽稀,减少每条道路的数据点,以及去除部分退化成点的道路,然后再利用本发明提出的近似重叠删除方法进行进一步的抽稀,减少道路的数目。或者先用本发明提出的近似重叠删除方法,减少道路的数目,再用现有技术的第1类方法,减少每条道路上的数据点的数目,以及去除部分退化成点的道路。但需要说明的是,虽然现有技术中第1类方法在给定阈值下,可以通过去除退化成点的道路来减少一部分道路数目,但相对于本发明提出的近似重叠删除法减少的道路数目来说几乎可以忽略不计。
另外,上述方法在执行时,对于一般的折线网,本发明提供的方法的时间复杂度为O((N+K)*(T+logN)),其中N为折线网中折线节点的个数,K为折线网中折线之间交点的个数(不包括相邻折线之间的公共端点),T为在预定阈值delta下,与同一线段近似重叠在一起的线段的最大个数。T与delta正相关,delta越大,T越大;delta越小,T越小。
对于实际的矢量路网,例如高德公司提供的路网数据,K的数目主要是立体交叉点的数目,因为高德公司的路网数据中的每个记录是一个路段(每个路段是一个折线),路段不会跨越道路之间的平面交叉点。而立体交叉点的数目相对于N来说非常小,几乎可以忽略不计。所以对于实际的矢量路网,近似重叠删除算法的时间复杂度为O(N*(T+logN))。可见,采用本发明提供的方法进行数据抽稀处理时,占用的时间开销较小,可以快速地实现数据抽稀。
实施例2:
如图5所示,本发明实施例提供一种实现数据抽稀方法的装置,包括:
获取单元11,用于获取折线网中每条折线被其他所有折线以预定阈值近似覆盖的部分;
其中,一条折线被其他所有折线以预定阈值近似覆盖的部分由所述一条折线上的所有线段被其他所有折线上的线段以预定阈值近似覆盖的部分组成,一条线段被另一条线段以预定阈值近似覆盖的部分为:假设线段AB上任意一点均可向任何方向发射一种粒子,所述粒子离开线段AB后做直线运动的最远距离为所述预定阈值,那么线段CD上被来自线段AB上的粒子击中的点构成的集合称之为线段CD被线段AB以预定阈值近似覆盖的部分;
计算单元12,用于按照所述每条折线的等级从高到低或按照所述每条折线的长度从大到小,依次计算所述每条折线的近似覆盖率和最大连续未被覆盖长度;
其中,一条折线的近似覆盖率为所述一条折线被预设保留折线集合中的所有折线以预定阈值近似覆盖的部分的长度之和除以所述一条折线的总长度,一条折线的最大连续未被覆盖长度为所述一条折线未被预设保留折线集合中的所有折线以预定阈值近似覆盖的部分中的最大连续长度;
处理单元13,用于当所述折线的近似覆盖率大于第一阈值并且所述折线的最大连续未被覆盖长度小于第二阈值时,删除所述折线,否则,将所述折线加入所述预设保留折线集合中。
进一步地,所述获取单元11采用的所述一条线段被另一条线段以预定阈值近似覆盖的部分具体为:假设线段AB上任意一点均可向垂直于线段CD的方向、水平坐标轴方向和竖直坐标轴方向发射一种粒子,所述粒子离开线段AB后做直线运动的最远距离为所述预定阈值,那么线段CD上被来自线段AB上的粒子击中的点构成的集合称之为线段CD被线段AB以预定阈值近似覆盖的部分;
所述一条线段被另一条线段以预定阈值近似覆盖的部分包括:所述一条线段被另一条线段以预定阈值正投影近似覆盖的部分、水平投影近似覆盖的部分和竖直投影近似覆盖的部分;
其中,所述一条线段被另一条线段以预定阈值正投影近似覆盖的部分为:当所述线段AB上任意一点仅向垂直于线段CD的方向发射一种粒子,所述粒子离开线段AB后做直线运动的最远距离为所述预定阈值,那么线段CD上被来自线段AB上的粒子击中的点构成的集合称之为线段CD被线段AB以预定阈值正投影近似覆盖的部分;
所述一条线段被另一条线段以预定阈值水平投影近似覆盖的部分为:当所述线段AB上任意一点仅向水平坐标轴方向发射一种粒子,所述粒子离开线段AB后做直线运动的最远距离为所述预定阈值,那么线段CD上被来自线段AB上的粒子击中的点构成的集合称之为线段CD被线段AB以预定阈值水平投影近似覆盖的部分;
所述一条线段被另一条线段以预定阈值竖直投影近似覆盖的部分为:当所述线段AB上任意一点仅向垂直坐标轴方向发射一种粒子,所述粒子离开线段AB后做直线运动的最远距离为所述预定阈值,那么线段CD上被来自线段AB上的粒子击中的点构成的集合称之为线段CD被线段AB以预定阈值竖直投影近似覆盖的部分。
进一步地,所述折线由至少一条线段组成,如图6所示,所述获取单元11包括:
水平扫描处理模块11a,用于使用水平扫描线在折线网中扫描每条折线上的事件点,当扫描到所述事件点时,确定此刻与所述水平扫描线相交的所有线段,并获取所述事件点所在的线段被所述此刻与所述水平扫描线相交的所有线段以预定阈值水平投影近似覆盖的部分和正投影近似覆盖的部分,所述事件点为所述折线网中每条折线的节点和折线之间的交点,所述节点包括折线的起始点和转折点;
竖直扫描处理模块11b,用于使用竖直扫描线在折线网中扫描每条折线上的事件点,当扫描到所述事件点时,确定此刻与所述竖直扫描线相交的所有线段,并获取所述事件点所在的线段被所述此刻与所述竖直扫描线相交的所有线段以预定阈值竖直投影近似覆盖的部分和正投影近似覆盖的部分。具体实现过程可参见上述方法中步骤101的详细描述。
为了进一步地减少冗余数据量,所述处理单元在将所述折线加入所述预设保留折线集合中时,所述处理单元具体用于获取所述折线未被所述预设折线保留集合中的所有折线以预定阈值近似覆盖的部分;当折线未被所述预设折线保留集合中的所有折线以预定阈值近似覆盖的部分中所包含的子折线的节点数之和小于所述折线的节点数时,将所述折线未被所述预设折线保留集合中的所有折线以预定阈值近似覆盖的部分中所包含的子折线加入所述预设保留折线集合中。
上述装置不仅可实现对各种道路的抽稀,还可实现对其他线状地理要素(例如线状水系等)的抽稀,能够减少更大的冗余数据量,却不影响地图的显示。
当对矢量路网数据进行抽稀时,所述获取单元11采用的所述折线网具体为矢量地图;所述折线网中的折线为矢量地图中的路段,所述折线的等级为所述路段的等级,所述折线的长度为所述路段的长度;当对其他非道路的线状地理要素进行抽稀时,所述折线网中的折线为矢量地图中的线状水系,所述折线的等级为所述线状水系的等级,所述折线的长度为所述线状水系的长度。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种数据抽稀方法,其特征在于,包括:
获取折线网中每条折线被其他所有折线以预定阈值近似覆盖的部分,其中,一条折线被其他所有折线以预定阈值近似覆盖的部分由所述一条折线上的所有线段被其他所有折线上的线段以预定阈值近似覆盖的部分组成;
按照所述每条折线的等级从高到低,同等级的折线按照折线的长度从大到小,依次计算所述每条折线的近似覆盖率和最大连续未被覆盖长度,其中,一条折线的近似覆盖率为所述一条折线被预设保留折线集合中的所有折线以预定阈值近似覆盖的部分的长度之和除以所述一条折线的总长度,一条折线的最大连续未被覆盖长度为所述一条折线未被预设保留折线集合中的所有折线以预定阈值近似覆盖的部分中的最大连续长度;
当所述折线的近似覆盖率大于第一阈值并且所述折线的最大连续未被覆盖长度小于第二阈值时,删除所述折线,否则,将所述折线加入所述预设保留折线集合中;
其中,所述折线网具体为矢量地图;
所述折线网中的折线为矢量地图中的路段,所述折线的等级为所述路段的等级,所述折线的长度为所述路段的长度;或者,
所述折线网中的折线为矢量地图中的线状水系,所述折线的等级为所述线状水系的等级,所述折线的长度为所述线状水系的长度。
2.根据权利要求1所述的方法,其特征在于,一条线段被另一条线段以预定阈值近似覆盖的部分为:假设线段AB上任意一点均向任何方向发射一种粒子,所述粒子离开线段AB后做直线运动的最远距离为所述预定阈值,那么线段CD上被来自线段AB上的粒子击中的点构成的集合称之为线段CD被线段AB以预定阈值近似覆盖的部分。
3.根据权利要求2所述的方法,其特征在于,所述一条线段被另一条线段以预定阈值近似覆盖的部分具体为:假设线段AB上任意一点均向垂直于线段CD的方向、水平坐标轴方向和竖直坐标轴方向发射一种粒子,所述粒子离开线段AB后做直线运动的最远距离为所述预定阈值,那么线段CD上被来自线段AB上的粒子击中的点构成的集合称之为线段CD被线段AB以预定阈值近似覆盖的部分;
所述一条线段被另一条线段以预定阈值近似覆盖的部分包括:所述一条线段被另一条线段以预定阈值正投影近似覆盖的部分、水平投影近似覆盖的部分和竖直投影近似覆盖的部分;
其中,所述一条线段被另一条线段以预定阈值正投影近似覆盖的部分为:当所述线段AB上任意一点仅向垂直于线段CD的方向发射一种粒子,所述粒子离开线段AB后做直线运动的最远距离为所述预定阈值,那么线段CD上被来自线段AB上的粒子击中的点构成的集合称之为线段CD被线段AB以预定阈值正投影近似覆盖的部分;
所述一条线段被另一条线段以预定阈值水平投影近似覆盖的部分为:当所述线段AB上任意一点仅向水平坐标轴方向发射一种粒子,所述粒子离开线段AB后做直线运动的最远距离为所述预定阈值,那么线段CD上被来自线段AB上的粒子击中的点构成的集合称之为线段CD被线段AB以预定阈值水平投影近似覆盖的部分;
所述一条线段被另一条线段以预定阈值竖直投影近似覆盖的部分为:当所述线段AB上任意一点仅向垂直坐标轴方向发射一种粒子,所述粒子离开线段AB后做直线运动的最远距离为所述预定阈值,那么线段CD上被来自线段AB上的粒子击中的点构成的集合称之为线段CD被线段AB以预定阈值竖直投影近似覆盖的部分。
4.根据权利要求3所述的方法,其特征在于,所述折线由至少一条线段组成,所述获取折线网中每条折线被其他所有折线以预定阈值近似覆盖的部分具体包括:
使用水平扫描线在折线网中扫描每条折线上的事件点,当扫描到所述事件点时,确定此刻与所述水平扫描线相交的所有线段,并获取所述事件点所在的线段被所述此刻与所述水平扫描线相交的所有线段以预定阈值水平投影近似覆盖的部分和正投影近似覆盖的部分,所述事件点为所述折线网中每条折线的节点和折线之间的交点,所述节点包括折线的起始点和转折点;
使用竖直扫描线在折线网中扫描每条折线上的事件点,当扫描到所述事件点时,确定此刻与所述竖直扫描线相交的所有线段,并获取所述事件点所在的线段被所述此刻与所述竖直扫描线相交的所有线段以预定阈值竖直投影近似覆盖的部分和正投影近似覆盖的部分。
5.根据权利要求1所述的方法,其特征在于,所述将所述折线加入所述预设保留折线集合中包括:
获取所述折线未被所述预设折线保留集合中的所有折线以预定阈值近似覆盖的部分;
当所述折线未被所述预设折线保留集合中的所有折线以预定阈值近似覆盖的部分中所包含的子折线的节点数之和小于所述折线的节点数时,将所述折线未被所述预设折线保留集合中的所有折线以预定阈值近似覆盖的部分中所包含的子折线加入所述预设保留折线集合中。
6.一种实现数据抽稀方法的装置,其特征在于,包括:
获取单元,用于获取折线网中每条折线被其他所有折线以预定阈值近似覆盖的部分,其中,一条折线被其他所有折线以预定阈值近似覆盖的部分由所述一条折线上的所有线段被其他所有折线上的线段以预定阈值近似覆盖的部分组成;
计算单元,用于按照所述每条折线的等级从高到低,同等级的折线按照折线的长度从大到小,依次计算所述每条折线的近似覆盖率和最大连续未被覆盖长度,其中,一条折线的近似覆盖率为所述一条折线被预设保留折线集合中的所有折线以预定阈值近似覆盖的部分的长度之和除以所述一条折线的总长度,一条折线的最大连续未被覆盖长度为所述一条折线未被预设保留折线集合中的所有折线以预定阈值近似覆盖的部分中的最大连续长度;
处理单元,用于当所述折线的近似覆盖率大于第一阈值并且所述折线的最大连续未被覆盖长度小于第二阈值时,删除所述折线,否则,将所述折线加入所述预设保留折线集合中;
其中,所述获取单元采用的所述折线网具体为矢量地图;
所述折线网中的折线为矢量地图中的路段,所述折线的等级为所述路段的等级,所述折线的长度为所述路段的长度;或者,
所述折线网中的折线为矢量地图中的线状水系,所述折线的等级为所述线状水系的等级,所述折线的长度为所述线状水系的长度。
7.根据权利要求6所述的装置,其特征在于,一条线段被另一条线段以预定阈值近似覆盖的部分为:假设线段AB上任意一点均向任何方向发射一种粒子,所述粒子离开线段AB后做直线运动的最远距离为所述预定阈值,那么线段CD上被来自线段AB上的粒子击中的点构成的集合称之为线段CD被线段AB以预定阈值近似覆盖的部分。
8.根据权利要求7所述的装置,其特征在于,所述一条线段被另一条线段以预定阈值近似覆盖的部分具体为:假设线段AB上任意一点均向垂直于线段CD的方向、水平坐标轴方向和竖直坐标轴方向发射一种粒子,所述粒子离开线段AB后做直线运动的最远距离为所述预定阈值,那么线段CD上被来自线段AB上的粒子击中的点构成的集合称之为线段CD被线段AB以预定阈值近似覆盖的部分;
所述一条线段被另一条线段以预定阈值近似覆盖的部分包括:所述一条线段被另一条线段以预定阈值正投影近似覆盖的部分、水平投影近似覆盖的部分和竖直投影近似覆盖的部分;
其中,所述一条线段被另一条线段以预定阈值正投影近似覆盖的部分为:当所述线段AB上任意一点仅向垂直于线段CD的方向发射一种粒子,所述粒子离开线段AB后做直线运动的最远距离为所述预定阈值,那么线段CD上被来自线段AB上的粒子击中的点构成的集合称之为线段CD被线段AB以预定阈值正投影近似覆盖的部分;
所述一条线段被另一条线段以预定阈值水平投影近似覆盖的部分为:当所述线段AB上任意一点仅向水平坐标轴方向发射一种粒子,所述粒子离开线段AB后做直线运动的最远距离为所述预定阈值,那么线段CD上被来自线段AB上的粒子击中的点构成的集合称之为线段CD被线段AB以预定阈值水平投影近似覆盖的部分;
所述一条线段被另一条线段以预定阈值竖直投影近似覆盖的部分为:当所述线段AB上任意一点仅向垂直坐标轴方向发射一种粒子,所述粒子离开线段AB后做直线运动的最远距离为所述预定阈值,那么线段CD上被来自线段AB上的粒子击中的点构成的集合称之为线段CD被线段AB以预定阈值竖直投影近似覆盖的部分。
9.根据权利要求8所述的装置,其特征在于,所述折线由至少一条线段组成,所述获取单元包括:
水平扫描处理模块,用于使用水平扫描线在折线网中扫描每条折线上的事件点,当扫描到所述事件点时,确定此刻与所述水平扫描线相交的所有线段,并获取所述事件点所在的线段被所述此刻与所述水平扫描线相交的所有线段以预定阈值水平投影近似覆盖的部分和正投影近似覆盖的部分,所述事件点为所述折线网中每条折线的节点和折线之间的交点,所述节点包括折线的起始点和转折点;
竖直扫描处理模块,用于使用竖直扫描线在折线网中扫描每条折线上的事件点,当扫描到所述事件点时,确定此刻与所述竖直扫描线相交的所有线段,并获取所述事件点所在的线段被所述此刻与所述竖直扫描线相交的所有线段以预定阈值竖直投影近似覆盖的部分和正投影近似覆盖的部分。
10.根据权利要求6所述的装置,其特征在于,所述处理单元在将所述折线加入所述预设保留折线集合中时,所述处理单元具体用于获取所述折线未被所述预设折线保留集合中的所有折线以预定阈值近似覆盖的部分;当所述折线未被所述预设折线保留集合中的所有折线以预定阈值近似覆盖的部分中所包含的子折线的节点数之和小于所述折线的节点数时,将所述折线未被所述预设折线保留集合中的所有折线以预定阈值近似覆盖的部分中所包含的子折线加入所述预设保留折线集合中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210057128.2A CN103309859B (zh) | 2012-03-06 | 2012-03-06 | 数据抽稀方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210057128.2A CN103309859B (zh) | 2012-03-06 | 2012-03-06 | 数据抽稀方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103309859A CN103309859A (zh) | 2013-09-18 |
CN103309859B true CN103309859B (zh) | 2016-08-17 |
Family
ID=49135098
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210057128.2A Active CN103309859B (zh) | 2012-03-06 | 2012-03-06 | 数据抽稀方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103309859B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103761711B (zh) * | 2014-01-13 | 2016-03-30 | 青岛秀山移动测量有限公司 | 一种车载激光扫描路面点云非均匀抽稀方法 |
CN106291584B (zh) * | 2016-10-12 | 2018-09-21 | 中国林业科学研究院资源信息研究所 | 一种基于激光雷达扫描特征的点云抽稀方法 |
CN109587184B (zh) * | 2017-09-28 | 2021-11-30 | 阿里巴巴(中国)有限公司 | 一种离线定位数据抽稀及下载方法、装置 |
CN107766516A (zh) * | 2017-10-24 | 2018-03-06 | 浙江工业大学 | 一种基于边界保留的地理地图变形可视化方法 |
CN110263110B (zh) * | 2019-05-30 | 2021-10-12 | 武汉智云集思技术有限公司 | 基于抽稀算法的地理空间数据加载方法、设备及存储介质 |
CN110427583B (zh) * | 2019-06-21 | 2022-04-22 | 浙江中控信息产业股份有限公司 | 应用于移动端地图海量线抽稀绘制的方法 |
CN111368016B (zh) * | 2020-02-28 | 2023-04-11 | 重庆市勘测院 | 多阈值约束的轨道交通控制保护区空间信息提取分析方法 |
WO2022082553A1 (zh) * | 2020-10-22 | 2022-04-28 | 四川金瑞麒智能科学技术有限公司 | 一种地理围栏数据点密度优化的方法和系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0981740A (ja) * | 1995-09-12 | 1997-03-28 | Toshiba Corp | 線図形入力装置 |
CN101493330A (zh) * | 2008-01-23 | 2009-07-29 | 厦门雅迅网络股份有限公司 | 一种手机网络导航中地图矢量数据的抽稀方法 |
CN103177034A (zh) * | 2011-12-23 | 2013-06-26 | 上海优途信息科技有限公司 | 一种路网中平行线的生成方法及装置 |
-
2012
- 2012-03-06 CN CN201210057128.2A patent/CN103309859B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0981740A (ja) * | 1995-09-12 | 1997-03-28 | Toshiba Corp | 線図形入力装置 |
CN101493330A (zh) * | 2008-01-23 | 2009-07-29 | 厦门雅迅网络股份有限公司 | 一种手机网络导航中地图矢量数据的抽稀方法 |
CN103177034A (zh) * | 2011-12-23 | 2013-06-26 | 上海优途信息科技有限公司 | 一种路网中平行线的生成方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103309859A (zh) | 2013-09-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103309859B (zh) | 数据抽稀方法及装置 | |
CN106997466B (zh) | 用于检测道路的方法和装置 | |
JP2024511492A (ja) | 車両軌跡オフセット補正方法、装置及び電子機器 | |
US8872848B1 (en) | Rendering vector data as tiles | |
CN110517334B (zh) | 一种矢量地图数据获取的方法及装置 | |
CN112423021B (zh) | 视频的处理方法、装置、可读介质和电子设备 | |
JP2010537348A (ja) | 解像度の連続した付加レイヤー内の地理空間テクスチャ・データを選択的に読み出し表示するための地理空間データシステム、および関連した方法 | |
CN113313832B (zh) | 三维模型的语义生成方法、装置、存储介质与电子设备 | |
JP4606898B2 (ja) | 情報生成装置及び検索装置 | |
US20220335635A1 (en) | Method and system for location detection of photographs using topographic techniques | |
JP2010537349A (ja) | ユーザ選択された視点に基づいて、地理空間テクスチャ・データを選択的に読み出し表示するための地理空間データシステム、および関連する方法 | |
CN116977531A (zh) | 三维纹理图像的生成方法、装置、计算机设备和存储介质 | |
CN117315406B (zh) | 一种样本图像处理方法、装置及设备 | |
CN112598687B (zh) | 图像分割方法和装置、存储介质、电子设备 | |
CN108763374B (zh) | 一种行驶路径展示方法、装置及设备 | |
JP2010002991A (ja) | 画像処理装置、画像処理方法、コンピュータプログラム | |
JP5037660B2 (ja) | 配信装置及び情報配信システム | |
CN110660133B (zh) | 电子地图的三维抽稀方法和装置 | |
CN113256484B (zh) | 一种对图像进行风格化处理的方法及装置 | |
CN111870954B (zh) | 一种高度图生成方法、装置、设备及存储介质 | |
CN115243091B (zh) | 一种地图轨迹动态展示方法及装置 | |
KR101701909B1 (ko) | 온라인 지도 서비스의 정지영상으로부터 동영상을 생성하는 장치 및 방법 | |
CN117834949B (zh) | 基于边缘智能的实时交互预渲染方法及其装置 | |
CN115438712B (zh) | 一种基于卷积神经网络与车路协同的感知融合方法、装置、设备及存储介质 | |
CN116558540B (zh) | 模型训练方法和装置、轨迹生成方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20190731 Address after: Shenzhen Futian District City, Guangdong province 518044 Zhenxing Road, SEG Science Park 2 East Room 403 Co-patentee after: Tencent cloud computing (Beijing) limited liability company Patentee after: Tencent Technology (Shenzhen) Co., Ltd. Address before: 518000 Guangdong city of Shenzhen province Futian District SEG Science Park 2 East Room 403 Patentee before: Tencent Technology (Shenzhen) Co., Ltd. |
|
TR01 | Transfer of patent right |