Resumen:
En este proyecto se propone un algoritmo de segmentación de imágenes basado en agrupamiento
espectral, SFSC (Superpixels, fuzzy and Spectral Clustering), el cual para imágenes
de tamaño considerable obtiene una segmentación en menor tiempo que un algoritmo clásico
de agrupamiento espectral, además se realiza un análisis con respecto a otras métricas
y algoritmos que presentan semejanza.
La codificación del algoritmo se llevó a cabo en C++. Para realizar las operaciones matriciales
y dar solución al problema de valores y vectores propios se utilizó la librería eigen,
para mejorar el desempeño de eigen se incluyeron librerías extras como: Lapack, OpenMP,
Blas, Pthread y principalmente la librería intel® Math Kernel Library (MKL). Se implementa
una interfaz gráfica de usuario (GUI) en el framework multi plataforma Qt y para
el procesamiento digital de la imágenes se utilizó OpenCV.
El algoritmo presenta tres pilares para su desarrollo: pre-segmentación o diezmando en
súper píxeles con el algoritmo Simple Linear Iterative Clustering (SLIC), construcción de
la matriz de Similaridad con una medida difusa basada en el clasificador Fuzzy C-Means
(FCM) y finalmente mediante agrupamiento espectral se determina la segmentación final.
Con agrupamiento espectral se realiza la construcción de la matriz Laplaciana normalizada
y se determinan los k vectores propios (espectro). La matriz Laplaciana normalizada como
la medida difusa da un buen resultado para determinar el mejor punto corte.
Al comparar el algoritmo desarrollado con otros métodos de segmentación, se consiguieron
buenos resultados en la métrica de complejidad temporal respecto al algoritmo clásico,
además, se obtienen buenos resultados para las diferentes métricas de validación, internas
como externas.