Segmentación Semántica con U-Net & DeepLab: Cartografía IGAC
En desarrollo

Segmentación Semántica con U-Net & DeepLab: Cartografía IGAC

Pipeline de deep learning para segmentar cartografía básica oficial del IGAC sobre 3 municipios colombianos. En construcción: el código sale con el primer release.

PythonU-NetDeepLabPyTorchIGACColombiaSegmentación
Descripción

El detalle

Proyecto de segmentación semántica aplicado a cartografía básica oficial del IGAC (Instituto Geográfico Agustín Codazzi) de Colombia, sobre datos de tres municipios: Madrid, Mosquera y Fusagasugá. El objetivo es segmentar seis clases cartográficas —agua, vegetación, caminos, vías, construcciones y áreas comunes— comparando arquitecturas (U-Net, DeepLab v3+, SegFormer) con metodología reproducible. Está en construcción y el repositorio todavía no es público: se abre cuando haya un pipeline que alguien más pueda correr de principio a fin.

Qué hace

Características

  • 🗺️ Datos oficiales del IGAC: cartografía básica de Madrid, Mosquera y Fusagasugá
  • 🏷️ Seis clases cartográficas: agua, vegetación, caminos, vías, construcciones y áreas comunes
  • 🏗️ Comparativa de arquitecturas: U-Net, DeepLab v3+ y SegFormer sobre el mismo conjunto
  • 📊 Pipeline de punta a punta: etiquetado, entrenamiento, postprocesamiento y validación
  • 🧪 Metodología reproducible, documentada para replicar en otros municipios
  • 📈 Métricas por clase y globales: IoU, F1, precisión y exhaustividad
  • 🔧 Postprocesamiento geoespacial: filtros morfológicos y simplificación de polígonos
  • ✅ Evaluación en municipios no vistos durante el entrenamiento
  • 💾 Exportación a GeoJSON, Shapefile y GeoTIFF para usar en SIG
  • 📚 Notebooks educativos para aprender segmentación semántica aplicada
Stack

Stack tecnológico

  • PyTorch 2.x: framework principal para U-Net, DeepLab v3+, SegFormer
  • segmentation_models.pytorch: implementaciones preentrenadas de arquitecturas
  • Albumentations: data augmentation especializado (rotaciones, flips, cambios de color)
  • Rasterio / GDAL: carga y procesamiento de imágenes geoespaciales
  • GeoPandas / Shapely / Fiona: manejo de geometrías y exportación GIS
  • QGIS / Label Studio: herramientas de etiquetado manual de clases
  • Weights & Biases: tracking de experimentos, métricas y visualizaciones
  • scikit-image / OpenCV: postprocesamiento morfológico (erosión, dilatación, CRF)
  • Jupyter Notebooks: entorno de desarrollo y documentación interactiva
Desafíos

Lo difícil

  • 🏷️ Etiquetar seis clases en tres municipios exige criterio experto, no solo tiempo
  • ⚖️ Desbalance de clases: agua y construcciones abundan; caminos y áreas comunes son minoritarias
  • 🔍 Los límites entre vías y caminos, o construcciones y vegetación, son difusos
  • 🌍 Generalización: lo entrenado en Madrid tiene que servir en Mosquera y Fusagasugá
  • 💾 Las ortofotos del IGAC son de alta resolución y obligan a estrategias de patches
  • 🧹 Quitar ruido de las predicciones sin perder el detalle fino
Lecciones

Lo aprendido

  • 🗺️ El IGAC como fuente oficial y reproducible para proyectos GeoAI en Colombia
  • 🏗️ Qué aporta cada arquitectura cuando el dato es cartografía, no fotos naturales
  • 🔧 Un pipeline geoespacial no termina en el modelo: termina en un GeoJSON que abre en QGIS
  • 📊 Una sola métrica esconde el problema; por clase se ve dónde falla de verdad
  • 🧪 Documentar el proceso es lo que permite que otro lo replique en su región
  • 🎓 Se aprende más con datos reales que con datasets sintéticos
  • 🌎 El fin último: apoyar la actualización de cartografía básica
— Abierto a colaboración
¿Quieres colaborar en este proyecto?
Forkea y construye
— Conversemos

Comentarios

Deja tu comentario

Los leo todos. Se revisan antes de publicarse, así que el tuyo puede tardar un rato en aparecer.

0 / 1500

o escríbeme directo Correo LinkedIn GitHub
— Una carta, sin ruido

Únete a la red.

Experimentos, mapas, papers y proyectos que van aterrizando. Sin spam, sin algoritmos, sin tracking — solo el correo.

⌥ sin spam · sólo lo que publico · baja en un clic