地理信息数据处理方法及装置与流程

文档序号:11234207
地理信息数据处理方法及装置与流程

本发明实施例涉及地理信息技术领域,尤其涉及一种地理信息数据处理方法及装置。



背景技术:

GIS(Geographic Information System,地理信息系统)技术是一种结合了地理学、地图学、遥感和计算机科学的技术,被广泛地应用于不同的领域,如导航、空间研究等等。

在GIS中,普遍以地理经纬度坐标图层作为地理信息数据组织的基础,并基于此以实体空间对象的经纬度坐标为基础进行相应的诸如查询、统计等操作。但是,经纬度坐标无法对实体空间对象进行唯一的位置标识,空间实体对象的标识ID的赋值具有随机性,不同图层之间空间实体对象的关联需要依赖元数据库进行,由此导致使得跨数据库、跨数据表、跨图层的地理信息数据共享存在困难。因此,在进行相应的地理信息数据操作如查询时,无法高效、准确地获得相应的结果数据。



技术实现要素:

有鉴于此,本发明实施例所解决的技术问题之一在于提供一种地理信息数据处理方法及装置,以解决现有技术中无法高效、准确地获得对地理信息数据尤其是多源异构地理信息数据进行操作的结果数据的问题。

根据本发明实施例的一个方面,提供了一种地理信息数据处理方法,包括:获取待查询的空间实体对象的地理经纬度坐标,将所述地理经纬度坐标转换为对应的网格编码;使用转换的所述网格编码查询数据库中的格元表,确定与所述网格编码对应的至少一个对象标识,其中,所述格元表中存储有网格编码及其对应的对象标识的对应关系;根据确定的所述对象标识查询对象表,获得对应的所述对象标识所标识的对象的属性信息,其中,所述对象表中存储有对象标识及其对应的对象的属性信息;从获得的对象的属性信息中确定所述待查询的空间实体对象的属性信息。

根据本发明实施例的另一个方面,还提供了一种地理信息数据处理装置,包括:第一获取模块,用于获取待查询的空间实体对象的地理经纬度坐标,将所述地理经纬度坐标转换为对应的网格编码;第一确定模块,用于使用转换的所述网格编码查询数据库中的格元表,确定与所述网格编码对应的至少一个对象标识,其中,所述格元表中存储有网格编码及其对应的对象标识的对应关系;第二获取模块,用于根据确定的所述对象标识查询对象表,获得对应的所述对象标识所标识的对象的属性信息,其中,所述对象表中存储有对象标识及其对应的对象的属性信息;第二确定模块,用于从获得的对象的属性信息中确定所述待查询的空间实体对象的属性信息。

通过本发明实施例提供的方案,在查询某一空间实体对象的地理信息时,将其经纬度坐标转换为网格编码,进而与数据库中存储的包含有网格编码的格元表进行匹配和查询,从中查询出网格编码对应的对象标识,该对象标识可以有一个,也可能有多个,在此情况下,根据该对象标识查询对象表从中获取相应的对象的属性信息,进而从中确定出待查询的空间实体对象的属性信息。其中,格元表和对象表通过对象标识关联,格元表主要存储网格编码及其对应的对象标识,对象表主要存储对象标识及其对应的对象的属性信息。网格编码具有全球唯一性,其唯一标识一个空间范围,通过将待查询的空间实体对象的经纬度坐标转换为网格编码,可快速确定该空间实体对象对应的网格,通过网格确定并查找相应的对象,大大减少了数据查询数量,提高了数据查询速度。由此,实现了高效、准确地获得地理信息数据操作的结果数据的效果。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。

图1是根据本发明实施例的一种地理信息数据处理方法的步骤流程图;

图2是根据本发明实施例的一种地理信息数据处理装置的结构框图。

具体实施方式

当然,实施本发明实施例的任一技术方案必不一定需要同时达到以上的所有优点。

为了使本领域的人员更好地理解本发明实施例中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明实施例一部分实施例,而不是全部的实施例。基于本发明实施例中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本发明实施例保护的范围。

参照图1,示出了根据本发明实施例的一种地理信息数据处理方法的步骤流程图。

本实施例的地理信息数据处理方法包括以下步骤:

步骤S102:获取待查询的空间实体对象的地理经纬度坐标,将地理经纬度坐标转换为对应的网格编码。

本实施例中,在存储有地理信息数据的数据库中,存储有格元表和对象表,其中,格元表中至少存储有网格编码及其对应的对象标识的对应关系,对象表中至少存储有对象标识及其对应的对象的属性信息。在进行数据查询时,需要采用与生成格元表中的网格编码同样的方式将待查询的空间实体对象的地理经纬度坐标转换为网格编码。

本实施例中,网格编码采用北斗导航网格编码(Beidou Navigation Grid Code,BNGC)。北斗导航网格码是在地球剖分网格(GeoSOT)编码基础上进行定制改造实现全球北斗导航的编码,其可以为导航数据提供全球统一的网格框架,导航过程中的空间实体对象被抽象为多尺度网格集合。BNGC在具体实现时可以尽可能选择更多的GeoSOT的尺度,这些尺度需要是GeoSOT的网格大小不变的那些层级,就是不出现三次扩展的那些层级,保持网格的大小不变性。例如,选择了GeoSOT第9、15、17、20、23、26、29、32层8个层级的网格再加上1∶100万图幅和1∶5万图幅两个过渡层,共10个层级就可以形成一种BNGC的网格体系。其中,仅有BNGC的第5层即GeoSOT的17层是存在网格变化的,其余层级充分利用了GeoSOT的不变层级,第5层属于过渡层级。可选地,也可以不使用该层,但通过使用该层,可以避免因BNGC的第4层和第6层跨度达到30*30,跨度太大,导致的中间层级的尺度缺乏表现,并且编码位数上也会比较浪费,并且缺乏对1∶2.5万、1∶1万图幅的有效聚合,导致直接使用第6层BNGC,网格数太多等问题。例如,可以将1∶100万、1∶5万图幅作为网格编码的中间层级,并和BNGC网格的第9层、第15层有机衔接。对于中间层级的图幅1∶50万,可以用BNGC的第2层度级网格,无缝组合,共3*2个度级网格;对于1∶25万、1∶10万,由于BNGC的第3层是1∶5万图幅网格,因此也可以无缝组合,分别为6*6个、2*2个BNGC的第3层网格;对于1∶5万,其本身可以用BNGC的第3层表示,也可以在其中绘制15*10个BNGC的第4层网格(分级网格);对于1∶2.5万、1∶1万,可以用BNGC的第5层的30*20、15*10个组合而成。通过该种BNGC设计,对短码的支持将更好,因为提供了从1.5cm-30km之间多达8个层级的尺度备选,对于短码中变尺度的参考对象将更加方便;另外,提供了1∶5万图幅的选择,使得计数起来更加符合传统地图识别的要求。

在上述网格体系中,对于8级网格,即2°×2°,将南(北)纬88°-90°范围分为180个网格,将它们合并成一个网格P;对于9级网格,即1°×1°,将南(北)纬89°-90°范围分为360个网格,将它们合并成一个网格P0;将南(北)纬88°-89°范围分为360个网格,将它们合并成三个网格P1、P2、P3,考虑到和低纬度区域的2的整数次幂对应的关系,其经度范围分别是东经0°-128°、东经128°-180°和西经180°-128°、西经128°-0°;对于10级网格,即32'×32',其扩展规则和低纬度区域一致,其合并规则,与第9级网格合并规则类似,形成在南(北)及地区的逐次四叉树剖分;对于10级以下网格,其扩展规则和低纬度区域一致,其合并规则,与第9级网格合并规则类似,形成在南(北)及地区的逐次四叉树剖分。

进而,可以基于上述网格体系进行相应的北斗导航网格编码,具体编码过程可以由本领域技术人员采用任意的编码方式实现。例如,可以采用四步划分编码方式,即:第一步划分:将从地球参考椭球面到向上拓展极限值的高度区域(0-64422km)进行连续7次二叉树剖分,得到共计27个512km二级单元,相当于二维导航网格码的起始网格尺度,采用字母A-L来对每一个二级单元依次编码,从AA-JH;第二步划分:第二级单元进行连续4次二叉树剖分,得到共计24个32km三级单元。采用字母A-P来对每一个三级单元依次编码;第三步划分:第三级单元进行八叉树剖分,得到共计23个4km四级单元,采用字母A-P来对每一个二级单元依次编码;第四步划分:第四级单元进行八叉树剖分,得到共计23个500m四级单元。采用字母A-P来对每一个二级单元依次编码。

基于北斗导航网格编码,系统设计了格元表和对象表来组织空间实体对象。格元表中,以BNGC作为记录标识码ID,用于唯一地标识剖分空间的网格,同时记录网格内的各类关联信息,包括空间实体对象的对象标识ID、属性信息等,便于面向区域的空间操作;对象表中,每个对象记录都具有对象标识ID,用于唯一地标识确定一个空间实体对象,同时记录对象相关属性信息,满足现有系统对基于空间实体对象的常规数据操作。对象表和格元表通过对象标识ID进行关联,支持格元-对象的协同关联操作。

在对象表中,一个空间实体对象对应一条记录,记录了空间实体对象的详细空间区位信息和非空间属性;在格元表中,以BNGC为主键记录与网格相交的空间实体对象集的对象标识,一个空间实体对象对应多条记录,将空间实体对象划分为多个网格单元,分别记录各个网格的非空间属性。若一个空间实体对象对应多个网格编码,可以将网格编码存为数组结构,即可解决一个空间实体对象对应多个记录的问题。

此外,还可以对BNGC进行网格编码索引排序,以加快后续查询速度。可选地,还可以根据BNGC按照区域进行分区存储,以缓解主机存储压力。

基于上述北斗导航网格编码方式,以及数据库中存储的格元表和对象表,在获取待查询的空间实体对象的地理经纬度坐标,将所述地理经纬度坐标转换为对应的网格编码时,若确定待查询的空间实体对象为点对象,则获取所述点对象所在的网格尺度及所述点对象的地理经纬度坐标;根据所述点对象所在的网格尺度确定对应的网格层级,根据所述网格层级将所述点对象的地理经纬度坐标转换为对应的网格编码;若确定待查询的空间实体对象为线对象,则获取所述线对象所在的网格尺度及所述线对象对应的空间范围的地理经纬度坐标;根据所述线对象所在的网格尺度确定对应的网格层级,根据所述网格层级将所述线对象的地理经纬度坐标转换为对应的网格编码;若确定待查询的空间实体对象为区域对象,则获取所述区域对象所在的网格尺度及所述区域对象对应的空间范围的地理经纬度坐标;根据所述区域对象所在的网格尺度确定对应的网格层级,根据所述网格层级将所述区域对象的地理经纬度坐标转换为对应的网格编码。

步骤S104:使用转换的网格编码查询数据库中的格元表,确定与网格编码对应的至少一个对象标识。

其中,格元表中至少存储有网格编码及其对应的对象标识的对应关系。

步骤S106:根据确定的对象标识查询对象表,获得对应的对象标识所标识的对象的属性信息。

其中,对象表中至少存储有对象标识及其对应的对象的属性信息,该属性信息可以是任意适当的属性信息,包括但不限于地理位置信息、地名地址信息、交通状况信息、邮件信息、聊天信息等等。

步骤S108:从获得的对象的属性信息中确定所述待查询的空间实体对象的属性信息。

基于BNGC的导航查询的基本模式如下:

(1)点检索模式:查询点空间实体对象,可以先根据其地理经纬度坐标及点所表达的空间实体对象的网格尺度对应的网格层级,确定对应的网格编码,将该网格编码所表达的空间位置与该层级导航网格单元所表达的空间范围进行比较,如果待检索的点在导航网格单元之内或者边界上,该导航网格单元所对应的空间区域即为查找区域,再通过该导航网格单元中的空间实体对象的对象标识即可查找出所要查找的内容。

(2)线检索模式:根据待查询的线对象需要的精度确定网格层级,将线对象对应的空间范围通过线转编码的函数转为导航网格集合矩形大小,再将每个网格通过匹配网格编码,找出网格所对应的空间数据对象。

(3)区域检索模式:区域检索可以分为区域检索网格提取和网格检索两个过程。

包括:(一)将需要查找的目标空间范围转变成包含了查找区域的BNGC的网格集合;(二)针对每个网格,通过网格索引查找出网格所里所包含的对应空间实体对象的信息,整个网格检索的集合就是区域查找的结果。具体流程是首先根据应用需求确定区域范围覆盖的导航网格单元集合,然后根据网格的网格编码索引查找得到相应的目标数据。

通过上述过程,实现了空间实体对象的查询。进一步地,基于BNGC,还可以进行数据统计分析。

一种数据统计分析可以实现为:获取第一统计查询请求,其中,第一统计查询请求中包括待查询的网格尺度和统计时间的信息;确定所述网格尺度对应的网格层级;根据所述网格层级对应的网格编码,统计所述网格层级中、在所述统计时间内的所有包含空间数据的空间实体对象的信息。由此,实现了空间分布规律的统计,得到空间分布异常的信息。

例如,可以根据应用需求和精度选取某个网格层级和某个时刻;使用标准SQL select count(*)(也可以查找其他属性)查找该时刻该层级每一网格所包含空间数据的记录数,并返回结果;将记录数由大到小排列,按照比例得出空间分布异常;可视化统计结果。

另一种数据统计分析可以实现为:获取第二统计查询请求,其中,第二统计查询请求中包括待查询的网格尺度和统计空间的信息;确定所述网格尺度对应的网格层级;根据所述网格层级对应的网格编码,统计所述网格层级中、在不同时间的所述统计空间内的空间实体对象的数量。由此,实现了时间分布规律的统计,得到时间分布异常的信息。

例如,根据应用需求和精度选取某个层级和某个空间范围;查找不同时刻该空间范围内所覆盖的数据量(也可以查找其他属性),并返回结果;将记录数由大到小排列,按照比例得出时间分布异常。

通过本实施例,在查询某一空间实体对象的地理信息时,将其经纬度坐标转换为网格编码,进而与数据库中存储的包含有网格编码的格元表进行匹配和查询,从中查询出网格编码对应的对象标识,该对象标识可以有一个,也可能有多个,在此情况下,根据该对象标识查询对象表从中获取相应的对象的属性信息,进而从中确定出待查询的空间实体对象的属性信息。其中,格元表和对象表通过对象标识关联,格元表主要存储网格编码及其对应的对象标识,对象表主要存储对象标识及其对应的对象的属性信息。网格编码具有全球唯一性,其唯一标识一个空间范围,通过将待查询的空间实体对象的经纬度坐标转换为网格编码,可快速确定该空间实体对象对应的网格,通过网格确定并查找相应的对象,大大减少了数据查询数量,提高了数据查询速度。由此,实现了高效、准确地获得地理信息数据操作的结果数据的效果。

基于北斗导航网格编码的查询检索将空间查询条件转为网格编码的数值匹配,即将查询条件(点、线、面/区域)进行网格编码,通过网格编码与数据库中的数据进行匹配查询,实现了空间实体对象的信息的高效、准确查询。

研究区域一定时,格元表的行数(网格个数)是确定的。可以根据确定的研究区域,实现基于网格的统计,包括空间分布规律、空间分布异常、时间分布规律、时间分布异常这些基于时空的数据统计与分析。

参照图2,示出了根据本发明实施例的一种地理信息数据处理装置的结构框图。

本实施例的地理信息数据处理装置包括:第一获取模块202,用于获取待查询的空间实体对象的地理经纬度坐标,将所述地理经纬度坐标转换为对应的网格编码;第一确定模块204,用于使用转换的所述网格编码查询数据库中的格元表,确定与所述网格编码对应的至少一个对象标识,其中,所述格元表中存储有网格编码及其对应的对象标识的对应关系;第二获取模块206,用于根据确定的所述对象标识查询对象表,获得对应的所述对象标识所标识的对象的属性信息,其中,所述对象表中存储有对象标识及其对应的对象的属性信息;第二确定模块208,用于从获得的对象的属性信息中确定所述待查询的空间实体对象的属性信息。

可选地,所述第一获取模块202用于确定待查询的空间实体对象为点对象,获取所述点对象所在的网格尺度及所述点对象的地理经纬度坐标;根据所述点对象所在的网格尺度确定对应的网格层级,根据所述网格层级将所述点对象的地理经纬度坐标转换为对应的网格编码。

可选地,所述第一获取模块202用于确定待查询的空间实体对象为线对象,获取所述线对象所在的网格尺度及所述线对象对应的空间范围的地理经纬度坐标;根据所述线对象所在的网格尺度确定对应的网格层级,根据所述网格层级将所述线对象的地理经纬度坐标转换为对应的网格编码。

可选地,所述第一获取模块202用于确定待查询的空间实体对象为区域对象,获取所述区域对象所在的网格尺度及所述区域对象对应的空间范围的地理经纬度坐标;根据所述区域对象所在的网格尺度确定对应的网格层级,根据所述网格层级将所述区域对象的地理经纬度坐标转换为对应的网格编码。

可选地,本实施例的装置还包括:第一统计查询模块210,用于获取第一统计查询请求,其中,所述第一统计查询请求中包括待查询的网格尺度和统计时间的信息;确定所述网格尺度对应的网格层级;根据所述网格层级对应的网格编码,统计所述网格层级中、在所述统计时间内的所有包含空间数据的空间实体对象的信息。

可选地,本实施例的装置还包括:本实施例的装置还包括:第二统计查询模块212,用于获取第二统计查询请求,其中,所述第二统计查询请求中包括待查询的网格尺度和统计空间的信息;确定所述网格尺度对应的网格层级;根据所述网格层级对应的网格编码,统计所述网格层级中、在不同时间的所述统计空间内的空间实体对象的数量。

本实施例的地理信息数据处理装置用于实现前述方法实施例中相应的地理信息数据处理方法,并具有相应的方法实施例的有益效果,在此不再赘述。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,所述计算机可读记录介质包括用于以计算机(例如计算机)可读的形式存储或传送信息的任何机制。例如,机器可读介质包括只读存储器(ROM)、随机存取存储器(RAM)、磁盘存储介质、光存储介质、闪速存储介质、电、光、声或其他形式的传播信号(例如,载波、红外信号、数字信号等)等,该计算机软件产品包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本申请实施例的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

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

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

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

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

再多了解一些
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1