Segmentación de imágenes mediante un algoritmo de agrupamiento espectral (2017)
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.