一种基于格网的快速等值线充填算法

 

摘 要:本文提出一种基于格网的等值线跟踪,适用于任意边界分割的快速充填算法,实现充填的矢量化效果。根据边界线与非封闭等值线间的关系,建立等值线间的拓扑关系,并以树结构方式存储,以准确快速地实现边界线、非封闭等值线之间的封闭和封闭等值线间的嵌套。该算法已成功应用于海量多波束地形数据的成图,克服了常用多波束后处理成图软件栅格充填与等值线之间的失配。
 

1 引 言
   等值线充填,就其实质,是等值线间建立拓扑关系[13,也就是建立一种树结构关系,一直是一个比较棘手的问题。尤其在不规则内外边界,任意等值间距的情况下,很难建立等值线间拓扑关系。在实际应用过程中,笔者发现有很多软件不能很好解决这个问题,例如:GMT,SeaView,Simard,Elac等。本文将阐述在规则格网情况下,在边界线的基础上,建立等值线间拓扑关系,最终实现任意边界,任意等值间距情况下的等值线充填。

2 算法基本原理
   等值线跟踪是在已知格网点的基础上,内插出等值线点,然后跟踪等值点,形成封闭或非封闭等值线[47。非封闭等值线的端点必然落在边界线上,而边界线必然是封闭的,通过跟踪边界线,再把非封闭等值线端点插入边界线,通过边界线建立等值线间的拓扑关系,在此基础上跟踪出封闭多边形,实现等值线的填充。该算法分为以下几大步骤:边界线的跟踪,非封闭等值线端点插入边界线中并排序,非封闭等值线建立拓扑关系,跟踪封闭多边形并排序,等值线的充填。
2.1 边界线的跟踪
   要实现边界线的跟踪,首先要找出边界线点。所谓边界线点,就是在某一格网点的周围至少有一空白格网点或非空的边框点,该点即为边界线点。然后用类似跟踪等值线的方法即可跟踪出边界线(参见图1)。

おすすめ

転載: blog.csdn.net/ccsss22/article/details/108740980