Calcule la distancia entre dos puntos GPS en Python

Oluwafisayo Oluwatayo 15 febrero 2024
  1. Calcule la distancia entre dos puntos GPS usando la fórmula Haversine en Python
  2. Calcule la distancia entre dos puntos GPS usando la biblioteca mpu en Python
  3. Calcule la distancia entre dos puntos GPS usando la biblioteca geopy en Python
  4. Conclusión
Calcule la distancia entre dos puntos GPS en Python

Calcular la distancia entre dos puntos GPS es un ejercicio geográfico y matemático que podemos operar dentro del framework de Python. Veamos ahora cómo podemos realizar esta operación con Python.

Calcule la distancia entre dos puntos GPS usando la fórmula Haversine en Python

La fórmula haversine es una forma simplificada de calcular la distancia entre dos puntos GPS con Python, pero su cálculo se basa en la suposición de que la Tierra es una esfera perfecta. Sin embargo, la Tierra no es una esfera perfecta.

Esto significa que el resultado que obtendremos no sería perfectamente exacto; hay un ligero margen de error debido a la suposición. La fórmula haversine calcula la distancia entre dos puntos GPS calculando la distancia entre dos pares de longitud y latitud.

Cree un Python e ingrese estos códigos dentro. Nombra el archivo nuevo.py como se ve a continuación:

Fragmento de código- nuevo.py:

from math import radians, cos, sin, asin, sqrt


def haversine(lat1, lon1, lat2, lon2):

    R = 3959.87433

    dLat = radians(lat2 - lat1)
    dLon = radians(lon2 - lon1)
    lat1 = radians(lat1)
    lat2 = radians(lat2)

    a = sin(dLat / 2) ** 2 + cos(lat1) * cos(lat2) * sin(dLon / 2) ** 2
    c = 2 * asin(sqrt(a))

    return R * c


lon1 = -103.548851
lat1 = 32.0004311
lon2 = -103.6041946
lat2 = 33.374939

print(haversine(lat1, lon1, lat2, lon2))

Producción:

Python calcula la distancia usando Haversine

Cuando hacemos clic en Ejecutar, deberíamos ver este resultado dentro de la terminal.

Calcule la distancia entre dos puntos GPS usando la biblioteca mpu en Python

El mpu se deriva de Martins Python Utilities, y es una biblioteca de Python que se puede usar para realizar varias funciones sin necesidad de otras dependencias.

Primero, instalamos mpu escribiendo lo siguiente:

pip install mpu

Luego, creamos un nuevo archivo de Python, lo llamamos nuevo.py y escribimos los códigos a continuación:

Fragmento de código- nuevo.py:

import mpu

lat1 = 32.0004311
lon1 = -103.548851

lat2 = 33.374939
lon2 = -103.6041946

dist = mpu.haversine_distance((lat1, lon1), (lat2, lon2))
print(dist)

Espere unos momentos y debería ver la distancia calculada dentro de la terminal.

Producción:

Python calcula la distancia usando MPU

Calcule la distancia entre dos puntos GPS usando la biblioteca geopy en Python

geopy para Python es una librería específicamente diseñada para calcular distancias entre países, estados, ciudades, etc. Como veremos en el siguiente ejemplo, podemos calcular las distancias usando kilómetros, millas, etc.

Dentro de la terminal, escribe lo siguiente para instalar la librería geopy:

pip install geopy

Cree un nuevo archivo, asígnele el nombre nuevo.py y escriba estos códigos.

from geopy.distance import geodesic

origin = (30.172705, 31.526725)

dist = (30.288281, 31.732326)

print(geodesic(origin, dist).kilometers)

Producción:

Python calcula la distancia usando Geopy

Si desea que el resultado se muestre en millas, cambie kilómetros en el último bit de código a millas y ejecute el código.

Conclusión

Calcular la distancia entre dos puntos específicos de la Tierra no podría ser más fácil. Aunque la fórmula haversine puede tener un error de alrededor del 0,5 %, el resultado sigue siendo cercano y utilizable para varios proyectos.

Oluwafisayo Oluwatayo avatar Oluwafisayo Oluwatayo avatar

Fisayo is a tech expert and enthusiast who loves to solve problems, seek new challenges and aim to spread the knowledge of what she has learned across the globe.

LinkedIn