CN110674237B - 一种提高二维区域定位准确性的方法及终端 - Google Patents
一种提高二维区域定位准确性的方法及终端 Download PDFInfo
- Publication number
- CN110674237B CN110674237B CN201910908520.5A CN201910908520A CN110674237B CN 110674237 B CN110674237 B CN 110674237B CN 201910908520 A CN201910908520 A CN 201910908520A CN 110674237 B CN110674237 B CN 110674237B
- Authority
- CN
- China
- Prior art keywords
- geohash
- group
- adjacent
- character strings
- longitude
- 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.)
- Active
Links
Images
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/29—Geographical information databases
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Remote Sensing (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Processing Or Creating Images (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种提高二维区域定位准确性的方法及终端,获取与第一GEOHASH分组相邻的其他分组;获取相邻的其他分组中与第一GEOHASH分组相邻的下级单元格,将所有与第一GEOHASH分组相邻的下级单元格一并作为第一GEOHASH分组的下级单元格;本发明通过查找到边缘范围内的定位信息,避免了边缘遗漏,且自动分组修正大区域定位和小区域定位,提高二维地图区域定位分级展示的准确性和合理性。采用GEOHASH分组,解决了人为划定定位区域不够灵活以及定位区域大小不能自动的缺点;同时,随着GEOHASH分组的细化而使得定位信息量可以不断缩小,解决了定位信息量大并且地图区域很大的时候,单层级展示数据太多的问题。
Description
技术领域
本发明涉及定位技术领域,特别涉及一种提高二维区域定位准确性的方法及终端。
背景技术
传统的二维地图展示方法多为单层级展示,即直接对每个定位信息进行展示,比如火车站、商场以及知名企业等等;或根据人为划定一定区域显示,比如中心城区、商业圈等等。然而,现有的单层级展示的技术具有以下缺点:
1、当定位信息量大并且地图区域大的时候,单层级展示的数据太多,对于用户来说,显示很不友好。
2、人为划定定位区域不够灵活,且区域边缘附近的定位信息会被遗漏。
发明内容
本发明所要解决的技术问题是:提供一种提高二维区域定位准确性的方法及终端,提高二维地图区域定位分级展示的准确性以及合理性。
为了解决上述技术问题,本发明采用的技术方案为:
一种提高二维区域定位准确性的方法,包括步骤:
S1、获取与第一GEOHASH分组相邻的其他分组;
S2、获取相邻的其他分组中与所述第一GEOHASH分组相邻的下级单元格,将所有与所述第一GEOHASH分组相邻的下级单元格一并作为所述第一GEOHASH分组的下级单元格。
为了解决上述技术问题,本发明采用的另一种技术方案为:
一种提高二维区域定位准确性的终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
S1、获取与第一GEOHASH分组相邻的其他分组;
S2、获取相邻的其他分组中与所述第一GEOHASH分组相邻的下级单元格,将所有与所述第一GEOHASH分组相邻的下级单元格一并作为所述第一GEOHASH分组的下级单元格。
本发明的有益效果在于:一种提高二维区域定位准确性的方法及终端,通过将相邻的其他分组中与该GEOHASH分组相邻的下级单元格也作为该GEOHASH分组的下级单元格,以查找到边缘范围内的定位信息,避免了边缘遗漏,且自动分组修正大区域定位和小区域定位,提高二维地图区域定位分级展示的准确性和合理性。采用GEOHASH分组,解决了人为划定定位区域不够灵活以及定位区域大小不能自动的缺点;同时,随着GEOHASH分组的细化而使得定位信息量可以不断缩小,解决了定位信息量大并且地图区域很大的时候,单层级展示数据太多的问题。
附图说明
图1为本发明实施例的一种提高二维区域定位准确性的方法的流程示意图;
图2为本发明实施例涉及的第一GEOHASH分组和相邻的其他分组的单元格示意图;
图3为本发明实施例涉及的第一GEOHASH分组和右侧相邻的第二GEOHASH分组的单元格示意图;
图4为本发明实施例涉及的第二GEOHASH分组的编码示意图;
图5为本发明实施例涉及的将前N位字符串相同的地址信息作为一个GEOHASH分组的结果示意图;
图6为本发明实施例涉及的并入相邻信息后的结果示意图;
图7为本发明实施例涉及的一级定位的结果示意图;
图8为本发明实施例涉及的二级定位的结果示意图;
图9为本发明实施例的一种提高二维区域定位准确性的终端的结构示意图。
标号说明:
1、一种提高二维区域定位准确性的终端;2、处理器;3、存储器。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。
请参照图1至图8,一种提高二维区域定位准确性的方法,包括步骤:
S1、获取与第一GEOHASH分组相邻的其他分组;
S2、获取相邻的其他分组中与所述第一GEOHASH分组相邻的下级单元格,将所有与所述第一GEOHASH分组相邻的下级单元格一并作为所述第一GEOHASH分组的下级单元格。
从上述描述可知,本发明的有益效果在于:通过将相邻的其他分组中与该GEOHASH分组相邻的下级单元格也作为该GEOHASH分组的下级单元格,以查找到边缘范围内的定位信息,避免了边缘遗漏,且自动分组修正大区域定位和小区域定位,提高二维地图区域定位分级展示的准确性和合理性。采用GEOHASH分组,解决了人为划定定位区域不够灵活以及定位区域大小不能自动的缺点;同时,随着GEOHASH分组的细化而使得定位信息量可以不断缩小,解决了定位信息量大并且地图区域很大的时候,单层级展示数据太多的问题。
进一步地,所述步骤S1之前还包括:
根据当前地图展示的范围大小,自动截取GEOHASH字符串的前N位字符串,将前N位字符串相同的地址信息作为一个GEOHASH分组;
所述步骤S2具体为:
获取相邻的其他分组与所述第一GEOHASH分组的相邻关系,相邻的每一个GEOHASH分组根据所述相邻关系确定与所述第一GEOHASH分组相邻的第N+1位字符,相邻的每一个GEOHASH分组的前N位字符串加上与所述第一GEOHASH分组相邻的第N+1位字符得到所述第一GEOHASH分组的相邻GEOHASH字符串,将所述相邻GEOHASH字符串并入所述第一GEOHASH分组。
从上述描述可知,采用GEOHASH分组,即一开始就对地图进行自动分组,后续再修正大区域定位和小区域定位,以解决了定位区域大小不能自动的缺点。
进一步地,第二GEOHASH分组与所述第一GEOHASH分组的相邻关系为右侧相邻关系,则所述步骤S2具体为:
获取第二GEOHASH分组与所述第一GEOHASH分组的右侧相邻关系,右侧相邻的第二GEOHASH分组中与所述第一GEOHASH分组相邻的GEOHASH字符串即为所述第二GEOHASH分组中左侧一列的所有GEOHASH字符串;
判断所述N是否为偶数,若是,则得到所述第二GEOHASH分组中左侧一列的所有GEOHASH字符串的经度二进制编码000以及纬度二进制编码范围[00,11],若N为奇数,则得到所述第二GEOHASH分组中左侧一列的所有GEOHASH字符串的经度二进制编码00以及纬度二进制编码范围[000,111];
在初始为0的第N+1位字符的奇数位上依次放入经度二进制编码以及在偶数位上依次放入纬度二进制编码,得到编码后的第N+1位字符,即得到所述第一GEOHASH分组的相邻GEOHASH字符串;
将所述第一GEOHASH分组的相邻GEOHASH字符串并入所述第一GEOHASH分组。
从上述描述可知,可以快速得到相邻单元格的GEOHASH字符串,从而快速查找到边缘范围内的定位信息。
进一步地,所述步骤S1之前还包括:
S0、将二维地图上的所有定位点的经纬度地址信息转化为12位经过base32位编码的GEOHASH字符串;
所述步骤S2之后还包括:
S3、将第一GEOHASH分组的GEOHASH字符串转成经纬度信息。
从上述描述可知,采用base32位编码能保证其定位的精确度,通过不断的拆分,随着Geohash的长度精度不断增加,可以得到一个很小的矩形范围坐标,在到达12位时,矩形范围坐标为3.7cm宽及1.9厘米高。
进一步地,所述步骤S0具体为:
获取定位点的经纬度地址信息,将经度地址信息和纬度地址信息分别转换为二进制字符串,将所述经度地址信息的二进制字符串依次放入待编码字符串的奇数位,将所述纬度地址信息的二进制字符串依次放入待编码字符串的偶数位,以得到待编码二进制字符串,对所述待编码二进制字符串进行base32位编码,以得到12位的GEOHASH字符串。
从上述描述可知,可以快速将二维地图上的经纬度地址信息转化为GEOHASH字符串。
请参照图9,一种提高二维区域定位准确性的终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
S1、获取与第一GEOHASH分组相邻的其他分组;
S2、获取相邻的其他分组中与所述第一GEOHASH分组相邻的下级单元格,将所有与所述第一GEOHASH分组相邻的下级单元格一并作为所述第一GEOHASH分组的下级单元格。
从上述描述可知,本发明的有益效果在于:通过将相邻的其他分组中与该GEOHASH分组相邻的下级单元格也作为该GEOHASH分组的下级单元格,以查找到边缘范围内的定位信息,避免了边缘遗漏,且自动分组修正大区域定位和小区域定位,提高二维地图区域定位分级展示的准确性和合理性。采用GEOHASH分组,解决了人为划定定位区域不够灵活以及定位区域大小不能自动的缺点;同时,随着GEOHASH分组的细化而使得定位信息量可以不断缩小,解决了定位信息量大并且地图区域很大的时候,单层级展示数据太多的问题。
进一步地,所述步骤S1之前,所述处理器执行所述计算机程序时还实现以下步骤:
根据当前地图展示的范围大小,自动截取GEOHASH字符串的前N位字符串,将前N位字符串相同的地址信息作为一个GEOHASH分组;
执行所述步骤S2时,所述处理器执行所述计算机程序时具体实现以下步骤:
获取相邻的其他分组与所述第一GEOHASH分组的相邻关系,相邻的每一个GEOHASH分组根据所述相邻关系确定与所述第一GEOHASH分组相邻的第N+1位字符,相邻的每一个GEOHASH分组的前N位字符串加上与所述第一GEOHASH分组相邻的第N+1位字符得到所述第一GEOHASH分组的相邻GEOHASH字符串,将所述相邻GEOHASH字符串并入所述第一GEOHASH分组。
从上述描述可知,采用GEOHASH分组,即一开始就对地图进行自动分组,后续再修正大区域定位和小区域定位,以解决了定位区域大小不能自动的缺点。
进一步地,第二GEOHASH分组与所述第一GEOHASH分组的相邻关系为右侧相邻关系,则在执行所述步骤S2时,所述处理器执行所述计算机程序时具体实现以下步骤:
获取第二GEOHASH分组与所述第一GEOHASH分组的右侧相邻关系,右侧相邻的第二GEOHASH分组中与所述第一GEOHASH分组相邻的GEOHASH字符串即为所述第二GEOHASH分组中左侧一列的所有GEOHASH字符串;
判断所述N是否为偶数,若是,则得到所述第二GEOHASH分组中左侧一列的所有GEOHASH字符串的经度二进制编码000以及纬度二进制编码范围[00,11],若N为奇数,则得到所述第二GEOHASH分组中左侧一列的所有GEOHASH字符串的经度二进制编码00以及纬度二进制编码范围[000,111];
在初始为0的第N+1位字符的奇数位上依次放入经度二进制编码以及在偶数位上依次放入纬度二进制编码,得到编码后的第N+1位字符,即得到所述第一GEOHASH分组的相邻GEOHASH字符串;
将所述第一GEOHASH分组的相邻GEOHASH字符串并入所述第一GEOHASH分组。
从上述描述可知,可以快速得到相邻单元格的GEOHASH字符串,从而快速查找到边缘范围内的定位信息。
进一步地,所述步骤S1之前,所述处理器执行所述计算机程序时还实现以下步骤:
S0、将二维地图上的所有定位点的经纬度地址信息转化为12位经过base32位编码的GEOHASH字符串;
所述步骤S2之后还包括:
S3、将第一GEOHASH分组的GEOHASH字符串转成经纬度信息。
从上述描述可知,采用base32位编码能保证其定位的精确度,通过不断的拆分,随着Geohash的长度精度不断增加,可以得到一个很小的矩形范围坐标,在到达12位时,矩形范围坐标为3.7cm宽及1.9厘米高。
进一步地,执行所述步骤S0时,所述处理器执行所述计算机程序时具体实现以下步骤:
获取定位点的经纬度地址信息,将经度地址信息和纬度地址信息分别转换为二进制字符串,将所述经度地址信息的二进制字符串依次放入待编码字符串的奇数位,将所述纬度地址信息的二进制字符串依次放入待编码字符串的字符串,以得到待编码二进制字符串,对所述待编码二进制字符串进行base32位编码,以得到12位的GEOHASH字符串。
从上述描述可知,可以快速将二维地图上的经纬度地址信息转化为GEOHASH字符串。
请参照图1,本发明的实施例一为:
本实施例可应用于计算机系统中带有图形化二维地图的界面展现、区域定位领域,通过实现查找二维定位区域的相邻下级单元格算法,查找和捡漏二维定位区域边缘范围内的定位信息,自动分组修正大区域定位和小区域定位,提高二维地图区域定位分级展示的准确性、合理性。
在进行描述之前,先对GEOHASH算法进行说明,Geohash将整个地图或者某个分割所得的区域进行一次划分,在本实施例中采用的是base32编码方式,即Geohash中的每一个字母或者数字都是由5bits组成(2^5=32,base32),这5bits可以有32中不同的组合(0~31),这样我们可以将整个地图区域分为32个区域,通过00000~11111来标识这32个区域。
一种提高二维区域定位准确性的方法,包括步骤:
S0、将二维地图上的所有定位点的经纬度地址信息转化为12位经过base32位编码的GEOHASH字符串;
具体的,获取定位点的经纬度地址信息,将经度地址信息和纬度地址信息分别转换为二进制字符串,将经度地址信息的二进制字符串依次放入待编码字符串的奇数位,将纬度地址信息的二进制字符串依次放入待编码字符串的偶数位,以得到待编码二进制字符串,对待编码二进制字符串进行base32位编码,以得到12位的GEOHASH字符串。在本实施例中,定位点D为(119.0033825574559,25.42209862743997),定位点E为(119.00169506738153,25.426413375903675),则经过base32位编码后GEOHASH字符串GEO_D=wss8egzw7y9t,GEO_E=wss8egwrs6zp,其中,GEOHASH字符串的第一位字符为w,则二进制字符串11100,其中二进制字符串中的第一位1、第三位1以及第五位0为经度地址信息110,第二位1以及第四位0为纬度地址信息10;
此时,根据当前地图展示的范围大小,自动截取GEOHASH字符串的前N位字符串,将前N位字符串相同的地址信息作为一个GEOHASH分组;如上,对比前六个字符串,同为“wss8eg”,说明D、E同处于GEOHASH(6)=“wss8eg”定位信息区域内
S1、获取与第一GEOHASH分组相邻的其他分组;如图2所示,比如第一GEOHASH分组的二进制字符串为00011,纬度为01,经度为001。则相邻的其他分组的二进制字符串为01000、01001、01100、00010、00110、00000、00001以及00100
S2、获取相邻的其他分组与第一GEOHASH分组的相邻关系,相邻的每一个GEOHASH分组根据相邻关系确定与第一GEOHASH分组相邻的第N+1位字符,相邻的每一个GEOHASH分组的前N位字符串加上与第一GEOHASH分组相邻的第N+1位字符得到第一GEOHASH分组的相邻GEOHASH字符串,将相邻GEOHASH字符串并入第一GEOHASH分组。
如图2至图4所示,第二GEOHASH分组与第一GEOHASH分组的相邻关系为右侧相邻关系,则步骤S2具体为:
获取第二GEOHASH分组与第一GEOHASH分组的右侧相邻关系,右侧相邻的第二GEOHASH分组中与第一GEOHASH分组相邻的GEOHASH字符串即为第二GEOHASH分组中左侧一列的所有GEOHASH字符串;在本实施例中,如图3所示,右侧相邻为经度加一,纬度不变,即第二GEOHASH分组的二进制字符串为00110;由此可知,本实施例中,相邻的其他分组与第一GEOHASH分组按照经度纬度的相邻关系进行加一或减一,以快速得到相邻的同级编码信息,比如右侧相邻则经度加一,纬度不变,左侧相邻为经度减一,纬度不变,上下相邻则经度不变,纬度加减一,四个角则根据左右上下进行经度和纬度的加减一;
判断N是否为偶数,若是,则得到第二GEOHASH分组中左侧一列的所有GEOHASH字符串的经度二进制编码000以及纬度二进制编码范围[00,11],若N为奇数,则得到第二GEOHASH分组中左侧一列的所有GEOHASH字符串的经度二进制编码00以及纬度二进制编码范围[000,111];在本实施例中,如图3可知,由于本实施例中的N为1,因此,第二GEOHASH分组中左侧一列的所有GEOHASH字符串的经度二进制编码00以及纬度二进制编码范围[000,111];
在初始为0的第N+1位字符的奇数位上依次放入经度二进制编码以及在偶数位上依次放入纬度二进制编码,得到编码后的第N+1位字符,即得到第一GEOHASH分组的相邻GEOHASH字符串;即为本实施例中的图4所示;
将第一GEOHASH分组的相邻GEOHASH字符串并入第一GEOHASH分组;
S3、将第一GEOHASH分组的GEOHASH字符串转成经纬度信息。此时,将第一GEOHASH分组中前N位字符串转换的经纬度信息作为一级定位信息,将第一GEOHASH分组中所有定位点的GEOHASH字符串转换的经纬度信息作为二级纬度信息。
结合上述以及图5至图8可知,如图5所示,包括定位点A(118.704623,25.354846),定位点B(118.70187376197663,25.35189418620092),定位点C(119.000429,25.4232),定位点D(119.0033825574559,25.42209862743997),定位点E(119.00169506738153,25.426413375903675)以及定位点F(119.031444,25.455557),经过步骤S0后得到GEO_A=wss2jpwndjy5;GEO_B=wss2jphj6ps7;GEO_C=wss8eujkygzp;GEO_D=wss8egzw7y9t;GEO_E=wss8egwrs6zp;GEO_F=wss8udh13ev8;
此时,N取6,则截取前6位字符进行分组,得到I、J、K以及M 4组,具体的为:
经过步骤S1和步骤S2之后,判断出J组中C(wss8eujkygzp)与K组GEOHASH(wss8eg)存在相邻关系,即J组的C(wss8eujkygzp)存在于K组的边缘,可以归并到K组.最终得到三组结果:I、J以及M,此时,具体为:
经过步骤S2之后,将I、K以及F分组的GEOHASH(wss2jp,wss8eg,wss8ud)转成经纬度地址信息,则分别为:[25.3509521484375,118.6962890625],[25.4168701171875,118.992919921875],[25.455322265625,119.02587890625],得到一级定位如图7所示,将地图放大后,显示二级定位如图8所示。
由此可知,在本实施例的基础上,可以拓展到下两级,下三级直至最底层一级的方法,得到下级的单元格geohash编码后,通过递归可以得到再下级的相邻单元格geohash编码。而每级的单元格代表的范围不同,越底层的单元格代表的范围越小。即可以通过配置,自定义分级层数,同时,也可以获取下一级的相邻两列或相邻两行,即可以通过配置,自定义同级相邻层数,即能动态地改变单元格边缘的范围大小,根据不同的使用场景灵活的配置边缘单元格层数,使得地图自动分组修正更为合理和灵活。
请参照图9,本发明的实施例二为:
一种提高二维区域定位准确性的终端1,包括存储器3、处理器2及存储在存储器3上并可在处理器2上运行的计算机程序,处理器2执行计算机程序时实现上述实施例一种的步骤。
综上所述,本发明提供的一种提高二维区域定位准确性的方法及终端,通过将相邻的其他分组中与该GEOHASH分组相邻的下级单元格也作为该GEOHASH分组的下级单元格,并通过相邻加减算法,以快速查找到边缘范围内的定位信息,避免了边缘遗漏,且自动分组修正大区域定位和小区域定位,提高二维地图区域定位分级展示的准确性和合理性。采用GEOHASH分组,解决了人为划定定位区域不够灵活以及定位区域大小不能自动的缺点;同时,随着GEOHASH分组的细化而使得定位信息量可以不断缩小,解决了定位信息量大并且地图区域很大的时候,单层级展示数据太多的问题。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (8)
1.一种提高二维区域定位准确性的方法,其特征在于,包括步骤:
S1、获取与第一GEOHASH分组相邻的其他分组;
S2、获取相邻的其他分组中与所述第一GEOHASH分组相邻的下级单元格,将所有与所述第一GEOHASH分组相邻的下级单元格一并作为所述第一GEOHASH分组的下级单元格;
所述步骤S1之前还包括:
根据当前地图展示的范围大小,自动截取GEOHASH字符串的前N位字符串,将前N位字符串相同的地址信息作为一个GEOHASH分组;
所述步骤S2具体为:
获取相邻的其他分组与所述第一GEOHASH分组的相邻关系,相邻的每一个GEOHASH分组根据所述相邻关系确定与所述第一GEOHASH分组相邻的第N+1位字符,相邻的每一个GEOHASH分组的前N位字符串加上与所述第一GEOHASH分组相邻的第N+1位字符得到所述第一GEOHASH分组的相邻GEOHASH字符串,将所述相邻GEOHASH字符串并入所述第一GEOHASH分组。
2.根据权利要求1所述的一种提高二维区域定位准确性的方法,其特征在于,第二GEOHASH分组与所述第一GEOHASH分组的相邻关系为右侧相邻关系,则所述步骤S2具体为:
获取第二GEOHASH分组与所述第一GEOHASH分组的右侧相邻关系,右侧相邻的第二GEOHASH分组中与所述第一GEOHASH分组相邻的GEOHASH字符串即为所述第二GEOHASH分组中左侧一列的所有GEOHASH字符串;
判断所述N是否为偶数,若是,则得到所述第二GEOHASH分组中左侧一列的所有GEOHASH字符串的经度二进制编码000以及纬度二进制编码范围[00,11],若N为奇数,则得到所述第二GEOHASH分组中左侧一列的所有GEOHASH字符串的经度二进制编码00以及纬度二进制编码范围[000,111];
在初始为0的第N+1位字符的奇数位上依次放入经度二进制编码以及在偶数位上依次放入纬度二进制编码,得到编码后的第N+1位字符,即得到所述第一GEOHASH分组的相邻GEOHASH字符串;
将所述第一GEOHASH分组的相邻GEOHASH字符串并入所述第一GEOHASH分组。
3.根据权利要求1所述的一种提高二维区域定位准确性的方法,其特征在于,所述步骤S1之前还包括:
S0、将二维地图上的所有定位点的经纬度地址信息转化为12位经过base32位编码的GEOHASH字符串;
所述步骤S2之后还包括:
S3、将第一GEOHASH分组的GEOHASH字符串转成经纬度信息。
4.根据权利要求3所述的一种提高二维区域定位准确性的方法,其特征在于,所述步骤S0具体为:
获取定位点的经纬度地址信息,将经度地址信息和纬度地址信息分别转换为二进制字符串,将所述经度地址信息的二进制字符串依次放入待编码字符串的奇数位,将所述纬度地址信息的二进制字符串依次放入待编码字符串的偶数位,以得到待编码二进制字符串,对所述待编码二进制字符串进行base32位编码,以得到12位的GEOHASH字符串。
5.一种提高二维区域定位准确性的终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现以下步骤:
S1、获取与第一GEOHASH分组相邻的其他分组;
S2、获取相邻的其他分组中与所述第一GEOHASH分组相邻的下级单元格,将所有与所述第一GEOHASH分组相邻的下级单元格一并作为所述第一GEOHASH分组的下级单元格;
所述步骤S1之前,所述处理器执行所述计算机程序时还实现以下步骤:
根据当前地图展示的范围大小,自动截取GEOHASH字符串的前N位字符串,将前N位字符串相同的地址信息作为一个GEOHASH分组;
执行所述步骤S2时,所述处理器执行所述计算机程序时具体实现以下步骤:
获取相邻的其他分组与所述第一GEOHASH分组的相邻关系,相邻的每一个GEOHASH分组根据所述相邻关系确定与所述第一GEOHASH分组相邻的第N+1位字符,相邻的每一个GEOHASH分组的前N位字符串加上与所述第一GEOHASH分组相邻的第N+1位字符得到所述第一GEOHASH分组的相邻GEOHASH字符串,将所述相邻GEOHASH字符串并入所述第一GEOHASH分组。
6.根据权利要求5所述的一种提高二维区域定位准确性的终端,其特征在于,第二GEOHASH分组与所述第一GEOHASH分组的相邻关系为右侧相邻关系,则在执行所述步骤S2时,所述处理器执行所述计算机程序时具体实现以下步骤:
获取第二GEOHASH分组与所述第一GEOHASH分组的右侧相邻关系,右侧相邻的第二GEOHASH分组中与所述第一GEOHASH分组相邻的GEOHASH字符串即为所述第二GEOHASH分组中左侧一列的所有GEOHASH字符串;
判断所述N是否为偶数,若是,则得到所述第二GEOHASH分组中左侧一列的所有GEOHASH字符串的经度二进制编码000以及纬度二进制编码范围[00,11],若N为奇数,则得到所述第二GEOHASH分组中左侧一列的所有GEOHASH字符串的经度二进制编码00以及纬度二进制编码范围[000,111];
在初始为0的第N+1位字符的奇数位上依次放入经度二进制编码以及在偶数位上依次放入纬度二进制编码,得到编码后的第N+1位字符,即得到所述第一GEOHASH分组的相邻GEOHASH字符串;
将所述第一GEOHASH分组的相邻GEOHASH字符串并入所述第一GEOHASH分组。
7.根据权利要求5所述的一种提高二维区域定位准确性的终端,其特征在于,所述步骤S1之前,所述处理器执行所述计算机程序时还实现以下步骤:
S0、将二维地图上的所有定位点的经纬度地址信息转化为12位经过base32位编码的GEOHASH字符串;
所述步骤S2之后还包括:
S3、将第一GEOHASH分组的GEOHASH字符串转成经纬度信息。
8.根据权利要求7所述的一种提高二维区域定位准确性的终端,其特征在于,执行所述步骤S0时,所述处理器执行所述计算机程序时具体实现以下步骤:
获取定位点的经纬度地址信息,将经度地址信息和纬度地址信息分别转换为二进制字符串,将所述经度地址信息的二进制字符串依次放入待编码字符串的奇数位,将所述纬度地址信息的二进制字符串依次放入待编码字符串的偶数位,以得到待编码二进制字符串,对所述待编码二进制字符串进行base32位编码,以得到12位的GEOHASH字符串。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910908520.5A CN110674237B (zh) | 2019-09-25 | 2019-09-25 | 一种提高二维区域定位准确性的方法及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910908520.5A CN110674237B (zh) | 2019-09-25 | 2019-09-25 | 一种提高二维区域定位准确性的方法及终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110674237A CN110674237A (zh) | 2020-01-10 |
CN110674237B true CN110674237B (zh) | 2022-06-28 |
Family
ID=69078888
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910908520.5A Active CN110674237B (zh) | 2019-09-25 | 2019-09-25 | 一种提高二维区域定位准确性的方法及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110674237B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111885701A (zh) * | 2020-06-19 | 2020-11-03 | 北京嘀嘀无限科技发展有限公司 | 一种定位方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106844534A (zh) * | 2016-12-30 | 2017-06-13 | 西安电子科技大学 | 面向NoSQL数据库的将地理空间数据一维化的GeoHash编码方法 |
CN107291874A (zh) * | 2017-06-16 | 2017-10-24 | 小草数语(北京)科技有限公司 | 地图点位聚合方法及装置 |
CN107547633A (zh) * | 2017-07-27 | 2018-01-05 | 腾讯科技(深圳)有限公司 | 一种用户常驻点的处理方法、装置和存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IL238562B (en) * | 2015-04-30 | 2019-05-30 | Verint Systems Ltd | A system and method for spatial grouping by lattices in several resolutions |
-
2019
- 2019-09-25 CN CN201910908520.5A patent/CN110674237B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106844534A (zh) * | 2016-12-30 | 2017-06-13 | 西安电子科技大学 | 面向NoSQL数据库的将地理空间数据一维化的GeoHash编码方法 |
CN107291874A (zh) * | 2017-06-16 | 2017-10-24 | 小草数语(北京)科技有限公司 | 地图点位聚合方法及装置 |
CN107547633A (zh) * | 2017-07-27 | 2018-01-05 | 腾讯科技(深圳)有限公司 | 一种用户常驻点的处理方法、装置和存储介质 |
Non-Patent Citations (1)
Title |
---|
Crowdsourcing in intelligent transportation stystem;Ali K et al.;《IEEE》;20121231;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110674237A (zh) | 2020-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105630968A (zh) | 面向Cassandra的分布式可扩展四叉树索引机制及基于该机制的查询方法 | |
CN109815419B (zh) | 基于地理位置的兴趣点索引方法、装置、介质及电子设备 | |
CN110502599A (zh) | 地图数据的查询方法、装置和计算机可读存储介质 | |
CN105528460A (zh) | 一种瓦片金字塔模型的建立方法及瓦片读取方法 | |
US10003946B2 (en) | Enhanced spatial index for point in polygon operations | |
CN105488434B (zh) | 一种基于标记的矢量地图完整性认证方法 | |
CN110674237B (zh) | 一种提高二维区域定位准确性的方法及终端 | |
CN101901489B (zh) | 一种面向混合型复杂目标的距离图制图方法 | |
CN113033403A (zh) | 基于影像瓦片的生态保护红线地物目标识别方法及系统 | |
CN113505189B (zh) | 一种基于多层级全球格网的面状目标栅格化方法 | |
CN106204719B (zh) | 基于二维邻域检索的三维场景中海量模型实时调度方法 | |
CN112486987A (zh) | 基于经纬度的城市查询方法、装置、设备及存储介质 | |
CN109885638B (zh) | 一种三维立体空间索引方法及系统 | |
CN106023317B (zh) | 一种用于大数据测试的加权Voronoi图生成方法 | |
CN112100308B (zh) | 一种北斗时空轨迹的相似性查询方法 | |
CN110909260B (zh) | 车辆显示方法、装置、计算机可读存储介质和计算机设备 | |
CN114077617A (zh) | 轨迹路径检索方法、装置、服务器和存储介质 | |
KR20220149511A (ko) | 이미지 처리를 위한 시스템, 방법 및 디바이스 | |
CN109827585B (zh) | 一种快速填补栅格地图中凹形区域的方法 | |
CN111915091A (zh) | 一种车位排布方法、装置、终端和介质 | |
CN110989886A (zh) | 基于空间地图的三维空间网格选取方法及装置 | |
CN107657474B (zh) | 一种商圈边界的确定方法及服务端 | |
CN115801024A (zh) | 局部等距性优化球面格网的编码方法、系统、装置及介质 | |
CN111506576B (zh) | 一种基于区域四叉树的地块编码方法及装置 | |
CN112783891B (zh) | 基于经度和纬度匹配邻近多边形区域的方法及装置 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
EE01 | Entry into force of recordation of patent licensing contract |
Application publication date: 20200110 Assignee: Fujian Weizhixing Technology Co.,Ltd. Assignor: FUJIAN RONGJI SOFTWARE Co.,Ltd. Contract record no.: X2023350000233 Denomination of invention: A method and terminal for improving the accuracy of two-dimensional regional positioning Granted publication date: 20220628 License type: Common License Record date: 20230510 |
|
EE01 | Entry into force of recordation of patent licensing contract |