一种矢量地图数据压缩及解压缩的方法和装置的制作方法

文档序号:7523326阅读:214来源:国知局
专利名称:一种矢量地图数据压缩及解压缩的方法和装置的制作方法
技术领域
本发明涉及信息处理领域,具体设计一种矢量地图数据压缩及解压缩的方法和装置。
背景技术
随着计算机制图的发展,传统纸制地图已经逐步被数字地图所代替,数字地图被广泛地应用在电脑、智能手机等。现有数字地图普遍使用矢量地图数据绘制,此时,矢量地图数据的大小对存储空间有限的终端设备而言至关重要,矢量地图数据的压缩率直接关系该终端设备数字地图显示性能的高低。现有技术采用基于网格空间划分技术实现矢量地图数据的压缩,该技术具体包括:用网格将整张地图划分成多个独立的地图空间,为每个独立的地图空间分别建立坐标系,其中,矢量地图数据在网格内坐标系上的取值范围,远远小于其在整张地图坐标系中的取值范围。确定每个网格内坐标系的原点在整张地图坐标系中的坐标,通过网格内的矢量地图数据在整张地图中的坐标,减去数据所在网格内坐标系的原点,得到矢量地图数据在网格内坐标系中的坐标,将得到的网格内坐标系中的坐标进行存储。由于得到的网格内坐标系中的坐标取值范围更小,存储该坐标的空间也就更小。通过对现有技术的研究发现,基于网格空间划分技术实现矢量地图数据的压缩,需要记录每个网格内坐标系的原点在整张地图坐标系中的坐标,在此基础上,再记录每个网格内的点在网格内坐标系的坐标。通常网格的个数会较多,需要存储的每个网格内坐标系的原点在整张地图坐标系中的坐标,该坐标是经纬度坐标,需要较多存储空间;进一步,网格内坐标系的取值范围虽然比经纬度坐标小,但是取值范围仍然比较大,需要较多的存储空间存储。因此,现有技术基于网格空间划分技术实现矢量地图数据的压缩方法,对矢量地图数据的压缩效率有限,仍然需要较多存储空间。

发明内容
本发明实施例提供了一种矢量地图数据压缩及解压缩的方法和装置,提供一种更高效率的压缩和解压缩方案,克服了现有技术中对矢量地图数据的压缩效率有限的缺陷。本发明实施例提供一种矢量地图数据压缩的方法,包括:读取待压缩的矢量地图数据;将待压缩的矢量地图数据中每个位置点的经纬度坐标转换为设定坐标系内的参考坐标;计算所述矢量地图数据中相邻位置点的参考坐标的相对偏移量;获取计算出的所有相对偏移量中最大相对偏移量占用的存储空间位数;在所述矢量地图数据的压缩数据中,将计算出的所有相对偏移量按照所述存储空间位数存储,并存储待压缩的矢量地图数据中首个位置点的参考坐标。
本发明实施例提供一种矢量地图数据解压缩的方法,包括:从待解压缩矢量地图数据中,读取矢量地图数据中首个位置点的参考坐标;从待解压缩矢量地图数据中,读取矢量地图数据中相邻位置点的参考坐标的相对偏移量;根据所述首个位置点的参考坐标和所有相对偏移量,依次计算出除所述首个位置点以外的每个位置点的参考坐标;将所述矢量地图数据中每个位置点的参考坐标转换为经纬度坐标,得到解压缩后的矢量地图数据。本发明实施例提供一种矢量地图数据压缩的装置,所述装置包括:读取单元,转换单元,计算单元,获取单元,和存储单元,所述读取单元,用于读取待压缩的矢量地图数据;所述转换单元,用于将待压缩的矢量地图数据中每个位置点的经纬度坐标转换为设定坐标系内的参考坐标;所述计算单元,用于计算所述矢量地图数据中相邻位置点的参考坐标的相对偏移量;所述获取单元,用于获取计算出的所有相对偏移量中最大相对偏移量占用的存储空间位数;所述存储单元,用于在所述矢量地图数据的压缩数据中,将计算出的所有相对偏移量按照所述存储空间位数存储,并存储待压缩的矢量地图数据中首个位置点的参考坐标。本发明实施例提供一种矢量地图数据解压缩的装置,所述装置包括:第一读取单元,第二读取单元,第一计算单元,和第一转换单元;所述第一读取单元,用于从待解压缩矢量地图数据中,读取矢量地图数据中首个位置点的参考坐标;所述第二读取单元,用于从待解压缩矢量地图数据中,读取矢量地图数据中相邻位置点的参考坐标的相对偏移量;所述第一计算单元,用于根据所述首个位置点的参考坐标和所有相对偏移量,依次计算出除所述首个位置点以外的每个位置点的参考坐标;所述第一转换单元,用于将所述矢量地图数据中每个位置点的参考坐标转换为经纬度坐标,得到解压缩后的矢量地图数据。从以上技术方案可以看出,本发明实施例提供了一种矢量地图数据压缩的方法,该方法通过将待压缩的矢量地图数据中每个位置点的经纬度坐标转换为设定坐标系内的参考坐标,计算所述矢量地图数据中相邻位置点的参考坐标的相对偏移量,获取计算出的所有相对偏移量中最大相对偏移量占用的存储空间位数;在所述矢量地图数据的压缩数据中,将计算出的所有相对偏移量按照存储空间位数存储,并存储待压缩的矢量地图数据中首个位置点的参考坐标。该方法与现有技术相比较,不受空间划分的网格的限制,不需要记录每个网格内坐标系的原点在整张地图坐标系中的坐标,并且本发明中相对偏移量按照最大相对偏移量占用的存储空间位数进行存储,提高了相对偏移量存储空间的利用率,具有更高的压缩效率。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是本发明实施例一提供的一种矢量地图数据压缩的方法流程示意图;图2是本发明实施例二提供的一种矢量地图数据解压缩的方法流程示意图;图3是本发明实施例三提供的一种矢量地图数据压缩的装置示意图;图4是本发明实施例四提供的一种矢量地图数据解压缩的装置示意图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。实施例一本发明实施例提供了一种矢量地图数据压缩的方法,如图1所示,该方法包括:步骤100:读取待压缩的矢量地图数据;步骤101:将待压缩的矢量地图数据中每一个位置点的经纬度坐标转换为设定坐标系内的参考坐标;需要说明的是,矢量地图数据包括:点数据、线数据和面数据。例如:各条道路、省界、国界等可以认为是线数据;各种绿地、水系、大陆面等都可以认为是面数据;兴趣点(Ρ0Ι, Point of Interest)数据可以认为是点数据。而且,线数据和面数据都是由一串空间连续的位置点构成,所述空间连续的位置点是指相邻位置点在空间上距离最近;点数据是离散分布的。需要理解的是,对于需要压缩的矢量地图数据中的面数据和线数据,压缩对象已经是一串在空间连续的位置点的集合。例如:一条赣粤高速公路,该公路用一条线数据表示,这条线数据由X个空间连续的位置点构成;又例如:沙漠在矢量地图数据中用面数据表示,该沙漠在地图上是由Y个空间连续的位置点构成的,该Y个位置点是沙漠边界上的点,且该Y个位置点的连线形成闭合曲线,闭合曲线以内即地图中的沙漠区域。其中,在步骤101中将待压缩的矢量地图数据中每一个位置点的经纬度坐标转换为设定坐标系内的参考坐标,具体包括:用待压缩的矢量地图数据中每个位置点的经纬度坐标乘以预置的精度参数,得到矢量地图数据中每个位置点的高精度坐标;对矢量地图数据中每个位置点的高精度坐标进行取整,得到矢量地图数据在设定坐标系内的参考坐标。为了便于说明,在本发明实施例中以预置的精度参数为一百万为例进行举例,该精度参数能保证绝大多数地图应用对精度的要求。以位置点A为例,其经纬度坐标为:(116.123122,39.2342111);预置精度参数为一百万,设定坐标系是:x: [-180000000,180000000],y: [-90000000,90000000],则
用位置点A的经纬度坐标乘以精度参数,再取整后,A点在设定坐标系内的参考坐标为:(116123122,39234211)。步骤102:计算矢量地图数据中相邻位置点的参考坐标的相对偏移量;假设一个线数据包括η个位置点,经过步骤101后得到这η个位置点在设定坐标
系内的参考坐标为:PQ U0, Y0),P1 (X1, Y1),......Pn-1 (χη-ι,yn-1),相邻位置点的相对偏移量为
P/ (Xi,,y/ ),其中,I <= I <= n-l, x/ = X1-Xp1, y/ = Y1-Yi^0 由此可见,η 个位置点可以获取η-1个相对偏移量。步骤103:获取计算出的所有相对偏移量中最大相对偏移量占用的存储空间位数;沿用上述举例,上述举例中η个位置点获取了 η-1个相对偏移量P/ (x/, y/ ),所述最大相对偏移量是指横轴相对偏移量χ/和纵轴相对偏移量y/中最大的一个。比如,步骤102计算得到了两个相对偏移量P/ (Xl,,y/ ),P2,(x2’,y2’),在(χ/,γ/ )和(χ2,,12 )中X2’最大,则X2’为这两个相对偏移量中最大相对偏移量,步骤103则获取x2’占用的存储空间位数。在实际应用中,若不考虑最大相对偏移量的正负,贝1J可以根据最大相对偏移量的绝对值,此时,获取的最大相对 偏移量的存储空间位数m等于m’ +1,m’为最大相对偏移量的绝对值占用的存储空间位数,增加的一位表示符号位,若考虑最大相对偏移量的正负,则根据最大相对偏移量的实际值,直接获取最大相对偏移量占用的存储空间位数m。步骤104:在所述矢量地图数据的压缩数据中,将计算出的所有相对偏移量按照存储空间位数存储,并存储待压缩的矢量地图数据中首个位置点的参考坐标;其中,若所述矢量地图数据为线数据,则首个位置点可以是该线数据的起点,也可以是该线数据的终点。比如,线数据为道路,则首个位置点可以是该道路的起点,也可以是该道路的终点。需要说明的是,由于空间连续的相邻位置点距离最近,因此步骤102中获取的相对偏移量的数值较小,存储相对偏移量需要的存储空间与存储位置点经纬度坐标需要的存储空间相比,相对偏移量需要的存储空间非常小。采用本发明实施例得到的压缩数据包括:压缩数据头和压缩数据体。压缩数据头的格式如表I所示,包括:待压缩的矢量地图数据中位置点的个数,最大相对偏移量占用的存储空间位数,待压缩的矢量地图数据中首个位置点的参考坐标。在压缩数据头中可以根据设计要求,规定存储点个数的空间大小,如表I中,待压缩的矢量地图数据中位置点的个数占用的存储空间为18位,这表示该压缩数据中可以存储O至262144个位置点的相对偏移量。所述最大相对偏移量占用的存储空间位数是通过上述步骤103获得的,通过所述存储空间位数可以确定相对偏移量的存储空间,从而合理分配存储空间。
权利要求
1.一种矢量地图数据压缩的方法,其特征在于,包括: 读取待压缩的矢量地图数据; 将待压缩的矢量地图数据中每个位置点的经纬度坐标转换为设定坐标系内的参考坐标; 计算所述矢量地图数据中相邻位置点的参考坐标的相对偏移量; 获取计算出的所有相对偏移量中最大相对偏移量占用的存储空间位数; 在所述矢量地图数据的压缩数据中,将计算出的所有相对偏移量按照所述存储空间位数存储,并存储待压缩的矢量地图数据中首个位置点的参考坐标。
2.根据权利要求1所述的方法,其特征在于,所述将待压缩的矢量地图数据中每个位置点的经纬度坐标转换为设定坐标系内的参考坐标具体包括: 用待压缩的矢量地图数据中每个位置点的经纬度坐标乘以预置的精度参数,得到矢量地图数据中每个位置点的高精度坐标; 对矢量地图数据中每个位置点的高精度坐标进行取整,得到矢量地图数据中每个位置点在设定坐标系内的参考坐标。
3.根据权利要求1所述的方法,其特征在于,若读取出的待压缩的矢量地图数据是一串空间离散的点数据,则所述方法进一步包括: 将一串空间离散的点数据按距离最短原则进行排序,排序后前一个点数据到后一个点数据的距离小于所述 前一个点数据到其他点数据的距离。
4.根据权利要求1所述的方法,其特征在于,所述压缩数据包括:压缩数据头和压缩数据体; 所述压缩数据头包括:待压缩的矢量地图数据中位置点的个数,所述最大相对偏移量占用的存储空间位数,所述待压缩的矢量地图数据中首个位置点的参考坐标; 所述压缩数据体包括:所述矢量地图数据中相邻位置点的参考坐标的相对偏移量。
5.一种矢量地图数据解压缩的方法,其特征在于,包括: 从待解压缩矢量地图数据中,读取矢量地图数据中首个位置点的参考坐标; 从待解压缩矢量地图数据中,读取矢量地图数据中相邻位置点的参考坐标的相对偏移量; 根据所述首个位置点的参考坐标和所有相对偏移量,依次计算出除所述首个位置点以外的每个位置点的参考坐标; 将每个位置点的参考坐标转换为经纬度坐标,得到解压缩后的矢量地图数据。
6.根据权利要求5所述的方法,其特征在于,所述将每个位置点的参考坐标转换为经纬度坐标,具体包括: 用每个位置点的参考坐标除以预置的精度参数,得到每个位置点的经纬度坐标。
7.一种矢量地图数据压缩的装置,其特征在于,所述装置包括: 读取单元,转换单元,计算单元,获取单元,和存储单元, 所述读取单元,用于读取待压缩的矢量地图数据; 所述转换单元,用于将待压缩的矢量地图数据中每个位置点的经纬度坐标转换为设定坐标系内的参考坐标; 所述计算单元,用于计算所述矢量地图数据中相邻位置点的参考坐标的相对偏移量;所述获取单元,用于获取计算出的所有相对偏移量中最大相对偏移量占用的存储空间位数; 所述存储单元,用于在所述矢量地图数据的压缩数据中,将计算出的所有相对偏移量按照所述存储空间位数存储,并存储待压缩的矢量地图数据中首个位置点的参考坐标。
8.根据权利要求7所述的装置,其特征在于,所述转换单元,具体用于: 用待压缩的矢量地图数据中每个位置点的经纬度坐标乘以预置的精度参数,得到矢量地图数据中每个位置点的高精度坐标; 对矢量地图数据中每个位置点的高精度坐标进行取整,得到矢量地图数据中每个位置点在设定坐标系内的参考坐标。
9.根据权利要求7所述的装置,其特征在于,所述装置进一步包括:排序单元; 所述排序单元,用于若读取出的待压缩的矢量地图数据是一串离散的点数据,将一串离散的点数据按距离最短原则进行排序,排序后前一个点数据到后一个点数据的距离小于所述前一个点数据到其他点数据的距离。
10.一种矢量地图数据解压缩的装置,其特征在于,所述装置包括: 第一读取单元,第二读取单元,第一计算单元,和第一转换单元; 所述第一读取单元,用于从待解压缩矢量地图数据中,读取待解压缩数据中首个位置点的参考坐标; 所述第二读取单元,用于从待解压缩矢量地图数据中,读取矢量地图数据中相邻位置点的参考坐标的相对偏移量; 所述第一计算单元,用于根据所述首个位置点的参考坐标和所有相对偏移量,依次计算出除所述首个位置点以外的每个位置点的参考坐标; 所述第一转换单元,用于将每个位置点的参考坐标转换为经纬度坐标,得到解压缩后的矢量地图数据。
11.根据权利要求10所述的装置,其特征在于,所述第一转换单元,具体用于用每个位置点的参考坐标除以预置的精度参数,得到每个位置点的经纬度坐标。
全文摘要
本发明实施例公开了一种矢量地图数据压缩及解压缩的方法和装置。该压缩方法包括读取待压缩的矢量地图数据;将待压缩的矢量地图数据中每个位置点的经纬度坐标转换为设定坐标系内的参考坐标;计算所述矢量地图数据中相邻位置点的参考坐标的相对偏移量;获取计算出的所有相对偏移量中最大相对偏移量占用的存储空间位数;在所述矢量地图数据的压缩数据中,将计算出的所有相对偏移量按照所述存储空间位数存储,并存储待压缩的矢量地图数据中首个位置点的参考坐标。该方法与现有技术相比较,不受空间划分的网格的限制,不需要记录每个网格内坐标系的原点在整张地图坐标系中的坐标,压缩数据不受限制,具有更高的压缩效率。
文档编号H03M7/30GK103187978SQ20111045651
公开日2013年7月3日 申请日期2011年12月30日 优先权日2011年12月30日
发明者段思九 申请人:北京图盟科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1