Flórez Revuelta, Francisco - RUA

Anuncio
Modelo de representación y
procesamiento de movimiento para
diseño de arquitecturas de tiempo real
especializadas
Francisco Flórez Revuelta
Tesis de Doctorado
Facultad:
Escuela Politécnica Superior
Director:
Dr. Juan Manuel García Chamizo
2001
Tesis Doctoral
Modelo de representación y
procesamiento de movimiento
para diseño de arquitecturas
de tiempo real especializadas
Francisco Flórez Revuelta
Tesis Doctoral
Modelo de representación y
procesamiento de movimiento
para diseño de arquitecturas
de tiempo real especializadas
presentada por:
Francisco Flórez Revuelta
dirigida por:
Dr. Juan Manuel García Chamizo
Programa de Doctorado
“Sistemas industriales, computación y reconocimiento
de formas”
Departamento de Tecnología Informática y
Computación
UNIVERSIDAD DE ALICANTE
Diciembre, 2001
Para la Ichi y
Mari Pulgui
AGRADECIMIENTOS
Al ponerme a escribir estas páginas me surgen algunas preguntas
para determinar quién me ayudó a realizar este trabajo. ¿Cuándo
comencé a escribir esta tesis? ¿Por qué este trabajo? ¿Cuándo di
con la solución? ¿Qué me llevó a ella? Ni yo mismo sé cuándo di
por iniciada la tesis. ¿Quizás cuando acabé los cursos de
doctorado? ¿Quizás al empezar el proyecto fin de carrera? Es
probable que antes. Muchas personas han pasado por mi lado
durante todo este tiempo. Tantas, importantes, que es muy fácil
dejar en el olvido a alguna.
En primer lugar, a mi mujer Icíar y mi hija María. Vuestro apoyo
y cariño es lo más importante, nada tiene valor sin ellos. Estos
últimos meses han sido de los más duros en mi vida, teniendo
que estar tanto tiempo separado de vosotras, sabiendo que
estabais disfrutando la una de la otra, llegando a casa para que
me contarais qué habíais hecho. A partir de ahora, volveréis a ser
el centro de mi vida. Os necesito. Os quiero.
A mis padres y a Nane. Podríamos decir que éste es el final de mi
etapa de estudiante. Sin vuestro esfuerzo y apoyo no hubiera
llegado a ningún lugar. Ahora me toca a mí, enseñar a María, los
valores que me inculcasteis y educarla como vosotros habéis
hecho conmigo. Os quiero.
Aunque en la portada aparece únicamente mi nombre, este
trabajo no sería el que es sin la ayuda, el apoyo, los consejos, las
AGRADECIMIENTOS
VIII
revisiones, las regañinas,... de Juanma. Has cumplido mucho
más allá de lo asociado con tu papel de tutor. Muchísimas
gracias.
A José Luis y Jero, compañeros de instituto, de universidad, de
piso, de trabajo,... Pero, ante todo, amigos. ¡Cuántos días juntos!
¡Cuántas vivencias! Recordaba hace poco, aquellos días del
verano del 93, contigo, Jero, y tu viejo 8086, descubriendo las
redes neuronales, intentando reconocer varias letras con una red
de propagación contraria. ¡Qué cosas! ¿No tendríamos nada más
que hacer?
A mis colaboradores en la etapa final del trabajo, Pepe y Antonio;
que me ayudaron en la realización de experimentos,
comprobación de resultados, redacción y verificación del
documento,...
A la gente del departamento, Paco, Andrés, Antonio, Ginés, Joan
Carles, Toni, María Teresa, Sergio, Javi, Paco Mora, Higinio, Dani;
por compartir conmigo trabajos, charlas, cafés, fútbol,...
A Ramón, Otto, Domingo, Sco, Faraón, Rosana y resto de gente
de i3a, con quienes compartí los inicios de esta tesis. Muchas de
las ideas de este trabajo, parten de conversaciones con vosotros.
A Rafa, Pablo, María José, Asun, Maribel, Cande, Andrés, Carlos,
Manolo, Tía Lola, María Dolores (sí, ya la acabé), Ángel, Marta,
Christian, Laura, Javi, Marta, José Manuel, Yoli, Josele, María
José, José Antonio, Mari, Ángel, Andrés, Rosa, Enrique,
Armando, José Manuel,...
A todos aquellos que dejo en el olvido.
A todos. Gracias.
Paco
Alicante, a 1 de Noviembre de 2001
RESUMEN
La investigación realizada aborda el problema del seguimiento de
objetos y análisis del movimiento en escenas. Este trabajo se
enmarca dentro del proyecto de investigación “Sistema de visión
para navegación autónoma” (CICYT TAP98-0333-C03-03). El
objetivo principal de este proyecto es el desarrollo de un
dispositivo de visión artificial para la ayuda a la navegación
autónoma.
Dado que se plantea la integración del módulo de procesamiento
de visión en el dispositivo, es necesario dotar a este último de
potencia computacional suficiente para procesar las imágenes a
frecuencia de video. Este hecho establece la necesidad de diseñar
arquitecturas de alto rendimiento, con capacidad de refinamiento
de la respuesta en función del tiempo disponible, especializadas
para los problemas de visión; todo ello con enfoque de
miniaturización y empotrabilidad. Para una mejor comprensión
del problema y cómo abordarlo, se han revisado numerosos
trabajos relacionados con él y se han considerado los diversos
enfoques de la visión activa.
Se ha propuesto el empleo de redes neuronales autoorganizativas para la representación de los objetos, por su
cualidad de preservadoras de la topología, lo que proporciona el
Grafo Preservador de la Topología ( GPT ). El mismo tiene alta
X
RESUMEN
capacidad expresiva, es sencillo de obtener, y resulta robusto. Se
aporta, asimismo, una técnica de síntesis de los objetos a partir
de dicha representación. Las características que se extraen del
GPT
simplifican
las
operaciones
de
clasificación
y
reconocimiento posteriores al evitar la alta complejidad de la
comparación entre grafos. Como ejemplo de aplicación de la
caracterización de los objetos, se propone un problema de
clasificación de formas a partir de su contorno.
El modelo de caracterización de los objetos permite refinar la
calidad de representación en función del tiempo disponible para
su cálculo, de modo que sirva como base para el diseño de
arquitecturas de visión de alto rendimiento que operen bajo
restricciones de tiempo real.
Se extiende la aplicación de los GPT
al tratamiento de
secuencias de imágenes y, más concretamente, al seguimiento de
objetos y análisis del movimiento. Debido al carácter dinámico de
estas redes, se modeliza la evolución de los objetos como las
modificaciones que sufre la red a lo largo de toda la secuencia,
entendiendo dichas modificaciones como variaciones en la
topología de la red de interconexión. La modelización del
movimiento como la dinámica de las neuronas, evita el problema
de correspondencia, uno de los más costosos en la mayoría de
técnicas de seguimiento de objetos. Para comprobar sus
prestaciones, se aplica al reconocimiento de gestos de la mano.
Aunque no ha sido destacado especialmente en la memoria, este
modelo permite la caracterización y seguimiento de múltiples
objetos presentes en la escena. Asimismo, se puede realizar el
seguimiento de un objeto que se disgregue en varias partes o que
se fusione.
La propuesta es suficientemente generalista para dar cobertura a
técnicas de tratamiento de una amplia diversidad de problemas
de visión; si bien, por cuestiones de extensión del trabajo, la
investigación se ha concretado en establecer la base conceptual
sobre la que después se materializarán las arquitecturas.
ABSTRACT
The research performed approaches the problems of tracking
objects and motion analysis in scenes. This work belongs to the
research project “Sistema de visión para navegación autónoma”
(CICYT TAP98-0333-C03-03). The main goal of this project is the
development of an artificial vision device for the aid to
autonomous navigation.
Since we are considering to integrate the vision processing
module into the device, it is necessary to give to this one enough
computational power to process the images at video rates. This
fact establishes the necessity to design high performance
architectures, with capacity of answer refinement of the answer
based on the availability of time, specialized for vision problems;
with miniaturization and empotrability approach. For a better
understanding of the problem and how to approach it, we have
reviewed a great deal of related works, considering the different
approaches of active vision.
We have proposed the use of self-organizing neural networks to
represent the objects, due to its quality of topology preservation,
which provides the Topology Preserving Graph ( GPT ). This one
has a high expresive capacity, it is simple to obtain and it is
robust. We contributed, also, a synthesis of synthesis of the
objects from this representation. Features that are extracted from
the GPT simplify the later operations of classification and
recognition, avoiding the high complexity of comparisons between
XII
ABSTRACT
graphs. As an example of the aplication of the characterization of
objects, we present the problem of shape classification from its
contour.
The model of characterization of the objects allows to refine the
quality of the representation based on the time available for its
calculation, so that it will be the basis for the design of high
performance realtime vision architectures.
We extend the application of the GPT to the processing of image
sequences and, particularly, to tracking objects and motion
analysis. Due to the dynamic character of these networks, we
model the evolution of the objects as the changes that the
network suffers throughout the sequence, understanding these
changes as variations in the topology of the interconnection
network. Modelling motion as neuron dynamics
avoids
correspondence problem, one of the most expensive in tracking
techniques. In order to verify the model, we apply it to the
problem of hand gesture recognition.
Although it has not been specially outstanding in this document,
this model allows the characterization and tracking of multiple
objects in the scene. Also, it can perform the tracking of an object
that disgregates in several parts or that merges.
The proposal is generalist enough to cover processing techniques
of a wide diversity of vision problems; although, by work
extension, the research has been focused in establishing the
conceptual basis on which the architectures will be developped.
CONTENIDO
AGRADECIMIENTOS................................................................................. VII
RESUMEN .......................................................................................................IX
ABSTRACT .....................................................................................................XI
CONTENIDO ...............................................................................................XIII
INDICE DE FIGURAS ................................................................................. XV
INDICE DE TABLAS .................................................................................. XIX
INTRODUCCIÓN: OBJETIVOS Y ESTADO DEL ARTE........................ 21
1.1 MOTIVACIÓN Y OBJETIVOS ....................................................................... 22
1.2 ESTADO DEL ARTE .................................................................................... 26
1.3 PROPUESTA DE SOLUCIÓN ......................................................................... 40
MODELOS NEURONALES DE REPRESENTACIÓN.............................. 45
2.1 REDES AUTO-ORGANIZATIVAS .................................................................. 46
2.2 GASES NEURONALES ................................................................................. 50
2.3 PRESERVACIÓN DE LA TOPOLOGÍA ............................................................ 57
2.4 INCORPORACIÓN DE RESTRICCIONES DE TIEMPO REAL .............................. 61
2.5 CONCLUSIONES......................................................................................... 69
XIV
CONTENIDO
REPRESENTACIÓN Y CARACTERIZACIÓN DE OBJETOS ............... 71
3.1 REPRESENTACIÓN DE UN OBJETO 2D CON UN GAS NEURONAL .................. 72
3.2 APLICACIÓN AL ANÁLISIS DE IMÁGENES ................................................... 75
3.3 APLICACIÓN A LA SÍNTESIS DE IMÁGENES ................................................. 92
3.4 EJEMPLO DE APLICACIÓN: CLASIFICACIÓN DE OBJETOS ............................ 94
3.5 CONCLUSIONES......................................................................................... 99
SEGUIMIENTO DE OBJETOS Y ANÁLISIS DEL MOVIMIENTO..... 103
4.1 SEGUIMIENTO DE OBJETOS...................................................................... 104
4.2 ANÁLISIS DEL MOVIMIENTO.................................................................... 108
4.3 EJEMPLO DE APLICACIÓN: RECONOCIMIENTO DE GESTOS ....................... 111
4.4 CONCLUSIONES....................................................................................... 124
CONCLUSIONES ......................................................................................... 127
5.1 APORTACIONES ...................................................................................... 128
5.2 LÍNEAS DE CONTINUACIÓN ..................................................................... 130
ESTUDIO DE LA PRESERVACIÓN DE LA TOPOLOGÍA................... 133
REFERENCIAS ............................................................................................ 143
INDICE DE FIGURAS
Figura 1.1.
Arquitecturas en malla.
31
Figura 2.1.
Inserción de neuronas durante el aprendizaje de la
Growing Cell Structure.
49
División de la red GCS en varias subredes al eliminar
neuronas.
50
Estados inicial, intermedio y final del aprendizaje de la
Neural Gas.
51
Estados inicial, intermedio y final del aprendizaje de la
Growing Neural Gas.
53
Figura 2.5.
Triangulación de Delaunay inducida
58
Figura 2.6.
Adaptación de diversos modelos auto-organizativos a un
espacio de entrada.
59
Comparación del error de cuantización entre mapas de
Kohonen y Neural Gas.
60
Figura 2.8.
Adaptación incompleta de la Neural Gas.
61
Figura 2.9.
Adaptación de la Growing Neural Gas con límites de
tiempo.
64
Adaptación de la Growing Neural Gas modificando el
número de patrones por iteración λ.
65
Adaptación de la Growing Neural Gas modificando el
número de neuronas insertadas por iteración.
67
Figura 2.2.
Figura 2.3.
Figura 2.4.
Figura 2.7.
Figura 2.10.
Figura 2.11.
INDICE DE FIGURAS
XVI
Figura 2.12.
Figura 3.1.
Figura 3.2.
Adaptación de la Growing Neural Gas completando la red
una vez finalizado el tiempo.
68
Descripción global del sistema de obtención del Grafo
Preservador de la Topología de un objeto.
74
Diferentes adaptaciones del gas neuronal a un mismo
objeto.
74
GPT del contorno de un objeto.
Figura 3.3.
Extracción del
Figura 3.4.
Obtención de los diversos contornos de un objeto.
76
Figura 3.5.
Curvaturas de los contornos.
79
Figura 3.6.
Simplificación
esquinas.
del
76
GPT∇ mediante la detección de
80
GPT mediante la obtención de aristas.
Figura 3.7.
Simplificación del
80
Figura 3.8.
Firmas.
81
Figura 3.9.
Códigos de cadena.
81
Figura 3.10.
Grafos Preservadores de la Topología de diversos objetos
bidimensionales.
83
Figura 3.11.
Representación de varios objetos.
83
Figura 3.12.
Subgrafos del
GPT.
86
Figura 3.13.
Histograma de vecindad.
Figura 3.14.
Contorno del
Figura 3.15.
Diagrama de Voronoi del contorno del
Figura 3.16.
Esqueletos.
Figura 3.17.
Síntesis a partir de un
Figura 3.18.
Sistema de clasificación de formas.
95
Figura 3.19.
Obtención y simplificación del grafo del contorno.
96
Figura 3.20.
Clasificación de los objetos a partir del
Figura 3.21.
Clasificación de los objetos según su firma.
100
Figura 3.22.
Clasificación de los objetos según su curvatura.
101
Figura 4.1.
Etapas del problema del análisis del movimiento.
104
Figura 4.2.
Posición del
Figura 4.3.
Grados de libertad de la mano.
88
GPT.
91
GPT.
92
92
GPT.
94
GPT.
GPT antes de la predicción.
98
107
112
INDICE DE FIGURAS
XVII
Figura 4.4.
Localizaciones típicas de los puntos de interés de la mano.
115
Figura 4.5.
Sistema de reconocimiento de gestos.
116
Figura 4.6.
Adaptación de la Growing Neural Gas a diferentes
posturas de la mano.
117
Figura 4.7.
Extracción del radio estándar de la palma.
118
Figura 4.8.
Adaptación dinámica de las Growing Neural Gas a un
gesto completo.
119
Figura 4.9.
Normalización de las trayectorias del gesto.
121
Figura 4.10.
Posturas de la mano inicial y final de cada uno de los
gestos.
123
Figura A.1.
Vecindades en el espacio de entrada y en la red.
134
Figura A.2.
Espacios de entrada.
136
Figura A.3.
Distancia geodésica.
137
-
INDICE DE TABLAS
Tabla 2.1.
Tabla 2.2.
Tabla 2.3.
Tabla 2.4.
Tabla 2.5.
Tabla 2.6.
Tabla 3.1.
Tiempos de aprendizaje de los diferentes modelos autoorganizativos.
60
Cálculo del producto topográfico de Neural Gas con
distintas tmax.
62
Cálculo del producto topográfico de Growing Neural Gas
con restricciones temporales.
63
Cálculo del producto topográfico de Growing Neural Gas
(variación 1).
65
Cálculo del producto topográfico de Growing Neural Gas
insertando diferente número de neuronas (variación 2).
66
Cálculo del producto topográfico de Growing Neural Gas
completando la red una vez finalizado el aprendizaje
(variación 3).
68
Longitud, diámetro
contornos.
78
y
longitud
normalizada
de
los
Tabla 3.2.
Momentos de los contornos.
82
Tabla 3.3.
Información extraída del número y longitud de las aristas.
87
Tabla 3.4.
Información extraída de las vecindades.
88
Tabla 3.5.
Momentos del
Tabla 4.1.
Tasa de acierto en el reconocimiento.
GPT.
90
124
XX
INDICE DE TABLAS
Tabla A.1.
Cálculo de la preservación de la topología (100 neuronas).
138
Tabla A.2.
Tiempos de aprendizaje de los diferentes modelos autoorganizativos.
139
Preservación de la topología de la Neural Gas deteniendo
su aprendizaje a los 12 segundos.
140
Preservación de la topología de la Neural Gas modificando
sus parámetros para que finalice a los 12 segundos.
141
Tabla A.3.
Tabla A.4.
Capítulo 1
INTRODUCCIÓN: OBJETIVOS Y
ESTADO DEL ARTE
El contexto de la investigación que se recoge en esta memoria
tiene aspectos de motivación particular, otros de interés del
grupo de investigación y, los más, de naturaleza científica,
relacionados con el problema que se aborda y con el estado del
conocimiento en la materia.
En este primer capítulo se realiza una introducción al problema
del seguimiento de objetos y análisis del movimiento. Para una
mejor comprensión del problema y cómo abordarlo, se han
revisado numerosos trabajos relacionados con él y se han
considerado los diversos enfoques de la visión por computador y
de la visión activa en particular. Se ha profundizado en las
arquitecturas específicas de visión, revisando, particularmente,
las dedicadas al seguimiento de objetos y análisis del movimiento.
El interés de que el procesamiento sea consecuente con las
restricciones temporales es la razón de que también se haya
revisado el estado del arte de las arquitecturas de tiempo real.
CAPÍTULO 1
22
La reflexión que constituye este capítulo se completa con una
propuesta, a grandes rasgos, de resolución del problema que se
plantea. El resto de la memoria aborda detalladamente dicha
solución.
1.1 MOTIVACIÓN Y OBJETIVOS
OBJETIVOS
1.1.1 PRESENTACIÓN
Este trabajo se enmarca dentro del proyecto de investigación
“Sistema de visión para navegación autónoma” parcialmente
subvencionado por la CICYT (TAP98-0333-C03-03). El objetivo
principal de este proyecto es el desarrollo de un dispositivo de
visión artificial para la ayuda a la navegación autónoma. Se
pretende dotar al sistema de capacidades perceptuales de bajo y
medio nivel para la extracción e interpretación de información
acerca del entorno. El dispositivo de visión se considera como un
periférico inteligente que, a partir de las imágenes captadas, debe
proporcionar información elaborada. El módulo de procesamiento
de imagen proporciona filtros y algoritmia para realizar
operaciones de morfología matemática, segmentación de la
imagen, extracción de contornos, cálculo de invariantes,
tratamiento de incertidumbre, identificación de obstáculos,...
Entre otras tareas, se aborda el análisis de secuencias de
imágenes.
Dado que se plantea la integración del módulo de procesamiento
de visión en el dispositivo, es necesario dotar a este último de
potencia computacional suficiente para procesar las imágenes a
frecuencia de video. Este hecho sugiere la necesidad de diseñar
arquitecturas de alto rendimiento especializadas para los
problemas de visión. Se tiene interés, asimismo, en el desarrollo
de modelos de procesamiento en tiempo real, que aporten
capacidad de refinamiento en la respuesta en función del tiempo
disponible.
El tratamiento del procesamiento de tiempo real, en este
proyecto, se ha tratado a dos niveles: uno, general, a nivel de
procesamiento hardware (Mora, 2001); y éste, más específico, del
desarrollo de estructuras de datos sencillas para representar los
INTRODUCCIÓN: OBJETIVOS Y ESTADO DEL ARTE
23
objetos, cuyo traslado al diseño de arquitecturas especializadas
sea fácil y cuyo modo de operación contribuya a la rapidez del
sistema. La integración de ambos trabajos constituirá el prototipo
de un sistema integral de procesamiento especializado en visión,
a los niveles bajo y medio, con capacidad de operación en tiempo
real, de altas prestaciones, derivadas de la flexibilidad de gestión
de las restricciones temporales a varios niveles; con enfoque de
miniaturización y empotrabilidad.
En lo que resta de este primer capítulo se realiza una descripción
del problema, marcando los objetivos con los que debería
culminarse el trabajo. Se pasa, a continuación a revisar trabajos
relacionados con las arquitecturas de visión y de tiempo real.
Finalmente, a partir de las conclusiones extraídas de lo anterior,
se presenta una propuesta de solución basada en el modelado
conexionista.
En el capítulo 2 se revisan las redes neuronales autoorganizativas, estudiando su capacidad de preservación de la
topología. Finalmente, se modifican estos modelos para dotarlos
de capacidad de operación bajo restricciones de tiempo real.
En el capítulo 3, se desarrolla la idea de emplear estas redes
preservadoras de la topología para la representación de los
objetos. Se presenta, asimismo, una técnica de síntesis de los
mismos a partir de dicha representación. Como ejemplo de
aplicación de la caracterización de los objetos, se propone un
problema de clasificación de formas a partir de su contorno.
En el capítulo 4 se extiende el uso del modelo desarrollado para
dotarlo de capacidad de representación del movimiento, de modo
que se permita el seguimiento de objetos y el análisis de su
movimiento. Para comprobar la bondad del modelo, se aplica al
reconocimiento de gestos de la mano.
Finalmente, en el capítulo 5 se presentan las principales
conclusiones del trabajo y se plantean las líneas futuras de
investigación que surgen de él.
CAPÍTULO 1
24
1.1.2 OBJETIVOS: DESCRIPCIÓN DEL PROBLEMA
PROBLEMA
La navegación de robots basada en información visual requiere el
análisis de imágenes, con el objetivo de realizar tareas de todo
tipo, como son la detección del movimiento o la localización y
seguimiento de objetos. Por ello, el objetivo principal de este
trabajo es el diseño de un modelo de representación de los
objetos de una escena, así como de la descripción de su evolución
a lo largo del tiempo. Este modelo será la base del desarrollo de
arquitecturas de tiempo real especializadas en visión, por lo que
debe aportar una estructura de datos eficiente, robusta y de
sencilla implantación. Aunque el ámbito de aplicación del modelo
es amplio, se ha particularizado, en este trabajo, para los
problemas de seguimiento de objetos y análisis de su movimiento.
Existen diversos factores que determinan la dificultad en la
resolución del problema de seguimiento de objetos. Un aspecto
fundamental al desarrollar estructuras de representación de los
objetos es su forma. Los objetos pueden estar constituidos por
puntos, aristas, curvas o poseer una morfología libre, con el
consiguiente incremento de complejidad.
Por otro lado, la dificultad en el seguimiento de los objetos,
vendrá dada, principalmente, por la conducta de evolución de los
mismos. Esta puede ser originada por:
• cambios morfológicos: los objetos pueden desde ser
rígidos a presentar modificaciones en su forma, tan
extremas como su posible disgregación en diversos
elementos;
• cambios fotométricos: modificaciones en parámetros,
tales como la iluminación, afecta a la apariencia visual
que se tiene del objeto;
• desplazamientos y giros.
Usualmente los sistemas de seguimiento de objetos han estado
restringidos a objetos rígidos. Sin embargo, en la naturaleza la
mayor parte de elementos en movimiento (el latido de un corazón,
los ejercicios de un atleta, los movimientos de las nubes,...) no
cumplen esta restricción. Por esto, en los últimos años existe un
INTRODUCCIÓN: OBJETIVOS Y ESTADO DEL ARTE
25
creciente interés en el seguimiento de objetos con otros modos de
movimiento (Kambhamettu et al., 1998).
El número de objetos a seguir también influye en el desarrollo de
sistemas de seguimiento. Trabajar con múltiples objetos conlleva
la iniciación de las estructuras de representación de cada uno
ellos en lugares adecuados de la escena o la posibilidad de
división de una estructura original para poder representarlos a
todos. Además, los objetos pueden tener algún tipo de relación,
de modo que los movimientos de unos estén en concordancia con
movimientos de otros, o ser independientes.
Las características del entorno afectan considerablemente al
funcionamiento de los sistemas desarrollados. Cambios en la
iluminación, presencia de sombras,... crean incertidumbre que
debe ser manejada correctamente. Esto debe llevar al desarrollo
de sistemas robustos, que aporten información redundante, de
modo que se posibilite eliminación de incertidumbre, con el
inconveniente de un mayor coste computacional. Igualmente, un
entorno con múltiples objetos en la escena puede dificultar
considerablemente el seguimiento, ya que pueden poseer
características visuales similares a las de las entidades objeto de
interés, pueden producir oclusiones,...
Por otro lado, el seguimiento de los objetos forma parte de una
tarea de más alto nivel, el análisis o reconocimiento del
movimiento. Dentro de éste existen dos vertientes principales: el
análisis del movimiento basado en el reconocimiento y el
reconocimiento basado en el movimiento. El primero de ellos está
determinado por las diversas instancias que el objeto toma a lo
largo de la secuencia. Por otro lado, el reconocimiento basado en
el movimiento se fundamenta en el análisis de las trayectorias
realizadas por el objeto o por partes determinadas del mismo, sin
prestar atención al reconocimiento del objeto en cada momento.
Es decir, se realiza un uso directo de la información relativa al
movimiento de los objetos.
Con todas estas consideraciones, el objetivo principal de este
trabajo se sustenta en otras metas intermedias, como son:
CAPÍTULO 1
26
• Desarrollo de un modelo de representación de la
topología de los objetos con alta capacidad expresiva,
sencillo de obtener, robusto,...
• El modelo debe aportar una caracterización de los
objetos con diferente calidad en la respuesta en función
del tiempo disponible para su cálculo, de modo que sirva
como base para el diseño de arquitecturas de visión de
alto rendimiento que operen bajo restricciones de tiempo
real.
• Desarrollo de un modelo de representación del
movimiento que realice de forma sencilla el seguimiento
de los objetos y aporte información relevante para el
análisis de su movimiento, ya sea basado en el
reconocimiento o basado en el movimiento.
Para evaluar la capacidad de representación de los objetos, se
propone un problema de clasificación extrayendo información de
los contornos de los objetos. Por otro lado, para comprobar el
funcionamiento del modelo en el tratamiento de secuencias de
imágenes se plantea una aplicación habitual del análisis del
movimiento: el reconocimiento de gestos de la mano.
1.2 ESTADO DEL ARTE
En este apartado se realiza una revisión de aquellos trabajos que
por tener un fin similar al de esta tesis, pudieran servir como
base de discusión para desarrollar una solución al problema a
resolver. Para ello, se ha realizado una primera introducción a los
problemas de visión por computador y, en particular, al de visión
activa. Posteriormente se especifican las diversas técnicas de
seguimiento de objetos y análisis del movimiento.
Con el objetivo de profundizar en el conocimiento de los aspectos
relacionados con las arquitecturas de tiempo real especializadas
en visión, se ha pasado a revisar los trabajos relacionados con
éstas.
INTRODUCCIÓN: OBJETIVOS Y ESTADO DEL ARTE
27
1.2.1 VISIÓN POR COMPUTADOR
El objetivo de la visión por computador es extraer información
relevante a partir de señal electromagnética del especto visible,
que pueda ser percibida por sistemas artificiales. Como el ámbito
de la visión es tan amplio, y también lo es la cantidad de tareas,
así como su naturaleza y grado de complejidad, es difícil
establecer una clasificación. En su defecto, usualmente estas
tareas son englobadas en tres niveles de procesamiento: visión de
bajo nivel, de nivel medio y de nivel alto.
Hasta mediados de los 80, el enfoque constructivista pretendía
reconstruir completamente el mundo, a diversos niveles de
abstracción, identificando los objetos y sus posiciones,
obteniendo sus formas a partir de sus colores, sus sombras, su
movimiento, visión estéreo,... Una vez realizada esta
reconstrucción tridimensional del entorno, se podían realizar las
tareas de reconocimiento e interpretación (Marr, 1982).
La realidad del modesto éxito obtenido incorporó objetividad y
orientó el planteamiento hacia el enfoque de la visión activa
(Aloimonos et al., 1988) (Bajcsy, 1988) (Ballard, 1991), en el que
el procesamiento de visión está dirigido a la tarea a realizar: el
sistema de visión no es un observador pasivo, sino que adquiere
las imágenes de forma inteligente.
Esto conlleva que los sistemas de visión activa, basándose en la
realimentación de resultados previos, poseen la capacidad de
controlar los parámetros del dispositivo de visión, tales como
zoom, enfoque,...; así como de variar la resolución o la frecuencia
de captura de imágenes. Asimismo, puede ocurrir que sin
modificar estos parámetros, sí se modifique el modo en el que la
imagen es procesada posteriormente.
Tal y como se expresa en (Escolano, 1997), en un sistema de
visión activa, la percepción debe estar guiada por la acción. Un
sistema de visión activa no pretende reconstruir el mundo, sino
enfocar su atención para conseguir aquellas propiedades de la
imagen que sean necesarias para realizar una tarea determinada,
obteniendo sistemas más eficientes.
28
CAPÍTULO 1
En particular, respecto del análisis del movimiento, los autores
coinciden en que éste consiste, en primer lugar, en el seguimiento
de uno o más objetos y, posteriormente, en la caracterización del
movimiento realizado, de modo que pueda ser extraída la
estructura del objeto o se pueda realizar un reconocimiento
basado en el movimiento (Cédras y Shah, 1995). Las áreas de
aplicación del análisis del movimiento son muy diversas y abarca
la interpretación de gestos, sistemas de vigilancia, navegación de
robots y vehículos, análisis de imágenes médicas, biomecánica,
compresión de imágenes, video-conferencia,...
Recientemente, la atención ha ido dirigida, principalmente, al
tratamiento de movimiento no-rígido (Kambhamettu et al., 1994)
(Aggarwal et al., 1998), y particularmente al del movimiento
elástico, esto es, al movimiento no-rígido cuya única restricción
es un cierto grado de continuidad.
Entre las técnicas empleadas en el seguimiento de objetos, donde
más trabajo se está realizando en la actualidad, desde el punto de
vista algorítmico, es en el desarrollo de modelos de
representación autónomos o activos, que son empleados
principalmente en el tratamiento de movimiento no-rígido: snakes
(Kass et al., 1988) (Terzopoulos y Szelinski, 1992), plantillas
deformables (Yuille y Hallinan, 1992) (Escolano, 1997), splines
activos (Curwen y Blake, 1992), superficies activas (Cohen et al.,
1992), cubos activos (Bro-Nielsen, 1994), rayos activos (Denzler y
Niemann, 1999), formas activas (Cootes y Taylor, 1992),...
El análisis del movimiento basado en modelos es más limitado, ya
que requiere un conocimiento previo de las características de los
objetos, de modo que se pueda realizar un seguimiento de líneas,
puntos, regiones, etc. que se adapten al modelo (Harris, 1992)
(Aggarwal y Cai, 1999).
Asimismo, se ha realizado un importante trabajo en la extracción
de características más o menos simples (puntos de interés,
esquinas, aristas,...) y su seguimiento en cada una de las
imágenes de la secuencia (Sethi y Jain, 1987) (Brady y Wang,
1992) (Smith et al., 1999), mediante un proceso de
correspondencia, el cual presenta bastantes problemas y un alto
coste computacional (Zhang, 1993).
INTRODUCCIÓN: OBJETIVOS Y ESTADO DEL ARTE
29
Otra técnica muy empleada es la del flujo óptico. Esto es, el
cálculo de la velocidad de cada uno de los puntos de la imagen
entre un par consecutivo de imágenes (Beauchemin y Barron,
1995).
Por último, existen sistemas que, mediante un proceso de
correlación, intentan encontrar regiones similares en cada una de
las imágenes, de modo que se pueda realizar su seguimiento
(Pratt, 1990) (Eklund et al, 1994).
La mayor parte de estos trabajos se interesan principalmente en
proporcionar algoritmos que resuelvan los problemas de visión,
prescindiendo de incorporar los aspectos de rendimiento,
estructuración, tecnológicos, etc. como objetivos de su
investigación. Las soluciones aportadas requieren, en muchos
casos, potencias computacionales difícilmente viables en la
actualidad.
1.2.2 ARQUITECTURAS PARA PROCESAMIENTO
PROCESAMIENTO DE IMAGEN
IMAGEN
La visión por computador es uno de los campos de aplicación
más importantes de la computación paralela (McColl, 1993). Sin
embargo, para usos modestos y, sobre todo con fines de
prototipado, algunos autores han profundizado en sistemas
monoprocesadores.
El uso de sistemas RISC en problemas de visión es ampliamente
estudiado en (Baglietto et al, 1996), concluyendo que hasta que
no se desarrollen compiladores específicos para programas de
tratamiento de imágenes que generen código optimizado para
estas tareas, y aumente la velocidad de procesamiento de estas
arquitecturas, no se podrá lograr un procesamiento en tiempo
real de las imágenes.
Se han desarrollado sistemas de seguimiento de objetos y
detección del movimiento empleando snakes sobre estaciones de
trabajo UNIX estándar (Denzler y Niemann, 1995), sistemas de
detección y seguimiento de objetos y personas sobre
computadores personales Pentium (Fayman et al., 1995)
(Haritaoglu et al., 1998),...
30
CAPÍTULO 1
Con el objetivo de acelerar las tareas que requieren una gran
velocidad de cálculo, en los últimos años se han desarrollado
diferentes tarjetas aceleradoras de procesamiento de imagen de
alto rendimiento, que ofrecen tasas de respuesta similares a la
frecuencia de video. Estos sistemas tratan, en su mayoría,
problemas de visión de bajo nivel.
Las arquitecturas paralelas empleadas en el tratamiento de
imagen se basan esencialmente sobre dos principios (Charot,
1993): el tratamiento segmentado y el paralelismo de datos.
En líneas generales, las arquitecturas SIMD son apropiadas para
el procesamiento a bajo nivel, donde redes de elementos de
procesamiento pueden realizar de forma paralela idénticas
operaciones sobre diversas zonas de la imagen. Los
requerimientos del procesamiento a nivel medio sugieren la
aplicación de computadores MIMD de grano fino, aunque
también son de aplicación sistemas SIMD. Por último, para el
procesamiento de alto nivel se requiere una estructura flexible y
control distribuido para los cálculos y las comunicaciones, por lo
que los computadores MIMD de grano grueso son los que mejor
se adaptan.
Sin embargo, esta clasificación no es generalizada ya que existen
problemas en los que no está claro el uso de una arquitectura
específica (Armstrong et al., 1998), e incluso se añaden nuevas
arquitecturas (Rehfuss y Hammerstrom, 1997) basadas en
modelos SFMD y SPMD para cubrir el hueco existente entre las
arquitecturas SIMD y MIMD. Asimismo, el uso de arquitecturas
híbridas SIMD/MIMD (Helman y Jájá, 1995) permite salvar las
desventajas de modelos SIMD o MIMD independientes.
Se han realizado diversos estudios comparativos del
comportamiento de las diversas arquitecturas ante determinados
problemas de visión: morfología matemática (Theys, 1996),
correlación entre imágenes (Armstrong et al., 1998), operaciones
a bajo y medio nivel (Persa y Jonker, 2000b), histogramas (Bader
y Jájá, 1994), operaciones a todos los niveles (Ratha y
Jain,1999),...
Se han empleado tanto procesadores SIMD de propósito general
para el tratamiento de problemas de visión como nuevos
INTRODUCCIÓN: OBJETIVOS Y ESTADO DEL ARTE
31
procesadores paralelos desarrollados específicamente para estas
tareas. El trabajo a este nivel ha ido encaminado principalmente
a establecer una red de interconexión entre los elementos de
procesamiento adecuada para resolver un problema dado.
Las arquitecturas en malla 2D operan sobre toda la imagen en
paralelo, dividiéndola en zonas y repartiéndolas entre los
diferentes procesadores. Si se posee una red de n x n
procesadores y una imagen de m x m puntos, esa división puede
ser realizada de dos formas (Figura 1.1):
1. La imagen se subdivide en ventanas de tamaño n x n, de
modo que de forma secuencial se barre toda la imagen.
2. Cada procesador se encarga de ventanas de la imagen de
tamaño m/n x m/n.
Figura 1.1. Arquitecturas en malla.
Existen multitud de sistemas de visión basados en esta
arquitectura, como son MPP de Goodyear (Strong, 1991) y su
evolución Blitzen (Blevins et al., 1990), DAP de ICL (Parkinson y
Litt, 1990), GAPP desarrollado por NCR (Cloud, 1988), MP-1
(Blank, 1990) y MP-2 (Tuck y Kim, 1993) de MasPar, CM-2 de
Thinking Machines (TMC, 1987), PAPRICA (Broggi et al., 1994a),
S3PE (Komuro et al.,1997),...
32
CAPÍTULO 1
En el caso de red de interconexión lineal, la imagen es dividida en
regiones que se asocian a cada uno de los procesadores, que
suelen corresponder a una columna o a una fila de la imagen a
procesar.
Entre los procesadores lineales de tratamiento de imagen se
encuentran CLIP7 (Fountain et al., 1988), SLAP (Fisher et al.,
1988), la Princeton Engine (Chin et al., 1988), la Sarnoff Engine
(Knight et al., 1992) y PAPRICA3 (Broggi et al., 1994b) diseñado
como evolución de PAPRICA. Diversas comparaciones del
comportamiento de otros procesadores lineales (IMAP-VISION,
SYMPHONIE, CNAPS, HDPP, SRC-PIM) ante diversas operaciones
sobre imágenes se pueden encontrar en (van der Molen y Jonker,
1998) (Le et al., 1998).
Otro modo de interconectar los elementos de procesamiento es
mediante una estructura toroidal o helicoidal. Un ejemplo de
arquitectura SIMD toroidal es el toro polimórfico de IBM (Li y
Maresca, 1989), cuyos nodos poseen una red interna
programable, por lo que, en ocasiones, es considerada un
multiprocesador reconfigurable (Bhandarkar y Arabnia, 1997).
Un sistema toroidal que conecta FPGA’s formando un toroide
para realizar el procesamiento de la imagen es la máquina
reconfigurable PARTS (Woodfill y von Herzen, 1997).
Arquitecturas de procesadores SIMD en hipercubo son empleadas
en la Connection Machine (Little et al., 1987) y VisTA (Sunwoo y
Aggarwal, 1991).
Una de las arquitecturas más empleada en tratamiento de
imagen son los procesadores piramidales. Una estructura en
pirámide establece diversos niveles de representación de las
imágenes, de modo que éstas puedan ser tratadas con baja
resolución,
empleando
pocos
datos,
para
proceder
posteriormente, si es necesario, a un refinamiento y verificación
de los resultados a una mayor resolución. Esto aporta diversas
ventajas (Camus, 1994) (Prewer, 1995) como son: reducción del
coste de procesamiento, extracción de características globales de
la imagen, reducción de la complejidad de la comunicación entre
los procesadores,... Sin embargo, también existen desventajas
como la dificultad para su implementación VLSI, lo que hace que
INTRODUCCIÓN: OBJETIVOS Y ESTADO DEL ARTE
33
en muchas ocasiones algoritmos piramidales sean ejecutados en
arquitecturas hipercubo.
Una de las primeras arquitecturas piramidales fue PCLIP
(Tanimoto, 1984). Otros ejemplos son: GAM (Schaefer et al.,
1987), SPHINX (Mérigot et al., 1986), la pirámide del EGPA
(Fritsch, 1986), SCOOP (Barad, 1988), WPM (Nudd et al., 1989),
PAPIA (Cantoni et al., 1991) y su evolución PAPIA2 (Biancardi et
al., 1992).
Aunque todas las topologías revisadas son ampliamente
utilizadas en visión por computador, no se ha probado que
alguna de ellas sea capaz de resolver todos los problemas de
visión. Recientemente, están apareciendo multiprocesadores
reconfigurables que permiten modificar la topología de su red de
interconexión, los cuales para ser factibles deben poseer las
siguientes propiedades (Bhandarkar y Arabnia, 1997):
• los nodos deben poseer en cada momento un grado de
conectividad razonable y la red debe mantener un
diámetro bajo, para que los enlaces de comunicación no
crezcan rápidamente,
• el hardware y el algoritmo de reconfiguración deben
tener una complejidad baja para no ralentizar el sistema.
Dentro de estos procesadores reconfigurables se encuentran
algunos de los ejemplos ya expuestos de otras arquitecturas
como CLIP7, el toro polimórfico y el sistema piramidal PAPIA2; así
como nuevos sistemas como RBA (Miller et al., 1988), PARBS
(Wang et al., 1991), CRAPS (Kao et al., 1993), RMA (Miller et al.,
1993), RMRN (Bhandarkar y Arabnia, 1997), VFE-200
(Mandelbaum et al., 1998).
Las arquitecturas MIMD de grano medio y grano grueso son
adecuadas para el tratamiento de imagen a nivel medio y alto, ya
que estos problemas requieren la ejecución asíncrona de
múltiples tareas cooperantes. Los transputers han sido muy
empleados como bloques constituyentes en una arquitectura
MIMD, dando lugar a sistemas como las cabezas KTH (Uhlin et
al., 1995) y Yorick 11-20 (Sharkey et al., 1993). Entre las
máquinas MIMD que emplean DSP’s como elementos de
34
CAPÍTULO 1
procesamiento se encuentran HMFV (Du et al., 1996), la cabeza
Yorick 5-5C (Sharkey et al., 1995), la cabeza PennEyes (Cahn von
Seelen, 1997). Por otro lado, se encuentran también las
máquinas de flujo de datos como DFCC (Quénot y Zavidovique,
1992).
Muchos de los problemas de visión requieren un particular modo
de operación (SIMD o MIMD) para su ejecución. Una deficiencia
de las máquinas MIMD típicas, en comparación con los SIMD, es
que no proveen soporte para coordinación y sincronización entre
conjuntos de procesadores, por lo que para simular operaciones
SIMD, la sobrecarga en la comunicación puede ser mayor que el
tiempo de procesamiento de tareas de bajo nivel. Por ello, una
máquina que permita cambiar dinámicamente entre ambos
modos de paralelismo se adaptará mejor a la resolución de un
mayor número de tareas de visión. Ejemplos de arquitecturas
híbridas son NETRA (Choudhary et al., 1993), PASM (Siegel et al.,
1996), APVIS (Kim et al., 1998) que hace uso del procesador
SIMD MPA, Execube (Kogge, 1994), MeshSP (I.C.E., 1995), GCN
(Jonker, 1993), GFLOPS (Houzet y et al., 1991).
Una máquina híbrida de propósito general ampliamente utilizada
en procesamiento de imagen es CM-5 (Leiserson et al., 1994) que
amplía las anteriores máquinas de Connection Machine,
dotándolas de modo de procesamiento SPMD. Se ha empleado
para el cálculo de la transformada de Hough (Baumann y Ranka,
1992), detección de contornos, aproximación lineal y
reconocimiento de objetos (Prasanna et al., 1993),... Splash2
(Ratha y Jain, 1997), construida con FPGA’s, ha sido utilizada en
tareas de visión a todos los niveles: convoluciones, segmentación
de textos y reconocimiento de huellas (Ratha y Jain, 1999).
MORRPH (Drayer et al., 1995) emplea, asimismo, una malla de
FPGA’s que puede funcionar como máquina SIMD, MIMD o
segmentada.
Entre las máquinas segmentadas empleadas para tratamiento de
imagen se encuentran MITE (Kimmel et al., 1985), PIPE (Kent et
al., 1985), Acadia (van der Wal et al., 2000). El uso de DSP’s
como elementos de procesamiento en máquinas segmentadas se
ha extendido, dando lugar a máquinas como GPIP (Heada et al.,
1988), ISHTAR (Shiohara et al., 1993).
INTRODUCCIÓN: OBJETIVOS Y ESTADO DEL ARTE
35
Dentro de esta categoría también pueden ser incluidas aquellas
máquinas, que por realizar tareas de visión a varios niveles,
desde bajo a alto nivel, combinan diversos módulos con
arquitecturas SIMD y/o MIMD. Estos sistemas tienen como
objetivo el realizar un reconocimiento o clasificación de los
objetos, un seguimiento de los mismos, determinación de la
estructura a partir del movimiento, etc. Dentro de este tipo de
máquinas, los sistemas PARADOX (Brady y Wang, 1992), del
Surrey Attentive Robot (Pretlove y Parker, 1993), IUA (Weems et
al, 1989) y su evolución IUA2 (Weems, 1993), Vision Engine
(Little et al., 1991), del Fraunhoffer Institut-IITB de Karlsruhe y
del ENSPS de Estrasburgo (Hirsch, 1993), ESCHeR (Kuniyoshi et
al., 1995); combinan un módulo SIMD, ya sea una arquitectura
desarrollada específicamente o una tarjeta aceleradora de
propósito especial, para el tratamiento de las imágenes a bajo
nivel y una red de transputers o DSP’s (módulo MIMD) para un
procesamiento a más alto nivel.
1.2.3 ARQUITECTURAS PARA SECUENCIAS
SECUENCIAS DE IMÁGENES
Dado que el análisis del movimiento y, por tanto, del seguimiento
de objetos, incorpora operaciones de visión por computador a
todos los niveles, desde el bajo nivel (filtrados, flujo óptico,
correlaciones,...), pasando por el medio (segmentación,
parametrización de trayectorias,...) y hasta llegar al alto nivel
(estructura a partir del movimiento, reconocimiento basado en el
movimiento,...); una amplia mayoría de las arquitecturas
diseñadas específicamente con estos objetivos comprenden
diversos módulos que combinan estructuras SIMD y MIMD.
Hasta el presente, es escaso el desarrollo de arquitecturas
específicas. Cuando el objetivo es el desarrollo de una
arquitectura para ser incorporada en un sistema con altas
restricciones temporales, suelen emplearse tarjetas comerciales
para la aceleración de las tareas de bajo nivel. En otros casos, se
emplean arquitecturas de visión segmentadas compuestas de
máquinas SIMD y MIMD. En el menor número de casos, se
desarrollan arquitecturas específicas para el seguimiento de
objetos.
36
CAPÍTULO 1
La mayor parte de las propuestas emplean métodos basados en el
cálculo del flujo óptico para la tarea de seguimiento de objetos.
Estos sistemas comprenden dos partes: a bajo nivel, se realiza el
cálculo del flujo óptico a partir de una secuencia de imágenes
siguiendo alguna de las diversas técnicas para su obtención
(Beauchemin y Barron, 1995). A alto nivel, a partir de dicho flujo
óptico se obtienen medidas como posición del objeto en
movimiento, tiempo y dirección de impacto,... que permiten el
análisis del movimiento. Estas arquitecturas suelen emplear
transputers o DSP’s para todos los niveles de procesamiento (Mae
et al., 1994) (Mittal et al., 1995) (Röwekamp et al., 1997). En
aquellas arquitecturas que tienen en consideración los diversos
niveles de procesamiento, no se desarrollan arquitecturas a bajo
nivel sino que se emplean tarjetas comerciales (Tucakov et al.,
1996) (Rougeaux y Kuniyoshi, 1997).
Asimismo, existen multitud de soluciones basadas en la
correspondencia entre puntos de interés. La mayor parte de estos
sistemas sigue la misma filosofía: un módulo SIMD realiza las
tareas de procesamiento a bajo nivel para mejorar la calidad de la
imagen y un módulo MIMD, formado por transputers o DSPs,
realiza la extracción y el seguimiento de los puntos o
características de interés. Estos características suelen ser aristas
(Rygol et al., 1992) (Balkenius y Kopp, 1996) (Asaad et al., 1996),
esquinas (Brady y Wang, 1992) (Beymer et al., 1997) o puntos
significativos del objeto (Persa y Jonker, 2000a).
Otros autores realizan el seguimiento de los objetos mediante el
reconocimiento de puntos o regiones, obtenidas mediante la
aplicación a la imagen de operaciones de bajo nivel, como pueden
ser diferencias, operaciones de morfología matemática,...
Mediante técnicas de correlación o de reconocimiento de patrones
se localizan los objetos en cada una de las imágenes, para
realizar su posterior seguimiento (Bertozzi y Broggi, 1998)
(Castrillón et al., 1998) (Hernández et al., 1999). No existen
muchos sistemas basados en estas técnicas, ya que son bastante
limitadas. Además, la productividad de las arquitecturas
desarrolladas no es muy elevada.
Por otro lado, apenas existen arquitecturas desarrolladas
siguiendo las técnicas de representaciones activas, resaltándose
este hecho en la literatura (Denzler y Niemann, 1995). En
INTRODUCCIÓN: OBJETIVOS Y ESTADO DEL ARTE
37
(Curwen y Blake, 1992) se presenta una solución de los
contornos dinámicos basados en splines, donde una red de
transputers realiza la predicción de la nueva posición del
contorno, así como su adaptación a la posición correcta.
Recientemente, se han propuesto computadores en rejilla (Case et
al., 2001). Estas arquitecturas están formadas por elementos de
procesamiento que pretenden representar un espacio ndimensional, de modo que cada uno de ellos está colocado en un
punto del espacio, conectados entre sí por canales de
comunicación bidireccionales formando una rejilla. Este sistema
ha sido empleado para realizar el seguimiento de objetos con
movimiento uniforme, marcando aquellos elementos de
procesamiento en los que está situado el objeto (Shende, 1991).
Mediante comunicaciones bidireccionales entre procesadores
vecinos se indica la nueva posición del objeto, de modo que la
secuencia de procesadores activados determina el movimiento
seguido por el objeto.
1.2.4 ARQUITECTURAS DE TIEM
TIEMPO
PO REAL
Estas arquitecturas previas realizan su operación a altas
velocidades, de modo que pueden operar bajo las restricciones
temporales que introduce tener que procesar las imágenes a
frecuencia de video. Sin embargo, se echa en falta que ajusten
sus respuestas en función del tiempo disponible. Por ello, en este
punto se revisan los trabajos relacionados con el desarrollo de
arquitecturas de tiempo real.
La característica fundamental que distingue el procesamiento en
tiempo real de otros tipos de procesamiento es la duración de las
operaciones y las consecuencias que se derivan de ello (Stankovic
y Ramamritham, 1990) (Butazzo1997).
Diversos autores (Ramamritham et al., 1990) (Stankovic, 1992)
(Niehaus, 1994) (Weems y Dropsho, 1994) (Krishna y Shin, 1997)
encuentran en lo anterior la mayor dificultad para el desarrollo
de procesadores específicos para tiempo real: el objetivo principal
en la mayoría de los diseños de procesadores actuales es
maximizar el rendimiento medio de las operaciones, tolerándose
retrasos importantes si los eventos que los producen son poco
38
CAPÍTULO 1
probables. En cambio, en los sistemas de tiempo real se deben
asegurar las cotas máximas de los tiempos de ejecución. Esto
significa que una varianza potencialmente grande en los
rendimientos del procesador sitúa al peor caso en una cota
demasiado baja, reduciendo la capacidad global del procesador
para tiempo real en aras de garantizar el resultado en un tiempo
predeterminado. En definitiva, los procesadores adecuados para
tareas de tiempo real necesitan de hardware de alto rendimiento
en el que los tiempos de respuesta, en el peor caso, se aproximen
al caso promedio (Tokhi, 1998).
Algunos ejemplos extraídos de los diseños de procesadores
existentes en los que la predecibilidad en los tiempos de
respuesta se ve perjudicada (Niehaus, 1994) (Hennessy y
Patterson, 1996) (Tokhi, 1999) son los siguientes: los
encaminamientos de datos condicionales, que dependen de que
se haya predicho el cauce correcto o no (Knieser y Papachristou,
1992); las instrucciones de latencia variable, dependientes de la
naturaleza de los operandos (Atkins, 1991); los coprocesadores
asíncronos que tienen tiempos de comunicación variable (TI,
1991); las traducciones de las direcciones de memoria, acceso a
datos e instrucciones, sufren variaciones en los tiempos debido al
uso de buffers (TLB —Table Lookaside Buffer), (DEC, 1992)
(Thomson y Ryan, 1994).
Las implicaciones de los sistemas de tiempo real en el nivel del
procesador se concretan en aportar soluciones con respecto a la
predecibilidad y a la reducción de la inestabilidad temporal en la
ejecución de sus operaciones. Sin embargo, a estos niveles se
deja pendiente el desarrollo de esquemas de control sobre esta
incertidumbre temporal, que proporcionen al diseñador y
programador, elementos de ayuda para satisfacer las demandas
impuestas por estos sistemas, sin tener que sacrificar el
rendimiento del mismo.
El reflejo de esta situación se sustancia en las líneas actuales de
investigación en el terreno de los sistemas de tiempo real (Son,
1995) donde predominan, sin lugar a dudas, las propuestas de
nivel alto y escasean las referidas a arquitecturas de
computadores:
INTRODUCCIÓN: OBJETIVOS Y ESTADO DEL ARTE
39
1. Métodos formales de especificación y verificación de
requerimientos (Hennessy y Reagan, 1991) (Nicollin y
Sifakis, 1991) (Nanda et al., 2000).
2. Herramientas y lenguajes de programación para soportar
el desarrollo de procesos predecibles cada vez más
potentes (Flex, RTC++, RT-Euclid,...) (Stoyenko, 1987)
(Bihari y Gopinath, 1991) (Kenny y Lin, 1991).
3. Sistemas operativos (Ready, 1986) (Holmes et al., 1987)
(Hull et al., 1996), entornos complejos y poco predecibles
como los sistemas distribuidos y multiprocesador
HARTOS (Kandlur et al., 1989), SPRING (Stankovic y
Ramamritham, 1991), CHAOSarc (Gheith y Schwan,
1993), Maruti-II (Son, 1995).
4. Redes de comunicaciones que soporten el tráfico de los
paquetes transmitidos en tiempo real (Ferrari, 1992)
(Chen y Cheng, 1997) (Rajkumar et al., 1997).
5. Bases de datos en tiempo real (Abbott, 1991) (Huang y
Stankovic, 1991).
1.2.5 CONCLUSIONES
Es de destacar que existe una gran divergencia entre la
investigación sobre movimiento en escenas y la orientada a
arquitecturas para visión y seguimiento de objetos. Mientras que
se han obtenido resultados prometedores usando las
representaciones activas, empleándolas sobre plataformas
computacionales de propósito general, apenas se han trasladado
a arquitecturas más especializadas.
Las arquitecturas están enfocadas, principalmente, al cálculo del
flujo óptico y al seguimiento de características como son esquinas
o aristas. Este hecho provoca que no existan apenas
arquitecturas para el análisis de movimiento no-rígido general
(elástico o fluido) que, como ya se comentó previamente, es el que
más se da en la naturaleza.
CAPÍTULO 1
40
Difícilmente se encuentran arquitecturas de análisis del
movimiento en las que los elementos de procesamiento guarden
una relación topológica con la secuencia de imágenes. En esos
casos, cada uno de dichos elementos suele realizar una operación
diferente sobre toda o parte de la imagen. Prácticamente la única
excepción es la de los computadores en rejilla, que representan el
espacio n-dimensional donde se mueve el objeto mediante una
malla de procesadores.
Por último, la mayor parte de las arquitecturas específicas de
visión están diseñadas para que operen con las fuertes
restricciones temporales que vienen dadas por la frecuencia de
video a la que hay que procesar la información, basándose, sobre
todo, en hardware y software de altas prestaciones. Sin embargo,
se echa en falta investigación orientada a hacer consideración de
las restricciones temporales con mayor flexibilidad y potencia,
como puede ser la obtención del resultado por refinamiento
sucesivo. De hecho, el trabajo realizado en el desarrollo de
arquitecturas de tiempo real no ha sido muy extendido, dejando
el tratamiento de las restricciones temporales para niveles
superiores.
1.3 PROPUESTA DE SOLUCIÓN
Tomando la idea de las representaciones activas, se va a
proponer un modelo de representación que adapte su topología
(elementos de procesamiento y red de interconexión) a la forma y
situación del objeto. La estructura de datos debe ser sencilla y
rápida de obtener, de modo que sirva de base al desarrollo de
arquitecturas de alto rendimiento. Por otro lado, si el proceso de
adaptación es iterativo, se podrán obtener representaciones
aproximadas de los objetos en función del tiempo disponible. A
continuación, se presenta la propuesta de solución de
construcción del modelo de representación.
Dado un objeto que presenta unas características geométricas en
cuanto a forma, posición,...; y una apariencia visual (color, tono
de gris, brillo, saturación,...), el problema de representación del
objeto va a consistir en la obtención de su apariencia geométrica
a partir de su apariencia visual.
INTRODUCCIÓN: OBJETIVOS Y ESTADO DEL ARTE
41
Para ello, dada una imagen, se realiza una transformación de la
misma, extrayendo la probabilidad de cada uno de los puntos de
pertenecer al objeto, basándose en el cumplimiento de una cierta
propiedad visual. Empleando esta función de transformación
como campo de potencial, se pretende que el modelo adapte su
topología al espacio de entrada determinado por el objeto. Este es
precisamente el comportamiento que tienen los modelos
neuronales auto-organizativos, donde su aprendizaje está
encaminado a la satisfacción de diversos objetivos (Fritzke, 1997),
principalmente: minimización del error, maximización de la
entropía, mapeado de características preservando su topología,
estimación de la función de densidad de un conjunto de señales y
división en clusters.
Si el espacio de entrada viene determinado por los puntos de la
imagen que pertenecen al objeto, estas redes permitirán
representarlo, minimizando el error de cuantización de sus
elementos de procesamiento y representando su geometría
mediante su red de interconexión. Sin embargo, como los
diferentes modelos auto-organizativos poseen diferente capacidad
de preservar la topología, se realizará un estudio para establecer
cual de ellos tiene un mejor funcionamiento.
Se define el Grafo Preservador de la Topología GPT = A ,C como
el grafo cuyos nodos están situados en los puntos asociados a
cada uno de los elementos de procesamiento, estableciendo una
arista entre aquellos nodos cuyos elementos de procesamiento
respectivos están conectados. Este grafo GPT realiza una
representación aproximada de la apariencia geométrica del
objeto.
Por lo tanto, el problema de obtención de la apariencia geométrica
del objeto, es el del cálculo de un Grafo Preservador de la
Topología GPT que lo represente. Este grafo puede ser empleado
como caracterizador de la forma del objeto, en procesos
posteriores de reconocimiento y/o clasificación. Como la
comparación entre grafos es muy costosa computacionalmente,
debería ser sencilla la extracción de características a partir de
éste, que permita mejorar los procesos de más alto nivel.
Si las propiedades del objeto varían con el tiempo, se presentarán
diferentes instancias del mismo, en sucesivas imágenes. Para
CAPÍTULO 1
42
facilitar el problema, se suelen incluir ciertas restricciones para
limitar la localización de un objeto o de alguna de sus partes
entre imágenes consecutivas de una secuencia. Cédras y Shah
(1995) establecen varias posibles limitaciones: uniformidad del
movimiento, velocidad máxima, suavidad del movimiento o
cambios pequeños en la velocidad, movimiento común,
correspondencia consistente, rigidez,... Escolano (1997) agrupa
todas éstas en dos: coherencia del movimiento y uniformidad del
movimiento.
De este modo, la arquitectura debe ser capaz de reconfigurar su
topología, de manera que para cada instancia del objeto, se
obtenga su representación correspondiente mediante un Grafo
Preservador de la Topología. Dado el carácter dinámico de los
modelos auto-organizativos, que no requieren comenzar el
aprendizaje cuando se introducen nuevos patrones, el
seguimiento de objetos va a consistir en la readaptación de la red
en cada una de las imágenes.
Por tanto, el problema del seguimiento de objetos se plantea como
la readaptación de la arquitectura, de modo que represente en
cada instante de tiempo la apariencia geométrica del objeto.
Se plantean dos formas de reconocer el movimiento:
• basado en el reconocimiento,
• basado en el movimiento.
Para el primero de ellos, se procede a reconocer cada una de las
instancias del objeto, a partir de su GPT o a partir de
características extraídas de éste. La secuencia de diferentes
instancias del objeto reconocidas determina el movimiento
realizado.
Para un análisis basado en el movimiento, se extrae información
sobre la dinámica que han seguido las diversas configuraciones
de la arquitectura. Para ello, se obtiene información de las
trayectorias seguidas por cada uno de los elementos de
procesamiento, entendidas como la sucesión de puntos de la
imagen asociados a cada uno de ellos. Dado que en todo
momento se tiene localizado a cada uno de estos elementos de
INTRODUCCIÓN: OBJETIVOS Y ESTADO DEL ARTE
43
procesamiento, se evita el problema de correspondencia, que es
uno de los más costosos de resolver.
El análisis del movimiento, por tanto, queda establecido por el
estudio de las diferentes apariencias geométricas que toma el
objeto, de modo que puede ser tratado desde dos puntos de vista:
mediante el reconocimiento de cada una de las instancias del
mismo, o mediante el estudio de la dinámica de readaptación de la
arquitectura.
Capítulo 2
MODELOS NEURONALES DE
REPRESENTACIÓN
En este capítulo se describe la red neuronal que va a ser
empleada para la modelización de los objetos. En primer lugar, se
realiza una introducción al conexionismo y una revisión de los
diferentes modelos neuronales con aprendizaje competitivo,
estudiando su capacidad de preservación de la topología. Una vez
estudiadas las propiedades de cada uno de ellos, se justifica la
utilización de los gases neuronales como redes caracterizadoras y
preservadoras de la topología, pasando a estudiarlas con más
detalle.
Dado que uno de los objetivos de este trabajo es la capacidad de
satisfacer restricciones de tiempo real, se aporta una
modificación de la dinámica de adaptación de los gases
neuronales para dotarlos de esta capacidad, estableciendo los
parámetros de aprendizaje acorde al tiempo disponible.
46
CAPÍTULO 2
2.1 REDES AUTO-ORGANIZATIVAS
2.1.1 INTRODUCCIÓN
La representación reducida de los datos con todas sus
interrelaciones es un problema importante en las ciencias de la
información. En este sentido, la situación de las neuronas de las
redes auto-organizativas juega un papel muy importante. Las
neuronas organizan su conectividad para optimizar la
distribución espacial de sus respuestas. Tienen la capacidad de
cambiar sus respuestas, de tal modo que la posición de la
neurona dentro de la red donde se obtiene la respuesta es
específica a cierta característica del conjunto de señales de
entrada. Se convierte la similitud en las señales de entrada en
proximidad de las neuronas excitadas: las neuronas con tareas
similares se comunican mediante caminos de conexiones más
cortos. Esta es una propiedad muy importante de este sistema
paralelo. Este proceso de ordenación o colocación de las
neuronas no se realiza moviendo las neuronas, sino que es un
conjunto de parámetros internos el que define la situación, los
cuales son modificados en el proceso auto-organizativo.
Las redes formadas mediante auto-organización son capaces de
describir relaciones topológicas entre las señales de entrada, de
modo que las relaciones de semejanza más importantes entre las
señales de entrada son convertidas en relaciones espaciales entre
las neuronas. Las redes suelen tener una o dos dimensiones, por
lo que la reducción de la dimensión de la entrada a la de la
situación de la neurona dentro del mapa puede ser vista como un
proceso de abstracción, de manera que el mapeado de las señales
de entrada se realiza según sus propiedades más importantes y
suprimiendo los detalles triviales. Además, si las señales de
entrada siguen una relación de orden, esta relación se verá
reflejada en el mapeado. Por tanto, se mantendrán en la
disposición topológica de la red los clusters o ramas que existan
en el espacio de las señales de entrada.
Existe un gran número de modelos neuronales autoorganizativos, algunos de los cuales serán estudiados a
continuación. La mayor parte de ellos poseen una topología y
funcionamiento básicos comunes, que se presentan a
continuación.
MODELOS NEURONALES DE REPRESENTACIÓN
47
Una red auto-organizativa A está formada por un conjunto de n
neuronas:
A = {c 1 ,c 2 ,…,c n }
(2.1)
donde cada una de las neuronas tiene asociado un vector de
referencia perteneciente al espacio de las señales de entrada V
w c ∈V
(2.2)
que indica la zona del espacio de entrada al cual esta neurona es
más receptiva.
Las neuronas están conectadas entre sí mediante conexiones de
vecindad que son simétricas y permiten establecer una relación
topológica entre las diferentes neuronas pertenecientes a la red
neuronal
C ⊂ A×A
(i , j )∈C ⇔ ( j , i )∈C
De modo que una neurona
topológicos N c :
(2.3)
c posee un conjunto de vecinos
N c = {i ∈ A (c , i ) ∈C }
(2.4)
El aprendizaje se realiza a partir de un conjunto de señales de
entrada n -dimensionales que son generadas siguiendo una
función de densidad de probabilidad
p ( ξ ), ξ ∈V
(2.5)
Para cada señal de entrada ξ , mediante un proceso competitivo
entre las n neuronas, se obtiene la neurona ganadora s (ξ )
definida como la neurona que posee el vector de referencia más
cercano a ξ
s ( ξ ) = arg min c∈A ξ − w c
(2.6)
CAPÍTULO 2
48
donde
⋅ representa, normalmente, la distancia euclídea.
Posteriormente, se produce un proceso de adaptación de los
vectores de referencia de todas o parte de las neuronas de la red
(dependiendo de la relación de vecindad) con el objetivo de
aproximar sus vectores de referencia a la señal de entrada
siguiendo la ley de Hebb:
∆w c = α ⋅ (w c − ξ )
donde
α
(2.7)
pondera el paso de adaptación.
Una vez finalizado el proceso auto-organizativo, se obtiene un
mapeado del espacio de las señales de entrada V en la red
neuronal A :
φW : V → A , ξ ∈V → φw (ξ )∈ A
donde
φw (ξ )
(2.8)
se obtiene a partir de la siguiente condición:
w φw (ξ ) − ξ = min c∈A ξ − w c
(2.9)
Aunque existe una amplia variedad de modelos autoorganizativos o con aprendizaje competitivo, únicamente se van
estudiar aquellos que se han considerado más relevantes, base de
las redes que se emplearán en este trabajo. Se puede encontrar
información sobre otros modelos auto-organizativos en (Fritzke,
1997) (Kohonen, 1995).
Se pueden diferenciar dos grandes grupos de modelos autoorganizativos desde el punto de vista estructural: aquellos que
tienen una dimensionalidad fija y topología de la red
preestablecida, y los que varían su dimensionalidad durante el
aprendizaje. Entre los primeros se encuentran los mapas autoorganizativos de Kohonen y las Growing Cell Structures. Entre los
segundos se encuentran la Neural Gas y la Growing Neural Gas.
En el modelo auto-organizativo, desarrollado por Kohonen (1995),
las neuronas están unidas entre sí formando una rejilla,
normalmente bidimensional. Tiene serias limitaciones a la hora
MODELOS NEURONALES DE REPRESENTACIÓN
49
de mapear el espacio de los vectores de entrada, ya que durante
el aprendizaje no puede variar la estructura de rejilla.
Han sido ampliamente utilizados desde entonces en multitud de
aplicaciones (Kohonen, 1995): compresión de imágenes
(Amerijckx et al., 1998), segmentación de objetos (Wu et al.,
2000), reconocimiento de formas (Iivarinen, 1998), etc.
2.1.2 GROWING CELL STRUCTURES
Este modelo desarrollado por Fritzke (1993a) posee una
estructura flexible, con un número variable de neuronas, y una
topología k-dimensional donde k es escogido arbitrariamente a
priori. Las neuronas están conectadas entre sí formando
hipertetraedros. En el caso más usual en el que la red es
bidimensional, las neuronas están unidas formando triángulos.
Figura 2.1. Inserción de neuronas durante el aprendizaje de la Growing Cell
Structure.
A partir de un número inicial mínimo de neuronas se procede al
aprendizaje, de modo que en aquellas zonas del espacio de los
vectores de entrada donde se produce un mayor error se añaden
nuevas neuronas con el fin de reducirlo, manteniendo siempre la
estructura de hipertetraedros (Figura 2.1). Asimismo, si se da el
caso de que una neurona ya no es necesaria, puede ser
eliminada, quitando también las conexiones que emanan de la
misma, con lo que puede ocurrir que la red neuronal se divida en
diversas subredes (Figura 2.2).
CAPÍTULO 2
50
Figura 2.2. División de la red GCS en varias subredes al eliminar neuronas.
Se ha demostrado que este modelo mejora el mapeado que
realizan los mapas auto-organizativos de Kohonen con respecto a
diferentes criterios (Fritzke, 1993b).
Esta red ha sido empleada en la clasificación de patrones (Cheng
y Zell, 2000a), compresión de imágenes (Fritzke, 1993c),
reconocimiento de gestos (Flórez et al.,2001),...
2.2 GASES NEURONALES
NEURONALES
Bajo este término
organizativos que:
se
engloban
diferentes
modelos
auto-
• realizan su proceso de adaptación según una función de
energía (espacio de los vectores de entrada), a diferencia
de los mapas auto-organizativos de Kohonen, en el que
viene determinado por la estructura de la red, y
• convergen rápidamente a errores de cuantización
pequeños, menores que los obtenidos con los modelos
anteriores.
Estos modelos pretenden evitar la restricción de los modelos
anteriores que requieren un conocimiento a priori sobre la
dimensión topológica del espacio de los vectores de entrada. Por
ello, no preestablecen ninguna topología de la red, sino que es
durante el aprendizaje cuando las neuronas se conectan o
desconectan reajustando su red de interconexión.
2.2.1 NEURAL GAS
Este modelo (Martinetz y Schulten, 1991) no establece a priori
ninguna topología de la red, conectando las dos neuronas más
MODELOS NEURONALES DE REPRESENTACIÓN
51
cercanas para cada uno de los patrones escogidos en el
aprendizaje. Posee la desventaja de tener que predeterminar el
tamaño de la red, es decir, el número de neuronas que posee
(Figura 2.3).
Ha sido empleada en la predicción de series temporales
(Martinetz et al., 1993), control de robots (Mataric, 2000),
clasificación de escritura (Atukorale y Suganthan, 1998),...
Figura 2.3. Estados inicial, intermedio y final del aprendizaje de la Neural Gas.
El algoritmo de aprendizaje es el siguiente:
1. Se inicializa el conjunto
A con n neuronas:
A = {c 1 ,c 2 ,...,c n }
(2.10)
con sus respectivos vectores de referencia establecidos
aleatoriamente, aunque suele seguirse la función de
densidad de probabilidad p (ξ ) .
Se crea el conjunto de conexiones como el conjunto vacío
C =φ
(2.11)
Se inicializa el parámetro que mide el tiempo:
t =0
2. Se genera una señal de entrada
(2.12)
ξ
según
p (ξ ) .
3. Se ordenan todos los elementos de A según su distancia
a ξ , encontrando la secuencia de índices i 0 , i 1 ,..., i n −1
(
)
CAPÍTULO 2
52
tal que w i es el vector de referencia más cercano a
0
w i es el vector de referencia más lejano.
ξ
y
n −1
4. Se adaptan los vectores de referencia según:
(
∆w i = ε (t ) ⋅ h λ (k i (ξ , A )) ⋅ ξ − w s 1
)
(2.13)
donde k i (ξ , A ) representa el índice k para el vector de
referencia w i dentro de la secuencia anterior, y:
(
ε (t ) = ε (ε
λ (t ) = λ0 λtmax λ0
0
tmax
h λ (k ) =
ε0
)
)
t tmax
t tmax
1
(2.14)
(2.15)
k λ (t )
(2.16)
5. Si la conexión entre las neuronas
entonces es creada
i0 e i1 no existe,
e
C = C ∪ {(i 0 ,i 1 )}
(2.17)
Se establece a 0 la edad de la conexión entre ellas
edad (i 0 ,i 1 ) = 0
(2.18)
6. Se incrementan las edades de todas las aristas que
emanan de i0
edad (i 0 , i ) = edad (i 0 ,i ) + 1 , ∀i ∈ N (i 0 )
(2.19)
7. Se eliminan todas las aristas cuya edad sea mayor que
una cierta edad máxima T (t ) donde:
(
T (t ) = T 0 T tmax T 0
)
t tmax
8. Se incrementa el parámetro temporal
(2.20)
MODELOS NEURONALES DE REPRESENTACIÓN
53
t =t +1
9. Si
(2.21)
t < tmax se continúa en el paso 2.
En resumen, la ordenación de las neuronas, según su distancia
al patrón de entrada, y la posterior modificación de sus vectores
de referencia, produce la expansión de las mismas dentro del
espacio de entrada. Posteriormente, mediante la inserción y
eliminación de aristas se establece una triangulación entre los
diversos elementos de procesamiento.
2.2.2 GROWING NEURAL GAS
A partir de los modelos de Neural Gas y de Growing Cell
Structures, Fritzke (1995) desarrolla el modelo de Growing Neural
Gas, en el que no se preestablece una topología de unión entre
las neuronas y en el que, a partir de un número inicial, nuevas
neuronas son insertadas (Figura 2.4).
Figura 2.4. Estados inicial, intermedio y final del aprendizaje de la Growing
Neural Gas.
Este modelo ha sido empleado en aplicaciones relacionadas con
la robótica (Marsland et al., 2000), la compresión de datos
(Bougrain y Alexandre, 1999), el reconocimiento de gestos
(Boehme et al., 1998),...
El algoritmo de aprendizaje es el siguiente:
1. Se crea el conjunto
y c2
A con únicamente dos neuronas c 1
A = {c 1 , c 2 }
(2.22)
CAPÍTULO 2
54
con sus respectivos vectores de referencia w 1 y w 2
inicializados aleatoriamente, siguiendo usualmente la
función de densidad de probabilidad p (ξ ) .
Se inicializa el conjunto de conexiones al conjunto vacío
C =φ
2. Se genera una señal de entrada
(2.23)
ξ
según
p (ξ ) .
3. Se localizan la neurona ganadora s 1 y la segunda
neurona más cercana s 2 obtenidas como
s 1 = arg min c∈A ξ − w c
(2.24)
s 2 = arg min c∈A −{s1 } ξ − w c
(2.25)
4. Si la conexión entre ambas neuronas
entonces es creada
s 1 y s 2 no existe,
C = C ∪ {(s 1 , s 2 )}
(2.26)
Se fija a 0 la edad de la conexión entre ellas
edad (s 1 , s 2 ) = 0
(2.27)
5. Se añade el cuadrado de la distancia existente entre la
señal de entrada y el vector de referencia de la neurona
ganadora a una variable de error local
∆E s1 = ξ − w s1
2
(2.28)
6. Se adaptan los vectores de referencia de la neurona
ganadora s 1 así como de todas sus neuronas vecinas.
Esta adaptación se pondera según ε1 y ε 2 .
(
∆w s1 = ε 1 ξ − w s1
)
(2.29)
MODELOS NEURONALES DE REPRESENTACIÓN
55
∆w i = ε 2 (ξ − w i ), ∀i ∈ N s1
(2.30)
7. Se incrementan las edades de todas las aristas que
emanan de s 1
edad (s 1 , i ) = edad (s 1 , i ) + 1 , ∀i ∈ N s1
(2.31)
8. Se eliminan todas las aristas cuya edad sea mayor que
una cierta cantidad edad max . Si al producirse la
eliminación una neurona se queda aislada, es decir, sin
aristas que salgan de ella, esta neurona es eliminada.
9. Cada cierto número λ de señales de entrada generadas
se inserta una neurona según el siguiente proceso:
− Se determina la neurona
acumulado:
q con el mayor error
q = arg max c∈A E c
− Se localiza la neurona
error acumulado:
f vecina de q con mayor
f = arg max c∈N q Ec
− Se inserta una nueva neurona
(w q + w f )
2
(2.33)
r entre f y q :
A = A ∪ {r }
wr =
(2.32)
(2.34)
(2.35)
− Se insertan nuevas conexiones entre la neurona r
y las neuronas f y q , eliminando la conexión que
existía entre éstas:
CAPÍTULO 2
56
C = C ∪ {(r , q ), (r , f
C = C − {(q , f
)}
(2.36)
)}
− Se decrece el error de las neuronas
fracción α :
f y q por una
∆E f = −αE f
(2.37)
∆E q = −αE q
− Se interpola el error de la neurona
errores de f y q :
Er =
(E f
+ Eq
)
2
r entre los
(2.38)
10. Se decrece el error de todas las neuronas
∆E c = − βE c , ∀c ∈ A
(2.39)
11. Si se cumple una determinada condición (tamaño
máximo de la red, error cuadrático medio,...) se finaliza
el proceso. Si no es así, se continúa con el paso 2.
En resumen, la adaptación de la red al espacio de los vectores de
entrada se produce en el paso 6. La inserción de conexiones (paso
4) entre la neurona ganadora y la segunda más cercana a la señal
de entrada induce finalmente una triangulación de Delaunay.
La eliminación de conexiones (paso 8) elimina las aristas que ya
no forman parte de dicha triangulación. Esto es realizado
eliminando las conexiones entre neuronas que ya no se
encuentran próximas o que tienen neuronas más cercanas, de
modo que la edad de dichas conexiones supera un umbral.
La acumulación del error (paso 5) permite identificar aquellas
zonas del espacio de los vectores de entrada donde es necesario
incrementar el número de neuronas para mejorar el mapeado.
MODELOS NEURONALES DE REPRESENTACIÓN
57
2.3 PRESERVACIÓN DE LA TOPOLOGÍA
TOPOLOGÍA
2.3.1 REDES PRESERVADORAS D
DE
E LA TOPOLOGÍA
El resultado final del proceso auto-organizativo o de aprendizaje
competitivo está estrechamente ligado al concepto de la
triangulación de Delaunay. La región de Voronoi de una neurona
está formada por todos los puntos del espacio de entrada para el
que ésta resulta la neurona ganadora. Por tanto, como resultado
final del aprendizaje competitivo se obtiene un grafo (red
neuronal), cuyos vértices son las neuronas de la red y cuyas
aristas son las conexiones entre las mismas, que representa la
triangulación
de
Delaunay
del
espacio
de
entrada
correspondiente a los vectores de referencia de las neuronas de la
red.
Aunque tradicionalmente se ha indicado que esta triangulación,
resultado del aprendizaje competitivo, preserva la topología del
espacio de entrada, (Martinetz y Schulten, 1994) introduce una
nueva terminología que restringe esta cualidad.
Se indica que el mapeado φw de V en A preserva la vecindad si
vectores de características similares, vectores cercanos en el
espacio de entrada V , son mapeados en neuronas cercanas de
A.
Asimismo, se señala que el mapeado inverso
φw−1 : A → V , c ∈ A → w c ∈V
(2.40)
preserva la vecindad si neuronas cercanas en A tienen
asociados vectores de características próximos dentro del espacio
de entrada.
Combinando ambas definiciones, se establece como Red
Preservadora de la Topología (RPT) a aquella red A cuyos
−1
mapeados φw y φw son preservadores de la vecindad.
De este modo, los mapas auto-organizativos de Kohonen no
serían preservadores de la topología como tradicionalmente han
sido considerados, ya que esto sólo ocurriría en el caso de que la
topología del mapa y del espacio de entrada coincidieran. Dado
58
CAPÍTULO 2
que la topología de la red es establecida a priori, desconociendo
posiblemente la topología del espacio de entrada, no se va a poder
−1
asegurar que los mapeados φw y φ w preserven la vecindad.
Las Growing Cell Structures de Fritzke tampoco son
preservadoras de la topología ya que la topología de la red está
establecida a priori (triángulos, tetraedros,...). Sin embargo, como
ya se indicó, sí que se mejora el funcionamiento respecto de los
mapas de Kohonen, debido a su capacidad de inserción y
eliminación de neuronas.
Por último, el grafo resultante del aprendizaje competitivo de las
Neural Gas y de las Growing Neural Gas, es una triangulación de
Delaunay inducida (Figura 2.5), subgrafo de la triangulación de
Delaunay, en el que únicamente se encuentran las aristas de la
triangulación de Delaunay cuyos puntos pertenezcan al espacio
de entrada V . En (Martinetz y Schulten, 1994) se demuestra que
estos modelos son Redes Preservadoras de la Topología.
Figura 2.5. (a) Triangulación de Delaunay, (b) Triangulación de Delaunay inducida
2.3.2 ESTUDIO DE LA PRESERVACIÓN
PRESERVACIÓN DE LA TOPOLOGÍA
TOPOLOGÍA DE LOS
MODELOS AUTO-ORGANIZATIVOS
ORGANIZATIVOS
La principal propiedad de los modelos auto-organizativos es la
extracción de la estructura esencial de los datos de entrada,
mediante la adaptación de la red de neuronas. En el caso de los
modelos cuya topología es establecida a priori, la dimensión
geométrica de la red suele ser de menor dimensión que el espacio
de entrada. Si esta dimensión es mucho menor, la red intenta
MODELOS NEURONALES DE REPRESENTACIÓN
59
aproximar la mayor dimensionalidad doblándose dentro del
espacio de entrada, sin preservar la topología del mismo.
Es por esto, que han surgido diferentes medidas que cuantifican
el grado de preservación de la topología (Bauer et al., 1999) para
determinar cuál debe ser la dimensionalidad correcta de la red: el
producto topográfico (Apéndice A), la medida ρ de Spearman, la
medida de Zrehen, la función topográfica o la medida de coste C.
En este trabajo, se ha empleado el producto topográfico que es,
de todas ellas, la que ha sido más ampliamente utilizada en la
literatura (Merkl et al., 1994) (Herbin, 1995) (Trautmann y
Denoeux, 1995).
Del estudio realizado (Apéndice A) se extrae que las redes que
mejor preservan la topología de los espacios de entrada son
aquellas cuya topología no está definida a priori (Figura 2.6), sino
que se adapta con el aprendizaje: las Neural Gas y las Growing
Neural Gas.
Kohonen
Growing Cell Structures
Neural Gas
Growing Neural Gas
Figura 2.6. Adaptación de diversos modelos auto-organizativos a un espacio de
entrada.
CAPÍTULO 2
60
Sólo en aquellos casos en los que el espacio de entrada tiene una
estructura similar a la topología predefinida de los mapas autoorganizativos, el producto topográfico es similar al de los otros
modelos. Esto es debido a que en el cálculo del producto
topográfico únicamente se considera la topología de la red, ya que
se asume que se ha realizado un correcto aprendizaje del espacio
de entrada y que, por tanto, se habrá obtenido una correcta
adaptación de la red. Sin embargo, en estos casos no es así, ya
que se observa que los mapas de Kohonen caracterizan peor el
espacio de entrada al producirse un mayor error de cuantización
(Figura 2.7).
Kohonen
Neural Gas
Figura 2.7. Comparación del error de cuantización entre mapas de Kohonen y
Neural Gas.
Las Neural Gas y las Growing Neural Gas tienen un
comportamiento similar, sin embargo, la complejidad del
aprendizaje de las Neural Gas es muy superior al de las Growing
Neural Gas, obteniendo unos tiempos de aprendizaje muy
superiores, por ejemplo, para el caso de una red con un número
final de 100 neuronas (Tabla 2.1). Esto es debido, principalmente,
al proceso de ordenación que hay que realizar por cada uno de
los patrones de entrada (paso 3 del aprendizaje de la Neural Gas).
Modelo auto-organizativo
Tiempo de aprendizaje (segundos)
Kohonen
38
Growing Cell Structure
9
Neural Gas
117
Growing Neural Gas
12
Tabla 2.1. Tiempos de aprendizaje de los diferentes modelos auto-organizativos.
MODELOS NEURONALES DE REPRESENTACIÓN
61
De hecho, si se interrumpiera el aprendizaje de la Neural Gas a
los 12 segundos, que es el tiempo en el que finalizan su
aprendizaje las Growing Neural Gas, ésta no habrá realizado,
siquiera, una aproximación al espacio de entrada, debido al
empleo de parámetros que decaen con el número de iteraciones
(Figura 2.8).
Figura 2.8. Adaptación incompleta de la Neural Gas.
Se puede concluir que aquellas redes auto-organizativas que
mejor preservan la topología de un espacio de entrada y que, por
tanto, van a servir para hacer una representación de los objetos,
son los gases neuronales. El empleo de cada uno de ellos vendrá
determinado por la aplicación. Por un lado, las Neural Gas
realizan una representación más próxima al objeto (Figura 2.6).
Por otro, las Growing Neural Gas tienen una menor complejidad
temporal y espacial, ya que al ir incrementando el número de
neuronas durante el aprendizaje, dicho espacio y elementos de
procesamiento pueden servir para otras tareas.
2.4 INCORPORACIÓN DE REST
RESTRICCIONES
RICCIONES DE TIEMPO REAL
En el caso que se está tratando, las restricciones temporales
determinarán el tiempo disponible para completar la adaptación
del modelo auto-organizativo. Si el proceso de aprendizaje de la
red no puede finalizar en dicho tiempo límite, la preservación de
la topología se verá afectada.
CAPÍTULO 2
62
2.4.1 NEURAL GAS PARA TIEMPO REAL
La elevada complejidad temporal de este modelo, en comparación
con los otros, provoca que ante un límite de tiempo para el
proceso de aprendizaje, la adaptación podría no haberse
completado. En ese caso, la preservación de la topología se ve
considerablemente afectada, debido al empleo de parámetros que
decaen con el número de iteraciones, provocando movimientos de
adaptación más bastos al principio del aprendizaje, para
posteriormente aproximarse de forma más suave. Si no se llega a
esta última fase, la red no logra representar con suficiente
fidelidad al objeto. Sin embargo, si el proceso adaptativo finaliza,
es el modelo que mejor preserva la topología del espacio de
entrada. Esto hace que se plantee en este punto, la posibilidad de
modificar los parámetros de aprendizaje de la Neural Gas para
lograr que el ajuste de la red finalice.
Para ello, la posibilidad inmediata es la de reducir el número de
iteraciones t max de modo que dé tiempo a finalizar la adaptación.
Por supuesto, esto conlleva la modificación de todos los
parámetros de aprendizaje que dependen de t max , provocando un
aprendizaje menos fino (Tabla 2.2).
Espacio de
entrada
tmax = 10000 tmax = 25000 tmax = 50000 tmax = 100000
(1 s.)
(3 s.)
(6 s.)
(12 s.)
Cuadrado
0.028831
0.007385
0.006957
0.006390
Círculo
0.028856
0.007847
0.006655
0.006207
Anillo
0.020108
0.004789
0.004028
0.003454
4 cuadros
0.035654
0.003764
0.003726
0.003690
Mano
0.033541
0.011564
0.010345
0.005739
Tabla 2.2. Cálculo del producto topográfico de Neural Gas con distintas tmax.
De la tabla se extrae que, aun reduciendo el número de patrones
presentados, la preservación de la topología que se logra con la
Neural Gas es mejor que la de lograda con la Growing Neural
Gas, a igualdad de tiempos de aprendizaje (últimas columnas de
MODELOS NEURONALES DE REPRESENTACIÓN
63
las tablas 2.2 y 2.3). Sin embargo, si se reduce t max
considerablemente, el número de patrones es insuficiente para
realizar una correcta adaptación de la red y la preservación de la
topología se ve claramente afectada.
2.4.2 GROWING NEURAL GAS PARA TIEMPO REAL
En el caso de la Growing Neural Gas la finalización del
aprendizaje suele venir determinado por la inserción de todas las
neuronas hasta obtener el tamaño máximo de la red. Si se desea
operar en tiempo real se incluirá la finalización del tiempo de
aprendizaje entre las diferentes condiciones de terminación del
mismo.
De este modo, si no existe tiempo suficiente para la finalización
del aprendizaje no se conseguirá insertar todas las neuronas y,
por tanto, completar la red. Esto provoca que la preservación de
la topología se vea afectada al realizar una peor aproximación de
la red al espacio de entrada (Tabla 2.3). Sin embargo, aunque la
adaptación es bastante buena (Figura 2.9), la red posee menos
neuronas
y
existen
aristas
que
conectan
neuronas
incorrectamente, de modo que no se establece una triangulación
adecuada.
Espacio
de
entrada
25% del tiempo
de aprendizaje
(3 s.)
50% del tiempo
de aprendizaje
(6 s.)
75% del tiempo
de aprendizaje
(9 s.)
100% del tiempo
de aprendizaje
(12 s.)
Cuadrado
0.016485
0.009796
0.00947
0.007785
Círculo
0.015197
0.010809
0.009112
0.007832
Anillo
0.013155
0.00717
0.006792
0.005030
4 cuadros
0.005537
0.00517
0.004711
0.004221
Mano
0.010262
0.009158
0.006435
0.00607
Tabla 2.3. Cálculo del producto topográfico de Growing Neural Gas con
restricciones temporales.
CAPÍTULO 2
64
25%
50%
75%
Figura 2.9. Adaptación de la Growing Neural Gas con límites de tiempo.
Sin embargo, si lo que se desea es obtener una red completa, con
todas sus neuronas, en un tiempo predeterminado, se debe
modificar el algoritmo de aprendizaje de la misma para acelerar
su finalización.
Hay diversas cuestiones que intervienen en la duración del
proceso adaptativo: el número de patrones de entrada λ por
iteración, el número de neuronas insertadas en cada iteración, la
posibilidad de eliminar neuronas,... Contemplando estas
posibilidades, se presentan, a continuación, tres modificaciones
del proceso de adaptación de la Growing Neural Gas para que se
pueda efectuar su aprendizaje bajo una restricción temporal:
• Elección de un menor número de señales de entrada por
iteración
• Inserción de varias neuronas por iteración
• Completado de la red una vez finalizado el aprendizaje
Estas tres técnicas no consideran la posibilidad que existe en el
aprendizaje de eliminación de neuronas (paso 8 del algoritmo
general), lo cual ralentizaría el aprendizaje y, por consiguiente,
podría no finalizar en el tiempo establecido.
VARIACIÓN 1: ELECCIÓN DE UN MENO
MENOR
R NÚMERO DE SEÑALES DE
ENTRADA POR ITERACIÓN
ITERACIÓN
Esta primera variación al algoritmo original de aprendizaje de la
Growing Neural Gas es similar a la empleada con la Neural Gas.
Dado que cada cierto número λ de señales de entrada se debe
MODELOS NEURONALES DE REPRESENTACIÓN
65
insertar una nueva neurona (paso 9), si se reduce este número,
cada neurona será insertada a intervalos menores de tiempo y,
por tanto, se tardará menos en completar el mapa.
Sin embargo, el elegir pocas señales de entrada por iteración
afecta a la adaptación de la red al espacio de entrada (Figura
2.10) y a la preservación de la topología de la misma. Este hecho
se observa en la Tabla 2.4 donde el producto topográfico se
distancia de 0, valor ideal, según disminuye λ .
λ=1000
λ=2500
λ=5000
Figura 2.10. Adaptación de la Growing Neural Gas modificando el número de
patrones por iteración λ.
Espacio de
entrada
λ = 1000
(1 s.)
λ = 2500
(3 s.)
λ = 5000
(6 s.)
λ = 10000
(12 s.)
Cuadrado
0.011742
0.008881
0.008465
0.007785
Círculo
0.010926
0.009457
0.008097
0.007832
Anillo
0.007538
0.005919
0.005193
0.00503
4 cuadros
0.005962
0.004772
0.004703
0.004221
Mano
0.008488
0.00709
0.006224
0.00607
Tabla 2.4. Cálculo del producto topográfico de Growing Neural Gas (variación 1).
Cuando el valor de λ es pequeño el aumentarlo provoca una
gran mejora en el producto topográfico. Según este número de
señales de entrada por iteración se acerca al número de puntos
del espacio de entrada el producto topográfico se estabiliza,
CAPÍTULO 2
66
mostrando un mayor tiempo de aprendizaje que no conlleva una
proporcional mejoría en la preservación de la topología.
Por otro lado, si el tiempo disponible para el aprendizaje es bajo
(1 segundo), el comportamiento de la red sigue siendo bueno. Al
contrario que la Neural Gas, que para finalizar en ese mismo
tiempo, por su mayor complejidad, requiere la presentación de un
número mucho menor de patrones, lo que perjudica claramente
al aprendizaje del espacio de entrada.
VARIACIÓN 2: INSERCIÓN DE VARIAS NEURONAS POR ITERACIÓN
ITERACIÓN
Existe un trabajo (Cheng y Zell, 2000b) en esta línea en el que se
establece una modificación del algoritmo de aprendizaje de la
GNG para insertar en cada iteración dos neuronas. Sin embargo,
no en todas las iteraciones, dependiendo de diversas
circunstancias, se insertan ambas neuronas, sino que puede
darse el caso de que sólo se inserte una de ellas y, por tanto, que
el aprendizaje no se acelere.
Para ello, en esta variación del algoritmo de aprendizaje de la
GNG permanece estable el número de señales de entrada λ ,
repitiéndose por cada iteración varias veces el paso 9 del
aprendizaje. De este modo, se asegura que el aprendizaje
finalizará en un tiempo determinado.
Espacio
de
entrada
Inserción de
1 neurona
(12 s.)
Inserción de
2 neuronas
(6 s.)
Inserción de
5 neuronas
(3 s.)
Inserción de
7 neuronas
(1.5 s.)
Inserción de
10 neuronas
(1 s.)
Cuadrado
0.007785
0.008524
0.008682
0.009134
0.009427
Círculo
0.007832
0.008055
0.008806
0.010069
0.010685
Anillo
0.00503
0.005381
0.006401
0.007660
0.008696
4 cuadros
0.004221
0.004571
0.0052
0.005402
0.006033
Mano
0.00607
0.006423
0.006923
0.007968
0.008416
Tabla 2.5. Cálculo del producto topográfico de Growing Neural Gas insertando
diferente número de neuronas (variación 2).
MODELOS NEURONALES DE REPRESENTACIÓN
67
Por supuesto, el realizar este aprendizaje más basto del espacio
de entrada (Figura 2.11) provoca que la preservación de la
topología se vea afectada (Tabla 2.5).
2 neuronas
5 neuronas
7 neuronas
10 neuronas
Figura 2.11. Adaptación de la Growing Neural Gas modificando el número de
neuronas insertadas por iteración.
VARIACIÓN 3: COMPLETADO DE LA RE
RED
D UNA VEZ FINALIZADO EL
APRENDIZAJE
APRENDIZAJE
En esta última variación se realiza un aprendizaje normal de la
red estableciendo un tiempo límite para la realización del mismo,
de modo que si no ha habido tiempo suficiente la red no estará
completa. Es en este punto, en el que se procede a efectuar la
inserción de las neuronas que resten para completar la red, de
modo similar a como se realiza en el paso 9 del aprendizaje.
Tras esta masiva inserción de neuronas, se realiza un proceso de
adaptación final de la red realizando únicamente los pasos 2 a 6
'
con un número λ de señales de entrada. De este modo, todas
estas neuronas que han sido creadas al final del aprendizaje
pueden adaptarse mejor al espacio de entrada. Esta inserción
final de neuronas y el proceso final de adaptación provoca que se
aumente el tiempo de aprendizaje, por lo que debe ser tenido en
CAPÍTULO 2
68
cuenta a la hora de establecer el tiempo límite en el cual la red
realiza la primera fase de aprendizaje normal.
La preservación de la topología, en este caso, se ve mucho más
afectada que con las variaciones anteriores (Figura 2.12). En este
caso, el producto topográfico es mucho mayor que en los casos
anteriores disponiendo del mismo tiempo para realizar el
aprendizaje (Tabla 2.6).
25%
50%
75%
Figura 2.12. Adaptación de la Growing Neural Gas completando la red una vez
finalizado el tiempo.
Espacio
de
entrada
25% del tiempo
de aprendizaje
(3 s.)
50% del tiempo
de aprendizaje
(6 s.)
75% del tiempo
de aprendizaje
(9 s.)
100% del tiempo
de aprendizaje
(12 s.)
Cuadrado
0.013381
0.011922
0.010735
0.007785
Círculo
0.013371
0.010869
0.009202
0.007832
Anillo
0.009024
0.008312
0.00741
0.005030
4 cuadros
0.006379
0.005976
0.005368
0.004221
Mano
0.009263
0.008198
0.007155
0.00607
Tabla 2.6. Cálculo del producto topográfico de Growing Neural Gas completando
la red una vez finalizado el aprendizaje (variación 3).
MODELOS NEURONALES DE REPRESENTACIÓN
69
2.5 CONCLUSIONES
En este capítulo se ha presentado el modelo conexionista que va
a proporcionar la representación de los objetos bidimensionales.
Para ello, se ha introducido el fundamento de comportamiento de
las redes neuronales auto-organizativas, las cuales tienen la
capacidad de adaptar su topología a un espacio de entrada, y se
ha realizado un estudio de la capacidad de preservación de la
topología de varios modelos auto-organizativos.
De este estudio, se desprende que los gases neuronales son los
que realizan una mejor representación de la topología de un
espacio de entrada. De hecho, son los únicos que poseen la
capacidad de división de la red durante el aprendizaje, de modo
que se pueden representar espacios no continuos. De éstos, la
Neural Gas realiza una mejor preservación a costa de una mayor
complejidad temporal y espacial.
Estos modelos son inherentemente paralelos, lo cual les hace
muy adecuados para tratar problemas de visión. Por otro lado, se
han modificado los algoritmos de aprendizaje correspondientes
para que puedan presentar una respuesta bajo restricciones de
tiempo real, estudiando como afecta este hecho a la preservación
de la topología.
El desarrollo de arquitecturas, tanto paralelas como de tiempo
real, a partir del modelo de representación presentado es
prácticamente inmediato. El empleo del conexionismo aporta alto
rendimiento en el procesamiento, mientras que el aprendizaje
iterativo y las modificaciones introducidas en el proceso autoorganizativo, introduce operatividad en tiempo real.
Capítulo 3
REPRESENTACIÓN Y
CARACTERIZACIÓN DE
OBJETOS
En este capítulo se estudia el caso particular de aplicación de la
Red Preservadora de la Topología aplicada al espacio
bidimensional, de modo que se realiza una representación de los
objetos de la escena mediante un gas neuronal. En caso de que
se
desee
obtener
una
representación
del
objeto,
independientemente del tiempo requerido, se empleará una
Neural Gas, que preserva mejor la topología de un espacio de
entrada. Si, por contra, existen restricciones temporales o
espaciales, se hará uso de una Growing Neural Gas.
Posteriormente, se estudia su aplicación al análisis de imágenes,
realizando simplificaciones del grafo (red) obtenido para un mejor
manejo de la información. Asimismo, se presentan diversas
características que pueden ser extraídas del grafo original.
CAPÍTULO 3
72
A continuación, se estudia la aplicación de la Red Preservadora
de la Topología a la síntesis de imágenes, aprovechando la
capacidad de compresión de la información que poseen los
modelos auto-organizativos.
Finalmente, se presenta un ejemplo de aplicación de la
adaptación de un gas neuronal a la forma de los objetos,
empleándolo para la clasificación de estos a partir de sus
contornos.
3.1 REPRESENTACIÓN DE UN OBJETO 2D CON UN GAS
NEURONAL
La capacidad de preservación de la topología que poseen los
gases neuronales va a ser empleada, particularmente en este
trabajo, para la representación de objetos bidimensionales.
Identificando los puntos de la imagen que pertenecen a los
objetos, se posibilita la adaptación de la red a este subespacio de
entrada, obteniendo una triangulación de Delaunay inducida por
el objeto.
[
]
Sea un objeto O = AG , AV que está definido por una apariencia
geométrica AG y una apariencia visual AV . La apariencia
geométrica AG viene dada por unos parámetros morfológicos
(deformaciones locales) y por unos parámetros posicionales
(traslación, rotación y escalado):
AG = [G M ,G P ]
(3.1)
La apariencia visual AV está establecida por un conjunto de
características del objeto como pueden ser el color, la textura, el
brillo,...
En (Escolano, 1997) se indica que dados un dominio soporte
S ⊆ R 2 , una función de intensidad de imagen I ( x , y ) ∈ R tal
que I : S → 0 , I max , y un objeto O , su campo de potencial
normalizado
ψ T (x , y ) = f T (I (x , y )) es la transformación
ψ T : S → [0 ,1 ] que asocia a cada punto (x , y ) ∈ S el grado de
cumplimiento de la propiedad visual T del objeto O por su
intensidad asociada I ( x , y ) .
[
]
REPRESENTACIÓN Y CARACTERIZACIÓN DE OBJETOS
73
Considerando:
• El espacio de las señales de entrada como el conjunto de
puntos de la imagen:
V =S
ξ = (x , y ) ∈ S
• La función de densidad de probabilidad en función del
campo de potencial normalizado obtenido para cada uno
de los puntos de la imagen:
p (ξ ) = p (x , y ) = ψ T (x , y )
se realiza el aprendizaje de un gas neuronal, ya sea una Neural
Gas o una Growing Neural Gas, siguiendo el algoritmo general o
cualquiera de sus variantes expuestas en el Capítulo 2. De modo
que, realizando este proceso, se obtiene la red neuronal que
preserva la topología del objeto O a partir de una cierta
propiedad T del mismo. Es decir, a partir de la apariencia visual
AV del objeto se consigue una aproximación a su apariencia
geométrica AG .
De ahora en adelante, se denominará Grafo Preservador de la
Topología al grafo no dirigido GPT = A ,C , definido por un
conjunto de vértices (neuronas) A y un conjunto de aristas C
que los conectan, que preserva la topología de un objeto a partir
del campo de potencial normalizado considerado.
En la Figura 3.1 se muestra una descripción global del sistema
de obtención del GPT de un objeto a partir de una escena, donde
se observa que se pueden obtener GPT
para diferentes
propiedades T de los objetos sin modificar el algoritmo de
aprendizaje de los gases neuronales, ya que obteniendo ψ T (x , y )
distintas, se provocan adaptaciones de la red para cada uno de
estos campos de potencial normalizados (Figura 3.2).
CAPÍTULO 3
74
Imagen
Cálculo del campo
de potencial
normalizado
ψ T (x , y )
Aprendizaje del gas
neuronal
GPT
Figura 3.1. Descripción global del sistema de obtención del Grafo Preservador de
la Topología de un objeto.
Figura 3.2. Diferentes adaptaciones del gas neuronal a un mismo objeto.
REPRESENTACIÓN Y CARACTERIZACIÓN DE OBJETOS
75
3.2 APLICACIÓN AL ANÁLISIS
ANÁLISIS DE IMÁGENES
Tal y como se expresa en (González y Woods, 1996) la
representación de una región u objeto admite dos posibilidades:
en términos de sus características externas (contorno) o en
términos
de
sus
características
internas
(superficie).
Generalmente, se elige una representación externa cuando el
objetivo principal se centra en las características de la forma y
una representación interna cuando el principal interés se centra
en propiedades como el color, la textura,...
Una vez se extrae de la escena el objeto, el siguiente paso es el de
descripción o caracterización del mismo. Las características
extraídas deben ser, en la medida de lo posible, invariantes a
modificaciones de tamaño, traslación y rotación; de modo que se
pueda llevar a cabo una correcta clasificación o reconocimiento
de los mismos al realizar una comparación con modelos
almacenados en una base de conocimiento.
A continuación, se indica el empleo del aprendizaje de los GPT
para extraer y caracterizar tanto contornos como superficies, así
como posibles características que se pueden obtener del mismo
que permitan mejorar reconocimientos posteriores.
3.2.1 EXTRACCIÓN Y CARACTERIZACIÓN
CARACTERIZACIÓN DE CONTORNOS
Como se ha expresado anteriormente, una forma de representar
los objetos es mediante su contorno. El contorno de un objeto
puede ser obtenido mediante un GPT eligiendo de forma
adecuada la propiedad visual T para la que se obtendrá el
campo de potencial normalizado ψ T de la escena.
Tomando T = ∇ como la función gradiente, el campo de
potencial normalizado ψ ∇ indica, para cada uno de los puntos de
la imagen I , si pertenece o no al contorno del objeto (Figura
3.3b).
A partir de este campo de potencial, se extrae el Grafo
Preservador de la Topología GPT ∇ que se adapta al contorno del
objeto (Figura 3.3d). En ocasiones, cuando el contorno del objeto
posee zonas con una curvatura importante, se crean aristas entre
neuronas que no se encuentran próximas en el contorno (Figura
CAPÍTULO 3
76
3.3c). Este problema es sencillo de resolver, eliminando del
obtenido todos los ciclos indeseados que se produzcan.
(a)
(b)
(c)
(d)
Figura 3.3. Extracción del
GPT ∇
GPT del contorno de un objeto.
El modelo es capaz de extraer, asimismo, los diversos contornos
que pueda tener un objeto (Figura 3.4), debido a la capacidad de
división que poseen los gases neuronales.
Figura 3.4. Obtención de los diversos contornos de un objeto.
REPRESENTACIÓN Y CARACTERIZACIÓN DE OBJETOS
77
Aunque, este GPT ∇ podría ser utilizado como característica del
objeto, es usual en la literatura encontrar diferentes
características que son extraídas de los contornos para facilitar
clasificaciones o reconocimientos posteriores (Loncaric, 1998)
(Sonka et al., 1998) (González y Woods, 1996). Entre éstas se
pueden encontrar algunos descriptores simples como su longitud,
su diámetro, códigos de cadena, curvatura, firmas, momentos,...
DIÁMETRO
Dado un GPT ∇ del contorno del objeto O , se obtiene su diámetro
como la distancia máxima existente entre dos vértices (neuronas)
cualesquiera del mismo:
(
diámetro (GPT ∇ ) = max i , j ∈A w i − w j
)
(3.2)
Esta medida es invariante a traslación y rotación, aunque no lo
es al escalado.
A partir del diámetro, otra característica que se puede obtener es
la orientación del eje mayor del contorno, que es la línea que
conecta ambos vértices.
LONGITUD
Dado un GPT ∇ del contorno del objeto O , se obtiene su longitud
como la suma de la longitud de todas las aristas que forman
parte del mismo:
long (GPT ∇ ) =
∑ wi − w j
∀ (i , j )∈C
(3.3)
Esta característica es invariante a traslación y rotación, pero no
lo es al escalado de los objetos. Con el objetivo de hacer
invariante esta medida también al escalado se ha transformado la
expresión anterior, normalizando la longitud del contorno con
respecto a su diámetro:
CAPÍTULO 3
78
long _ norm (GPT ∇ ) =
long (GPT ∇ )
diámetro (GPT ∇ )
(3.4)
En la Tabla 3.1 se presentan los diámetros y longitudes obtenidos
a partir del GPT ∇ calculados para algunos de los objetos que
están siendo cuestión de estudio. Para comprobar la efectividad
de la longitud normalizada como medida invariante de la forma
de los objetos, se han realizado tres instancias, a distintos
tamaños, de cada uno de los espacios de entrada.
Objeto
Longitud
Diámetro
Longitud normalizada
Cuadrado
319 / 639 / 1280
112 / 225 / 452
2.83 / 2.84 / 2.83
Círculo
274 / 551 / 1100
89 / 179 / 358
3.06 / 3.06 / 3.07
Mano
660 / 1320 / 2647
136 / 272 / 546
4.85 / 4.85 / 4.84
Tabla 3.1. Longitud, diámetro y longitud normalizada de los contornos.
CURVATURA
Dado un GPT ∇ del contorno del objeto O , la curvatura viene
dada por el ritmo de variación de su pendiente. Como se observa
en la Figura 3.5 la caracterización mediante curvatura del
contorno de los objetos es bastante inestable, debido a que el
GPT ∇ realiza una aproximación mediante rectas del contorno;
sin embargo, esto puede ser resuelto mediante alguna técnica de
suavizado.
Para poder utilizar la curvatura como característica clasificadora,
se debe tomar un mismo punto de partida en todos los casos.
Para ello, por ejemplo, se puede comenzar el cálculo de la
curvatura en el punto (neurona) que se encuentra más alejado
del centro de masas del grafo.
El análisis de las curvaturas en los diferentes puntos del
contorno permite dos modos de simplificación del mismo:
• detección de las esquinas del objeto y conexión de éstas,
• detección de las aristas o segmentos rectos del objeto.
REPRESENTACIÓN Y CARACTERIZACIÓN DE OBJETOS
79
Figura 3.5. Curvaturas de los contornos.
OBTENCIÓN DE ESQUINAS
Las esquinas son extraídas a partir de la función de curvatura del
objeto, detectando aquellos nodos donde la curvatura supera un
cierto umbral. Estas neuronas determinan las esquinas del objeto
y, mediante su conexión, se realiza una simplificación del GPT ∇
(Figura 3.6).
OBTENCIÓN DE ARISTAS
La detección de aristas se consigue estudiando la curvatura
acumulada entre neuronas sucesivas, de modo que cuando se
supera una cierta curvatura umbral, la primera y última neurona
de dicha sucesión determinan los extremos de la arista. Esta
simplificación es dependiente del punto de inicio, por lo que se ha
empleado la neurona con mayor curvatura como partida en la
búsqueda de aristas.
CAPÍTULO 3
80
Figura 3.6. Simplificación del GPT∇ mediante la detección de esquinas.
Figura 3.7. Simplificación del GPT mediante la obtención de aristas.
FIRMA
Dado un GPT ∇ del contorno del objeto O , su firma puede ser
calculada como la distancia de cada uno de sus vértices al centro
del grafo. Al igual que en el caso del cálculo de la curvatura, se
debe comenzar desde un mismo punto de partida. Si, además la
distancia es dividida entre la máxima distancia de un nodo del
GPT ∇ al centroide, se obtiene una medida invariante a
traslación, rotación y escalado (Figura 3.8).
CÓDIGOS DE CADENA
Los códigos de cadena se emplean para representar un contorno
mediante una sucesión de segmentos de dirección especificada.
Usualmente, esta representación se basa en segmentos de
conectividad cuatro u ocho. En el caso de la Figura 3.9 se ha
empleado conectividad ocho. Esta característica también depende
del punto de partida, aunque existen diversos criterios para
normalizar la cadena resultante (González y Woods, 1996).
REPRESENTACIÓN Y CARACTERIZACIÓN DE OBJETOS
Figura 3.8. Firmas.
Figura 3.9. Códigos de cadena.
81
CAPÍTULO 3
82
MOMENTOS
Los momentos son uno de los métodos más utilizados para
caracterizar contornos. Son calculados a partir de una
representación unidimensional de los contornos, como pueden
ser las curvaturas o las firmas.
Si se considera v como la función unidimensional elegida, k el
número de nodos del GPT ∇ , se obtiene el momento n-ésimo de v
como:
k
µ n (v ) =
∑ (v i − m )n
(3.5)
i =1
k
donde
k
m=
∑v i
(3.6)
i =1
k
En la Tabla 3.2 se representan los momentos de los contornos
calculados a partir de las firmas no normalizadas de los objetos.
Objeto
m
µ2
µ3
µ4
Cuadrado
92.78 / 92.90
103.61 / 105.49
525.07 / 524.27
21101 / 22000
Círculo
86.79 / 86.79
4,73 / 2.76
-5.20 / 0.82
50.39 / 15.46
Mano
90.04 / 87.62
1319.42 / 1394.14
-10277 / -9561
4048945 / 4575068
Tabla 3.2. Momentos de los contornos.
3.2.2 EXTRACCIÓN Y CARACTERIZACIÓN
SUPERFICIES
ERFICIES
CARACTERIZACIÓN DE SUP
La extracción del Grafo Preservador de la Topología GPT de la
superficie de un objeto se puede obtener tomando como
propiedad T para construir el campo de potencial cualquier
REPRESENTACIÓN Y CARACTERIZACIÓN DE OBJETOS
83
característica interna del objeto, como puede ser su textura, su
nivel de gris, su color, su saturación,...; así como combinaciones
de éstas.
Como resultado del aprendizaje del gas neuronal de este campo
de potencial, se obtiene un GPT que realiza una esqueletización
del objeto deseado (Figura 3.10).
Figura 3.10. Grafos Preservadores de la Topología de diversos objetos
bidimensionales.
Del mismo modo que
diversos contornos de
diversas partes de un
escena que posean los
T (Figura 3.11).
el modelo es capaz de representar los
un objeto, es posible caracterizar las
objeto, o varios objetos presentes en la
mismos valores para la propiedad visual
Figura 3.11. Representación de varios objetos.
CAPÍTULO 3
84
Si bien el Grafo Preservador de la Topología GPT caracteriza el
objeto, el empleo de éste para el reconocimiento o clasificación de
los objetos viene limitado por restricciones temporales. Esto es
debido a que la comparación entre grafos o cliques es un
problema que se ha demostrado que es NP, pero se desconoce si
es P o NP-completo (Fortin, 1996). Es por esto, que, a
continuación se introducen diversos subgrafos del GPT que
reducen el tiempo de comparación de los mismos al tener un
menor número de aristas.
Asimismo, al igual que se ha realizado con los contornos, se
presentan diversas características que pueden ser obtenidas del
GPT del objeto. Hay bastante trabajo realizado en este sentido,
que puede ser aprovechado, dado que la representación
establecida por el grafo está muy relacionada con estructuras de
geometría computacional.
SUBGRAFOS DEL GPT
Tal y como se ha expresado en el punto 2.3.1, el GPT establece
una triangulación de Delaunay inducida de los vértices del grafo.
En (Fortune, 1997) (O’Rourke y Toussaint, 1997) se establece la
siguiente relación entre grafos:
NNG ⊆ MST ⊆ RNG ⊆ GG ⊆ DT
donde NNG es el grafo de vecinos más cercanos, MST es el
árbol de expansión mínimo, RNG es el grafo de vecindad relativa,
GG es el grafo Gabriel y DT es la triangulación de Delaunay
(Figura 3.12).
GRAFO GABRIEL
El Grafo Gabriel GG es un subgrafo de la triangulación de
Delaunay establecida por el Grafo Preservador de la Topología
GPT que:
• posee su mismo conjunto de vértices A,
• posee aquellas aristas
( p ,q ) ∈ C
que cumplen que
REPRESENTACIÓN Y CARACTERIZACIÓN DE OBJETOS
85
§ p + q δ (p ,q ) ·
B¨
,
¸ ∩C = φ
2 ¹
© 2
donde
(3.7)
B (x ,r ) es un círculo de centro x y radio r , y
2
δ (p , q ) = ∑ w pi − w qi
i =1
esto es, los puntos p y q definen el diámetro de un
círculo que no es cruzado por ninguna otra arista.
En (Mou y Yeung, 1994) se presenta una red neuronal autoorganizativa, denominada Red Gabriel, que modifica durante el
aprendizaje las conexiones entre las neuronas de modo que se
obtenga el grafo Gabriel de las mismas. Sin embargo, los
ejemplos presentados no son muy representativos y el coste
computacional es elevado.
GRAFO DE VECINDAD RELATIVA
El grafo de vecindad relativa RNG es un subgrafo de la
triangulación de Delaunay establecida por el Grafo Preservador
de la Topología GPT que:
• posee su mismo conjunto de vértices A,
• posee aquellas aristas (p ,q ) ∈ C que cumplen que
Λ p ,q ∩C = φ , donde Λ p ,q = B (p ,δ (p ,q )) ∩ B (q ,δ (p ,q )) es
una luna o intersección entre dos círculos; esto es, no
existe ningún punto z que esté más cercano a p que q ,
y no existe ningún punto z que esté más cercano a q
que p .
ÁRBOL DE EXPANSIÓN MÍNIMO
El árbol de expansión mínimo MST es un subgrafo de la
triangulación de Delaunay establecida por el Grafo Preservador
de la Topología GPT que:
• posee su mismo conjunto de vértices A,
CAPÍTULO 3
86
• posee aquellas aristas (p ,q ) ∈ C que forman un árbol de
longitud total mínima, de entre todos los posibles árboles
que se pueden formar a partir del grafo GPT .
GRAFO DE VECINOS MÁS CERCANOS
El grafo de vecinos más cercanos NNG es un subgrafo de la
triangulación de Delaunay establecida por el Grafo Preservador
de la Topología GPT que:
• posee su mismo conjunto de vértices A,
• posee aquellas aristas
B (p ,δ (p ,q )) ∩C = φ .
( p ,q ) ∈ C
Figura 3.12. Subgrafos del
que cumplen que
GPT.
CARACTERIZACIÓN DE L
LA
A TOPOLOGÍA DEL GPT
Dentro de este apartado se incluyen todas aquellas medidas que
pueden ser obtenidas de la propia topología del Grafo Preservador
de la Topología. Esta información aporta datos sobre las
REPRESENTACIÓN Y CARACTERIZACIÓN DE OBJETOS
87
características morfológicas de los objetos. Entre ellas, se pueden
obtener:
• Número de aristas: un mayor número de aristas sugiere
una forma del objeto más compacta, ya que existe una
mayor capacidad de conexión (Tabla 3.3).
• Histograma de vecindad: obtención del número de
neuronas que poseen cada una de las vecindades. En la
Figura 3.13 se observa que las figuras más compactas
poseen unas vecindades más altas. Por otro lado, si el
objeto posee esquinas (cuadrado) o zonas muy estrechas
(los dedos de la mano) se generan neuronas con baja
vecindad.
• Medidas estadísticas de las vecindades: datos como la
vecindad media, la mediana, la desviación típica,...
aporta información similar a la del histograma de
vecindades (Tabla 3.4).
• Medidas estadísticas de las longitudes de las aristas: la
presencia en un GPT de aristas de menor longitud
sugiere la presencia de más aristas y, por tanto, una
forma compacta (Tabla 3.3).
• Número y tipos de polígonos: aunque el GPT debería
realizar una triangulación del espacio de entrada, al
estar inducida por el objeto, provoca que algunas de las
aristas de la triangulación de Delaunay desaparezcan y,
por tanto, se presenten líneas, así como otros polígonos.
Objeto
Nº de
aristas
Longitud
Media
Mediana
Desviación
típica
Cuadrado
258 / 258
17.67 / 17.63
17.46 / 17.49
1.88 / 1.91
Círculo
256 / 257
16.71 / 16.77
16.76 / 17.03
2.02 / 2.06
Anillo
226 / 227
17.17 / 17.17
17.00 / 17.12
2.06 / 2.09
Mano
228 / 228
19.07 / 19.06
18.87 / 18.97
2.25 / 2.26
Tabla 3.3. Información extraída del número y longitud de las aristas.
CAPÍTULO 3
88
Figura 3.13. Histograma de vecindad.
Objeto
Nº de
vecindades
Vecindad
media
Mediana
Desviación
típica
Cuadrado
516 / 516
5.16 / 5.16
6/6
1.20 / 1.22
Círculo
512 / 514
5.12 / 5.14
6/6
1.25 / 1.30
Anillo
454 / 452
4.54 / 4.52
4/4
1.27 / 1.26
Mano
456 / 456
4.56 / 4.56
4/4
1.18 / 1.17
Tabla 3.4. Información extraída de las vecindades.
MOMENTOS
Al igual que en el caso de los contornos, el cálculo de los
momentos de una superficie es uno de los métodos más
utilizados para su caracterización.
Dado un
GPT se define su momento de orden (p + q ) como:
m pq =
para
p ,q = 0 ,1 ,2 ,...
∑x p y q
∀ (x , y )∈A
(3.8)
REPRESENTACIÓN Y CARACTERIZACIÓN DE OBJETOS
89
Sus momentos centrales pueden ser expresados como:
µ pq =
∑ (x − x ) p (y − y )q
∀(x , y )∈A
(3.9)
donde
x =
m 10
m
, y = 01
m 00
m 00
(3.10)
Finalmente, los momentos centrales normalizados se definen
como:
η pq =
µ pq
µ00γ
(3.11)
donde
γ =
para
p +q
+1
2
(3.12)
p + q = 2 ,3 ,...
A partir de estos momentos, se pueden obtener un conjunto de
siete momentos invariantes (Hu, 1962):
φ1 = η20 + η02
(3.13)
φ 2 = (η20 − η02 )2 + 4η112
(3.14)
φ 3 = (η30 + 3η12 )2 + (3η21 − η03 )2
(3.15)
φ 4 = (η30 + η12 )2 + (η21 + η03 )2
(3.16)
CAPÍTULO 3
90
[ η30 + η12 )2 − 3 (η21 + η03 )2 ]+
φ 5 = (η30 − 3η12 )(η30 + η12 )(
[
+ (3η21 − η03 )(η21 + η03 ) 3 (η30 + η12 )2 − (η21 + η03 )2
]
φ6 = (η20 − η02 ) + [(η30 + η12 )2 − (η21 + η03 )2 ]+
+ 4η11 (η30 + η12 )(η21 + η03 )
[ η30 + η12 )2 − 3 (η21 + η03 )2 ]+
φ7 = (3η21 − η30 )(η30 + η12 )(
[
+ (3η12 − η30 )(η21 + η03 ) 3 (η30 + η12 )2 − (η21 + η03 )2
]
(3.17)
(3.18)
(3.19)
Estos momentos obtenidos a partir de los GPT son válidos para
la clasificación y reconocimiento de los objetos (Tabla 3.5).
Cuadrado
Círculo
Anillo
Mano
η 20
23.18 / 23.44
20.71 / 20.89
38.13 / 37.95
45.72 / 45.45
η02
21.70 / 21.32
18.35 / 18.64
36.24 / 36.33
23.92 / 23.98
η11
-0.12 / 0.13
0.22 / -0.26
0.01 / -0.05
1.23 / 1.58
η 30
-0.32 / -0.45
-0.75 / -0.15
-0.81 / 3.60
21.21 / 18.62
η12
-0.08 / -1.42
0.11 / 0.32
1.08 / 3.12
47.06 / 46.21
η21
-0.80 / 0.30
0.32 / 0.66
-0.34 / -0.42
-15.29 / -15.41
η03
0.94 / 1.02
1.15 / -0.30
-4.12 / -7.59
7.96 / 9.93
φ1
44.88 / 44.76
39.07 / 39. 53
74.37 / 74.29
69.63 / 69.43
φ2
2.26 / 4.56
5.77 / 5.35
3.59 / 2.61
481.66 / 471.06
φ3
2.42 / 25.86
4.64 / 3.44
32.32 / 246.48
27807 / 26042
φ4
0.18 / 5.24
2.57 / 0.15
19.98 / 109.40
4714.47 / 4232.51
φ5
-0.22 / 11.45
-4.00 / 0.04
337.05 / 2087.62
-31364862 / -28128226
φ6
0.23 / 2.36
-4.98 / -0.28
-37.62 / -20.84
97994 / 87341
φ7
0.09 / -39.30
5.15 / -0.13
358.62 / 1523.76
-32844276 / -25550254
Tabla 3.5. Momentos del
GPT.
REPRESENTACIÓN Y CARACTERIZACIÓN DE OBJETOS
91
EXTRACCIÓN DEL CONTORNO
CONTORNO DEL GPT
Dado un GPT de un objeto, se define su contorno como el
conjunto de aristas que pertenecen únicamente a un polígono.
Resultados de la aplicación de esta operación a varios objetos se
presentan en la Figura 3.14.
Figura 3.14. Contorno del
GPT.
ESQUELETIZACIÓN (EJE MEDIO
MEDIO)
Tal y como se ha explicado anteriormente el GPT establece una
esqueletización del objeto. Sin embargo, la representación del
objeto mediante un esqueleto más ampliamente utilizada es la
obtenida a partir de la transformada del eje medio, mucho más
simple que el resultado obtenido en este trabajo. Este esqueleto
viene definido por aquellos centros de círculos inscritos en el
objeto que no están incluidos completamente en otro círculo. El
resultado final presenta una figura estilizada del objeto.
Dado el gran número de trabajos que emplean la transformada
del eje medio, se ha planteado la obtención del eje medio del
objeto a partir de su GPT . Para ello, se calcula el diagrama de
Voronoi de las aristas que forman el contorno del grafo (Figura
3.15). Mediante la unión de aquellos puntos que son frontera
para tres o más regiones de Voronoi se obtiene el esqueleto del
objeto (Figura 3.16).
De igual modo, se puede operar con el
contorno del objeto.
GPT ∇ obtenido a partir del
CAPÍTULO 3
92
Figura 3.15. Diagrama de Voronoi del contorno del
GPT.
Figura 3.16. Esqueletos.
3.3 APLICACIÓN
PLICACIÓN A LA SÍNTESIS DE IMÁGENES
La capacidad de compresión de información de las redes
neuronales auto-organizativas se ve claramente demostrada en
este trabajo. La representación de un objeto bidimensional
mediante un GPT
extrae la información topológica más
importante para realizar el análisis de la forma del objeto.
REPRESENTACIÓN Y CARACTERIZACIÓN DE OBJETOS
93
En este punto, se plantea el problema inverso: ¿cómo generar la
forma del objeto a partir de su GPT ? Es decir, cómo aplicar este
trabajo a la síntesis de objetos.
Para ello, se procede siguiendo dos alternativas, dependiendo de
la información disponible en el momento de realizar la síntesis:
• Si en el momento de la adaptación del GPT se guarda
información asociada a cada neurona, relativa a la
distancia r al punto del contorno del objeto más cercano
a la misma; se procede a dibujar para cada una de las
neuronas un círculo con radio r .
• Si únicamente se dispone del GPT , sin información
adicional, se procede a dibujar círculos con centro en
cada una de las neuronas y con un radio r que está en
función del conjunto de aristas que salen de cada una de
ellas:
ri =
∑ wi −w j
∀j ∈N i
card (N i )
2
(3.20)
Asimismo, si se guarda información de la intensidad o color del
punto de la imagen que corresponde a cada una de las neuronas,
se puede dotar a cada uno de los círculos de dicho tono, de modo
que la síntesis posea la misma apariencia visual que el objeto real
(Figura 3.17). Para mejorar la calidad de la síntesis, eliminando el
efecto del dibujo de múltiples círculos, se realiza un filtrado
(mediana, erosión / dilatación,...).
Por supuesto, existen técnicas más complejas de sintetización de
objetos y de coloreado de los mismos, que podrían ser empleados;
las cuales se han dejado para trabajos posteriores.
CAPÍTULO 3
94
Figura 3.17. Síntesis a partir de un
GPT.
3.4 EJEMPLO DE APLICACIÓN: CLASIFICACIÓN DE
OBJETOS
En este punto, se aplica el modelo a la clasificación de objetos
según su estructura externa. Para ello, se realiza la adaptación
de una Growing Neural Gas al contorno de los objetos,
obteniendo una caracterización de su forma.
Se ha empleado una base de datos de 1100 imágenes de
contornos de peces utilizada en trabajos relacionados con la
REPRESENTACIÓN Y CARACTERIZACIÓN DE OBJETOS
95
búsqueda de similitud entre formas (Mokhtarian et al., 1996)
(Veltkamp y Hagedoorn, 1999). Cada uno de los ficheros contiene
un objeto representado por un número variable (entre 400 y
1600) de coordenadas x e y.
3.4.1 DESCRIPCIÓN GLOBAL DEL
DEL SISTEMA
El procedimiento a seguir es similar al presentado al inicio de
este capítulo. En primer lugar, se debe extraer el campo de
potencial normalizado ψ ∇ , es decir, la probabilidad de cada uno
de los puntos de pertenecer al contorno del objeto. Sin embargo,
este paso no es necesario en esta aplicación, ya que la base de
datos provee ya los contornos.
A continuación se procede a extraer el grafo preservador de la
topología del contorno del objeto, mediante la adaptación del gas
neuronal, en este caso una Growing Neural Gas.
Con esta estructura se puede actuar de dos modos: empleando el
propio grafo preservador de la topología como entrada al
clasificador, o extrayendo un vector de características a partir del
mismo (Figura 3.18). En este apartado, se abordarán ambas
posibilidades.
Imagen
Extracción del
contorno
ψ∇
Cálculo del Grafo
Preservador de la
Topología
GPT
Clasificación
Clase
GPT
Extracción de
características
Vector de
características
Clasificación
Clase
Figura 3.18. Sistema de clasificación de formas.
CAPÍTULO 3
96
La clasificación se va a realizar, igualmente, con una Growing
Neural Gas, pero en este caso con su empleo usual como
clasificadora de patrones.
3.4.2 OBTENCIÓN DEL GPT DEL CONTORNO
A partir del campo de potencial normalizado se realiza el
aprendizaje de la Growing Neural Gas, siguiendo el algoritmo del
punto 2.2.2 con ε 1 = 0.1 , ε 2 = 0.01 , λ = 10000 , α = 0 , β = 0 . En
este caso en particular, se educa la red con la condición de que
finalice la adaptación cuando posea 100 neuronas.
Debido a la complejidad de algunos de los contornos se producen
aristas indeseadas, que deben ser eliminadas para obtener una
representación adecuada (Figura 3.19). Para ello, se localiza un
ciclo que posea tantas aristas como neuronas posee la red. Se ha
observado que esta operación es muy costosa en determinados
casos, por lo que se está buscando algún tipo de solución, alguna
de las cuales se presenta en el capítulo de “Líneas de
continuación”.
Figura 3.19. Obtención y simplificación del grafo del contorno.
REPRESENTACIÓN Y CARACTERIZACIÓN DE OBJETOS
97
3.4.3 CLASIFICACIÓN DE CONTO
CONTORNOS A PARTIR DEL GPT
En este caso, la red neuronal clasificadora, una Growing Neural
Gas, tiene como entrada un grafo preservador de la topología, que
es, asimismo, otra Growing Neural Gas. Esta es una situación
que no se suele dar en la literatura, en la que la entrada a una
red neuronal sea otra red neuronal. Por ello, se debería continuar
con esta línea de trabajo para extraer posibles conclusiones que
llevaran al desarrollo de nuevos modelos.
El grafo obtenido en el paso previo es normalizado a traslación,
orientación y escalado, del siguiente modo:
• se obtiene su centro de masas situándolo en el origen de
coordenadas,
• se localiza la neurona más alejada al centroide, rotando
todo el grafo para situarla en la horizontal,
• se inscribe el contorno en un círculo de radio estándar
Se realiza el aprendizaje de la red clasificadora, que posee 200
neuronas, empleando los mismos parámetros que para la
extracción del contorno, con los 1100 GPT normalizados
obtenidos de los respectivos contornos; de modo que, finalmente,
cada una de las neuronas posee como vector de referencia el
contorno determinado por un GPT .
Una vez completado el aprendizaje de la red, se realiza un ciclo de
etiquetado, asociando cada uno de los patrones de entrada con la
neurona cuyo contorno es más similar.
En la Figura 3.20 se muestra el resultado de la clasificación de
diversos peces según este método: en la parte superior se
muestra los GPT
representantes de algunas neuronas,
asociando a éste diversos peces para los que dicha neurona es la
más cercana.
CAPÍTULO 3
98
Figura 3.20. Clasificación de los objetos a partir del
GPT.
3.4.4 CLASIFICACIÓN DE CONT
CONTORNOS
ORNOS A PARTIR DE
CARACTERÍSTICAS EXTRAÍDAS
EXTRAÍDAS DEL
GPT
La segunda alternativa en el empleo del GPT
como
caracterizador del contorno de los objetos, es la extracción de un
vector de características a partir del mismo, que reduzca la
dimensionalidad de los patrones de entrada y mejore la
caracterización. En este caso, se han probado dos de los métodos
presentados previamente: los análisis de firmas normalizadas y
de curvaturas. En ninguno de estos casos es necesario realizar
un proceso de transformación del GPT
original para
normalizarlo.
El tamaño de estos vectores de características es igual al número
de neuronas del GPT . En ambos casos, se observa que tras
realizar el aprendizaje de la red clasificadora, se obtienen como
vectores de referencia, funciones suavizadas de las firmas y
curvaturas (Figuras 3.21 y 3.22). En el primer caso no es un
problema, pero sí que se han encontrado dificultades en el caso
del análisis de curvaturas ya que las funciones son mucho más
REPRESENTACIÓN Y CARACTERIZACIÓN DE OBJETOS
99
fluctuantes entre valores positivos y negativos. Esto produce que
el suavizado lleve la mayor parte de los valores de las curvaturas
a cero. Sin embargo, los valores significativos (picos o valles) de la
función permiten realizar una correcta clasificación de los peces.
3.5 CONCLUSIONES
En este capítulo se ha demostrado la capacidad de
representación de objetos bidimensionales, mediante un gas
neuronal. Estableciendo una función de transformación
adecuada, el modelo es capaz de adaptarse tanto a las
características internas como externas del objeto, obteniendo lo
que se ha denominado Grafo Preservador de la Topología.
El modelo, por su propio método de adaptación, es capaz de
dividirse de modo que pueda extraer los múltiples contornos que
puede tener un objeto, así como caracterizar las diferentes partes
en las que pueda estar fragmentado.
Con el objetivo de facilitar y acelerar tareas de más alto nivel,
como clasificaciones y reconocimientos, se extraen características
de este grafo, como momentos, esqueletos, firmas,...
No sólo se obtienen resultados prometedores en el análisis de
objetos, sino que su aplicación a la síntesis de objetos ha sido
también satisfactoria. La triangulación de Delaunay establecida
por el modelo, permite una compresión de la información de la
morfología, a partir de la cual se consigue sintetizar
correctamente el objeto.
Para finalizar, se ha mostrado la capacidad de representación de
la forma de los objetos que posee el modelo. Para ello, se ha
extraído el contorno de los objetos mediante un GPT ,
empleándolo para la clasificación de los mismos. Se han
presentado dos posibles alternativas: la primera de ellas
novedosa, en cuanto a que el vector de características y el
clasificador son redes neuronales auto-organizativas del mismo
tipo; la segunda de ellas, usual, en la que se extraen
características del contorno, construyendo un vector que sirve de
entrada a la red clasificadora.
CAPÍTULO 3
100
Figura 3.21. Clasificación de los objetos según su firma.
REPRESENTACIÓN Y CARACTERIZACIÓN DE OBJETOS
Figura 3.22. Clasificación de los objetos según su curvatura.
101
Capítulo 4
SEGUIMIENTO DE OBJETOS
OBJETOS Y
ANÁLISIS DEL MOVIMIENTO
MOVIMIENTO
En este capítulo se extiende el empleo de los gases neuronales al
tratamiento de secuencias de imágenes, en particular para
resolver los problemas de seguimiento de objetos y análisis de su
movimiento. Aprovechando el carácter dinámico de las redes
neuronales auto-organizativas, que permite aprender nuevos
patrones de entrada sin tener que reiniciar el aprendizaje, se va a
modelar el movimiento de los objetos a partir de los cambios que
se producen en la red de interconexión entre los diferentes
elementos de procesamiento.
Haciendo uso de este modelo de representación, se plantea el
problema del reconocimiento de gestos de la mano. Este se
resuelve adaptando la red neuronal a la forma de la mano en
cada instante, y readaptándola para cada una de las posturas de
un gesto.
El proceso de seguimiento de objetos y análisis del movimiento
incorpora operaciones a varios niveles de procesamiento, tal y
como se muestra en la Figura 4.1.
CAPÍTULO 4
104
Imágenes
Segmentación
Extracción de
características
Análisis del
movimiento
Seguimiento
Operaciones de alto nivel
(estructura a partir del
movimiento, tiempo para
colisión,...)
Figura 4.1. Etapas del problema del análisis del movimiento.
4.1 SEGUIMIENTO DE OBJETOS
OBJETOS
El seguimiento de un objeto consiste en calcular la posición y
forma del mismo en cada una de las imágenes de una secuencia.
Como el problema general es muy complicado, se abordan
simplificaciones realistas o adecuadas a problemas concretos.
Para el movimiento elástico, en particular, se suelen tomar
algunas asunciones sobre la dinámica de los objetos (Sonka et
al., 1998):
• Velocidad restringida: si se asume que el objeto en
movimiento es muestreado a intervalos de tiempo dt , el
objeto se encontrará situado dentro de un círculo con
centro en su posición anterior y radio c max dt , donde
c max es la máxima velocidad que puede tomar el objeto.
• Aceleración pequeña: el cambio en la velocidad en un
tiempo dt está limitado.
• Movimiento común: todos los puntos del objeto se
mueven de forma similar.
Con estas consideraciones, se establece el movimiento de un
objeto como las variaciones que realiza un objeto, tanto en
posición como en forma, durante un periodo de tiempo:
[
]
M = [O (t )], t ∈ t 0 ,t f
(4.1)
con sus correspondientes apariencias geométricas y visuales
[
]
O (t ) = AG (t ), AV (t )
(4.2)
SEGUIMIENTO DE OBJETOS Y ANÁLISIS DEL MOVIMIENTO
105
Esto significa que el objeto puede variar su apariencia visual, por
ejemplo si se presentan cambios en la iluminación, por lo que la
arquitectura representativa debe ser capaz de soportar estas
variaciones.
El seguimiento de un objeto puede realizarse mediante la
obtención del Grafo Preservador de la Topología del objeto en
cada una de las imágenes, y para ello, se deberán tener en cuenta
las posibles modificaciones en la apariencia visual del objeto.
Siguiendo el esquema de aprendizaje de la morfología de un
objeto propuesta en el capítulo 3, el proceso de seguimiento
consta de las siguientes fases:
• cálculo de la función de transformación
• predicción de la nueva posición del
• readaptación del
ψT
,
GPT ,
GPT .
4.1.1 CÁLCULO DE LA FUNCIÓN DE TRANSFORMACIÓN
Dado que la apariencia visual del objeto puede variar con el
tiempo, es necesaria la modificación de la función de
transformación ψ T en cada instante, para realizar una correcta
segmentación del objeto a lo largo de toda la secuencia.
Para ello, se actualiza en cada una de las imágenes los valores de
la propiedad T que posee el objeto. Se extraen dichos valores de
las posiciones que poseen los nodos del GPT para la imagen
anterior:
ψ T (x , y ,t ) = f T (I (x , y ,t ),GPT (t − 1 ))
(4.3)
Por ejemplo, si la propiedad visual T es el nivel de gris, y la
función que segmenta el objeto f T es una umbralización, ésta
puede variar para cada una de las imágenes; calculando el nuevo
umbral a partir de los valores I (w i ) , para todos los nodos i del
GPT previo.
106
CAPÍTULO 4
De modo, que se varía de forma dinámica la función de
transformación que calcula la probabilidad de cada uno de los
puntos de pertenecer al objeto.
4.1.2 OBTENCIÓN
BTENCIÓN DEL GPT
Como resultado del paso anterior, a partir de una imagen I (t ) , se
calcula la correspondiente transformación ψ T (t ) . A partir de
ésta, se obtiene la representación del objeto, mediante la
adaptación del GPT .
Para el instante inicial t i se obtiene el GPT correspondiente de
forma directa. Sin embargo, dadas las características dinámicas
de las redes neuronales auto-organizativas, para las imágenes
posteriores, en lugar de partir de cero en el aprendizaje, se toma
la red previa como punto de inicio. Esto provoca que con una sola
iteración del mapa se consiga su readaptación a la nueva
posición del objeto.
PREDICCIÓN DE LA NUEVA
NUEVA POSICIÓN DEL GPT
Sin embargo, tal y como está presente en la mayor parte de
trabajos relacionados con seguimiento de objetos, es necesario
predecir la posición del nuevo mapa, previamente a esta
adaptación. Ese proceso facilita el aprendizaje ya que se realiza
una seudo-adaptación considerando los movimientos que están
desarrollando los diversos elementos de procesamiento.
Por ejemplo, en la Figura 4.2 se muestra el estado de un GPT
antes de realizar una predicción. Partiendo desde la
representación de la instancia previa del objeto, su readaptación
no será correcta, ya que es complicado que las neuronas vuelvan
a situarse en el dedo correspondiente. Más bien, se intentarán
readaptar de modo que, tras varias iteraciones, se obtenga una
nueva representación del objeto, sin que tenga relación la
posición que ocupa una neurona con la posición que ocupaba
previamente.
SEGUIMIENTO DE OBJETOS Y ANÁLISIS DEL MOVIMIENTO
Figura 4.2. Posición del
107
GPT antes de la predicción.
Existen diferentes mecanismos de predicción. Si la frecuencia de
muestreo de imágenes es alta en relación con la velocidad del
objeto, puede bastar una simple extrapolación, basada en las
posiciones previas de cada una de las neuronas
w ipred (t ) = 2 w i (t − 1 ) − w i (t − 2 )
Si se desea contar con un histórico de tres
siguiente expresión:
(4.4)
GPT se emplea la
w ipred (t ) = a + b + c
(4.5)
donde
a   0.5
  
b  = − 1.5
c   1
−1
2
0
0.5  w i (t − 1 )

 
− 0.5  ⋅ w i (t − 2 )
0  w i (t − 3 )
(4.6)
READAPTACIÓN DEL GPT
pred
A partir del GPT
, se realiza el proceso de adaptación de la red
para la nueva posición y forma del objeto. El resultado final es
pred
función de la transformación ψ T (t ) y de GPT
(t ) .
La
proximidad
de
la
predicción
realizada
al
GPT
correspondiente, provoca, en muchos casos, que sea necesaria
una sola ejecución del bucle principal del algoritmo de
aprendizaje del gas neuronal para completar la readaptación.
CAPÍTULO 4
108
De este modo, la segmentación, representación y seguimiento del
objeto, se realiza en una única operación de adaptación del grafo.
4.2 ANÁLISIS DEL MOVIMIENTO
MOVIMIENTO
El análisis del movimiento comprende el
variaciones en posición y forma de los objetos.
estudio
de
las
El análisis del movimiento que realiza un objeto se aborda,
generalmente, mediante dos técnicas:
• Basado en el reconocimiento: donde el objeto es
reconocido en cada una de las imágenes de la secuencia.
De modo, que el movimiento viene determinado por las
diversas instancias que toma el objeto a lo largo del
tiempo.
• Basado en el movimiento: el análisis viene dado por las
trayectorias que toman determinados puntos del objeto.
Esta solución es menos costosa ya que se evita el
reconocimiento del objeto en cada imagen.
La arquitectura desarrollada basada en la adaptación dinámica
de GPT permite ambos modos de análisis.
El objeto puede ser reconocido a partir de su GPT . En el capítulo
3 se han introducido varias características que permiten
identificar las diferentes instancias de un objeto, de modo que se
pueda construir una cadena de formas y posiciones del mismo
para identificar el movimiento realizado.
Más interesante desde el punto de vista computacional, el modelo
aporta una herramienta de análisis basado en el movimiento muy
potente, ya que se evita el problema de correspondencia para
construir la trayectoria de los puntos de interés. Análogamente a
cuando se trabaja con marcadores, la determinación de las
trayectorias es inmediata, ya que únicamente hay que realizar un
seguimiento a los diferentes nodos del GPT .
SEGUIMIENTO DE OBJETOS Y ANÁLISIS DEL MOVIMIENTO
109
4.2.1 OBTENCIÓN DE LAS TRAY
TRAYECTORIAS
ECTORIAS
El movimiento de un objeto se interpreta como las trayectorias
seguidas por cada una de las neuronas del GPT :
M = [Tray i ], ∀i ∈ A
(4.7)
donde la trayectoria viene determinada por la sucesión de
posiciones de cada una de las neuronas a lo largo del mapa:
{
Tray i = w i t0 ,...,w i t f
}
(4.8)
El empleo de trayectorias directamente no suele proveer
información suficiente para abordar el reconocimiento del
movimiento, por lo que se acostumbra a realizar una
parametrización de las mismas.
En (Cédras y Shah, 1995) se presentan algunas propuestas de
parametrización. Una de las más utilizadas es el cálculo de sus
velocidades v x y v y , calculadas como:
v xt =
w x t − w x t −1
v yt =
∆t
w y t − w y t −1
∆t
(4.9)
Estas velocidades son invariantes a traslación, pero no a rotación
o escalado. Por otro lado, la velocidad y la dirección del
movimiento se determinan como:
vt =
(w
xt
− w x t −1
) + (w
2
yt
− w yt −1
 w y − w y t −1
d t = arc tan  t
wx −wx
t −1
 t




)
2
(4.10)
(4.11)
Estas dos medidas son invariantes a traslación y rotación.
Además, la dirección es invariante a escalado. Sin embargo, es
muy sensible al ruido, debido al cálculo del arco tangente.
CAPÍTULO 4
110
Otra representación usual de las trayectorias es la curvatura
espacio-temporal κ , calculada como:
κ=
((w
A2 + B2 +C 2
) + (w 'y )2 + (t ' )2 ) 2
(4.12)
3
' 2
x
donde
A=
w 'y
t'
w 'y'
t ''
A=
t'
w 'x
t ''
w 'x'
A=
w 'x
w 'y
w 'x'
w 'y'
Normalmente, se emplea una discretización para calcular las
''
'
'
'
derivadas, por ejemplo, w x = w x − w x
y wx = wx −wx ,
t
t
t −1
t'
t
' ' t −1
asumiendo que ∆t es constante y, por tanto, t = 1 y t = 0 .
Esta representación tiene la ventaja que captura toda la
información sobre la trayectoria, sin necesitar dos medidas como
en los casos anteriores.
4.2.2 DESCOMPOSICIÓN DEL MO
MOVIMIENTO
VIMIENTO
El movimiento absoluto del objeto presenta dos componentes
(Allmen, 1991):
M = MC + MR
(4.13)
definidos como:
• Movimiento común: definido como el movimiento que
realiza el conjunto del objeto con respecto al observador,
de modo que todos sus elementos comparten dicho
movimiento. Principalmente determina traslaciones,
escalados y rotaciones del objeto.
• Movimiento relativo: definido como el movimiento de
cada uno de los elementos del objeto con respecto a los
otros. Este determina los cambios morfológicos del
objeto.
SEGUIMIENTO DE OBJETOS Y ANÁLISIS DEL MOVIMIENTO
111
En nuestro caso, el movimiento común va a considerarse como la
trayectoria que sigue el centroide del GPT :
{
M C = Tray c m = c mt ,...,c mt
0
f
}
(4.14)
Por otro lado, el movimiento relativo va a venir determinado por
los cambios de posición de cada una de las neuronas con
respecto a dicho centroide:
[
]
M R = Tray ic m , ∀i ∈ A
donde
{
Tray icm = w it − c mt ,...,w i t f − c mt
0
0
(4.15)
f
}
(4.16)
4.3 EJEMPLO DE APLICACIÓN: RECONOCIMIENTO DE
GESTOS
Para mostrar la potencia del modelo desarrollado, se va a tratar el
problema del reconocimiento de gestos de la mano. Esta es una
de las áreas donde más trabajo se está realizando como
aplicación del análisis del movimiento. Este es un problema
bastante completo dentro del movimiento no-rígido, siendo
además una de las más interesantes de resolver, debido a la
complejidad morfológica de la mano. El elevado número de grados
de libertad de la mano y los dedos (Figura 4.3) produce multitud
de posibles posiciones del objeto (mano) así como de oclusiones,
que dificultan considerablemente su seguimiento.
4.3.1 INTRODUCCIÓN
Si bien la comunicación oral puede considerarse como la más
importante, los gestos introducen una información adicional que
es muy importante para la expresión y comprensión humana. En
el caso de ausencia de voz, los gestos adquieren capital
importancia. Aunque los gestos son expresados con todo el
cuerpo, la mayoría de ellos están relacionados con la mano. Nos
comunicamos mediante gestos de la mano.
CAPÍTULO 4
112
Figura 4.3. Grados de libertad de la mano (Dorner, 1994).
Los movimientos de la mano tienen diferentes funciones (Cadoz,
1994):
• Semiótica: para comunicar información con significado.
En este caso los gestos están íntimamente relacionados
con el habla
• Ergótica: asociada con la noción de trabajo y la
capacidad de los humanos de manipular el mundo físico
con el objetivo de satisfacer determinadas necesidades.
Se incluyen operaciones para empujar, agarrar o soltar
objetos
• Epistémica: que permite a los humanos aprender del
entorno mediante la experiencia o exploración táctil
En este caso se centra la atención en la vertiente semiótica de los
gestos de la mano. Dentro del carácter lingüístico de éstos se
pueden destacar dos aspectos (McNeill, 1996): gesticulación y
lenguaje de signos.
SEGUIMIENTO DE OBJETOS Y ANÁLISIS DEL MOVIMIENTO
113
La gesticulación no puede ser considerada como “lenguaje” del
cuerpo, sino que complementa la comunicación oral. En el
lenguaje de signos cada uno de los gestos corresponde a un
concepto, aunque no tenga necesariamente una equivalencia con
palabras del lenguaje hablado. Ejemplos de lenguajes de signos
son el Lenguaje de Signos Americano (ASL) y el lenguaje de los
sordomudos.
Quek (1994) describe diferentes características de los gestos:
1. Los gestos están contenidos en movimientos que
comienzan desde una posición de descanso, continúan
con una fase de aumento sustancial de velocidad y que
finalizan volviendo a una posición de descanso.
2. La mano asume una configuración particular durante el
movimiento.
3. Lentos movimientos entre posiciones de descanso no son
gestos.
4. Los gestos de la mano deben estar limitados a un cierto
área del espacio.
5. Los gestos estáticos de la mano requieren un periodo
finito de tiempo para ser reconocidos.
6. Movimientos repetitivos de la mano pueden ser gestos.
Todo esto lleva a considerar (Huang y Pavlovic, 1995) los gestos
de la mano como:
• gestos estáticos: caracterizados por la postura que está
determinada por una configuración y orientación
particular de los dedos y la palma de la mano,
• gestos dinámicos: caracterizados por la configuración de
la mano en las posiciones inicial y final de descanso y
por su movimiento.
114
CAPÍTULO 4
4.3.2 TRABAJOS PREVIOS
Existen diferentes mecanismos para capturar elementos
importantes de la mano, pudiendo dividirlos en dos grandes
grupos: sistemas basados en visión y dispositivos mecánicos. No
hay ningún sistema que aporte todas las características deseadas
para la captura de información de la posición, postura y
movimiento de la mano, algunos son caros, otros molestos, otros
ambiguos en sus lecturas... Los sistemas basados en visión
tienen la ventaja de que no requieren que el usuario porte nada
sobre su cuerpo, pero tienen el problema de las oclusiones y de
los diferentes grados de iluminación. Por otro lado, los
dispositivos mecánicos no poseen estos inconvenientes pero son
molestos de usar. Los usuarios preferirán un sistema al cual no
tengan que prestar atención y que no les limite en su trabajo o
movimientos habituales.
Existen multitud de dispositivos mecánicos (Sturman, 1991) para
la extracción de la postura de la mano, algunos de los cuales
también permiten recuperar la posición y orientación de la
misma. Se han diseñado multitud de guantes con transductores
que determinan la posición de los dedos.
ANÁLISIS BASADO EN VI
VISIÓN
SIÓN
La generación de trayectorias de movimiento a partir de una
secuencia de imágenes implica, normalmente, la detección de
elementos en cada imagen, y la correspondencia de cada uno de
esos elementos de una imagen en la siguiente. Estos elementos
deben ser suficientemente diferenciables para su detección fácil y
deben ser estables en el tiempo para que puedan ser
correctamente seguidos. Podemos encontrarnos diferentes tipos
de elementos: aristas, esquinas, puntos de interés (Figura 4.4),
centroides, regiones...
Sin embargo, estos métodos conllevan la solución de varios
problemas complejos: segmentación de la mano en un entorno
complejo, seguimiento de la posición de la mano, reconocimiento
de las posturas de la mano y análisis del movimiento.
SEGUIMIENTO DE OBJETOS Y ANÁLISIS DEL MOVIMIENTO
115
Figura 4.4. Localizaciones típicas de los puntos de interés de la mano
(Sturman, 1991).
Para evitar el problema de segmentación, muchos de los sistemas
desarrollados emplean marcadores o guantes coloreados para
localizar fácilmente los puntos de interés. En otros casos, los
gestos son realizados frente un fondo homogéneo para extraer la
mano con una simple umbralización.
El resto de problemas son solucionados limitando el tamaño del
vocabulario de gestos a reconocer e, incluso, reconociendo
únicamente posturas estáticas de la mano.
Los sistemas de reconocimiento de gestos pueden ser clasificados
según la técnica empleada para la extracción y seguimiento de la
mano: análisis basados en modelos de la mano (Rehg y Kanade,
1993) (Shimada et al., 1998), análisis usando marcadores (Davis
y Shah, 1993) o guantes coloreados (Dorner, 1994), y análisis
basados en propiedades de la imagen (Starner y Pentland, 1995)
(Starner et al., 1998) (Campbell et al., 1996) (Triesch y von der
Malsburg, 1996). Relaciones más amplias de trabajos en este
campo se presentan en (Huang y Pavlovic, 1995) (Kohler y
Schröter, 1998).
CAPÍTULO 4
116
4.3.3 DESCRIPCIÓN GLOBAL DE
DEL
L SISTEMA PROPUESTO
Se propone un sistema de reconocimiento de gestos que emplea
una Growing Neural Gas para caracterizar la postura de la mano.
El gesto, determinado por las sucesivas posturas, es extraído a
partir de las trayectorias que siguen cada uno de los nodos.
Para reconocer el gesto, se realiza una normalización del GPT
para hacerlo invariante a traslación y escalado. Por otro lado, se
normalizan las trayectorias seguidas por los nodos para hacerlas
invariantes a rotaciones.
El esquema del sistema completo se muestra en la Figura 4.5.
CARACTERIZACIÓN DE LAS POSTURAS
Obtención del
Imágenes
de la mano
GPT
Normalización
a traslación y
escalado
CARACTERIZACIÓN DEL GESTO
Obtención de
las trayectorias
de los nodos
Normalización
a rotación
RECONOCIMIENTO DEL GESTO
Gesto
Reconocimiento
del gesto
Figura 4.5. Sistema de reconocimiento de gestos.
4.3.4 CARACTERIZACIÓN DE LA POSTURA DE LA MANO CON
UNA GNG
OBTENCIÓN DE LA GNG DE LA MANO
Dada una imagen I ∈ R
de la mano, se realiza la
transformación ψ T (x , y ) = T (I (x , y )) que asocia a cada uno de
2
SEGUIMIENTO DE OBJETOS Y ANÁLISIS DEL MOVIMIENTO
117
los puntos de la imagen su probabilidad de pertenecer a la mano,
según una propiedad T .
De modo que considerando ξ = (x , y ) y P ( ξ ) = ψ T (ξ ) , se aplica
el algoritmo de aprendizaje de la GNG a la imagen I , de modo
que la red adapta su topología, dando como resultado una
esqueletización de la mano.
Diversos resultados de la aplicación del algoritmo de aprendizaje
a varias posturas de la mano se presentan en la Figura 4.6.
Figura 4.6. Adaptación de la Growing Neural Gas a diferentes posturas de la
mano.
NORMALIZACIÓN DE LA GNG
Con el propósito de normalizar la red neuronal obtenida, se
realiza una transformación de la GNG para hacerla invariante a
traslación y escalado.
Se puede observar que las neuronas con un mayor número de
vecinas son aquellas que pertenecen a la palma. Por ello, se
CAPÍTULO 4
118
definen los subconjuntos A p
pertenecen o no a la palma:
y
A p como las neuronas que
A p = {n ∈ A / vecinas( n ) > κ }
(4.17)
Ap = A − Ap
(4.18)
donde κ se establece en función del número de neuronas totales
de la GNG.
Una vez encontradas las neuronas que forman parte de la palma,
se identifica el centro de la mano, como el centroide de estas
neuronas:
 m 1 ,0 ( n ) m 0 ,1 ( n ) 
 ,n ∈ A p
C M = x C M , y C M = 
,

m
(
n
)
m
(
n
)
0
0
0
0
,
,


(
)
(4.19)
A continuación, se procede a normalizar la mano, como sigue:
1. Se sitúa el centroide en el centro de la imagen.
2. Se escala la mano, de modo que la palma tenga un
tamaño fijo. Para ello, se obtiene la distancia media de
las neuronas más alejadas al centroide, estableciendo
esta distancia como radio estándar (Figura 4.7). En la
imagen, se representan con puntos blancos las neuronas
pertenecientes a la palma, y con puntos negros las
neuronas de los dedos.
Figura 4.7. Extracción del radio estándar de la palma.
SEGUIMIENTO DE OBJETOS Y ANÁLISIS DEL MOVIMIENTO
119
4.3.5 CARACTERIZACIÓN DE LO
LOS
S GESTOS DE LA MANO CON UNA
GNG
OBTENCIÓN DE LA GNG DEL GESTO
{
}
Sea M 1 , M 2 ,...,M f una secuencia de imágenes de la mano que
forman un gesto, donde M 1 es la postura inicial y M f es la
postura final del mismo.
Se realiza, como se explicó previamente, el aprendizaje de la GNG
para la postura inicial (imagen M 1 ), normalizando la red
obtenida. Posteriormente, se realiza el aprendizaje de la GNG
para la siguiente imagen, M 2 , partiendo de la red obtenida para
la imagen anterior. Por lo tanto, la adaptación a la nueva postura
será muy rápida, dado que únicamente es necesario realizar una
iteración al bucle principal de su algoritmo de aprendizaje. De
modo similar, se opera con el resto de imágenes, obteniendo para
cada una de ellas una GNG que no difiere en demasía de la
calculada previamente.
En la Figura 4.8 se muestran las sucesivas adaptaciones de una
GNG a un gesto realizado por la mano.
Figura 4.8. Adaptación dinámica de las Growing Neural Gas a un gesto completo.
CAPÍTULO 4
120
CARACTERIZACIÓN DEL GESTO
Dado un gesto y su secuencia de GNGs normalizados, se calcula
la trayectoria seguida por cada una de las neuronas. Por tanto,
para una neurona i se calcula su trayectoria T i realizada desde
la GNG inicial a la final. La trayectoria de cada neurona viene
dada por su posición en cada uno de los GNG normalizados:
{(
)(
) (
T i = x i1 , y i1 , x i2 , y i2 ,…, x i n , y i n
)}
(4.20)
Sin embargo, a la hora de reconocer un gesto únicamente se van
a considerar los puntos inicial y final de cada una de las
trayectorias. Esta simplificación ya fue realizada en (Davis y
Shah, 1994), rechazando la posible curvatura de las trayectorias,
dado que será mínima.
{
}
Por tanto, si G = T 1 , T 2 , ...,T n es un gesto a reconocer, cada
trayectoria T i es determinada por sus puntos inicial y final,
ti = ( x i , y i ) y ti = ( x i , yi ) .
o
o
o
f
f
f
A partir de esta definición del gesto, se establece el movimiento
común de la mano como el movimiento que realizan las neuronas
que pertenecen a la palma y, en particular, a la trayectoria que
sigue el centroide C M .
Por otro lado, se define el movimiento relativo de la mano como
los cambios morfológicos que sufre a lo largo del gesto,
determinados por los movimientos de cada una de las neuronas.
Sin embargo, dado que los cambios en la postura de la mano lo
determinan los dedos, únicamente van a ser consideradas las
trayectorias de aquellas neuronas que, en alguna ocasión
durante el gesto, no han pertenecido a la palma; es decir,
pertenecieron a los dedos.
En resumen, el movimiento común de la mano viene determinado
por los nodos pertenecientes a la palma, mientras que el
movimiento relativo viene determinado por las neuronas de los
dedos.
SEGUIMIENTO DE OBJETOS Y ANÁLISIS DEL MOVIMIENTO
121
NORMALIZACIÓN DE LO
LOS
S GESTOS
Con el propósito de normalizar el movimiento relativo de la mano
para hacerlo invariante a rotación, se extrae la dirección media de
las trayectorias seguidas por las neuronas de los dedos,
rotándolas para situar ésta en la vertical (Figura 4.9).
Figura 4.9. Normalización de las trayectorias del gesto.
De este modo, junto con la normalización realizada a cada una de
las posturas de la mano, se obtiene una representación del gesto
invariante a traslación, escalado y rotación.
4.3.6 RECONOCIMIENTO
El reconocimiento del gesto realizado, se efectúa comparando las
trayectorias del mismo con las de otros gestos que se encuentran
CAPÍTULO 4
122
{
en una base de datos, de modo que el patrón P = p 1 , p 2 , ..., p n'
más similar al gesto G es aquel que minimiza la expresión:
n
(
)
n'
(
)
n'

 n

t i o − p j o + t i f − p j f  + ∑ min t i o − p j o + t i f − p j f 
∑ min
j =1
 i =1  j =1

i =1
n + n'
}
(4.21)
Esto es, para cada una de las trayectorias del gesto G se calcula
su distancia a la trayectoria más similar del patrón P , obtenida
como la suma de las distancias entre los inicios y fines de ambas
trayectorias. Este proceso se repite para todas las trayectorias de
G . De igual modo, se realiza la operación en sentido contrario,
comparando cada una de la trayectorias de P con su
correspondiente en G . Por último, se calcula la distancia media
dividiendo entre el número total de trayectorias tomadas en
consideración.
4.3.7 EXPERIMENTACIÓN Y RES
RESULTADOS
ULTADOS
Para realizar los experimentos se ha diseñado un vocabulario de
12 gestos, algunos de los cuales tienen características similares.
En la Figura 4.10 se muestran los estados iniciales y finales de
cada uno de los gestos. Los gestos A a J comienzan con el puño
cerrado, mientras que los dos últimos gestos comienzan con la
palma extendida.
Los gestos han sido tomados con una resolución de 320 x 240
puntos y con 256 tonos de grises. Para evitar el problema de
segmentación, se han realizado los gestos frente un fondo oscuro,
de modo que el filtro ψ T es una función umbral:
0 , si I (x , y ) < umbral
ψ T (x , y ) = 
1 , si I (x , y ) > umbral
(4.22)
La aplicación de este sistema a entornos más complejos, donde se
emplean cámaras en color o los fondos sean heterogéneos, se
reduce a encontrar la transformación adecuada para realizar una
correcta segmentación de la mano.
SEGUIMIENTO DE OBJETOS Y ANÁLISIS DEL MOVIMIENTO
123
Figura 4.10. Posturas de la mano inicial y final de cada uno de los gestos.
Para entrenar al sistema, se ha realizado cada uno de los gestos 5
veces. Posteriormente, se ha procedido a comprobar su
funcionamiento, realizando cada uno de los gestos en 20
ocasiones. En la tabla se presenta la tasa de acierto para cada
uno de ellos.
Como se observa, los gestos similares introducen cierta confusión
en el sistema, errando algunos de los reconocimientos. Dentro de
estos casos, se encuentran los gestos B y H; A, F e I. Asimismo, el
gesto D puede ser interpretado como C, si los dedos corazón y
anular no están muy separados.
CAPÍTULO 4
124
Gesto
Aciertos
Tasa de aciertos
A
20/20
100.00 %
B
18/20
90.00 %
C
19/20
95.00 %
D
19/20
95.00 %
E
20/20
100.00 %
F
20/20
100.00 %
G
20/20
100.00 %
H
19/20
95.00 %
I
19/20
95.00 %
J
20/20
100.00 %
K
20/20
100.00 %
L
19/20
95.00 %
Tasa media de acierto
233/240
97.08 %
Tabla 4.1. Tasa de acierto en el reconocimiento.
4.4 CONCLUSIONES
En este capítulo se ha desarrollado un modelo de representación
del movimiento, que aporta diversas ventajas con respecto a la
mayor parte de las técnicas existentes.
En primer lugar, las tres primeras etapas del problema del
análisis
del
movimiento
(segmentación,
extracción
de
características y seguimiento de objetos) se realizan en un único
proceso: la obtención del Grafo Preservador de la Topología del
objeto para cada una de las imágenes.
SEGUIMIENTO DE OBJETOS Y ANÁLISIS DEL MOVIMIENTO
125
Por otro lado, el modelo es capaz de adaptar su topología a las
diferentes evoluciones que puede tomar un objeto (ver punto
1.1.2):
• cambios morfológicos: mediante la obtención
movimiento relativo de cada una de las neuronas,
del
• cambios fotométricos: mediante el cálculo de la función
de transformación, dinámicamente para cada una de las
imágenes,
• desplazamientos y giros: los desplazamientos del objeto
vienen determinados por el movimiento común del Grafo
Preservador de la Topología; mientras que los giros los
determina la orientación de las neuronas con respecto al
centroide, que queda recogido en su movimiento relativo.
El análisis del movimiento se simplifica debido a que no es
necesario realizar un seguimiento de diferentes partes del objeto,
localizándolas en cada una de las imágenes (problema de
correspondencia). Este viene determinado por los diferentes
vectores de características de cada una de las neuronas.
Finalmente, el sistema de análisis de movimiento basado en la
adaptación de la Growing Neural Gas a las sucesivas posturas de
la mano, ha demostrado ser un buen método para caracterizar
los gestos. De hecho, la tasa de acierto es elevada incluso para
gestos que pueden ser confundidos con otros muy similares.
Capítulo 5
CONCLUSIONES
Se ha desarrollado un modelo de representación que, tomando
referencias de los trabajos basados en representaciones activas,
realiza la caracterización de objetos y el análisis de su
movimiento.
Como el objetivo que subyace es el desarrollo de arquitecturas
especializadas en visión, en movimiento, de tiempo real, se han
seguido planteamientos conexionistas por cuestiones de
paralelizabilidad y posibilidad de refinamiento progresivo de la
respuesta. Se entiende que este enfoque establece una diferencia
sustancial respecto de la práctica habitual en la investigación de
visión de nivel medio: en general, los problemas se abordan con
planteamientos puramente computacionales, con ignorancia de
los aspectos de implantación y de las características de los
computadores. El procesamiento se realiza, finalmente, sobre
sistemas potentes; casi sin consideraciones de especificidad que
permitan explotar las peculiaridades de la naturaleza de los
problemas de visión.
CAPÍTULO 5
128
Este trabajo, junto con (Mora, 2001), establece los primeros
pasos para el desarrollo de arquitecturas específicas de tiempo
real, no sólo dirigidas al análisis del movimiento, sino que deben
servir para tratar muchos otros aspectos de la visión de nivel
medio y bajo, algunos de los cuales ya han sido presentados en
esta memoria.
Tomando como base el comportamiento de los gases neuronales,
se adapta la topología de su red de interconexión a un espacio de
entrada definido por el objeto. El efecto que se consigue es doble:
por un lado, el Grafo Preservador de la Topología sirve como
estructura de datos reducida, pero rica en información; por otro,
se dota al modelo de capacidad de operación bajo restricciones de
tiempo real, previa modificación de sus algoritmos de aprendizaje.
Adicionalmente, debido al carácter dinámico de estas redes que
no necesitan reiniciar el aprendizaje al introducir nuevos
patrones, se modeliza el movimiento realizado por los objetos
como las deformaciones que sufre la red a lo largo de toda la
secuencia de imágenes.
Para poner de manifiesto las prestaciones de dicha metodología,
se ha propuesto resolver una instancia del problema del
reconocimiento de gestos, uno de los problemas considerado
complicado en el análisis del movimiento, debido al gran número
de grados de libertad que posee la mano humana, que conlleva
una gran variedad de estados morfológicos de la misma.
5.1 APORTACIONES
A continuación se presentan, de forma más ordenada, las
diversas aportaciones presentadas en esta trabajo:
• Se ha realizado un estudio de la capacidad de
preservación de la topología de objetos bidimensionales
por parte de diversos modelos neuronales autoorganizativos, comparando su comportamiento. Se ha
medido de forma empírica dicha capacidad, empleando
el producto topográfico. Se ha obtenido que los gases
neuronales, los modelos Neural Gas y Growing Neural
Gas, son los que mejor preservan la topología de un
espacio de entrada bidimensional.
CONCLUSIONES
129
• Se dota a los gases neuronales de capacidad de
funcionamiento bajo restricciones de tiempo real. Se han
introducido variantes a los procesos de aprendizaje para
que la adaptación pueda supeditarse a cotas de tiempo y
tener una medida de la calidad de respuesta.
• Se han empleado los resultados de las aportaciones
anteriores
para
la
representación
de
objetos
bidimensionales: la red de interconexión entre las
neuronas determina la morfología de los objetos,
obteniéndose un Grafo Preservador de la Topología. Se
obtiene una nueva aplicación de las redes neuronales
auto-organizativas, ya que usualmente han sido
empleadas como clasificadores de características, pero
no como las propias características de los objetos.
• Sin necesidad de modificar los algoritmos de aprendizaje
de los gases neuronales, sino modificando únicamente la
propiedad visual para la que es sensible la red; se puede
extraer tanto la representación externa (contorno) como
su representación interna.
• Se han extraído características del Grafo Preservador de
la Topología tanto al adaptarse a contornos, como a
superficies; de modo que operaciones de clasificación y
reconocimiento posteriores se vean simplificadas,
evitando la alta complejidad de la comparación entre
grafos.
• Dadas las capacidades de compresión de la información
y de preservación de la topología del GPT , se realiza la
síntesis de los objetos a partir del grafo. Se han
presentado diversas posibilidades, ya sea obteniendo
dicha
síntesis
contando
únicamente
con
la
representación del GPT o disponiendo de información
adicional, obtenida al calcularlo.
• Se ha extendido la aplicación de los GPT al tratamiento
de secuencias de imágenes y, más concretamente, al
seguimiento de objetos y análisis del movimiento. Debido
al carácter dinámico de estas redes, se ha modelizado la
evolución de los objetos como las modificaciones que
sufre la red a lo largo de toda la secuencia, entendiendo
CAPÍTULO 5
130
dichas modificaciones como variaciones en la topología
de la red de interconexión así como zona del espacio de
entrada para la que es sensible cada uno de los
elementos de procesamiento.
• La modelización del movimiento como la dinámica de las
neuronas, evita el problema de correspondencia, uno de
los más costosos en la mayoría de técnicas de
seguimiento de objetos.
• Aunque no ha sido destacado especialmente en la
memoria, este modelo permite la caracterización y
seguimiento de múltiples objetos presentes en la escena.
Asimismo, se puede realizar el seguimiento de un objeto
que se disgregue en varias partes o que se fusione.
Resumidamente, la investigación que se contiene en esta
memoria ha consistido en la aportación de estructuras de datos y
de métodos, desde el enfoque de proporcionar conocimiento para
cubrir los objetivos iniciales: establecer un marco de
modelización de arquitecturas especializadas para visión, con
capacidad de procesamiento en tiempo real, y suficientemente
generalista para dar cobertura a técnicas de tratamiento de una
amplia diversidad de problemas de visión.
Por cuestiones de extensión del trabajo, la investigación se ha
concretado en establecer la base conceptual sobre la que después
se materializarán las arquitecturas. La modelización se ha
particularizado para un par de problemas representativos: uno de
caracterización y otro de seguimiento.
5.2 LÍNEAS DE CONTINUACIÓN
CONTINUACIÓN
Dada la aplicación de las redes neuronales auto-organizativas
como caracterizadoras de los objetos, se espera que este trabajo
abra una nueva línea en el desarrollo de arquitecturas
especializadas en visión de nivel medio y bajo. Si bien en este
trabajo, se ha aplicado el modelo al problema del análisis del
movimiento, se debe realizar una generalización del mismo para
el tratamiento de otras operaciones de visión a todos los niveles.
Asimismo, se debe dotar al modelo de robustez para su aplicación
en entornos realistas, con presencia de ruido, oclusiones,...
CONCLUSIONES
131
Como ya se ha expresado en diversas ocasiones, este modelo
debe materializarse en el desarrollo de arquitecturas de tiempo
real especializadas, con características de miniaturización y
empotrabilidad; que muestren la potencia del prototipo
presentado en esta memoria.
Se deben estudiar algunas cuestiones que quedan al margen de
este trabajo, pero que se encuentran estrechamente ligadas:
• Desarrollo de nuevos modelos de representación,
tomando las ideas que se desprenden de esta tesis. En
particular, se está desarrollando una red en anillo
incremental, la Growing Ring Structure, que tomando el
algoritmo de aprendizaje de la Growing Cell Structure,
permite una adaptación a los contornos de los objetos
sin que se produzcan aristas indeseadas en zonas de
gran curvatura.
• Si existen varios objetos presentes en la escena, se
puede realizar el seguimiento de todos ellos adaptando
varios GPT simultáneamente. Esto puede producir
interacciones entre las diversas redes, lo que lleva a la
posible consideración de miscibilidad de los gases
neuronales.
• Desarrollo de sistemas robustos que permitan su empleo
en el tratamiento de escenas realistas.
• Diseño de arquitecturas de alto rendimiento, basadas en
el modelo presentado, para su integración en el
dispositivo de visión, con enfoque de miniaturización y
empotrabilidad.
Por último, en el tratamiento del reconocimiento de gestos, el
desarrollo de un modelo robusto ante entornos heterogéneos y el
desarrollo de nuevos filtros que permitan una buena
segmentación de las manos, permitirá su empleo en numerosas
aplicaciones, como son el reconocimiento de lenguaje de signos,
el desarrollo de video-fonos para sordomudos, el diseño de
nuevos interfaces hombre-máquina,...
APÉNDICE A
ESTUDIO DE LA
PRESERVACIÓN DE LA
TOPOLOGÍA
En este apéndice se muestra el estudio exhaustivo realizado de la
preservación de la topología de los cuatro modelos autoorganizativos introducidos en el punto 2.1, que poseen
características de aprendizaje diferentes.
PRODUCTO TOPOGRÁFICO
El producto topográfico (Bauer y Pawelzik, 1992), también
llamado en ocasiones “producto wavering” (Pawelzik, 1991), es
una buena medida de la preservación de la topología del espacio
de entrada por una red auto-organizativa. Esta medida ha sido
ampliamente utilizada en la literatura para la comparación de
modelos auto-organizativos (Merkl et al., 1994) (Herbin, 1995)
(Trautmann y Denoeux, 1995).
APÉNDICE A
134
La idea principal de esta medida es comparar la relación de
vecindad de dos neuronas con respecto a su posición en el mapa
por un lado ( Q 2 ( j ,k ) ) y según sus vectores de referencia por otro
( Q 1 ( j ,k ) ) (Figura A.1):
d V  w j ,w n A ( j ) 
k


Q 1 ( j ,k ) =
d V  w j ,w n V ( j ) 
k


(A.1)
(
j ,n kA ( j ))
Q 2 ( j ,k ) = A
d ( j ,n kV ( j ))
(A.2)
d
A
V
donde j es una neurona, w j es su vector de referencia, n K
indica la k vecina más cercana a j en el espacio de entrada V
V
A
según una medida de distancia d
y n K indica la k vecina más
A
cercana a j en la red A según una medida de distancia d .
Figura A.1. Vecindades en el espacio de entrada y en la red.
De esta definición, se extrae que Q 1 ( j ,k ) = Q 2 ( j ,k ) = 1 sólo si
las vecinas más cercanas de orden k en el espacio de entrada y
en la red coinciden. Sin embargo, estas medidas son muy
sensibles a pequeñas variaciones en el orden de vecindad de las
neuronas en ambos espacios. Para ello, se multiplican ambas
medidas para todos los órdenes de vecindad k , obteniendo
ESTUDIO DE LA PRESERVACIÓN DE LA TOPOLOGÍA
135
§ k
P1 ( j ,k ) = ¨¨ ∏Q 1 ( j ,l
© l =1
·
) ¸¸
¹
§ k
P2 ( j ,k ) = ¨¨ ∏Q 2 ( j ,l
© l =1
·
) ¸¸
¹
1
1
k
(A.3)
k
(A.4)
y
§ k
P3 ( j ,k ) = ¨¨ ∏Q 1 ( j ,l ) ⋅Q 2 ( j ,l
© l =1
·
) ¸¸
¹
1
2k
(A.5)
En el caso de que la dimensionalidad de la red y del espacio de
los vectores de entrada coincidan se tiene que P3 = 1 . Cualquier
desviación de dicho valor implica una disparidad en la
dimensionalidad de ambos espacios.
Para extender esta medida a todas las neuronas de la red y todos
los posibles órdenes de vecindad y, dado que sólo estamos
interesados en obtener desviaciones de dicha medida de 1, se
define el producto topográfico P como
P =
N N −1
1
∑ ∑log (P3 ( j ,k ))
N ( N − 1 ) j =1 k =1
(A.6)
MEDIDA DE LA PRESERVACIÓN D
DE
E LA TOPOLOGÍA DE LOS
LOS
DIFERENTES MODELOS AUTO
AUTO-ORGANIZATIVOS
Para obtener una medida de la capacidad de preservación de la
topología de los diferentes modelos auto-organizativos estudiados
se han realizado diversos experimentos, tomando un espacio de
entrada bidimensional (imágenes de 320x320 puntos), con
diferentes funciones de densidad de probabilidad (Figura A.2). El
cuadrado y el círculo son espacios de entrada con una topología
similar a la de los mapas auto-organizativos de Kohonen, que son
los que poseen una relación de vecindad más restringida de entre
todos los modelos; el anillo posee un hueco en su interior, por lo
APÉNDICE A
136
que será difícil que las redes con estructura preestablecida
preserven bien su topología; los cuatro cuadros separados
representan una función no continua, con lo que sólo aquellas
redes con capacidad de división podrán realizar un buen
aprendizaje; y la mano es un espacio más complejo de preservar
su topología, al tener concavidades y convexidades.
Figura A.2. Espacios de entrada.
Se ha realizado el aprendizaje de estos espacios de entrada con
los diferentes modelos auto-organizativos utilizando, para cada
uno de ellos, valores en sus parámetros empleados usualmente.
Para el aprendizaje de los mapas auto-organizativos se ha
empleado el algoritmo de (Kohonen, 1995) con t max = 100 ,
σ i = 5 , σ f = 1 , α i = 0.8 , α f = 0.1 .
Las Growing Cell Structures se han empleado según (Fritzke,
1993) con los parámetros ε b = 0.1 , ε n = 0.01 , α = 0 , λ = 10000 ,
η =0 .
Siguiendo el algoritmo mostrado en el punto 2.2.1 se ha educado
la Neural Gas con los siguientes parámetros: t max = 100 ,
λ0 = 100 ,
λtmax = 0.01 ,
ε 0 = 0.5 ,
ε tmax = 0.005 ,
T 0 = 20 ,
T t = 200 .
max
ESTUDIO DE LA PRESERVACIÓN DE LA TOPOLOGÍA
137
La Growing Neural Gas empleada sigue el algoritmo del punto
2.2.2 con ε 1 = 0.1 , ε 2 = 0.01 , λ = 10000 , α = 0 , β = 0 .
Se ha realizado el aprendizaje de redes que poseen 100 neuronas,
educando cinco redes de cada uno de los modelos y para cada
uno de los espacios de entrada. Una vez realizado este
aprendizaje se ha procedido al cálculo del producto topográfico,
con el objetivo de medir la preservación de la topología en cada
uno de los casos (Tabla A.1).
A diferencia del uso normal que se hace del producto topográfico
en la literatura en la que la distancia en el espacio de entrada
d V es la distancia euclídea entre dos puntos, en este trabajo se
emplea la distancia geodésica (Sonka et al., 1998), definida como
la longitud del mínimo camino que une ambos puntos dentro del
subespacio de entrada determinado por el objeto (Figura A.3). Si
V
no se puede establecer un camino entre ellos, d
=∞.
Figura A.3. Distancia geodésica.
APÉNDICE A
138
Espacio de entrada
Modelo
auto-organizativo
Producto
topográfico1
Error de
cuantización
Cuadrado
Kohonen
0.005914
4523614
Cuadrado
Growing Cell Structure
0.015628
1360265
Cuadrado
Neural Gas
0.005175
1176427
Cuadrado
Growing Neural Gas
0.007785
1286321
Círculo
Kohonen
0.004974
3841524
Círculo
Growing Cell Structure
0.015420
1103505
Círculo
Neural Gas
0.005331
954927
Círculo
Growing Neural Gas
0.007832
1039228
Anillo
Kohonen
Indeterminado
4262412
Anillo
Growing Cell Structure
0.017626
1306101
Anillo
Neural Gas
0.003718
1109236
Anillo
Growing Neural Gas
0.005030
1228092
4 cuadros
Kohonen
Indeterminado
7143062
4 cuadros
Growing Cell Structure
0.006417
1342739
4 cuadros
Neural Gas
0.002889
1123384
4 cuadros
Growing Neural Gas
0.004221
1276545
Mano
Kohonen
0.036150
8657777
Mano
Growing Cell Structure
0.021125
1939797
Mano
Neural Gas
0.003539
1556044
Mano
Growing Neural Gas
0.00607
1756100
Tabla A.1. Cálculo de la preservación de la topología (100 neuronas).
1 El valor “Indeterminado” del producto topográfico es debido a que
alguna neurona se encuentra fuera del espacio de entrada y, por tanto,
no se puede calcular la distancia de ésta a cualquier otra neurona.
ESTUDIO DE LA PRESERVACIÓN DE LA TOPOLOGÍA
139
Como se puede observar las redes que mejor preservan la
topología de los espacios de entrada son aquellas cuya topología
no está definida a priori, sino que se adapta con el aprendizaje:
las Neural Gas y las Growing Neural Gas. Sólo en aquellos casos
en los que el espacio de entrada tiene una estructura similar a la
topología predefinida de los mapas auto-organizativos, el
producto topográfico es similar al de los otros modelos. Esto es
debido a que en el cálculo del producto topográfico únicamente se
considera la topología de la red, ya que se considera que se ha
realizado un correcto aprendizaje del espacio de entrada y que,
por tanto, preservará la topología del mismo. Sin embargo, en
estos casos no es así, ya que los mapas de Kohonen caracterizan
peor el espacio de entrada al producirse un mayor error de
cuantización (Kohonen, 1995), calculado como:
E=
∑ wφ
∀ξ ∈V
2
w( ξ )
− ξ ⋅ p (ξ )
(A.7)
Las Neural Gas y las Growing Neural Gas tienen un
comportamiento similar ante diferentes espacios de entrada, sin
embargo, la complejidad del aprendizaje de las Neural Gas es
muy superior al de las Growing Neural Gas, debido al proceso de
ordenación de todos los vectores de referencia para cada uno de
los patrones de entrada ξ (paso 3 del aprendizaje), obteniendo
unos tiempos de aprendizaje muy superiores (Tabla A.2).
Modelo
auto-organizativo
Tiempo de
aprendizaje
(segundos)
Kohonen
38
Growing Cell Structure
9
Neural Gas
117
Growing Neural Gas
12
Tabla A.2. Tiempos de aprendizaje de los diferentes modelos auto-organizativos.
APÉNDICE A
140
En la Tabla A.3 se representa el producto topográfico de las
Neural Gas si se interrumpiera su aprendizaje a los 12 segundos,
que es el tiempo en el que finalizan su aprendizaje las Growing
Neural Gas. Como se observa, los resultados tanto en la
preservación de la topología como en el error de cuantización son
bastante peores, ya que no es capaz, en ese tiempo, de finalizar el
proceso de adaptación.
Espacio de
entrada
Modelo
auto-organizativo
Producto
topográfico
Error de
cuantización
Cuadrado
Neural Gas
0.089522
39323868
Cuadrado
Growing Neural Gas
0.007785
1286321
Círculo
Neural Gas
0.075313
30155116
Círculo
Growing Neural Gas
0.007832
1039228
Anillo
Neural Gas
Indeterminado
37848968
Anillo
Growing Neural Gas
0.005030
1228092
4 cuadros
Neural Gas
Indeterminado
101925872
4 cuadros
Growing Neural Gas
0.004221
1276545
Mano
Neural Gas
Indeterminado
62578424
Mano
Growing Neural Gas
0.00607
1756100
Tabla A.3. Preservación de la topología de la Neural Gas deteniendo su
aprendizaje a los 12 segundos.
Sin embargo, si se modifican los parámetros de la NG, por
ejemplo el número de patrones de entrada por iteración λ , para
que finalice su adaptación en esos 12 segundos, los resultados
del producto topográfico se siguen manteniendo cercanos a los
conseguidos con la GNG.
ESTUDIO DE LA PRESERVACIÓN DE LA TOPOLOGÍA
141
Espacio de
entrada
Modelo
auto-organizativo
Producto
topográfico
Error de
cuantización
Cuadrado
Neural Gas
0.006390
1210058
Cuadrado
Growing Neural Gas
0.007785
1286321
Círculo
Neural Gas
0.006207
974271
Círculo
Growing Neural Gas
0.007832
1039228
Anillo
Neural Gas
0.003454
1150331
Anillo
Growing Neural Gas
0.005030
1228092
4 cuadros
Neural Gas
0.003690
1194841
4 cuadros
Growing Neural Gas
0.004221
1276545
Mano
Neural Gas
0.005739
1668036
Mano
Growing Neural Gas
0.00607
1756100
Tabla A.4. Preservación de la topología de la Neural Gas modificando sus
parámetros para que finalice a los 12 segundos.
REFERENCIAS
(Abbott, 1991)
R. Abbott. Scheduling Real-Time Transactions: A Performance
Evaluation. Ph.D. Thesis, Princeton University, 1991.
(Aggarwal y Cai, 1999)
J.K. Aggarwal y Q. Cai. Human Motion Analysis: A Review.
Computer Vision and Image Understanding, 73(3):428-440, 1999.
(Aggarwal et al., 1998)
J.K. Aggarwal, Q. Cai, W. Liao y B. Sabata. Articulated and
Elastic Non-rigid Motion: A Review. Computer Vision and Image
Understanding, 70:142-156, 1998.
(Aloimonos et al., 1988)
Y. Aloimonos, I. Weiss y A. Bandopadhai. Active Vision.
International Journal of Computer Vision, 2:333-356, 1988.
(Amerijckx et al., 1998)
C. Amerijckx, M. Verleysen, P. Thissen, J.-D. Legat, Image
Compression by SelfOrganizing Kohonen Map, IEEE Trans. on
Neural Networks, 9(3):503-507, 1998.
144
REFERENCIAS
(Armstrong et al., 1998)
J.B. Armstrong, M. Maheswaran, M.D. Theys, H.J. Siegel, M.A.
Nichols y K.H. Casey. Parallel Image Correlation: Case Study to
examine Trade-Offs in Algorithm-to-Machine Mappings. The
Journal of Supercomputing, 12(1/2):7-35, 1998.
(Asaad et al., 1996)
S. Asaad, M. Bishay, D.M. Wilkes, and K. Kawamura. A LowCost, DSP-Based, Intelligent Vision System for Robotic
Applications. In Proceedings of the IEEE International Conference
on Robotics and Automation, Minneapolis, pp.1656-1661, 1996.
(Atukorale y Suganthan, 1998)
A.S. Atukorale y P.N. Suganthan. An Efficient Neural Gas
Network for Classification. In Proceedings of the International
Conference on Control, Automation, Robotics and Vision, Singapore
pp. 1152-1156, 1998.
(Bader y Jájá, 1994)
D.A. Bader y J. Jájá. Parallel
Algorithms for Image
Histogramming
and
Connected
Components
with
an
Experimental Study. Technical Report CS-TR-3384 and UMIACSTR-94-133, UMIACS and Electrical Engineering, University of
Maryland, 1994.
(Baglietto et al., 1996)
P. Baglietto, M. Maresca, M. Migliardi y N. Zingirian. Image
Processing on High Performance RISC Systems. Proceedings of
the IEEE, 84(7):917-930, 1996.
(Bajcsy, 1988)
R. Bajcsy. Active perception. Proceedings of the IEEE, 76:9961005, 1988.
(Balkenius y Kopp, 1996)
C. Balkenius y L. Kopp. Visual Tracking and Target Selection for
Mobile Robots. In Proceedings of the 1st Euromicro Workshop on
Advanced Mobile Robots, pp. 166-171, 1996.
(Ballard, 1991)
D.H. Ballard. Animate vision. Artificial Intelligence, 48:57-86,
1991.
REFERENCIAS
145
(Barad, 1988)
H.S. Barad. The SCOOP Pyramid: An Object-Oriented Prototype
of a Pyramid Architecture for Computer Vision. Technical Report
SIPI 115, Univ. of Southern California, 1988.
(Bauer y Pawelzik, 1992)
H-U. Bauer, K. Pawelzik. Quantifying the Neighborhood
Preservation of Self-Organizing Feature Maps. IEEE Transactions
on Neural Networks, 3(4):570-578, 1992.
(Bauer et al., 1999)
H-U. Bauer, M. Herrmann y T. Villmann. Neural Maps and
Topographic Vector Quantization. Neural Networks., 12(4-5):659676, 1999.
(Baumann y Ranka, 1992)
D. Baumann y S. Ranka. The Generalized Hough Transform on
an MIMD machine. Journal of Undergraduate Research in HighPerformance Computing, Volume 2, E.A. Bogucz y V.E. Weinman
(eds.), Northeast Parallel Architectures Center at Syracuse
University Technical Report SCCS-468, 1992.
(Beauchemin y Barron, 1995)
S.S. Beauchemin y J.L. Barron. The Computation of Optical Flow.
ACM Computing Surveys, 27(3):443-465, 1995.
(Bertozzi y Broggi, 1998)
M. Bertozzi y A. Broggi. GOLD: A Parallel Real-Time Stereo Vision
System for Generic Obstacle and Lane Detection. IEEE
Transactions on Image Processing, 7(1):62-81, 1998.
(Beymer et al, 1997)
D. Beymer, P. McLauchlan, B. Coifman y J. Malik. A Real-time
Computer Vision System for Measuring Traffic Parameters. In
Proceedings of the IEEE Conf. on Computer Vision and Pattern
Recognition, Puerto Rico, pp. 495-501, 1997.
(Bhandarkar y Arabnia, 1997)
S.M. Bhandarkar y H.R. Arabnia. Parallel Computer Vision on a
Reconfigurable Multiprocessor Network. IEEE Transactions on
Parallel and Distributed Systems, 8(3):292-309, 1997.
146
REFERENCIAS
(Biancardi et al., 1992)
A. Biancardi, V. Cantoni, M. Ferretti y M. Mosconi. The PAPIA2
Machine: Hardware and Software Architectures. In Proceedings of
the ERCIM Workshop on Parallel Architectures for Computer Vision,
Creta, pp. 120-141, 1992.
(Bihari y Gopinath, 1991)
T. Bihari y P. Gopinath. Real-Time concurrent C: A language for
programming dynamic real-time systems. Real-Time Systems,
2(4), 1991.
(Blank, 1990)
T. Blank. The MasPar MP-1 Architecture. In Proceedings of the
IEEE International Conference on Computer Architectures, San
Francisco, pp. 20-24, 1990.
(Blevins, 1990)
D.W. Blevins, E.W. Davis, R.A. Heaton y J.H. Reif. BLITZEN: A
Highly Integrated Massively Parallel Machine. Journal of Parallel
and Distributed Computing, 8(2):150-160, 1990.
(Boehme et al., 1998)
H.J. Boehme, A. Brakensiek, U.-D. Braumann, M. Krabbes, A.
Corradini y H.-M. Gross. Neural Networks for Gesture-based
Remote Control of a Mobile Robot. In Proceedings of the IEEE
World Congress on Computational Intelligence, Anchorage, 1:372377, 1998.
(Bougrain y Alexandre, 1999)
L. Bougrain y F. Alexandre. Unsupervised Connectionist
Clustering Algorithms for a better Supervised Prediction:
Application to a radio communication problem. In Proceedings of
the International Join Conference on Neural Networks,
Washington, 28:381-391, 1999.
(Brady y Wang, 1992)
M. Brady y H. Wang. Vision for mobile robots. Phil. Transactions
of the Royal Society of London B, 337:341-350, 1992.
(Bro-Nielsen, 1994)
M. Bro-Nielsen. Active nets and cubes. Technical report, Institute
of Mathematical Modeling, Technical Univ. of Denmark, 1994.
REFERENCIAS
147
(Broggi et al., 1994a)
A. Broggi, G. Conte, F. Gregoretti, C. Sansoé y L.M. Reyneri. The
PAPRICA Massively Parallel Processor. In Proceedings of the IEEE
International Conference on Massively Parallel Computing
Systems, pp. 16-30, 1994.
(Broggi et al., 1994b)
A. Broggi, G. Conte, G. Burzio, L. Lavagno, F. Gregoretti, C.
Sansoé y L.M. Reyneri. PAPRICA-3: A Real-Time Morphological
Image Processor. In Proceedings of the IEEE International
Conference on Image Processing, pp. 654-658, Austin, Texas,
1994.
(Buttazo, 1997)
G.C. Butazzo. Hard Real-Time Computing Systems. Predictable
Scheduling Algoritms and Applications. Kluwer Academic
Publishers. 1997.
(Cadoz, 1994)
C. Cadoz. Les réalités virtuelles. Dominos, Flamarion, 1994.
(Cahn von Seelen, 1997)
U.M. Cahn von Seelen. Performance Evaluation of an Active Vision
System. PhD Thesis, Univ. of Pennsylvania, 1997.
(Campbell et al., 1996)
L.W. Campbell, D.A. Becker, A. Azarbayejani, A.F. Bobick y A.
Pentland. Invariant features for 3-D gesture recognition. In
Proceedings of the 2nd International Workshop on Automatic Faceand Gesture Recognition, Killington, pp. 157-162, 1996.
(Camus, 1994)
T. Camus. Real-Time Optical Flow. PhD Thesis, Dept. of Computer
Science, Brown Univ., Providence, 1994.
(Cantoni et al., 1991)
V. Cantoni, V. Di Gesù, M. Ferretti, S. Levialdi, R. Negrini, R.
Stefanelli. The PAPIA System. Journal of VLSI Signal Processing,
2:195-217, 1991.
148
REFERENCIAS
(Case et al., 2001)
J. Case, D.S. Rajan y A.M. Shende. Lattice Computers for
Approximating Euclidean Space. Journal of the ACM, 48:110-144,
2001.
(Castrillón et al., 1998)
M. Castrillón, C. Guerra, J. Hernández, A. Domínguez, J. Isern,
J. Cabrera y F.M. Hernández. An Active Vision System integrating
Fast and Slow Processes. In Proceedings of the Symposium on
Intelligent Systems and Advanced Manufacturing, Boston, pp.
487-496, 1998.
(Cédras y Shah, 1995)
C. Cédras y M. Shah. Motion-based recognition: a survey. Image
and Vision Computing, 13(2):129-155, 1995.
(Charot, 1993)
F. Charot. Architectures parallèles spécialisées pour le traitement
d’image. Rapport de recherche nº 1978, INRIA, Rennes, France,
1993.
(Chen y Cheng, 1997)
X. Chen y A.M.K. Cheng. An Imprecise Algorithm for Real-Time
Compressed Image and Video Transmission. In Proceedings of the
6th International Conference on Computer Comunications and
Networks, 1997.
(Cheng y Zell, 2000a)
G. Cheng y A. Zell. Externally Growing Cell Structures for Pattern
Classification. In Proceedings of the ICSC Symposia on Neural
Computation, Berlin, pp. 233-239, 2000.
(Cheng y Zell, 2000b)
G. Cheng y A. Zell. Double Growing Neural Gas for Disease
Diagnosis. In Proceedings of Artificial Neural Networks in Medicine
and Biology Conference (ANNIMAB-1), pp. 309-314, Springer,
2000.
(Chin et al., 1988)
D. Chin, J. Passe, F. Bernard, H. Taylor y S. Knight. The
Princeton Engine: A Real-Time Video System Simulator. IEEE
Transactions on Consumer Electronics, 34(2):285-297, 1988.
REFERENCIAS
149
(Choudhary et al., 1993)
A.N. Choudhary, J.H. Patel y N. Ahuja. NETRA: A Hierarchical
and Partitionable Architecture for Computer Vision Systems.
IEEE Transactions on Parallel and Distributed Systems,
4(10):1092-1104, 1993.
(Cloud, 1988)
E.L. Cloud. The Geometric Arithmetic Parallel Processor. In
Frontiers of Parallel Computation, pp. 373-381, 1988.
(Cohen et al., 1992)
I. Cohen, L.D. Cohen y N. Ayache. Using deformable surface to
segment 3d images and infer differential structures. In Proc. of
the 2nd European Conference on Computer Vision, pp. 648-652,
1992.
(Cootes y Taylor, 1992)
T.F. Cootes y C.J. Taylor. Active shape models, smart snakes. In
Proc. of the British Machine Vision Conference, pp. 266-275, 1992.
(Curwen y Blake, 1992)
R. Curwen y A. Blake. Dynamic Contours: Real-time Active
Splines. In Active Vision, A. Blake y A. Yuille (eds.), The MIT
Press, 1992.
(Davis y Shah, 1993)
J. Davis y M. Shah. Gesture Recognition. Technical Report CSTR-93-11, Department of Computer Science, University of Central
Florida, 1993.
(Davis y Shah, 1994)
J. Davis y M. Shah. Recognizing Hand Gestures. In Proceedings of
the European Conference on Computer Vision ECCV’94,
Stockholm, Sweden, pp. 331-340, 1994.
(DEC, 1992)
Digital
Equipament
Corporation.
DECchip
21064-AA
Microprocessor Hardware Reference Manual. Maynard, 1ª ed.,
1992.
150
REFERENCIAS
(Denzler y Niemann, 1995)
J. Denzler y H. Niemann. Combination of Simple Vision Modules
for Robust Real-Time Motion Tracking. European Transactions on
Telecommunications, 5(3):275-286, 1995.
(Denzler y Niemann, 1999)
J. Denzler y H. Niemann. Active Rays: Polar-transformed Active
Contours for Real-Time Contour Tracking. Journal on Real-Time
Imaging, 5(3):203-213, 1999.
(Dorner, 1994)
B. Dorner. Chasing the colour glove: visual hand tracking.
Master’s Thesis, School of Computer Science, Simon Fraser
University, 1994.
(Drayer et al., 1995)
T.H. Drayer, W.E. King IV, J.G. Tront y R.W. Conners. A Modular
and Reprogrammable Real-time Processing Hardware, MORRPH.
In Proceedings of the IEEE Symposium on FPGA’s for Custom
Computing Machines (FCCM’95), pp. 11-19, 1995.
(Du et al., 1996)
F. Du, A. Izatt y C. Bandera. An MIMD Computing Platform for a
Hierarchical Foveal Machine Vision System. In Proceedings of the
1996 Conference on Computer Vision and Pattern recognition, pp.
720-725, 1996.
(Eklund et al., 1994)
M. W. Eklund, G. Ravichandran, M.M. Trivedi y S.B. Marapane.
Real-Time Visual Tracking Using Correlation Techniques. In
Proceedings of the 2nd IEEE Workshop on Applications of Computer
Vision, Florida, pp. 256-263, 1994.
(Escolano, 1997)
F. Escolano. Plantillas Deformables Extendidas: Modelización
Local Robusta y Caracterización Basada en Auto-Modelos para el
Reconocimiento y Tracking de Estructuras Geométricas Activas.
PhD Thesis, Univ. de Alicante, 1997.
(Fayman et al., 1995)
J.A. Fayman, E. Rivlin y H.I. Christensen. The Active Vision Shell.
Technical Report CIS9510, Computer Science Department,
Technion -- Israel Institute of Technology, Haifa, 1995.
REFERENCIAS
151
(Ferrari, 1992)
D. Ferrari. Real-Time Comunication in a Intranetwork. Journal of
High Speed Networks, 1992.
(Fisher et al., 1988)
A.I. Fisher, P.T. Hignam y T.E. Rockoff. Scan Line Array
Processors: Work in Progress. In Proceedings of the Image
Understanding Workshop, pp. 625-633, 1988.
(Flórez et al., 2001)
F. Flórez., J.M. García y F. Ibarra. Hand Gesture Recognition
based on Morphological Features. In Proceedings of the IX
Spanish Symposium on Pattern Recognition and Image Analysis,
Benicasim, II:7-12, 2001.
(Fortin, 1996)
S. Fortin. The Graph Isomorphism Problem. Technical Report TR96-20, Department of Computing Science, The University of
Alberta, Edmonton, Canada, 1996.
(Fortune, 1997)
S. Fortune. Voronoi Diagrams and Delaunay Triangulations. In
Discrete and Computational Geometry, J.E. Goodman, J.
O’Rourke (eds.), CRC Press LLC, Boca Raton, Florida, 1997.
(Fountain et al., 1988)
T.J. Fountain, K.N. Matthews y M.J. Duff. The CLIP7: A Image
Processor. IEEE Transactions on Pattern Analysis and Machine
Intelligence, 10(3):310-319, 1988.
(Fritsch, 1986)
G. Fritsch. General purpose pyramidal architectures. In
Pyramidal Systems for Computer Vision, V. Cantoni y S. Levialdi
(eds.), Springer-Verlag, Berlin, pp. 41-58, 1986.
(Fritzke, 1993a)
B. Fritzke. Growing Cell Structures – A Self-organizing Network
for Unsupervised and Supervised Learning. Technical Report TR93-026, International Computer Science Institute, Berkeley,
California, 1993.
152
REFERENCIAS
(Fritzke, 1993b)
B. Fritzke. Kohonen feature maps and growing cell structures – a
performance comparison. In Advances in Neural Information 5, L.
Giles, S. Hanson y J. Cowan (eds.), Morgan Kaufmann
Publishers, San Mateo, California, 1993.
(Fritzke, 1993c)
B. Fritzke. A Growing and Splitting Elastic Network for Vector
Quantization. In Neural Networks for Signal Processing 3 –
Proceedings of the 1993 IEEE Workshop, C.A. Kamm, S.Y. Kung,
B. Yoon, R. Chellappa y S. Kung (eds.), Piscataway, pp. 281-290,
1993.
(Fritzke, 1995)
B. Fritzke. A Growing Neural Gas Network Learns Topologies. In
Advances in Neural Information Processing Systems 7, G. Tesauro,
D.S. Touretzky y T.K. Leen (eds.), MIT Press, Cambridge, Mass.,
1995.
(Fritzke, 1997)
B. Fritzke. Some Competitive Learning Methods. Draft Paper,
System Biophysics, Institute for Neural Computation, RurhUniversität Bochum, 1997.
(Gheith y Schwan, 1993)
A. Gheith y K. Schwan. Chaos-arc: Kernel support for multiweight objects, invocations, and atomicity in real-time
applications. ACM Transactions on Computer Systems, 1993.
(González y Woods, 1996)
R.C. González y R.E.Woods. Tratamiento digital de imágenes.
Addison-Wesley Iberoamericana, S.A., Wilmington, Delaware,
1996.
(Haritaoglu et al., 1998)
I. Haritaoglu, D. Harwood y L.S. Davis. W4: Who? When? Where?
What? A Real Time System for Detecting and Tracking People. In
Proceedings of the International Conference on Automatic Face and
Gesture Recognition, pp. 222-227, 1998.
(Harris, 1992)
C. Harris. Tracking with Rigid Models. In Active Vision, A. Blake y
A. Yuille (eds.), The MIT Press, 1992.
REFERENCIAS
153
(Heada et al., 1988)
H. Heada, K. Kato, H. Matsushima, K. Kaneko y M. Ejiri. A
Multiprocessor System Utilizing Enhanced DSP’s For Image
Processing. In Proceedings of the International Conference on
Systolic Arrays, pp. 611-620, 1988.
(Helman y Jájá, 1995)
D. Helman y J. Jájá. Efficient Image Processing Algorithms on the
Scan Line Array Processor. IEEE Transactions on Pattern Analysis
and Machine Intelligence, 17(1):47-56, 1995.
(Hennessy y Patterson, 1996)
J.L. Hennessy y D.A. Patterson. Computer Architecture A
Quantitative Approach. Morgan Kaufmann Publishers Inc., 1996.
(Hennessy y Reagan, 1991)
M. Hennessy y T. Reagan. A Process Algebra for Timed Systems.
Technical Report 5/91, University of Sussex, 1991.
(Herbin, 1995)
S. Herbin. Graph Matching by Self-organizing Feature Maps, In
Proceedings of the International Conference on Artificial Neural
Networks, pp. 57-62, 1995.
(Hernández et al., 1999)
M. Hernández, J. Cabrera, M. Castrillón, A. Domínguez, C.
Guerra, D. Hernández y J. Isern. DESEO: An Active Vision
System for Detection, Tracking and Recognition. Lecture Notes in
Computer Science, 1542:379-391, 1999.
(Hirsch, 1993)
E. Hirsch. Parallel Architectures and Algorithms for Real Time
Computer Vision. In Parallel Algorithms for Digital Image
Processing, Computer Vision and Neural Networks, I. Pitas (ed.),
pp. 353-390, John Wiley & Sons, Ltd., 1993.
(Holmes et al., 1987])
V.P. Holmes, D. Harris, K. Piorkowski y G. Davidson. Hawk: An
operating system kernel for a real time embedded multiprocessor.
Technical Report Sandia National Laboratories, 1987.
154
REFERENCIAS
(Houzet et al., 1991)
D. Houzet, J.L. Basille y J.Y.Latil. GFLOPS: A General Flexible
Linearly Organized Parallel Structure for Images. In IEEE
ASAP’91 Conference, Barcelona, pp. 431-444, 1991.
(Hu, 1962)
M.K. Hu. Visual Pattern Recognition by Moment Invariants. IRE
Trans. Info. Theory, IT-8:179-187, 1962.
(Huang y Pavlovic, 1995)
T.S. Huang y V.I. Pavlovic. Hand Gesture Modelling, Analysis,
and Sinthesys. In Proceedings of the International Workshop on
Automatic Face-and Gesture Recognition, Zurich, pp. 73-79, 1995.
(Huang y Stankovic, 1991)
J. Huang y J. Stankovic. On using priority inheritance in RealTime Databases. In IEEE Real-Time Symposium, 1991.
(Hull et al., 1996)
D. Hull, W.C. Feng y J.W.S. Liu. Operating system support for
imprecise computations. Flexible Computation in Intelligent
Systems, 1996.
(I.C.E., 1995)
Integrated Computing Engines, Inc. The MeshSP Technical
Report. I.C.E., Inc., 1995.
(Iivarinen, 1998)
Jukka Iivarinen. Texture Segmentation and Shape Classification
with Histogram Techniques and Self-Organizing Maps. Acta
Polytechnica
Scandinavica,
Mathematics,
Computing
and
Management in Engineering Series, 95, 1998.
(Johansson, 1973)
G. Johansson. Visual perception of biological motion and a model
for its analysis. Perception and Psychophysics, 14(2):210-211,
1973.
(Jonker, 1993)
P.P. Jonker. An SIMD-MIMD Architecture for Image Procesing
and Pattern Recognition. In Proceedings of the IEEE International
Workshop on Computer Architectures for Machine Perception, New
Orleans, pp. 222-231, 1993.
REFERENCIAS
155
(Kambhamettu et al., 1998)
C. Kambhamettu, D.B. Goldgof, D. Terzopoulos y T.S. Huang.
Nonrigid motion analysis. In Deformable Models in Medical Image
Analysis, A. Singh, D. Goldgof y D. Terzopoulos (eds.), pp. 270284, 1998.
(Kandlur et al., 1989)
D.D. Kandlur, D.L. Kiskis y K.G. Shin. HARTOS: A distributed
real-time operating system. ACM SIGOPS Operating System
Review, 23(3), 1989.
(Kao et al., 1993)
T.W. Kao, S.J. Horng y Y.L. Wang. An O(1) time algorithm for
computing histogram and Hough transform on a cross-bridge
reconfigurable array of processors. IEEE Transactions on Systems,
Man and Cybernetics, 25:681-687, 1993.
(Kass et al., 1988)
M. Kass, A. Witkin y D. Terzopoulos. Snakes: Active contour
models. International Journal of Computer Vision, 1:321-331,
1988.
(Kenny y Lin, 1991)
K.B. Kenny y K.J. Lin. Building flexible real-time systems using
the flex language. IEEE Computer, 1991.
(Kent et al., 1985)
E.W. Kent, M.O. Shneier y R. Lumia. PIPE (pipelined Image
Processing Engine). Journal of Parallel and Distributed Computing,
2:50-78, 1985.
(Kim et al., 1998)
J.-M. Kim, Y. Kim, S.-D. Kim, T.-D. Han y S.-B. Yang. An
Adaptive Parallel Computer Vision System. International Journal
of Pattern Recognition and Artificial Intelligence, 12(3):311-334,
1998.
(Kimmel et al., 1985)
M. Kimmel, R. Jaffe, J. Manderville y M. Lavin. MITE: Morphic
Image Transform Engine, an architecture for reconfigurable
pipelines of neighborhood processes. In IEEE Computer Society
Workshop for Pattern Analysis and Image Database Management,
pp. 493-500, Miami Beach, 1985.
REFERENCIAS
156
(Knieser y Papachristou, 1992)
M.J. Knieser y C.A. Papachristou. Y-Pipe: A Conditional
Branching Scheme Without Pipeline Delays. In International
Symposium on Microarchitecture, 1992.
(Knight et al., 1992)
S. Knight, D.Chin, H. Taylor y J. Peters. The Sarnoff Engine: A
Massively Parallel Computer for High Definition System
Simulation. In Proceedings of Application Specific Array
Processors, pp. 342-357, 1992.
(Kogge, 1994)
P.M. Kogge. EXECUBE – a new architecture for scalable MPPs. In
1994 International Conference on Parallel Processing, pp. 77-84,
IEEE Computer Society Press, 1994.
(Kohler and Schröter, 1998)
M. Kohler y S. Schröter. A Survey of Video-based Gesture
Recognition – Stereo and Mono Systems. Research Report No.
693/1998, Fachbereich Informatik, Univesität Dortmund, 1998.
(Kohonen, 1995)
T. Kohonen. Self-Organizing
Heidelberg, 1995.
Maps.
Springer-Verlag,
Berlin
(Krishna y Shin, 1997)
C.M. Krishna y K.G: Shin. Real-Time Systems. New York:
McGraw-Hill, 1997.
(Kuniyoshi et al., 1995)
Y. Kuniyoshi, N. Kita, S. Rougeaux y T. Suehiro. Active stereo
vision system with foveated wide angle lenses. In Proceedings of
the 2nd Asian Conference on Computer Vision, Singapur, I:359363, 1995.
(Le et al., 1998)
T.M. Le, W.M. Snelgrove y S. Panchanathan. SIMD Processor
Arrays for Image and Video Processing: A Review. In Multimedia
Hardware Architectures, volume 3311 of SPIE Proceedings, S.
Panchanathan, F. Sijstermans y S.I. Sudharsanan (eds.), pp. 3041, 1998.
REFERENCIAS
157
(Leiserson et al., 1994)
C.E. Leiserson, Z.S. Abuhamdeh, D.C. Douglas, C.R. Feynman,
M.N. Ganmukhi, J.V. Hill, W.D. Hillis, B.C. Kuszmaul, M.A. St.
Pierre, D.S. Wells, M.C. Wong, S.-W. Yang y R. Zak. The Network
Architecture of the Connection Machine CM-5. Technical Report,
Thinking Machines Corporation, 1994.
(Li y Maresca, 1989)
H. Li y M. Maresca. Polymorphic Torus Network.
Transactions on Computers, 38(9):1345-1351, 1989.
IEEE
(Little et al., 1987)
J.J. Little, G. Blelloch y T. Cass. Parallel Algorithms for Computer
Vision on the Connection Machine. In Proceedings of the DARPA
Image Understanding Workshop, pp. 628-638, 1987.
(Little et al., 1991)
J.J. Little, R.A. Barman, S.J. Kingdom y J. Lu. Computational
Architectures for Responsive Vision: the Vision Engine. In
Proceedings of the International Workshop on Computer
Architectures for Machine Perception, pp. 233,240, 1991.
(Loncaric, 1998)
S. Loncaric. A Survey of Shape Analysis Tecniques. Pattern
Recognition, 31(8):983-1001, 1998.
(Mae et al., 1994)
Y. Mae, S. Yamamoto, Y. Shirai y J. Miura. Optical Flow Based
Realtime Object Tracking by Active Vision System. In Proceedings
of the 2nd Japan-France Congress on Mechatronics, 2:545-548,
1994.
(Mandelbaum et al., 1998)
R. Mandelbaum, M. Hansen, P. Burt y S. Baten. Vision for
Autonomous Mobility: Image Processing on the VFE-200. In
Proceedings of the IEEE International Symposium on Intelligent
Control, International. Symposium on Computational Intelligence in
Robotics and Automation, and Intelligent Systems and Semiotics,
Gaithersburg, 1998.
(Marr, 1982)
D. Marr. Vision. W.H. Freeman and Co. (eds.), San Francisco,
1982.
158
REFERENCIAS
(Marsland et al., 2000)
S. Marsland, U. Nehmzow y J. Shapiro. A Real-Time Novelty
Detector For A Mobile Robot. In EUREL Advanced Robotics
Conference, Salford, 2000.
(Martinetz y Schulten, 1991)
T. Martinetz y K. Schulten. A “Neural-Gas” Network Learns
Topologies. Artificial Neural Networks, T. Kohonen, K. Mäkisara,
O. Simula y J. Kangas (eds.), 1:397-402, 1991.
(Martinetz y Schulten, 1994)
T. Martinetz y K. Schulten. Topology Representing Networks.
Neural Networks, 7(3):507-522, 1994.
(Martinetz et al., 1993)
T. Martinetz, S.G. Berkovich y K.J. Schulten. “Neural-Gas”
Network for Vector Quantization and its Application to TimeSeries Prediction. IEEE Transactions on Neural Networks,
4(4):558-569, 1993.
(Mataric, 2000)
M. Mataric. Sensory-Motor Primitives as a Basis for Imitation:
Linking Perception to Action and Biology to Robotics. In Imitation
in Animals and Artifacts, C. Nehaniv y K. Dautenhahn (eds.), The
MIT Press, 2000.
(McColl, 1993)
W.F. McColl. Special Purpose Parallel Computing. Lectures on
Parallel Computation, Alan Gibbons y Paul Spirakis (eds.),
Cambridge International Series on Parallel Computation: 4,
Cambridge University Press, 1993.
(McNeill, 1995)
D. McNeill. Hand and mind: what gestures reveal about thoughts.
University of Chicago Press, 1995.
(Mérigot et al., 1986)
A. Mérigot, P. Clermont, J. Mehat, F. Devos y B. Zadovique. A
Pyramidal System for Image Processing. In Pyramidal Systems for
Computer Vision, V. Cantoni y S. Levialdi (eds.), Springer-Verlag,
Berlin, pp. 109-124, 1986.
REFERENCIAS
159
(Merkl et al., 1994)
D. Merkl, A.M. Tjoa y G. Kappel. A Self-Organizing Map that
Learns the Semantic Similarity of Reusable Software
Components, In Proceedings of the 5th Australian Conference on
Neural Networks, pp. 13-16, 1994.
(Miller et al., 1988)
R. Miller, V.K. Prasanna, D. Reisis y Q.F. Stout. Image
Computations on Reconfigurable VLSI Arrays. In Proceedings of
the IEEE Conference on Computer Vision and Pattern Recognition,
pp. 925-930, 1988.
(Miller et al., 1993)
R. Miller, V.K. Prasanna, D. Reisis y Q.F. Stout. Parallel
Computation on Reconfigurable Meshes. IEEE Transactions on
Computers, 42(6):678-692, 1993.
(Mittal et al., 1995)
A. Mittal, S. Banerjee, A. Valilaya y M. Balakrishnan. Real Time
Vision System for Collision Detection. Journal of Computer
Science and Automation, 25(1):174-208, 1995.
(Mokhtarian et al., 1996)
F. Mokhtarian, S. Abbasi y J. Kittler. Efficient and robust
retrieval by shape content through curvature scale space. In
Proceedings of the International Workshop on Image Databases
and MultiMedia Search, Amsterdam, pp. 35-42, 1996.
(Mora, 2001)
J. Mora. Unidades Aritméticas en coma flotante para Tiempo Real.
PhD Thesis, Universidad de Alicante, 2001.
(Mou y Yeung, 1994)
K.-L. Mou y D.-Y. Yeung. Gabriel Networks: Self-Organizing
Neural Networks for Adaptive Vector Quantization. In Proceedings
of the International Symposium on Speech, Image Processing and
Neural Networks, II:658-661, 1994.
(Nanda et al., 2000)
A. Nanda, K. Mak, K. Sugavanam y R. Sahoo. MemorIES: A
Programmable, Real-Time Hardware Emulation Tool for
Multiprocessor Server Design. SIGOPS Operating System Review,
34(5), 2000.
160
REFERENCIAS
(Nicollin y Sifakis, 1991)
X. Nicollin y J. Sifakis. The Algebra of Timed Process ATP: Theory
and Application. Technical Report RT-C26, Institut National
Polytechnique de Grenoble, 1991.
(Niehaus, 1994)
D. Niehaus. Program representation and Execution in Real-Time
Multiprocesor Systems. University of Massachusetts, 1994.
(Nudd et al., 1989)
G.R. Nudd, T.J. Atherton, R.M. Howarth, C.S. Clippingdale, N.D.
Francis, D.J. Kerbyson, R.A. Packwood, G.J. Vaudin y D.W.
Walton. WPM. A multiple-SIMD architecture for image
processing. In Proceedings of the Third International Conference on
Image Processing and its Applications, Coventry, pp. 161-165,
1989.
(O’Rourke y Toussaint, 1997)
J. O’Rourke y G.T. Toussaint. Pattern Recognition. In Discrete
and Computational Geometry, J.E. Goodman, J. O’Rourke (eds.),
CRC Press LLC, Boca Raton, Florida, 1997.
(Parkinson y Litt, 1990)
D. Parkinson y J. Litt (eds.). Massively Parallel Computing with
the DAP. MIT Press Research Monographs in Parallel and
Distributed
Computing,
The
MIT
Press,
Cambridge,
Massachussets, 1990.
(Pawelzik, 1991)
K. Pawelzik. Nichtlineare Dynamik und Hirnaktivität. Verlag Harri
Deutsch, 1991.
(Persa y Jonker, 2000a)
S. Persa y P. Jonker. Human-Computer Interaction using Real
Time 3D Hand Tracking. In Proceedings of the. 21st Symposium on
Information Theory in the Benelux, Wassenaar, pp. 71-75, 2000.
(Persa y Jonker, 2000b)
S. Persa y P. Jonker. Evaluation of Two Real Time Image
Processing Architectures. In Proceedings of the 6th Annual
Conference of the Advanced School for Computing and Imaging,
Lommel, 2000.
REFERENCIAS
161
(Prasanna et al., 1993)
V.K. Prasanna, C.-L. Wang y A.A. Khokhar. Low Level Vision
Processing on Connection Machine CM-5. In Proceedings of the
International Workshop on Computer Architectures for Machine
Perception, pp. 117-126, New Orleans, 1993.
(Pratt, 1990)
W.K. Pratt. Correlation techniques of image registration. Selected
Papers on Digital Image Processing, MS-17:243-248, 1990.
(Pretlove y Parker, 1993)
J.R.G. Pretlove y G.A. Parker. The Surrey Attentive Robot Vision
System. International Journal of Computer Vision, 7(1):89-107,
1993.
(Prewer, 1995)
D.
Prewer.
Connectionist
Pyramid
Powered
Perceptual
Organization: Visual Grouping with Hierarchal Structures of Neural
Network. Honours Report, Dept. of Computer Science, The Univ.
of Melbourne, 1995.
(Quek, 1994)
F. Quek. Toward a vision-based hand gesture interface. In
Proceedings of the ACM Symposium on Virtual Reality Software
and Technology , pp. 17-31, 1994.
(Quénot y Zavidovique, 1992)
The etca massively parallel data-flow functional computer for
real-time image processing. In IEEE International Conference on
Computer Design, Cambridge, pp. 492-495, 1992.
(Rajkumar et al., 1997)
R. Rajkumar, C. Lee, J.P. Lehozky y D.P. Siewiorek. A resource
Allocation Model for QoS Management. In Proceedings of the 18th
IEEE Real-Time Systems Symposium, 1997.
(Ramamritham et al., 1990)
K. Ramamritham, J.A. Stankovic y P.F. Shiah. Efficient
Scheduling Algorithms for Real-Time Multiprocessor Systems.
IEEE Transactions on Parallel and Distributed Systems, 1(2),
1990.
162
REFERENCIAS
(Ratha y Jain, 1997)
N.K. Ratha y A.K. Jain. FPGA-based Computing in Computer
Vision. In Proceedings of the 1997 Computer Architectures for
Machine Perception CAMP’97, pp. 128-137, 1997.
(Ratha y Jain, 1999)
N.K. Ratha y A.K. Jain. Computer Vision Algorithms on
Reconfigurable Logic Arrays. IEEE Transactions on Parallel and
Distributed Systems, 10(1):29-43, 1999.
(Ready, 1986)
J. Ready. Vrtx: A real-time operating system for embedded
microprocessor applications. IEEE Micro, 1986.
(Rehfuss y Hammerstrom, 1997)
S. Rehfuss y D. Hammerstrom. Comparing SFMD and SPMD
computation for on-chip multiprocessing of intermediate level
image understanding algorithms. In Proceedings of the 1997
Computer Architectures for Machine Perception CAMP’97,
Cambridge, pp. 2-11, 1997.
(Rehg y Kanade, 1993)
J.M. Rehg y T. Kanade. DigitEyes: Vision-Based Human Hand
Tracking. Technical Report CMU-CS-93-220, School of Computer
Science, Carnegie Mellon University, 1993.
(Rougeaux y Kuniyoshi, 1997)
S. Rougeaux e Y. Kuniyoshi. Robust Real-Time Tracking on an
Active Vision Head. In Proceedings of the International Conference
on Computer Vision and Pattern Recognition, pp. 1-6, 1997.
(Röwekamp et al., 1997)
T. Röwekamp, M. Platzner y L. Peters. Specialized Architectures
for Optical Flow Computation: A performance Comparison of
ASIC, DSP, and Multi-DSP. In Proceedings of the 8th International
Conference on Signal Processing Applications & Technology, San
Diego, 1997.
(Rygol et al., 1992)
M. Rygol, S. Pollard, C. Brown y J. Mayhew. A Parallel 3D Vision
System. In Active Vision, A. Blake y A. Yuille (eds.), The MIT
Press, 1992.
REFERENCIAS
163
(Schaefer et al., 1987)
D.H. Schaefer, P. Ho, J. Boyd y C. Vallejos. The GAM Pyramid. In
Parallel Computer Vision, L. Uhr (ed.), pp. 15-42, Academic Press,
1987.
(Sethi y Jain, 1987)
I.K. Sethi y R. Jain. Finding trajectories of feature points in a
monocular image sequence. IEEE Transactions on Pattern
Analisys and Machine Intelligence, 9(1):56-73, 1987.
(Sharkey et al., 1993)
P.M. Sharkey, D.W. Murray, S. Vandevelde, I.D. Reid y P.F.
McLauchlan. A Modular Head/Eye Platform for Real-Time
Reactive Vision. Mechatronics, 3(4):517-535, 1993.
(Sharkey et al., 1995)
P.M. Sharkey, D.W. Murray y P.F. McLauchlan. A mechatronic
approach to active vision systems. In 2nd International Conference
on Mechatronics and Machine Vision in Practice, Hong Kong, pp.
127-132, 1995.
(Shende, 1991)
A.M. Shende. Digital Analog Simulation of Uniform Motion in
Representations of Physical n-Space by Lattice-Work MIMD
Computer Architectures. PhD Thesis, State University of New York,
1991.
(Shimada et al., 1998)
N. Shimada, Y. Shirai, Y. Kuno y J. Miura. Hand Gesture
Estimation and Model Refinement using Monocular Camera Ambiguity Limitation by Inequality Constraints. In IEEE Proc. of
the 3rd International Conference on Automatic Face and Gesture
Recognition, Nara, pp. 268-273, 1998.
(Shiohara et al., 1993)
M. Shiohara, H. Egawa, S. Sasaki, M. Nagle, P. Sobey y M.V.
Srinivasan. Real-Time Optical Flow Processor ISHTAR. In
Proceedings of the Asian Conference on Computer Vision, Osaka,
pp. 790-793, 1993.
REFERENCIAS
164
(Siegel et al., 1996)
H.J. Siegel, T.D. Braun, H.G. Dietz, M.B. Bulaczewski, M.
Maheswaran, P.H. Pero, J.M. Siegel, J.J.E. So, M. Tan, M.D.
Theys y L. Wang. The PASM project: A study of reconfigurable
parallel computing. In Parallel Computing: Paradigms and
Applications, A.Y. Zomaya (ed.), pp. 78-114, International
Thomson Computer Press, London, 1996.
(Smith et al., 1999)
P. Smith, T. Drummond y R. Cipolla. Edge tracking for motion
segmentation and depth ordering. In Proceedings of the 10th
British Machine Vision Conference, Nottingham, 2:369-378, 1999.
(Son, 1995)
S.H. Son (ed.). Advances in Real-Time Systems. Prentice Hall,
1995.
(Sonka et al., 1998)
M. Sonka, V. Hlavac y R. Boyle. Image Processing, Analysis, and
Machine Vision (2nd edition). Brooks/Cole Publishing Company,
1998.
(Stankovic, 1992)
J. Stankovic. Real-Time
Massachusetts,1992.
Computing.
DCS,
University
of
(Stankovic y Ramamritham, 1990)
J. Stankovic y K. Ramamritham. What is predictability for realtime systems?. Journal of Real-Time Systems, 2, 1990.
(Stankovic y Ramamritham, 1991)
J. Stankovic y K. Ramamritham. The Spring kernel: a new
paradigm for real-time systems. IEEE Software, 1991.
(Starner y Pentland, 1995)
T. Starner y A. Pentland. Real-Time American Sign Language
Recognition from Video Using Hidden Markov Models. Technical
Report No. 375, Media Laboratory Perceptual Computing Section,
Massachussets Institute of Technology, 1995.
REFERENCIAS
165
(Starner et al., 1998)
T. Starner, J. Weaver y A. Pentland. A Real-Time American Sign
Language Recognition Using Desk and Wearable Computer Based
Video. Technical Report No. 466, Media Laboratory Perceptual
Computing Section, Massachussets Institute of Technology,
1998.
(Stoyenko, 1987)
A.D. Stoyenko. A schedulability analyzer for real-time Euclid. In
Proceedings of the 8th Real-Time Symposium, San Jose, 1987.
(Strong, 1991)
J.P.Strong. Computations on the Massively Parallel Processor at
the Goddard Space Flight Center. Proceedings of the IEEE,
79(4):548-558, 1991.
(Sturman, 1991)
D.J. Sturman. Whole-hand Input. PhD Thesis, School
Architecture and Planning, Massachussets Institute
Technology, 1991.
of
of
(Sunwoo y Aggarwal, 1991)
M.H. Sunwoo y J.K. Aggarwal. VisTA – An Image Understanding
Architecture. Parallel Architectures and Algorithms for Image
understanding, V.K. Prasanna Kumar (ed.), pp. 121-153,
Academic Press, 1991.
(Tanimoto, 1984)
S.L. Tanimoto. A Hierarchical Cellular Logic for Pyramid
Computers. Journal of Parallel and Distributed Computing, 1:105132, 1984.
(Terzopoulos y Szelinski, 1992)
D. Terzopoulos y R. Szelinski. Tracking with Kalman Snakes. In
Active Vision, A. Blake y A. Yuille (eds.), The MIT Press, 1992.
(Theys, 1996)
M.D. Theys. Programming Parallel Machines: An Image Morphology
Case Study and a Mixed-Mode Simulator. MSc Thesis, Purdue
Univ., 1996.
166
REFERENCIAS
(Thomson y Ryan, 1994)
T. Thomson y B. Ryan. PowerPC 620 Soars. Byte Magazine,
Noviembre, 1994.
(TI, 1991)
Texas Instruments, TMS320C4x User’s Guide, 1991.
(TMC, 1987)
Thinking Machines Corporation. Connection Machine Model CM2 Technical Summary. Technical Report HA87-4, 1987.
(Tokhi, 1998)
M.O. Tokhi. High performance Real-Time Computing Methods.
Shock and Vibration Digest, 30(5), 1998.
(Tokhi, 1999)
M.O. Tokhi. Special Issue on High performance Real-Time
Computing. Microprocessors and Microsystems, 23(6), 1999.
(Trautmann y Denoeux, 1995)
T. Trautmann y T. Denoeux. Comparison of dynamic feature map
models for environmental monitoring, In Proceedings of the
International Conference on Artificial Neural Networks, pp. 73-78,
1995.
(Triesch y von der Malsburg, 1996)
J. Triesch y C. von der Malsburg. Robust Classification of Hand
Postures against Complex Backgrounds. In Proceedings of the 2nd
International Workshop on Automatic Face-and Gesture
Recognition, Killington, pp. 170-175, 1996.
(Tucakov et al., 1996)
V. Tucakov, M. Sahota, D. Murray, A. Mackworth, J. Little, S.
Kingdon, C. Jennings y R. Barman. Spinoza: A Stereoscopic
Visually Guided Mobile Robots. In Proceedings of the 30th Hawaii
International Conference on System Sciences, 1996.
(Tuck y Kim, 1993)
R. Tuck y W. Kim. MasPar MP-2 PE Chip: A Totally Cool Hot
Chip. In IEEE 1993 Hot Chips Symposium, 1993.
REFERENCIAS
167
(Uhlin et al., 1995)
T. Uhlin, P. Nordlund, A. Maki y J.-O. Eklundh. Towards an
Active Visual Observer. In Proceedings of the International
Conference. on Computer Vision, Cambridge pp. 679-686, 1995.
(van der Molen y Jonker, 1998)
M.W. van der Molen y P. Jonker. A Comparison of Linear
Processor Arrays for Image Processing. M.Sc. Thesis, Faculty of
Applied Sciences, Delft University of Technology, 1998.
(van der Wal et al., 2000)
G. van der Wal, M. Hansen y M. Piacentino. The Acadia Vision
Processor. In IEEE proceedings of the International Workshop on
Computer Architecture for Machine Perception, Padua, 2000.
(Veltkamp y Hagedoorn, 1999)
R.C. Veltkamp y M. Hagedoorn. State-of-the-Art in Shape
Matching. Technical Report UU-CS-1999-27, Utrecht University, ,
1999.
(Wang et al., 1991)
B. Wang, G. Chen y H. Li. Configurational computation: A new
computation method on processor arrays with reconfigurable bus
system. In Proceedings of the 1991 International Conference on
Parallel Processing, III:42-48, CRC Press, 1991.
(Weems, 1993)
C. Weems. The Second Generation Image Understanding
Architecture and Beyond. Workshop on Computer Architectures for
Machine Perception, New Orleans, pp. 276-285, IEEE Computer
Society Press, 1993.
(Weems y Dropsho, 1994)
C. Weems y S. Dropsho. Real-Time: Computing: Implications for
General Microprocessors. University of Massachusetts, 1994.
(Weems et al., 1989)
C.C. Weems, S.P. Levitan, A.R. Hanson, E.M. Riseman, D.B. Shu
y J.G. Nash. The Image Understanding Architecture. International
Journal of Computer Vision, 2(3):251-282, 1989.
168
REFERENCIAS
(Woodfill y von Herzen, 1997)
J. Woodfill y B. von Herzen. Real-Time Stereo Vision on the
PARTS Reconfigurable Computer. In Proceedings of the IEEE
Symposium on Field-Programmable Custom Computing Maxhines,
Napa, pp. 242-250, 1997.
(Wu et al., 2000)
Y. Wu, Q. Liu y T.S. Huang. An Adaptive Self-Organizing Color
Segmentation Algorithm with Application to Robust Real-time
Human Hand Localization. In Proceedings of the IEEE Asian
Conference on Computer Vision, Taywan, pp. 1106-1111, 2000.
(Yuille y Hallinan, 1992)
A. Yuille y P. Hallinan. Deformable Templates. In Active Vision, A.
Blake y A. Yuille (eds.), The MIT Press, 1992.
(Zhang, 1993)
Z. Zhang. Le problème de la mise en correspondance: L’état de
l’art. Rapport de recherche nº 2146, Institut National de
Recherche en Informatique et en Automatique, 1993.
Descargar