logo好方法网

基于轮廓跟踪与影像分块的快速栅格转矢量方法


技术摘要:
本发明公开了一种基于轮廓跟踪与影像分块的快速栅格转矢量方法,该方法包括:读取输入数据,数据准备过程中读取的数据为单波段栅格数据;创建输出矢量,根据用户输入的矢量数据格式,获取对应的矢量数据驱动,并创建对应的矢量数据文件,用于后续的矢量数据导出;大数  全部
背景技术:
栅格数据和矢量数据是非常重要的两种数据类型,相比栅格数据类型,矢量数据 具有冗余度小、拓扑关系清晰、易于网络分析、方便记录属性描述信息等优势,为此,有很多 数据成果要求必须是矢量数据类型,将栅格数据转换矢量数据是很常用的一种方式,目前, 有许多学者做了相关的研究,已有的栅格数据转换矢量数据的算法有:有向边界法、散列线 段聚合法、基于游程编码的轮廓跟踪法等,然而,上述算法在实际应用中,都会面临矢量化 效率问题和大数据情况下的通用性,传统的算法为了保证输出正确的拓扑关系,运行过程 中一般都需要复杂的边界查找和联通处理,处理效率低,此外,栅格矢量化输入数据为大数 据时,传统的算法在处理过程种都遇到内存资源不足的情况,难以解决大数据量的处理问 题,为此,如何解决栅格矢量化过程种效率低、难以处理大数据量的问题,是许多学者关注 的重点,亟待推出一种新的高效率栅格矢量化算法非常有必要。
技术实现要素:
针对相关技术中的上述技术问题,本发明提出一种基于轮廓跟踪与影像分块的快 速栅格转矢量方法,借助轮廓跟踪算法极大的提高了算法的处理效率,运用影像分块和图 形合并技术,保证了大数据处理的健壮性和转换结果的正确性。 为实现上述技术目的,本发明的技术方案是这样实现的:一种基于轮廓跟踪与影 像分块的快速栅格转矢量方法,其特征在于,该方法包括以下步骤: S1:读取输入数据,数据准备过程中读取的数据为单波段栅格数据; S2:创建输出矢量,根据用户输入的矢量数据格式,获取对应的矢量数据驱动,并创建 对应的矢量数据文件,用于后续的矢量数据导出; S3:大数据条带分块,首先对输入的栅格数据进行逻辑分块处理,沿影像的行方向进行 分块,获得一系列影像条带; S4:分块轮廓跟踪,逻辑分块结束后进行分块轮廓跟踪,遍历每个影像块,进行块内的 矢量面数据提取暂存到缓存池中; S5:图形轮廓合并,分块轮廓跟踪结束后,需要对分块成果进行无缝合并; S6:矢量数据导出,通过判断缓存池中几何图形与影像分块线的位置关系,并导出已经 被合并完整的图形。 进一步地,所述的S1中单波段栅格数据矢量化分别为二值图像、分类图像及灰度 图像。 进一步地,所述的S3逻辑分块具体包括以下步骤: S3.1通过设置每次处理的内存大小,自动计算获得分块参数,将一幅输入较大的栅格 4 CN 111598769 A 说 明 书 2/6 页 数据,划分为多个单独且全内存处理的影像块。 进一步地,所述的S4分块轮廓跟踪具体包括以下步骤: S4.1根据每个几何图形,获得以像素为单位的轮廓链数据,轮廓链由一个起点及一系 列扩张的方向数据构成,其中,由轮廓链数据直接转换成对应的矢量的基本边数据集,将基 本边数据集转换得到对应的矢量节点的元数据。 进一步地,所述的S5图形轮廓合并具体包括以下步骤: S5.1当某个影像块内的全部图形边缘跟踪完成时,保留当前影像块的最后一行数据, 根据上一个影像块的最后一行数据和当前影像块的第一行数据,获取图形的重合边,根据 重合边的两个端点将上下两个图形进行合并。 进一步地,所述的S6图形判断具体包括以下步骤: S6.1  将影像按条带进行分块,获取对应几何图形的最大行号与分块线的行号,进行判 断获得的几何图形是否跟踪完整,若几何图形完整,进行导出操作,反之,则该几何图形需 要后续作合并处理,对于完整的几何图形,根据矢量数据的导出格式,保存到对应的磁盘文 件中。 进一步地,所述的S4.1进一步包括: S4.1.1  若当前处理的是第一个影像块,则对影像块内的图形进行外部轮廓与内部轮 廓跟踪,首先跟踪出外部轮廓,基于跟踪的外部轮廓获得对应的内部轮廓,并且当轮廓的起 点及终点重合时,轮廓跟踪停止; S4.1.2  当轮廓跟踪获得到图形的轮廓链时,即同步转换为按照像素边界延伸集合图 形的内轮廓链及外轮廓链,然后再次对图形的内轮廓链及外轮廓链进行一次遍历,去掉方 向相同情况下的中间冗余节点,保留中间的关键节点,将获得到的对应矢量图形的顶点数 据,保存到图形轮廓缓存池中,同时保留当前影像块的最后一行处理结果并进行完整图形 导出,继续处理下一个影像块; S4.1.3  若当前影像块属于中间影像块,则先对影像块数据进行轮廓跟踪获得所有几 何图形的顶点数据,保存到图形轮廓缓存池中,然后根据前一个影像块最后一行数据和当 前块的第一行数据结果,进行重合边提取和图形合并,合并完成后,保存当前影像块的最后 一行数据至内存缓存池中并进行完整图形导出; S4.1.4  若当前影像块属于最后一块,同上所述首先进行几何图形的顶点数据提取并 保存到缓存池中,然后进行重合边提取及图形合并,进行完整图形的导出。 进一步地,所述的S5.1进一步包括: S5.1.1 由于部分图形在分块过程中被切割,需要对跟踪后的图形轮廓进行合并,形成 完整的图形轮廓,根据上一个影像块的最后一行数据与当前影像块的第一行数据,判断图 形是否被分块线切割,并对切割后的上、下两个图形进行合并操作; S5.1.2  按照影像的行方向,依次判断上、下两行数据的像素值是否相同,进行重合边 的提取,并从缓存池中获取需要合并的两个图形进行合并操作,对于每个重合边,都有线段 的起点及终点,分别从上、下两个图形中进行一次搜索获得重合边在图形中的顶点位置,然 后按照顺时针方向将上、下两个图形中的所有顶点进行串接,直接跳过重合边的起点及终 点,将更新后的图形保存到缓存池中,并清空合并前的图形内存。 进一步地,所述的S6.1进一步包括: 5 CN 111598769 A 说 明 书 3/6 页 S6.1.1  若当前处理完的不是最后一个影像块,需要进行完整几何图形的提取,提取的 准则为判断当前图形的最后一行与影像块的最后一行是否相交,若没有相交关系,则表示 当前图形属于完整图形,进行导出操作,若有相交关系,则该图形需要继续保留在缓存池中 用于后续的合并合并操作; S6.1.2基于完整的几何图形,根据矢量数据的导出格式保存到对应的磁盘文件中,并 清空对应的内存缓存; S6.1.3  若当前处理完成的是最后一个影像块,代表栅格数据的所有像素已经处理完 毕,则分块线上、下两端的图形已经合并完成,并将缓存池中的所有图形进行导出操作,然 后清空缓存池占用的内存空间,此时,完成对整个栅格数据转矢量数据的操作。 本发明的有益效果:鉴于现有技术中存在的不足,由于输入为大数据的情况,硬件 配置资源有限,存在无法一次性矢量化全部数据的问题,本申请通过对栅格数据按照条带 进行分块,在单个影像块内完成图形的边界提取,对于因影像分块导致的分块条带线,通过 对相邻影像块之间的图形重复边进行合并操作,完成图形的接边处理,保障了输出图形的 完整性和正确性,满足大数据量的栅格数据转换需求,运用轮廓跟踪算法,一次性记录所有 节点顺序的优势,避免了负责的节点查找和串接操作,能够极大的提高图形边界提取的处 理效率。 附图说明 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所 需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施 例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获 得其他的附图。 图1是根据本发明实施例所述的基于轮廓跟踪与影像分块的快速栅格转矢量方法 的具体流程框图; 图2是根据本发明实施例所述的基于轮廓跟踪与影像分块的快速栅格转矢量方法的大 数据条带分块处理示意图; 图3是根据本发明实施例所述的基于轮廓跟踪与影像分块的快速栅格转矢量方法的轮 廓跟踪边界方向示意图; 图4是根据本发明实施例所述的基于轮廓跟踪与影像分块的快速栅格转矢量方法的轮 廓跟踪过程示意图; 图5是根据本发明实施例所述的基于轮廓跟踪与影像分块的快速栅格转矢量方法的图 形轮廓合并示意图。
分享到:
收藏