CN107180033A - 一种电子地图数据存储方法及装置 - Google Patents
一种电子地图数据存储方法及装置 Download PDFInfo
- Publication number
- CN107180033A CN107180033A CN201610133482.7A CN201610133482A CN107180033A CN 107180033 A CN107180033 A CN 107180033A CN 201610133482 A CN201610133482 A CN 201610133482A CN 107180033 A CN107180033 A CN 107180033A
- Authority
- CN
- China
- Prior art keywords
- map element
- map
- information
- class
- attribute information
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Remote Sensing (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请涉及一种电子地图数据存储方法及装置。在该电子地图数据存储方法中,针对电子地图的每一个瓦片,将瓦片中的地图元素按照点元素、线元素和面元素进行分类,得到至少一个地图元素类;分别根据每一个地图元素类包含的地图元素的属性信息的数据总量,为所述地图元素类分配相应大小的存储空间;将每一个地图元素类包含的地图元素的属性信息存储至对应的存储空间中。通过本申请提供的方案,降低了电子地图数据存储空间。
Description
技术领域
本申请涉及计算机领域,尤其涉及电子地图数据的存储方法及装置。
背景技术
电子地图又称数字地图,是利用计算机技术,以数字方式存储和查阅的地图。相对于传统的纸质地图,电子地图覆盖面广、查找容易、易于修改和更新,方便用户使用。
电子地图的一个重要存储方式是按照矢量数据方式存储。矢量数据文件中的每个地图元素都是一个自成一体的实体,它具有颜色、形状、轮廓、大小和屏幕位置等属性信息。地图元素可以划分为以下三种类型:点元素(如POI)、线元素(如道路、地铁、铁路、线性水系、天桥、地下通道等)和面元素(如绿地、面状水系、楼块等)。
现有电子地图的矢量数据存储方式为:针对每一种类型的地图元素,确定出该类型的地图元素中包含的属性信息项最多的地图元素,以该地图元素为参考标准确定为该类型的每一个地图元素分配固定长度的存储空间。如点元素中,有些POI包括的属性信息为10项,有些POI包括的属性信息为20项、50项甚至100项,假设包含属性信息最多的POI包含100项,则按照该点元素包含的属性信息为参考标准,则确定为点元素中分配一个能够存储100项属性信息的存储空间。
但是,实际上并不是点元素中的所有POI均会具有100项属性信息,因此为这些POI分配能够存储100项属性信息的存储空间实际上比较浪费存储空间,存储空间得不到有效地利用。同理,线元素和面元素的存储方式均存在以上技术问题。
申请内容
本申请提供了一种电子地图数据存储方法及装置,以降低电子地图数据占用的存储空间。
第一方面,本申请实施例提供了一种电子地图数据存储方法,方法包括:针对电子地图的每一个瓦片,包括:将瓦片中的地图元素按照点元素、线元素和面元素进行分类,得到至少一个地图元素类;分别根据每一个地图元素类包含的地图元素的属性信息的数据总量,为所述地图元素类分配相应大小的存储空间;将每一个地图元素类包含的地图元素的属性信息存储至对应的存储空间中。
第二方面,本申请实施例提供了一种电子地图数据存储装置。该装置包括:地图元素分类模块、存储空间分配模块、属性信息存储模块,其中:该地图元素分类模块,用于针对电子地图的每一个瓦片,将瓦片中的地图元素按照点元素、线元素和面元素进行分类,得到至少一个地图元素类;存储空间分配模块,用于分别根据每一个地图元素类包含的地图元素的属性信息的数据总量,为地图元素类分配相应大小的存储空间;属性信息存储模块,用于将每一个地图元素类包含的地图元素的属性信息存储至对应的存储空间中。
本申请实施例中,针对每一个地图元素类,根据该地图元素类包含的地图元素的属性信息的数据总量,为所述地图元素类分配相应大小的存储空间,即分配的存储空间大小与地图元素类包含的地图元素的属性信息的数据总量对应,克服现有技术根据地图元素中属性信息最多的地图元素为参考标准为每个地图元素分配固定大小的存储空间从而导致属性信息较少的地图元素也会占用很大一块存储空间,继而导致存储空间较为浪费的问题。本申请技术方案对电子地图数据存储方式进行优化,使电子地图数据占用的存储空间大大减少。这对于内存空间较少的终端设备而言是非常实用的。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为本申请实施例提供的电子地图数据存储方法流程图;
图2为面元素的属性信息中位置属性信息示意图;
图3为一个瓦片的示意图;
图4为本申请实施例提供的电子地图数据存储装置的结构示意图。
具体实施方式
下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。
本申请实施例针对电子地图中的每一个瓦片,将各瓦片中的点元素、线元素、面元素进行分类存储,得到点元素类、线元素类、面元素类;并且根据每一个地图元素类(即点元素类或线元素类或面元素类)包含的地图元素的属性信息(如名称、样式、位置等)的数据总量,为各地图元素类分配相应大小的存储空间;再将每一个地图元素类包含的地图元素的属性信息存储至对应的存储空间中。因此,对于每一个地图元素类,为该地图元素类分配的存储空间的大小与该地图元素类包含的各地图元素实际包含的属性信息的数据量相应,不会存在分配的存储空间远远大于地图元素类包含的地图元素的属性信息的数据量从而导致存储空间浪费的问题。
本申请实施例提供了一种电子地图数据存储方法,该方法的执行主体可以是位于网络侧的服务器,也可以是位于用户侧的终端设备(如手机、PAD、导航仪等)。如图1所示,该方法针对电子地图中的每一个瓦片,执行以下步骤101、步骤102和步骤103,其中:
步骤101,将瓦片中的地图元素按照点元素、线元素和面元素进行分类,得到至少一个地图元素类,即得到点元素类、线元素类、面元素类中的一个或多个。
在步骤101之前还包括:获取电子地图源数据,该电子地图源数据可以是由具有地图测绘资质的商家预先通过采集、测绘等方式得到的数据,该电子地图源数据中包括所有地图元素的源数据,即每个地图元素对应一条源数据,该源数据中包含地图元素的属性信息。并且按照行政区域(如省、市、区等)将电子地图源数据分开存储以形成不同的数据文件。在各数据文件中数据的存储格式可以SHP或DBF。
更细致的,本申请实施例中,针对每个行政区域对应的数据文件,将该数据文件中的电子地图源数据按照不同的比例尺分别存储为多个子文件;在每一个子文件中,将该行政区划的电子地图数据划分成多个网格(即瓦片,tile),每个瓦片中包含有点元素、线元素和面元素。每个瓦片占据电子地图中的一定地理区域,拼接行政区域中的所有瓦片即可得到该行政区域的电子地图。
本申请步骤101即为将前述每一个瓦片中的地图元素按照点元素、线元素和面元素进行分类以得到至少一个地图元素类。
点元素如可以为电子地图数据中的POI、路牌、路名等,点元素的属性信息可以包括但不仅限于名称、地址、位置(为一个经纬度坐标或像素坐标)、类型、样式、电话号码、营业信息、邮编等。例如,一个点元素为一家餐厅,其属性信息包括该餐厅名称、样式、位置、地址、电话、营业时间等。
线元素如可以为电子地图数据中的道路、地铁、铁路、线性水系(如河流)、天桥、隧道、地下通道等,线元素的属性信息可以包括但不仅限于名称、位置(包括构成线元素的多个形状点的经纬度坐标或像素坐标)、样式、道路类型、道路等级、路口、link信息等。如某一线元素为一条道路,则该线元素包含的属性信息为:道路名称、位置、样式、道路级别、道路包含的多个链路(即link)、节点(即node,如路口、红绿灯)等。
面元素如可以为绿地、面状水系(如湖泊等)、楼块、景区等,其多数为一个封闭的多边形区域,面元素的属性信息可以包括但不仅限于名称、位置(如包括构成所述面元素的形状点的经纬度坐标或屏幕坐标)、样式、地址、类型、级别、面积。例如,一面元素为一个公园,其包含的属性信息包括:公园名称、位置、地址、样式、等级等,对于面元素的属性信息中的位置属性信息可通过图2及以下内容阐释。
图2是面元素的属性信息中的位置属性信息的其中一个示意图。假设该图2示出的是一个公园的位置属性信息。该公园的位置属性信息包括多个形状点的经纬度坐标。形状点为该面元素的边界点,即连接面元素的形状点即可得到该面元素的空间形状及位置。
步骤102,分别根据每一个地图元素类包含的地图元素的属性信息的数据总量,为该地图元素类分配相应大小的存储空间。
例如,地图元素类为点元素类,则根据该点元素类的所有点元素包含的属性信息的数据总量,为该点元素类分配与该数据总量相应大小的存储空间,该存储空间用于存储点元素类包含的各点元素的属性信息。为线元素类和面元素类分配存储空间的方式类似,在此不再赘述。
步骤103,将每一个地图元素类包含的地图元素的属性信息存储至对应的存储空间中。
优选地,每一个地图元素类包含的各地图元素的属性信息中均会包括样式属性信息,且可能会存在多个地图元素的样式属性信息相同,若存储该地图元素类中的每一个地图元素的样式属性信息则可能需要占用大量的存储空间,因此,为进一步节省存储空间,本实施例对于样式属性信息相同的地图元素分为一类,针对该一类地图元素仅存储一次样式属性信息即可,因此,前述步骤103的一个实现方式如下:针对每一个地图元素类,执行以下步骤:步骤103a、将该地图元素类中属性信息中的样式属性信息相同的地图元素分为一类,得到至少一个地图元素子类;步骤103b、依次将各地图元素子类包含的地图元素的属性信息连续存储在该地图元素类对应的存储空间中。
如图3所示为一个瓦片,以点元素为例,在该瓦片中点元素为公园的点元素其在电子地图中绘制出来的样式是一样的,如朝阳公园、北海公园;还例如,该瓦片中的点元素为大学的点元素在电子地图中绘制出的样式是一样的,如对外经济贸易大学、中国中医科学院和北京师范大学等。
优选地,上述步骤103b中依次将各地图元素子类包含的地图元素的属性信息连续存储在该地图元素类对应的存储空间中,具体实现可如下:依次对每一个地图元素子类,执行以下步骤103b-1和步骤103b-2,其中:步骤103b-1:在地图元素子类所属的地图元素类对应的存储空间中存储该地图元素子类的样式属性信息;步骤103b-2:依次存储各地图元素的除样式属性信息之外的其他属性信息。如下表1所示。假设该表1存储的属性信息为某一地图元素类包含的地图元素的属性信息,通过表1可知,对于一个地图元素子类仅存储一次样式属性信息,无需存储该地图元素子类中所有地图元素的样式属性信息,因此,节省了存储空间。
表1
本实施例中,针对每一个地图元素类,其包含的每一个地图元素均具有一条源数据,该条源数据包含该地图元素的所有属性信息,地图元素的源数据的属性信息按照预设的与该地图元素所属的地图元素类对应的字段模板存储,如每一个字段对应一个属性信息。属于同一个地图元素类的所有地图元素采用的字段模板相同,该字段模板包含的字段的数目与该地图元素类中包含属性信息项最多的一个地图元素所包含的属性信息项的数量一致。比如说,点元素类中包含属性信息项最多的一个地图元素包含100个属性信息项,则点元素类的点元素的源数据采用的字段模板包括100个字段,每个字段用于存储一个对应的属性信息。点元素的源数据中若包含字段模板中字段对应的属性信息,则在该字段中存储该点元素的相应属性信息;若不包含字段模板中字段对应的属性信息,则在该字段中存储信息为空。如下表2所示。表2以点元素类为例,该点元素类中包含属性信息项最多的点元素包含7个属性信息项,则点元素的源数据采用的字段模板包含7个字段,该7个字段分别对应名称、位置、地址、电话、营业信息、类型、样式。其中点元素POI1包含5个属性信息,点元素POI2包含6个属性信息,点元素POI3包含6个属性信息,则在相应的字段存储相应的属性信息,如表2所示。点元素类对应的字段模板、线元素类对应的字段模板和面元素类对应的字段模板有所不同。
下面继续阐述如何依次存储各地图元素的除样式属性信息之外的其他属性信息。在一个示例中,前述步骤103b-2中,依次存储各地图元素的除样式属性信息之外的其他属性信息,具体可如下:依次按照预置的属性信息读取顺序读取每一个地图元素包含的除样式属性信息之外的每一项属性信息,针对每次读取操作执行以下步骤a:若该地图元素中包含当前读取属性信息则存储该地图元素的当前读取属性信息并读取下一属性信息;若该地图元素中不包含该当前读取属性信息则读取下一属性信息;依此直到按照该属性信息读取顺序读取完该地图元素的属性信息。
本申请实施例中,每一个地图元素类对应的属性信息读取顺序根据该地图元素类对应的字段模板生成,即属性信息读取顺序为字段模板中的字段先后顺序,因此只要根据该属性信息读取顺序依次即可读取出地图元素的源数据中包含的所有属性信息。
优选地,在节省空间的基础上,以便于后续快速读取地图元素的属性信息,本申请实施例可以预先针对某些属性信息设定为特殊属性信息(是指并非所有地图元素均会包含的属性信息),并在存储地图元素的特殊属性信息时增加一位标志位,在该标志位中表明该地图元素是否包含该特殊属性信息,以便后续读取该地图元素的属性信息时能够快速获知地图元素包含哪些属性信息和不包含哪些属性信息。例如,对于点元素类而言,所有点元素均会包括名称、地址、位置、类型和样式等,但是并非所有点元素均包括电话、营业信息等,因此,可以将点元素类中的电话、营业信息等属性信息设置为特殊属性信息。还例如,对于线元素类而言,所有线元素均会包括名称、位置、道路级别和样式等,但是并非所有线元素均包括路口、红绿灯、车道数等,因此,可以将线元素类中的路口、红绿灯和车道数等设置为特殊属性信息。还例如,对于面元素类而言,所有面元素均会包括名称、位置、级别和样式等,但是并非所有面元素均包括面积、楼层高度等,因此,可以将面元素类中的面积、楼层高度等设置为特殊属性信息。
因此,前述依次按照预置的属性信息读取顺序读取每一个地图元素包含的除样式属性信息之外的每一项属性信息,针对每次读取操作该执行以下步骤b:
步骤b:判断当前读取属性信息是否为预置的特殊属性信息;若否则执行前述步骤a;若是则增加标志位,并在该标志位中填写用于表明该地图元素中是否包含该当前读取属性信息的标识,并执行前述步骤a;其中,该特殊属性信息为预置的并非所有地图元素均包含的属性信息。
具体地,前述标志位占用一个bit,在该标志位标识该地图元素是否包含当前读取属性信息。如标志位中的标识为0则表示不存在,标识为1则表示存在。假设当前读取的是点元素的电话属性信息,则确定电话为特殊属性信息,此时增加一个标志位,在该标志位中填写用于表示该点元素是否包含电话属性信息的标识。标识可以用二进制的0和1表示,也可以用其他字符表示,如标识为N则表示不存在,标识为Y则表示存在,本申请并不做严格限定。下面结合表2详细阐述,表2中存储的为点元素属性信息,假设邮编为特殊属性信息,点元素类对应的字段模板为名称、位置和邮编,则属性信息读取顺序先后依次为名称、位置和邮编,则按照前述步骤a和步骤b存储点元素的属性信息可如下表2。
样式1 | 名称1 | 位置1 | 1 | 邮编1 | 名称2 | 位置2 |
0 | 名称3 | 位置3 | 1 | 邮编3 | …… | …… |
样式2 | 名称m | 位置n | 0 | 名称m | 位置p | 1 |
邮编s | 名称t | 位置q | 0 | …… | …… | …… |
样式3 | 名称h | 位置v | 0 | …… | …… | …… |
表2
由前述内容可知,所有的地图元素均会包括名称,电子地图中地图元素的名称一般是一串汉字字符串,占用的内存很大,并且在一个电子地图中名称一致的地图元素非常多,若存储每一个地图元素的汉子字符串名称则会占用大量的存储空间。比如说点元素类中,点元素名称为麦当劳、肯德基、中国银行、建设银行等的点元素非常多;还例如,线元素类中,线元素名称为中山路、长安路等的线元素非常多;还例如,面元素类中,面元素名称为中山公园、朝阳公园等的面元素非常多。在一张电子地图中存在大量地图元素的名称相同。因为,更优的,为进一步节省存储空间,针对每一个地图元素类,预先在某一存储空间(后续称为名称存储空间)统一存储该地图元素类包含的所有地图元素的名称,排除冗余,如针对北京市的电子地图,地图元素名称为麦当劳的地图元素,在该存储空间仅存储一次麦当劳,无需存储所有地图元素的名称。同理,对于点元素类和面元素类,还可以分别在某一存储空间(后续称为地址存储空间)预先存储点元素类的所有点元素的地址以及预先存储面元素类的所有面元素的地址,排除冗余。
因此,优选地,若当前读取属性信息为地图元素的名称或地址,则所述步骤a中存储所述地图元素的当前读取属性信息,具体包括:
从预置的名称存储空间中读取所述地图元素的名称在所述名称存储空间中的名称偏移量,并将所述名称偏移量替代所述地图元素的名称作为地图元素的当前读取属性信息存储;其中名称存储空间中存储有各地图元素类包含的地图元素的名称;
从预置的地址存储空间中读取所述地图元素的地址在所述地址存储空间中的地址偏移量,并将所述地址偏移量替代所述地图元素的地址作为地图元素的当前读取属性信息存储;其中地址存储空间中存储有各地图元素类包含的地图元素的地址。
可参见以下表3和表4。由于在存储地图元素的名称/地址时并不直接存储名称的汉字字符串,而是存储其名称/地址在名称存储空间/地址存储空间中的名称/地址偏移量,而名称/地址偏移量一般为一个数值,而数值占用的存储空间较小,因此用数值来替代汉字字符串,节省了存储空间。
表3仅示意性地示出在名称存储空间中存储线元素类中线元素的名称
名称偏移量 | 名称 |
0 | 京新高速 |
5 | 大广高速 |
…… | …… |
表3
表4仅示意性地示出在地址存储空间中存储点元素类中点元素的名称
表4
本发明实施例中,由于线元素和面元素的位置属性信息中包含线元素和面元素的多各形状点的经纬度坐标信息,若直接存储线元素的所有形状点的经纬度坐标和面元素的所有形状点的经纬度坐标,将会耗费大量的存储空间,因此,为进一步节省存储空间,本发明实施例中,针对线元素类中的线元素,在存储该线元素的位置信息时仅存储首个形状点的经纬度坐标,其他形状点的经纬度坐标用该形状点与前一个形状点的经纬度坐标差值来替代;同理,针对面元素类中的面元素,在存储该面元素的位置信息时仅存储首个形状点的经纬度坐标,其他形状点的经纬度坐标用该形状点与前一个形状点的经纬度坐标差值来替代,或者其他形状点的经纬度坐标用该形状点与首个形状点的经纬度坐标差值来替代。由于差值比实际的经纬度坐标占用的内存空间小,因此该种存储方式更进一步节省了存储空间。
因此,前述若所述地图元素类对应的地图元素包含的位置属性信息包括至少两个形状点的经纬度坐标时;若当前读取属性信息为地图元素的位置属性信息;则所述步骤a中存储所述地图元素的当前读取属性信息,具体包括:
依次存储该地图元素的首形状点的坐标以及后一形状点与前一形状点的坐标差值。
还或者,在又一个示例中,将点元素类和/或线元素类和/或面元素类的地图元素的经纬度坐标转换成像素坐标,在存储该地图元素的位置信息时存储相应的各经纬度坐标对应的像素坐标而不是经纬度坐标,由于像素坐标相对于经纬度坐标来说,数值更小,因此采用像素坐标方式存储各地图元素的位置属性,能够进一步降低存储空间。例如,针对电子地图数据中的每一个瓦片,每个瓦片的横纵像素坐标的范围均为(0~256)像素,将每个瓦片的经纬度坐标转换为像素坐标,即将每一瓦片中的地图元素坐标转换成像素坐标。
在再一个示例中,在电子地图数据中,各地图元素包含的所有属性信息的存储单位是比特。而现有技术中,最小存储单位是字节,即8个比特。也就是说,在现有技术中,即使存储少量信息,也至少需要8个比特位。因此,以比特为存储单位存储电子地图,相对于以字节为存储单位存储电子地图,所占用存储空间更小。
本申请实施例中,一方面,针对每一个地图元素类,根据该地图元素类包含的地图元素的属性信息的数据总量,为所述地图元素类分配相应大小的存储空间,即分配的存储空间大小与地图元素类包含的地图元素的属性信息的数据总量对应,克服现有技术根据地图元素中属性信息最多的地图元素为参考标准为每个地图元素分配固定大小的存储空间从而导致属性信息较少的地图元素也会占用很大一块存储空间,继而导致存储空间较为浪费的问题。本申请技术方案对电子地图数据存储方式进行优化,使电子地图数据占用的存储空间大大减少。这对于内存空间较少的终端设备而言是非常实用的。另一方面,对于每一个地图元素类而言,该地图元素类的样式属性信息相同的地图元素分为一类并仅存储依次样式属性信息,因此,无需存储每一个地图元素的样式属性信息,因此,进一步降低了存储空间。再一方面,本申请实施例中,在存储地图元素的名称和/地址时,直接存储该地图元素的名称和/或地址在其他存储空间中的偏移量而不是直接存储地图元素的汉子字符串,因此更进一步降低存储空间。最后一方面,对于线元素和面元素,在存储其位置信息时并不是直接存储其所有形状点的经纬度坐标,而是仅存储首形状点的经纬度坐标,对于其他每个形状点,存储该形状点与前一个形状点或首形状点的差值,从而进一步降低了存储空间。综上,采用本申请技术方案,相对于现有技术而言大大提高了存储空间利用率。
图4是本申请一个实施例的一种电子地图数据存储装置400。电子地图数据存储装置400包括地图元素分类模块420、存储空间分配模块430、属性信息存储模块440。优选地,前述装置400还可进一步包括源数据获取模块410。
源数据获取模块410,用于获取电子地图源数据,并针对电子地图源数据中的每一个瓦片,触发所述地图元素分类模块420;
地图元素分类模块420,用于针对电子地图的每一个瓦片,将瓦片中的地图元素按照点元素、线元素和面元素进行分类,得到至少一个地图元素类。
存储空间分配模块430,用于根据每一个地图元素类包含的地图元素的属性信息的数据总量,分别为所述地图元素类的各地图元素分配相应大小的存储空间。
属性信息存储模块440,用于将每一个地图元素类包含的地图元素的属性信息存储至对应的存储空间中。
优选地,该属性信息存储模块440包括地图元素子类获取模块441、地图元素子类存储模块442,其中:
地图元素子类获取模块441,用于针对每一个地图元素类,将该地图元素类中属性信息中的样式属性信息相同的地图元素分为一类,得到至少一个地图元素子类。
地图元素子类存储模块442,用于针对每一个地图元素类,依次将各地图元素子类包含的地图元素的属性信息连续存储在该地图元素类对应的存储空间中。
优选地,地图元素子类存储模块442具体用于,依次对每一个地图元素子类执行以下步骤:在所述地图元素子类所属地图元素类对应的存储空间中存储该地图元素子类的样式属性信息,以及依次存储各地图元素的除样式属性信息之外的其他属性信息。
优选地,该地图元素子类存储模块442针对该依次存储各地图元素的除样式属性信息之外的其他属性信息具体用于:依次按照预置的属性信息读取顺序读取每一个地图元素包含的除样式属性信息之外的每一项属性信息;针对每次读取操作执行以下步骤a:若该地图元素中包含当前读取属性信息则存储该地图元素的当前读取属性信息并读取下一属性信息,若该地图元素中不包含该当前读取属性信息则读取下一属性信息;依此直到按照该属性信息读取顺序读取完该地图元素的属性信息。
更进一步地,地图元素子类存储模块442针对每次读取操作,进一步的在执行步骤a之前还执行以下步骤b:
步骤b:判断当前读取属性信息是否为预置的特殊属性信息,若否则执行前述步骤a;若是则:增加标志位,并在该标志位中填写用于表明该地图元素中是否包含该当前读取属性信息的标识并执行前述步骤a;其中,该特殊属性信息为预置的并非所有地图元素均包含的属性信息。具体参见前文表2及其相关内容。
进一步地,若该地图元素子类存储模块当前读取属性信息为地图元素的名称或地址,则在步骤a中存储所述地图元素的当前读取属性信息具体用于:
从预置的名称存储空间中读取该地图元素的名称在该名称存储空间中的名称偏移量,并将该名称偏移量替代该地图元素的名称作为地图元素的当前读取属性信息存储;其中名称存储空间中存储有各地图元素类包含的地图元素的名称;具体可参见前文表3及相关内容阐释。
从预置的地址存储空间中读取该地图元素的地址在该地址存储空间中的地址偏移量,并将该地址偏移量替代该地图元素的地址作为地图元素的当前读取属性信息存储;其中地址存储空间中存储有各地图元素类包含的地图元素的地址。具体可参见表4及相关内容阐释。
进一步地,若该地图元素类对应的地图元素包含的位置属性信息包括至少两个形状点的经纬度坐标时;若该地图元素子类存储模块当前读取属性信息为地图元素的位置属性信息;则该地图元素子类存储模块在所述步骤a中存储所述地图元素的当前读取属性信息具体用于:依次存储该地图元素的首形状点的经纬度坐标以及后一形状点与前一形状点的经纬度坐标差值。
在又一个示例中,将点元素类和/或线元素类和/或面元素类的经纬度坐标转换成像素坐标,进行存储,由于像素坐标相对于经纬度坐标来说,数值更小,因此采用像素坐标方式存储各地图元素的位置属性,能够进一步降低存储空间。
在再一个示例中,在电子地图数据中,各地图元素包含的所有属性信息的存储单位是比特。而现有技术中,最小存储单位是字节,即8个比特。也就是说,在现有技术中,即使存储少量信息,也至少需要8个比特位。因此,以比特为存储单位存储电子地图,相对于以字节为存储单位存储电子地图,所占用存储空间更小。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本申请所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
以上所述的具体实施方式,对本申请的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本申请的具体实施方式而已,并不用于限定本申请的保护范围,凡在本申请的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本申请的保护范围之内。
Claims (14)
1.一种电子地图数据存储方法,其特征在于,针对电子地图的每一个瓦片,包括:
将瓦片中的地图元素按照点元素、线元素和面元素进行分类,得到至少一个地图元素类;
分别根据每一个地图元素类包含的地图元素的属性信息的数据总量,为所述地图元素类分配相应大小的存储空间;
将每一个地图元素类包含的地图元素的属性信息存储至对应的存储空间中。
2.根据权利要求1所述的方法,其特征在于,将每一个地图元素类包含的地图元素的属性信息存储至对应的存储空间中,具体包括:
针对每一个地图元素类,执行以下步骤:
将所述地图元素类中属性信息中的样式属性信息相同的地图元素分为一类,得到至少一个地图元素子类;
依次将各地图元素子类包含的地图元素的属性信息连续存储在所述地图元素类对应的存储空间中。
3.根据权利要求2所述的方法,其特征在于,所述依次将各地图元素子类包含的地图元素的属性信息连续存储在所述地图元素类对应的存储空间中,具体包括:
依次对每一个地图元素子类,执行以下步骤:
在所述地图元素子类所属地图元素类对应的存储空间中存储该地图元素子类的样式属性信息以及依次存储各地图元素的除样式属性信息之外的其他属性信息。
4.根据权利要求3所述的方法,其特征在于,所述依次存储各地图元素的除样式属性信息之外的其他属性信息,具体包括:
依次按照预置的属性信息读取顺序读取每一个地图元素包含的除样式属性信息之外的每一项属性信息,针对每次读取操作执行以下步骤a:若所述地图元素中包含当前读取属性信息则存储所述地图元素的当前读取属性信息并读取下一属性信息;若所述地图元素中不包含所述当前读取属性信息则读取下一属性信息;依此直到按照所述属性信息读取顺序读取完所述地图元素的属性信息。
5.根据权利要求4所述的方法,其特征在于,针对每次读取操作在执行步骤a之前还执行以下步骤b:
步骤b:判断当前读取属性信息是否为预置的特殊属性信息;若否则执行前述步骤a;若是则:增加标志位,并在该标志位中填写用于表明所述地图元素中是否包含所述当前读取属性信息的标识并执行前述步骤a;其中,所述特殊属性信息为预置的并非所有地图元素均包含的属性信息。
6.根据权利要求4所述的方法,其特征在于,若当前读取属性信息为地图元素的名称或地址,则所述步骤a中存储所述地图元素的当前读取属性信息,具体包括:
从预置的名称存储空间中读取所述地图元素的名称在所述名称存储空间中的名称偏移量,并将所述名称偏移量替代所述地图元素的名称作为地图元素的当前读取属性信息存储;其中名称存储空间中存储有各地图元素类包含的地图元素的名称;
从预置的地址存储空间中读取所述地图元素的地址在所述地址存储空间中的地址偏移量,并将所述地址偏移量替代所述地图元素的地址作为地图元素的当前读取属性信息存储;其中地址存储空间中存储有各地图元素类包含的地图元素的地址。
7.根据权利要求4所述的方法,其特征在于,若所述地图元素类对应的地图元素包含的位置属性信息包括至少两个形状点的经纬度坐标时;若当前读取属性信息为地图元素的位置属性信息;则所述步骤a中存储所述地图元素的当前读取属性信息,具体包括:
依次存储该地图元素的首形状点的坐标以及后一形状点与前一形状点的坐标差值。
8.一种电子地图数据存储装置,其特征在于,包括:
地图元素分类模块,用于针对电子地图的每一个瓦片,将瓦片中的地图元素按照点元素、线元素和面元素进行分类,得到至少一个地图元素类;
存储空间分配模块,用于根据每一个地图元素类包含的地图元素的属性信息的数据总量,分别为所述地图元素类分配相应大小的存储空间;
属性信息存储模块,用于将每一个地图元素类包含的地图元素的属性信息存储至对应的存储空间中。
9.根据权利要求8所述的装置,其特征在于,所述属性信息存储模块包括:
地图元素子类分类模块,用于针对每一个地图元素类,将所述地图元素类中属性信息中的样式属性信息相同的地图元素分为一类,得到至少一个地图元素子类;
地图元素子类存储模块,用于针对每一个地图元素类,依次将各地图元素子类包含的地图元素的属性信息连续存储在所述地图元素类对应的存储空间中。
10.根据权利要求9所述的装置,其特征在于,所述地图元素子类存储模块具体用于:
依次对每一个地图元素子类执行以下步骤:在所述地图元素子类所属地图元素类对应的存储空间中存储该地图元素子类的样式属性信息以及依次存储各地图元素的除样式属性信息之外的其他属性信息。
11.根据权利要求10所述的装置,其特征在于,所述地图元素子类存储模块针对所述依次存储各地图元素的除样式属性信息之外的其他属性信息具体用于:
依次按照预置的属性信息读取顺序读取每一个地图元素包含的除样式属性信息之外的每一项属性信息;针对每次读取操作执行以下步骤a:若所述地图元素中包含当前读取属性信息则存储所述地图元素的当前读取属性信息并读取下一属性信息,若所述地图元素中不包含所述当前读取属性信息则读取下一属性信息;依此直到按照所述属性信息读取顺序读取完所述地图元素的属性信息。
12.根据权利要求11所述的装置,其特征在于,所述地图元素子类存储模块针对每次读取操作,进一步的在执行步骤a之前还执行以下步骤b:
步骤b:判断当前读取属性信息是否为预置的特殊属性信息,若否则执行前述步骤a;若是则:增加标志位,并在该标志位中填写用于表明所述地图元素中是否包含所述当前读取属性信息的标识并执行前述步骤a;其中,所述特殊属性信息为预置的并非所有地图元素均包含的属性信息。
13.根据权利要求11所述的装置,其特征在于,若所述地图元素子类存储模块当前读取属性信息为地图元素的名称或地址,则所述地图元素子类存储模块在步骤a中存储所述地图元素的当前读取属性信息具体用于:
从预置的名称存储空间中读取所述地图元素的名称在所述名称存储空间中的名称偏移量,并将所述名称偏移量替代所述地图元素的名称作为地图元素的当前读取属性信息存储;其中名称存储空间中存储有各地图元素类包含的地图元素的名称;
从预置的地址存储空间中读取所述地图元素的地址在所述地址存储空间中的地址偏移量,并将所述地址偏移量替代所述地图元素的地址作为地图元素的当前读取属性信息存储;其中地址存储空间中存储有各地图元素类包含的地图元素的地址。
14.根据权利要求11所述的装置,其特征在于,若所述地图元素类对应的地图元素包含的位置属性信息包括至少两个形状点的经纬度坐标时;若所述地图元素子类存储模块当前读取属性信息为地图元素的位置属性信息;则所述地图元素子类存储模块在所述步骤a中存储所述地图元素的当前读取属性信息具体用于,依次存储该地图元素的首形状点的坐标以及后一形状点与前一形状点的坐标差值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610133482.7A CN107180033A (zh) | 2016-03-09 | 2016-03-09 | 一种电子地图数据存储方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610133482.7A CN107180033A (zh) | 2016-03-09 | 2016-03-09 | 一种电子地图数据存储方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107180033A true CN107180033A (zh) | 2017-09-19 |
Family
ID=59829697
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610133482.7A Pending CN107180033A (zh) | 2016-03-09 | 2016-03-09 | 一种电子地图数据存储方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107180033A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110765298A (zh) * | 2019-10-18 | 2020-02-07 | 中国电子科技集团公司第二十八研究所 | 矢量数据几何属性解耦的瓦片编码方法 |
CN113704304A (zh) * | 2021-08-30 | 2021-11-26 | 北京百度网讯科技有限公司 | 路口数据处理方法、路口检索方法及装置 |
CN114185613A (zh) * | 2021-11-30 | 2022-03-15 | 广州景骐科技有限公司 | 一种语义地图分块方法、装置、交通工具及存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101271478A (zh) * | 2008-05-07 | 2008-09-24 | 北京航空航天大学 | 基于聚类分块的只读兴趣点数据库压缩存储方法 |
CN102252685A (zh) * | 2010-05-21 | 2011-11-23 | 科菱航睿空间信息技术有限公司 | 导航电子地图数据处理方法及基于该处理方法的存储方法 |
CN102436463A (zh) * | 2011-08-31 | 2012-05-02 | 航天恒星科技有限公司 | 一种导航数据转换中内存管理的方法 |
CN102855322A (zh) * | 2012-09-11 | 2013-01-02 | 哈尔滨工程大学 | 一种基于空间探索技术的地图数据存储方法 |
CN103137005A (zh) * | 2011-11-30 | 2013-06-05 | 上海博泰悦臻电子设备制造有限公司 | 地图的图标的存储方法及装置、终端 |
CN103137010A (zh) * | 2011-11-30 | 2013-06-05 | 上海博泰悦臻电子设备制造有限公司 | 地图中兴趣点的名称的存储方法及加载方法、车载系统 |
CN103187978A (zh) * | 2011-12-30 | 2013-07-03 | 北京图盟科技有限公司 | 一种矢量地图数据压缩及解压缩的方法和装置 |
CN103500223A (zh) * | 2013-10-17 | 2014-01-08 | 宁波工程学院 | 一种面向移动用户的矢量地图数据压缩方法 |
CN103514199A (zh) * | 2012-06-25 | 2014-01-15 | 高德软件有限公司 | Poi数据处理方法及其装置、poi检索方法及其装置 |
CN106257446A (zh) * | 2015-06-19 | 2016-12-28 | 苏州市大创信息运用有限公司 | 基于经纬度的地理信息手绘系统 |
-
2016
- 2016-03-09 CN CN201610133482.7A patent/CN107180033A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101271478A (zh) * | 2008-05-07 | 2008-09-24 | 北京航空航天大学 | 基于聚类分块的只读兴趣点数据库压缩存储方法 |
CN102252685A (zh) * | 2010-05-21 | 2011-11-23 | 科菱航睿空间信息技术有限公司 | 导航电子地图数据处理方法及基于该处理方法的存储方法 |
CN102436463A (zh) * | 2011-08-31 | 2012-05-02 | 航天恒星科技有限公司 | 一种导航数据转换中内存管理的方法 |
CN103137005A (zh) * | 2011-11-30 | 2013-06-05 | 上海博泰悦臻电子设备制造有限公司 | 地图的图标的存储方法及装置、终端 |
CN103137010A (zh) * | 2011-11-30 | 2013-06-05 | 上海博泰悦臻电子设备制造有限公司 | 地图中兴趣点的名称的存储方法及加载方法、车载系统 |
CN103187978A (zh) * | 2011-12-30 | 2013-07-03 | 北京图盟科技有限公司 | 一种矢量地图数据压缩及解压缩的方法和装置 |
CN103514199A (zh) * | 2012-06-25 | 2014-01-15 | 高德软件有限公司 | Poi数据处理方法及其装置、poi检索方法及其装置 |
CN102855322A (zh) * | 2012-09-11 | 2013-01-02 | 哈尔滨工程大学 | 一种基于空间探索技术的地图数据存储方法 |
CN103500223A (zh) * | 2013-10-17 | 2014-01-08 | 宁波工程学院 | 一种面向移动用户的矢量地图数据压缩方法 |
CN106257446A (zh) * | 2015-06-19 | 2016-12-28 | 苏州市大创信息运用有限公司 | 基于经纬度的地理信息手绘系统 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110765298A (zh) * | 2019-10-18 | 2020-02-07 | 中国电子科技集团公司第二十八研究所 | 矢量数据几何属性解耦的瓦片编码方法 |
CN110765298B (zh) * | 2019-10-18 | 2022-03-15 | 中国电子科技集团公司第二十八研究所 | 矢量数据几何属性解耦的瓦片编码方法 |
CN113704304A (zh) * | 2021-08-30 | 2021-11-26 | 北京百度网讯科技有限公司 | 路口数据处理方法、路口检索方法及装置 |
CN113704304B (zh) * | 2021-08-30 | 2024-03-05 | 北京百度网讯科技有限公司 | 路口数据处理方法、路口检索方法及装置 |
CN114185613A (zh) * | 2021-11-30 | 2022-03-15 | 广州景骐科技有限公司 | 一种语义地图分块方法、装置、交通工具及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3332225B2 (ja) | 地図提供システム | |
CN104252489B (zh) | 一种根据经纬度数据快速获得位置文字描述信息的方法 | |
CN107193888B (zh) | 一种面向车道级导航定位的城市道路路网模型 | |
CN102855322B (zh) | 一种基于空间探索技术的地图数据存储方法 | |
CN107180033A (zh) | 一种电子地图数据存储方法及装置 | |
CN109815419B (zh) | 基于地理位置的兴趣点索引方法、装置、介质及电子设备 | |
CN102368259A (zh) | 电子地图数据存储和查询方法、装置及系统 | |
CN107391753A (zh) | 一种基于gis的路产矢量化数据自动生成系统及方法 | |
CN105528460A (zh) | 一种瓦片金字塔模型的建立方法及瓦片读取方法 | |
CN101630463A (zh) | 路网栅格数字地图自动矢量化方法 | |
CN102012232B (zh) | 一种更新车载导航系统地图数据的方法 | |
CN111260749A (zh) | 生成标准比例尺地图的方法、装置及存储介质 | |
CN106600956A (zh) | 一种交通信息发布方法及装置 | |
CN101400138A (zh) | 一种面向移动设备的地图数据精简方法 | |
CN110321443A (zh) | 三维实景模型数据库构建方法、装置及数据服务系统 | |
CN105913347A (zh) | 一种面向住房信息采集的房屋编码方法 | |
CN114792038B (zh) | 基于环境数据的电缆布局方法、装置、设备及存储介质 | |
CN105096589A (zh) | 一种选取交通道路中代表性节点的方法、系统及客户端 | |
CN114817433A (zh) | 一种基于osgEarth的跨+-180经度的标绘算法 | |
CN103500223B (zh) | 一种面向移动用户的矢量地图数据压缩方法 | |
CN101197628A (zh) | 一种无线系统网元信息呈现方法 | |
CN110995849B (zh) | 一种矢量数据位置信息的传输与存储方法 | |
CN104156475B (zh) | 地理信息读取方法及装置 | |
CN201796547U (zh) | 一种结合手机上网查询的纸质地图 | |
CN108829832A (zh) | 一种基于CorelDraw软件的地图批量符号化的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170919 |
|
RJ01 | Rejection of invention patent application after publication |