一种地理位置数据与行政区域的匹配方法及装置与流程

文档序号:14714453发布日期:2018-06-16 01:03阅读:272来源:国知局
一种地理位置数据与行政区域的匹配方法及装置与流程

本发明涉及智能交通大数据领域,尤其涉及一种地理位置数据与行政区域的匹配方法及装置。



背景技术:

随着交通运输业的快速发展,越来越多的车辆涌现在全国各地,其既带来了机遇,也带来了挑战。机遇在于,在某种程度上运输业的发展代表着各地的经济在发展;挑战在于,如何快速的确定各车辆的所在地,进而进行车辆的调度变得越来越复杂;如何对各地车辆的相关数据进行统计与分析,例如计算各地车辆运营指数,进而提出更全面的交通发展政策也变得越来越不容易。可见,如何快速有效的确定各车辆的所在地,具有重要意义。然而,目前已有的通过空间索引来确定车辆所在地的方法中,通常都是一对多的索引关系,当数据量足够大时,该方式需要耗用较多的时间,效率偏低。



技术实现要素:

为解决现有技术的不足,本发明提供一种地理位置数据与行政区域的匹配方法及装置。

一方面,本发明公开了一种地理位置数据与行政区域的匹配方法,包括:

步骤S1:切分全国地图得到多个网格,对各网格进行标记得到各网格标识;

步骤S2:将所述各网格标识与全国行政区域建立索引;

步骤S3:当接收到车辆的地理位置数据时,根据所述地理位置数据计算对应的网格标识;

步骤S4:根据计算得到的网格标识,索引至对应的行政区域。

可选地,所述步骤S1,具体为:以预设长度为边长,切分全国地图得到多个正方形网格;根据各正方形网格涵盖的经纬度信息对各网格进行标记得到各网格标识。

可选地,所述步骤S2,具体为:根据各网格覆盖的行政区域,将对应的各网格标识与行政区域建立一对一索引或者一对多索引。

对应地,所述步骤S4,具体包括:

步骤S4-1:判断计算得到的网格标识对应的索引类型,如为一对一索引,则将计算得到的网格标识索引的行政区域作为与接收到的地理位置数据匹配的行政区域;如为一对多索引,则执行步骤S4-2;

步骤S4-2:依次将接收到的地理位置数据与计算得到的网格标识索引的各行政区域进行匹配,得到与接收到的地理位置数据匹配的行政区域。

可选地,所述步骤S3,具体包括:

步骤S3-1:当接收到车辆的地理位置数据时,分别对所述地理位置数据中的纬度进行第一预设运算和第二预设运算,得到对应的第一运算结果和第二运算结果;

步骤S3-2:分别对所述地理位置数据中的经度进行第三预设运算和第四预设运算,得到对应的第三运算结果和第四运算结果;

步骤S3-3:将所述第一运算结果、所述第三运算结果、所述第二运算结果和所述第四运算结果顺序拼接,得到接收到地理位置数据对应的网格标识。

另一方面,本发明提供一种地理位置数据与行政区域的匹配装置,包括:

切分模块,用于切分全国地图得到多个网格;

标记模块,用于对所述切分模块得到的各网格进行标记得到各网格标识;

建立模块,用于将所述标记模块得到的各网格标识与全国行政区域建立索引;

接收模块,用于接收车辆的地理位置数据;

计算模块,用于当所述接收模块接收到车辆的地理位置数据时,根据所述地理位置数据计算对应的网格标识;

索引模块,用于根据所述计算模块计算的网格标识,索引至对应的行政区域。

可选地,所述切分模块,具体用于:以预设长度为边长,切分全国地图得到多个正方形网格;

可选地,所述标记模块,具体用于:根据所述切分模块得到的各正方形网格涵盖的经纬度信息对各网格进行标记得到各网格标识。

可选地,所述建立模块,具体用于:根据所述切分模块得到的各网格覆盖的行政区域,将对应的所述标记模块标记的各网格标识与行政区域建立一对一索引或者一对多索引。

对应地,所述索引模块,具体包括:判断子模块、作为子模块和匹配子模块;

所述判断子模块,用于判断所述计算模块计算的网格标识对应的索引类型;

所述作为子模块,用于当所述判断子模块判断出所述计算模块计算的网格标识对应的索引类型为为一对一索引时,将所述计算模块计算的网格标识索引的行政区域作为与所述接收模块接收到的地理位置数据匹配的行政区域;

所述匹配子模块,用于当所述判断子模块判断出所述计算模块计算的网格标识对应的索引类型为为一对多索引时,依次将所述接收模块接收到的地理位置数据与所述计算模块计算的网格标识索引的各行政区域进行匹配,得到与所述接收模块接收到的地理位置数据匹配的行政区域。

可选地,所述计算模块,包括:第一计算子模块、第二计算子模块和拼接子模块;

所述第一计算子模块,用于当所述接收模块接收到地理位置数据时,分别对所述地理位置数据中的纬度进行第一预设运算和第二预设运算,得到对应的第一运算结果和第二运算结果;

所述的第二计算子模块,用于分别对所述接收模块接收到地理位置数据中的经度进行第三预设运算和第四预设运算,得到对应的第三运算结果和第四运算结果;

所述拼接子模块,用于将所述第一计算子模块得到的第一运算结果、所述第二计算子模块得到的第三运算结果、所述第一计算子模块得到的第二运算结果和所述第二计算子模块得到的第四运算结果顺序拼接,得到所述接收模块接收到地理位置数据对应的网格标识。

本发明的优点在于:

本发明中,通过以预设长度为边长,切分全国地图得到各网格,并将各网格与全国行政区域(确定了行政区域,即确定了对应的省、市、县)建立索引,得到80%以上一对一的索引关系,而仅有不到20%的一对多的索引关系,同时基于每个地理位置数据中的经纬度信息计算对应的网格标识,进而找到对应的索引,使得在进行地理位置数据与行政区域的匹配过程中,大部分仅通过一次计算即可匹配成功,大大提升了匹配效率,进而为基于此的数据挖掘及分析工作提供了便利基础。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

附图1为本发明提供的一种地理位置数据与行政区域的匹配方法流程图;

附图2为本发明提供的一种地理位置数据与行政区域的匹配装置模块组成框图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施方式。虽然附图中显示了本公开的示例性实施方式,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

实施例一

根据本发明的实施方式,提供一种地理位置数据与行政区域的匹配方法,如图1所示,包括:

步骤101:切分全国地图得到多个网格,对各网格进行标记得到各网格标识;

具体地,以预设长度为边长,切分全国地图得到多个正方形网格;根据各正方形网格涵盖的经纬度信息对各网格进行标记得到各网格标识;其中,网格标识由六位的数字组成。

优选地,在本实施例中,预设长度为12公里。

步骤102:将得到的各网格标识与全国行政区域建立索引;

具体地,根据各网格覆盖的行政区域,将对应的各网格标识与行政区域建立一对一索引或者一对多索引。

本发明中,按照预设长度为12公里切分全国地图得到的各正方形网格中,80%以上的网格与行政区域的索引为一对一索引,仅有不到20%的网格与行政区域的索引为一对多索引,因而在后续进行地理位置数据与行政区域匹配时,多数情况下是一次匹配操作即可完成,具有极高的匹配效率,同时确定了地理位置数据对应的行政区域,即确定了地理位置数据具体对应的省、市、县等信息。

步骤103:当接收到车辆的地理位置数据时,根据地理位置数据计算对应的网格标识;

具体地,当接收到车辆的车载设备上报的地理位置数据,或者接收到其他采集设备采集的地理位置数据时,根据接收到的地理位置数据计算对应的网格标识;其中,地理位置数据,包括经纬度信息;

更加具体地,步骤103,具体包括:

步骤103-1:当接收到车辆地理位置数据时,分别对地理位置数据中的纬度进行第一预设运算和第二预设运算,得到对应的第一运算结果和第二运算结果;

在本实施例中,第一预设运算,具体为:将地理位置数据中的纬度与第一预设数据相乘后取整,得到第一运算结果;其中,第一预设数据具体为1.5,即第一运算表示为:[dy*1.5],其中,dy为纬度;

在本实施例中,第二预设运算,具体为:将地理位置数据中的纬度与第二预设数据相乘得到乘积,将得到的乘积与第三预设数据相除得到商,将得到的商与第四预设数据进行取模运算,得到第二运算结果;其中,第二预设数据具体为3600,第三预设数据具体为300,第四预设数据具体为8,即第二运算表示为:((dy*3600)/300)%8,其中,dy为纬度。

步骤103-2:分别对地理位置数据中的经度进行第三预设运算和第四预设运算,得到对应的第三运算结果和第四运算结果;

在本实施例中,第三预设运算,具体为:将地理位置数据中的经度与第五预设数据相减,得到第三运算结果;其中,第五预设数据具体为60,即第三预设运算表示为:dx-60,其中,dx为经度;

在本实施例中,第四预设运算,具体为:将地理位置数据中的经度与第二预设数据相乘得到乘积,将得到的乘积与第六预设数据相除得到商,将得到的商与第四预设数据进行取模运算,得到第四运算结果;其中,第二预设数据具体为3600,第六预设数据具体为450,第四预设数据具体为8,即第二运算表示为:((dx*3600)/450)%8,其中,dx为经度。

进一步地,在本实施例中,步骤103-1与步骤103-2的执行顺序可以互换,四种预设运算的执行顺序也可以彼此互换。

步骤103-3:将得到的第一运算结果、第三运算结果、第二运算结果和第四运算结果顺序拼接,得到接收到地理位置数据对应的网格标识。

步骤104:根据计算得到的网格标识,索引至对应的行政区域。

在本实施例中,步骤104,具体包括:

步骤104-1:判断计算得到的网格标识对应的索引类型,如为一对一索引,则将计算得到的网格标识索引的行政区域作为与接收到的地理位置数据匹配的行政区域;如为一对多索引,则执行步骤104-2;

步骤104-2:依次将接收到的地理位置数据与计算得到的网格标识索引的各行政区域进行匹配,得到与接收到的地理位置数据匹配的行政区域。

具体地,沿接收到的地理位置数据中的经度做一条直线,得到该直线与计算得到的网格标识索引的各行政区域的交点,依次判断该直线与各行政区域的交点的数量是否为奇数,并将交点的数量为奇数的行政区域作为与接收到的地理位置数据匹配的行政区域。

本发明中,通过以预设长度为边长,切分全国地图得到各网格,并将各网格与全国行政区域建立索引,使得在进行地理位置数据与行政区域的匹配过程中,大部分仅通过一次计算即可匹配成功,大大提升了匹配效率,进而为基于此的数据挖掘及分析工作提供了便利基础。

实施例二

根据本发明的实施方式,提供一种地理位置数据与行政区域的匹配装置,如图2所示,包括:

切分模块201,用于切分全国地图得到多个网格;

标记模块202,用于对切分模块201得到的各网格进行标记得到各网格标识;

建立模块203,用于将标记模块202得到的各网格标识与全国行政区域建立索引;

接收模块204,用于接收车辆的地理位置数据;

计算模块205,用于当接收模块204接收到车辆的地理位置数据时,根据地理位置数据计算对应的网格标识;

索引模块206,用于根据计算模块205计算的网格标识,索引至对应的行政区域。

根据本发明的实施方式,切分模块201,具体用于:以预设长度为边长,切分全国地图得到多个正方形网格;

对应地,标记模块202,具体用于:根据切分模块201得到的各正方形网格涵盖的经纬度信息,对各网格进行标记得到各网格标识。

优选地,在本实施例中,预设长度为12公里。

根据本发明的实施方式,建立模块203,具体用于:根据切分模块201得到的各网格覆盖的行政区域,将对应的标记模块202标记的各网格标识与行政区域建立一对一索引或者一对多索引。

对应地,索引模块206,具体包括:判断子模块、作为子模块和匹配子模块,其中:

判断子模块,用于判断计算模块205计算的网格标识对应的索引类型;

作为子模块,用于当判断子模块判断出计算模块205计算的网格标识对应的索引类型为为一对一索引时,将计算模块205计算的网格标识索引的行政区域作为与接收模块204接收到的地理位置数据匹配的行政区域;

匹配子模块,用于当判断子模块判断出计算模块205计算的网格标识对应的索引类型为为一对多索引时,依次将接收模块204接收到的地理位置数据与计算模块205计算的网格标识索引的各行政区域进行匹配,得到与接收模块204接收到的地理位置数据匹配的行政区域。

根据本发明的实施方式,匹配子模块,具体包括:作图单元和判断单元,其中:

作图单元,用于沿接收模块204接收到的地理位置数据中的经度做一条直线,得到该直线与计算模块205计算的网格标识索引的各行政区域的交点;

判断单元,用于依次判断作图单元做的直线与各行政区域的交点的数量是否为奇数,并将交点的数量为奇数的行政区域作为与接收模块204接收到的地理位置数据匹配的行政区域。

根据本发明的实施方式,计算模块205,包括:第一计算子模块、第二计算子模块和拼接子模块,其中:

第一计算子模块,用于当接收模块204接收到地理位置数据时,分别对地理位置数据中的纬度进行第一预设运算和第二预设运算,得到对应的第一运算结果和第二运算结果;

第二计算子模块,用于分别对接收模块204接收到地理位置数据中的经度进行第三预设运算和第四预设运算,得到对应的第三运算结果和第四运算结果;

拼接子模块,用于将第一计算子模块得到的第一运算结果、第二计算子模块得到的第三运算结果、第一计算子模块得到的第二运算结果和第二计算子模块得到的第四运算结果顺序拼接,得到接收模块204接收到地理位置数据对应的网格标识。

其中,第一预设运算,具体为:将地理位置数据中的纬度与第一预设数据相乘后取整,得到第一运算结果;其中,第一预设数据具体为1.5,即第一运算表示为:[dy*1.5],其中,dy为纬度;

第二预设运算,具体为:将地理位置数据中的纬度与第二预设数据相乘得到乘积,将得到的乘积与第三预设数据相除得到商,将得到的商与第四预设数据进行取模运算,得到第二运算结果;其中,第二预设数据具体为3600,第三预设数据具体为300,第四预设数据具体为8,即第二运算表示为:((dy*3600)/300)%8,其中,dy为纬度;

第三预设运算,具体为:将地理位置数据中的经度与第五预设数据相减,得到第三运算结果;其中,第五预设数据具体为60,即第三预设运算表示为:dx-60,其中,dx为经度;

第四预设运算,具体为:将地理位置数据中的经度与第二预设数据相乘得到乘积,将得到的乘积与第六预设数据相除得到商,将得到的商与第四预设数据进行取模运算,得到第四运算结果;其中,第二预设数据具体为3600,第六预设数据具体为450,第四预设数据具体为8,即第二运算表示为:((dx*3600)/450)%8,其中,dx为经度。

本发明中,通过以预设长度为边长,切分全国地图得到各网格,并将各网格与全国行政区域(确定了行政区域,即确定了对应的省、市、县)建立索引,得到80%以上一对一的索引关系,而仅有不到20%的一对多的索引关系,同时基于每个地理位置数据中的经纬度信息计算对应的网格标识,进而找到对应的索引,使得在进行地理位置数据与行政区域的匹配过程中,大部分仅通过一次计算即可匹配成功,大大提升了匹配效率,进而为基于此的数据挖掘及分析工作提供了便利基础。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

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