您的位置:首页 > 其它

线要素综合算法

2016-01-25 15:29 204 查看
原文地址:线要素综合算法作者:5927013571.
Li-Openshaw算法,

FC = St * D * [1 –
SS/St]
St : 目标比例尺分母;D: 最小可视目标SVO的直径(取值范围为0.3mm~0.5mm,通常取0.4mm);SS 源数据比例尺分母;FC : SVO对应的目标比例尺上的地面实际距离。
算法过程:
根据比例尺估算目标的圆形SVO尺寸Fc。

确定第一个圆形SVO的位置。在图中,A是待综合曲线的起点,以A点为圆心、圆形SVO尺寸为半径作圆,交曲线于点C;

选择AC的中点1(A,C两点的坐标平均值)为综合后的选取点;

从C点开始,重复步骤②~④,直至曲线末节点B。

优点:简单自然,计算速度快;
缺点:选择的综合点为圆与目标线的交点,没有保留目标线上的原始坐标点,对于精度要求较高的图形综合,综合质量得不到保证;

对于自身粘连现象,没有给出检测和处理方法。
2.
Douglas-Peucker算法:
DP算法的基本思想是:对任何一条由坐标点序列组成的线段或封闭曲线(表示一个多边形),选择其中两点分别作为始点和终点,然后虚连接这两点形成一条线段,再计算曲线上的其他任一点到这条虚线段的距离并找到最大距离dmax,使dmax与阈值D比较:若dmax<D,则曲线上的始点和终点之间的中间点全部舍去;若dmax>D,则保留dmax对应的坐标点,并以该点为界,把曲线分为两部分,再分别对这两部分重复使用这种方法,
直到始点和终点之间无中间点为止。
阈值的选取通常是根据人工对线要素复杂性的判断,凭经验来选取。实践中可以取Li-Openshaw算法中的FC。
优点:平移、旋转的不变性;运行速度快;
缺点:只能适用于比例尺变化范围较小的情况下的数据简化综合处理,容易自相交和产生钉刺,使线的形状发生畸变。

3.
圆算法

算法思想:从线状目标的某一段开始,对线目标的每个节点,判断其下一个节点是否落在该点的位置圆中,如果其下一个点落在该点的位置圆中,则把下一点删除。以此类推,直到线目标的另一端结束。

阈值R =线段长度/(节点个数-1)/2

4.
渐进式化简算法
算法思想:将线上第二个点至倒数第二个点中各点和与该点相邻的两个点组成三角形,计算所有组成的三角形的最小面积,如果小于给定面积,则删除该点;依次循环,直至最小面积超过给定面积为止;如果组成的三角形中包含了线段上的点,则被包含点应保留;

5.
光栏法
算法思想:定义一个扇形区域,通过判断曲线上的点在扇形外还是在扇形内,确定保留还是舍去。

6.
间隔取点法
算法原理:间隔取点法也称为nth算法,其思想非常简单,即在曲线上每n个点中取一个点,首末点一定保留。

7.
垂距限差法
算法原理:垂距限差法是一个比较简单的算法,它的基本思想是:事先给定一个阈值D(限差),然后依次对构成曲线的中间点(首、末点以外的其他点)计算其到与其相邻的前后两点连线的距离,若该距离大于阈值,保留该点,否则删除。

8.
角度限差法
算法思想:事先给定一个角度限差θ,若pi为最近保留的点,当前点为pi+1,下一个点为pi+2,如果pipi+1和pipi+2之间的夹角小于θ,点pi+1被删除,否则保留。如果pi+1被保留,下一步计算pi+1pi+2和pi+1pi+3的夹角;如果pi+1被删除,则下一步计算pipi+2和pipi+3的夹角以确定pi+2的取舍,依次类推直至曲线终点。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: