基于经纬度定位物联设备行政区域的方法技术

技术编号:36913140 阅读:13 留言:0更新日期:2023-03-18 09:31
本发明专利技术公开了基于经纬度定位物联设备行政区域的方法,包括步骤:从ArcMap导入行政区域边界经纬度点的GeoJson文件进行解析,得到多个行政区域多边形并分别配置到对应的预设分区存入行政区域数据库中;从设备数据库中读取物联设备经纬度;逐个计算物联设备经纬度是否在预设分区的经纬度范围内,确定物联设备所在预设分区作为目标分区;读取目标分区内的所有行政区域多边形,逐个计算物联设备经纬度是否在行政区域多边形内,确定物联设备的目标行政区域。根据物联设备上报的基础信息的经纬度,利用Google S2算法对物联设备上报的行政区域信息进行完善,实现根据经纬度快速定位行政区域,帮助系统快速判断物联设备的位置信息。息。息。

【技术实现步骤摘要】
基于经纬度定位物联设备行政区域的方法


[0001]本专利技术涉及设备定位
,具体涉及基于经纬度定位物联设备行政区域的方法。

技术介绍

[0002]对于物联设备来说,会定期向管理系统上报设备的基础信息或者运行日志,而对物联网设备的定位一般是基于物联网设备上报的基础信息或物联设备上报的某一时刻的日志,基础信息中包含了经纬度、行政区域信息,日志中也包含此刻物联设备的经纬度信息。对于物联设备上传的行政区域信息基本上时预设在设备中的,一般不会进行更新,因此,上传的行政区域信息不一定准确。因此,需要一种能够完善物联设备的行政区域位置信息的方法,帮助系统快读判断物联设备所在位置信息。

技术实现思路

[0003]本专利技术的目的在于提供基于经纬度定位物联设备行政区域的方法,根据物联设备上报的基础信息的经纬度,利用Google S2算法对物联设备上报的行政区域信息进行完善,实现根据经纬度快速定位行政区域,帮助系统快速判断物联设备的位置信息。
[0004]本申请提供基于经纬度定位物联设备行政区域的方法,具体包括以下步骤:S1、从ArcMap导入行政区域边界经纬度点的GeoJson文件;对GeoJson文件进行解析,得到多个行政区域多边形,并将多个行政区域多边形分别配置到对应的预设分区内,将预设分区存入行政区域数据库中;S2、从设备数据库中读取物联设备经纬度;S3、读取所有预设分区,逐个计算物联设备经纬度是否在预设分区的经纬度范围内,确定物联设备所在预设分区,将物联设备所在预设分区作为目标分区;S4、读取目标分区内的所有行政区域多边形,逐个计算物联设备经纬度是否在行政区域多边形内,确定物联设备所在行政区域多边形,将物联设备所在行政区域多边形作为目标行政区域。进一步地,步骤S1中得到区域多边形的具体过程为:使用Spark按照逆时针读取GeoJson文件中行政区域边界经纬度点;得到行政区域边界GeoJson文件;使用Google S2方法将行政区域边界GeoJson文件解析成多个行政区域多边形。
[0005]进一步地,得到预设分区的方法为:根据行政区域边界经纬度点按照方位对行政区域进行划分,得到若干个预设分区,预设分区中预设了预设分区的经纬度范围和行政区域编码范围。
[0006]进一步地,将行政区域多边形配置到预设分区内的过程为:使用Google S2的decode方法对每个行政区域多边形进行解码,得到每个行政区域多边形对应的行政区域多边形字符串以及行政区域编码;
每个行政区域多边形根据其对应的行政区域编码,确定对应的预设分区,将行政区域多边形对应的行政区域多边形字符串以及行政区域编码存入对应的预设分区内;将所有预设分区存入行政区域数据库中。
[0007]进一步地,步骤S3读取所有预设分区的具体过程为:使用Spark从行政区域数据库中读取每个预设分区;使用Google S2的encode方法将每个预设分区内的行政区域多边形字符串编码成对应的行政区域多边形。
[0008]进一步地,步骤S4的具体过程为:将目标分区内的所有行政区域多边形与物联设备经纬度做笛卡尔积;根据笛卡尔积,利用Google S2的contains方法逐个判断物联设备经纬度是否在行政区域多边形内;若是,则将该行政区域多边形定位为物联设备所在行政区域多边形作为目标行政区域,并将物联设备及其对应的目标行政区域存入设备数据库中。
[0009]进一步地,行政区域数据库与设备数据库均采用CilckHouse数据库。
[0010]本专利技术具有的有益效果:本申请通过使用Spark读取GeoJson文件,保证经纬度按原始顺序进行排序,并采用Google S2算法,用行政区域的边界经纬度点生成行政区域多边形(S2Polygon)。按照行政区域编码对行政区域进行预设分区,快速定位到物联设备所在预设分区内,减少计算量,而使用S2Polygon的contains方法,其参数为一个经纬度点。判断物联设备的经纬度是否在行政区域多边形内,并且,由于行政区域多边形不能直接在数据库中存储与读取,因此,本申请还通过Google S2算法提供的多边形S2Polygon的decode方法和encode方法实现解码和编码从而使行政区域的多边形在数据库中能存储与读取。本申请能够快速根据经纬度信息定位到物联设备所在行政区域,帮助管理人员判断设备位置信息。
附图说明
[0011]图1为本专利技术的基于经纬度定位物联设备行政区域的方法交互处理示意图;图2为本专利技术的基于经纬度定位物联设备行政区域的方法处理流程图;图3为本专利技术的一种具体实施方式中对行政区域的分区示意图;图4为本专利技术一种具体实施方式中定位物联设备所在行政区域多边形示意图。
具体实施方式
[0012]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本专利技术及其应用或使用的任何限制。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0013]除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本专利技术的范围。
[0014]同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际
的比例关系绘制的。
[0015]另外,为了清楚和简洁起见,可能省略了对公知的结构、功能和配置的描述。本领域普通技术人员将认识到,在不脱离本公开的精神和范围的情况下,可以对本文描述的示例进行各种改变和修改。
[0016]对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。
[0017]在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
[0018]实施例1对于物联设备来说,定时上报的基础信息或日志中一般会包含经纬度信息。物联设备上报的行政区域信息可能不准确,但是其上报的经纬度信息尤其是某一时刻日志中的经纬度信息一般包含的是此时刻物联设备的经纬度信息,因此,利用经纬度信息对物联设备的位置进行定位比较准确。本实施例中需要从物联设备上报的信息中获取的信息包括以下字段,如表1所示: 另外,为了根据物联设备上传的经纬度快速判断其所在行政区域,本实施例采用Google S2算法,用行政区域的边界经纬度点生成行政区域多边形(S2Polygon)。再使用S2Polygon的contains方法,由于其参数为一个经纬度点,可以判断一个点是否在多边形区域内,因此,利用设备上传的经纬度信息定位的点,判断这个点是否在多边形区域内。行政区域的边界经纬度点通过ArcMap导出,格式为GeoJson。
[0019]具体地,如图1、图2所示,本实施例通过定位系统实现基于经本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于经纬度定位物联设备行政区域的方法,其特征在于,具体包括以下步骤:S1、从ArcMap导入行政区域的边界经纬度点GeoJson文件;对GeoJson文件进行解析,得到多个行政区域多边形,并将多个行政区域多边形分别配置到对应的预设分区内,将预设分区存入行政区域数据库中;S2、从设备数据库中读取物联设备经纬度;S3、读取所有预设分区,逐个计算物联设备经纬度是否在预设分区的经纬度范围内,确定物联设备所在预设分区,将物联设备所在预设分区作为目标分区;S4、读取目标分区内的所有行政区域多边形,逐个计算物联设备经纬度是否在行政区域多边形内,确定物联设备所在行政区域多边形,将物联设备所在行政区域多边形作为目标行政区域。2.根据权利要求1所述的基于经纬度定位物联设备行政区域的方法,其特征在于,步骤S4的具体过程为:将目标分区内的所有行政区域多边形与物联设备经纬度做笛卡尔积;根据笛卡尔积,利用Google S2的contains方法逐个判断物联设备经纬度是否在行政区域多边形内;若是,则将该行政区域多边形定位为物联设备所在行政区域多边形作为目标行政区域,并将物联设备及其对应的目标行政区域存入设备数据库中。3.根据权利要求1所述的基于经纬度定位物联设备行政区域的方法,其特征在于,步骤S1中得到区域多边形的具体过程为:使用Spark按照逆时针读取GeoJson文件中行政区域边界经纬度点;得到...

【专利技术属性】
技术研发人员:饶龙强郭鹏方舟丁强李建涛叶超
申请(专利权)人:成都智元汇信息技术股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1