首页> 中国专利> 一种矢量空间数据的有损压缩方法及装置

一种矢量空间数据的有损压缩方法及装置

摘要

本发明涉及数据压缩领域,公开了一种矢量空间数据的有损压缩方法及装置,以解决现有技术中存在着的对不同尺寸的图斑的压缩率不一致的技术问题。该方法包括:获取待压缩的矢量空间数据,矢量空间数据包含至少两个多边形;针对第一多边形的每一条线段,按照顺序依次选取对应线段上的三个点;依次记录三个点中第一个点与第二个点的连线、第二个点与第三个点的连线之间的夹角值,该夹角值对应三个点中的第二个点;将所有夹角值从大到小排序;按照压缩率计算对应线段上应删除的点数量N,N为正整数;删除对应线段上排序位于前N位的夹角值对应的点。达到了使大小不一致的图斑在数据压缩后的压缩率接近的技术效果,保持了原数据的基本特征。

著录项

  • 公开/公告号CN105118075A

    专利类型发明专利

  • 公开/公告日2015-12-02

    原文格式PDF

  • 申请/专利权人 中国地质大学(武汉);

    申请/专利号CN201510510477.9

  • 发明设计人 王勇;刘珍伶;梅旭;

    申请日2015-08-19

  • 分类号G06T9/00;

  • 代理机构北京华沛德权律师事务所;

  • 代理人房德权

  • 地址 430000 湖北省武汉市洪山区鲁磨路388号地质资源环境工业技术研究院

  • 入库时间 2023-12-18 12:40:40

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-08-07

    授权

    授权

  • 2015-12-30

    实质审查的生效 IPC(主分类):G06T9/00 申请日:20150819

    实质审查的生效

  • 2015-12-02

    公开

    公开

说明书

技术领域

本发明涉及数据压缩领域,尤其涉及一种矢量空间数据的有损压缩方法及 装置。

背景技术

国土资源管理中的矢量空间数据最大的特点是数据呈图斑状,图斑与图斑 之间相邻并且没有间隙,而经过数据压缩处理后,要求在保持数据的基本特征 的同时,保持原有图斑的空间拓扑关系。目前,使用较多的矢量数据压缩方法 主要有垂距限值法、Douglas-Peucker算法和角度限值法等。

通常情况下,国土资源管理中矢量空间数据中的图斑大小往往不一致,当 采用传统压缩方法进行压缩时,需要选取固定的距离阈值。如果距离阈值选取 较大,则较小图斑的压缩率过低,图斑的特征点数据也会被去除;如果阈值选 取较小,则较大图斑压缩率过高,不是特征点的数据仍然被保留,从而造成现 有技术中存在着对不同尺寸的图斑的压缩率不一致的技术问题;从而导致不能 保持原数据的基本特征。

并且,传统的矢量数据压缩方法并不能保持数据之间原有的空间拓扑关系, 从而导致压缩后的多边形之间会产生裂缝。

发明内容

本发明提供一种矢量空间数据的有损压缩方法及装置,以解决现有技术中 存在着的对不同尺寸的图斑的压缩率不一致的技术问题。

第一方面,本发明实施例提供一种矢量空间数据的有损压缩方法,包括:

获取待压缩的矢量空间数据,所述矢量空间数据包含至少两个多边形;

针对第一多边形的每一条线段,按照顺序依次选取对应线段上的三个点, 其中,所述第一多边形为所述矢量空间数据中的任一多边形;

依次记录所述三个点中第一个点与第二个点的连线、第二个点与第三个点 的连线之间的夹角值,该夹角值对应三个点中的第二个点;

将所有夹角值从大到小排序;

按照压缩率计算对应线段上应删除的点数量N,N为正整数;

删除对应线段上排序位于前N位的所述夹角值对应的点。

可选的,所述按照压缩率计算对应线段上应删除的点数量N,具体包括:

获取对应线段总的点数量;

通过以下公式计算所述点数量N:N=总的点数量-压缩率*总的点数量。

可选的,在所述针对第一多边形的每一条线段,按照顺序依次选取对应线 段上的三个点之前,所述方法还包括:

确定所述第一多边形与其他多边形的公共曲线段;

确定所述公共曲线段的点序号编码方向标识;

将每段公共曲线段、以及所述第一多边形中除公共曲线段之外的部分按照 约定规则分别作为所述第一多边形的一条线段。

可选的,所述确定所述第一多边形与其他多边形的公共曲线段,具体包括:

确定第一多边形的第一最小外接矩形和第二多边形的第二最小外接矩形;

基于所述第一最小外接矩形和所述第二最小外接矩形确定所述公共曲线 段。

可选的,所述确定所述公共曲线段的点序号编码方向标识,具体包括:

将点序号编码方向从小到大顺序递增的公共曲线段的所述点序号编码方 向标识确定为1;将所述点序号编码方向从大到小顺序递减的公共曲线段的所 述点序号编码方向标识确定为0。

可选的,在所述确定所述第一多边形与其他多边形的公共曲线段之后,所 述方法还包括:

将所述公共曲线段的起始点、结束点以及所述点序号编码方向标识加入所 述第一多边形的约束点序列;

将所述第一多边形的约束点序列中的点序号按照从小到大排列。

可选的,所述将每段公共曲线段、以及所述第一多边形中除公共曲线段之 外的部分按照约定规则分别作为所述第一多边形的一条线段,具体包括:

确定所述约束点序列中相邻两个序号之间的曲线段以及最后一个点与第 一个点之间的曲线段;

判断每个曲线段是否为公共曲线段;

在对应曲线段不为公共曲线段时,将对应曲线段直接作为所述第一多边形 的一条线段;

在对应曲线段为公共曲线段时,若对应曲线段的所述点序号编码方向标识 为1,则将对应曲线段直接作为所述第一多边形的一条线段;否则,将对应曲 线段反向作为所述第一多边形的一条线段。

可选的,所述压缩率取值为30%~99%。

第二方面,本发明实施例提供一种矢量空间数据的有损压缩装置,包括:

获取模块,用于获取待压缩的矢量空间数据,所述矢量空间数据包含至少 两个多边形;

选取模块,用于针对第一多边形的每一条线段,按照顺序依次选取对应线 段上的三个点,其中,所述第一多边形为所述矢量空间数据中的任一多边形;

记录模块,用于依次记录所述三个点中第一个点与第二个点的连线、第二 个点与第三个点的连线之间的夹角值,该夹角值对应三个点中的第二个点;

第一排序模块,用于将所有夹角值从大到小排序;

计算模块,用于按照压缩率计算对应线段上应删除的点数量N,N为正整 数;

删除模块,用于删除对应线段上排序位于前N位的所述夹角值对应的点。

可选的,所述计算模块,具体包括:

获取单元,用于获取对应线段总的点数量;

计算单元,用于通过以下公式计算所述点数量N:N=总的点数量-压缩率* 总的点数量。

可选的,所述装置还包括:

第一确定模块,用于在针对第一多边形的每一条线段,按照顺序依次选取 对应线段上的三个点之前,确定所述第一多边形与其他多边形的公共曲线段;

第二确定模块,用于确定所述公共曲线段的点序号编码方向标识;

第三确定模块,用于将每段公共曲线段、以及所述第一多边形中除公共曲 线段之外的部分按照约定规则分别作为所述第一多边形的一条线段。

可选的,所述第一确定模块,具体包括:

第一确定单元,用于确定第一多边形的第一最小外接矩形和第二多边形的 第二最小外接矩形;

第二确定单元,用于基于所述第一最小外接矩形和所述第二最小外接矩形 确定所述公共曲线段。

可选的,所述第二确定模块,具体用于:

将点序号编码方向从小到大顺序递增的公共曲线段的所述点序号编码方 向标识确定为1;将所述点序号编码方向从大到小顺序递减的公共曲线段的所 述点序号编码方向标识确定为0。

可选的,所述装置还包括:

加入模块,用于在确定所述第一多边形与其他多边形的公共曲线段之后, 将所述公共曲线段的起始点、结束点以及所述点序号编码方向标识加入所述第 一多边形的约束点序列;

第二排序模块,用于将所述第一多边形的约束点序列中的点序号按照从小 到大排列。

可选的,所述第三确定模块,具体包括:

第三确定单元,用于确定所述约束点序列中相邻两个序号之间的曲线段以 及最后一个点与第一个点之间的曲线段;

判断单元,用于判断每个曲线段是否为公共曲线段;

第四确定单元,用于在对应曲线段不为公共曲线段时,将对应曲线段直接 作为所述第一多边形的一条线段;

第五确定单元,用于在对应曲线段为公共曲线段时,若对应曲线段的所述 点序号编码方向标识为1,则将对应曲线段直接作为所述第一多边形的一条线 段;否则,将对应曲线段反向作为所述第一多边形的一条线段。

可选的,所述压缩率取值为30%~99%。

本发明有益效果如下:

由于在本发明实施例中,提供了一种矢量空间数据的有损压缩方法,包括: 获取待压缩的矢量空间数据,所述矢量空间数据包含至少两个多边形;针对第 一多边形的每一条线段,按照顺序依次选取对应线段上的三个点,其中,所述 第一多边形为所述矢量空间数据中的任一多边形;依次记录所述三个点中第一 个点与第二个点的连线、第二个点与第三个点的连线之间的夹角值,该夹角值 对应三个点中的第二个点;将所有夹角值从大到小排序;按照压缩率计算对应 线段上应删除的点数量N,N为正整数;删除对应线段上排序位于前N位的所 述夹角值对应的点。也即是利用角度作为压缩的限制条件,基于此实现了使大 小不一致的图斑在数据压缩后的压缩率接近的技术效果,从而能够尽量保留原 数据的基本特征。

附图说明

图1为本发明实施例第一方面的矢量空间数据的有损压缩方法的流程图;

图2为本发明实施例中多边形A的最小外接矩形的空间位置的示意图;

图3为本发明实施例中多边形A的最小外接矩形和多边形B的最小外接 矩形的公共部分的示意图;

图4为本发明实施例中多边形A和多边形B的公共曲线段的示意图;

图5为本发明实施例中对矢量空间数据具体进行有损压缩的流程图;

图6是矢量空间数据有损压缩过程的实例图;

图7是某地区原始的矢量空间数据的示意图;

图8是利用传统Douglas-Peucker算法进行矢量空间数据压缩后的数据示 意图;

图9是利用本发明的矢量空间数据的有损压缩方法进行矢量空间数据压缩 后的数据示意图;

图10为本发明实施例第二方面的矢量空间数据的有损压缩方法的流程图;

图11为本发明实施例第三方面的矢量空间数据的有损压缩装置的结构图。

具体实施方式

本发明提供一种矢量空间数据的有损压缩方法及装置,以解决现有技术中 存在着的对不同尺寸的图斑的压缩率不一致的技术问题。

本申请实施例中的技术方案为解决上述的技术问题,总体思路如下:

提供了一种矢量空间数据的有损压缩方法,包括:获取待压缩的矢量空间 数据,所述矢量空间数据包含至少两个多边形;针对第一多边形的每一条线段, 按照顺序依次选取对应线段上的三个点,其中,所述第一多边形为所述矢量空 间数据中的任一多边形;依次记录所述三个点中第一个点与第二个点的连线、 第二个点与第三个点的连线之间的夹角值,该夹角值对应三个点中的第二个点; 将所有夹角值从大到小排序;按照压缩率计算对应线段上应删除的点数量N, N为正整数;删除对应线段上排序位于前N位的所述夹角值对应的点。也即是 利用角度作为压缩的限制条件,基于此实现了使大小不一致的图斑在数据压缩 后的压缩率接近的技术效果,从而能够尽量保留原数据的基本特征。

为了更好的理解上述技术方案,下面通过附图以及具体实施例对本发明技 术方案做详细的说明,应当理解本发明实施例以及实施例中的具体特征是对本 发明技术方案的详细的说明,而不是对本发明技术方案的限定,在不冲突的情 况下,本发明实施例以及实施例中的技术特征可以相互组合。

第一方面,本发明实施例提供本发明矢量空间数据的有损压缩方法,在一 个具体的实施例中,该方法用于对国土资源管理中的矢量空间数据进行压缩, 当然,在其他实施例中,该方法还可以对其他矢量空间数据进行压缩,本发明 实施例不作限制,请参考图1,该方法包括以下步骤:

步骤S1:计算出矢量空间数据中每个多边形的最小外接矩形的空间位置, 并对所有的最小外接矩形空间位置两两进行比较,求出任意两个多边形最小外 接矩形的公共部分。

其中,对于矢量空间数据的每一个多边形,首先计算出每个多边形的最小 外接矩形的空间位置,如图2所示,多边形A的最小外接矩形的空间位置坐标 即为图2中四个顶点上的数值。接着,将多边形A的最小外接矩形与其他多边 形的最小外接矩形两两进行比较,获取与之相交的多边形B,求出两个多边形 最小外接矩形的公共部分,如图3所示,其中斜线部分是多边形A和多边形B 的最小外接矩形的公共部分;另外,如果多边形A的最小外接矩形与多个其他 多边形的最小外接矩形存在公共部分的话,则依次获取多边形A与这多个最小 外接矩形的公共部分。

步骤S2:确定多边形A与多边形B(多边形B指的其最小外接矩形与多 边形A的最小外接矩形存在公共区域的多边形)的公共曲线段,并确定所述公 共曲线段的点序号编码方向标识;将对应公共曲线段在两个多边形上的起始点、 终止点以及点序号编码方向标识依次保存于每个多边形的约束点序列中。

图3的公共区域中包含的多边形A上的曲线段为L,该曲线段在多边形A 中的点序号为118、119、120、…、138。灰色公共区域中包含的多边形B上 的曲线段为L和L',这两条曲线段在多边形B中的点序号为77、76、75、…、 57,32、31、30、…、19。将公共区域中多边形A的曲线段上的点与多边形B 的曲线段上的点依次比较空间位置,找到两个多边形的公共曲线段起始点序号 (多边形A中的公共曲线段起始点序号为118,多边形B中的公共曲线段起始 点序号为77)。然后以起始点开始依次顺序比较,直到某点处(多边形A中公 共曲线段之后一点的点序号为139,多边形B中公共曲线段之后一点的点序号 为32)的空间坐标不相同,则得出多边形A中的公共曲线段的点序号为118、 119、120、…、138,多边形A中该公共曲线段的点序号编码方向为从小到大 递增,则A中的公共曲线段的点序号编码方向标识为1;多边形B中的公共曲 线段的点序号为77、76、75、…、57,多边形B中该公共曲线段的点序号编 码方向为从大到小递减,则B中的公共曲线段的点序号编码方向标识为0,如 图4所示(图4的左侧为多边形B的公共曲线段示意图,图4的右侧为多边形 A的公共曲线段的示意图)。将多边形A中公共曲线段的起始点序号118和终 止点序号138以及点序号编码标识1存储于多边形A的约束点序列中;将多边 形B中公共曲线段的起始点序号77和终止点序号57以及点序号编码标识0存 储于多边形B的约束点序列中。

上述步骤S1-S2是求出两个多边形的公共曲线段的一种实施例,当然,在 具体实施过程中,还可以通过其他方式求出两个多边形的公共曲线段,例如穷 举搜索法、深度搜索匹配算法以及字符串模式匹配算法(KMP算法)等。

步骤S3:使用排序算法将每个多边形的约束点序列中的点序号由小到大排 列。

对多边形A和多边形B的约束点序列中的点序号由小到大排列,则多边 形A的约束点序列排列为118、138,其中118~138之间的点序号编码方向标 识为1;假设多边形B还与其他多边形存在一条公共曲线段,起始点序号为19, 终止点为48,如图4所示,则多边形B的约束点序列排列为19、48、57、77, 其中19~48之间的点序号编码方向标识为1,57~77之间的点序号编码方向标 识为0。

其中,对约束点序列中的点需要由小到大进行排列的目的在于能够防止对 相同的线段进行交叉压缩,例如:假设多边形B的约束点序列为{77、57、19、 48},如果不对其进行排序的话,则压缩时会将多边形B分为以下四个线段 77~57、57~19、19~48、48~77,在这种情况下,57~19、19~48都会对线段19~48 进行压缩,并且两次压缩方向不同,从而导致压缩后拓扑关系紊乱,而如果按 照点序号从小到大进行排序,则可以防止这种问题。

步骤S4:对约束点序列中相邻两个序号以及约束点序列中最后一个序号和 第一个序号之间的曲线段按照约定规则进行矢量空间数据有损压缩。

举例来说,对于多边形B的约束点序列为{19、48、57、77},则可以将多 边形按照19~48、48~57、57~77、77~19划分为四条线段,其中19~48为公共 曲线段,其点序号编码方向标识为1,直接将其作为多边形B的一条线段进行 有损压缩;48~57与77~19为非公共曲线段,直接将其作为多边形B的一条线 段进行有损压缩;57~77为公共曲线段,其点序号编码方向标识为0,则将其 反向作为多边形B的一条线段,然后进行有损压缩,从而实现不同多边形中相 同公共曲线段的压缩方向相同。

步骤S5:判断是否还存在没有处理的多边形,如果判断结果为是,转向步 骤S1;如果判断结果为否,结束。

请参考图5,该矢量空间数据有损压缩包括以下步骤:

步骤S4-1:根据需求给定压缩率;

步骤S4-2:从多边形的任意一条线段开始,依次顺序选取曲线上的三个点, 记录第一个点、第二个点之间的连线与第二点、第三点连线之间的夹角;

步骤S4-3:将所有夹角值从大到小排序;

步骤S4-4:按照压缩率计算对应线段上应删除的点数量N,N为正整数;

步骤S4-5:删除对应线段上排序位于前N位的夹角值对应的点;

步骤S4-6:判断是否还有没有处理的多边形,如果判断结果为是,转向步 骤S4-2;如果判断结果为否,结束。

假设多边形A的约束点序列为{118、138},其中118~138之间的线段点序 号编码方向标识为1,则对于多边形A,公共曲线段为点序号118至点序号138 之间的曲线段,非公共曲线段部分为点序号138至点序号118之间的曲线段, 进而可以基于此将多边形A划分为两条曲线段,分别为:118~138之间的曲线 段、以及138~118之间的曲线段,然后基于每条曲线段的点序号编码方向标识 将其转换为多边形A的两条线段,最后,根据预定规则分别对多边形A中的 这两条线段进行矢量空间数据有损压缩;对于多边形B,则是对其四条曲线段 按照点序号编码方向标识转换为多边形B的四条线段,进而分别进行矢量空间 数据有损压缩。

如图6中的(a)中所示的原始曲线段S,给定压缩率为78%,首先记录曲线 段S上的点1和点2之间的连线及点2和点3之间的连线的夹角为∠1,点2 和点3之间的连线及点3和点4之间的连线的夹角为∠2,点3和点4之间的 连线及点4和点5之间的连线的夹角为∠3,点4和点5之间的连线及点5和 点6之间的连线的夹角为∠4,如图6中的(b)所示。将4个夹角从大到小进行 排序,则有∠1>∠2>∠3>∠4。由于给定的压缩率为78%,利用公式计算删 除的点数量为1.32个,向下取整即为1个。由于需要删除1个点,则删除最大 角度∠1对应的点,即点2。此时曲线段S上所有点处理完毕,则曲线段S进 行矢量空间数据有损压缩之后的结果为图6中的(c)所示的曲线段S'。

由于本发明采用角度作为压缩的限制条件进行矢量空间数据有损压缩,规 避了传统矢量空间数据压缩方法采用距离阈值导致压缩后大小不同的图斑压 缩不一致的情况。并且在压缩前对多边形之间的公共曲线段进行预处理,提取 出公共曲线段的起止点坐标与曲线的点序号编码方向,然后对该部分曲线单独 进行压缩,这就保证了压缩曲线的起止点与方向相同,从而使得公共曲线段的 压缩结果一致,避免多边形之间产生裂缝。图7是原始的矢量空间数据,从图 中圆形C中可知该区域内存在公共曲线段,从圆形D中可知该区域内存在一 个较小的图斑。图8是传统Douglas-Peucker算法进行矢量空间数据压缩后的 数据,从图中可知,圆形C中的公共曲线段产生了多条较大的裂缝,并且圆形 D中的较小图斑在压缩后丢失,可见这种矢量空间数据压缩方法并不能较好地 满足国土资源管理中保持数据的基本特征并且保持原有图斑的空间拓扑关系 的需求。本发明提出的面向国土资源管理中矢量空间数据的有损压缩方法进行 矢量空间数据压缩后的数据如图9所示,从图中可知,圆形C中原公共曲线段 的拓扑关系得以保留,并未产生裂缝,并且圆形D内的小图斑与其他图斑的压 缩率相同,规避了大小不同的图斑压缩不一致的问题,由此可见本发明非常适 用于国土资源管理中矢量空间数据的安全共享。

第二方面,基于本发明实施例所提供的国土资源管理中的矢量空间数据的 压缩方法,本发明实施例还提供一种矢量空间数据的有损压缩方法,请参考图 10,包括:

步骤S1001:获取待压缩的矢量空间数据,所述矢量空间数据包含至少两 个多边形;

步骤S1002:针对第一多边形的每一条线段,按照顺序依次选取对应线段 上的三个点,其中,所述第一多边形为所述矢量空间数据中的任一多边形;

步骤S1003:依次记录所述三个点中第一个点与第二个点的连线、第二个 点与第三个点的连线之间的夹角值,该夹角值对应三个点中的第二个点;

步骤S1004:将所有夹角值从大到小排序;

步骤S1005:按照压缩率计算对应线段上应删除的点数量N,N为正整数;

步骤S1006:删除对应线段上排序位于前N位的所述夹角值对应的点。

可选的,所述按照压缩率计算对应线段上应删除的点数量N,具体包括:

获取对应线段总的点数量;

通过以下公式计算所述点数量N:N=总的点数量-压缩率*总的点数量。

可选的,在所述针对第一多边形的每一条线段,按照顺序依次选取对应线 段上的三个点之前,所述方法还包括:

确定所述第一多边形与其他多边形的公共曲线段;

确定所述公共曲线段的点序号编码方向标识;

将每段公共曲线段、以及所述第一多边形中除公共曲线段之外的部分按照 约定规则分别作为所述第一多边形的一条线段。

可选的,所述确定所述第一多边形与其他多边形的公共曲线段,具体包括:

确定第一多边形的第一最小外接矩形和第二多边形的第二最小外接矩形;

基于所述第一最小外接矩形和所述第二最小外接矩形确定所述公共曲线 段。

可选的,所述确定所述公共曲线段的点序号编码方向标识,具体包括:

将点序号编码方向从小到大顺序递增的公共曲线段的所述点序号编码方 向标识确定为1;将所述点序号编码方向从大到小顺序递减的公共曲线段的所 述点序号编码方向标识确定为0。

可选的,在所述确定所述第一多边形与其他多边形的公共曲线段之后,所 述方法还包括:

将所述公共曲线段的起始点、结束点以及所述点序号编码方向标识加入所 述第一多边形的约束点序列;

将所述第一多边形的约束点序列中的点序号按照从小到大排列。

可选的,所述将每段公共曲线段、以及所述第一多边形中除公共曲线段之 外的部分按照约定规则分别作为所述第一多边形的一条线段,具体包括:

确定所述约束点序列中相邻两个序号之间的曲线段以及最后一个点与第 一个点之间的曲线段;

判断每个曲线段是否为公共曲线段;

在对应曲线段不为公共曲线段时,将对应曲线段直接作为所述第一多边形 的一条线段;

在对应曲线段为公共曲线段时,若对应曲线段的所述点序号编码方向标识 为1,则将对应曲线段直接作为所述第一多边形的一条线段;否则,将对应曲 线段反向作为所述第一多边形的一条线段。

第三方面,基于本发明实施例所提供的国土资源管理中的矢量空间数据的 压缩方法,本发明实施例还一种矢量空间数据的有损压缩装置,请参考图11, 包括:

获取模块110,用于获取待压缩的矢量空间数据,所述矢量空间数据包含 至少两个多边形;

选取模块111,用于针对第一多边形的每一条线段,按照顺序依次选取对 应线段上的三个点,其中,所述第一多边形为所述矢量空间数据中的任一多边 形;

记录模块112,用于依次记录所述三个点中第一个点与第二个点的连线、 第二个点与第三个点的连线之间的夹角值,该夹角值对应三个点中的第二个点;

第一排序模块113,用于将所有夹角值从大到小排序;

计算模块114,用于按照压缩率计算对应线段上应删除的点数量N,N为 正整数;

删除模块115,用于删除对应线段上排序位于前N位的所述夹角值对应的 点。

可选的,所述计算模块114,具体包括:

获取单元,用于获取对应线段总的点数量;

计算单元,用于通过以下公式计算所述点数量N:N=总的点数量-压缩率* 总的点数量。

可选的,所述装置还包括:

第一确定模块,用于在针对第一多边形的每一条线段,按照顺序依次选取 对应线段上的三个点之前,确定所述第一多边形与其他多边形的公共曲线段;

第二确定模块,用于确定所述公共曲线段的点序号编码方向标识;

第三确定模块,用于将每段公共曲线段、以及所述第一多边形中除公共曲 线段之外的部分按照约定规则分别作为所述第一多边形的一条线段。

可选的,所述第一确定模块,具体包括:

第一确定单元,用于确定第一多边形的第一最小外接矩形和第二多边形的 第二最小外接矩形;

第二确定单元,用于基于所述第一最小外接矩形和所述第二最小外接矩形 确定所述公共曲线段。

可选的,所述第二确定模块,具体用于:

将点序号编码方向从小到大顺序递增的公共曲线段的所述点序号编码方 向标识确定为1;将所述点序号编码方向从大到小顺序递减的公共曲线段的所 述点序号编码方向标识确定为0。

可选的,所述装置还包括:

加入模块,用于在确定所述第一多边形与其他多边形的公共曲线段之后, 将所述公共曲线段的起始点、结束点以及所述点序号编码方向标识加入所述第 一多边形的约束点序列;

第二排序模块,用于将所述第一多边形的约束点序列中的点序号按照从小 到大排列。

可选的,所述第三确定模块,具体包括:

第三确定单元,用于确定所述约束点序列中相邻两个序号之间的曲线段以 及最后一个点与第一个点之间的曲线段;

判断单元,用于判断每个曲线段是否为公共曲线段;

第四确定单元,用于在对应曲线段不为公共曲线段时,将对应曲线段直接 作为所述第一多边形的一条线段;

第五确定单元,用于在对应曲线段为公共曲线段时,若对应曲线段的所述 点序号编码方向标识为1,则将对应曲线段直接作为所述第一多边形的一条线 段;否则,将对应曲线段反向作为所述第一多边形的一条线段。

可选的,所述压缩率取值为30%~99%。

本发明一个或多个实施例,至少具有以下有益效果:

由于在本发明实施例中,提供了一种矢量空间数据的有损压缩方法,包括: 获取待压缩的矢量空间数据,所述矢量空间数据包含至少两个多边形;针对第 一多边形的每一条线段,按照顺序依次选取对应线段上的三个点,其中,所述 第一多边形为所述矢量空间数据中的任一多边形;依次记录所述三个点中第一 个点与第二个点的连线、第二个点与第三个点的连线之间的夹角值,该夹角值 对应三个点中的第二个点;将所有夹角值从大到小排序;按照压缩率计算对应 线段上应删除的点数量N,N为正整数;删除对应线段上排序位于前N位的所 述夹角值对应的点。也即是利用角度作为压缩的限制条件,基于此实现了使大 小不一致的图斑在数据压缩后的压缩率接近的技术效果,从而能够尽量保留原 数据的基本特征。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计 算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结 合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包 含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、 CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产 品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和 /或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/ 或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入 式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算 机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一 个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设 备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中 的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个 流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使 得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处 理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个 流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基 本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要 求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱 离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属 于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和 变型在内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号