【GIS】geohash原理与实现

Geohash是一种基于经纬度编码地理位置的方法,通过二进制和32进制转换形成网格,实现空间区域的划分。它允许快速查找附近的位置,并具有层次关系,但存在编码突变导致邻近关系不准确的问题。在使用时要注意精度、坐标系和地图投影的影响。
摘要由CSDN通过智能技术生成

参考:https://www.cnblogs.com/LBSer/p/3310455.html
https://en.wikipedia.org/wiki/Geohash

引子

考虑一个问题,如何搜索某点附近一定范围内的满足要求的公交站。
(截了个高德的图、并不知道高德地图后台如何搜索的。。。)

  • 无脑思路:把所有的公交站和当前位置都算距离筛选
  • 简单思路:把当前城市/附近行政区的所有公交站和当前位置算距离筛选(天然范围)
  • 优化思路:用格网剖分区域,每次都从附近的格网中搜索,如先找出附近1km的格网,再在格网中找点(人工范围)

人工范围除了要划分区域外,同时希望每个范围的名字(编码)能看出层级关系和一定程度的空间邻近关系

附近搜索

感性认识

所以Geohash就是把“经纬度”编码的一种方式,将地球/地图在经纬度坐标下划分网格形成。

  • 标识位置。如wx4g0表示了覆盖天安门附近范围的方格
  • 邻近关系。图中wx4g8、wx4g9、wx4gd….wx4g4都是五位编码,只有最后一位不同
  • 层次关系。刚才所示的9个网格都在四位编码的wx4g的网格范围内,字符串越长,表
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值