Geocodificación inversa sin acceso web

Estoy trabajando en una aplicación donde uno de los requisitos es poder realizar operaciones de geocodificación inversa en tiempo real basadas en datos de GPS. En particular, debo poder determinar el estado / provincia al que se mapea un par de latitud y longitud, y detectar cuándo nos hemos movido de un estado / provincia a otro.

Tengo un par de ideas hasta ahora, pero me pregunté si alguien tenía alguna idea sobre alguno de los siguientes:

¿Cuál es el mejor enfoque para abordar este problema de manera eficiente?¿Dónde es un buen lugar para encontrar y cuál es el formato adecuado para los límites de estado / provincia de América del Norte?

Como titular, aquí están las dos ideas principales que tengo:

Divida a América del Norte en una cuadrícula con cada rectángulo en el mapeo de la cuadrícula a una provincia del estado en particular. Realice una búsqueda en esta tabla (que crece rápidamente cuanto más precisa le gustaría ser) basándose en la latitud y luego en la longitud (o viceversa).Defina polígonos para cada uno de los estados y realice algún tipo de cálculo para determinar en qué polígono se encuentra un par lat / lon. No estoy seguro de cómo hacerlo exactamente. Los mapas de imágenes HTML vienen a la mente como una forma de definir los límites para un estado / provincia.

Estoy trabajando en Python para los interesados ​​o aquellos que puedan tener una buena biblioteca que les gustaría sugerir.

Para ser claros ... No tengo acceso a Internet disponible para mí, por lo que usar un servicio de geocodificación inversa existente no es una opción en tiempo de ejecución

Respuestas a la pregunta(6)

Su respuesta a la pregunta