开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第10天,点击查看活动详情
引言
在参照地基网络路由区的概念,建立卫星路由区时,找到了 Uber H3 —— 针对地球的空间划分和空间索引系统。将全球划分为不同分辨率的六边形的蜂窝小区,通过 Uber 公司 H3 Core Libary API 可以将经纬度坐标转移映射到六边形小区区,从而实现了卫星通信路由区。
本文将对 Uber H3 进行详细的介绍。
Uber H3 特色
Aggregation 最优的填充单元
网格系统的单元形状是一个重要的因素,因为使用规则的网格可以提供平滑的渐变和测量单元格之间差异的能力,同时为了简单起见,单元形状应该是一个可规律填充的多边形,比如三角形、正方形、六边形。
Uber H3 使用六边形来建立空间索引系统和划分空间,如图所示主要是三个原因:
- 三角形和正方形具有不同距离的领居,三角形有三类不同的距离的邻居,正方形有两类不同距离的邻居,六边形所有邻居距离都是相等的
- 三角形有12个邻居,正方形有8个邻居,六边形有6个邻居
- 六边形具有近似于圆的扩展性,也是最佳的空间填充。平均而言,面可能填充六边形图块,其误差幅度小于方形图块。
| Triangle | Square | Hexagon |
|---|---|---|
| Triangles have 12 neighbors | Squares have 8 neighbors | Hexagons have 6 neighbors |
Joining 不同数据集按索引连接
H3 作为标准分析单元,可用于连接不同的数据集。H3 库包含对将点、线和区域索引到网格中的支持。其他数据格式(如栅格)可以使用这些基本索引操作的组合将其索引到 H3 中。将数据索引到 H3 索引后,可以轻松地将其与 H3 索引上的其他数据集连接。
Flow Modelling 运动建模
H3 的六角形网格非常适合分析运动。除了六边形网格形状的优点外,H3 还包括用于建模流程的其他功能。
Machine Learning 机器学习
H3 非常适合将机器学习应用于地理空间数据。来自计算机视觉的技术,如卷积,可以应用于H3定义的像素网格。H3 具有用于查找邻居 (kRing) 以执行卷积的功能,以及用于将索引转换为二维 IJ 坐标空间的功能,可以在该空间上运行其他计算机视觉算法。
Indexing 分层空间索引
H3 是一个分层地理空间索引,可以按照不同的业务分辨率需求划分六边形单元格。每个六边形单元(在 H3 支持的最大分辨率之前)在此层次结构中在其下方有七个子单元。此细分称为光圈 7 即如图所示,父六边形大约包含七个子六边形。