Implementación del algoritmo de Watershed para segmentación de imágenes histopatológicas.
WatershedWorker es un proyecto de procesamiento digital de imágenes desarrollado para la asignatura de Tratamiento Digital de Imágenes. El programa aplica la transformada de Watershed mediante inundación controlada para segmentar y analizar imágenes histopatológicas, mejorando su visualización y facilitando el análisis de estructuras celulares.
- C++ - Lenguaje principal
- Bibliotecas personalizadas de procesamiento de imágenes (C_Image, C_Matrix)
- Filtrado de mediana: Suavizado inicial de la imagen para reducir ruido
- Binarización: Conversión a imagen binaria mediante umbralización configurable
- Transformada de distancia de Chamfer: Cálculo de distancias a los bordes
- Detección de marcadores: Identificación automática de máximos locales
- Watershed por inundación: Segmentación final mediante propagación controlada desde marcadores
# Compilar el proyecto
g++ -o watershed main.cpp -I[ruta_bibliotecas]
# Ejecutar
./watershedEl programa solicitará de forma interactiva:
- Valor de umbral (threshold) para la binarización
- Ruta de la imagen de entrada (formato BMP)
- Directorio de salida
- Nombre del archivo resultante
- Carga de imagen en formato BMP
- Aplicación de filtro de mediana (ventana 5×5)
- Binarización según umbral definido
- Cálculo de transformada de distancia
- Identificación de marcadores (máximos locales)
- Segmentación mediante Watershed
- Escalado a 255 niveles de gris
- Guardado del resultado
Raúl Martínez Gutiérrez
Este proyecto está bajo la Licencia MIT - ver el archivo LICENSE para más detalles.