Volver al inicio

Selección de imágenes satelitales por nivel de agua

La plataforma “Uroven-Sputnik” automatiza la selección de imágenes satelitales Landsat y Sentinel-2 por niveles de agua en hidroposts. Del prototipo en Google Earth Engine a arquitectura en PostgreSQL, PostGIS, STAC y Microsoft Planetary Computer. El servicio procesa 28 millones de observaciones para análisis de canales y llanuras de inundación.

Servicio para seleccionar imágenes espaciales por niveles de río para análisis
Advertisement 728x90

# Plataforma de Nivel de Agua por Satélite: Imágenes Alineadas con Medidores Fluviales

El servicio "Nivel-Satélite" resuelve el reto de seleccionar imágenes satelitales según los niveles de agua en medidores específicos de ríos. Los hidrólogos suelen enfrentarse a un desajuste: hay una imagen disponible, pero el nivel del agua en ese momento no coincide con lo que están analizando. La plataforma filtra colecciones de Landsat y Sentinel-2 no solo por fecha y cobertura nubosa, sino también por datos hidrológicos del Sistema Federal de Información del Registro Estatal de Aguas de Rusia (AIS GMVO), entregando escenas relevantes para analizar cauces fluviales, llanuras de inundación y áreas anegadas.

Prototipo en Google Earth Engine: Limitaciones Iniciales

El prototipo inicial se desarrolló en Google Earth Engine para una sola cuenca hidrográfica usando datos de AIS GMVO. Filtrar imágenes por geometría de medidores reveló problemas: interfaz lenta, procesamiento de colecciones demorado y agotamiento de cuotas. Cambiar a preprocesamiento vía API de GEE generó una tabla de búsqueda (medidor, ID de imagen, cobertura nubosa), aliviando la carga en el frontend.

Sin embargo, este enfoque tenía desventajas:

Google AdInline article slot
  • Procesar un distrito tomaba 8–10 horas; para más de 20 distritos, era inviable.
  • Escalar requería recalcular todo al añadir nuevos datos.
  • Un error en cualquier paso implicaba empezar de cero.

Recopilación de Datos en Condiciones Extremas

El acceso a datos hidrológicos de AIS GMVO estuvo a punto de cortarse. El analizador para descargas masivas se refinó en el terreno —en un barco usando IA—. Una descarga exitosa a las 17:55 justo antes del plazo aseguró una base de datos con millones de observaciones. Ahora los datos se almacenan localmente, eliminando la dependencia de fuentes externas.

Cambio a STAC y Microsoft Planetary Computer

La mejora clave fue adoptar el estándar STAC para catalogar escenas satelitales y Microsoft Planetary Computer (MPC) para acceso vía API. STAC estandariza metadatos entre colecciones, permitiendo búsquedas por geometría y tiempo independientemente del proveedor.

La arquitectura se simplificó a:

Google AdInline article slot
  • Base de datos de medidores y observaciones.
  • Filtro por nivel de agua, período y cobertura nubosa.
  • Búsqueda de escenas en MPC por metadatos.
  • Carga de imágenes bajo demanda.

Esto eliminó el filtrado pesado de colecciones, logrando una velocidad impresionante.

Arquitectura de la Base de Datos

Pasar de CSV/Excel a PostgreSQL con PostGIS manejó 28 millones de observaciones. La entidad central vincula "observación hidrológica → fecha → escena satelital". Las consultas ahora se ejecutan en milisegundos: filtro hidrológico primero, luego búsqueda de escenas y carga.

La BD incluye tablas para:

Google AdInline article slot
  • Medidores (coordenadas, geometría).
  • Observaciones (nivel, caudal, fecha).
  • Metadatos de escenas (ID, cobertura nubosa, conjunto de datos).

Índices en fechas y geometría aceleran los JOINs.

Implementación Actual y Pila Tecnológica

Los usuarios seleccionan un medidor, rango de nivel de agua, período y filtros: el servicio devuelve escenas en un mapa con opciones de exportación. Leaflet.js impulsa el mapa, Chart.js gestiona hidrogramas.

Pila tecnológica:

| Capa | Tecnologías |

|------|-------------|

| Backend | Python, Flask, Gunicorn |

| Base de Datos | PostgreSQL, PostGIS (28M registros) |

| Datos Satelitales | Microsoft Planetary Computer |

| Frontend | Leaflet.js, Chart.js |

| Infraestructura | Docker, nginx, HTTPS |

Servicio en vivo en level-satellite.ru, repositorio: github.com/ruorv/level-satellite-public.

Lecciones Clave

  • La selección de imágenes se ata directamente a niveles reales de agua, evitando datos incomparables.
  • STAC/MPC ofrece acceso flexible sin cuotas de GEE.
  • PostGIS acelera consultas espaciales en datasets masivos.
  • Arquitectura escalable: añadir medidores/datos sin reconstrucciones totales.
  • Código de código abierto para contribuciones comunitarias.

— Editorial Team

Advertisement 728x90

Leer después