Hexágonos para ubicar y clasificar puntos y áreas de geolocalización
Existen diversos métodos para poder clasificar y ubicar puntos y áreas de geolocalización. Entre ellos existen 2 librerías de libre acceso principales (open source), S2 (provisto por Google) la cual tiene un patrón cuadrilateral y H3 (provisto por uber) con un patrón hexagonal. A la hora de realizar análisis con ambos patrones se puede vislumbrar una claridad superior en H3, más que en S2. Esto debido a que en el patrón de S2, sus figuras corresponden a proyecciones de un plano 2d a uno 3d, provocando que no sean cuadrados equiláteros generando la distorsión.
Figura 1 : Comparativa S2 vs H3 de análisis de población de árboles en calles y carreteras de san francisco: dataset Street Tree List | DataSF | City and County of San Francisco (sfgov.org)
¿Qué es H3?: el sistema de indexación geoespacial
Para simplificar , H3 es un sistema de indexación geoespacial que su celda base corresponde a hexágonos, los cuales pueden ser divididos en unidades más pequeñas. Esto permite organizar un universo geográfico a través de un patrón de herencias con la finalidad de organizar datos.
Uno de sus usos. más allá de sus bondades analíticas. Es la capacidad de obtener la celda geoespacial que se encuentra en un punto (Latitud , Longitud) a través de un algoritmo matemático (debido a que los índices de las celdas corresponden a un entero de 64 bits) y, de esta forma, poder obtener los puntos de interés adyacentes o cercanos de una manera más óptima que comparar distancias entre puntos. véase la imagen de referencia
¿Cuáles son las ventajas y desventajas de utilizar H3?
El patrón hexagonal de las celdas nos hace más fácil tanto navegar el planeta, como también clasificarlo. Debido a los patrones y formas singulares de pueblos y zonas geográficas (véase imagen de referencia) todo esto, disminuyendo la cantidad de recursos requeridos para delimitar la zona, al contrario de otros patrones equidistantes como, por ejemplo, triángulos.
Esto a su vez nos permite crear zonas según la solución que se implemente, y generar datos a partir de las zonas clasificadas.
Sin embargo el mayor problema de este sistema, es que sacrifica precisión en los cálculos y a su vez ubicación. Esto basado en los niveles de jerarquía que se utilice – si nos encontramos en un nivel superior de la jerarquía, la precisión de la ubicación disminuye.
Pero en cambio, permite asignar elementos (ejemplo, conductores) a una celda, para luego contabilizar los elementos dentro de la misma, o celdas adyacentes con un gasto de recursos menor al comparar la distancia entre cada uno de los elementos.
¿Cómo utilizar h3?
Como fue mencionado anteriormente H3 es un software open source. y se puede encontrar en GitHub (link: GitHub – uber/h3: Hexagonal hierarchical geospatial indexing system)
El lenguaje de la librería se encuentra en C, aunque existen implementaciones públicas tanto para python, C#, java y otros lenguajes. Un ejemplo de su uso sería el siguiente:
El resultado de esta ejecución. sería el índice de la celda
En este caso: 8a2a1072b59ffff
Se puede utilizar este índice para obtener información sobre el mismo, como por ejemplo. sus límites (en coordenadas Lat Long)
Esta línea de comando, traería como resultado lo siguiente;
o a su vez, puedes obtener el punto central de la celda con el siguiente comando:
dando como resultado:
Otras funcionalidades que existen en esta librería son la capacidad de encontrar las celdas adyacentes de una seleccionada, generar límites georreferénciales compuestos por celdas y muchos más.
Valuesite hoy cuenta con soluciones tecnológicas en las que incluye la georreferenciación a través de hexágonos ¡Conócelos!
Contáctanos a través de nuestro correo contacto@valuesite.cl