Está en la página 1de 155

Centro de Investigación y de Estudios Avanzados

del Instituto Politécnico Nacional

Laboratorio de Tecnologías de Información,


CINVESTAV-Tamaulipas

Sintonización automática de la
red neuronal de pulso acoplado
mediante evolución diferencial
para la segmentación de
imágenes.

Tesis que presenta:

Juanita Hernández López

Para obtener el grado de:

Maestro en Ciencias
en Computación

Director de Tesis:
Dr. Wilfrido Gómez Flores

Cd. Victoria, Tamaulipas, México. Agosto, 2016


© Derechos reservados por
Juanita Hernández López
2016
Esta investigación fue parcialmente financiada por el proyecto No.336765 del Fondo Mixto
CONACyT-Gobierno del Estado de Tamaulipas.

This research was partially funded by project number 336765 from “Fondo Mixto
CONACyT-Gobierno del Estado de Tamaulipas”.
La tesis presentada por Juanita Hernández López fue aprobada por:

____________________________________________________________

Dr. Ricardo Landa Becerra

Dr. José Juan García Hernández

Dr. Wilfrido Gómez Flores, Director

Cd. Victoria, Tamaulipas, México., 15 de Agosto de 2016


“Y aquí está mi secreto, un secreto muy sencillo: solo con el corazón se puede ver bien; lo esencial
es invisible para el ojo”.

Antoine de Saint-Exupéry.
Agradecimientos

¡Muchísimas Gracias!

A Dios por todo cuanto me ha dado.

A mi familia que ha estado apoyándome constantemente en las decisiones que he tomado, los
quiero mucho.

Al Dr. Wilfrido Gómez Flores por su excelente dirección, apoyo y por creer en mi.

A mis revisores, Dr. José Juan García Hernández y Dr. Ricardo Landa Becerra, por sus valiosos
comentarios y sugerencias.

A todos los doctores y miembros del personal administrativo del CINVESTAV Unidad
Tamaulipas, por su apoyo y dedicación.

Al Dr. Hiram Galeana Zapién, Dr. Gabriel Alejandro Galaviz Mosqueda, Dr. José Gabriel
Ramírez Torres, Dr. Eduardo Arturo Rodríguez Tello, Dr. Javier Rubio Loyola, Dr. Arturo
Díaz Pérez, Dr. José Luis González Compean, Dra. Ana Loreto González Hernández, Dr. César
Torres Huitzil, Dr. Ricardo Landa Becerra, Dr. Wilfrido Gómez Flores, por sus valiosos consejos.

Al CONACyT por el apoyo económico proporcionado, el cual me permitió concentrarme en


mis estudios.

Al CINVESTAV Unidad Tamaulipas por la oportunidad que me dio para continuar mis estudios
de postgrado y por el apoyo brindado durante mi estancia en el congreso MCPR 2016.

A mis compañeros y amigos de maestría, por los momentos y las experiencias compartidas.
A Heladio, Omar, Miguel, Juan, Josué, Gerardo, Pablo, Ignacio, Francisco, Leyla, Valentina,
Andrés, Daniel, Carlos, Manuel, Alicia, Magda y Nestor.

A mis amigos de doctorado por las experiencias compartidas y apoyo. A Rafael, Berenice,
Arturo, Adán, Lázaro, Ana, Mahboobeh, Idelfonso, Alberto, Auraham, Jesús, Mario, Julio y
Marisol.

A Silvestre, por su apoyo incondicional ♥.


Índice General

Índice General I

Índice de Figuras V

Índice de Tablas IX

Índice de Algoritmos XI

Publicaciones XIII

Resumen XV

Abstract XVII

Nomenclatura XIX

1. Introducción 1
1.1. Antecedentes y motivación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2. Descripción del problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3. Hipótesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.4. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.5. Metodología . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.5.1. Metodología de desarrollo . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.5.2. Metodología de investigación . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.6. Organización del documento de investigación . . . . . . . . . . . . . . . . . . . . 9

2. Estado del arte 11


2.1. Modelos de PCNN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.1.1. Modelo PCNN original . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.1.2. Modelo ICM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.1.3. Modelo SPCNN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.1.4. Modelo SCM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.1.5. Modelo PCNNs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.1.6. Modelo PCNN híbrido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.2. Sintonización de parámetros de la PCNN . . . . . . . . . . . . . . . . . . . . . . . 19
2.2.1. Técnicas adaptativas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.2.1.1. Algoritmo TDA . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.2.1.2. Algoritmo GIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.2.1.3. Algoritmo PCA . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.2.1.4. Algoritmo WTS . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

i
2.2.1.5. Otros enfoques . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.2.2. Técnicas automáticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.2.2.1. Algoritmo genético . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.2.2.2. Sistema inmune artificial . . . . . . . . . . . . . . . . . . . . . . 24
2.2.2.3. Algoritmo de optimización espiral . . . . . . . . . . . . . . . . . 25
2.2.2.4. Algoritmo de optimización del forrajeo de bacterias . . . . . . . . 25
2.2.2.5. Algoritmo de optimización por mosca de la fruta . . . . . . . . . . 26
2.2.2.6. Algoritmo de optimización por cúmulo de partículas . . . . . . . . 27
2.2.2.7. Algoritmo de evolución diferencial . . . . . . . . . . . . . . . . . . 28
2.3. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

3. Marco teórico 33
3.1. Variantes del modelo PCNN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.1.1. PCNN original . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.1.2. SPCNN1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.1.3. SPCNN2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.1.4. ICM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.2. Algoritmos de evolución diferencial . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.2.1. Evolución diferencial clásico . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.2.2. Evolución diferencial adaptativo . . . . . . . . . . . . . . . . . . . . . . . . 43
3.2.3. Evolución diferencial autoadaptativo . . . . . . . . . . . . . . . . . . . . . 44
3.3. Índices de validez de grupos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.3.1. Índice CH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
3.3.2. Índice DB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.3.3. Índice PBM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.3.4. Índice XB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.4. Métricas de evaluación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.4.1. Desempeño de segmentación . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.4.2. Índice de calidad de imagen . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.4.3. Pruebas estadísticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.5. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

4. Metodología 55
4.1. Enfoque propuesto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.2. Enfoques de la literatura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.2.1. PSO-PCNN-ENT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4.2.2. GA-SPCNN1-ENT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
4.3. Conjunto de imágenes de prueba . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
4.3.1. Imágenes reales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
4.3.2. Imágenes simuladas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
4.4. Experimentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
4.4.1. Infraestructura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
4.5. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

ii
5. Resultados 75
5.1. Experimento 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.1.1. Desempeño de segmentación . . . . . . . . . . . . . . . . . . . . . . . . . 76
5.1.2. Análisis estadístico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
5.1.3. Análisis de consistencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
5.1.4. Análisis de convergencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
5.1.5. Resultados subjetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
5.2. Experimento 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
5.2.1. Desempeño de segmentación . . . . . . . . . . . . . . . . . . . . . . . . . 86
5.2.2. Calidad de imagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
5.2.3. Formas de los objetos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
5.2.4. Preprocesamiento de la imagen . . . . . . . . . . . . . . . . . . . . . . . . 92
5.3. Experimento 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
5.3.1. Comparación con otros métodos . . . . . . . . . . . . . . . . . . . . . . . . 96
5.3.1.1. Comparación objetiva . . . . . . . . . . . . . . . . . . . . . . . . 96
5.3.1.2. Comparación subjetiva . . . . . . . . . . . . . . . . . . . . . . . . 97
5.3.2. Comparación de las funciones de costo . . . . . . . . . . . . . . . . . . . . 97
5.4. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99

6. Conclusiones y trabajo futuro 101


6.1. Conclusiones generales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
6.2. Contribuciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
6.3. Trabajo futuro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

A. Apéndice A
Alcances y limitaciones del algoritmo propuesto. 105

iii
Índice de Figuras

1.1. Metodología del proceso de obtención del algoritmo de segmentación basado en PCNN. 6

2.1. Modelo neuronal PCNN original. En rojo los parámetros del modelo. . . . . . . . . . 12
2.2. Modelo neuronal ICM. En rojo, los parámetros del modelo. . . . . . . . . . . . . . . 14
2.3. Modelo neuronal SPCNN. En rojo, los parámetros del modelo. . . . . . . . . . . . . 15
2.4. Modelo neuronal SCM. En rojo, los parámetros del modelo. . . . . . . . . . . . . . 17
2.5. Modelo neuronal m-PCNN. En rojo, los parámetros del modelo. . . . . . . . . . . . 18

3.1. Modelo neuronal PCNN original. En rojo, los parámetros de entrada que se requieren
sintonizar del modelo. Factores de atenuación (αL , αF , αθ ), valores de potencial (VL ,
VF , Vθ ), factor de conexión (β), radio de enlace (W ) y número de iteraciones (n). . 34
3.2. Ejemplo de dos matrices de pesos sinápticos de tamaño 3x3 y 5x5 píxeles, con radio
de enlace r = 1 y r = 2, respectivamente. El valor de cada casilla refleja la fuerza de
conexión entre las neuronas vecinas con la neurona central. . . . . . . . . . . . . . 35
3.3. Modelo neuronal SPCNN1. En rojo, los parámetros de entrada que se requieren
sintonizar del modelo. Factor de atenuación (αθ ), valor de potencial (Vθ ), factor
de conexión (β), radio de enlace (W ) y número de iteraciones (n). . . . . . . . . . 37
3.4. Modelo neuronal SPCNN2. En rojo, los parámetros de entrada que se requieren
sintonizar del modelo. Factor de atenuación (αθ ), factor de conexión (β), radio de
enlace (W ) y número de iteraciones (n). . . . . . . . . . . . . . . . . . . . . . . . 39
3.5. Modelo neuronal ICM. En rojo, los parámetros de entrada que se requieren sintonizar
del modelo. Constantes de atenuación (f , g), valor escalar (h), radio de enlace (W )
y número de iteraciones (n). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

4.1. Banco de imágenes de prueba. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65


4.2. Imágenes reales con sus respectivas imágenes binarias de referencia. . . . . . . . . . 66
4.3. Conjunto de imágenes simuladas con objetos de forma regular e irregular y radios de
16, 32 y 64 píxeles (R16, R32 y R64). . . . . . . . . . . . . . . . . . . . . . . . . . 68
4.4. Proceso para generar una imagen simulada. . . . . . . . . . . . . . . . . . . . . . . 69
4.5. Ejemplo de imágenes simuladas con un objeto irregular y diferentes características,
denotadas con las siguientes nomenclaturas: a) R64CbIaNbBb, b) R32CbIaNaBm,
c) R16CaIaNaBm, d) R64CbIaNmBb, e) R32CmImNbBm, f) R16CaImNaBm, g)
R64CmIaNaBm, h) R32CmImNaBm y i) R16CaIbNbBa. . . . . . . . . . . . . . . . 70
4.6. Proceso de evaluación de una imagen segmentada . . . . . . . . . . . . . . . . . . 72

5.1. Resultados de desempeño de segmentación en términos del índice ARI. Para cada
variante algorítmica, los rombos señalan el valor de mediana y las líneas verticales
representan el valor MAD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

v
5.2. Resultados de desempeño de segmentación en términos del índice NMI. Para cada
variante algorítmica, los rombos señalan el valor mediana y las líneas verticales
representan el valor MAD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
5.3. Resultados de tiempo de cómputo del Experimento 1. Las figuras geométricas marcan
el valor de mediana y las líneas verticales representan la dispersión MAD. . . . . . . 79
5.4. Resultados de convergencia del algoritmo DE-SPCNN1-XB durante 50 generaciones,
donde cada punto representa la mediana de 31 ejecuciones independientes. . . . . . 83
5.5. Resultados de segmentación del algoritmo DE con la red SPCNN1 variando la función
de costo (CH, DB, PBM, XB), al segmentar las imágenes: a) flores, b) polilla, c)
helicópteros y d) isla. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
5.6. Resultados de desempeño de segmentación en términos del índice ARI obtenidos a
partir de conjuntos de imágenes simuladas con objetos regulares. Los círculos señalan
el valor de mediana del rango de intensidad del brillo y las líneas verticales representan
el valor MAD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
5.7. Resultados de desempeño de segmentación en términos del índice ARI obtenidos a
partir de conjuntos de imágenes simuladas con objetos irregulares. Los círculos señalan
el valor de mediana del rango de intensidad del brillo y las líneas verticales representan
el valor MAD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
5.8. Resultados de desempeño de segmentación en términos del índice NMI obtenidos a
partir de conjuntos de imágenes simuladas con objetos regulares. Los círculos señalan
el valor de mediana del rango de intensidad del brillo y las líneas verticales representan
el valor MAD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
5.9. Resultados de desempeño de segmentación en términos del índice NMI obtenidos
a partir de conjuntos de imágenes simuladas con objetos irregulares. Los círculos
señalan el valor de mediana del rango de intensidad del brillo y las líneas verticales
representan el valor MAD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
5.10. Cuantificación de la calidad de las imágenes simuladas con el índice BIQI. . . . . . . 90
5.11. Diferentes calidades de imágenes simuladas (R64CaIbNbBb, R32CbImNbBa), a)
imagen de alta calidad con un valor de BIQI=59 (desempeño ARI=0.997) y b) imagen
de baja calidad con un valor de BIQI=96 (desempeño ARI=0.003). . . . . . . . . . 90
5.12. Desempeño de segmentación (ARI) en función de la calidad de imagen (BIQI) para
formas regulares (izquierda) e irregulares (derecha). . . . . . . . . . . . . . . . . . 91
5.13. Ejemplo de segmentación en una imagen oscura de bajo contraste: (a) imagen original,
(b) segmentación sin preprocesamiento (ARI=0.0038 y NMI=0.003), (c) imagen
preprocesada, y (d) segmentación con preprocesamiento (ARI=0.804 y NMI=0.676). 95
5.14. Comparación de las segmentaciones resultantes de los algoritmos GA-SPCNN1-ENT,
PSO-PCNN-ENT y DE-SPCNN1-XB. Las cuatro imágenes consideradas son: a)
flores, b) polilla, c) helicópteros y d) isla. . . . . . . . . . . . . . . . . . . . . . . . 98

vi
A.1. Análisis de desempeño del algoritmo DE-SPCNN1-XB frente a características de brillo
bajo, medio y alto (Bb, Bm y Ba) en imágenes con formas regulares. El tamaño de
las barras a la izquierda ilustra la ocurrencia de imágenes para diferentes rangos de
valores de ARI. Las gráficas a la derecha realizan la comparación del desempeño de
segmentación (ARI) contra la calidad de imagen (BIQI), los círculos representa la
mediana obtenida y la línea de color la regresión obtenida. . . . . . . . . . . . . . . 106
A.2. Análisis de desempeño del algoritmo DE-SPCNN1-XB frente a características de
contraste alto, medio y bajo (Ca, Cm y Cb) en imágenes con formas regulares. El
tamaño de las barras a la izquierda ilustra la ocurrencia de imágenes para diferentes
rangos de valores de ARI. Las gráficas a la derecha realizan la comparación del
desempeño de segmentación (ARI) contra la calidad de imagen (BIQI), los círculos
representa la mediana obtenida y la línea de color la regresión obtenida. . . . . . . . 107
A.3. Análisis de desempeño del algoritmo DE-SPCNN1-XB frente a características de
iluminación baja, media y alta (Ib, Im y Ia) en imágenes con formas regulares. El
tamaño de las barras a la izquierda ilustra la ocurrencia de imágenes para diferentes
rangos de valores de ARI. Las gráficas a la derecha realizan la comparación del
desempeño de segmentación (ARI) contra la calidad de imagen (BIQI), los círculos
representa la mediana obtenida y la línea de color la regresión obtenida. . . . . . . . 108
A.4. Análisis de desempeño del algoritmo DE-SPCNN1-XB frente a características de ruido
bajo, medio y alto (Nb, Nm y Na) en imágenes con formas regulares. El tamaño de
las barras a la izquierda ilustra la ocurrencia de imágenes para diferentes rangos de
valores de ARI. Las gráficas a la derecha realizan la comparación del desempeño de
segmentación (ARI) contra la calidad de imagen (BIQI), los círculos representa la
mediana obtenida y la línea de color la regresión obtenida. . . . . . . . . . . . . . . 109
A.5. Análisis de desempeño del algoritmo DE-SPCNN1-XB frente a características de
tamaño grande, mediano y pequeño (Ra, Rm y Rb) en imágenes con formas regulares.
El tamaño de las barras a la izquierda ilustra la ocurrencia de imágenes para diferentes
rangos de valores de ARI. Las gráficas a la derecha realizan la comparación del
desempeño de segmentación (ARI) contra la calidad de imagen (BIQI), los círculos
representa la mediana obtenida y la línea de color la regresión obtenida. . . . . . . . 110
A.6. Análisis de desempeño del algoritmo DE-SPCNN1-XB frente a características de brillo
bajo, medio y alto (Bb, Bm y Ba) en imágenes con formas irregulares. El tamaño
de las barras a la izquierda ilustra la ocurrencia de imágenes para diferentes rangos
de valores de ARI. Las gráficas a la derecha realizan la comparación del desempeño
de segmentación (ARI) contra la calidad de imagen (BIQI), los círculos representa la
mediana obtenida y la línea de color la regresión obtenida. . . . . . . . . . . . . . . 111
A.7. Análisis de desempeño del algoritmo DE-SPCNN1-XB frente a características de
contraste alto, medio y bajo (Ca, Cm y Cb) en imágenes con formas irregulares. El
tamaño de las barras a la izquierda ilustra la ocurrencia de imágenes para diferentes
rangos de valores de ARI. Las gráficas a la derecha realizan la comparación del
desempeño de segmentación (ARI) contra la calidad de imagen (BIQI), los círculos
representa la mediana obtenida y la línea de color la regresión obtenida. . . . . . . . 112

vii
A.8. Análisis de desempeño del algoritmo DE-SPCNN1-XB frente a características de
iluminación baja, media y alta (Ib, Im y Ia) en imágenes con formas irregulares. El
tamaño de las barras a la izquierda ilustra la ocurrencia de imágenes para diferentes
rangos de valores de ARI. Las gráficas a la derecha realizan la comparación del
desempeño de segmentación (ARI) contra la calidad de imagen (BIQI), los círculos
representa la mediana obtenida y la línea de color la regresión obtenida. . . . . . . . 113
A.9. Análisis de desempeño del algoritmo DE-SPCNN1-XB frente a características de ruido
bajo, medio y alto (Nb, Nm y Na) en imágenes con formas irregulares. El tamaño
de las barras a la izquierda ilustra la ocurrencia de imágenes para diferentes rangos
de valores de ARI. Las gráficas a la derecha realizan la comparación del desempeño
de segmentación (ARI) contra la calidad de imagen (BIQI), los círculos representa la
mediana obtenida y la línea de color la regresión obtenida. . . . . . . . . . . . . . . 114
A.10.Análisis de desempeño del algoritmo DE-SPCNN1-XB frente a características de
tamaño grande, mediano y pequeño (Ra, Rm y Rb) en imágenes con formas
irregulares. El tamaño de las barras a la izquierda ilustra la ocurrencia de imágenes
para diferentes rangos de valores de ARI. Las gráficas a la derecha realizan la
comparación del desempeño de segmentación (ARI) contra la calidad de imagen
(BIQI), los círculos representa la mediana obtenida y la línea de color la regresión
obtenida. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

viii
Índice de Tablas

2.1. Comparativa de las variantes PCNN. . . . . . . . . . . . . . . . . . . . . . . . . . 29


2.2. Comparativa de algoritmos de sintonización automática de la PCNN. . . . . . . . . 30
2.3. Ventajas y desventajas de algoritmos de sintonización automática de la PCNN. . . . 30

4.1. Límites de los parámetros para todas las variantes de PCNN. Los símbolos “3” y “7”
indican presencia y ausencia, respectivamente, del parámetro en el modelo. . . . . . 56
4.2. Valores definidos para el algoritmo de DE. Los símbolos “3” y “7” indican presencia
y ausencia, respectivamente, del parámetro en el algoritmo. . . . . . . . . . . . . . 57
4.3. Variantes algorítmicas candidatas. . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

5.1. Resultados de las tres mejores variables del Experimento 1. . . . . . . . . . . . . . . 80


5.2. Valores de mediana de las diferencias absolutas entre pares de parámetros de los tres
mejores métodos de segmentación en el Experimento 1. . . . . . . . . . . . . . . . 81
5.3. Resultados de las tres variantes del Experimento 1 con parámetros fijos W y n. . . . 82
5.4. Resultados estadísticos del algoritmo DE-SPCNN1-XB con parámetros fijos de
W = 2, n = 2 y condición de paro para diferentes umbrales θ. . . . . . . . . . . . 83
5.5. Resultados estadísticos del número de generaciones utilizando la condición de paro
basada en umbral θ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
5.6. Desempeño de segmentación del algoritmo DE-SPCNN1-XB usando el conjunto de
imágenes simuladas con objetos de formas regulares e irregulares. . . . . . . . . . . 91
5.7. Características de intensidad limitantes para el algoritmo DE-SPCNN1-XB. . . . . . 93
5.8. Desempeño de segmentación del algoritmo DE-SPCNN1-XB para imágenes con
objetos de formas regulares. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
5.9. Desempeño de segmentación del algoritmo DE-SPCNN1-XB para imágenes con
objetos con formas irregulares. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
5.10. Desempeño de segmentación de los algoritmos de la literatura y el algoritmo propuesto. 96
5.11. Resultados comparativos de los algoritmos de la literatura al utilizar las funciones de
costo de entropía e índice XB. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

ix
Índice de Algoritmos

3.1. Algoritmo de evolución diferencial clásico . . . . . . . . . . . . . . . . . . . . . . . 44


3.2. Algoritmo de evolución diferencial con parámetros autoadaptativos (JADE) . . . . . 47

4.3. Algoritmo de segmentación propuesto basado en PCNN y sintonizado con DE. . . . 59


4.4. Algoritmo de segmentación PSO-PCNN-ENT . . . . . . . . . . . . . . . . . . . . . 62
4.5. Algoritmo de segmentación GA-SPCNN1-ENT. . . . . . . . . . . . . . . . . . . . . 64

xi
Publicaciones

Juanita Hernández, Wilfrido Gómez. Automatic Tuning of the Pulse-Coupled Neural Network Using
Differential Evolution for Image Segmentation. 8º Conferencia Mexicana en Reconocimiento de
Patrones (MCPR 2016), Guanajuato, México, Junio 2016.

xiii
Resumen

Sintonización automática de la red neuronal de pulso


acoplado mediante evolución diferencial para la
segmentación de imágenes.
por

Juanita Hernández López


Laboratorio de Tecnologías de Información, CINVESTAV-Tamaulipas
Centro de Investigación y de Estudios Avanzados del Instituto Politécnico Nacional, 2016
Dr. Wilfrido Gómez Flores, Director

La red neuronal de pulso acoplado (PCNN, pulse-coupled neural network) está basada en el modelo
cortical propuesto por Eckhorn. A diferencia de otro tipo de redes neuronales, la PCNN es modulada
y acoplada. Estos aspectos permiten conservar características relevantes de la imagen, por lo que es
ampliamente utilizada en tareas como la segmentación de imágenes. Sin embargo, el desempeño de
la PCNN depende particularmente de la configuración de sus parámetros de entrada. Actualmente,
diversas técnicas de inteligencia computacional han sido utilizadas en la sintonización automática
de la PCNN. La mayoría de esas técnicas utilizan la medida de entropía como función de costo, sin
tomar en cuenta la relación de dispersión inter-/intra-grupo existente entre los píxeles relacionados a
los objetos de interés y al fondo. Por tanto, en este trabajo de tesis se propone utilizar el algoritmo de
evolución diferencial junto con un índice de validez de grupos como función de costo para cuantificar
la calidad de la segmentación con el fin de guiar la búsqueda hacia los mejores parámetros de
la PCNN que obtengan una segmentación adecuada de la imagen de entrada. Los experimentos
se realizaron sobre imágenes reales y simuladas, y los resultados obtenidos indican que el método
propuesto obtuvo el mejor desempeño de segmentación con baja dispersión. En términos del índice
ARI los valores de mediana fueron 0.772, superando a dos algoritmos de la literatura basados en
técnicas automáticas, algoritmo genético y optimización por cúmulo de partículas, que obtuvieron
en mediana de desempeño 0.434 y 0.046, respectivamente, y que utilizan la entropía como función
de costo para la sintonización de los parámetros de la PCNN.

xv
Abstract

Automatic tuning of the pulse-coupled neural network by


differential evolution for image segmentation.
by

Juanita Hernández López


Information Technology Laboratory, CINVESTAV-Tamaulipas
Center for Research and Advanced Studies of the National Polytechnic Institute, 2016
Dr. Wilfrido Gómez Flores, Director

The pulse-coupled neural network (PCNN) is based on the cortical model proposed by Eckhorn.
Unlike other kind of neural networks, the PCNN is modulated and coupled. These features allow to
preserve relevant characteristics of the image, so it is widely used in tasks such as image segmentation.
However, the PCNN performance depends on adjusting its input parameters. Currently, computational
intelligence techniques have been used to automatically tune the PCNN parameters. Most of these
techniques use the entropy measure as a cost function, regardless of the relationship of inter-/intra-
group dispersion between the pixels related to the objects of interest and their background. Therefore,
in this study, we propose to use a differential evolution algorithm along with a cluster validity index
as a cost function to quantify the segmentation quality to guide the search to the best PCNN
parameters, in order to get an adequate segmentation of the input image. The experiments considered
real and simulated images, and the results pointed out that the proposed approach obtained the best
segmentation performance with low dispersion. In terms of ARI index, the median values were 0.772,
outperformed two algorithms proposed in the literature based on automated techniques, genetic
algorithm and particle swarm optimization, which obtained median performance in 0.434 and 0.046,
respectively, and they used the entropy criterion to tune the PCNN parameters.

xvii
Nomenclatura

PCNN pulse coupled neural network o red neuronal de pulso acoplado


CVI cluster validity index o índice de validez de grupos
CI computational intelligence o inteligencia computacional
DE differential evolution o evolución diferencial
MAD median absolute deviation o desviación absoluta respecto a la mediana
1
Introducción

Este capítulo describe la motivación y los antecedentes del problema que se desea resolver en este
trabajo de tesis. También, se plantea de manera formal el problema y la hipótesis de investigación,
así como los objetivos que se desean alcanzar. Finalmente, se presenta la metodología que se seguirá
en esta investigación.

1.1 Antecedentes y motivación

El procesamiento digital de imágenes es una disciplina que durante décadas ha tratado con el
conjunto de técnicas aplicables a imágenes digitales para mejorar la calidad, el almacenamiento
eficiente, entre otros aspectos y facilitar el análisis e interpretación de las mismas.
El proceso de analizar una imagen generalmente abarca desde la adquisición de la imagen hasta el
reconocimiento de objetos, donde la segmentación de la imagen es un paso intermedio cuyo objetivo
es aislar los objetos de interés de su fondo para su posterior análisis e interpretación. Actualmente
existen distintas técnicas de segmentación de imágenes, entre ellas se encuentran métodos basados

1
2 1.1. Antecedentes y motivación

en extracción de bordes, como el algoritmo de Canny [1], búsqueda de umbrales de intensidad, como
el método de Otsu [2], métodos basados en regiones, como los modelos de contornos activos [3],
entre otras. En general, el desafío de cualquier método de segmentación consiste en tratar imágenes
con características muy variantes, por ejemplo, la forma de los objetos, transformaciones geométricas,
ruido, iluminación de la escena, colores, texturas, etc.

Los seres humanos tenemos una capacidad excepcional para detectar y reconocer objetos con
extrema facilidad y se ha demostrado que esta capacidad también es válida para los animales en una
mayor o menor medida [4, 5]. A pesar de que muchos investigadores están trabajando en el desarrollo
de diversas técnicas de análisis de imágenes, el progreso hacia el procesamiento de manera similar al
ser humano ha sido lento debido a la dificultad de modelar la gran complejidad del sistema visual.

Los modelos corticales surgieron debido a la necesidad de contar con nuevas metodologías que
realizaran tareas de procesamiento digital de imágenes y reconocimiento de patrones con buena
exactitud en un tiempo de cómputo razonable [6]. Estos modelos se inspiraron en las habilidades que
poseemos los humanos para reconocer, discriminar y clasificar objetos, lo cual se realiza en su mayoría
en la corteza visual del cerebro. Sin embargo, debido a la complejidad del sistema visual humano,
las primeras contribuciones de los modelos matemáticos corticales se realizaron emulando la corteza
visual de mamíferos pequeños. Aunque el primer trabajo relacionado a los modelos corticales fue
en 1952, con el modelo de Hodgkin-Huxley [4], fue hasta 1989 cuando Eckhorn [4, 5, 7] descubrió
que las oscilaciones sincronizadas en la corteza visual del gato generan imágenes binarias de las que se
pueden extraer diferentes características de las impresiones visuales para generar una imagen. En este
sentido, Eckhorn propuso un modelo neuronal donde cada neurona posee dos entradas, la primera
llamada alimentación (feeding ), recibe estímulos externos y locales, y la segunda denominada enlace
(linking ), recibe únicamente estímulos locales [4, 5, 7]. Derivado de este modelo neuronal, la red
neuronal de pulso acoplado (PCNN, pulse-coupled neural network) y sus diversas variantes han sido
utilizadas con éxito en diferentes aplicaciones de segmentación de imágenes, aunque en general, su
1. Introducción 3

desempeño depende de la adecuada sintonización de sus parámetros de entrada como las constantes
de decaimiento, radio de enlace, número de iteraciones, entre otros [5, 7].

Recientemente, el problema de sintonización de parámetros de la PCNN para segmentación de


imágenes ha sido tratado por medio de técnicas de inteligencia computacional (CI, computational
intelligence), utilizando básicamente algoritmos de computación evolutiva e inteligencia de enjambre,
debido a que éstos son capaces de resolver problemas de optimización en ambientes cambiantes y
complejos, en tiempos de cómputo razonables [8]. Algunos trabajos relevantes que han sintonizado
la PCNN incluyen algoritmos de optimización por cúmulo de partículas (PSO, particle swarm
optimization) [9], optimización por mosca de la fruta (FOA, fly fruit optimization algorithm) [10],
optimización del forrajeo de bacterias (BFO, bacterial foraging optimization) [11], algoritmo genético
(GA, genetic algorithm) [12] y evolución diferencial (DE, differential evolution) [6, 13].

Diversos estudios han demostrado la superioridad del algoritmo de DE sobre PSO y GA para
resolver problemas de optimización en dominios continuos [14]. Sin embargo, se ha observado que el
desempeño de búsqueda del algoritmo de DE está influenciado por sus parámetros de control como
el factor de escala en el operador de mutación y la probabilidad de intercambio en el operador de
cruza. Debido a esto se han propuesto métodos de DE adaptables (modifican los parámetros de
control en cada generación de manera estocástica o controlada) y DE autoadaptables [15] (utilizan
retroalimentación del proceso evolutivo para modificar sus parámetros en cada generación para cada
individuo), con lo cual se trata de evitar convergencias prematuras a un mínimo local y favorecer la
exploración del espacio de búsqueda. A pesar de que existen varios algoritmos de DE adaptables y
autoadaptables [16, 17], no se han aplicado en la sintonización de la PCNN para la segmentación de
imágenes.

Por otro lado, la correcta selección de la función de costo es clave para guiar el proceso evolutivo,
ya que cuantifica la calidad de una solución potencial para determinar su sobrevivencia en la población
y así garantizar una segmentación adecuada y consistente de la imagen de entrada. En el caso de
la sintonización de la PCNN mediante algoritmos de optimización, el criterio de máxima entropía
4 1.2. Descripción del problema

se ha utilizado ampliamente [5], ya que provee una medida de traslape entre las distribuciones
de probabilidad relacionadas a los niveles de intensidad de los objetos y el fondo [18]. Sin embargo,
debido a que el proceso de segmentación es básicamente un agrupamiento de píxeles con intensidades
similares, el criterio de máxima entropía no considera la información de dispersión intra-grupo e inter-
grupo, es decir, qué tan similares son los niveles de intensidad de los objetos y qué tan disimilares
son en relación a las intensidades del fondo. Debido a lo anterior, la importancia de un índice de
validez de grupos (CVI, cluster validity index) utilizado como función de costo radica en que es
posible cuantificar la calidad de segmentación tomando en cuenta la relación inter-/intra-grupo, esto
es, minimizar la dispersión intra-grupo y al mismo tiempo maximizar la dispersión inter-grupo [5].
Dado el contexto anterior, en este trabajo de investigación se propone un método de sintonización
de parámetros de la PCNN para la segmentación de imágenes por medio de un algoritmo de DE cuya
función de costo es un CVI, de modo que los parámetros de una población de PCNNs se actualicen
de manera iterativa mediante los operadores de mutación, cruza y selección.

1.2 Descripción del problema

El problema de segmentación de imágenes puede ser visto como un problema de agrupamiento,


donde una imagen R es particionada en dos grupos c1 y c2 que contienen los píxeles que pertenecen
a los objetos de interés y al fondo, respectivamente, lo cual forma un agrupamiento denotado como
C = {c1 , c2 } y que debe satisfacer las siguientes condiciones:

ci 6= ∅, para i = 1, 2;

c1 ∪ c2 = R;

c1 ∩ c2 = ∅.

Por otro lado, considérese el vector x = [x1 , ..., xd ] que contiene los d parámetros de entrada de
una PCNN a partir de los cuales se genera el agrupamiento C de una imagen R. Entonces, al definir
1. Introducción 5

un conjunto X = {x1 , ..., xN } de vectores de parámetros, se generan N posibles soluciones factibles


de segmentación de una imagen R. Por tanto, el problema de encontrar la mejor segmentación
puede formularse como un problema de optimización, donde Ω = {Cx1 , ..., CxN } es el conjunto de
agrupamientos (o segmentaciones) candidatos de los píxeles de una imagen R dados los parámetros
de la PCNN en X, de modo que se debe determinar el agrupamiento óptimo C∗ ∈ Ω para el cual se
debe satisfacer:
∀C ∈ Ω : f (C∗ ) < f (C) (1.1)

donde f (·) es una función de costo dada en términos de un CVI, el cual mide la relación de dispersión
intra-/inter-grupo entre c1 y c2 . Nótese que f (·) es minimizada sin pérdida de generalidad.

1.3 Hipótesis

Debido a lo expuesto anteriormente, la hipótesis de investigación se formula como sigue: “El


desempeño de segmentación de imágenes mejora al sustituir el criterio de máxima entropía por
un índice de validez de grupos como función de costo dentro de un esquema evolutivo para la
sintonización de los parámetros de una red neuronal de pulso acoplado”.

1.4 Objetivos

Los objetivos de este trabajo de investigación son los siguientes:


Objetivo general
Obtener un método de sintonización automática de los parámetros de una PCNN mediante
evolución diferencial guiada por un índice de validez de grupos para la segmentación de imágenes.
Objetivos particulares

Determinar la variante de PCNN a partir de diversos modelos conocidos que genere una
segmentación de imágenes adecuada y con menor tiempo de cómputo.
6 1.5. Metodología

Seleccionar el algoritmo de evolución diferencial que proporcione una sintonización consistente


de los parámetros de una PCNN.

Definir un índice de validez de grupos como función de costo para guiar el proceso de
sintonización de los parámetros de una PCNN.

1.5 Metodología

La metodología que se sigue en este trabajo de investigación está orientada a cumplir con los
objetivos planteados, propuestos con el fin de validar la hipótesis de investigación.

1.5.1 Metodología de desarrollo

1 6 7
Algoritmo     Análisis  de  consistencia  
de    
segmentación  propuesto  
8
Análisis  de  convergencia  
Banco  de  imágenes   5 6  

Etapa  1   4   ED   9
DDE   ✓  Iluminación  
2   ✓  Ruido  
JADE   ✓  Contraste  
0   jjahahshasha
PCNN   ICM   SPCNN1   SPCNN2  
2 jjahahshasha
Evaluación  de  desempeño  y  
 análisis  estadísIco   Análisis  de  calidad  

Etapa  3  

Variante  PCNN  
Distancia  
Intra-­‐cluster  

Generaciones   Distancia    
1   22222 5555 inter-­‐cluster  
2   23464   5555
3 3   64748   5847  
4
Algoritmo    
Evolución  Diferencial   CVI  
Etapa  2  

Figura 1.1: Metodología del proceso de obtención del algoritmo de segmentación basado en PCNN.
1. Introducción 7

El proceso metodológico mediante el cual se obtiene el algoritmo de segmentación propuesto en


este trabajo de investigación, consta de tres etapas principales como se muestra en la Figura 1.1.
Cada una de estas etapas incluye una serie de pasos, numerados de acuerdo al diagrama en la
Figura 1.1, los cuales se detallan a continuación.

Etapa 1.- Selección del banco de imágenes a utilizar.

1.- Definir el banco de imágenes para realizar la evaluación y validación del algoritmo de
segmentación propuesto que involucre imágenes reales, para evaluar la exactitud y consistencia
del método propuesto, y simuladas, para evaluar los alcances y limitantes del método propuesto.

Etapa 2.- Diseño del algoritmo de segmentación basado en PCNN y DE .


El diseño del algoritmo de segmentación propuesto considera diferentes variantes de PCNN, DE y
CVI, debido a que actualmente no existen en la literatura implementaciones que consideren el CVI
como función de costo, además de que el uso de algoritmos de DE adaptables y autoadaptables
no se han aplicado al problema de sintonización de la PCNN. Por tanto, es de interés realizar la
comparación de este tipo de algoritmos y aplicarlos a la resolución del problema. En este sentido, los
pasos de esta etapa están orientados a la construcción de los algoritmos de segmentación candidatos
a partir de la combinación entre las diferentes variantes de PCNN, DE y CVI, para ello se realizan lo
siguiente pasos:

2.- Seleccionar un conjunto de modelos de PCNN a partir de diversos modelos conocidos que han
sido utilizados ampliamente en la literatura.

3.- Definir las variantes de algoritmos de DE para la sintonización de los modelos de PCNN, los
cuales involucran parámetros fijos, parámetros dinámicos y parámetros autoadaptables.

4.- Determinar un conjunto de CVIs que no sean computacionalmente costosos y que consideren
la relación de dispersión inter/-intra clase.
8 1.5. Metodología

Etapa 3.- Evaluación y análisis.


Al finalizar la Etapa 2 se obtienen diferentes algoritmos de segmentación candidatos, los cuales deben
ser evaluados en cuanto a su desempeño de segmentación, así como tiempo de cómputo. Con esta
finalidad, los pasos que intervienen en la Etapa 3 se describen como sigue:

5.- Definir los índices de desempeño de segmentación y los métodos de evaluación estadística.

6.- Seleccionar el algoritmo de segmentación candidato que obtiene el mejor desempeño de


segmentación, con menor tiempo de cómputo, el cual representa el algoritmo de segmentación
propuesto.

7.- Realizar un análisis de consistencia de parámetros del algoritmo propuesto, con el objetivo de
determinar si es posible reducir el número de parámetros a sintonizar sin afectar el desempeño
de segmentación obtenido.

8.- Realizar un análisis de convergencia para determinar si es posible reducir el número de


generaciones del algoritmo de DE sin afectar el desempeño de segmentación obtenido, con
el fin de reducir el costo computacional.

9.- Realizar un análisis de calidad con el fin de analizar los alcances y limitaciones del algoritmo
propuesto.

1.5.2 Metodología de investigación

Por otra parte la metodología general del proceso de investigación consistió en lo siguiente:

1.- Estudiar el estado del arte para identificar los modelos de PCNN, variantes de evolución
diferencial e índices de validez que serán potencialmente utilizados en esta investigación.

2.- Obtener un banco de imágenes de pruebas que considere imágenes reales y simuladas. Para
ambos casos se revisará la literatura para identificar conjuntos de imágenes que sean adecuados
para evaluar métodos de segmentación.
1. Introducción 9

3.- Evaluar el desempeño de segmentación del algoritmo de segmentación propuesto y de un


conjunto de algoritmos de segmentación basados en PCNN obtenidos de la literatura, los
cuales utilicen el criterio de máxima entropía para sintonizar los parámetros de la PCNN.

4.- Comparar los resultados de segmentación de los métodos implementados utilizando índices de
desempeño de segmentación y análisis estadístico.

5.- Validar la hipótesis de investigación y publicar los resultados obtenidos.

1.6 Organización del documento de investigación

El contenido temático de este documento de investigación se complementa con el resto de los


cinco capítulos siguientes. El Capítulo 2 describe el estado del arte existente entorno al tema de
investigación, el trabajo relacionado al problema de sintonización de la PCNN, los modelos PCNN
existentes en la literatura y algunas de las técnicas de sintonización empleadas en la práctica. El
Capítulo 3 describe las bases teóricas de las técnicas utilizadas en el desarrollo de esta tesis. Por
otro lado, en el Capítulo 4 se describe el proceso metodológico para el desarrollo del algoritmo de
segmentación basado en PCNN y evolución diferencial. Posteriormente, en el Capítulo 5 se describe
la experimentación y los resultados obtenidos para validar la metodología propuesta. Finalmente, en
el Capítulo 6 se presentan las conclusiones y se plantea el trabajo futuro para continuar con este
trabajo de investigación.
2
Estado del arte

En este capítulo se dividen los trabajos relacionados a la PCNN en dos partes: 1) revisión de
diversos modelos de PCNN utilizados en procesamiento de imágenes y 2) revisión de los algoritmos
enfocados a resolver el problema de sintonización de parámetros de la PCNN para la segmentación
de imágenes.

2.1 Modelos de PCNN

La PCNN ha sido ampliamente utilizada en el procesamiento digital de imágenes debido a


que conserva propiedades originales de la imagen, tales como invariabilidad rotacional, escalar,
entre otras, de modo que es adecuada para tareas de segmentación [19]. Debido a su potencial,
diversos investigadores han desarrollado variantes con base en el modelo original de la PCNN, ya sea
simplificando su estructura o mejorando su desempeño.

11
12 2.1. Modelos de PCNN

2.1.1 Modelo PCNN original

El modelo PCNN original está basado en el modelo cortical propuesto por Eckhorn [4, 20], el
cual se fundamenta en un modelo neuronal con dos canales de entrada denominados alimentación
y enlace, cuyas respuestas son combinadas para regular el funcionamiento interno de la actividad
neuronal. Posteriormente, el potencial interno de la neurona es comparado contra un umbral de
disparo generando una salida binaria como 0 ó 1 correspondiente a un impulso inhibitorio o excitatorio,
respectivamente [5]. Entonces, una neurona consta de tres partes principales: campo de entradas,
campo de modulación y generador de impulsos, como se muestra en la Figura 2.1.

Figura 2.1: Modelo neuronal PCNN original. En rojo los parámetros del modelo.

Cada neurona recibe a través del campo de entradas señales de fuentes externas, llamados
estímulos Si,j , e internas, provenientes de neuronas vecinas. El campo de entradas puede ser visto
como un integrador de fugas y simula la parte dendrítica de la neurona biológica. El campo de
modulación realiza una combinación no lineal de las señales de alimentación y enlace para generar
2. Estado del arte 13

la actividad interna de la neurona Ui,j , que es una simulación del potencial eléctrico de la neurona
biológica. Finalmente, el generador de impulsos utiliza un umbral adaptativo, θi,j , para controlar el
evento de disparo en función del estado interno de la neurona. Este umbral opera como función de
paso [15].

El modelo PCNN original requiere la configuración de siete parámetros para su funcionamiento,


los cuales involucran factores de atenuación (αL ,αF , αT ), valores de potencial (VL , VF , VT ) y factor
de conexión (β). Además, si se considera el número de iteraciones n y el valor del radio de influencia
de las neuronas vecinas W , el número de parámetros asciende a nueve.

El modelo PCNN original ha sido utilizado por Tao et al. [19] para la segmentación de imágenes.
Los autores resaltan que a pesar de que el modelo PCNN requiere de la configuración adaptativa
de sus parámetros, es adecuado para el proceso de segmentación, ya que presenta aspectos como
invariancia rotacional, escalar, de intensidad, etc. El criterio de máxima entropía es utilizado para
medir la calidad de la segmentación generada por la PCNN, donde el número de neuronas es igual
al número de píxeles en la imagen. Cada neurona se conecta a sus neuronas vecinas por lo que los
impulsos generados se propagan a través de toda la red neuronal. Además, los autores mencionan que
este potencial de propagación hace que la PCNN se pueda utilizar en diversas tareas de procesamiento
de imágenes, como segmentación, extracción de bordes, extracción de ruido, etc. Los experimentos
se enfocaron en la comparación de las segmentaciones obtenidas con la PCNN y dos métodos
tradicionales de segmentación, algoritmo de mezcla de Gaussianas y método de Otsu, donde la
PCNN mostró resultados favorables en comparación con las otras técnicas.

Otro trabajo que utiliza el modelo PCNN original para la segmentación de imágenes fue propuesto
por Chen y Gu [21]. Este método toma como referencia el histograma de la imagen y utiliza un criterio
de segmentación llamado información mutua de producto contorneado (CPMI, countourned product
mutual information), con el cual disminuye el tiempo de cómputo en un 70 %. Los autores mencionan
que, a diferencia de otro tipo de redes neuronales, la PCNN no requiere datos de entrenamiento y es
14 2.1. Modelos de PCNN

dependiente de las características naturales de la imagen. Sin embargo, enfatizan la dificultad para
definir adecuadamente los parámetros de entrada, aspecto que limita su potencial.

2.1.2 Modelo ICM

El modelo cortical intersecado (ICM, intersection cortical model ), propuesto por Ekblad et al. [22],
es un modelo simplificado de la PCNN original en el cual la fuerza del canal de enlace es nula y
solamente existe la entrada de alimentación, el cual recibe el estímulo externo Si,j y las salidas de las
neuronas vecinas [5]. Al igual que la PCNN original, el modelo ICM está conformado por un campo
de entrada, campo de modulación y generador de impulsos como se muestra en la Figura 2.2. Como
consecuencia de la simplificación, sólo se consideran tres parámetros denotados como f, g y h, de
modo que el tiempo de cómputo se reduce sustancialmente.

Figura 2.2: Modelo neuronal ICM. En rojo, los parámetros del modelo.
2. Estado del arte 15

Los autores que propusieron el modelo ICM indican que su diseño está orientado a mejorar
características de objetos que presentan bordes difusos o realce de líneas rectas en imágenes. Los
experimentos se realizaron en dos sentidos: 1) detección de objetos en movimiento que se desplazan
sobre un fondo homogéneo y 2) rectificación o alineamiento de imágenes, obteniendo resultados
satisfactorios en ambos casos.

2.1.3 Modelo SPCNN

Los métodos simplificados (SPCNN, simplified PCNN) son una versión simplificada de la PCNN
original. Existen varios modelos simplificados en la literatura, aunque un esquema convencional que
representa a este modelo se ilustra en la Figura 2.3. En general, estos modelos se proponen con la
intensión de disminuir el número de parámetros y el tiempo de cómputo de la PCNN original.

Figura 2.3: Modelo neuronal SPCNN. En rojo, los parámetros del modelo.
16 2.1. Modelos de PCNN

Observando el modelo SPCNN en la Figura 2.3, se deduce que particularmente la simplificación


viene dada con base en la reducción de parámetros de entradas, eliminación de las constantes αL y
αF del modelo original y los enlaces de las neuronas vecinas en el canal de alimentación.

Una revisión de estos métodos simplificados es abordada por Chen y Xu [23]. En este trabajo se
menciona que la SPCNN disminuye la complejidad de ajustar los parámetros de entrada de manera
notable. Los autores utilizaron información mutua máxima (MMI, maximum mutual information)
como función de costo y un esquema de descomposición de la imagen llamado NSCT (non
subsampled contourlet transform), para hacer una segmentación multiescala. Los autores mencionan
que la SPCNN involucra únicamente dos parámetros α y β, donde α representa una constante
de decaimiento y β un coeficiente de enlace. Una desventaja de este modelo es que no segmenta
adecuadamente los detalles de la imagen, por lo que utilizan un detector de bordes para conservar
dichos detalles.

2.1.4 Modelo SCM

El modelo cortical de disparo (SCM, spiking cortical model ), propuesto por Zhan et al. [24] es una
modificación a la PCNN original, el cual tiene menos parámetros y puede disminuir la complejidad
computacional y lograr un mejor efecto en tareas como segmentación, fusión de imágenes, etc. De
manera similar que la PCNN original, el modelo SMC se compone de tres partes: campo de entradas,
campo de la modulación y generador de impulsos, cuyo esquema se muestra en la Figura 2.4. En
este modelo simplificado se considera una variable de umbral dinámico Ei,j , y los parámetros f, g y h
similares al modelo ICM. Cuenta con los dos canales de entrada: canal de alimentación, para recibir
estímulos externos, y canal de enlace, para recibir entradas provenientes de las neuronas vecinas.

Una revisión del modelo SCM es realizada por Chen et al. [25], donde combinan este enfoque
con la SPCNN, generando un método de sintonización automática, el cual toma de referencia el
histograma de la imagen de entrada junto con su desviación estándar, para tener una relación
directa entre las propiedades dinámicas de las neuronas y estáticas de la imagen. En este enfoque
2. Estado del arte 17

Figura 2.4: Modelo neuronal SCM. En rojo, los parámetros del modelo.

se utilizaron cinco parámetros de entrada. El umbral óptimo del histograma es determinado por el
método de Otsu, ya que este método minimiza la varianza entre clases y maximiza la varianza entre
clases, característica deseada para separar adecuadamente una imagen en dos regiones. El método
implementado por los autores es eficaz en la segmentación de imágenes con alto contraste.

2.1.5 Modelo PCNNs

En comparación con el modelo original, el modelo PCNN multi-canal (PCNNs), permite ajustar
el número de canales de entrada externos de acuerdo a las exigencias prácticas. En este enfoque se
amplía el número de estímulos de entrada externos a un valor m, los cuales se pueden introducir al
modelo al mismo tiempo. En este modelo intervienen Hi,j que representa al canal de entrada, Ui,j
que denota el valor promedio de la actividad interna de la neurona y m el número total de entradas
externas. Los parámetros son los mismos que se utilizan en la PCNN original [5, 26].
18 2.1. Modelos de PCNN

Figura 2.5: Modelo neuronal m-PCNN. En rojo, los parámetros del modelo.

Wang et al. [7] indican que una versión más antigua de la PCNNs es la PCNN multi-espectral
que consiste en un conjunto de entradas paralelas operando en canales separados con vinculaciones
inter e intra canal. Un ejemplo de este modelo es el m-PCNN ilustrado en la Figura 2.5. La PCNN
multi-canal a diferencia de la PCNN original, tiene la ventaja de tener más entradas de alimentación
externas, de modo que su mayor aplicación es en la fusión de imágenes.

2.1.6 Modelo PCNN híbrido

Este modelo fue utilizado por Li et al. [27], donde se presenta un enfoque híbrido de la PCNN
orientado a la segmentación de imágenes multi-objeto. Se combina la PCNN con los métodos de
detección de prominencias (GBVS, graph-based visual saliency ) y espectro residual (SR, spectrum
residual ) para encontrar las regiones en las que se encuentran los objetos. Los autores mencionan que
se hace la extracción correcta de los objetos utilizando este método, aunque en algunos casos debido a
2. Estado del arte 19

la similaridad de los valores entre los píxeles de los objetos, la segmentación no se hace correctamente.
Este modelo a diferencia de la PCNN original tiene seis sub-canales que son considerados como
estímulos externos que provienen del canal de alimentación. El canal de enlace contiene estímulos
provenientes de sus neuronas vecinas conectadas a través de pesos sinápticos.

2.2 Sintonización de parámetros de la PCNN

A pesar de que los modelos simplificados logran reducir el número de parámetros a sintonizar,
ninguno de los modelos de PCNN está exento de la sintonización de parámetros. Anteriormente, los
parámetros de la red PCNN eran ajustados manualmente bajo esquemas de prueba y error, condición
que demanda tiempo y esfuerzo computacional-operacional. Diversos investigadores han tratado de
solventar este tipo de problemas aplicando distintos enfoques. Particularmente, la mayoría de estas
técnicas se pueden agrupar en dos tipos, adaptativas y automáticas.

2.2.1 Técnicas adaptativas

Las técnicas adaptativas incluyen métodos de sintonización basados en retroalimentación de la


PCNN [28]. En relación a la segmentación de imágenes, a continuación se presentan algunos trabajos
relacionados a este tipo de técnicas.

2.2.1.1. Algoritmo TDA

El algoritmo TDA (threshold decay algorithm) propuesto por Wei et al. [15], consiste en un
método de sintonización de un modelo SPCNN en donde se propone una función de selección
estándar basada en series de tiempo. Los investigadores comentan que la sensación subjetiva de
luz percibida por el ser humano se relaciona con la intensidad de la luz real y que este fenómeno
implica que imágenes oscuras y claras deben de ser tratadas de manera diferente, con diferentes
parámetros de PCNN. En ese sentido, establecieron el parámetro de la constante de decaimiento αθ
20 2.2. Sintonización de parámetros de la PCNN

en el modelo como la relación entre una constante C y el promedio del nivel de gris de la imagen de
entrada. Mencionan que este método no trata de ajustar todos los parámetros del modelo, debido
a que son determinados manualmente, y solo el parámetro αθ es ajustado durante el proceso. En
la experimentación aplicaron el método a un modelo SPCNN para la segmentación de imágenes.
Este método muestra ser eficiente al segmentar objetos bien contorneados; sin embargo, muestra
deficiencias cuando la distribución de gris entre los objetos y el fondo es muy similar a distribuciones
Gaussianas.

2.2.1.2. Algoritmo GIT

Li et al. [29] proponen un método de segmentación llamado umbral de iteración en escala de grises
(GIT-PCNN). Los autores mencionan que el modelo PCNN no considera las estadísticas de los niveles
de gris en la imagen en el umbral Vθ para generar su salida Yi,j , aspecto que consideran importante
en la segmentación de imágenes, de tal manera que proponen determinar dicho umbral de manera
iterativa usando los niveles de gris de la imagen original. De este modo la imagen se segmenta a través
del proceso de disparo y no necesariamente por un criterio de término como el número de iteraciones.
El método sintoniza los parámetros de un modelo SPCNN y es comparado contra un método de
sintonización manual y uno basado en reglas y estrategias de pre-procesamiento. Al comparar los
resultados de las segmentaciones realizadas a las imágenes en escala de grises obtienen resultados
favorables en cuanto a tiempo de cómputo y de segmentación utilizando métricas de contraste y
consistencia de la región.

2.2.1.3. Algoritmo PCA

Pu et al. [30], presentan un enfoque de sintonización de PCNN basado en PCA (principal


component analysis) orientado a imágenes de resonancia magnética (RM). Mencionan que una
resonancia magnética funcional típica de un paciente incluye información multi-modelo en tres
dimensiones, y en cada capa se tienen tres diferentes tipos de imagen con diferente contraste,
2. Estado del arte 21

por lo que es necesario un algoritmo automatizado para la segmentación y el reconocimiento. En


ese sentido, detectaron que los modelos PCNN aplicables en el campo del procesamiento digital
de imágenes permiten realzar características centralizadas de la imagen basándose en la proximidad
del espacio existente entre los píxeles y la comparabilidad del brillo, permitiendo evaluar la similitud
entre dos muestras (proceso de segmentación), teniendo mayor precisión y rendimiento que los
algoritmos de agrupamiento clásicos. Considerando lo anterior, los autores utilizaron la técnica kernel
PCA para extraer las características no lineales de las RM, eliminar los valores atípicos y reducir
su dimensionalidad. Después aplicaron la PCNN para encontrar el agrupamiento y los centros de
los agrupamientos inherentes sin tener que fijar el número de agrupaciones, ya que indican que al
adaptarse el parámetro β de la red se puede lograr la agrupación. Realizaron una comparación de
brillo en cada agrupación con el fin de restringir la influencia del ruido y emplearon la técnica kernel
PCA para completar el preprocesamiento de la imagen. Compararon el método contra el algoritmo de
agrupamiento fuzzy C-means (FCM) y un software llamado SPM basado en la prueba t de Student.
El método obtuvo resultados similares a los del software SPM aunque en menor tiempo de cómputo,
logró mitigar el efecto del ruido en la imagen y también mejoró el desempeño de los resultados
obtenidos con el algoritmo FCM.

2.2.1.4. Algoritmo WTS

Otro de los métodos adaptativos es propuesto por Xue y Yang [31]. Presentan un método de
segmentación basado en la fusión de la transformada morfológica watershed (WTS) y la PCNN,
donde ésta última es utilizada para localizar los objetos en la imagen y la WTS para controlar
el problema de la sobre-segmentación en la imagen. Los autores mencionan que la WTS presenta
inconvenientes para identificar o localizar los objetos en las imágenes, aspecto que la PCNN de
acuerdo a sus propiedades pulsantes basadas en la proximidad espacial y la similaridad del brillo entre
los píxeles puede resolver. Sin embargo, la red PCNN necesita de una sintonización adecuada para
generar resultados aceptables, en este aspecto las limitaciones de la WTS y la dirección prometedora
22 2.2. Sintonización de parámetros de la PCNN

de la PCNN, permite realizar la fusión entre estas dos técnicas y realizar la segmentación de la
imagen de entrada de manera efectiva. Para solventar el problema de la sintonización de parámetros,
proponen utilizar una PCNN modificada, en la cual la entrada de alimentación es retroalimentada
con las salidas de la red. En este trabajo no se presentan la comparación contra otros enfoques
solamente se muestra la eficiencia de la técnica.

2.2.1.5. Otros enfoques

Otra técnica de segmentación fue desarrollada por Zhou et al. [28], en donde proponen un
método de sintonización de PCNN basado en agrupamiento difuso que adapta el umbral neuronal
de la red, relacionado a las propiedades de la imagen, permitiendo alterar el comportamiento de las
neuronas, particularmente el pulso sincrónico. Los experimentos se realizaron sobre un conjunto de
imágenes infrarrojas sintéticas y reales. El método propuesto está basado en una SPCNN la cual es
sintonizada basándose en las características asociadas a las propiedades de salida de impulsos y de
la imagen de entrada mediante un algoritmo de agrupamiento difuso para particionar las neuronas
activas en el que intervienen los parámetros αE y β. Para esto, se define una relación entre el
coeficiente de enlace y el umbral de disparo, de tal manera que sólo influya en el rendimiento de
la segmentación el estímulo externo de la neurona y la información de pulsación de las neuronas
vecinas, evitando incluir los factores de decaimiento en el modelo debido a que al ser acumulativos
en el tiempo pueden provocar un comportamiento inesperado en la neurona. Se compararon contra
tres algoritmos clásicos de segmentación Otsu, Bazi y FCM, tres modelos basados en PCNN y un
modelo PCNN sintonizado con un algoritmo genético. Los resultados experimentales demostraron la
ventaja del método propuesto frente a los métodos con los que se compara en términos de desempeño
de segmentación.

Otra técnica similar a la anterior fue desarrollada por Hassanien y Ali [32], quienes presentan
un método de segmentación basado en un algoritmo llamado hiperbolización difusa del histograma
(FHH), el cual es utilizado como un filtro de preprocesamiento aplicado antes de la segmentación.
2. Estado del arte 23

Después, se utiliza la PCNN para realizar la segmentación de la imagen preprocesada. Para las pruebas
utilizaron imágenes de mamografía con bajo contraste. Los resultados experimentales mostraron
que el algoritmo propuesto se desempeña adecuadamente en comparación con técnicas basada en
umbrales difusos y con método FCM.

2.2.2 Técnicas automáticas

En las técnicas automáticas interviene una función de costo que evalúa la salida de impulsos
de la red para determinar la calidad de la segmentación [28], tal como lo hacen las técnicas de
optimización de inteligencia computacional. En la actualidad muchos investigadores han realizado
trabajos sobre la configuración automática del modelo de la PCNN con el objetivo de resolver el
problema de la sintonización de parámetros que demanda este modelo. A continuación se revisan
diversas técnicas de sintonización que han sido empleadas en la literatura, las cuales se basan en
técnicas de inteligencia computacional.

2.2.2.1. Algoritmo genético

El algoritmo genético (GA, genetic algorithm) está inspirado en el proceso evolutivo biológico.
Fue desarrollado principalmente para simular sistemas genéticos basados en las estructuras genético-
moleculares y operan a nivel genotípico. Los GAs surgen del trabajo de Holland quien popularizó el
modelo y a quien generalmente se le considera como el padre de los GAs [8].

Este modelo codifica la información de los individuos como cadenas de genes llamadas
cromosomas. Los principales operadores que intervienen en este algoritmo son la selección (para
modelar la supervivencia del más fuerte) y la recombinación mediante la aplicación de un operador
de cruza (como el modelo de reproducción) [8], permitiendo evaluar de forma continua más de una
área de búsqueda en el espacio de soluciones.

El GA se puede aplicar en la sintonización de los parámetros de la PCNN. El conjunto de


cromosomas en la población contienen los parámetros asociados a una PCNN. El modelo PCNN
24 2.2. Sintonización de parámetros de la PCNN

se evalúa tomando una imagen de entrada para generar la segmentación de la imagen. Dicha
segmentación es asociada a un cromosoma en la población y es evaluada por una función de aptitud
que mide la calidad de segmentación, mediante la cual se determinarán los mejores individuos que
sobrevivirán en la población. Para este tipo de problemas de segmentación, la función de aptitud
equivale a la función de costo que se desea optimizar.

El GA fue utilizado por Yin et al. [33] para sintonizar una SPCNN con umbral adaptativo, la cual
tiene cuatro parámetros de entrada (VL , Vθ , β, W ). Realizan la segmentación en imágenes en escala
de grises utilizando como función de costo la entropía de la imagen. Los autores comentan que al
comparar esta propuesta con el algoritmo de Otsu, se tiene una respuesta ligeramente superior en
comparación con éste. Se utiliza una función de costo para evaluar las segmentaciones resultantes en
términos de uniformidad, contraste, forma y manchas en la imagen. Se asocia el tiempo de cómputo
al número de objetos a segmentar y mencionan que la segmentación está limitada por el traslape
entre los objetos y el fondo en imágenes segmentadas.

2.2.2.2. Sistema inmune artificial

Un sistema inmune artificial (AIS, artificial immune system) modela la capacidad del sistema
inmunológico natural para detectar y combatir células extrañas en el cuerpo (antígeno) mediante
ciertas sustancias segregadas en la sangre u otros fluidos corporales llamadas anticuerpos [8]. El
modelo básico de AIS se inicia con la producción del anticuerpo inicial, posteriormente se realiza
el cálculo de la afinidad entre el anticuerpo y antígeno, seguido de los cálculos de concentración y
del funcionamiento inmune (tales como la selección, la variación, etc.), para finalmente concluir el
proceso con una condición de paro [34].

El algoritmo AIS es utilizado por Li et al. [35] para sintonizar un modelo SPCNN con cinco
parámetros. Ellos comparan sus resultados con un algoritmo inmune básico para sintonizar el modelo
de red obteniendo un buen rendimiento en cuanto al tiempo de ejecución y la segmentación con las
salidas de la PCNN original, PCNN sintonizada con PSO (particle swarm optimization), algoritmo de
2. Estado del arte 25

Watershed, entre otros. Utilizaron imágenes en escala de grises con bajo contraste correspondientes
a varios campos como la medicina, vida marina, minería, vida real. Se compararon subjetivamente
de manera visual y de manera objetiva utilizando diversas métricas de región como uniformidad,
forma, contraste y entropía de la imagen, obteniendo resultados favorables para la mayoría de las
segmentaciones realizadas.

2.2.2.3. Algoritmo de optimización espiral

El algoritmo de optimización espiral (SOA, spiral optimization algorithm) es una técnica


desarrollada en 2011 por Tamura y Yasuda [36]. SOA es una metaheurística basada en la analogía
del fenómeno de la espiral en la naturaleza. Este fenómeno de la espiral se aproxima a una espiral
logarítmica que a menudo aparece en la naturaleza y el universo. El modelo discreto de la espiral
logarítmica satisface el requisito de que el centro de la espiral puede estar ubicado en un punto
arbitrario.

El algoritmo SOA es utilizado por Man et al. [37] para sintonizar un modelo SPCNN con
cuatro parámetros (αθ , Vθ , β, W ). Realizaron la segmentación de imágenes en escala de grises,
considerando imágenes médicas e imágenes con distinta resolución. Utilizaron la entropía de la imagen
como función de costo en el algoritmo. Los autores compararon su propuesta contra la PCNN con
parámetros sintonizados manualmente, el método de Otsu y el método del histograma y obtuvieron
segmentaciones adecuadas perceptibles en la mayoría de las imágenes.

2.2.2.4. Algoritmo de optimización del forrajeo de bacterias

El algoritmo de de optimización del forrajeo de bacterias (BFO, bacterial foraging optimization)


fue propuesto por Passino en 2002 y simula el comportamiento de la bacteria E. coli en el ser
humano, la cual es una bacteria necesaria para el correcto funcionamiento del proceso digestivo.
Entre los comportamientos que se simulan de esta bacteria se encuentran: la capacidad de búsqueda
global, inteligencia de enjambre paralela, entre otros [11].
26 2.2. Sintonización de parámetros de la PCNN

El algoritmo BFO es utilizado por Liao et al. [11] para sintonizar un modelo SPCNN con cinco
parámetros (αθ , VL , Vθ , β, W ). Los autores proponen añadir un umbral adaptativo a la SPCNN con
el fin de realizar una segmentación efectiva. Consideraron elegir dos umbrales, los cuales dividen el
rango de la escala de grises de 0 a 255 en tres regiones de intensidad: blanco, gris y negro. Se utiliza
el método de máxima varianza (definido en el método de Otsu) para satisfacer dichas condiciones,
en donde cada bacteria puede ser considerada como un umbral y la concentración de alimento es
correspondiente al valor de su función de costo, el cual es la entropía de la imagen. Realizaron
pruebas utilizando imágenes en escala de grises con bajo contraste, comparando los resultados de
segmentación contra un algoritmo de segmentación de contraste, obteniendo resultados favorables
en dicha comparación.

2.2.2.5. Algoritmo de optimización por mosca de la fruta

El algoritmo de optimización por mosca de la fruta (FOA, fly fruit optimization algorithm) fue
propuesto por Pan en 2011, imita el comportamiento de forrajeo de la mosca de la fruta para
encontrar una solución óptima en la que pueda conseguir alimento. El forrajeo de la mosca consiste
en determinar la ubicación aproximada de la comida a través del sentido del olor en primer lugar y,
a continuación, llegar cerca de la comida a través del sentido de la vista [10].

El modelo FOA es utilizado por Zhao y Ding [10] para sintonizar siete de los nueve parámetros
de entrada que posee la PCNN (αL , αF , αθ , VL , VF , Vθ , β). Se utiliza la entropía de la imagen como
función de costo y la información mutua como criterio de evaluación. Realizaron pruebas con imágenes
de 8 bits en escala de grises con tamaño de 256 x 256 píxeles, comparándose contra una PCNN
sintonizada manualmente, una PCNN ajustada por medio del método de Otsu, GA y PSO. Los
resultados objetivos muestran una ligera ventaja del algoritmo propuesto frente a los algoritmos
contra los que se compara.
2. Estado del arte 27

2.2.2.6. Algoritmo de optimización por cúmulo de partículas

El algoritmo de optimización por cúmulo de partículas (PSO, particle swarm optimization) es


introducido por Kennedy y Eberhart en 1995 [9] y es un modelo que hace referencia a una serie de
métodos que simulan el comportamiento colectivo en la naturaleza, donde dicho comportamiento
propicia el intercambio colectivo proporcionando el beneficio de la supervivencia en grupo. Un cúmulo
puede ser definido como un grupo de agentes móviles que se comunican entre sí actuando en su
entorno local, donde las interacciones entre los agentes generan estrategias que resuelven problemas
de tipo colectivos-distributivos [8].

Para realizar la sintonización de la PCNN primeramente se inicializan los individuos como una
matriz poblacional de partículas con posiciones y velocidades aleatorias. Cada una de las partículas es
evaluada como una solución potencial de la PCNN y con base en los resultados se obtiene a la mejor
partícula o líder del enjambre. Posteriormente, la posición y velocidad de cada partícula se actualizan,
dando lugar a una nueva evaluación de la población actualizada, el proceso de actualización y
evaluación se repite hasta alcanzar una condición de paro. A la salida del algoritmo se obtiene
la solución óptima alcanzada por el algoritmo correspondiente a la partícula líder.

El algoritmo PSO es utilizado por Xinzheng et al. [9] para sintonizar los parámetros de la PCNN
original, considerando siete de los nueve parámetros de entrada que posee (αL , αF , αθ , VL , VF , Vθ , β).
Se utiliza como función de costo la entropía de la imagen y la información mutua como criterio de
evaluación. Realizaron pruebas utilizando imágenes en escala de grises con y sin ruido, empleando
ruido Gaussiano y sal/pimienta. Los autores compararon su propuesta contra el método de Otsu y
una PCNN ajustada manualmente, obteniendo una respuesta eficiente, aunque con un alto costo
computacional.
28 2.3. Resumen

2.2.2.7. Algoritmo de evolución diferencial

El algoritmo de evolución diferencial (DE, differential evolution) es un algoritmo poblacional de


búsqueda estocástica desarrollado por Storn y Price en 1995. DE comparte similitudes con otros
algoritmos evolutivos; sin embargo, difieren en el sentido de que este algoritmo no requiere de
información de distancia y dirección para guiar el proceso de búsqueda [8], sino que utiliza información
diferencial a partir de los miembros de la población actual. DE tiene tres operadores principales:
mutación, cruza y selección.

El algoritmo de DE es utilizado por Gómez et al. [6] para sintonizar los parámetros de la
PCNN. Realizaron la segmentación de tumores en imágenes de ultrasonido con bajo contraste,
las cuales incluyen el artefacto speckle. Utilizaron tres modelos de PCNN: la PCNN original
(αL , αF , αθ , VL , VF , Vθ , β, W , n), ICM (f, g, h, W , n) y SPCNN (αθ , Vθ , β, W , n). La función de
costo está basada en el gradiente de la imagen. Las segmentaciones resultantes se compararon contra
las segmentaciones realizadas por un radiólogo, demostrando que el modelo SPCNN tenía mejores
resultados de segmentación, aunque hubo algunas imágenes que no se segmentaron adecuadamente,
debido a que el algoritmo de DE pudo haberse estancado en mínimos locales.

En la implementación de Jiang [13] se propone un algoritmo híbrido basado en DE y PSO


denominado MDE (modified differential evolution) para la optimización de una SPCNN con tres
parámetros (αθ , Vθ , β). Se utiliza la entropía de la imagen como función de costo y se segmentaron
imágenes en escala de grises comparando los resultados contra la PCNN con parámetros ajustados
manualmente y una PCNN sintonizada con PSO. El enfoque propuesto obtiene resultados favorables
en cuanto a un menor tiempo de cómputo en relación a los algoritmos contra los que se compara.

2.3 Resumen

Muchos autores señalan que una de las principales desventajas de la PCNN original es su alto costo
computacional comparado con los modelos simplificados, ya que la interconexión de las neuronas
2. Estado del arte 29

está en función de la cantidad de parámetros de entrada [4]. Aunque se menciona que los modelos
simplificados reducen el tiempo de cómputo, presentan el inconveniente de que al segmentar algún
tipo especial de imagen requieran de ciertos parámetros que en el modelo original persisten [5]. Otro
de los inconvenientes es que a pesar de ser una simplificación de la PCNN original, no están exentos
del problema de la sintonización de parámetros, del número de iteraciones y del efecto del ruido en
la imagen [38]. La Tabla 2.1 muestra una comparativa de los modelos de PCNN revisados de la
literatura.

Tabla 2.1: Comparativa de las variantes PCNN.


Enfoque Entradas1 Parámetros2 Referencia
PCNN 2 9 [19]
ICM 2 5 [22]
SCM 2 5 [24]
m-PCNN m>1 9+m [7]
SPCNN1 2 5 [15]
SPCNN2 2 4 [23]
Híbrido 2 5 [27]

Para solventar el problema de sintonización de la PCNN y poder aprovechar su propiedades en


tareas de segmentación de imágenes, varios investigadores se han dado a la tarea de proponer métodos
o técnicas de sintonización, las cuales son de tipo adaptativo o automático. Las técnicas adaptativas,
en su mayoría, están basados en retroalimentación de la red, adaptación por umbrales y técnicas de
agrupamiento [15, 28, 29, 30, 31, 32]. Sin embargo, algunas de las deficiencias en las que pueden
incurrir dichos métodos de ajuste adaptativo es la necesidad de ajustar o adaptar los parámetros para
cierto tipo de imágenes, además de que sólo adaptan un subconjunto de parámetros, mientras que
el resto de ellos se hace manualmente. Además, estos enfoques generalmente sintonizan modelos
simplificados. Los algoritmos automáticos por el contrario, ofrecen alternativas de sintonización
completa, permitiendo sintonizar todos los parámetros de la red, sean de un modelo original o
de cualquier otro modelo simplificado de PCNN, debido a que realizan la exploración de parámetros
dentro de un rango de búsqueda más amplio. Otra de las características de los métodos automáticos,
1
El número de entradas está dado en base a los canales de alimentación de las neurona.
2
El número de parámetros corresponde a las variables a sintonizar, incluyendo el radio de enlace y el número de iteraciones.
30 2.3. Resumen

es que están basados en algoritmos de optimización inspirados en la naturaleza, permitiendo


adaptación al entorno en el que se encuentra, es decir, a la imagen de entrada.

La Tabla 2.2 muestra una comparativa de los algoritmos de sintonización automática basados
en técnicas de inteligencia computacional. Por otra parte, en la Tabla 2.3 se listan las ventajas y
desventajas de estos algoritmos.

Tabla 2.2: Comparativa de algoritmos de sintonización automática de la PCNN.


Año Autor Algoritmo de Sintonización Enfoque PCNN Función de costo Objetivo de segmentación
2015 Gómez et al. [6] DE PCNN,ICM y SPCNN gradiente radial imágenes médicas con speckle
2014 Man et al. [37] SOA SPCNN máxima entropía imágenes con distinta resolución y en escala de grises
2014 Liao et al. [11] BFO PCNN máxima entropía imágenes en escala de grises
2014 Zhao y Ding [10] FOA PCNN máxima entropía imágenes de 8 bits de profundidad y 256x256 píxeles
2013 Li et al. [35] AIS SPCNN máxima entropía imágenes en escala de grises y con bajo contraste
2012 Jiang [13] MDE SPCNN máxima entropía imágenes en escala de grises
2011 Xinzheng et al. [9] PSO PCNN máxima entropía imágenes con y sin ruido, empleando ruido Gaussiano y sal/pimienta
2010 Yin et al. [33] GA SPCNN máxima entropía imágenes en escala de grises

Tabla 2.3: Ventajas y desventajas de algoritmos de sintonización automática de la PCNN.


Autor Ventajas Desventajas
Gómez et al. se obtiene un 93 % de resultados favorables cae en mínimos locales
Man et al. obtiene resultados favorables en imágenes bien contrastadas existe traslape entre objeto y fondo en niveles de gris similares
Liao et al. puede lidiar con situaciones de bajo contraste problemas al segmentar objetos con una distribución de gris similar
Zhao y Ding resuelve el problema de sintonización cae muy rápido en soluciones locales
Li et al. rápida convergencia existe poco traslape entre objeto y fondo en niveles de gris similares
Jiang realiza la segmentación rápidamente no evalúan imágenes con bajos contrastes
Xinzheng et al. eficiente y robusto en la segmentación consume mucho tiempo de cómputo
Yin et al. segmentación multi-objeto en imágenes en escala de grises existe traslape entre objeto y fondo en niveles de gris similares

Como se puede observar, la mayoría de los métodos de sintonización automática de la PCNN


aplicados a la segmentación de imágenes, utilizan el criterio de la entropía de la imagen como
función de costo. Este criterio proporciona información compartida entre dos distribuciones, aunque
no considera ninguna medida de dispersión inter-/intra-grupo de los píxeles relacionados a los objetos
de interés y su fondo, tal como lo hace un índice de validez de grupos (CVI, cluster validity index), el
2. Estado del arte 31

cual cuantifica qué tan similares son los niveles de intensidad de los objetos y qué tan disimilares son
en relación a las intensidades del fondo. Un CVI es un índice de validez interno utilizado en algoritmos
de agrupamiento (clustering ) para evaluar la calidad del agrupamiento candidato. En esta tesis se
propone utilizar un CVI como función de costo dentro de un proceso de sintonización automático de
la PCNN basado en el algoritmo de DE.
3
Marco teórico

En este capítulo se describen los métodos y las técnicas utilizadas en este trabajo de tesis,
particularmente aquellas en las que se basa el método de segmentación propuesto. En ese sentido,
el capítulo se divide en cuatro secciones: 1) variantes del modelo PCNN, 2) índices de validez de
grupos, 3) algoritmos de evolución diferencial y 4) métricas de desempeño de segmentación.

3.1 Variantes del modelo PCNN

Se consideran las siguientes cuatro variantes del modelo PCNN: el modelo PCNN original con
nueve parámetros (αL , αF , αθ , VL , VF , Vθ , β, W y n) [7], dos versiones simplificadas definidas como
SPCNN1 [15] y SPCNN2 [39], con cinco (αθ , Vθ , β, W y n) y cuatro parámetros (αθ , β, W y n),
respectivamente, y el modelo ICM con cinco parámetros (f, g, h, W y n) [22], los cuales se describen
a continuación.

33
34 3.1. Variantes del modelo PCNN

3.1.1 PCNN original

El modelo neuronal de la PCNN original que se muestra en la Figura 3.1.1 consta de tres partes
principales: campo de entradas, campo de modulación y generador de impulsos.

Figura 3.1: Modelo neuronal PCNN original. En rojo, los parámetros de entrada que se requieren
sintonizar del modelo. Factores de atenuación (αL , αF , αθ ), valores de potencial (VL , VF , Vθ ), factor
de conexión (β), radio de enlace (W ) y número de iteraciones (n).

El campo de entradas puede ser visto como un integrador de fugas que simula la parte dendrítica
de la neurona biológica, en la que cada neurona (Ni,j ) es capaz de recibir señales tanto de fuentes
externas en forma de estímulos Si,j provenientes de los píxeles en la imagen de entrada (formando
una relación 1:1 entre los píxeles de la imagen y el número de neuronas) así como de fuentes internas
provenientes del enlace entre neuronas vecinas dentro de un radio específico, a través de pesos
sinápticos W , proceso conocido como sinapsis (Figura 3.2). Estas señales llegan a la neurona a
través de los canales de alimentación Fi,j (Ecuación 3.1) y enlace Li,j (Ecuación 3.2).
3. Marco teórico 35

0.5   1.0   0.5  

1.0   0   1.0  
0.25   0.33   0.50   0.33   0.25  
0.5   1.0   0.5  
0.33   0.50   1.00   0.50   0.33  
r  =  1  
0.50   1.00   0   1.00   0.50  

0.33   0.50   1.00   0.50   0.33  

0.25   0.33   0.50   0.33   0.25  

r  =  2  

Figura 3.2: Ejemplo de dos matrices de pesos sinápticos de tamaño 3x3 y 5x5 píxeles, con radio de
enlace r = 1 y r = 2, respectivamente. El valor de cada casilla refleja la fuerza de conexión entre
las neuronas vecinas con la neurona central.

El campo de modulación recibe señales de ambos canales de entrada, los cuales son combinados de
manera no lineal, generando la actividad interna de la neurona Ui,j (Ecuación 3.3), la cual es regulada
por el factor de conexión β, simulando el potencial eléctrico generado en la neurona biológica.

X
Fi,j [n] = e−αF Fi,j [n − 1] + VF Wi,j,k,l Yi,j [n − 1] + Si,j (3.1)
(k,l)∈N (i,j)

X
Li,j [n] = e−αL Li,j [n − 1] + VL Wi,j,k,l Yi,j [n − 1] (3.2)
(k,l)∈N (i,j)

Ui,j [n] = Fi,j [n](1 + βLi,j [n]) (3.3)

En el campo generador de impulsos se utiliza el umbral adaptativo θi,j (Ecuación 3.4), que opera
como una función escalón, la cual es encargada de controlar el evento de disparo Yi,j (Ecuación 3.5),
proceso que simula la acción de polarización y repolarización generada en las neuronas, considerando
36 3.1. Variantes del modelo PCNN

un periodo refractario dependiente de un intervalo de tiempo (en este caso por el número iteraciones
n) en el que se generan los disparos. Si la neurona no dispara, su correspondiente umbral decae,
exponencialmente acción que le permite con el tiempo volver a generar un nuevo impulso.

θi,j [n] = e−αθ θi,j [n − 1] + Vθ Yi,j [n] (3.4)


 1 si Ui,j [n] > θi,j [n]

Yi,j [n] = (3.5)
 0 en otro caso

En ese sentido, el número de iteraciones n indica la cantidad de veces que la PCNN debe iterar
para obtener una segmentación. Por tanto, en cada iteración se generan salidas de manera sincrónica
de cada una de las neuronas que conforman la red, dándole la característica de pulso acoplado.

3.1.2 SPCNN1

Aunque el modelo PCNN original puede simular efectivamente el fenómeno de disparo


sincronizado, tiene la desventaja de poseer nueve parámetros de entrada que requieren ser ajustados,
por lo que algunos modelos simplificados son a menudo utilizados para resolver problemas prácticos,
debido al número reducido de parámetros [15].

Uno de los modelos simplificados considerado es el modelo SPCNN1 mostrado en la Figura 3.3.
Este modelo conserva las características esenciales del modelo original, aspecto que le permite tener
un desempeño adecuado y ser aplicable en la segmentación de imágenes.

En el modelo SPCNN1, el campo de entradas de cada neurona (Ni,j ) recibe dos canales, el canal
de alimentación Fi,j (Ecuación 3.6), recibe el estímulo externo Si,j proveniente de los píxeles de la
imagen de entrada, y el canal de enlace Li,j (Ecuación 3.7), recibe las salidas de neuronas vecinas
por medio de los pesos sinápticos W .
3. Marco teórico 37

Figura 3.3: Modelo neuronal SPCNN1. En rojo, los parámetros de entrada que se requieren sintonizar
del modelo. Factor de atenuación (αθ ), valor de potencial (Vθ ), factor de conexión (β), radio de enlace
(W ) y número de iteraciones (n).

Fi,j [n] = Si,j (3.6)


X
Li,j [n] = Wi,j,k,l Yi,j [n − 1] (3.7)
(k,l)∈N (i,j)

Por otra parte, el campo de modulación genera el potencial eléctrico de la neurona Ui,j
(Ecuación 3.8), el cual es regulado por el factor de conexión β.

Ui,j [n] = Fi,j [n](1 + βLi,j [n]) (3.8)

Posteriormente, el potencial eléctrico entra al módulo generador de impulsos, donde es comparado


contra el umbral θi,j por medio de una función de paso, generando un impulso, el cual puede ser
excitatorio “1” o inhibitorio “0”.
38 3.1. Variantes del modelo PCNN


 1 si Ui,j [n] > θi,j [n]

Yi,j [n] = (3.9)
 0 en otro caso

El umbral de la red θi,j (Ecuación 3.10) es actualizado y retroalimentado por medio del impulso
generado en función de un valor de potencial Vθ y decae exponencialmente en función del tiempo
por el factor de atenuación αθ .

θi,j [n] = e−αθ θi,j [n − 1] + Vθ Yi,j [n] (3.10)

Este modelo particularmente difiere del modelo original en el campo de entrada, dado a que el
canal de alimentación entra directamente sin necesidad de decaer exponencialmente en cada iteración,
disminuyendo así el número de parámetros de nueve a cinco.

3.1.3 SPCNN2

Otro de los modelos simplificados considerado es el modelo SPCNN2 mostrado en la Figura 3.4.
A diferencia del modelo PCNN original, solo requiere de cuatro parámetros a sintonizar. La mayor
parte de la simplificación se realiza en el módulo de entrada y en el módulo generador de impulsos.

El campo de entradas en el modelo SPCNN2, a diferencia del la PCNN original, no utiliza


factores de decaimiento, ni valores de potencial eléctrico, por lo cual las entradas de alimentación
Fij y Li,j de la neurona Ni,j pasan directamente al campo de modulación. En este campo, el canal
de alimentación Fi,j (Ecuación 3.11) recibe el estímulo externo Si,j , mientras que el canal de enlace
Li,j (Ecuación 3.12) recibe la información proporcionada por las neuronas vecinas en un radio de
enlace W .

Fi,j [n] = Si,j (3.11)


3. Marco teórico 39

Figura 3.4: Modelo neuronal SPCNN2. En rojo, los parámetros de entrada que se requieren sintonizar
del modelo. Factor de atenuación (αθ ), factor de conexión (β), radio de enlace (W ) y número de
iteraciones (n).

X
Li,j [n] = Wi,j,k,l Yi,j [n − 1] (3.12)
(k,l)∈N (i,j)

El campo de modulación es idéntico que en la PCNN original, el potencial interno de la neurona


Ui,j (Ecuación 3.13), recibe las fuentes de alimentación, regulado por el factor de conexión β.

Ui,j [n] = Fi,j [n](1 + βLi,j [n]) (3.13)

La salida del potencial de la neurona Ui,j es comparado contra un umbral θi,j para generar el pulso
de salida Yi,j (Ecuación 3.14) por medio de una función de paso, generando un pulso excitatorio “1”
o inhibitorio “0” como salida de la red.


 1 si Ui,j [n] > θi,j [n]

Yi,j [n] = (3.14)
 0 en otro caso

40 3.1. Variantes del modelo PCNN

En este modelo el generador de impulsos se simplifica, ya que el umbral θi,j (Ecuación 3.15) no
requiere el valor de potencial Vθ , y solo decae exponencialmente por el factor de atenuación αθ .

θi,j [n] = e−αθ θi,j [n − 1] (3.15)

3.1.4 ICM

El cuarto modelo PCNN considerado es el modelo cortical intersecado (ICM) mostrado en la


Figura 3.5, el cual es un modelo simplificado que reduce los parámetros de entrada de la PCNN
original de nueve a cinco. Fue derivado de varios modelos de la corteza visual y es básicamente la
intersección de los elementos comunes entre estos modelos [22].

Figura 3.5: Modelo neuronal ICM. En rojo, los parámetros de entrada que se requieren sintonizar
del modelo. Constantes de atenuación (f , g), valor escalar (h), radio de enlace (W ) y número de
iteraciones (n).

En el modelo ICM el estado interno de la neurona es representado como Fi,j (Ecuación 3.16) en
el campo de modulación, el cual recibe el estímulo de entrada Si,j y las salidas de neuronas vecinas
3. Marco teórico 41

en un radio de enlace W , ambos provenientes del campo de entrada. Asimismo, el valor f escala el
estado de la neurona de una iteración anterior.

Fi,j [n] = f Fi,j [n − 1] + Wi,j,k,l Yi,j [n − 1] + Si,j (3.16)

En el campo de generador de impulsos, Yi,j (Ecuación 3.17) es el estado de disparo de la neurona,


generado por la comparación del umbral de disparo θi,j con el potencial interno de la neurona Fi,j .
Al igual que los demás modelos genera un impulso excitatorio “1” o inhibitorio “0”, como salida de
la red.


 1 si Fi,j [n] > θi,j [n]

Yi,j [n] = (3.17)
 0 en otro caso

El umbral oscilatorio θi,j (Ecuación 3.18) es regulado por constantes de atenuación o decaimiento
menor a la unidad, tal que f >g.

θi,j [n] = gθi,j [n − 1] + hYi,j [n] (3.18)

3.2 Algoritmos de evolución diferencial

El algoritmo utilizado para sintonizar la PCNN es el algoritmo de evolución diferencial (DE,


differential evolution), debido a que es una técnica de búsqueda eficiente para resolver problemas
de optimización global en el dominio continuo. Se ha observado que el desempeño de búsqueda
del algoritmo DE está influenciado por sus parámetros de control como el factor de escala, F, en
el operador de mutación, y la probabilidad de intercambio, CR, en el operador de cruza. En este
sentido, se propone experimentar no solo con el DE clásico que utiliza parámetros de control fijos,
sino también con métodos dinámicos que modifican los parámetros de control en cada generación de
manera estocástica o controlada y autoadaptables que utilizan retroalimentación del proceso evolutivo
42 3.2. Algoritmos de evolución diferencial

para modificar sus parámetros durante cada generación para cada individuo [15], con lo cual se trata
de evitar convergencias prematuras a un mínimo local y favorecer la exploración del espacio de
búsqueda. A pesar de que existen varios algoritmos de DE adaptables y autoadaptables [16, 17], no
se han aplicado al problema de la sintonización de parámetros de la PCNN para la segmentación de
imágenes.

3.2.1 Evolución diferencial clásico

El algoritmo DE esta inspirado en la evolución natural de una población de individuos, los cuales
compiten en un instinto de supervivencia, esto es, la supervivencia del más apto. DE mantiene una
población de soluciones potenciales que mutan y se recombinan para producir nuevos individuos, los
cuales serán evaluados y seleccionados de acuerdo a su medida de aptitud definida por una función
de costo. El proceso involucra los siguiente pasos básicos:

1. Inicialización: la población conformada por N individuos es denotada por el conjunto


X = {x1 , ..., xN }. Para el i-ésimo individuo, es definido un vector d−dimensional como
xi = {xi,1 , ..., xi,d }, donde cada variable es inicializada aleatoriamente en el rango [Li , Ls ]
que representa los límites inferiores y superiores, respectivamente, del espacio de búsqueda.

2. Mutación: para el i-ésimo vector objetivo xi,g en la generación g, es creado un vector mutante
vi,g , el cual involucra tres miembros de la población, el mejor individuo xbest,g y dos individuos
elegidos aleatoriamente de la población actual xr1,g y xr2,g , donde r1 6= r2 6= i. Entonces, el
vector mutante se genera mediante la estrategia de mutación conocida como current-to-best
y que se expresa como [16]:

vi,g = xi,g + F · (xbest,g − xi,g ) + F · (xr1,g − xr2,g ) (3.19)

donde F es el factor de escala que controla la amplificación de la diferencia de vectores.


3. Marco teórico 43

3. Cruza: un vector de prueba ui,g , es creado por el intercambio de elementos del vector objetivo
xi,g y el vector mutante vi,g , el cual es obtenido por la cruza binomial como:


 vi,j si rand(0, 1) < CR or (j = jrand )

ui,j = (3.20)
 xi,j en otro caso

donde j = 1, ..., d y CR es el factor de cruza que controla la cantidad de información que se


copia del vector mutante al vector de prueba.

4. Penalización: para evitar que la solución caiga fuera de los límites del espacio de búsqueda
[Li , Ls ], la estrategia bounce-back [40] se utiliza para restablecer el valor de las variables del
vector de prueba que estén fuera de los límites, seleccionando un nuevo valor aleatorio que se
encuentra entre el valor de la variable del vector objetivo y la cota excedida.

5. Selección: si la aptitud del vector de prueba ui,g es mejor que la aptitud del vector objetivo
xi,g , entonces ui,g remplaza a xi,g en la siguiente generación, la cual se expresa como:


 ui,g si f (ui,g ) <f (xi,g )

xi,g+1 = (3.21)
 xi,g en otro caso

donde f (·) es una función de costo, la cual es minimizada sin pérdida de generalidad.

El algoritmo DE clásico se detalla en el Algoritmo 3.1.

3.2.2 Evolución diferencial adaptativo

El algoritmo DE con parámetros dinámicos (DDE) es similar al algoritmo DE clásico, la diferencia


radica principalmente en que los parámetros de mutación (F) y cruza (CR) cambian en cada
generación [8, 41], de manera que:
44 3.2. Algoritmos de evolución diferencial

Algoritmo 3.1 Algoritmo de evolución diferencial clásico


Entrada: factor de escala (F), probabilidad de intercambio (CR), tamaño de la población (N ),
número de generaciones (Gmax )
Salida: mejor individuo (xbest,g ), valor de aptitud obtenido por el mejor individuo (f (xbest,g ))
1: Inicializar población aleatoriamente X0 = {x1,0 , ..., xN,0 }
2: Evaluar la aptitud de la población: f (xi,g )
3: para g=1 hasta Gmax hacer
4: para i=1 hasta N hacer
5: Aplicar estrategia de mutación (current-to-best): vi,g
6: Aplicar cruza binomial: ui,g
7: Aplicar estrategia restrictiva bounce-back a ui,g
8: si f (ui,g ) <f (xi,g ) entonces
9: xi,g+1 ← ui,g
10: si no
11: xi,g+1 ← xi,g
12: fin si
13: fin para
14: fin para
15: Obtener el mejor individuo xbest,g y su valor de aptitud f (xbest,g )

CR = CR − (1.0 − 0.7)/Gmax (3.22)

donde CR es inicializado en 1 y el factor de escala se genera de manera aleatoria en cada generación


como:
F = 0.4 + 0.6 ∗ rand(0, 1) (3.23)

En esta versión, las estrategias de mutación, cruza, penalización y selección siguen siendo las
mismas que en el algoritmo DE clásico mostrado en el Algoritmo 3.1.

3.2.3 Evolución diferencial autoadaptativo

El algoritmo DE autoadaptativo JADE [16] (Algoritmo 3.2), sigue la misma estructura que el
algoritmo DE clásico, básicamente difieren en el control de los parámetros F y CR, los cuales están
asociados a cada individuo en la población como Fi y CRi .
3. Marco teórico 45

La estrategia de mutación del JADE utiliza un archivo externo (A) de tamaño N que contiene
datos históricos del proceso de búsqueda que ayudará en el proceso evolutivo a la adaptación de los
individuos. Este archivo es inicializado como vacío y al final de cada generación es actualizado con
soluciones que no trascienden a la siguiente generación y que pueden ser incluidas en la mutación
para diversificar la población y mejorar la convergencia. Si el tamaño del archivo excede el tamaño
N , entonces algunas soluciones son removidas aleatoriamente para mantener el tamaño N .

La estrategia de mutación utilizada en el JADE es llamada current-to-pbest (Ecuación 3.24) y


es una variación de la estrategia current-to-best (Ecuación 3.19). Además, utiliza el archivo externo
A para generar individuos mutantes. De esta forma se tiene que:

vi,g = xi,g + Fi · (xpbest,g − xi,g ) + Fi · (xr1,g − x


er2,g ) (3.24)

donde xpbest,g es un individuo elegido aleatoriamente de los 100p % mejores individuos en la población
actual con p ∈ (0,1], Fi es el factor de escala asociado al individuo xi,g , xr1,g es un individuo elegido
aleatoriamente de la población actual y x
er2,g es un individuo tomado aleatoriamente de la unión

entre la población actual y el archivo externo A.

Por otra parte, JADE utiliza la cruza binomial descrita en la Ecuación 3.20 y el operador de
selección en la Ecuación 3.21, aunque en el caso de que un vector de prueba sustituya al vector
objetivo en la siguiente generación, este último es enviado al archivo. Asimismo, los parámetros Fi y
CRi que tuvieron éxito en la trascendencia de un individuo a la siguiente generación son guardados en
los conjuntos SF y SCR , respectivamente. Estos conjuntos son utilizados para recalcular los valores
de Fi y CRi al final de cada generación.

El factor de mutación Fi es generado aleatoriamente en cada generación g de acuerdo a una


distribución Cauchy como:
Fi = randci (µF, 0.1) (3.25)
46 3.3. Índices de validez de grupos

el cual es truncado a 1 si Fi ≥ 1 o regenerado si Fi ≤ 0. El parámetro µF se inicializa en 0.5 y es


actualizado en cada iteración como:

µF = (1 − c) · µF + c · meanL (SF ) (3.26)

donde SF es el conjunto de factores de mutación exitosos en la generación anterior y meanL es la


media de Lehmer expresada como:

F∈SF F
P 2
meanL (SF ) = P (3.27)
F ∈ SF F

Por otra parte, el factor de cruza CRi en cada generación g es generado aleatoriamente de acuerdo
a una distribución normal con media µCR y desviación estándar 0.1 como:

CRi = randni (µCR, 0.1) (3.28)

truncado al intervalo [0,1]. El parámetro µCR se inicializa en 0.5 y es actualizado en cada iteración
como:
µCR = (1 − c) · µCR + c · meanA (SCR ) (3.29)

donde meanA es la media aritmética y SCR es el conjunto de probabilidad de cruza exitosos en la


generación anterior.

3.3 Índices de validez de grupos

La función de costo considerada en este trabajo de tesis es un índice de validez de grupos (CVI)
utilizado en algoritmos de agrupamiento (clustering ) para evaluar la calidad de un agrupamiento
candidato.
3. Marco teórico 47

Algoritmo 3.2 Algoritmo de evolución diferencial con parámetros autoadaptativos (JADE)


Entrada: tamaño de la población (N ), número de generaciones (Gmax )
Salida: mejor individuo (xbest,g ), valor de aptitud obtenido por el mejor individuo (f (xbest,g ))
1: µCR=0.5, µF=0.5, A=∅, p= .2 *N
2: Inicializar población aleatoriamente X0 = {x1,0 , ..., xN,0 }
3: Evaluar la aptitud de la población: f (xi,g )
4: para g=1 hasta Gmax hacer
5: SF = ∅, SCR = ∅
6: para i=1 hasta N hacer
7: Generar CRi y Fi a partir de µCR, µF
8: Aplicar la estrategia de mutación (current-to-pbest): vi,g
9: Aplicar la cruza binomial: ui,g
10: Aplicar estrategia restrictiva bounce-back a ui,g
11: si f (ui,g )<f (xi,g ) entonces
12: Añadir xi,g+1 ← ui,g
13: Actualizar A ← xi,g ; SF ← Fi , SCR ← CRi
14: si no
15: Añadir xi,g+1 ← xi,g
16: fin si
17: fin para
18: Remover soluciones aleatoriamente de A de modo que |A| ≤ N
19: Recalcular µCR y µF a partir de SF y SCR
20: fin para
21: Obtener el mejor individuo xbest,g y su valor de aptitud f (xbest,g )

Actualmente, el uso de un CVI como función de costo por un algoritmos de segmentación basado
en técnicas de CI no ha sido explorado, aunque es factible de aplicar en el proceso de segmentación
de imágenes, debido a que la segmentación es básicamente un proceso de agrupación de píxeles con
intensidades similares. En este contexto, un CVI cuantifica la calidad de la segmentación considerando
la relación de dispersión inter-/intra-grupo, esto es, minimizando la dispersión intra-grupo, mientras
que la dispersión inter-grupo se maximiza simultáneamente [42].

Se consideran cuatro CVIs como función de costo en el algoritmo DE para evaluar la calidad de la
segmentación producida por la PCNN: Calinski-Harabasz (índice CH) [43], PBM (índice PBM) [44],
Davies-Bouldin (índice DB) [45] y Xie-Beni (índice XB) [46]. El costo computacional de estos CVIs
es relativamente bajo, ya que las medidas de distancias solo involucran a los centroides de los grupos
48 3.3. Índices de validez de grupos

y en ningún caso se miden todas las posibles distancias entre pares de puntos [42]. Para una mejor
comprensión de los conceptos que definen a cada índice surgen las siguientes definiciones:

x es un objeto o vector denotado como x=[x1 ,x2 , ..., xd ] con d características.

X es un conjunto con N objetos denotado como X = {x1 ,x2 , ...,xN } ∈ Rd .

C es un agrupamiento de la forma C={ck |∀ k=1,...,K}, donde K denota el número de grupos


disjuntos en X.

nk es el número de objetos en un grupo ck tal que nk = |ck |.

Ck es el centroide de un grupo o cluster ck y es expresado como: Ck = 1/nk


P
xi ∈ck xi

X es el centroide el dataset X y se expresa como: X = 1/N xi ∈ X


P
xi

de(a, b) es una métrica de distancia que cuantifica la “disimilitud” entre los objetos a y b.
En este trabajo de tesis se considera la distancia Euclidiana, debido a que es la métrica más
utilizada en la práctica.

Las siguientes subsecciones describen las propiedades relevantes de cada uno de los CVIs
considerados en esta tesis.

3.3.1 Índice CH

El índice Calinski-Harabasz (índice CH) fue creado por Calinski y Harabasz en 1974 [43], es un
índice de validez que se define en términos de matrices de dispersión inter-/intra-grupo, y permite
estimar la cohesión por la suma de las distancias de los objetos xi a su respectivo centroide Ck y la
separación es medida, por la suma de las distancias al centroide global del dataset X. Es calculado
usando la siguiente expresión:

P
N −K Ck ∈C nk de(Ck , X)
CH(C) = ·P (3.30)
K −1
P
Ck ∈C xi ∈Ck de(xi , Ck )
3. Marco teórico 49

3.3.2 Índice DB

El índice Davies-Bouldin (índice DB) fue creado por Davies y Bouldin en 1979 [45], es un índice
de validez que mide la dispersión y similaridad entre grupos (distancia inter-/intra-grupo). En ese
sentido, la cohesión entre los grupos Ck ∈ C se estima por la distancia media de los objetos xi a su
respectivo centroide Ck y la separación es cuantificada como la distancia entre los centroides de dos
grupos Ck y Cr . Es calculado usando la siguiente ecuación:

1 X S(Ck ) + S(Cr )
DB(C) = maxCr ∈C/k (3.31)
K C ∈C de(Ck , Cr )
k

donde:
1 X
S(Ck ) = de(xi , Ck )
nk x ∈C
i k

3.3.3 Índice PBM

El índice PBM (índice PBM) fue creado y publicado por Maulik y Bandyopadhyay en 2002 [44],
este índice de validez mide la distancia entre los objetos xi del mismo grupo con respecto al centroide
del dataset X y la máxima separación entre par de centroides Ck y Cr . Es calculado usando la
siguiente ecuación:

" P #2
de(xi , X)
P BM (C) = δ(Ck , Cr ) P xi ∈X
P (3.32)
K Ck ∈C xi ∈Ck de(xi , Ck )

donde:
δ(Ck , Cr ) = maxCk ,Cr ∈C {de(Ck , Cr )}
50 3.4. Métricas de evaluación

3.3.4 Índice XB

El índice Xie-Beni (índice XB) fue creado por Xie y Beni en 1991 [46], es un índice de validez
que mide la variación total de un objeto xi con respecto a su respectivo centroide Ck y la mínima
separación entre los centroides de dos agrupamientos Ck y Cr . Es calculado usando la siguiente
ecuación:

2
P P
Ck ∈C xi ∈Ck de (xi , Ck )
XB(C) = (3.33)
N de2 (Ck , Cr )

3.4 Métricas de evaluación

Las métricas de evaluación de desempeño de segmentación son índices de validez externos,


utilizadas en algoritmos de clustering para evaluar la calidad de un agrupamiento de salida, en
este caso, éstos índices evalúan la segmentación resultante del algoritmo propuesto utilizando un
conjunto de imágenes de referencia, las cuales representan el agrupamiento o segmentación “ideal”.

3.4.1 Desempeño de segmentación

Los índices de evaluación de desempeño considerados son el índice Rand ajustado (ARI, adjusted
Rand index) y la información mutua normalizada (NMI, normalized mutual information).

El índice ARI es una generalización del índice Rand, el cual es una técnica cuantitativa que se
utiliza para medir el la consistencia entre dos agrupamientos [47]. Dicha cuantificación se realiza
haciendo uso de una matriz de contingencias, en la cual se mide la correlación que existe entre la
imagen de referencia Rref y la imagen segmentada C ∗ generada por el algoritmo de segmentación.
El ARI es calculado usando la siguiente expresión:
3. Marco teórico 51

  "    #  
P nuv P nu X nv N
uv − u /
2 2 v
2 2
ARI(C ∗ , Rref ) = "   X  # "   X  #   (3.34)
P nu nv P nu nv N
1 +
u − u /
2 2 v
2 2 v
2 2

donde nuv es una matriz de contingencia de tamaño L x L que contiene el número de ocurrencias
que existen en la imagen segmentada C ∗ y la imagen de referencia Rref etiquetadas con u y v
respectivamente, donde L = 2 debido a que dos etiquetas son consideradas: el objeto de interés y
el fondo en la imagen. La notación nu , nv representan el número de puntos que existen en C ∗ y en
Rref y es expresado como:

X X
nu = nuv , nv = nvn (3.35)
v v

donde nn = N total de números de elementos o píxeles en la imagen. El índice ARI,


P P
u nu = v

devuelve un valor numérico acotado en el intervalo [0,1], donde “1” representa segmentación perfecta.

El índice NMI cuantifica estadísticamente la información compartida entre dos distribuciones


(variables aleatorias) [48] y puede ser definida en términos de particiones o agrupamiento de entropías.
En este sentido, recibe como entrada dos agrupaciones, la imagen de referencia Rref y la imagen
segmentada C ∗ para calcular la información mutua I y la entropía H, retornando un valor en el
intervalo [0,1] donde “1” representa similaridad perfecta entre los dos agrupamientos. La información
mutua normalizada es calculada usando la siguiente ecuación:

I(C ∗ , Rref )
NMI(C ∗ , Rref ) = p (3.36)
H(C ∗ )H(Rref )
52 3.4. Métricas de evaluación

donde I(C ∗ , Rref ) representa la información mutua entre la imagen segmentada y la imagen de
referencia (Ecuación 3.37) computada como:

I(C ∗ , Rref ) = H(C ∗ ) + H(Rref ) − H(C ∗ , Rref ) (3.37)

donde H(X) denota entropía marginal calculada como:

X
H(X) = p(x) log2 p(x) (3.38)
x∈X

y H(X, Y ) es la entropía conjunta descrita como:

XX
H(X, Y ) = − p(x, y) log2 p(x, y) (3.39)
x∈X y∈Y

donde p(x) es la función de probabilidad de una distribución y p(x, y) es la probabilidad conjunta


entre dos distribuciones.

3.4.2 Índice de calidad de imagen

El análisis de calidad de las imágenes de prueba se realiza mediante el índice ciego de calidad de
imagen (BIQI, blind image quality index) con el fin de inferir de qué manera influye la calidad de
las imágenes en el desempeño de segmentación del algoritmo propuesto. Este índice es considerado
“ciego” debido a que no requiere de una imagen de referencia para su evaluación [49]. Los autores
Krishna y Conrad mencionan que generalmente en otras medidas de calidad (e.g., la relación señal
a ruido pico) se asume que la imagen de referencia se conoce; sin embargo, en muchas aplicaciones
del mundo real no es factible contar con una imagen de referencia. BIQI, por su parte, no requiere
la imagen de referencia original, sino que obtiene un valor de calidad basado en estadísticas de la
escena. Los resultados obtenidos con este índice se relacionan con la sensación de calidad percibida
3. Marco teórico 53

por el ser humano. BIQI recibe una imagen en escala de grises a 8 bits de profundidad y retorna un
valor de calidad de la imagen acotado en el rango [0,100], donde “0” representa calidad alta y “100”
calidad baja.

Una versión del software del índice BIQI está disponible en el siguiente enlace: http://live.
ece.utexas.edu/research/quality/BIQI_release.zip.

3.4.3 Pruebas estadísticas

Las pruebas de evaluación estadística corresponden a estadísticos no paramétricos, debido a que


no asumen un tipo de distribución particular en los datos (e.g., distribución normal) y son robustos
a valores atípicos [50].

En este sentido, se utilizaron estadísticos no paramétricos como la mediana y la desviación


absoluta con respecto a la mediana (MAD, median absolute deviation), para evaluar la tendencia
central y dispersión de los datos, a partir de los resultados obtenidos con los índices ARI, NMI y
tiempo de cómputo.

La prueba estadística de Kruskal-Wallis [50] es un método no paramétrico de análisis de varianza


(ANOVA) que se utiliza para comparar las medianas de más de dos grupos que provienen de la misma
distribución considerando como hipótesis nula, H0 , que las k medianas de los grupos son iguales, y
como hipótesis alternativa, H1 , que al menos una de las k medianas de los grupos es diferente. Esta
prueba se realiza con un intervalo de confianza del 95 % (α = 0.05).

Otra prueba considerada es el análisis post-hoc con el método de Bonferroni [51], el cual se
utiliza para hacer comparaciones múltiples entre pares de grupos de datos de una muestra. Es una
corrección que se utiliza para saber si existieron cambios en las muestras y determinar si existe
alguna probabilidad de informar erróneamente una diferencia entre las muestras por debajo del valor
α = 0.05. Este es un método complementario a la prueba de Kruskal-Wallis y permite observar las
diferencias significativas entre las medianas de pares de grupos.
54 3.5. Resumen

Por otro lado, la prueba de Wilcoxon [52] determina si la mediana de dos grupos es común y
establece como hipótesis nula, H0 , que los grupos tienen igual mediana, mientras que la hipótesis
alternativa, H1 , indica que existe diferencia significativa entre ellos. Esta prueba se realiza con un
intervalo de confianza del 95 %.

3.5 Resumen

En este capítulo se describieron los métodos y las técnicas utilizadas en este trabajo de
tesis, las cuales están enfocadas a la sintonización automática de una PCNN utilizando DE.
Primeramente, se describieron cuatro modelos de PCNN incluyendo al modelo PCNN original, dos
modelos simplificados, SPCNN1 y SPCNN2, y el modelo cortical intersecado ICM. Posteriormente,
se describieron tres enfoques de evolución diferencial que se utilizará en la sintonización de la PCNN,
los cuales son: evolución diferencial clásico (DE) con parámetros fijos de factor de mutación y
probabilidad de cruza, evolución diferencial con parámetros dinámicos (DDE) y evolución diferencial
con parámetros autoadaptativos (JADE). Asimismo, en la sección tres se describieron los CVIs
utilizados como función de costo por el algoritmo de evolución diferencial, los cuales tienen el
propósito de cuantificar la calidad de la segmentación y guiar el proceso de búsqueda hacia los
mejores parámetros que sintonicen la PCNN. También, se expusieron los índices de desempeño de
segmentación, los cuales son los índices ARI y NMI. Finalmente, se describió la métrica de calidad
de imagen BIQI y las pruebas de evaluación estadística.
Metodología
4
En este capítulo se describen las etapas para el desarrollo de esta investigación. Primeramente,
se detalla el diseño y desarrollo del enfoque propuesto, posteriormente, se presentan dos enfoques de
la literatura contra los cuales se comparará el método de segmentación propuesto, y, finalmente, se
describe el proceso de evaluación.

4.1 Enfoque propuesto

En esta sección se describe la propuesta algorítmica considerando la combinación de distintos


métodos existentes de PCNN, ED y CVI para resolver el problema de segmentación de imágenes de
manera efectiva. De este modo, el proceso de desarrollo del algoritmo de segmentación propuesto
consiste en obtener una combinación adecuada de PCNN, ED y CVI capaz de generar una
segmentación aceptable y consistente de la imagen de entrada en un tiempo de cómputo reducido.
Con este fin, el algoritmo propuesto se elegirá a partir de la comparación entre 48 variantes candidatas
que han surgido de la combinación de cuatro modelos de PCNN, tres modelos de ED y cuatro CVIs.

55
56 4.1. Enfoque propuesto

Entre las variantes de PCNN consideradas se encuentra la PCNN modelo original [7], con
nueve parámetros a sintonizar, dos versiones simplificadas definidas como SPCNN1 [15], con cinco
parámetros a sintonizar, y SPCNN2 [39], con cuatro parámetros, y el modelo cortical intersecado
ICM [22] con cinco parámetros a sintonizar. Los límites de búsqueda, inferior Li y superior Ls , que
establecen los rangos de los parámetros de las variantes PCNN se muestran en la Tabla 4.1 [53].

Tabla 4.1: Límites de los parámetros para todas las variantes de PCNN. Los símbolos “3” y “7”
indican presencia y ausencia, respectivamente, del parámetro en el modelo.
Parámetro Descripción Li Ls PCNN SPCNN1 SPCNN2 ICM

αL factor de atenuación de enlace 0.01 2.5 3 7 7 7

αF factor de atenuación de alimentación 0.01 2.5 3 7 7 7

αθ factor de atenuación de impulso 0.01 2.5 3 3 3 7

VL valor de potencial de enlace 0.01 2.5 3 7 7 7

VF valor de potencial de alimentación 0.01 2.5 3 7 7 7

Vθ valor de potencial de impulso 1 25 3 3 7 7

β factor de conexión 0.01 2.5 3 3 3 7

W matriz de pesos sinápticos (radio) 1 5 3 3 3 3

n número de iteraciones 2 10 3 3 3 3

f constante atenuación 0.01 2.5 7 7 7 3

g constante atenuación 0.01 2.5 7 7 7 3

h valor escalar 1 25 7 7 7 3

Para sintonizar los modelos PCNN seleccionados se consideran tres variantes de DE: el algoritmo
clásico con parámetros F y CR fijos (Algoritmo 3.1), un algoritmo con parámetros F y CR dinámicos
(DDE) y un algoritmo autoadaptable (JADE) [15] con parámetros Fi y CRi adaptables para cada
individuo en la población (Algoritmo 3.2). El valor definido para los parámetros de las distintas
variantes de DE se muestran en la Tabla 4.2 [6, 9, 13, 51].
4. Metodología 57

Tabla 4.2: Valores definidos para el algoritmo de DE. Los símbolos “3” y “7” indican presencia y
ausencia, respectivamente, del parámetro en el algoritmo.
Parámetros Definición Tamaño DE DDE JADE

F factor de escala 0.8 3 7 7

CR factor de cruza 0.9 3 7 7

N número de individuos en la población 20 3 3 3

Gmax número de generaciones 50 3 3 3

p porcentaje de mejores individuos en JADE 20 % 7 7 3

Cuatro CVIs como funciones de costo son optimizados por el algoritmo de DE, considerando dos
índices de maximización, índices CH y PBM [43, 44], y dos índices de minimización, índices DB y
XB [45, 46].

El método de segmentación propuesto basado en PCNN y DE se muestra en el Algoritmo 4.3,


donde cada individuo en la población codifica los parámetros de un modelo PCNN y es inicializado
aleatoriamente usando los límites superiores e inferiores mostrados en la Tabla 4.1. Como se mencionó
previamente, un CVI representa la función de costo usada por el algoritmo DE para evaluar la calidad
de la segmentación producida por la PCNN dada una solución potencial. Dependiendo del tipo de
CVI, del algoritmo de DE y del modelo PCNN, 48 variantes algorítmicas candidatas son definidas,
listadas en la Tabla 4.3, a partir de las cuales se elegirá el algoritmo de segmentación propuesto en
esta tesis.

4.2 Enfoques de la literatura

El algoritmo de segmentación propuesto se compara contra dos metodologías basadas en técnicas


de inteligencia computacional. La primera emplea un algoritmo de optimización por cúmulo de
partículas (PSO) y la segunda utiliza un algoritmo genético (GA), denotados como PSO-PCNN-
ENT y GA-SPCNN1-ENT, respectivamente. Estos trabajos se han seleccionado, debido a que son
58 4.2. Enfoques de la literatura

Tabla 4.3: Variantes algorítmicas candidatas.


Número Variante
1 DDE-ICM-CH
2 DDE-ICM-DB
3 DDE-ICM-PBM
4 DDE-ICM-XB
5 DDE-PCNN-CH
6 DDE-PCNN-DB
7 DDE-PCNN-PBM
8 DDE-PCNN-XB
9 DDE-SPCNN1-CH
10 DDE-SPCNN1-DB
11 DDE-SPCNN1-PBM
12 DDE-SPCNN1-XB
13 DDE-SPCNN2-CH
14 DDE-SPCNN2-DB
15 DDE-SPCNN2-PBM
16 DDE-SPCNN2-XB
17 DE-ICM-CH
18 DE-ICM-DB
19 DE-ICM-PBM
20 DE-ICM-XB
21 DE-PCNN-CH
22 DE-PCNN-DB
23 DE-PCNN-PBM
24 DE-PCNN-XB
25 DE-SPCNN1-CH
26 DE-SPCNN1-DB
27 DE-SPCNN1-PBM
28 DE-SPCNN1-XB
29 DE-SPCNN2-CH
30 DE-SPCNN2-DB
31 DE-SPCNN2-PBM
32 DE-SPCNN2-XB
33 JADE-ICM-CH
34 JADE-ICM-DB
35 JADE-ICM-PBM
36 JADE-ICM-XB
37 JADE-PCNN-CH
38 JADE-PCNN-DB
39 JADE-PCNN-PBM
40 JADE-PCNN-XB
41 JADE-SPCNN1-CH
42 JADE-SPCNN1-DB
43 JADE-SPCNN1-PBM
44 JADE-SPCNN1-XB
45 JADE-SPCNN2-CH
46 JADE-SPCNN2-DB
47 JADE-SPCNN2-PBM
48 JADE-SPCNN2-XB
4. Metodología 59

Algoritmo 4.3 Algoritmo de segmentación propuesto basado en PCNN y sintonizado con DE.
Entrada: imagen en escala de grises (R), tamaño de la población (N ), número de generaciones
(Gmax ), tipo de red: (PCNN|SPCNN1|SPCNN2|ICM), tipo de CVI f : (CH|DB|XB|PBM), tipo
de algoritmo DE: (DE|DDE|JADE)
Salida: imagen segmentada (C∗ ), mejores parámetros PCNN (x∗ )
1: Inicializar la población aleatoriamente: X0 = {x1,0 , ..., xN,0 }
2: Segmentar R con X0 usando el modelo PCNN seleccionado: Ω0 = {Cx1,0 , ..., CxN,0 }
3: Evaluar la población inicial con el CVI seleccionado: f (Ω0 )
4: para g=1 hasta Gmax hacer
5: para i = 1 hasta N hacer
6: Aplicar estrategia de mutación de acuerdo al algoritmo DE seleccionado: vi,g
7: Aplicar la cruza binomial: ui,g
8: Aplicar la estrategia de penalización (bounce-back) a ui,g
9: Segmentar R con ui,g usando el modelo PCNN seleccionado: Cui,g
10: si f (Cui,g ) < f (Cxi,g ) entonces
11: Remplazar el vector objetivo con el vector de prueba: xi,g+1 ← ui,g
12: si no
13: Mantener el vector objetivo en la población actual: xi,g+1 ← xi,g
14: fin si
15: fin para
16: fin para
17: Obtener el mejor individuo x∗ y su segmentación asociada C∗

los más citados en la literatura, además incluyen la entropía como función de costo, siendo esta la
más utilizada en la práctica.

4.2.1 PSO-PCNN-ENT

El algoritmo de segmentación PSO-PCNN-ENT [9], utiliza el modelo PCNN original el cual es


sintonizado por el algoritmo PSO. Este algoritmo es una técnica de optimización que modela el
comportamiento emergente de una comunidad colaborativa y sigue un procedimiento de búsqueda
basado en la experiencia de la población, donde los individuos conocidos como partículas, se agrupan
en un cúmulo. Las partículas representan una solución candidata al problema de optimización, en este
caso la búsqueda de los mejores parámetros que sintonicen a la PCNN. Una partícula está volando a
través de un espacio de búsqueda multidimensional, en el cual su posición se va ajustando de acuerdo
60 4.2. Enfoques de la literatura

a su propia experiencia y a la experiencia de sus partículas vecinas, de tal manera que cada partícula
se ve afectada por tres factores: la inercia, la experiencia personal (parte cognitiva) y la interacción
con sus partículas vecinas (parte social).

El PSO clásico distribuye N partículas en un espacio de búsqueda d-dimensional, donde una


partícula o solución es representada como un vector xi (g) y su posición es ajustada en un tiempo g
por un vector de velocidad vi (g) (Ecuación 4.1), que dirige el proceso de optimización, reflejando
el conocimiento de la partícula y la comunicación social. De esta manera, el conocimiento de la
partícula representa el componente cognitivo, el cual es proporcional a la distancia de la partícula
en su mejor posición, y la comunicación social representa el componente social de velocidad en la
Ecuación 4.2:
xij (g + 1) = xij (g) + vij (g) (4.1)

vij (g + 1) = wvij (g) + c1 rand1j (g)(xpbest,j (g) − xij (g)) + c2 rand2j (g)(xgbest,j (g) − xij (g)) (4.2)

donde i=1,2,...,N , j=1,2,...,d, g es el número de iteraciones, w es el peso inercial de la partícula,


c1 y c2 son los coeficientes cognitivo y social, rand1 y rand2 son números aleatorios con distribución
uniforme en el rango [0,1], xpbest es la mejor posición encontrada por la partícula (mejor personal)
y xgbest es la mejor posición encontrada en el vecindario de la partícula (líder).

El algoritmo PSO sintoniza siete de los nueve parámetros del modelo PCNN original, entre los
que se encuentran las constantes de atenuación (αF , αL , αθ ), valores de potenciales (VF , VL , Vθ ) y
el factor de acoplamiento (β), los cuales forman parte de la dimensionalidad de la partícula (d = 7),
poniendo el número de iteraciones de la PCNN en n = 5 y el radio de la matriz de pesos sinápticos
en W = 1. Asimismo, el tamaño de la población es N =20 y los coeficientes cognitivo y social son
c1 = c2 = 2.0.

El factor de inercia w decrece de manera lineal en cada generación como:

w = 0.9 − 0.5 ∗ g/Gmax (4.3)


4. Metodología 61

donde g es la iteración actual y Gmax es el máximo número de generaciones.

Por otra parte, la función de costo utilizada en esta propuesta es la entropía, la cual es maximizada,
y se define como:

f (P ) ≡ H(P ) = −P1 log2 (P1 ) − P2 log2 (P2 ) (4.4)

donde P1 y P2 las distribuciones de probabilidad de los niveles de intensidad de los píxeles que
pertenecen al objeto y al fondo, respectivamente. La condición de paro se establece de dos maneras,
en la primera el algoritmo ejecuta el número máximo de iteraciones, en este caso Gmax = 50, la
segunda considera un umbral que consiste en terminar la ejecución del algoritmo si el valor de la
función de costo del mejor individuo excede 0.99 durante tres generaciones consecutivas. El algoritmo
PSO-PCNN-ENT se muestra en el Algoritmo 4.4.

4.2.2 GA-SPCNN1-ENT

El algoritmo GA-SPCNN1-ENT [54], está basado en el modelo PCNN simplificado denotado


como SPCNN1, el cual es sintonizado utilizando un algoritmo genético (GA, genetic algorithm). El
GA es una técnica de optimización inspirada en la evolución biológica, basada principalmente en los
procesos genético-moleculares, está conformada por un conjunto de N individuos conocidos como
cromosomas cuyos elementos se conocen como genes. Cada cromosoma es sometido a una serie de
acciones en las cuales se modifican dichos genes, esta serie de acciones modela la evolución genética
mediante los procesos de recombinación, mutación y selección que se realiza en la población durante
g generaciones. En la implementación del algoritmo GA-SPCNN1-ENT se utiliza una selección elitista
y cruza de dos puntos.

Para la implementación de sintonización de parámetros de la SPCNN1 con GA, se considera


sintonizar tres parámetros: el factor de atenuación αθ , en el rango [0.0001, 400], el valor de potencial
Vθ , en el rango [0.0001, 100] y el factor de acoplamiento β, en el rango [0.0001, 100], dejando fijo
62 4.2. Enfoques de la literatura

Algoritmo 4.4 Algoritmo de segmentación PSO-PCNN-ENT


Entrada: imagen en escala de grises (R), tamaño de la población (N ), número de generaciones
(Gmax ), tipo de red: PCNN, coeficiente cognitivo (c1 = 2.0), coeficiente social (c2 = 2.0)
Salida: imagen segmentada (C∗ ), mejores parámetros PCNN (xgbest )
1: contg =0
2: Inicializar la población aleatoriamente: X0 = {x1,0 , ..., xN,0 }
3: Segmentar R con X0 usando el modelo PCNN: Ω0 = {Cx1,0 , ..., CxN,0 }
4: Evaluar la población inicial con la máxima entropía: f (Ω0 )
5: Obtener el mejor personal de las partículas (xpbest ) y su desempeño f (xpbest )
6: Obtener el mejor global (xgbest ) y su desempeño f (xgbest )
7: para g=1 hasta Gmax hacer
8: Validar la condición de paro por umbral
9: si f (xgbest )>0.99 entonces
10: contg =contg +1
11: fin si
12: si contg >3 entonces
13: break
14: fin si
15: para i = 1 hasta N hacer
16: Actualizar velocidad de las partículas: vij,g
17: Actualizar posición de las partículas: xij,g
18: Aplicar estrategia restrictiva a la posición y velocidad de la partícula
19: Segmentar R con xi,g usando el modelo PCNN: Cxi,g
20: si f (Cxi,g ) > f (Cxpbest ) entonces
21: Actualizar el mejor personal: pbest ← xi,g
22: si f (Cxg ) > f (Cxgbest ) entonces
23: Actualizar el mejor global: xgbest ← xi,g
24: fin si
25: fin si
26: fin para
27: fin para
28: Obtener el mejor individuo xgbest y su segmentación asociada C∗

el número de iteraciones en n = 2 y la matriz de pesos sinápticos con radio W = 1. El tamaño


del cromosoma es d = 3, el cual está relacionado con los parámetros de la red SPCNN1. Las
probabilidades de cruza y mutación son pc = 0.7 y pm = 0.01, respectivamente, y el total de los
individuos en la población es de N = 30.
4. Metodología 63

Por otra parte, la función de costo utilizada en esta propuesta es la entropía, descrita en la
Ecuación 4.4, aunque para ajustar la presión de selección para mantener la diversidad de la población,
los autores, modifican la función de costo agregando un exponente a la función de entropía:

f (P ) = [H(P )]k con k = 1.004 (4.5)

La condición de paro se establece de dos maneras, en la primera el algoritmo ejecuta un número


máximo de generaciones, en este caso Gmax = 50, y la segunda utiliza un umbral que consiste en
terminar la ejecución del algoritmo si la diferencia del valor de aptitud del mejor individuo es menor
que 0.001 durante cuatro generaciones consecutivas. El algoritmo GA-SPCNN1-ENT se muestra en
el Algoritmo 4.5.

4.3 Conjunto de imágenes de prueba

El banco de imágenes de prueba está conformado por dos conjuntos de imágenes como se muestra
en la Figura 4.1. Ambos tipos de imágenes cuentan con imágenes binarias de referencia, las cuales
permiten evaluar la segmentación resultante de los algoritmos de segmentación.

El conjunto de imágenes reales permite determinar estadísticamente el desempeño general de


segmentación usando imágenes con características no controladas, mientras el conjunto de imágenes
simuladas permite evaluar los alcances y limitaciones del algoritmo propuesto usando imágenes con
características controladas.

4.3.1 Imágenes reales

Unnikrishnan et al. [55] mencionan que las evaluaciones realizada a los algoritmos de segmentación
suelen ser de manera subjetiva, basándose en juzgar los resultados obtenidos perceptibles a simple
vista (análisis subjetivo) y no de manera objetiva mediante métricas de evaluación. Los autores
64 4.3. Conjunto de imágenes de prueba

Algoritmo 4.5 Algoritmo de segmentación GA-SPCNN1-ENT.


Entrada: imagen en escala de grises (R), tamaño de la población (N ), número de generaciones
(Gmax ), tipo de red: SPCNN1
Salida: imagen segmentada (C∗ ), mejores parámetros SPCNN1 (x∗ )
1: contg =0
2: Inicializar la población aleatoriamente: X0 = {x1,0 , ..., xN,0 }
3: Segmentar R con X0 usando el modelo SPCNN1 seleccionado: Ω0 = {Cx1,0 , ..., CxN,0 }
4: Evaluar la población inicial: f (Ω0 )
5: para g=1 hasta Gmax hacer
6: para i=1 hasta N hacer
7: Aplicar una estrategia de cruza de dos puntos: ui,g
8: Aplicar a la población la estrategia de mutación: vi,g
9: Aplicar una estrategia restrictiva a la población: vi,g
10: Segmentar R con vi,g usando el modelo SPCNN1: Cvi,g
11: si f (Cvi,g ) > f (Cxi,g−1 ) entonces
12: Remplazar el vector objetivo con el vector hijo: xi,g ← vi,g
13: fin si
14: fin para
15: si |f (C∗ g−1 ) − f (C∗ g )| ≤ 0.001 entonces
16: contg =contg +1
17: fin si
18: si contg >4 entonces
19: Terminar las generaciones
20: si no
21: contg =0
22: fin si
23: fin para
24: Obtener el mejor individuo x∗ y su segmentación asociada C∗ .

consideran que evaluar el desempeño de un algoritmo de segmentación de manera subjetiva u


objetiva depende de la aplicación final del algoritmo, aunque mencionan que todos los algoritmos
deberían ser evaluados de manera objetiva, comparando los resultados de segmentación contra
varias segmentaciones manuales, debido a que consideran que no hay una sola segmentación de
referencia para una imagen real. Por tanto, en ausencia de una única segmentación de referencia
consideran que la comparación debe hacerse con un conjunto de posibles interpretaciones perceptuales
de una imagen. Esta validación mide objetivamente el desempeño de segmentación al comparar
4. Metodología 65

Imágenes  naturales  con  segmentación  de  referencia  


§  Reales   realizada  manualmente  por  tres  personas.    

Imágenes  de  prueba  

Imágenes  con  cambios  en  tamaño  del  objeto,  contraste,  


§  Simuladas   iluminación,  borrosidad,  ruido  y  forma.  

Figura 4.1: Banco de imágenes de prueba.

segmentaciones de referencia (i.e., segmentaciones manuales) contra las segmentaciones generadas


por un método computacional.

Basados en este enfoque, en este trabajo se incluyen imágenes reales que cuentan con
segmentación de referencia para evaluar la calidad de la segmentación resultante tanto del algoritmo
propuesto como de los algoritmos publicados en la literatura. El banco de imágenes cuenta con
30 fotografías en escala de grises con 8 bits de profundidad y tamaño de 225 x 169 píxeles que
incluye tres imágenes binarias de referencia, las cuales son segmentaciones de referencia generadas
manualmente por tres personas diferentes. La Figura 4.2 muestra ejemplos de este tipo de imágenes.

El banco de imágenes está disponible en: http://www.wisdom.weizmann.ac.il/~vision/


Seg_Evaluation_DB/2obj/index.html.
66 4.3. Conjunto de imágenes de prueba

Imagen  original   Referencia  1   Referencia  2   Referencia  3  

Figura 4.2: Imágenes reales con sus respectivas imágenes binarias de referencia.

4.3.2 Imágenes simuladas

Una imagen digital es una función bidimensional de la forma f (x, y), donde cada par coordenado
(x, y) corresponde a un píxel en la imagen, el cual contiene un valor de intensidad o nivel de gris [56].

Cuando una imagen es generada por un proceso físico estos valores de intensidades son
proporcionales a un fuente física de luz. De esta manera, la naturaleza básica de f (x, y) está
caracterizada por:

1) Componentes de iluminación i(x, y): cantidad de luz incidente sobre la escena procedente de
una fuente de luz.

2) Componente de reflectancia r(x, y): cantidad de luz reflejada por las características físicas de
los objetos.

Así, estos dos componentes se combinan en un producto de la forma:


4. Metodología 67

f (x, y) = i(x, y) · r(x, y) (4.6)

donde 0 < i(x, y) < ∞ y 0 < r(x, y) < 1.

La intensidad o nivel de gris de una imagen se denota como L y puede tener valores en el rango
[Lmin , Lmax ] denominado escala de grises o rango dinámico. En la práctica, la escala de grises se
encuentra comúnmente en el intervalo [0, 255], donde 0 es el negro y 255 el blanco, y los valores
intermedios entre el negro y el blanco representan la gama de tonos de gris en la imagen [56].

Dentro del proceso de adquisición de una imagen no solo influyen los componentes de iluminación
y reflectancia en la escena, sino que considerando que dicha imagen es captada por una cámara
fotográfica se añade una degradación en la imagen producto de la influencia de varios factores (e.g.,
temperatura del sensor, interferencia en la adquisición, distorsión de la lente, etc.).

La imagen adquirida g(x, y) es afectada por una función de degradación h(x, y) y un ruido aditivo
η(x, y). Entonces la imagen degradada se modela como:

g(x, y) = h(x, y) ∗ f (x, y) + η(x, y) (4.7)

donde f (x, y) es la función objeto dada en la Ecuación 4.6, h(x, y) es la representación espacial de
la función de degradación y el símbolo “∗” indica convolución.

El proceso de adquisición de una imagen se simula variando características como: tamaño y forma
del objeto, cambios en la reflectancia (contraste interno, relacionado al objeto, y contraste externo,
relacionado al fondo), brillo (oscuro, medio, y claro), iluminación (cantidad de luz), borrosidad
(desenfoque de la lente) y ruido Gaussiano aditivo, lo cual se describe a continuación.

El tamaño de la imagen simulada es de 256 x 256 píxeles, con 256 niveles de intensidad y posee
una imagen de referencia (imagen binaria del objeto). Una vez definido el tamaño de la imagen, se
agrega un objeto, el cual tiene un tamaño y posición definidos. Cabe señalar que para darle mayor
versatilidad a las imágenes, la posición del objeto se determina aleatoriamente. Asimismo, la forma
68 4.3. Conjunto de imágenes de prueba

Figura 4.3: Conjunto de imágenes simuladas con objetos de forma regular e irregular y radios de 16,
32 y 64 píxeles (R16, R32 y R64).

del objeto puede ser irregular (estrella de ocho picos) o regular (círculo) y puede adoptar tres tamaños
diferentes definidos por el radio del objeto: 16 píxeles (R16), 32 píxeles (R32) y 64 píxeles (R64), tal
como se muestra en la Figura 4.3.

Posteriormente, las intensidades de la imagen se simulan mediante las Ecuaciones 4.6 y 4.7. La
componente de reflectancia, r(x, y), la definen el contraste y brillo de la imagen. El contraste es
la diferencia entre los niveles de intensidad del objeto y su fondo. Las diferencias de 16, 32 y 64
corresponden a los contrastes bajo (Cb), medio (Cm) y alto (Ca), respectivamente. El brillo está
asociado al contraste, de modo que para un valor de intensidad del objeto, Cint , el valor de intensidad
del fondo se define como Cext = Cint + C, donde C = {16, 32, 64} es un valor de contraste. Tres tipos
de brillo son definidos: bajo u oscuro (Bb), medio (Bm) y alto o claro (Ba), cuyos rangos de intensidad
son [16, 64], [72, 136], y [144, 192], respectivamente. Entre dos valores de brillo consecutivos hay
una diferencia de ocho niveles de intensidad; por tanto, se tienen 23 valores de brillo diferentes en
4. Metodología 69

Figura 4.4: Proceso para generar una imagen simulada.

el rango [16, 192]. Entonces, r(x, y) está dada por la unión de las regiones disjuntas de los píxeles
que componen al objeto y al fondo.

La componente de iluminación, i(x, y), simula una fuente hipotética de luz que genera un
gradiente lineal de iluminación en la imagen. Esto se observa como región oscura en la esquina
superior izquierda y gradualmente se vuelve más clara a medida que se acerca a la fuente puntual de
luz en la esquina inferior derecha. Esto se simula mediante la siguiente expresión:

i(x, y) = [(x + y)/(W + H)]α (4.8)

donde W y H son el ancho y alto de la imagen, respectivamente, y α es una constante que controla
la intensidad de iluminación y que puede tener tres valores: 0, 1/8, y 1/4, que indican sin iluminación
(Ib), iluminación media (Im) e iluminación alta (Ia), respectivamente. Una vez que se tienen las
componentes i(x, y) y r(x, y), la función objeto f (x, y) se obtiene mediante la Ecuación 4.6.

Al tomar una fotografía con una cámara, la luz procedente de la escena pasa a través de la
lente, la cual posee una respuesta al impulso dada por la función de dispersión de punto h(x, y).
Esto provoca que un punto de luz en el mundo real se refleje como una área de influencia en la
fotografía, de modo que se genera un efecto de emborronamiento al sobreponerse las diferentes
70 4.3. Conjunto de imágenes de prueba

áreas de influencia de múltiples puntos de luz. Esta distorsión se modela mediante la convolución de
la función objeto f (x, y) con un filtro Gaussiano de tamaño 5x5 con varianza unitaria.

Figura 4.5: Ejemplo de imágenes simuladas con un objeto irregular y diferentes características,
denotadas con las siguientes nomenclaturas: a) R64CbIaNbBb, b) R32CbIaNaBm, c) R16CaIaNaBm,
d) R64CbIaNmBb, e) R32CmImNbBm, f) R16CaImNaBm, g) R64CmIaNaBm, h) R32CmImNaBm
y i) R16CaIbNbBa.

La función de ruido η(x, y) es una función estocástica introducida por los componentes
electrónicos del sistema de adquisición de imágenes y es incorrelada con los valores de intensidad
en la imagen, por lo que se suele modelar como un ruido Gaussiano aditivo mediante la siguiente
expresión:
η(x, y) = σ ∗ N (0, 1) (4.9)
4. Metodología 71

donde N (0, 1) es un número aleatorio tomado de una distribución normal con media cero y varianza
unitaria, y σ es la potencia del ruido definida en tres niveles: 1, 2 y 4, esto es, ruido bajo (Nb), medio
(Nm) y alto (Na). Una vez que se tiene la función objeto f (x, y), la función de dispersión de punto
h(x, y) y la función de ruido η(x, y), la imagen simulada se obtiene mediante la Ecuación 4.7 y la
imagen resultante es truncada al rango [0, 255].

Mediante el proceso mostrado en la Figura 4.4, se simularon 243 imágenes diferentes y cada una
se identificó con la nomenclatura RpCqIqNqBq, donde p = {16, 32, 64} y q = {bajo, medio, alto}.
Por ejemplo, una imagen que tiene un objeto con 32 píxeles de radio, contraste alto, iluminación
alta, ruido bajo y brillo medio se identifica como R32CaIaNbBm. En la Figura 4.5 se ilustran diversos
ejemplos de imágenes simuladas con un objeto irregular.

4.4 Experimentación

Se diseñaron tres experimentos para la validación de los algoritmos de segmentación:

Experimento 1:
Consiste en evaluar las 48 variantes algorítmicas candidatas haciendo uso del conjunto de imágenes
reales. Cada imagen es segmentada 31 veces con el fin de determinar estadísticamente el desempeño
de segmentación y la consistencia en las soluciones, de esta manera determinar el algoritmo de
segmentación propuesto en esta tesis.

Experimento 2:
Consiste en evaluar el algoritmo propuesto utilizando el conjunto de imágenes simuladas. Este
experimento tiene la finalidad de determinar los alcances y limitantes en el desempeño de
segmentación utilizando imágenes con características controladas.

Experimento 3:
Consiste en evaluar los algoritmos de segmentación de la literatura haciendo uso del conjunto de
72 4.4. Experimentación

imágenes reales. Cada imagen es segmentada 31 veces con el fin de determinar estadísticamente el
desempeño de segmentación para comparar los resultados obtenidos con el algoritmo propuesto.

El proceso de evaluación que se realiza para medir el desempeño de segmentación de cada una
de las 48 variantes algorítmicas se ejemplifica en la Figura 4.6.

Imagen  de  entrada   Imagen  de  referencia  

Algoritmo   Red   CVI   N   Gmax  


DE   PCNN   CH   20   50  

Imagen  segmentada   •  Índice  Rand  Ajustado  


DE      (índice  ARI)  

PCNN    99.39%  

Caliski-­‐Harabasz  
 (índice  CH)   •  Información  Mutua  
Normalizada  (índice  NMI)  

98.14%  

Figura 4.6: Proceso de evaluación de una imagen segmentada

El proceso de segmentación que se realiza, recibe como entrada una imagen en escala de grises
y las configuraciones con las que se desea experimentar. En el ejemplo de la Figura 4.6 se desea
segmentar una imagen con el algoritmo de evolución diferencial clásico (DE), el modelo PCNN
original y el índice de validez Calinski-Harabasz (CH), incluyendo número de individuos (N = 20) y
el número de generaciones (Gmax = 50). Una vez que se han definido los parámetros de entrada,
el algoritmo DE realiza la búsqueda de los mejores parámetros que sintonicen la PCNN, retornando
la segmentación de la imagen de entrada. Posteriormente, la imagen segmentada se compara con
4. Metodología 73

su correspondiente imagen binaria de referencia para evaluar el desempeño de la segmentación en


términos de los índices ARI y NMI. A partir de los resultados se realizan las pruebas estadísticas para
determinar diferencias estadísticas entre los desempeños de los diferentes algoritmos de segmentación.

4.4.1 Infraestructura

La infraestructura disponible para el desarrollo y la experimentación es la siguiente:

Equipo de cómputo Mac OS X versión 10.9.4 con un procesador 2.5 GHz Intel Core i5, 4 GB
1333 MHz DDR3 de memoria.

Mathworks Matlab R2015a, software matemático de entorno integrado.

Servidor Linux con procesador Intel Xeon con 2.6 GHz, 16 núcleos, 32 GB de memoria RAM
y sistema de almacenamiento de 22 TB, propiedad del CINVESTAV Unidad Tamaulipas.

4.5 Resumen

En este capítulo se describió el diseño y desarrollo del algoritmo de segmentación propuesto,


basado en evolución diferencial y PCNN. Asimismo, dos enfoques de la literatura son descritos, PSO-
PCNN-ENT y GA-SPCNN1-ENT, los cuales maximizan la entropía (función de costo). También, se
describió el proceso de evaluación que se seguirá para la validación de los algoritmos de segmentación,
se describió el banco de imágenes, el cual comprende imágenes reales y simuladas, a partir de las cuales
se evalúa estadísticamente el desempeño de segmentación. Por otra parte, los experimentos diseñados
para la validación de las variantes algorítmicas se denotan como Experimento 1, Experimento 2 y
Experimento 3. El Experimento 1 utiliza el conjunto de imágenes reales para evaluar el desempeño de
las 48 variantes algorítmicas candidatas a partir de las cuales se elegirá el algoritmo de segmentación
propuesto. El Experimento 2 emplea el conjunto de imágenes simuladas para evaluar el algoritmo
propuesto y determinar los alcances y limitaciones del mismo. Finalmente, el Experimento 3 realiza
74 4.5. Resumen

una comparación del algoritmo de segmentación propuesto contra algoritmos existentes en la


literatura.
Resultados
5
Este capítulo está dividido en tres secciones correspondientes a los resultados de los experimentos
realizados. El Experimento 1 evalúa 48 variantes candidatas con el fin de elegir el algoritmo de
segmentación propuesto, el cual será determinado por la consistencia en las soluciones y la exactitud
de segmentación en un tiempo de cómputo razonable, el Experimento 2 define los alcances y
limitaciones del enfoque propuesto, y el Experimento 3 compara el desempeño de segmentación
de la propuesta contra dos algoritmos de segmentación existentes en la literatura, los cuales están
basados en técnicas de inteligencia computacional y utilizan como función de costo la entropía de
la imagen. Asimismo, se evalúa el desempeño de segmentación de los algoritmos en la literatura al
sustituir el criterio de entropía por un CVI.

5.1 Experimento 1

El Experimento 1 evalúa las 48 variantes algorítmicas candidatas (ver Capítulo 4, Tabla 4.3)
haciendo uso del conjunto de imágenes reales. Debido a que los algoritmos de segmentación son

75
76 5.1. Experimento 1

estocásticos, cada imagen es segmentada 31 veces con el fin de determinar estadísticamente el


desempeño de segmentación y la consistencia de las soluciones.

A partir de los resultados obtenidos con los índices ARI, NMI y tiempo de cómputo de cada una
de las 48 variantes candidatas se calculan los estadísticos no paramétricos de la mediana y desviación
absoluta con respecto a la mediana (MAD, median absolute deviation) para determinar la tendencia
central y la dispersión, respectivamente. Asimismo, se realizan pruebas de significación estadística
entre los métodos comparados.

5.1.1 Desempeño de segmentación

Para medir el desempeño de las 48 variantes candidatas, se utilizó el conjunto de imágenes


reales, el cual está conformado por un conjunto de 30 imágenes en escala de grises que fueron
segmentadas 31 veces y comparadas contra sus respectivas imágenes de referencia mediante los
índices de desempeño ARI y NMI.

En la Figura 5.1 se muestran los resultados de desempeño de segmentación en términos del


índice ARI, cuyos valores de mediana (rombos) están ordenados ascendentemente del peor al mejor
desempeño, donde las variantes que emplean el índice XB obtienen los mejores resultados, mientras
que el desempeño más bajo lo muestran las variantes que utilizan el índice DB. Nótese que el índice
XB refleja resultados de ARI mayores que 0.7 (valor aceptable o de alta correlación de acuerdo a
la prueba de correlación de Pearson) seguido de los índices PBM y CH, mientras que el índice DB
muestra resultados de ARI menores que 0.7. Por otro lado, observando la dispersión dada por el
estadístico MAD (líneas verticales) es notable que los índices XB y PBM obtienen soluciones más
consistentes, mientras que los índices CH y DB presentan mayor dispersión, siendo el índice DB el
que obtiene la menor consistencia en las soluciones. Obsérvese que estos resultados básicamente
dependen del tipo de CVI utilizado y no de la variante de evolución diferencial y el modelo de PCNN.

En cuanto a los resultados de desempeño con el índice NMI mostrados en la Figura 5.2, se
observa una tendencia similar al comportamiento obtenido con el índice ARI considerando los
5. Resultados 77

0.8

0.6
ARI

0.4

0.2

DB
CH
PBM
XB
0
DDE-ICM-DB
DDE-PCNN-DB
DE-SPCNN2-DB

JADE-ICM-CH
JADE-PCNN-CH

JADE-ICM-XB

JADE-PCNN-XB
DE-ICM-DB

DE-PCNN-DB

DDE-SPCNN1-CH

DDE-SPCNN2-CH

DDE-ICM-PBM
DE-SPCNN1-PBM

DE-SPCNN2-PBM
DDE-PCNN-PBM
JADE-SPCNN2-DB

JADE-SPCNN1-DB

DDE-SPCNN2-XB

DDE-SPCNN1-XB
DE-SPCNN1-CH
DE-SPCNN2-CH

DDE-PCNN-CH
DDE-ICM-CH

DE-ICM-PBM

DE-PCNN-PBM
JADE-ICM-DB

JADE-PCNN-DB

JADE-SPCNN1-PBM
JADE-SPCNN2-PBM

DE-SPCNN1-XB
DDE-ICM-XB

DE-SPCNN2-XB
DDE-PCNN-XB
DE-PCNN-CH

DE-ICM-CH
DDE-SPCNN2-DB

DDE-SPCNN1-DB

JADE-SPCNN1-CH

JADE-SPCNN2-CH

JADE-ICM-PBM
JADE-PCNN-PBM

DE-ICM-XB
DE-PCNN-XB

JADE-SPCNN2-XB

JADE-SPCNN1-XB
DE-SPCNN1-DB

DDE-SPCNN1-PBM

DDE-SPCNN2-PBM

Figura 5.1: Resultados de desempeño de segmentación en términos del índice ARI. Para cada variante
algorítmica, los rombos señalan el valor de mediana y las líneas verticales representan el valor MAD.

valores de mediana y MAD, aunque el índice NMI contrasta de manera más notable los resultados
de las variantes algorítmicas con diferentes CVIs. El índice XB presenta el mayor desempeño de
segmentación con soluciones consistentes, mientras que el índice DB obtiene el desempeño de
segmentación más bajo y con mayor dispersión en las soluciones.

Por tanto, para ambos índices de desempeño de segmentación, se pueden identificar cuatro grupos
que son perfectamente notables y corresponden a los cuatro tipos de CVIs considerados. De esta
manera se observa claramente que el tipo de CVI impacta de manera sustancial en el desempeño
de segmentación, independientemente del modelo de PCNN y variante del algoritmo de evolución
diferencial.

En la Figura 5.3 se muestran las medianas del tiempo de cómputo requerido por cada una de las
variantes algorítmicas para obtener una imagen segmentada. Es notable que el tipo de variante de
78 5.1. Experimento 1

0.8

0.6
NMI

0.4

0.2

DB
CH
PBM
XB
0
DDE-ICM-DB
DDE-PCNN-DB

JADE-ICM-CH
JADE-PCNN-CH

JADE-ICM-XB

JADE-PCNN-XB
DE-ICM-DB

DE-PCNN-DB

DDE-SPCNN1-CH

DDE-SPCNN2-CH

DDE-ICM-PBM
DE-SPCNN1-PBM

DE-SPCNN2-PBM
DDE-PCNN-PBM
JADE-SPCNN2-DB

JADE-SPCNN1-DB

DDE-SPCNN2-XB

DDE-SPCNN1-XB
DE-SPCNN1-CH
DE-SPCNN2-CH

DDE-PCNN-CH
DDE-ICM-CH

DE-ICM-PBM

DE-PCNN-PBM
JADE-ICM-DB

JADE-PCNN-DB

JADE-SPCNN1-PBM
JADE-SPCNN2-PBM

DE-SPCNN1-XB
DDE-ICM-XB

DE-SPCNN2-XB
DDE-PCNN-XB
DE-PCNN-CH

DE-ICM-CH
DDE-SPCNN2-DB

DDE-SPCNN1-DB

JADE-SPCNN1-CH

JADE-SPCNN2-CH

JADE-ICM-PBM
JADE-PCNN-PBM

DE-ICM-XB
DE-PCNN-XB

JADE-SPCNN2-XB

JADE-SPCNN1-XB
DE-SPCNN2-DB

DE-SPCNN1-DB

DDE-SPCNN1-PBM

DDE-SPCNN2-PBM

Figura 5.2: Resultados de desempeño de segmentación en términos del índice NMI. Para cada variante
algorítmica, los rombos señalan el valor mediana y las líneas verticales representan el valor MAD.

evolución diferencial establece en mayor medida el tiempo de cómputo del método de segmentación,
ya que para el DE clásico se obtienen los menores tiempos, seguido por la variante DE con parámetros
dinámicos (DDE) y finalmente el algoritmo JADE que utiliza parámetros adaptativos. También se
observa que el tipo de modelo PCNN influye en el tiempo de cómputo, siendo la PCNN original la
más rápida, seguida de los modelos ICM, SPCNN1 y SPCNN2. Esto indica que a pesar de que la
PCNN original requiere la sintonización de nueve parámetros, el modelo está completo por lo que
necesita menos esfuerzo para encontrar una buena solución, mientras que los modelos simplificados
compensan con mayor número de iteraciones o mayor radio de enlace la reducción en el número de
parámetros para lograr una segmentación adecuada.
5. Resultados 79

30

25 JADE-SPCNN2 DDE-SPCNN2 DE-SPCNN2


JADE-SPCNN2 DDE-SPCNN1 DE-SPCNN1
JADE-SPCNN1 DDE-ICM DE-ICM
JADE-ICM DDE-PCNN DE-PCNN

20
Tiempo (s)

15

10

0
JADE-ICM-CH

JADE-PCNN-CH

DDE-ICM-DB

DDE-PCNN-DB
JADE-ICM-XB

JADE-PCNN-XB

DDE-SPCNN2-CH

DDE-SPCNN1-CH
DDE-ICM-PBM

DDE-PCNN-PBM

DE-SPCNN2-PBM

DE-SPCNN1-PBM

DE-ICM-DB

DE-PCNN-DB
JADE-SPCNN2-DB

JADE-SPCNN1-DB

DDE-SPCNN2-XB

DDE-SPCNN1-XB

DDE-ICM-CH

DDE-PCNN-CH

DE-SPCNN2-CH

DE-SPCNN1-CH
DE-ICM-PBM

DE-PCNN-PBM
JADE-SPCNN2-PBM

JADE-SPCNN1-PBM

JADE-ICM-DB
JADE-PCNN-DB

DDE-ICM-XB

DDE-PCNN-XB

DE-SPCNN2-XB

DE-SPCNN1-XB

DE-ICM-CH

DE-PCNN-CH
JADE-SPCNN2-CH
JADE-SPCNN1-CH

JADE-ICM-PBM
JADE-PCNN-PBM

DDE-SPCNN2-DB

DDE-SPCNN1-DB

DE-ICM-XB

DE-PCNN-XB
JADE-SPCNN2-XB

JADE-SPCNN1-XB

DDE-SPCNN2-PBM

DDE-SPCNN1-PBM

DE-SPCNN2-DB

DE-SPCNN1-DB
Figura 5.3: Resultados de tiempo de cómputo del Experimento 1. Las figuras geométricas marcan el
valor de mediana y las líneas verticales representan la dispersión MAD.

5.1.2 Análisis estadístico

En esta subsección se elegirá el algoritmo de segmentación propuesto a partir de la comparación


estadística entre las tres mejores variantes resultantes del Experimento 1, que de acuerdo a sus
valores de mediana, MAD y tiempo de cómputo, genera una segmentación adecuada, consistente y
tiempo de cómputo reducido. Los resultados estadístico obtenidos de las tres variantes que obtuvieron
mejores resultados en el Experimento 1 se muestran en la Tabla 5.1.

Como se puede observar, los valores obtenidos de mediana y MAD son muy similares entre las
tres mejores variantes DDE-PCNN-XB, DE-SPCNN1-XB y DE-PCNN-XB, inclusive la prueba de
Kruskal-Wallis demuestra que no hay diferencias significativas entre las medianas de los métodos
(p>0.05). Sin embargo, la diferencia radica principalmente en el tiempo de cómputo asociado a
80 5.1. Experimento 1

Tabla 5.1: Resultados de las tres mejores variables del Experimento 1.


Mediana MAD Valor p
Variante
ARI NMI Tiempo (s) ARI NMI Tiempo (s) ARI/NMI/Tiempo
DDE-PCNN-XB 0.771 0.668 11.387 0.127 0.140 0.734 0.994
DE-SPCNN1-XB 0.768 0.668 8.337 0.130 0.141 0.470 0.997
DE-PCNN-XB 0.771 0.668 6.184 0.128 0.141 0.420 <0.001

cada una de ellas, ya que la prueba de Kruskal-Wallis con corrección de Bonferroni indica diferencias
significativas entre las medianas de los métodos (p<0.001), siendo la variante DE-PCNN-XB la que
obtiene el menor tiempo de cómputo. Por tanto, con el fin de tomar una decisión adecuada en
la elección del algoritmo propuesto, se realiza un análisis de consistencia de los parámetros de los
modelos PCNN, para determinar la posibilidad de reducir el tiempo de cómputo de los métodos al
omitir la sintonización de parámetros invariantes, sin afectar el desempeño de segmentación.

5.1.3 Análisis de consistencia

El análisis de consistencia de parámetros de los modelos PCNN tiene el propósito de disminuir


el número de parámetros a sintonizar para aumentar la velocidad del algoritmo sin reducir el
desempeño de segmentación. Se deben identificar aquellos parámetros cuyo valor a la salida del
algoritmo evolutivo permanece prácticamente constante (i.e., consistente) para las 31 ejecuciones
experimentales considerando todo el conjunto de imágenes.

Un manera de evaluar consistencia es midiendo la diferencia absoluta entre un par de valores,


la cual debe de tender a cero para indicar similaridad entre los valores. De este modo, para cada
parámetro de un modelo de PCNN, se calculan las diferencias absolutas entre todos los posibles pares
de valores. Por tanto, considerando 31 ejecuciones y 30 imágenes, se obtienen 431,985 comparaciones
de cada parámetro.

En la Tabla 5.2 se muestran los resultados de mediana de las diferencias absolutas para cada
parámetro de los modelos de PCNN de los tres mejores métodos en el Experimento 1. Nótese que
el parámetro más consistente es el número de iteraciones internas de la red, n, ya que el algoritmo
5. Resultados 81

evolutivo siempre lo sintoniza al mismo valor de n = 2 para los tres métodos de segmentación. Otro
parámetro que es consistente es el radio de enlace, W , el cual tuvo una variación de dos unidades
a partir de W = 1 para el modelo PCNN original y W = 2 para el modelo SPCNN1. Ambos
parámetros, n y W , son los que en mayormente consumen tiempo de cómputo de la red, ya que
n está asociado al número de veces que la red debe iterar para obtener una segmentación y W
se relaciona con el tamaño de la máscara usada por el operador de convolución para integrar las
respuestas de neuronas vecinas. Por tanto, los valores de W y n pueden omitirse en el proceso de
sintonización y tomarse como parámetros fijos.

Tabla 5.2: Valores de mediana de las diferencias absolutas entre pares de parámetros de los tres
mejores métodos de segmentación en el Experimento 1.
Variante αL αF αθ VL VF Vθ β n W
DDE-PCNN-XB 2.314 1.989 0.243 2.384 2.195 21.177 2.489 0 2
DE-PCNN-XB 2.530 2.344 0.489 2.847 2.934 26.183 2.552 0 2
DE-SPCNN1-XB — — 0.007 — — 27.146 2.892 0 2

Entonces, para evaluar el desempeño de segmentación al omitir los parámetros W y n del proceso
de sintonización, se realiza nuevamente el Experimento 1, segmentando 31 veces el conjunto de
imágenes reales. Para DDE-PCNN-XB y DE-PCNN-XB el radio de enlace y el número de iteraciones
son W =1 y n=2, respectivamente, mientras que para DE-SPCNN1-XB los parámetros son W = 2
y n = 2.
En la Tabla 5.3 se muestran los resultados estadísticos del desempeño de segmentación cuando
los parámetros W y n son fijos. Es notable que el tiempo de cómputo disminuye en los tres métodos
con respecto a los resultados mostrados en la Tabla 5.1, mientras que los valores de mediana de los
índices ARI y NMI son prácticamente los mismos que los obtenidos cuando W y n se sintonizan, lo
que indica que el desempeño de segmentación se preserva con un tiempo de cómputo menor.
Por otro lado, la prueba estadística de Kruskal-Wallis indica que no hay diferencia significativa
(p>0.05) en los desempeños de segmentación de los tres métodos, aunque en el tiempo de cómputo
existe diferencia significativa (p<0.001).
82 5.1. Experimento 1

Tabla 5.3: Resultados de las tres variantes del Experimento 1 con parámetros fijos W y n.
Mediana MAD Valor p
Variantes
ARI NMI Tiempo (s) ARI NMI Tiempo (s) ARI/NMI/Tiempo
DDE-PCNN-XB 0.772 0.668 5.046 0.130 0.141 0.229 0.997
DE-PCNN-XB 0.772 0.668 4.948 0.130 0.141 0.193 0.998
DE-SPCNN1-XB 0.770 0.669 4.890 0.129 0.141 0.249 <0.001

Con base en estos resultados, se determina que la variante algorítmica que obtiene un desempeño
de segmentación adecuado con un tiempo de cómputo reducido es el método DE-SPCNN1-XB con
parámetros W = 2 y n = 2, el cual representa el método de segmentación propuesto en esta tesis.

5.1.4 Análisis de convergencia

Una vez elegida la variante DE-SPCNN1-XB con parámetros fijos W y n, se realiza un análisis
de convergencia con el propósito de disminuir el número de generaciones que ejecuta el algoritmo de
evolución diferencial DE sin reducir el desempeño de segmentación del algoritmo.

La Figura 5.4 muestra la convergencia que sigue el algoritmo DE durante las Gmax = 50
generaciones definidas inicialmente. Cada punto del gráfico representa la mediana de las 31
ejecuciones independientes del Experimento 1. Es notable que la curva de convergencia se estabiliza
en la primeras generaciones, de modo que el valor de aptitud de la población y del mejor individuo
(en términos del índice XB) es casi constante después de la décima generación. Por tanto, se realiza
nuevamente el Experimento 1 incorporando una condición de paro basada en umbral, con el objetivo
de detener el proceso de sintonización del modelo PCNN y, consecuentemente, reducir el tiempo de
cómputo sin disminuir el desempeño de segmentación.

La condición de paro basada en umbral le indica al algoritmo evolutivo finalizar si la diferencia


absoluta de la función de costo entre la generación actual y una generación anterior es menor a un
umbral θ durante un número de generaciones consecutivas, lo cual se expresa como:

Detener si |f (t − 1) − f (t)| < θ durante 0.1 × Gmax (5.1)


5. Resultados 83

0.0251189
Promedio de la población
Mejor individuo
1.8

1.5
Mediana de la función XB

Mediana de la función XB
1

0.5

0 0.0223872
5 10 15 20 25 30 35 40 45 50

Número de generaciones

Figura 5.4: Resultados de convergencia del algoritmo DE-SPCNN1-XB durante 50 generaciones,


donde cada punto representa la mediana de 31 ejecuciones independientes.

donde Gmax es el máximo número de generaciones y el umbral θ = {0.001, 0.01, 0.1}.

Tabla 5.4: Resultados estadísticos del algoritmo DE-SPCNN1-XB con parámetros fijos de W = 2,
n = 2 y condición de paro para diferentes umbrales θ.
Mediana MAD Valor p
θ ARI NMI Tiempo (s) ARI NMI Tiempo (s) ARI/NMI/Tiempo
– 0.772 0.668 4.817 0.130 0.141 0.140 0.8892
0.1 0.772 0.670 0.713 0.127 0.143 0.041 0.949
0.01 0.771 0.668 0.710 0.127 0.141 0.039 <0.001
0.001 0.772 0.668 0.713 0.128 0.142 0.046

En la Tabla 5.4 se muestran los resultados estadísticos del Experimento 1 al incorporar la condición
de paro basada en umbrales. El primer renglón de la Tabla 5.4 muestra los resultados del desempeño
de segmentación y tiempo de cómputo sin considerar la condición de paro, es decir, se ejecutan las
50 generaciones del algoritmo evolutivo. De acuerdo con la prueba de Kruskal-Wallis, la mediana
del desempeño de segmentación entre los diferentes umbrales no presenta cambios significativos con
la opción sin umbral (p>0.05). Contrariamente, el tiempo de cómputo se reduce significativamente
84 5.1. Experimento 1

(p<0.001) si se considera la condición de paro. Para los tres umbrales evaluados, el desempeño
de segmentación y el tiempo de cómputo es similar. En la Tabla 5.5 se muestran el número de
generaciones ejecutadas al considerar los diferentes umbrales. Nótese que el número de generaciones
se reduce de 50 a 7, reflejándose en el tiempo de cómputo con una disminución de 4.817 a 0.713
segundos para el algoritmo DE-SPCNN1-XB.

Tabla 5.5: Resultados estadísticos del número de generaciones utilizando la condición de paro basada
en umbral θ.
Estadístico θ = 0.1 θ = 0.01 θ = 0.001
Mediana 7 7 7
MAD 0 0 0

Debido a que el desempeño de segmentación no presenta cambios significativos para los diferentes
umbrales evaluados, el método propuesto en esta tesis es la versión DE-SPCNN1-XB con umbral de
paro θ = 0.1 y parámetros fijos W = 2 y n = 2.

5.1.5 Resultados subjetivos

En cuanto a los resultados de segmentación subjetivos del Experimento 1 se tiene que las variantes
con función de costo CH tienden a presentar sobre-segmentación (over-segmentation); este fenómeno
ocurre cuando un objeto segmentado sobrepasa sus límites naturales, tomando píxeles del fondo
como parte del objeto. En el caso de las variantes con función de costo DB acontece lo contrario,
tienden a presentar una baja-segmentación (under-segmentation), la cual ocurre cuando el método
de segmentación no es capaz de segmentar el objeto completamente, de modo que píxeles del objeto
son etiquetados como fondo. Las variantes con función de costo PBM, logran segmentar de manera
aceptable algunas de las imágenes, aunque para algunas otras presenta baja-segmentación, mientras
que las variantes con función de costo XB logran segmentar la mayoría de las imágenes reales de
manera aceptable en comparación con las otras variantes con diferente funciones de costo.
5. Resultados 85

Imagen  Original   Referencia     DE-­‐SPCNN1-­‐CH   DE-­‐SPCNN1-­‐DB   DE-­‐SPCNN1-­‐PBM   DE-­‐SPCNN1-­‐XB  


a)

b)

c)

d)

Figura 5.5: Resultados de segmentación del algoritmo DE con la red SPCNN1 variando la función
de costo (CH, DB, PBM, XB), al segmentar las imágenes: a) flores, b) polilla, c) helicópteros y d)
isla.

Estas observaciones se ilustran en la Figura 5.5, donde se muestran algunos ejemplos de los
resultados de segmentación obtenidos a partir de la variante DE-SPCNN1-CVI, donde CVI representa
a cada uno de los cuatro CVI considerados.

5.2 Experimento 2

El Experimento 2 consiste en evaluar el algoritmo DE-SPCNN1-XB utilizando el conjunto de


243 imágenes simuladas. Este experimento tiene la finalidad de determinar los alcances y limitantes
en el desempeño de segmentación utilizando imágenes con características controladas, las cuales
86 5.2. Experimento 2

incluyen objetos de forma regular e irregular y variaciones en la iluminación, contraste, brillo y


ruido. Este análisis permitirá identificar las propiedades de la imagen que favorecen o empobrecen el
desempeño de segmentación del algoritmo propuesto. Asimismo, se realiza un análisis del desempeño
de segmentación en función de la calidad de la imagen. Finalmente, se realiza un análisis de formas
que permitirá inferir si la forma del objeto de interés en la imagen influye en la segmentación.

5.2.1 Desempeño de segmentación

Los resultados de segmentación obtenidos con el algoritmo DE-SPCNN1-XB usando el conjunto


de imágenes simuladas con formas de objetos regulares e irregulares se muestran en las Figuras 5.6
y 5.7, respectivamente. De acuerdo a la nomenclatura usada para denotar a un tipo de imagen
simulada (ver Capítulo 4, Sección 4.3.2), éstas se encuentran ordenadas del peor al mejor desempeño
en relación a los índices ARI y NMI. Asimismo, para cada tipo de brillo (Bb, Bm y Ba) existe un rango
de ocho niveles de intensidad, de modo que cada punto en el gráfico representa la mediana. Nótese
que el desempeño de segmentación del algoritmo propuesto evaluado sobre el conjunto de imágenes
simuladas con formas regulares e irregulares siguen una tendencia similar, aunque para el conjunto
de imágenes regulares se obtiene mayor dispersión (líneas verticales) en comparación con el conjunto
de imágenes con forma irregular. Para ambos tipos de formas, se observa que la mayor dispersión se
produce en la transición entre “malas” (ARI<0.1) y “buenas” (ARI>0.9) segmentaciones, indicando
que existe mayor consistencia cuando se logra segmentar adecuadamente la imagen o cuando no es
capaz de segmentarla.

Asimismo, tomando los valores de ARI>0.7 se tiene que para imágenes con formas regulares el
algoritmo logra segmentar 110 de 243 imágenes, mientras que para el conjunto de imágenes con
formas irregulares logra segmentar 96 de 243 imágenes.

Resultados similares observados con el índice ARI se obtienen con el índice NMI mostrados en
las Figuras 5.8 y 5.9 para objetos regulares e irregulares, respectivamente.
5. Resultados 87

0.8

0.6
ARI

0.4

0.2

0
R64CbIaNaBb

R16CbIaNaBb

R16CbIbNbBb

R16CaIaNbBb

R64CaIbNaBb
R16CaIaNaBm

R16CaIaNbBm

R16CmIaNaBa

R32CbIaNbBm

R16CbIaNmBb

R16CaImNbBa

R32CbIbNmBb

R64CbImNbBb

R64CaIaNmBb

R16CaIbNaBm

R32CmIbNaBa

R64CmIbNaBa

R16CaIbNmBb

R32CaIbNmBa

R64CaIbNmBa
R64CbImNaBm

R32CmIaNbBm

R16CmImNaBb

R64CmIaNmBb

R32CaImNaBm
Figura 5.6: Resultados de desempeño de segmentación en términos del índice ARI obtenidos a partir
de conjuntos de imágenes simuladas con objetos regulares. Los círculos señalan el valor de mediana
del rango de intensidad del brillo y las líneas verticales representan el valor MAD.

0.8

0.6
ARI

0.4

0.2

0
R16CmImNaBm
R16CbIaNbBa

R32CbIaNbBa

R64CbIaNbBb

R32CbIbNaBa

R64CaIbNaBa
R16CbIaNbBm

R16CmIaNbBb

R32CmIaNbBa

R32CbIaNmBa

R32CbImNaBb

R64CaIaNaBm

R64CbIbNmBa

R32CaImNaBb

R32CaImNbBb

R32CaIbNmBb

R64CaIbNbBm
R32CaImNaBm

R16CbImNmBb

R32CbIbNmBm

R16CmIbNaBm

R16CmImNbBb

R32CaImNaBm

R32CmImNbBb

R64CmIbNaBm

Figura 5.7: Resultados de desempeño de segmentación en términos del índice ARI obtenidos a partir
de conjuntos de imágenes simuladas con objetos irregulares. Los círculos señalan el valor de mediana
del rango de intensidad del brillo y las líneas verticales representan el valor MAD.
88 5.2. Experimento 2

Estos resultados experimentales indican que el desempeño de segmentación varía con respecto a
las características propias de la imagen, es decir, cambios de iluminación, contraste, brillo y ruido. En
particular, el contraste del objeto y la iluminación juegan un papel muy importante en el desempeño
de segmentación. Si el contraste del objeto no es notable con respecto de su fondo y existe un fuerte
gradiente de iluminación, el método propuesto es incapaz de lograr una segmentación adecuada.

0.8

0.6
NMI

0.4

0.2

0
R64CbIaNaBb

R16CbIaNaBb

R16CbIbNbBb

R16CaIaNbBb

R64CaIbNaBb
R16CaIaNaBm

R16CaIaNbBm

R16CmIaNaBa

R32CbIaNbBm

R16CbIaNmBb

R16CaImNbBa

R32CbIbNmBb

R64CbImNbBb

R64CaIaNmBb

R16CaIbNaBm

R32CmIbNaBa

R64CmIbNaBa

R16CaIbNmBb

R32CaIbNmBa

R64CaIbNmBa
R64CbImNaBm

R32CmIaNbBm

R16CmImNaBb

R64CmIaNmBb

R32CaImNaBm

Figura 5.8: Resultados de desempeño de segmentación en términos del índice NMI obtenidos a partir
de conjuntos de imágenes simuladas con objetos regulares. Los círculos señalan el valor de mediana
del rango de intensidad del brillo y las líneas verticales representan el valor MAD.

5.2.2 Calidad de imagen

Para relacionar el desempeño de segmentación con la calidad de la imagen, se utiliza el índice BIQI
(blind image quality index) para cuantificar la calidad de la imagen en relación a sus características
de intensidad. La Figura 5.10 muestra la tendencia que siguen las imágenes simuladas en relación al
índice BIQI. Se observa que la calidad de la imagen es dependiente de las características de intensidad
e independiente de la forma de los objetos. Para imágenes que presentan mayormente iluminación
5. Resultados 89

0.8

0.6
NMI

0.4

0.2

0
R16CmImNaBm
R16CbIaNbBa

R32CbIaNbBa

R64CbIaNbBb

R32CbIbNaBa

R64CaIbNaBa
R16CbIaNbBm

R16CmIaNbBb

R32CmIaNbBa

R32CbIaNmBa

R32CbImNaBb

R64CaIaNaBm

R64CbIbNmBa

R32CaImNaBb

R32CaImNbBb

R32CaIbNmBb

R64CaIbNbBm
R32CaImNaBm

R16CbImNmBb

R32CbIbNmBm

R16CmIbNaBm

R16CmImNbBb

R32CaImNaBm

R32CmImNbBb

R64CmIbNaBm
Figura 5.9: Resultados de desempeño de segmentación en términos del índice NMI obtenidos a partir
de conjuntos de imágenes simuladas con objetos irregulares. Los círculos señalan el valor de mediana
del rango de intensidad del brillo y las líneas verticales representan el valor MAD.

heterogénea, contraste bajo y potencia de ruido alta, el índice BIQI presenta valores cercanos a 100,
mientras que para imágenes con iluminación más homogénea, contraste alto, y baja potencia de
ruido, el índice BIQI presenta valores bajos. En la Figura 5.11 se muestran ejemplos de imágenes
simuladas con buena y mala calidad de acuerdo al índice BIQI.

En la Figura 5.12 se muestra el desempeño de segmentación en función de la calidad de imagen


para formas regulares e irregulares. Solo se considera el índice ARI, ya que el índice NMI tiene un
comportamiento similar. Independientemente de la forma de los objetos en la imagen, se observa
que el desempeño de segmentación está estrechamente relacionado con la calidad de la imagen, ya
que mientras la calidad de la imagen tiende a degradarse (BIQI → 100) el valor de desempeño de
segmentación tiende a disminuir (ARI → 0).

Por brevedad de este capítulo, en el Apéndice A se muestra un análisis más detallado del
desempeño de segmentación en función de la calidad de imagen para cada característica simulada.
90 5.2. Experimento 2

100

90

80
BIQI

70

60

Formas regulares
50
Formas irregulares
Regresión lineal de formas regulares
Regresión lineal de formas irregulares

40
R64CaImNmBm

R64CmImNaBm

R32CmImNaBm

R16CbImNmBm
R64CaIbNbBb

R64CbIbNbBb

R64CbIaNaBa
R32CaIbNbBm

R32CbIbNbBm

R16CmIbNaBb

R16CbIbNmBb

R16CaImNaBa

R32CbImNbBb

R32CbIaNmBa

R16CaIaNbBm

R64CbIaNaBm
R64CmIbNmBb

R32CmIbNmBa

R16CmIbNmBb

R32CaImNbBm

R64CaImNmBa

R64CmImNbBa

R32CbImNbBm

R16CbImNbBm

R16CmIaNaBm
Figura 5.10: Cuantificación de la calidad de las imágenes simuladas con el índice BIQI.

a) b)

Figura 5.11: Diferentes calidades de imágenes simuladas (R64CaIbNbBb, R32CbImNbBa), a) imagen


de alta calidad con un valor de BIQI=59 (desempeño ARI=0.997) y b) imagen de baja calidad con
un valor de BIQI=96 (desempeño ARI=0.003).
5. Resultados 91

Calidad en imágenes con formas regulares Calidad en imágenes con formas irregulares
1 1

0.8 0.8

0.6 0.6
ARI

ARI
0.4 0.4

0.2 0.2

0 0
40 50 60 70 80 90 100 40 50 60 70 80 90 100

BIQI BIQI

Figura 5.12: Desempeño de segmentación (ARI) en función de la calidad de imagen (BIQI) para
formas regulares (izquierda) e irregulares (derecha).

5.2.3 Formas de los objetos

Esta subsección tiene como objetivo cuantificar el desempeño de segmentación del algoritmo DE-
SPCNN1-XB al segmentar imágenes de objetos con formas regulares e irregulares, caracterizadas por
poseer bordes redondeados y espiculares, respectivamente. En ese sentido, la Tabla 5.6 muestra los
resultados de segmentación obtenidos a partir del conjunto de imágenes simuladas.

Tabla 5.6: Desempeño de segmentación del algoritmo DE-SPCNN1-XB usando el conjunto de


imágenes simuladas con objetos de formas regulares e irregulares.
Mediana MAD Valor p
Forma ARI NMI Tiempo (s) ARI NMI Tiempo (s) ARI/NMI
Regular 0.486 0.457 9.479 0.483 0.455 0.280 0.029
Irregular 0.237 0.243 9.883 0.234 0.243 0.371 0.003

La prueba de Wilcoxon aplicada al conjunto de imágenes con formas regulares e irregulares obtiene
un valor p < 0.05, indicando que hay diferencia significativa entre las medianas de los grupos. Este
resultado sugiere que la forma del objeto influye en el desempeño de segmentación, ya que los valores
92 5.2. Experimento 2

de ARI y NMI son mayores en objetos con formas regulares que en objetos irregulares. Esto indica
que el método segmenta adecuadamente la forma general de los objetos y pierde exactitud en la
segmentación de detalles finos, por ejemplo, las puntas de las estrellas de los objetos irregulares.
Por otro lado, se observa que el tiempo de cómputo es ligeramente superior cuando se segmentan
imágenes con objetos irregulares.

Por tanto, de acuerdo a los resultados obtenidos por el algoritmo DE-SPCNN1-XB se deduce lo
siguiente:

Alcances:
El algoritmo propuesto presenta un desempeño de segmentación aceptable para imágenes con
brillo moderado, objetos con alto y medio contraste, con iluminación relativamente homogénea,
baja potencia de ruido y objetos notables en relación al tamaño total de la imagen.

Limitaciones:
El algoritmo propuesto muestra deficiencias al segmentar imágenes con mucho o poco brillo,
objetos de bajo contraste, iluminación heterogénea, potencia de ruido alta y objetos pequeños.
Asimismo, no es capaz de segmentar detalles finos en las formas de los objetos.

5.2.4 Preprocesamiento de la imagen

En los experimentos anteriores, el desempeño de segmentación se evaluó sobre imágenes


originales que no habían pasado por una etapa de preprocesamiento, ya que se quería observar
el comportamiento real del método sin ninguna influencia externa. Sin embargo, en muchos procesos
de análisis de imágenes es recomendable aplicar una etapa de preprocesamiento de la imagen para
mejorar el desempeño de etapas subsecuentes.

La etapa de preprocesamiento debe ajustarse a las características de la imagen de entrada y


generalmente involucra la reducción de ruido y el mejoramiento del contraste. De este modo, el
método de segmentación puede detectar con mayor exactitud los objetos de interés.
5. Resultados 93

Con el objetivo de mejorar el desempeño de segmentación del método propuesto, se aplica una
etapa de preprocesamiento en imágenes donde el método fue incapaz de segmentarlas correctamente.
Para esta prueba se utiliza un subconjunto imágenes simuladas con brillo y contrastes bajos, cuyas
características generales se muestran en la Tabla 5.7. Además se consideraron objetos con formas
regulares e irregulares.

Tabla 5.7: Características de intensidad limitantes para el algoritmo DE-SPCNN1-XB.


Radio Contraste Iluminación Ruido
R64 Cb Ia Na
R64 Cb Im Na
R64 Cb Ib Na
R64 Cb Ia Nm
R64 Cb Im Nm
R64 Cb Ib Nm
R64 Cb Ia Nb
R64 Cb Im Nb
R64 Cb Ib Nb

Se diseñó una etapa de preprocesamiento específico para las imágenes con características de
intensidad mostradas en la Tabla 5.7, el cual involucra los siguientes pasos:

Ajuste de contraste con el algoritmo de ecualización adaptativa del histograma limitado por
contaste (CLAHE) [57], con ocho regiones contextuales (4 x 4) y nivel de clip de 0.5.

Reducción de ruido con un filtro de mediana de tamaño 9 x 9.

Corrección de iluminación con la transformada Bottom-hat utilizando un elemento


estructurante cuadrado de 128 x 128 píxeles.

Las Tablas 5.8 y 5.9 muestran los resultados del desempeño de segmentación con el subconjunto
de imágenes simuladas para las formas regulares e irregulares considerando los valores de ARI y NMI
para las imágenes originales y con preprocesamiento.
94 5.3. Experimento 3

Tabla 5.8: Desempeño de segmentación del algoritmo DE-SPCNN1-XB para imágenes con objetos
de formas regulares.
Mediana MAD
Imagen ARI NMI ARI NMI
Original 0.014 0.042 0.012 0.038
Preprocesada 0.446 0.413 0.241 0.137

Tabla 5.9: Desempeño de segmentación del algoritmo DE-SPCNN1-XB para imágenes con objetos
con formas irregulares.
Mediana MAD
Imagen ARI NMI ARI NMI
Original 0.006 0.004 0.003 0.001
Preprocesada 0.795 0.654 0.062 0.085

Estos resultados señalan que al aplicar una etapa de preprocesamiento, el desempeño de


segmentación aumenta. De este modo, las limitaciones naturales del método de segmentación
propuesto pueden solventarse al preprocesar la imagen de entrada. En la Figura 5.13 se muestra un
ejemplo del preprocesamiento realizado a una imagen simulada con un objeto de forma irregular con
contraste y brillo bajo (R64CbImNaBb). Como se puede observar, en la imagen original difícilmente
se percibe el objeto de interés, de modo que no ha sido segmentado correctamente. Al aplicar la
etapa de preprocesamiento, el método propuesto logra segmentar el objeto de interés.

5.3 Experimento 3

El Experimento 3 consiste en comparar el algoritmo DE-SPCNN1-XB contra dos métodos de


la literatura, GA-SPCNN1-ENT y PSO-PCNN-ENT, haciendo uso del conjunto de imágenes reales.
De manera similar a los experimentos anteriores, cada imagen es segmentada 31 veces con el fin de
determinar estadísticamente el desempeño de segmentación. Ambos métodos de la literatura utilizan
la función de entropía como función de costo, de modo que también se evalúa su desempeño de
segmentación al sustituir la entropía por el índice XB.
5. Resultados 95

Figura 5.13: Ejemplo de segmentación en una imagen oscura de bajo contraste: (a) imagen original,
(b) segmentación sin preprocesamiento (ARI=0.0038 y NMI=0.003), (c) imagen preprocesada, y (d)
segmentación con preprocesamiento (ARI=0.804 y NMI=0.676).
96 5.3. Experimento 3

5.3.1 Comparación con otros métodos

El criterio fundamental de esta tesis es demostrar que el desempeño de segmentación de imágenes


mejora al sustituir la función de entropía por un CVI como función de costo para la sintonización
automática de los parámetros de la PCNN mediante una técnica de inteligencia computacional. Con
este propósito, el algoritmo propuesto DE-SPCNN1-XB, que utiliza el índice XB como función de
costo, se compara contra dos algoritmos de la literatura, uno basado en algoritmo genético (GA-
SPCNN1-ENT) [54] y otro basado en optimización por cúmulo de partículas (PSO-PCNN-ENT) [9],
los cuales utilizan como función de costo la entropía.

En este sentido, a continuación se muestran los resultados de la comparación del desempeño


de segmentación del algoritmo propuesto DE-SPCNN1-XB contra los métodos GA-SPCNN1-ENT y
PSO-PCNN-ENT; la evaluación se realiza de forma objetiva y subjetiva.

5.3.1.1. Comparación objetiva

En la Tabla 5.10 se muestran los resultados estadísticos de los tres métodos de segmentación
comparados, los cuales se aplicaron sobre el conjunto de imágenes reales. Es notable que el
algoritmo DE-SPCNN1-XB es superior a los algoritmos de la literatura en términos de ARI, NMI y
tiempo de cómputo. La prueba de Kruskal-Wallis indica que el desempeño de los tres métodos es
significativamente diferente (p<0.001) para los tres índices considerados. Esto confirma que el uso
de un CVI impacta positivamente en el desempeño de segmentación.

Tabla 5.10: Desempeño de segmentación de los algoritmos de la literatura y el algoritmo propuesto.


Mediana MAD Valor p
Variante
ARI NMI Tiempo (s) ARI NMI Tiempo (s) ARI/NMI/Tiempo
GA-SPCNN1-ENT 0.434 0.381 5.537 0.334 0.246 1.641 <0.001
PSO-PCNN-ENT 0.046 0.102 0.998 0.042 0.079 0.322 <0.001
DE-SPCNN1-XB 0.772 0.670 0.713 0.127 0.143 0.041 <0.001
5. Resultados 97

5.3.1.2. Comparación subjetiva

La Figura 5.14 muestra ejemplos de los resultados de segmentación obtenidos por los métodos
DE-SPCNN1-XB, GA-SPCNN1-ENT y PSO-PCNN-ENT. La primera columna muestra las cuatro
imágenes originales, donde los objetos de interés son: flores, polilla, helicópteros e isla. La segunda
columna muestra la imagen de referencia asociada a cada imagen original de tal forma que entre
más parecida sea la segmentación a la imagen de referencia mejor será su desempeño. Dado el
contexto anterior, las columnas tres, cuatro y cinco muestran las segmentaciones resultantes de los
tres algoritmos de segmentación comparados.

El algoritmo GA-SPCNN1-XB presenta segmentaciones similares a la imagen de referencia para


las imágenes b y c; sin embargo, en las imágenes a y d muestra una sobre-segmentación. El algoritmo
PSO-PCNN-ENT sobre-segmenta las cuatro imágenes, lo cual se refleja en valores bajos de ARI y
NMI. El algoritmo DE-SPCNN1-XB propuesto por esta tesis muestra resultados de segmentación
subjetiva más similar a la imagen de referencia para las cuatro imágenes consideradas.

5.3.2 Comparación de las funciones de costo

Con el fin de demostrar que el índice XB utilizado como función de costo mejora el desempeño
de segmentación de los dos algoritmos de la literatura, se realiza nuevamente el Experimento 3
sustituyendo la función de entropía por el índice XB. Los resultados del experimento se muestran en
la Tabla 5.11.

Tabla 5.11: Resultados comparativos de los algoritmos de la literatura al utilizar las funciones de
costo de entropía e índice XB.
Mediana MAD Valor p
Variante
ARI NMI ARI NMI ARI/NMI
GA-SPCNN1-ENT 0.4340 0.3815 0.3342 0.2462
<0.001
GA-SPCNN1-XB 0.5230 0.4308 0.2950 0.2354
PSO-PCNN-ENT 0.0462 0.1029 0.0425 0.0791
<0.001
PSO-PCNN-XB 0.7243 0.5968 0.1436 0.1589
98 5.3. Experimento 3

Imagen  Original   Referencia     GA-­‐SPCNN1-­‐ENT   PSO-­‐PCNN-­‐ENT   DE-­‐SPCNN1-­‐XB  


a)

b)

c)

d)

Figura 5.14: Comparación de las segmentaciones resultantes de los algoritmos GA-SPCNN1-ENT,


PSO-PCNN-ENT y DE-SPCNN1-XB. Las cuatro imágenes consideradas son: a) flores, b) polilla, c)
helicópteros y d) isla.

Nótese que el desempeño de segmentación aumentó en ambos algoritmos de la literatura al


utilizar el índice XB. Para el método basado en GA, el valor de mediana de ARI incrementó de 0.43
a 0.52 y NMI de 0.38 a 0.43. De manera similar, para el método basado en PSO, el valor de mediana
de ARI aumentó de 0.04 a 0.72 y NMI de 0.10 a 0.59. Además, la prueba de Wilcoxon indica que
existe diferencia significativa (p<0.001) al reemplazar las funciones de costo en los algoritmos de la
literatura.
5. Resultados 99

Estos resultados dan evidencia de que el desempeño de segmentación es adecuado cuando se


utiliza un CVI para evaluar la calidad de segmentación dentro de un esquema de sintonización de
parámetros de un modelo PCNN.
Por otro lado, comparando los resultados de los métodos de literatura utilizando el índice XB
con el algoritmo DE-SPCNN1-XB (Tablas 5.10 y 5.11), es notable que el método propuesto obtiene
mejor desempeño de segmentación con un costo computacional menor.

5.4 Resumen

En este capítulo se mostraron los resultados de los tres experimentos realizados. Mediante
el Experimento 1, se obtuvo el algoritmo de segmentación propuesto DE-SPCNN1-XB, el cuál
se eligió a partir de la comparación estadística del desempeño de segmentación de 48 variantes
candidatas. Los resultados del Experimento 2 mostraron los alcances y limitaciones del algoritmo
propuesto, encontrando como alcances que el algoritmo es adecuado para segmentar imágenes con
brillo moderado, objetos con alto y medio contraste, con iluminación relativamente homogénea,
baja potencia de ruido y objetos notables en relación al tamaño total de la imagen, mientras que
las limitaciones del algoritmo señalan deficiencias al segmentar imágenes con mucho o poco brillo,
objetos de bajo contraste, iluminación heterogénea, potencia de ruido alta y al objetos pequeños.
Por último, los resultados del Experimento 3, mostraron que el algoritmo DE-SPCNN1-XB obtuvo
un desempeño superior que dos algoritmos de la literatura, GA-SPCNN1-XB y PSO-PCNN-ENT.
Asimismo, se encontró que al sustituir la entropía como función de costo por el índice XB mejoró
significativamente el desempeño de segmentación de los dos algoritmos de la literatura.
Conclusiones y trabajo futuro
6
Este capítulo describe las conclusiones obtenidas del trabajo de investigación realizado, así como
el trabajo futuro con el fin de complementar este trabajo de tesis.

6.1 Conclusiones generales

Primeramente se encontró que el tipo de CVI impacta de manera sustancial en el desempeño de


segmentación, independientemente de la variante del algoritmo de evolución diferencial y del tipo
de modelo PCNN. Esto se debe a las diferencias en las relaciones de compacidad y separación de
grupos que cada CVI considera. Asimismo, de los cuatro tipos de CVIs que se probaron: Calinski-
Harabasz (índice CH), PBM (índice PBM), Davies-Bouldin (índice DB) y Xie-Beni (índice XB).
Se determinó que el índice XB resultó el más competitivo, ya que es capaz de guiar el proceso de
búsqueda del algoritmo DE hacia soluciones que mejoran el desempeño de segmentación. En segundo
lugar se ubicó el índice PBM, el cual obtuvo resultados aceptables, mientras que los índices CH y
DB obtuvieron los desempeños más bajos. Esto se debe principalmente a que los índices XB y PBM

101
102 6.1. Conclusiones generales

no tienen parámetros que varían durante el proceso de búsqueda, mientras que los índices CH y
DB tienen el parámetro del “número de elementos en el grupo”, el cual cambia constantemente a lo
largo del proceso evolutivo, ya que cada solución candidata genera diferente número de píxeles para
cada grupo. Por tanto, los índices XB y PBM tienen un comportamiento más estable que permite la
correcta discriminación de soluciones inferiores.

Por otra parte, la variante algorítmica seleccionada fue DE-SPCNN1-XB, debido a que el modelo
SPCNN1 posee una estructura más simple y el algoritmo DE no requiere de mecanismos de adaptación
para los parámetros de control, lo cual impacta en el tiempo de cómputo. Aunque se evaluaron
variantes más sofisticada del algoritmo DE para el problema de sintonización de la PCNN, el algoritmo
DE clásico es suficiente para cumplir con el objetivo.

Además, con el propósito de disminuir el tiempo de cómputo del algoritmo DE-SPCNN1-XB,


el número de parámetros a sintonizar del modelo SPCNN1 se puede reducir dejando valores fijos
en los parámetros que presentan mayor consistencia en ejecuciones independientes del algoritmo,
sin disminuir el desempeño de segmentación. En este sentido, el radio de enlace y el número de
iteraciones se dejaron fijos en W = 2 y n = 2, respectivamente, para el algoritmo propuesto.
También, al aplicar una condición de paro basada en umbral θ, se reduce el número de generaciones
de 50 a 7 generaciones, manteniendo el desempeño de segmentación del algoritmo (ARI=0.77) y
reduciendo significativamente (p<0.0001) el costo computacional de 4.81 a 0.71 segundos.

Dentro de los alcances y limitaciones del algoritmo DE-SPCNN1-XB se obtuvo lo siguiente:

El algoritmo de segmentación propuesto es capaz de segmentar imágenes con objetos notables


en relación al tamaño de la imagen y con características de intensidad como alto contraste,
baja cantidad de ruido, iluminación homogénea, y brillo moderado sin ser excesivamente oscuro
o claro. Asimismo, se identificó que el método es capaz de segmentar la forma general de los
objetos en la imagen, aunque no sus detalles finos.
6. Conclusiones y trabajo futuro 103

El desempeño del algoritmo propuesto está limitado en imágenes caracterizadas por su bajo
contraste y nivel de ruido alto. Asimismo, muestra dificultad para segmentar imágenes que
cuentan con iluminación heterogénea y brillo extremadamente oscuro o claro. Estas limitaciones
se deben a las propiedades de separabilidad y compacidad que mide un CVI, ya que trata de
satisfacer simultáneamente ambos criterios. Sin embargo, cuando la imagen presenta bajo
contraste, los niveles de gris de los objetos y su fondo tienen un fuerte traslape, de modo que
el CVI no logra discriminar soluciones inferiores. Para solventar esto, se recomienda aplicar
una etapa de preprocesamiento a la imagen de entrada, antes de realizar la segmentación. De
este modo se mejora la separabilidad de los niveles de intensidad entre los objetos y su fondo,
haciendo más homogéneas ambas regiones lo que impacta en la compacidad de los grupos.

Por último, los resultados obtenidos de la comparativa entre el algoritmo propuesto y dos
algoritmos de la literatura, indicaron que el algoritmo DE-SPCNN1-XB obtiene mejores resultados
de segmentación que los algoritmos GA-PCNN-ENT y PSO-SPCNN1-ENT, los cuales incluyen la
medida de entropía como función de costo. Inclusive, cuando se sustituye la función de entropía
por el índice XB, el desempeño de segmentación de ambos algoritmos de la literatura aumentó
notablemente. Esto se debe a que la función de entropía únicamente evalúa el traslape que existe
entre dos funciones de probabilidad, lo cual puede asociarse a la separabilidad de las distribuciones,
aunque no considera que las distribuciones sean lo más estrechas posible al mismo tiempo.

Por tanto, con base en los experimentos realizados se concluye que la hipótesis de investigación
es aceptada, comprobando que efectivamente el desempeño de segmentación mejora al sustituir al
criterio de entropía por un CVI como función de costo.

6.2 Contribuciones

La principal contribución de este trabajo de investigación es un método para la sintonización


automática de una PCNN basada en evolución diferencial que utiliza un CVI como función de costo.
104 6.3. Trabajo futuro

Este método mejoró las soluciones de segmentación obtenidas por otros métodos similares que utilizan
el criterio de entropía como función de costo.
Otra de las contribuciones al estado del arte es la evaluación de diversas variantes de algoritmos
de evolución diferencial (con parámetros dinámicos y autoadaptativos) que no se habían utilizado
para la sintonización de los parámetros de una PCNN para la segmentación de imágenes.
Asimismo, se publicó un artículo de conferencia producto de esta investigación, el cual lleva por
título “Automatic Tuning of the Pulse-Coupled Neural Network Using Differential Evolution for Image
Segmentation” y se presentó en el 8th Mexican Congress on Pattern Recognition. [58].

6.3 Trabajo futuro

El trabajo realizado mostró que el algoritmo DE-SPCNN1-XB logró obtener resultados aceptables
en cuanto a exactitud y precisión al segmentar un conjunto de imágenes del mundo real. Sin embargo,
sería interesante probar su desempeño de segmentación en otro tipo de imágenes, por ejemplo, en
imágenes médicas y evaluar su desempeño al compararlo contra otras técnicas empleadas para la
segmentación de imágenes médicas, con el fin de incluirlo en sistemas de diagnóstico computarizado.
Por otro lado, el algoritmo propuesto puede extenderse hacia otras áreas de reconocimiento de
patrones, visión por computadora y robótica, e inclusive puede explorarse la implementación en
hardware del método propuesto para aplicaciones que demandan velocidad de procesamiento.
A
Apéndice A
Alcances y limitaciones del algoritmo propuesto.

Este apéndice es un complemento de la Sección 5.2 Experimento 2, y muestra de manera gráfica


un análisis detallado del desempeño de segmentación en función de la calidad de imagen BIQI, para
cada característica simulada en el conjunto de imágenes con formas regulares e irregulares.

105
106

Calidad en imágenes con brillo bajo


1

0.8

0.6

ARI
0.4

0.2

0
40 50 60 70 80 90 100
BIQI
Calidad en imágenes con brillo medio
1

0.8

0.6

ARI
0.4

0.2

0
40 50 60 70 80 90 100
BIQI
Calidad en imágenes con brillo alto
1

0.8

0.6
ARI

0.4

0.2

0
40 50 60 70 80 90 100
BIQI

Figura A.1: Análisis de desempeño del algoritmo DE-SPCNN1-XB frente a características de brillo
bajo, medio y alto (Bb, Bm y Ba) en imágenes con formas regulares. El tamaño de las barras a la
izquierda ilustra la ocurrencia de imágenes para diferentes rangos de valores de ARI. Las gráficas a la
derecha realizan la comparación del desempeño de segmentación (ARI) contra la calidad de imagen
(BIQI), los círculos representa la mediana obtenida y la línea de color la regresión obtenida.
A. Apéndice A
Alcances y limitaciones del algoritmo propuesto. 107

Calidad en imágenes con contraste alto


1

0.8

0.6

ARI
0.4

0.2

0
40 50 60 70 80 90 100
BIQI
Calidad en imágenes con contraste medio
1

0.8

0.6

ARI
0.4

0.2

0
40 50 60 70 80 90 100
BIQI
Calidad en imágenes con contraste bajo
1

0.8

0.6
ARI

0.4

0.2

0
40 50 60 70 80 90 100
BIQI

Figura A.2: Análisis de desempeño del algoritmo DE-SPCNN1-XB frente a características de contraste
alto, medio y bajo (Ca, Cm y Cb) en imágenes con formas regulares. El tamaño de las barras a la
izquierda ilustra la ocurrencia de imágenes para diferentes rangos de valores de ARI. Las gráficas a la
derecha realizan la comparación del desempeño de segmentación (ARI) contra la calidad de imagen
(BIQI), los círculos representa la mediana obtenida y la línea de color la regresión obtenida.
108

Calidad en imágenes con iluminación baja


1

0.8

0.6

ARI
0.4

0.2

0
40 50 60 70 80 90 100
BIQI
Calidad en imágenes con iluminación media
1

0.8

0.6

ARI
0.4

0.2

0
40 50 60 70 80 90 100
BIQI
Calidad en imágenes con iluminación alta
1

0.8

0.6
ARI

0.4

0.2

0
40 50 60 70 80 90 100
BIQI

Figura A.3: Análisis de desempeño del algoritmo DE-SPCNN1-XB frente a características de


iluminación baja, media y alta (Ib, Im y Ia) en imágenes con formas regulares. El tamaño de las
barras a la izquierda ilustra la ocurrencia de imágenes para diferentes rangos de valores de ARI.
Las gráficas a la derecha realizan la comparación del desempeño de segmentación (ARI) contra la
calidad de imagen (BIQI), los círculos representa la mediana obtenida y la línea de color la regresión
obtenida.
A. Apéndice A
Alcances y limitaciones del algoritmo propuesto. 109

Calidad en imágenes con ruido bajo


1

0.8

0.6

ARI
0.4

0.2

0
40 50 60 70 80 90 100
BIQI
Calidad en imágenes con ruido medio
1

0.8

0.6

ARI
0.4

0.2

0
40 50 60 70 80 90 100
BIQI
Calidad en imágenes con ruido alto
1

0.8

0.6
ARI

0.4

0.2

0
40 50 60 70 80 90 100
BIQI

Figura A.4: Análisis de desempeño del algoritmo DE-SPCNN1-XB frente a características de ruido
bajo, medio y alto (Nb, Nm y Na) en imágenes con formas regulares. El tamaño de las barras a la
izquierda ilustra la ocurrencia de imágenes para diferentes rangos de valores de ARI. Las gráficas a la
derecha realizan la comparación del desempeño de segmentación (ARI) contra la calidad de imagen
(BIQI), los círculos representa la mediana obtenida y la línea de color la regresión obtenida.
110

Calidad en imágenes con objetos de tamaño grande


1

0.8

0.6

ARI
0.4

0.2

0
40 50 60 70 80 90 100
BIQI
Calidad en imágenes con objetos de tamaño medio
1

0.8

0.6

ARI
0.4

0.2

0
40 50 60 70 80 90 100
BIQI
Calidad en imágenes con objetos de tamaño pequeño
1

0.8

0.6
ARI

0.4

0.2

0
40 50 60 70 80 90 100
BIQI

Figura A.5: Análisis de desempeño del algoritmo DE-SPCNN1-XB frente a características de tamaño
grande, mediano y pequeño (Ra, Rm y Rb) en imágenes con formas regulares. El tamaño de las
barras a la izquierda ilustra la ocurrencia de imágenes para diferentes rangos de valores de ARI.
Las gráficas a la derecha realizan la comparación del desempeño de segmentación (ARI) contra la
calidad de imagen (BIQI), los círculos representa la mediana obtenida y la línea de color la regresión
obtenida.
A. Apéndice A
Alcances y limitaciones del algoritmo propuesto. 111

Calidad en imágenes con brillo bajo


1

0.8

0.6

ARI
0.4

0.2

0
40 50 60 70 80 90 100
BIQI
Calidad en imágenes con brillo medio
1

0.8

0.6

ARI
0.4

0.2

0
40 50 60 70 80 90 100
BIQI
Calidad en imágenes con brillo alto
1

0.8

0.6
ARI

0.4

0.2

0
40 50 60 70 80 90 100
BIQI

Figura A.6: Análisis de desempeño del algoritmo DE-SPCNN1-XB frente a características de brillo
bajo, medio y alto (Bb, Bm y Ba) en imágenes con formas irregulares. El tamaño de las barras a la
izquierda ilustra la ocurrencia de imágenes para diferentes rangos de valores de ARI. Las gráficas a la
derecha realizan la comparación del desempeño de segmentación (ARI) contra la calidad de imagen
(BIQI), los círculos representa la mediana obtenida y la línea de color la regresión obtenida.
112

Calidad en imágenes con contraste alto


1

0.8

0.6

ARI
0.4

0.2

0
40 50 60 70 80 90 100
BIQI
Calidad en imágenes con contraste medio
1

0.8

0.6

ARI
0.4

0.2

0
40 50 60 70 80 90 100
BIQI
Calidad en imágenes con contraste bajo
1

0.8

0.6
ARI

0.4

0.2

0
40 50 60 70 80 90 100
BIQI

Figura A.7: Análisis de desempeño del algoritmo DE-SPCNN1-XB frente a características de contraste
alto, medio y bajo (Ca, Cm y Cb) en imágenes con formas irregulares. El tamaño de las barras a la
izquierda ilustra la ocurrencia de imágenes para diferentes rangos de valores de ARI. Las gráficas a la
derecha realizan la comparación del desempeño de segmentación (ARI) contra la calidad de imagen
(BIQI), los círculos representa la mediana obtenida y la línea de color la regresión obtenida.
A. Apéndice A
Alcances y limitaciones del algoritmo propuesto. 113

Calidad en imágenes con iluminación baja


1

0.8

0.6

ARI
0.4

0.2

0
40 50 60 70 80 90 100
BIQI
Calidad en imágenes con iluminación media
1

0.8

0.6

ARI
0.4

0.2

0
40 50 60 70 80 90 100
BIQI
Calidad en imágenes con iluminación alta
1

0.8

0.6
ARI

0.4

0.2

0
40 50 60 70 80 90 100
BIQI

Figura A.8: Análisis de desempeño del algoritmo DE-SPCNN1-XB frente a características de


iluminación baja, media y alta (Ib, Im y Ia) en imágenes con formas irregulares. El tamaño de
las barras a la izquierda ilustra la ocurrencia de imágenes para diferentes rangos de valores de ARI.
Las gráficas a la derecha realizan la comparación del desempeño de segmentación (ARI) contra la
calidad de imagen (BIQI), los círculos representa la mediana obtenida y la línea de color la regresión
obtenida.
114

Calidad en imágenes con ruido bajo


1

0.8

0.6

ARI
0.4

0.2

0
40 50 60 70 80 90 100
BIQI
Calidad en imágenes con ruido medio
1

0.8

0.6
ARI
0.4

0.2

0
40 50 60 70 80 90 100
BIQI
Calidad en imágenes con ruido alto
1

0.8

0.6
ARI

0.4

0.2

0
40 50 60 70 80 90 100
BIQI

Figura A.9: Análisis de desempeño del algoritmo DE-SPCNN1-XB frente a características de ruido
bajo, medio y alto (Nb, Nm y Na) en imágenes con formas irregulares. El tamaño de las barras a la
izquierda ilustra la ocurrencia de imágenes para diferentes rangos de valores de ARI. Las gráficas a la
derecha realizan la comparación del desempeño de segmentación (ARI) contra la calidad de imagen
(BIQI), los círculos representa la mediana obtenida y la línea de color la regresión obtenida.
A. Apéndice A
Alcances y limitaciones del algoritmo propuesto. 115

Calidad en imágenes con objetos de tamaño grande


1

0.8

0.6

ARI
0.4

0.2

0
40 50 60 70 80 90 100
BIQI
Calidad en imágenes con objetos de tamaño medio
1

0.8

0.6

ARI
0.4

0.2

0
40 50 60 70 80 90 100
BIQI
Calidad en imágenes con objetos de tamaño pequeño
1

0.8

0.6
ARI

0.4

0.2

0
40 50 60 70 80 90 100
BIQI

Figura A.10: Análisis de desempeño del algoritmo DE-SPCNN1-XB frente a características de tamaño
grande, mediano y pequeño (Ra, Rm y Rb) en imágenes con formas irregulares. El tamaño de las
barras a la izquierda ilustra la ocurrencia de imágenes para diferentes rangos de valores de ARI.
Las gráficas a la derecha realizan la comparación del desempeño de segmentación (ARI) contra la
calidad de imagen (BIQI), los círculos representa la mediana obtenida y la línea de color la regresión
obtenida.
Bibliografía

[1] J. Canny, “A computational approach to edge detection,” IEEE Transactions on Pattern Analysis
and Machine Intelligence, vol. PAMI-8, pp. 679–698, Nov 1986.

[2] N. Otsu, “A threshold selection method from gray-level histograms,” IEEE Transactions on
Systems Man and Cybernetics, vol. 9, pp. 62–66, Jan 1979.

[3] M. Kass, A. Witkin, and D. Terzopoulos, “Snakes: Active contour models,” International Journal
of Computer Vision, vol. 1, no. 4, pp. 321–331, 1988.

[4] J. K. T. Lindblad, Image Processing Using Pulse-Coupled Neural Networks, vol. 1. Springer
Berlin Heidelberg, 2005.

[5] Z. W. Yide Ma, Kun Zhan, Application of Pulse-Coupled Neural Networks, vol. 1. Springer
Berlin Heidelberg, 2010.

[6] E. Aceves and W. Gómez, “Breast ultrasound segmentation using evolutionary pulse-coupled
neural network,” XXIII Congresso Brasileiro em Engenharia Biomédica, vol. 23, pp. 922–926,
2012.

[7] Z. Wang, Y. Ma, F. Cheng, and L. Yang, “Review of pulse-coupled neural networks,” Image and
Vision Computing, vol. 28, no. 1, pp. 5–13, 2010.

[8] A. P. Engelbrecht, Computational Intelligence: An Introduction. Wiley Publishing, 2nd ed.,


2007.

[9] X. Xu, S. Ding, Z. Shi, H. Zhu, and Z. Zhao, “Particle swarm optimization for automatic
parameters determination of pulse coupled neural network,” Journal of Computers, vol. 6, no. 8,
pp. 1546–1553, 2011.

117
118 BIBLIOGRAFÍA

[10] S. D. Han Zhao, “Study of automated pcnn system based on fruit on fly optimization algorithm,”
Journal of Computational Information System, vol. 10, no. 15, p. 1553–9105, 2014.

[11] Y. Liao, P. Zhang, Q. Guo, and J. Wan, “Pcnn document segmentation method based on
bacterial foraging optimization algorithm,” vol. 9159, pp. 91591T–91591T–7, SPIE Proceedings,
2014.

[12] R. Edmondson, M. Rodgers, and M. Banish, “Using a genetic algorithm to find an optimized
pulse coupled neural network solution,” vol. 6979, pp. 69790M–69790M–9, SPIE Proceedings,
2008.

[13] X. Jiang, “A self-adapting pulse-coupled neural network based on modified differential evolution
algorithm and its application on image segmentation,” vol. 6, pp. 201–509, 2012.

[14] J. Vesterstrom and R. Thomsen, “A comparative study of differential evolution, particle swarm
optimization, and evolutionary algorithms on numerical benchmark problems,” in Congress on
Evolutionary Computation 2004. CEC2004, vol. 2, pp. 1980–1987, IEEE, June 2004.

[15] S. Wei, Q. Hong, and M. Hou, “Automatic image segmentation based on pcnn with adaptive
threshold time constant,” Neurocomputing, vol. 74, no. 9, pp. 1485–1491, 2011.

[16] J. Zhang and A. Sanderson, “Jade: Adaptive differential evolution with optional external archive,”
IEEE Transactions on Evolutionary Computation, vol. 13, pp. 945–958, Oct 2009.

[17] A. Qin, V. Huang, and P. Suganthan, “Differential evolution algorithm with strategy adaptation
for global numerical optimization,” IEEE Transactions on Evolutionary Computation, vol. 13,
pp. 398–417, April 2009.

[18] J. Kapur, P. Sahoo, and A. Wong, “A new method for gray-level picture thresholding using the
entropy of the histogram,” Computer Vision, Graphics, and Image Processing, vol. 29, no. 3,
pp. 273–285, 1985.
BIBLIOGRAFÍA 119

[19] Z. Tao, X. Tang, B. Zhang, P. Tang, and Y. Tan, “Image segmentation based on pcnn model,”
in 2014 11th International Computer Conference on Wavelet Active Media Technology and
Information Processing (ICCWAMTIP), pp. 230–233, IEEE, Dec 2014.

[20] J. Johnson and M. Padgett, “Pcnn models and applications,” IEEE Transactions on Neural
Networks, vol. 10, pp. 480–498, May 1999.

[21] L. Chen and X. Gu, “Pcnn-based image segmentation with contoured product mutual information
criterion,” in 2012 International Conference on Information Science and Technology (ICIST),
pp. 9–14, IEEE, March 2012.

[22] U. Ekblad, J. M. Kinser, J. Atmer, and N. Zetterlund, “The intersecting cortical model in image
processing,” Nuclear Instruments and Methods in Physics Research Section A: Accelerators,
Spectrometers, Detectors and Associated Equipment, vol. 525, no. 1-2, pp. 392–396, 2004.

[23] D. Chen and T. Xu, “Multi-scale image segmentation algorithm based on spcnn and contourlet,”
in IEEE International Conference on Intelligent Computing and Intelligent Systems, 2009. ICIS
2009., vol. 4, pp. 435–439, IEEE, Nov 2009.

[24] X. Liu and T. Xiang, “Fusion of visible and infrared images based on spiking cortical model in
nonsubsampled contourlet transform domain,” in 2014 7th International Congress on Image and
Signal Processing (CISP), pp. 747–753, IEEE, Oct 2014.

[25] Y. Chen, S.-K. Park, Y. Ma, and R. Ala, “A new automatic parameter setting method of
a simplified pcnn for image segmentation,” IEEE Transactions on Neural Networks, vol. 22,
pp. 880–892, June 2011.

[26] L. Bao, D. Zhao, and D. Zhou, “Image fusion algorithm based on m-pcnn,” in 2010 Second
International Workshop on Education Technology and Computer Science (ETCS), vol. 2,
pp. 235–238, IEEE, March 2010.
120 BIBLIOGRAFÍA

[27] Z. Li, Y. Jiang, J. Yue, J. Fang, Z. Fu, and D. Li, “A new hybrid pcnn for multi-objects image
segmentation,” in 2012 Asia-Pacific, Signal Information Processing Association Annual Summit
and Conference (APSIPA ASC), pp. 1–6, IEEE, Dec 2012.

[28] D. Zhou, H. Zhou, C. Gao, and Y. Guo, “Simplified parameters model of pcnn and its application
to image segmentation,” Pattern Analysis and Applications, pp. 1–13, 2015.

[29] H. Li, H. Zhou, Y. Chen, and X. Shi, “Image segmentation by using grayscale iteration threshold
pulse couple neural network,” in 2010 2nd International Conference on Information Engineering
and Computer Science (ICIECS), pp. 1–4, IEEE, Dec 2010.

[30] J. Pu, H. Zhang, and X. Huang, “Segmentation of fmri using pulse-coupled neural network
with kernel pca,” in IEEE International Conference on Robotics and Biomimetics, 2007. ROBIO
2007., pp. 1782–1787, IEEE, Dec 2007.

[31] Y. Xue and S. X. Yang, Artificial Neural Networks: Biological Inspirations - ICANN 2005:
15th International Conference, Warsaw, Poland, September 11-15, 2005. Proceedings, Part I,
ch. Image Segmentation Using Watershed Transform and Feed-Back Pulse Coupled Neural
Network, pp. 531–536. Springer Berlin Heidelberg, 2005.

[32] A. E. Hassanien and J. M. Ali, “Digital mammogram segmentation algorithm using pulse coupled
neural networks,” in Third International Conference on Image and Graphics (ICIG’04), pp. 92–
95, IEEE, Dec 2004.

[33] S. Yin-Mao, Z. Xiao-Hui, and L. Guo-le, “One segmentation algorithm of multi-target image
based on improved pcnn,” in 2010 2nd International Workshop on Intelligent Systems and
Applications (ISA), pp. 1–4, IEEE, May 2010.
BIBLIOGRAFÍA 121

[34] K. Gao, M. Dong, F. Jia, and M. Gao, “Otsu image segmentation algorithm with immune
computation optimized pcnn parameters,” in 2012 Spring Congress on Engineering and
Technology (S-CET), pp. 1–4, IEEE, May 2012.

[35] J. Li, B. Zou, L. Ding, and X. Gao, “Image segmentation with pcnn model and immune
algorithm,” Journal of Computers, vol. 8, no. 9, pp. 2429–2436, 2013.

[36] L. Benasla, A. Belmadani, and M. Rahli, “Spiral optimization algorithm for solving combined
economic and emission dispatch,” International Journal of Electrical Power Energy Systems,
vol. 62, pp. 163–174, 2014.

[37] L. Man, S. Li, X. Wang, Y. Yu, and S. Lu, “A novel method of image segmentation based
on pcnn with spiral optimization,” in 2014 12th International Conference on Signal Processing
(ICSP), pp. 703–708, IEEE, Oct 2014.

[38] Z. Xiao, J. Shi, and Q. Chang, “Image segmentation with simplified pcnn,” in 2nd International
Congress on Image and Signal Processing, 2009. CISP ’09., pp. 1–4, IEEE, Oct 2009.

[39] D. Chen and T. Xu, “Multi-scale image segmentation algorithm based on spcnn and contourlet,”
in IEEE International Conference on Intelligent Computing and Intelligent Systems, 2009. ICIS
2009., vol. 4, pp. 435–439, IEEE, Nov 2009.

[40] K. Price, R. Storn, and J. Lampinen, Differential Evolution: A Practical Approach to Global
Optimization, vol. 1 of Natural Computing Series. Springer Verlag, 2005.

[41] S. Das, A. Abraham, and A. Konar, “Particle swarm optimization and differential evolution
algorithms: Technical analysis, applications and hybridization perspectives,” in Advances of
Computational Intelligence in Industrial Systems, vol. 116 of Studies in Computational
Intelligence, pp. 1–38, Springer Berlin Heidelberg, 2008.
122 BIBLIOGRAFÍA

[42] A. José-García and W. Gómez-Flores, “Automatic clustering using nature-inspired


metaheuristics: A survey,” Applied Soft Computing, vol. 41, pp. 192–213, 2016.

[43] T. CaliAski and J. Harabasz, “A dendrite method for cluster analysis,” Communications in
Statistics, vol. 3, no. 1, pp. 1–27, 1974.

[44] U. Maulik and S. Bandyopadhyay, “Performance evaluation of some clustering algorithms and
validity indices,” IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 24,
pp. 1650–1654, Dec 2002.

[45] D. L. Davies and D. W. Bouldin, “A cluster separation measure,” IEEE Transactions on Pattern
Analysis and Machine Intelligence, vol. PAMI-1, pp. 224–227, April 1979.

[46] X. L. Xie and G. Beni, “A validity measure for fuzzy clustering,” IEEE Transactions on Pattern
Analysis and Machine Intelligence, vol. 13, pp. 841–847, Aug 1991.

[47] K. Y. Yeung, K. Y. Yeung, W. L. Ruzzo, and W. L. Ruzzo, “An empirical study on principal
component analysis for clustering gene expression data,” Bioinformatics, vol. 17, pp. 763–774,
2001.

[48] A. Strehl and J. Ghosh, “Cluster ensembles - a knowledge reuse framework for combining multiple
partitions,” J. Mach. Learn. Res., vol. 3, pp. 583–617, Mar. 2003.

[49] A. K. Moorthy and A. C. Bovik, “A two-step framework for constructing blind image quality
indices,” IEEE Signal Processing Letters, vol. 17, pp. 513–516, May 2010.

[50] W. H. Kruskal and W. A. Wallis, “Use of ranks in one-criterion variance analysis,” Journal of
the American Statistical Association, vol. 47, no. 260, pp. 583–621, 1952.

[51] J. M. Bland and D. G. Altman, “Multiple significance tests: the bonferroni method,” BMJ,
vol. 310, no. 6973, p. 170, 1995.
BIBLIOGRAFÍA 123

[52] F. Wilcoxon, “Individual comparisons by ranking methods,” Biometrics Bulletin, vol. 1, no. 6,
pp. 80–83, 1945.

[53] W. Gómez, W. Pereira, and A. Infantosi, “Evolutionary pulse-coupled neural network for
segmenting breast lesions on ultrasonography,” Neurocomputing, vol. 175, Part B, pp. 877–
887, 2016.

[54] Y. Ma and C. Qi, “Study of automated pcnn system based on genetic algorithm,” Journal of
system simulation, vol. 18, no. 3, pp. 722–725, 2006.

[55] R. Unnikrishnan, C. Pantofaru, and M. Hebert, “Toward objective evaluation of image


segmentation algorithms,” IEEE Transactions on Pattern Analysis and Machine Intelligence,
vol. 29, pp. 929–944, June 2007.

[56] R. Gonzalez and R. Woods, Digital Image Processing, vol. 3. Pearson/Prentice Hall, 2008.

[57] K. Zuiderveld, “Graphics gems iv,” ch. Contrast Limited Adaptive Histogram Equalization,
pp. 474–485, Academic Press Professional, Inc., 1994.

[58] J. Hernández and W. Gómez, Automatic Tuning of the Pulse-Coupled Neural Network Using
Differential Evolution for Image Segmentation, vol. 9703, pp. 157–166. Springer International
Publishing, 2016.

También podría gustarte