CN103500223B - 一种面向移动用户的矢量地图数据压缩方法 - Google Patents

一种面向移动用户的矢量地图数据压缩方法 Download PDF

Info

Publication number
CN103500223B
CN103500223B CN201310491681.1A CN201310491681A CN103500223B CN 103500223 B CN103500223 B CN 103500223B CN 201310491681 A CN201310491681 A CN 201310491681A CN 103500223 B CN103500223 B CN 103500223B
Authority
CN
China
Prior art keywords
data
point
max
vector
wire
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.)
Expired - Fee Related
Application number
CN201310491681.1A
Other languages
English (en)
Other versions
CN103500223A (zh
Inventor
陈志荣
尹天鹤
王志
张小红
王红梅
蔡军伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ningbo University of Technology
Original Assignee
Ningbo University of Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ningbo University of Technology filed Critical Ningbo University of Technology
Priority to CN201310491681.1A priority Critical patent/CN103500223B/zh
Publication of CN103500223A publication Critical patent/CN103500223A/zh
Application granted granted Critical
Publication of CN103500223B publication Critical patent/CN103500223B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Remote Sensing (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Instructional Devices (AREA)

Abstract

本发明公开了一种面向移动用户的矢量地图数据压缩方法,首先利用矢量数据压缩方法有效地去除冗余数据点,获得精简的线状数据,在其基础上对精简后的线状数据进行坐标平移,并放大各数据点的坐标值,进而强制转换各数据点的数据类型由double型为int32型,实现二次压缩。本方法充分结合移动用户需求特点,在移动用户接受的精度范围内,最大限度地提高矢量地图数据压缩率,有效地减少无线网络在数据传输时的负荷,节约移动终端存储空间。本方法在移动地理信息服务的矢量地图数据压缩中应用前景广阔。

Description

一种面向移动用户的矢量地图数据压缩方法
技术领域
本发明涉及空间数据处理与表达领域,特别是涉及一种面向移动用户的矢量地图数据压缩方法。
背景技术
移动地理信息服务是移动位置服务的延伸,是高速移动互联网技术与地理空间信息技术相结合的产物,它以移动通信技术为承载平台,通过移动终端为广大移动用户提供各种信息类业务(如旅游、天气、交通、问路、黄页、广告)、娱乐类业务、车辆调度业务、跟踪类业务和急救类业务等基于位置的空间信息服务,因此移动地理信息服务被全球许多移动运营商和咨询机构视为是下一代移动网络的核心业务。相对于普通PC,移动终端是指借助无线网络技术接入网络的具有有限计算资源的设备。在利用移动地理信息服务时,移动用户不仅受到无线网络带宽窄和稳定性差的限制,也受到移动设备存储空间小、显示屏小且分辨率低和CPU计算能力弱的限制,从而对大量空间数据的存储、传输、显示和分析造成困难。因此,必须对空间数据进行压缩处理,使得移动空间数据尽可能的简洁,空间数据的压缩显得尤为重要。
当前移动空间信息服务中的基础地图数据以道路、行政区划、房屋、公交站点等点状、线状及面状矢量数据构成。对移动空间信息服务中的空间数据压缩,主要是对其中的矢量数据的压缩。由于点状图形要素可以看成是特殊的线状图形要素,面状图形要素的基础也是线状图形要素,需要由一条或多条线状图形要素围成。因此,线状图形要素的压缩就成为矢量数据压缩中最重要的问题。一般而言,矢量数据压缩是从组成曲线的点集合A中抽取一个子集B,用这个子集B在一定的精度范围内尽可能地反映原数据集合A,而这个子集B的点数应尽可能少。
当前矢量数据压缩方法主要有距离控制类方法(如垂距限值法和曲线数据压缩方法,曲线数据压缩方法通常也称Douglas-Peucker方法)、角度控制类方法(如角度限值法)以及基于小波技术的压缩方法等,这些方法主要针对传统有线网络中的空间数据压缩,对压缩精度要求较高。在移动空间信息服务中,则对数据压缩的精度要求较低,而对压缩的数据量要求尽可能的小。然而,由于受到移动终端屏幕尺寸、分辨率和存储空间的限制,现有的矢量数据压缩方法不能很好地满足移动空间信息服务中对数据压缩的要求。
发明内容
本发明所要解决的技术问题是针对上述现有技术提供一种能有效提高数据压缩率的面向移动用户的矢量地图数据压缩方法。
本发明解决上述技术问题所采用的技术方案为:一种面向移动用户的矢量地图数据压缩方法,包括如下步骤:
步骤1:利用矢量数据压缩方法去除矢量地图数据中的冗余数据点,获得精简的线状数据,线状数据的坐标值为double型数据,double型参数为双精度浮点型参数;
步骤2:在步骤1得到的精简后的线状数据基础上,对剩下的数据点进行坐标轴平移:
(2-1)、分别比较剩下数据点的横坐标和纵坐标,得到横坐标的最小值Xmin和纵坐标的最小值Ymin
(2-2)、以Xmin作为坐标轴在x轴方向的平移距离,Ymin作为坐标轴在y轴方向的平移距离,并以点(Xmin,Ymin)作为坐标原点,建立新的坐标系;
(2-3)、计算剩下数据点平移至新坐标系后的新坐标,在该线状数据中新建两个double型参数分别记录偏移量Xmin和Ymin,用于解压缩;
步骤3:在步骤2得到的平移后的线状数据基础上,对各数据点的新坐标值进行放大处理:
比较各数据点平移后的新横坐标值X和新纵坐标值Y,得到横坐标的最大值Xmax和纵坐标的最大值Ymax,将Xmax乘以10m,补足其为九位数,再将其他数据点的新横坐标值X均乘以10m,同理将Ymax乘以10n,补足其为九位数,再将其他数据点的新纵坐标值Y均乘以10n;在该线状数据中新建两个int32型参数并分别记录放大量m和n,用于解压缩,其中m和n均为正整数,int32型参数为32位整数型参数;
步骤4:将步骤3中得到的放大后的线状数据点的坐标类型由double型强制转换为int32型;
步骤5:将偏移量Xmin和Ymin,放大量m和n,以及步骤4得到的int32型数据点集合,合并记录为压缩后的矢量地图数据。
作为优选,所述步骤1中矢量数据压缩方法为Douglas-Peucker方法,该方法包括以下步骤:
(1-1)、确定矢量地图数据曲线的始点和终点,顺序将矢量地图数据中从始点到终点的所有数据点输入数据源,同时确定误差允许范围dmax
(1-2)、计算经过始点和终点的直线方程y=kx+b,计算始点和终点之间各个点到直线y=kx+b的距离,选取离直线y=kx+b距离最大的点P,得最大距离hmax,其中k为直线的斜率,b为直线在纵坐标轴上的截距;
(1-3)、如果hmax<dmax,则删除始点和终点之间的数据点,以直线y=kx+b代替整条弧线;如果hmax3dmax,则P为保留点,利用同样的方法对始点与P点之间的曲线、P与终点之间的曲线上的数据点进行检测,以确定下一批保留点,依此方法循环进行,直至两端点之间曲线上的数据点与两端点连线的距离最大值小于dmax为止。
与现有技术相比,本发明的优点在于:通过本发明提供的方法进行面向移动用户的矢量地图数据压缩,不仅可以有效地减少无线网络在数据传输时的负荷,节约移动终端的存储空间,而且为将移动地理信息服务扩展到3G移动终端上提供了更加广泛的发挥空间,促进了空间信息共享的广度和深度。
附图说明
图1为本发明实施例中面向移动用户的矢量地图数据压缩方法的流程图;
图2为本发明实施例中Douglas-Peucker方法的流程图。
具体实施方式
以下结合附图实施例对本发明作进一步详细描述。
本发明提供的面向移动用户的矢量地图数据压缩方法,包括如下步骤:
步骤1:利用矢量数据压缩方法去除矢量地图数据中的冗余数据点,获得精简的线状数据,线状数据的坐标值为double型数据,double型参数为双精度浮点型参数;
步骤2:在步骤1得到的精简后的线状数据基础上,对剩下的数据点进行坐标轴平移:
(2-1)、分别比较剩下数据点的横坐标和纵坐标,得到横坐标的最小值Xmin和纵坐标的最小值Ymin
(2-2)、以Xmin作为坐标轴在x轴方向的平移距离,Ymin作为坐标轴在y轴方向的平移距离,并以点(Xmin,Ymin)作为坐标原点,建立新的坐标系;
(2-3)、计算剩下数据点平移至新坐标系后的新坐标,在该线状数据中新建两个double型参数分别记录偏移量Xmin和Ymin,用于解压缩;
步骤3:在步骤2得到的平移后的线状数据基础上,对各数据点的新坐标值进行放大处理:
比较各数据点平移后的新横坐标值X和新纵坐标值Y,得到横坐标的最大值Xmax和纵坐标的最大值Ymax,将Xmax乘以10m,补足其为九位数,再将其他数据点的新横坐标值X均乘以10m,同理将Ymax乘以10n,补足其为九位数,再将其他数据点的新纵坐标值Y均乘以10n;在该线状数据中新建两个int32型参数并分别记录放大量m和n,用于解压缩,其中m和n均为正整数,int32型参数为32位整数型参数;
步骤4:将步骤3中得到的放大后的线状数据点的坐标类型由double型强制转换为int32型;
步骤5:将偏移量Xmin和Ymin,放大量m和n,以及步骤4得到的int32型数据点集合,合并记录为压缩后的矢量地图数据。
作为本发明方法的改进,在步骤1矢量数据压缩方法优选Douglas-Peucker方法进行数据压缩,该方法包括以下步骤:
(1-1)、确定矢量地图数据曲线的始点和终点,顺序将矢量地图数据中从始点到终点的所有数据点输入数据源,同时确定误差允许范围dmax
(1-2)、计算经过始点和终点的直线方程y=kx+b,计算始点和终点之间各个点到直线y=kx+b的距离,选取离直线y=kx+b距离最大的点P,得最大距离hmax,其中k为直线的斜率,b为直线在纵坐标轴上的截距;
(1-3)、如果hmax<dmax,则删除始点和终点之间的数据点,以直线y=kx+b代替整条弧线;如果hmax3dmax,则P为保留点,利用同样的方法对始点与P点之间的曲线、P与终点之间的曲线上的数据点进行检测,以确定下一批保留点,依此方法循环进行,直至两端点之间曲线上的数据点与两端点连线的距离最大值小于dmax为止。
由于面状图形要素的基础是线状图形要素,面状图形要素可以看成是由一条或多条线状图形要素围成,因此,以下结合一条含96个数据点的面状数据对本发明中的面向移动用户的矢量地图数据压缩方法作进一步说明。
步骤1:利用已有的矢量数据压缩方法去除冗余数据点,获得精简的线状数据,本实施例中优选Douglas-Peucker方法对矢量数据进行压缩:
(1)、按顺序依次读入曲线的始点P1(636037.847235,3313442.795090)到终点P96(636037.843345,3313442.789755)的96个数据点,同时设定误差允许范围dmax为0.5;
(2)、计算经过始点P1和终点P96的直线方程为y=1.371465x+2441139.148932;依次计算数据点P2至P95到该直线的距离,选取与该直线距离最大的点P,得最大距离hmax
(3)、如果hmax<0.5,则删除始点P1和终点P96之间的数据点,以(2)中所得直线y=1.371465x+2441139.148932代替整条弧线;如果hmax30.5,则P为保留点,利用同样的方法对始点P1与P之间的曲线、P与终点P96之间的曲线上的数据点进行检测,以确定下一批保留点,依此方法循环进行,直至两端点之间曲线上的数据点与两端点连线的距离最大值小于0.5为止;由此得到精简后的28个数据点,记录这28个数据点的横坐标值和纵坐标值分别为dataX(double[])和dataY(double[]);
步骤2:在步骤1得到的精简后的线状数据基础上,对剩余数据点进行坐标轴平移:
(1)、分别比较剩余28个数据点的横坐标和纵坐标,得到横坐标最小值Xmin为635889.373510,纵坐标最小值Ymin为3313138.687620;
(2)、以635889.373510作为坐标轴x轴方向平移距离,3313138.687620作为坐标轴y轴方向平移距离,并以点(635889.373510,3313138.687620)作为坐标轴原点,建立新的坐标系;
(3)、依次计算28个数据点在该新坐标系中的坐标值,记录其新坐标值数据为dataX1(double[])和dataY1(double[]);
步骤3:在步骤2得到的平移后的线状数据基础上,对各数据点的坐标值进行放大处理:
(1)、比较步骤2中各数据点平移后的横坐标值dataX1(double[])和纵坐标值dataY1(double[]),得横坐标的最大值Xmax为205.900290,纵坐标的最大值Ymax为304.107470;
(2)、对横坐标的最大值205.900290乘以106补足其为九位数,对纵坐标的最大值304.107470乘以106补足其为九位数,则m为6,n为6;
(3)、对步骤2中各数据点的横坐标值dataX1(double[])和纵坐标值dataY1(double[])分别乘以106,记录放大后28个数据点的横坐标值和纵坐标值分别为dataX2(double[])和dataY2(double[]);
步骤4:将步骤3中得到的放大后的线状数据点的横坐标值dataX2(double[])和纵坐标值dataY2(double[])由double型强制转换为int32型dataFX(int32[])和dataFY(int32[]),从而减少数据占用的存储空间;
步骤5:将偏移量635889.373510和3313138.687620,放大量6和6,以及步骤4得到的int32型数据点集合,合并记录到压缩后矢量地图数据文件中,从而实现对矢量地图数据的压缩,该面状数据的压缩率为83.85%。

Claims (2)

1.一种面向移动用户的矢量地图数据压缩方法,其特征在于,包括如下步骤:
步骤1:利用矢量数据压缩方法去除矢量地图数据中的冗余数据点,获得精简的线状数据,线状数据的坐标值为double型数据,double型参数为双精度浮点型参数;
步骤2:在步骤1得到的精简后的线状数据基础上,对剩下的数据点进行坐标轴平移:
(2-1)、分别比较剩下数据点的横坐标和纵坐标,得到横坐标的最小值Xmin和纵坐标的最小值Ymin
(2-2)、以Xmin作为坐标轴在x轴方向的平移距离,Ymin作为坐标轴在y轴方向的平移距离,并以点(Xmin,Ymin)作为坐标原点,建立新的坐标系;
(2-3)、计算剩下数据点平移至新坐标系后的新坐标,在该线状数据中新建两个double型参数分别记录偏移量Xmin和Ymin,用于解压缩;
步骤3:在步骤2得到的平移后的线状数据基础上,对各数据点的新坐标值进行放大处理:
比较各数据点平移后的新横坐标值X和新纵坐标值Y,得到横坐标的最大值Xmax和纵坐标的最大值Ymax,将Xmax乘以10m,补足其为九位数,再将其他数据点的新横坐标值X均乘以10m,同理将Ymax乘以10n,补足其为九位数,再将其他数据点的新纵坐标值Y均乘以10n;在该线状数据中新建两个int32型参数并分别记录放大量m和n,用于解压缩,其中m和n均为正整数,int32型参数为32位整数型参数;
步骤4:将步骤3中得到的放大后的线状数据点的坐标类型由double型强制转换为int32型;
步骤5:将偏移量Xmin和Ymin,放大量m和n,以及步骤4得到的int32型数据点集合,合并记录为压缩后的矢量地图数据。
2.根据权利要求1所述的面向移动用户的矢量地图数据压缩方法,其特征在于,所述步骤1中矢量数据压缩方法为Douglas-Peucker方法,该方法包括以下步骤:
(1-1)、确定矢量地图数据曲线的始点和终点,顺序将矢量地图数据中从始点到终点的所有数据点输入数据源,同时确定误差允许范围dmax
(1-2)、计算经过始点和终点的直线方程y=kx+b,计算始点和终点之间各个点到直线y=kx+b的距离,选取离直线y=kx+b距离最大的点P,得最大距离hmax,其中k为直线的斜率,b为直线在纵坐标轴上的截距;
(1-3)、如果hmax<dmax,则删除始点和终点之间的数据点,以直线y=kx+b代替整条弧线;如果hmax≥dmax,则P为保留点,利用同样的方法对始点与P点之间的曲线、P与终点之间的曲线上的数据点进行检测,以确定下一批保留点,依此方法循环进行,直至两端点之间曲线上的数据点与两端点连线的距离最大值小于dmax为止。
CN201310491681.1A 2013-10-17 2013-10-17 一种面向移动用户的矢量地图数据压缩方法 Expired - Fee Related CN103500223B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310491681.1A CN103500223B (zh) 2013-10-17 2013-10-17 一种面向移动用户的矢量地图数据压缩方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310491681.1A CN103500223B (zh) 2013-10-17 2013-10-17 一种面向移动用户的矢量地图数据压缩方法

Publications (2)

Publication Number Publication Date
CN103500223A CN103500223A (zh) 2014-01-08
CN103500223B true CN103500223B (zh) 2017-12-01

Family

ID=49865434

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310491681.1A Expired - Fee Related CN103500223B (zh) 2013-10-17 2013-10-17 一种面向移动用户的矢量地图数据压缩方法

Country Status (1)

Country Link
CN (1) CN103500223B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104267281B (zh) * 2014-09-25 2017-03-15 国家电网公司 一种分布式低压配电网状态监测数据压缩方法
CN107180033A (zh) * 2016-03-09 2017-09-19 高德软件有限公司 一种电子地图数据存储方法及装置
CN110995849B (zh) * 2019-12-11 2022-04-19 鲁东大学 一种矢量数据位置信息的传输与存储方法
CN111325220B (zh) * 2020-02-17 2023-04-07 腾讯科技(深圳)有限公司 图像生成方法、装置、设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101488141A (zh) * 2008-12-16 2009-07-22 南京莱斯大型电子系统工程有限公司 电子地图数据处理方法
CN101561819A (zh) * 2009-03-05 2009-10-21 中国测绘科学研究院 一种矢量数据精简与压缩方法以及相应的解压缩方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101488141A (zh) * 2008-12-16 2009-07-22 南京莱斯大型电子系统工程有限公司 电子地图数据处理方法
CN101561819A (zh) * 2009-03-05 2009-10-21 中国测绘科学研究院 一种矢量数据精简与压缩方法以及相应的解压缩方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
WebGIS中的地理关系数据库模型研究;李琦 等;《中国图像图形学报》;20000225;第5卷(第2期);第119-123页 *
一种抗压缩的矢量地图水印算法;张佐理;《计算机工程》;20101020;第36卷(第20期);第137-139页 *

Also Published As

Publication number Publication date
CN103500223A (zh) 2014-01-08

Similar Documents

Publication Publication Date Title
USRE40466E1 (en) Method for organizing and compressing spatial data
CN103500223B (zh) 一种面向移动用户的矢量地图数据压缩方法
CN107101641B (zh) 自适应地图比例尺的轨迹点显示的方法
CN103761229B (zh) 数据处理方法及装置
CN103187978A (zh) 一种矢量地图数据压缩及解压缩的方法和装置
CN109063194A (zh) 基于空间编码的数据检索方法及装置
CN106202213A (zh) 一种fpga二进制文件压缩、解压方法及压缩、解压装置
CN107247761A (zh) 基于位图的轨迹编码方法
CN109002452A (zh) 地图瓦片更新方法、装置及计算机可读存储介质
CN110648266A (zh) 一种国土空间规划检测评估与预警信息的管理系统及方法
CN108469263A (zh) 一种基于曲率进行形点优化的方法及系统
CN103746705A (zh) 一种压缩矢量数据的方法
CN104850621B (zh) 一种路网模型自动生成的方法
CN105138527A (zh) 一种数据分类回归方法及装置
CN110096564B (zh) 一种基于bim+gis的路线点定位方法、装置及系统
CN205899536U (zh) 一种基于瓦片地图的地理信息服务系统
CN117146796A (zh) 一种数据处理方法、装置、设备以及计算机可读存储介质
CN106599460A (zh) 一种基于电力gis的可视化应用实现方法
Deng et al. Utility maximization of cloud-based in-car video recording over vehicular access networks
CN115185912A (zh) 点云文件压缩方法、装置、设备、存储介质和程序产品
CN110411450A (zh) 一种用于压缩轨迹的地图匹配方法
CN107180033A (zh) 一种电子地图数据存储方法及装置
CN106649341B (zh) 一种数据处理方法及装置
CN102521360B (zh) 栅格数据传输方法及系统
CN111522899B (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
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20171201