-
1
INSTITUTO TECNOLGICO Y DE ESTUDIOS SUPERIORES DE
MONTERREY
RECTORA ZONA CENTRO
MAESTRA EN CIENCIAS DE LA INGENIERA
DESARROLLO E IMPLEMENTACIN DE
ALGORITMOS PARA EL SISTEMA DE PERCEPCIN Y
LOCALIZACIN DE LOS ROBOTS BOGOBOTS
TESIS PARA OPTAR POR EL GRADO DE MAESTRO EN CIENCIAS DE
LA INGENIERA
LUCIA BARRERA TOVAR
Asesor: Dr. ALEJANDRO ACEVES LPEZ
Comit de Tesis: Dr. MIGUEL GONZLEZ MENDOZA (ITESM-CEM)
Dr. JESS SAVAGE CARMONA (UNAM)
Dr. JUAN MANUEL IBARRA ZANNATHA
(CINVESTAV)
Atizapn de Zaragoza, Edo. Mx., 26 de Abril de 2010.
-
2
Resumen
En los ltimos aos el campo de la robtica ha crecido
considerablemente. Se han
desarrollado nuevas tecnologas para mejorar los sistemas de
visin, localizacin,
exploracin, navegacin y comunicacin en diversas reas de
aplicacin. Uno de los
requisitos ms fuertes se ha generado en el campo de la visin, a
travs del cual el robot
determina parmetros tiles como son la orientacin, distancia o
color de objetos en el medio
ambiente. Posteriormente esta informacin es utilizada por el
sistema de localizacin para
tomar decisiones adecuadas con respecto a la posicin que guarda
en el entorno y ejecutar
acciones.
Este trabajo de tesis surge como parte de la labor que se lleva
a cabo en el Proyecto
Humanoide, en los robots que llevan por nombre Bogobots. El
proyecto pertenece a la
Ctedra de Investigacin en Control Avanzado, Adaptable e
Inteligente del Campus Estado
de Mxico.
RoboCup es una iniciativa internacional cuyo principal objetivo
busca impulsar la
investigacin en inteligencia artificial y robtica a travs de la
aplicacin e integracin de
diferentes soluciones tecnolgicas alrededor de un problema comn:
encuentros de ftbol
soccer. La visin de esta organizacin es desarrollar un equipo de
humanoides completamente
autnomos que compita con el equipo campen de la FIFA y le gane.
Para lograr este
objetivo, RoboCup se divide en 4 reas de investigacin:
RoboCupSoccer, RoboCupRescue,
RoboCup@Home y RoboCupJunior [32].
El rea en la cual se enfoca esta tesis es RoboCupSoccer, la cual
se subdivide en cinco
categoras, entre ellas la categora Humanoide. Esta es una de las
categoras ms dinmicas y
cercanas al objetivo planteado para el 2050. La categora
Humanoide se divide en dos clases:
KidSize (30-60 cm de altura) y TeenSize (100-160 cm de altura).
Los algoritmos propuestos
toman en cuenta el ambiente proyectado por las reglas de la
primera categora.
El objetivo final de este proyecto de investigacin consiste en
que los algoritmos de
percepcin y localizacin sean funcionales y mejoren el desempeo
los robots Bogobots en
las prximas competencias.
Para el logro de esta meta se utiliza el software de MATLAB, el
cual tambin funge
como un excelente apoyo para la creacin de la interfaz grfica
que contribuye a visualizar
-
3
los resultados. Otra de las herramientas utilizadas fue una
cmara web Live! Cam Vista
VF0420 de la marca Creative. La cmara se conecta por puerto USB
a la computadora y en
conjunto con el toolbox Image Acquisition de Matlab se procede
con la captura de imgenes.
Esta ser la primera de las seis etapas que al agruparse
conforman los procesos de bajo, medio
y alto nivel en el procesamiento de imgenes. A continuacin se
describen las etapas estas
etapas.
Adquisicin de imgenes a travs de la cmara web y MATLAB: Se
realiza a travs del
toolbox Image Acquisition. Los programas desarrollados permiten
tomar las fotos requeridas
y despus evaluar cules de ellas tienen mejor calidad para
determinar los umbrales de
anlisis.
Clasificacin de color: Se probaron dos tcnicas. La primera se
refiere al uso de
superficies implcitas en el espacio de color RGB. Esta tcnica
genera tablas de bsqueda
para cada componente a travs de los pixeles encerrados dentro de
formas geomtricas
especiales creadas a partir de una funcin matemtica particular
que consiste en unir esferas.
La segunda se realiza a travs de seis umbrales de evaluacin para
cada una de las
componentes del espacio HSI. El espacio HSI a diferencia del RGB
separa la informacin del
color en formas comprensibles para el ojo humano, siendo H la
componente relacionada con
el tono, S la saturacincmo se diluye el color con la luz blanca
e I, la intensidad o
cantidad de luz que posee un color. Debido a que las cmaras
captan imgenes en el espacio
RGB o YUV, se recurri a conversiones entre espacios de color, de
tal forma que la imagen
captada por la cmara pasa por un proceso de conversin al espacio
HSI.
Segmentacin: Recibe como entrada principal el resultado de la
clasificacin de color.
Se probaron diversas tcnicas tanto con las superficies implcitas
en RGB como con los
umbrales en HSI. Dentro de estas tcnicas se encuentran:
procesamiento rengln por rengln,
crecimiento de regiones a partir de pixeles semilla y
procesamiento a travs de lneas de
escaneo. Para este ltimo se proponen dos diferentes mtodos para
la creacin de las lneas.
Representacin y descripcin de las regiones: Se extrae informacin
importante de las
regiones segmentadas tal como el rea que abarcan los pixeles
dentro de la regin, el
centroide de esta rea y el color al que pertenecen. Para
realizar esta extraccin se emplea
una conversin a imgenes binarias para poder etiquetar y
clasificar las regiones encontradas.
Identificacin de objetos y estimacin de relaciones espaciales:
El resultado de la
extraccin de caractersticas, en las regiones encontradas, abre
paso a poder identificar los
objetos a partir de la tcnica de rboles de decisin. Estos rboles
de decisin toman en cuenta
las caractersticas de los objetos determinadas por las reglas de
la categora. Al conocer la
dimensin real y la cantidad de pixeles en la imagen que forman
esa dimensin es posible
-
4
establecer una relacin paramtrica que permita, por medio de un
muestre, ajustar los valores
a una funcin. El ajuste se logra a travs de la tcnica de mnimos
cuadrados con lo cual se
obtienen ciertas constantes que permiten la generalizacin del
mtodo y que en cada
fotografa adquirida en la cual se refleje un objeto conocido en
el ambiente de la competencia
se pueda estimar la distancia entre l y el robot.
Localizacin del robot (cmara) en el campo: Al conocer la
distancia de dos objetos
fijos, como es el caso de las porteras y los postes, se utiliza
la tcnica de triangulacin que
por medio de los ngulos formados entre los objetos y la
distancia a la cual se ubican, puede
estimarse la posicin del robot.
El experimento final consiste en trazar una trayectoria real que
permite verificar la
efectividad de los algoritmos desarrollados al obtener una
diferencia entre la trayectoria
deseada y la obtenida realmente. Todo esto a travs de la
interfaz grfica generada en
MATLAB.
-
5
Contenido
Captulo 1
..............................................................................................................................................
13
1 INTRODUCCIN
........................................................................................................................
13
1.1 PROYECTO HUMANOIDE CAMPUS ESTADO DE MXICO
....................................... 14
1.2 DESCRIPCIN DEL AMBIENTE
......................................................................................
18
1.2.1 DESCRIPCIN DE ELEMENTOS
..............................................................................
18
1.2.2 DESARROLLO DE UN ENCUENTRO
......................................................................
21
1.2.3 REGLAS DEL PARTIDO
............................................................................................
22
1.2.4 CARACTERSTICAS DEL BOGOBOT
.....................................................................
23
1.3 MOTIVACIN
.....................................................................................................................
24
1.4 OBJETIVOS
.........................................................................................................................
25
1.5 CONSIDERACIONES IMPORTANTES DEL DOMINIO Y TESIS
.................................. 26
1.6 ORGANIZACIN DE LA TESIS
........................................................................................
26
Captulo 2
..............................................................................................................................................
28
2 MARCO TEORICO
......................................................................................................................
28
2.1 CONCEPTOS SOBRE EL PROCESAMIENTO DE IMGENES
.................................... 28
2.1.1 Etapas del procesamiento de imgenes
.........................................................................
29
2.1.2 Nociones bsicas sobre
imgenes..................................................................................
30
2.1.3 Espacios de color
...........................................................................................................
32
2.1.4 La iluminacin como factor clave en el procesamiento de
imgenes ........................... 37
2.2 PROCESAMIENTO NIVEL BAJO: ADQUISICIN DE IMGENES
EN MATLAB
....................................................................................................................................
39
2.2.1 Proceso para adquirir imgenes en MATLAB
..............................................................
39
2.3 PROCESAMIENTO NIVEL INTERMEDIO: CLASIFICACIN DE COLOR Y
SEGMENTACIN
...........................................................................................................................
43
2.3.1 Clasificacin de color
....................................................................................................
44
2.3.2 Segmentacin
................................................................................................................
49
2.3.3 Representacin y descripcin de las regiones
...............................................................
53
2.3.4 Representacin y caracterizacin de imgenes binarias
................................................ 55
2.4 Procesamiento de alto nivel: Identificacin de objetos y
estimacin de relaciones espaciales
56
2.5 SISTEMAS DE
LOCALIZACIN.......................................................................................
58
3 CLASIFICACION DE COLOR
....................................................................................................
60
3.1 Superficies implcitas
............................................................................................................
61
3.1.1 Construccin del algoritmo
...........................................................................................
62
3.1.2 Programacin en MATLAB
..........................................................................................
68
-
6
3.1.3 Pruebas y resultados
obtenidos......................................................................................
71
3.2 Determinacin de umbrales simples en el espacio
HSI......................................................... 75
3.2.1 Algoritmo en MATLAB
................................................................................................
76
3.2.2 Pruebas experimentales y resultados
.............................................................................
78
3.3 Observaciones respecto a los criterios de clasificacin de
color ........................................... 82
Captulo 4
..............................................................................................................................................
83
4 SEGMENTACIN
.......................................................................................................................
83
4.1 Procesamiento rengln por rengln
.......................................................................................
84
4.1.1 Algoritmo de construccin procesamiento rengln por rengln
................................... 85
4.2 Crecimiento de regiones a travs de una semilla
..................................................................
87
4.2.1 Algoritmo de construccin para crecimiento de regiones a
partir de un pixel semilla . 89
4.3 Crecimiento de regiones a partir de lneas de escaneo
......................................................... 91
4.3.1 Sistema Coordenado
......................................................................................................
92
4.3.2 Lnea de Horizonte
........................................................................................................
93
4.3.4 Algoritmos de construccin para generar las lneas de
escaneo .................................... 94
4.3.5 Algoritmos de construccin para los dos tipos de lneas de
escaneo ............................ 96
4.3.6 Algoritmos de construccin para el crecimiento de regiones
a partir de semillas
obtenidas por lneas de
escaneo.....................................................................................................
97
4.4 Resultados obtenidos para cada tcnica
................................................................................
98
4.4.1 Procesamiento rengln por rengln
...............................................................................
99
4.4.2 Crecimiento de regiones por pixel semilla
..................................................................
101
4.4.3 Crecimiento de regiones por lneas de escaneo
........................................................... 105
4.5 Conclusiones para la etapa de segmentacin
......................................................................
111
Captulo 5
............................................................................................................................................
112
5 IDENTIFICACIN DE OBJETOS
............................................................................................
112
5.1 Criterios para identificacin de los objetos
.........................................................................
112
5.1.1 Identificacin de porteras
...........................................................................................
113
5.1.2 Identificacin de los beacons
......................................................................................
114
5.1.3 Identificacin de la pelota
...........................................................................................
116
5.2 Calculo de dimensiones
espaciales......................................................................................
118
5.2.1 Aproximacin de la distancia por muestreo e interpolacin
....................................... 118
5.2.2 Resultados para las dimensiones espaciales de cada objeto
........................................ 123
5.3 Algoritmo para la identificacin de objetos y estimacin de
distancias ............................. 125
5.4 Conclusiones para la etapa de identificacin y estimacin de
distancias ............................ 128
Captulo 6
............................................................................................................................................
129
6 SISTEMA DE LOCALIZACIN
...............................................................................................
129
6.1 Metodologa para el algoritmo de triangulacin
.................................................................
129
6.2 Rutina de procesamiento para realizar la triangulacin
...................................................... 131
6.3 Algoritmo para mostrar la trayectoria
.................................................................................
133
6.4 Resultados obtenidos para el sistema de Localizacin
........................................................ 133
Captulo 7
............................................................................................................................................
138
-
7 7 ALGORITMO Y EXPERIMENTO FINAL
...............................................................................
138
7.1 Experimento final
................................................................................................................
139
Captulo 8
............................................................................................................................................
144
8 CONCLUSIONES Y TRABAJO FUTURO
...............................................................................
144
ANEXO A
...........................................................................................................................................
146
9 ALGORITMOS
...........................................................................................................................
146
10 REFERENCIAS
......................................................................................................................
210
-
8
Lista de Figuras
Figura 1.1 Diseo en CAD del prototipo Mayra
......................................................................
15
Figura 1.2 Se muestran cinco posturas generadas por una persona
que inicia un caminado
hacia adelante partiendo de una postura erguida
......................................................................
15
Figura 1.3 Modelo Vitruvian-MAYRA.
...................................................................................
16
Figura 1.4 Robonova modificado con cmara cmucam3 y procesador
dsPIC. ........................ 17
Figura 1.5 Bogobot 1 (Graz Austria, 2009)
..............................................................................
18
Figura 1.6 Campo de juego (No escalado). Imagen tomada de [31]
........................................ 19
Figura 1.7 Porteras [31]
...........................................................................................................
19
Figura 1.8 Lneas de la cancha [31]
..........................................................................................
20
Figura 1.9 Vista del campo con porteras y postes. Objetos fijos.
[30] .................................... 20
Figura 1.10 a) Beacon1 b) Pelota c) Beacon2 d) Portera amarilla
e) Portera azul ................. 21
Figura 1.11 Dimensiones reglamentarias del Robot [31]
......................................................... 23
Figura 2.1 Diagrama proceso de adquisicin y anlisis de imgenes
propuesto por Gonzlez &
Woods [13]
...............................................................................................................................
29
Figura 2.2 Pixeles como arreglos de columnas y renglones.
.................................................... 31
Figura 2.3 Extraccin de pixeles de una imagen binaria [19]
.................................................. 31
Figura 2.4 Representacin del espacio RGB. Imagen tomada de [36]
..................................... 33
Figura 2.5 Representacin del espacio HSI. Imagen tomada de
[36]....................................... 34
Figura 2.6 Modelo de color basado en una luz que incide en una
superficie y dicha superficie
lo refleja
....................................................................................................................................
37
Figura 2.7 Proceso de adquisicin de imgenes en MATLAB
................................................ 40
Figura 2.8 Resultado obtenido a partir de la funcin imaqhwinfo
en MATLAB ..................... 41
Figura 2.9 Extraccin de pixeles muestra para definir los
umbrales a) Imagen RGB con la
seleccin de pixeles a travs de MATLAB c) Pixeles seleccionados
en el espacio RGB c)
Conversin y seleccin de pixeles en espacio
HSI...................................................................
44
2.10 Esquema para clasificacin de color y segmentacin de imagen
..................................... 45
Figura 2.11 Volumen que define un subespacio de color bajo seis
umbrales .......................... 46
Figura 2.12 Ejemplo de imgenes obtenidas en las pruebas entre
cmaras bajo diversas
condiciones de iluminacin. a) Imagen en laboratorio cae en la
clasificacin de imagen oscura
b) Imagen con ms brillo e iluminacin natura, pero con bajo
contraste ................................. 47
Figura 2.13 a) Ejemplo conectividad 4. b) Ejemplo conectividad 8
........................................ 50
Figura 2.14 Mscara general de 3x3
.........................................................................................
50
Figura 2.15 Mscara empleada para detectar diferentes puntos
aislados en un fondo constante
[13]
...........................................................................................................................................
51
Figura 2.16 Mscaras de lnea. a) Horizontal. b) +45. c) Vertical.
d) -45. [13] .................... 51
Figura 2.17 a) Resultado operador de Sobel. b) Resultado con
operador Canny. c) Imagen
original
......................................................................................................................................
52
-
9
Figura 2.18 a) Regiones encontradas b) Etiquetado de esas
regiones ...................................... 56
Figura 3.1 a) Nube de pixeles representadas por elipses b) Nube
de pixeles representadas por
esferas c) Imagen a partir de la cual se tomaron las muestras de
color .................................... 61
Figura 3.2 Datos y centros obtenidos a partir del ejemplo de
K-means ................................... 64
Figura 3.3 a) Superficie con fusin grande b) Superficie con
fusin pequea ......................... 65
Figura 3.4 Representacin de micro cubos alineados en direccin z
y y ................................. 67
Figura 3.5 Proceso para formar tablas de bsqueda a travs del
algoritmo de superficies
implcitas
..................................................................................................................................
68
Figura 3.6 Seleccin de muestras a travs de roipoly(f)
........................................................... 69
Figura 3.7 Representacin grfica. Izquierda: Muestras
seleccionadas. Derecha: Esferas
resultantes
.................................................................................................................................
70
Figura 3.8 Muestra de pixeles seleccionados.
..........................................................................
72
Figura 3.9 Esferas creadas a partir de n-clusters. Izquierda:
seis clusters, resultado esferas de
mayor tamao. Derecha: doce clusters
.....................................................................................
72
Figura 3.10 Esferas para clases de color azul, amarillo y
naranja ............................................ 73
Figura 3.11 Diferencia entre imgenes en RGB y HSI. Derecha: RGB.
Izquierda: HSI ......... 75
Figura 3.12 Proceso para la obtencin de rangos HSI
..............................................................
76
Figura 3.13 Extraccin de muestras en HSI a) Imagen tomada con
Live!Creative b) Imagen
tomada con VGPVCC2 de Sony
..............................................................................................
77
Figura 3.14 Histogramas obtenidos a partir de la seleccin de
muestras en el espacio HSI. a)
Muestras de color naranja b) Muestras de color azul
...............................................................
78
Figura 3.15 Adquisicin de imgenes bajo diferentes condiciones de
iluminacin. a) Imagen
tomada en el laboratorio con luz artificial. b) Imagen tomada en
una casa con luz natural ..... 80
Figura 3.16 Imgenes para revisar componente H. a) Pelota bajo
iluminacin natural b) Pelota
bajo iluminacin artificial
.........................................................................................................
81
Figura 4.1 Proceso de conversin a imagen binaria y etiquetado de
regiones para obtener cajas
de limitacin y
caractersticas...................................................................................................
86
Figura 4.2 Segmentacin de Beacon1. a) Regiones limitadas por
cajas blancas. b) Regiones
limitadas por cuadros del color de clase a la que pertenecen
................................................... 87
Figura 4.3 Problemas al contar solo con una semilla para el
crecimiento de regiones ............ 88
Figura 4.4 Seleccin de pixel semilla con la funcin getpts
.................................................... 90
Figura 4.5 Regin segmentada y el contorno de la regin en caja de
limitacin .................... 90
Figura 4.6 Sistema Coordenado para Campo
...........................................................................
92
Figura 4.7 Sistema coordenado para la cmara
........................................................................
93
Figura 4.8 Sistema coordenado para
Imagen............................................................................
93
Figura 4.9 Clculo del horizonte a partir de la interseccin entre
el plano de proyeccin P y el
plano H paralelo al campo
........................................................................................................
94
Figura 4.10 Primer mtodo para formar el patrn de lneas de
escaneo utilizado para
superficies implcitas
................................................................................................................
95
Figura 4.11 Segundo mtodo para aplicar el patrn de escaneo
.............................................. 96
Figura 4.12 Imgenes para las pruebas de segmentacin por
crecimiento de regiones a partir
de una matriz de
semillas..........................................................................................................
98
Figura 4.13 Segmentacin a partir de semilla color naranja y
verde. Tiempo de proceso 31
segundos
.................................................................................................................................
102
-
10
Figura 4.14 Segmentacin a partir de semilla color verde y azul.
Tiempo de proceso 122
segundos
.................................................................................................................................
102
Figura 4.15 Patrones de escaneo para ambos criterios de color.
Tomando como ejemplo el
beacon2
...................................................................................................................................
105
Figura 5.1 Ejemplos de la representacin de cajas de limitacin
........................................... 113
Figura 5.2 Reglas de identificacin para las porteras
............................................................
114
Figura 5.3 Reglas de identificacin para beacons
..................................................................
116
Figura 5.4 Imagen de la pelota tomada a 1.70 cm que equivale a
484 pixeles en la imagen 117
Figura 5.5 Reglas para identificar la pelota
............................................................................
117
Figura 5.6 Diagrama de proyeccin de los objetos sobre el plano
de la imagen. d es la
distancia real del objeto y Dx Dy son las medidas de los objetos
en pixeles ........................... 118
Figura 5.7 Comparacin entre las muestras y curva que aproxima
del beacon1 ................... 124
Figura 5.8 Comparacin entre las muestras y curva que aproxima de
la portera amarilla .... 124
Figura 5.9 Comparacin entre las muestras y curva que aproxima
para la pelota ................. 124
Figura 5.10 Resultados del programa de identificacin de objetos
para beacon1 y portera
amarilla
...................................................................................................................................
126
Figura 5.11 Resultados de identificacin de objetos y estimacin
de distancia para la pelota
................................................................................................................................................
127
Figura 5.12 Resultados de identificacin de objetos y estimacin
de distancia para beacon2 y
portera azul
............................................................................................................................
127
Figura 6.1 Esquema de triangulacin
.....................................................................................
129
Figura 6.2 Cancha en Matlab con ejes de referencia y sentido en
el cual deben introducirse los
objetos fijos identificados para llevar a cabo el proceso de
triangulacin ............................. 131
Figura 6.3 Resultados del sistema de localizacin a partir de la
identificacin de portera
amarilla y
beacon2..................................................................................................................
133
Figura 6.4 Imagen de la trayectoria real
.................................................................................
134
Figura 6.5 Trayectoria Real (asteriscos) Vs. Trayectoria
Estimada (crculos) ....................... 137
Figura 7.1 Ejemplo de la interfaz grfica generada por el
algoritmo final, completafotos .... 139
Figura 7.2 Imagen de la trayectorial real
................................................................................
140
Figura 7.3 Resultados grficos para P1
..................................................................................
141
Figura 7.4 Resultados grficos para P3
..................................................................................
142
Figura 7.5 Resultados grficos para P5
..................................................................................
142
Figura 7.6 Trayectoria Real (asteriscos) Vs. Trayectoria
Estimada (crculos) ....................... 143
-
11
Lista de Tablas
Tabla 1-1Dimensiones de la cancha en cm
..............................................................................
19
Tabla 3-1 Ejemplo de datos para Clasificacin K-means.
........................................................ 62
Tabla 3-2. Centros iniciales
......................................................................................................
63
Tabla 3-3 Resultado de distancias y pertenencias para ejemplo de
K-means .......................... 63
Tabla 3-4 Ejemplo de tabla de bsqueda
..................................................................................
66
Tabla 3-5 Etiquetas de color asignadas para cada clase
........................................................... 70
Tabla 3-6 Resultado de experimentos con diversos valores de rho
y mltiplo de sigma......... 73
Tabla 3-7 Ejemplo de Tabla reducida para la clase de color azul,
cuyo orden es RGB ........... 74
Tabla 3-8 Datos generados para la tabla de bsqueda
..............................................................
75
Tabla 3-9 Ejemplo de la tabla obtenida a partir del anlisis de
histogramas en el espacio HSI
..................................................................................................................................................
78
Tabla 3-10 Rangos HSI para cada clase de color
.....................................................................
79
Tabla 3-11 Relacin No. de muestras y tiempo de procesamiento
para rangos en HSI ........... 79
Tabla 3-12 Comparacin de valores obtenidos para las componentes
HSI bajo diferentes
condiciones de iluminacin
......................................................................................................
80
Tabla 3-13 Resultado de rangos al evaluar ls fotografas con el
programa RoiPoly_HSI........ 81
Tabla 4-1 Combinaciones de algoritmos para el proceso de
segmentacin ............................. 84
Tabla 4-2 Combinacin entre los tipos de lneas de escaneo y las
clasificaciones de color .... 96
Tabla 4-3 Comparativo de resultados arrojados por la tcnica de
procesamiento rengln por
rengln utilizando ambos criterios de color, Tabla de bsqueda y
superficies implcitas vs.
Conversin de RGB a HSI clasificada en regiones cbicas
................................................... 100
Tabla 4-4 Comparativo de tiempos a partir del procesamiento
rengln por rengln ............. 101
Tabla 4-5 Comparativo de resultados arrojados por la tcnica de
crecimiento de regiones con
un pixel semilla utilizando ambos criterios de color, Tabla de
bsqueda y superficies
implcitas vs. Conversin de RGB a HSI clasificada en regiones
cbicas ............................. 103
Tabla 4-6 Comparativo de tiempos a partir del crecimiento de
regiones por un pixel semilla
................................................................................................................................................
104
Tabla 4-7 Comparativo de tiempos para diferentes tomas del
objeto Pelota ......................... 104
Tabla 4-8 Tiempos obtenidos para generar la matriz semilla con
cada patrn y clasificador de
color
........................................................................................................................................
105
Tabla 4-9 Resultados de segmentacin del crecimiento de regiones
con lneas de escaneo
Tipo I
......................................................................................................................................
107
Tabla 4-10 Tiempos obtenidos para la tcnica de crecimiento de
regiones con lneas de
escaneo tipo I
..........................................................................................................................
108
Tabla 4-11 Resultados de la segmentacin usando ambos criterios
de color ......................... 109
Tabla 4-12 Tiempos de procesamiento para la segmentacin por
medio de crecimiento de
regiones
...................................................................................................................................
110
Tabla 4-13 Resumen de los tiempos obtenidos para cada tcnica de
segmentacin .............. 111
-
12
Tabla 5-1 Muestreo de distancia y dimensiones en la imagen
capturada a esa distancia para las
porteras
..................................................................................................................................
120
Tabla 5-2 Muestreo de distancia y dimensiones en la imagen
capturada a esa distancia para los
beacons
...................................................................................................................................
121
Tabla 5-3 Muestreo de distancia y dimensiones en la imagen
capturada a esa distancia para la
pelota
......................................................................................................................................
122
Tabla 5-4 Parmetros a y b obtenidos mediante la interpolacin y
aproximacin por mnimos
cuadrados para cada objeto
.....................................................................................................
123
Tabla 6-1 Posiciones conocidas de los objetos determinadas con
el eje de referencia definido
y las caractersticas del campo de juego
.................................................................................
132
Tabla 6-2 Caractersticas de la Trayectoria Real
....................................................................
134
Tabla 6-3 Imgenes adquiridas para obtener la trayectoria
deducida por el instrumento de
adquisicin
..............................................................................................................................
135
Tabla 7-1 Caractersticas de la Trayectoria Real
....................................................................
139
Tabla 7-2 Posiciones para la trayectoria
estimada..................................................................
143
-
13
Captulo 1
1 INTRODUCCIN
Este trabajo de tesis surge como parte de la labor que se lleva
a cabo con los Bogobots. Se
enfoca a los requerimientos en el rea de visin artificial para
la generacin de algoritmos de
percepcin y localizacin que les permitan obtener y procesar de
una forma ms efectiva la
informacin de su entorno y tomar decisiones que se concreten en
acciones. Todo esto en el
ambiente de las competencia de RoboCup. El Proyecto Humanoide
pertenece a la Ctedra de
Investigacin en Control Avanzado, Adaptable e Inteligente del
Campus Estado de Mxico
RoboCup es una iniciativa internacional cuyo principal objetivo
es impulsar la
investigacin en inteligencia artificial y robtica a travs de la
aplicacin e integracin de
diferentes soluciones tecnolgicas alrededor de un problema comn:
encuentros de ftbol
soccer. La visin de esta organizacin es desarrollar un equipo de
humanoides completamente
autnomos que compita con el equipo campen de la FIFA y le gane.
Para lograr este
objetivo, RoboCup se divide en 4 reas de investigacin:
RoboCupSoccer, RoboCupRescue,
RoboCup@Home y RoboCupJunior [32].
Este trabajo de tesis est enfocado al rea de RoboCupSoccer, la
cual se subdivide en
cinco categoras, entre ellas la categora Humanoide. Estos robots
autnomos cuentan con
estructuras similares al cuerpo humano, cabeza, torso y
extremidades inferiores y superiores.
Compiten dos equipos conformados por tres integrantes cada uno y
el equipo victorioso ser
aqul que anote ms goles. Adicionalmente a estas competencias de
soccer, tambin se llevan
a cabo retos tcnicos. La categora humanoide se divide en dos
clases KidSize (30-60 cm de
altura) y TeenSize (100-160 cm de altura). Entre los temas de
investigacin que se busca
desarrollar, mejorar e implementar se encuentran: caminata
dinmica, carrera, patear la pelota
manteniendo el balance, percepcin visual de los objetos que
forman parte del juego (otros
jugadores, porteras, el campo y la pelota), sistemas de auto
localizacin y trabajo en equipo
[18].
A pesar de que el primer torneo de RoboCup se realiz en 1997, la
liga humanoide
vio la luz hasta el ao 2002. Los primeros robots que compitieron
fueron sometidos a retos de
caminado o tandas de penales e incluso se permita el control
remoto de los mismos. Con el
-
14
tiempo las categoras adquirieron forma y las reglas
restringieron muchos aspectos tcnicos
antes permitidos, todo esto con el objetivo de alcanzar la meta
propuesta para el 2050 y
construir humanoides cada vez ms autnomos y similares en
comportamiento al humano.
Por ejemplo, a partir del 2008 la torsin de 360 se restringi al
giro normal de un humano, es
decir 180 y las competencias de tres contra tres iniciaron. A
partir de este momento dos tipos
diferentes de programacin se requirieron, una para portero y
otra para jugadores en busca de
anotar gol.
Es en el 2008 que por primera vez particip el equipo del
Tecnolgico de Monterrey,
Campus Estado de MxicoBogobotsquedando en dcimo segundo lugar en
la categora
KidSize y en sptimo en la categora TeenSize. Para llegar a este
punto y lograr un mejor
lugar en las competencias del 2009 (sptimo lugar en KidSize) el
proyecto humanoide
atraves un largo proceso de evolucin que se describir en la
siguiente seccin.
1.1 PROYECTO HUMANOIDE CAMPUS ESTADO DE MXICO
El proyecto humanoide pertenece a la Ctedra de Investigacin en
Control Avanzado,
Adaptable e Inteligente del Campus Estado de Mxico y fue
autorizado desde 2004 para ser
apoyado con fondos propios de la institucin, los cuales que se
han renovado cada ao hasta
la fecha. Los tres grandes objetivos de este proyecto son:
Construir un robot de dimensiones comparables al ser humano,
capaz de
interactuar con l y ayudarlo en tareas cotidianas.
El robot debe ser completamente autnomo, capaz de desplazarse
sobre
diferentes superficies as como de manipular y transportar
objetos.
Establecer una plataforma de alto grado de dificultad para
estudiantes de reas
afines (electrnica, mecnica y computacin) tanto a nivel
licenciatura como
posgrado.
En el 2004 se inici la construccin del primer prototipo bpedo,
llamado MAYRA, el
cual fue diseado y construido en aluminio, con servo-motores
comerciales y una altura de
cincuenta centmetros. Su fuente de alimentacin y su procesador
estaban embarcados,
dotndolo de autonoma, y se desarrollaron los algoritmos
necesarios para caminar en lnea
recta en superficies lisas y sin inclinacin. Dentro de los
logros cientficos se destacan la
resolucin analtica de las ecuaciones de cinemticas inversa y el
desarrollo de los clculos de
trayectorias semicirculares de cada pie para lograr equilibrio
esttico. Estos resultados fueron
-
15
publicados en [38] y fueron objeto del trabajo de tesis del
actual maestro en ciencias Ral
Serna Hernndez cuya tesis fue defendida en enero del 2005
[37].
Figura 1.1 Diseo en CAD del prototipo Mayra
Durante el 2005, se hicieron recomendaciones con objeto de
modificar la forma de la
planta del pie del prototipo MAYRA y hacer un caminado ms
estable, gracias la
combinacin de informacin proveniente de la captura de
movimientos de caminado real de
seres humanos (Human-Motion Captured Data) y a las tcnicas
clsicas de caminata de
humanoides con equilibrio estticamente estable [26]. El
resultado de estos estudios fue
demostrar la posibilidad de simplificar el algoritmo de control
requerido [25].
Figura 1.2 Se muestran cinco posturas generadas por una persona
que inicia un caminado hacia adelante partiendo de una postura
erguida
El propsito de los trabajos de investigacin desarrollados en el
2006 fue obtener un
modelo dinmico del bpedo MAYRA y el diseo de una ley de control
para lograr el
movimiento basado en una tcnica de caminado con balanceo. Como
resultado se desarroll
el modelo llamado Vitruvian-MAYRA y los resultados del control,
as como la
recomendacin de servomotores ms adecuados, fueron reportados a
detalle en [10-11] y
fueron el objeto de investigacin de la tesis de maestra de
Enrique Gonzlez quien defendi
su trabajo en el 2007 [9]
-
16
Figura 1.3 Modelo Vitruvian-MAYRA.
En el 2007 se incorporan al proyecto tres estudiantes destacados
de la carrera de
ingeniera mecatrnica que previamente haban participado y logrado
excelentes resultados en
torneos de robtica. En ese ao se logr la construccin de dos
prototipos de humanoides
pequeos (30cm de alto) totalmente autnomos y basados en piezas
de los kits comerciales
ROBONOVA [40] [16] y LYNXMOTION [23], incluyendo una cmara
CMUCAM2 [33],
una brjula electrnica y un microprocesador central. Los
algoritmos de caminado
mencionados anteriormente fueron implementados de manera
satisfactoria y se lograron las
primeras acciones integradas de alto nivel, tales como reconocer
una pelota naranja, acercarse
y patearla en una direccin establecida.
Se comenz la modificacin de la estructura mecnica del ROBONOVA
para
incorporar los movimientos del cuello y la instalacin de
sensores (giroscopio, acelermetros,
brjula). Con este prototipo se llev a cabo la primera aplicacin
de un jugador de ftbol con
comportamiento de delantero y posteriormente con comportamiento
de portero utilizando en
todo momento los recursos embarcados del robot y sin hacer uso
de computadora externa.
Posteriormente se inici el diseo y construccin de un humanoide
basado en piezas
de LYNXMOTION incluyendo mejoras en la estructura mecnica,
incrementando el nmero
de grados de libertad, colocando servomotores ms potentes y
desarrollando una tarjeta de
procesamiento central basado en un DSPIC de montaje superficial.
La ventaja de estas
modificaciones fue la obtencin de robots ms rpidos y con mejores
capacidades para jugar
ftbol.
Para este prototipo, llamado Bogobot se desarroll un modelo
geomtrico utilizando
el software de diseo ProEngineering y se obtuvo un robot virtual
modelado con tcnicas de
realidad virtual as como un modelo cinemtico basado en el mtodo
de D-H con los que se
desarroll un excelente simulador. Adems se aplicaron los
algoritmos desarrollados en los
-
17
trabajos en el rea de visin computacional que se haban
publicados previamente en el 2004
en [3] y posteriormente en un captulo de libro [4].
El diseo del mecanismo de movimiento de la cabeza, la electrnica
de control de
servomotores y la tarjeta de procesamiento central fueron
desarrollados y reportados en el
Team Description Paper sometido al comit organizador de RoboCup
para lograr la
clasificacin a las competencias del 2008 en la categora de
humanoides KidSize [1]
Figura 1.4 Robonova modificado con cmara cmucam3 y procesador
dsPIC.
Desde el 2008 y hasta la fecha, se trabaja en la integracin de
algoritmos de
segmentacin robusta de colores, localizacin, planeacin de
movimiento, comunicacin
entre robots y cooperacin.
Como resultado de estos trabajos, se logr la clasificacin y
participacin en las
competencias de robtica humanoide en la categora de humanoides
KidSize y TeenSize en
RoboCup celebradas en Julio de 2008 en Suzhou, China, donde se
obtuvo un dcimo segundo
lugar en la categora KidSize y sptimo lugar en TeenSize.
Con la experiencia del torneo del 2008, las mejoras en los
algoritmos y los avances
electrnicos logrados en el ltimo ao, se clasific nuevamente a
las competencias de
humanoides de RoboCup celebradas en junio 2009 en Graz, Austria,
en donde se obtuvo el
sptimo lugar.
-
18
Figura 1.5 Bogobot 1 (Graz Austria, 2009)
1.2 DESCRIPCIN DEL AMBIENTE
Este trabajo se ha desarrollado considerando las reglas del
2009. Cabe destacar que las reglas
del juego de la categora de los robots humanoides se actualizan
ao con ao y es posible que
a la fecha en que se presente esta tesis se haya publicado la
versin 2010 de las reglas. A
continuacin se esbozan los principales componentes de la Liga de
Robots Humanoides en la
categora KidSize [31] la cual incluye robots con una altura de
30 a 60 cm. Esto permitir
comprender los factores que dictaminan el diseo de los
algoritmos, la toma de decisiones y
los requerimientos que se deben cumplir.
1.2.1 DESCRIPCIN DE ELEMENTOS
Un partido se desarrolla en un terreno similar al campo de ftbol
para los humanos, pero de
menor tamao. Cuenta con dos porteras, dos postes en la mitad del
campo, lneas que definen
reas importantes del campo y seis marcas a lo largo de la
cancha.
Todos los objetos dentro del ambiente en el que se desenvuelve
el robot cuentan con
un patrn de color definido y dimensiones. Estos parmetros
contribuyen a una identificacin
ms simple y veloz de los objetos con base a forma y color. A
continuacin se presenta una
descripcin de los elementos que componen este ambiente.
El campo est cubierto por una alfombra color verde en la cual se
dibujan las franjas
que delimitan las diferentes zonas que componen el campo. En la
tabla 1.1 se presentan sus
dimensiones.
-
19
Figura 1.6 Campo de juego (No escalado). Imagen tomada de
[31]
Tabla 1-1Dimensiones de la cancha en cm
Las porteras se localizan en los extremos de la cancha en el
centro de la lnea de gol.
Una portera es amarilla y la otra azul. Ambas cuentan con tres
paredes en esos colores y con
postes blancos de 90 cm de altura que bordean la portera.
Figura 1.7 Porteras [31]
KidSize Teen Size
A Longitud del campo
B Ancho del campo
C Profundidad portera 50 60
D Ancho portera 150 260
E Longitud rea de gol
F Ancho rea de gol
G Marca de la distancia de penal
H Marca de reinicio de juego
I Dimetro del crculo central
J Ancho de la lnea de bordes
K Distancia de los postes al campo
120
70
40
600
400
60
300
180
100
-
20
El campo se encuentra rodeado por bordes de madera pintados en
color blanco. Las
lneas de color blanco que se encuentran a lo largo y ancho de la
cancha tienen un grueso de 5
cm.
Figura 1.8 Lneas de la cancha [31]
Existen dos postes que se localizan en la parte media de la
cancha. Tienen un dimetro
de 20 cm y una altura total de 60 cm. Cuentan con tres secciones
de colores (20 cm cada una);
el segmento de arriba y abajo tienen el mismo color que la
portera localizada a la izquierda,
lo cual sirve como referencia al robot para ubicar la cancha en
la cual debe anotar. Para
efectos de este trabajo el poste con la combinacin
amarillo-azul-amarillo se ha denominado
beacon1 y el otro, es decir azul-amarillo-azul, ser denominado
beacon2.
Figura 1.9 Vista del campo con porteras y postes. Objetos fijos.
[30]
Por ltimo en cuanto a objetos se refiere, tambin se utiliza una
pelota de tenis color
naranja de 18 cm de dimetro y peso de 294 g
-
21
Los robots participantes deben ser 90% color negro y menos del
1% con colores
diferentes a los que poseen los objetos en el campo. La Figura
1.10 muestra la apariencia real
de los componentes con los cuales se trabaj para el desarrollo
de esta tesis.
Figura 1.10 a) Beacon1 b) Pelota c) Beacon2 d) Portera amarilla
e) Portera azul
1.2.2 DESARROLLO DE UN ENCUENTRO
Cada encuentro consiste de dos perodos de diez minutos entre los
cuales existe un descanso
mximo de cinco minutos. Es posible agregar tiempo extra si el
referee lo considera necesario
debido a tiempo perdido o tiempo fuera. En caso de existir un
empate se juegan dos tiempos
de cinco minutos. Si el encuentro contina sin decidirse se
procede a la ronda de cinco
penales.
Antes de comenzar el juego, los participantes pueden acceder al
campo durante quince
minutos. Como primera accin se realiza el volado, a travs del
cual el equipo ganador
decidir hacia qu cancha tirar y el otro equipo inicia el
partido. En el segundo tiempo el
equipo ganador da la patada de inicio. El juego se inicia y
reinicia a travs del kick-off o
patada de salida. Cada vez que se anota un gol el juego se
reinicia a mitad de la cancha. Una
restriccin importante es que no se puede anotar desde el punto
de kick-off. En caso de que
esto suceda, se concede el punto al equipo contrario.
El procedimiento para iniciar el encuentro es el siguiente:
todos los jugadores deben
estar en el lado de su cancha y el equipo que no da la patada de
salida debe ubicarse alrededor
a)
b)
c)
d) e)
-
22
del crculo central y esperar a que la pelota se encuentre en
movimiento. En caso de que la
pelota no se patee adecuadamente, el juego iniciar diez segundos
despus de que el rbitro
haya dado la seal.
La forma de ganar un encuentro es contar con la mayor cantidad
de goles. Se
considera vlido un gol cuando la pelota entra completamente en
la portera. Si antes de
terminar el partido en el tiempo regular ya existe una
diferencia de diez goles, el rbitro da
por terminado el encuentro.
No debe existir contacto o fuerza entre los jugadores de equipos
contrarios, en caso de
presentarse esta situacin el robot agresor deber salir del campo
durante treinta segundos. En
caso de cometer alguna falta contra miembros contrarios, se
concede al equipo agredido un
tiro libre indirecto.
1.2.3 REGLAS DEL PARTIDO
El partido se lleva a cabo entre dos equipos. Cada uno consiste
de tres jugadores y uno de
ellos debe operar como portero. Los encuentros no pueden empezar
si no se cuenta con al
menos un jugador. A aquellos jugadores incapaces de pararse o
caminar autnomamente no se
les permite continuar en el encuentro. Solo es posible cambiar
hasta dos jugadores por
encuentro y el rbitro debe autorizar ese cambio. Cualquiera de
los robots puede fungir como
portero, pero se debe informar previamente al rbitro. Cuando se
necesita dar servicio al robot
por alguna complicacin dentro del encuentro, ste se debe retirar
del campo y no regresar
hasta treinta segundos despus de haber sido retirado. Al
regresar debe ser posicionado en
alguno de los dos extremos de la lnea central con la vista hacia
el centro de la cancha.
Los robots que participan en las competencias deben cumplir con
las siguientes
caractersticas: dos extremidades inferiores y dos superiores,
una cabeza y un tronco; todo en
proporcin como lo muestra la Figura 1.11 y deben ser capaces de
levantarse y caminar por
cuenta propia.
-
23
Figura 1.11 Dimensiones reglamentarias del Robot [31]
La altura del robot se determina de la siguiente forma:
Acm= altura del robot de los pies al centro de masa
At= altura total del robot considerando que est de pie y
derecho
A= min (At, 2.2 Hcm)
La categora KidSize debe cumplir con una altura entre treinta y
sesenta centmetros,
as como con otras dimensiones del cuerpo tales como el tamao del
pie (debe encontrarse en
un rectngulo de A2/28) y la extensin de los brazos (debe ser
menor a 1.2* A).
Los sensores autorizados en las competencias deben colocarse en
una posicin similar
a la del funcionamiento biolgico humano. Por ejemplo la cmara,
que funge como sensor de
visin, debe colocarse en la cabeza y los movimientos se
encuentran restringidos a los mismos
que experimenta el cuello humano, 180 de izquierda a derecha,
270 de arriba abajo y 180
de hombro a hombro. Los sensores de fuerza, temperatura y tacto
pueden ubicarse en
cualquier posicin. Tambin pueden colocarse sensores interiores
para medir ciertos
parmetros como el voltaje, la corriente, aceleracin, fuerza y
rotacin.
Cabe resaltar que los robots no pueden ser operados va remota y
que, a pesar de que
es posible la comunicacin entre ellos a travs de una red
inalmbrica, sta no debe exceder
1MBaud.
1.2.4 CARACTERSTICAS DEL BOGOBOT
A continuacin se describen las caractersticas del robot
humanoide que compiti en Graz,
Austria. Est fabricado en aluminio y las cadenas cinemticas se
encuentran motorizadas a
travs de seis servomotores de alto torque en cada pierna y tres
en cada brazo. Para darle
movimiento al cuello se cuenta con dos servomotores ms que estn
conectados al procesador
de la cmara y por tanto, resultan independientes de los
anteriores. El procesador central es un
-
24
DSPic30f4013 el cual posee una tarjeta de control para los
servomotores, la cmara
CMUCAM3 conectada, cuatro brjulas digitales conectadas a la
entrada analgica, un
dispositivo electrnico IMU tambin conectado a entradas analgicas
y una fuente de poder
compuesta por dos bateras de litio. La tarjeta del control de
servomotores recibe todas las
posiciones angulares solicitadas y las enva a travs de seales
elctricas a los servomotores.
La cmara CMUCAM3 tiene programados los algoritmos para
identificacin de objetos,
seguimiento y estimacin de distancia, sin embargo todos los
resultados se mandan al
procesador para la toma de decisiones.
La cmara CMUCAM3 [34] pertenece a un proyecto desarrollado por
la Universidad
Carnegie-Mellon. El objetivo del proyecto es integrar un
ambiente de desarrollo flexible y
sencillo con un hardware de bajo costo. La cmara es capaz de
procesar veintisis cuadros por
segundo, cuenta con una resolucin CIF (352x288) en el espacio
RGB, se programa en C con
el compilador GCC, puede desarrollarse en ambiente Windows o
Linuxpara compilar en
Windows requiere del Cygwin, cuenta con cuatro puertos PWM para
controlar los servos
de acuerdo a las imgenes que perciba. La programacin de esta
cmara se lleva a cabo con
una aplicacin especial llamada Phillips Flash Utility
relacionada con el procesador LPC2000,
importante componente de la cmara. A este procesador se le
transfieren archivos .hex a
travs del cable serial.
1.3 MOTIVACIN
Hasta este momento, el robot Bogobot desarrollado en el
Tecnolgico de Monterrey utiliza
algoritmos simples para la deteccin de colores y con ellos
identifica los objetos en el medio
ambiente.
Esto ha permitido analizar hasta cinco cuadros por segundo
logrando un buen
seguimiento de objetos mviles como es el caso de la pelota. Sin
embargo los algoritmos de
visin embarcados en los Bogobots no permiten deducir la
auto-localizacin del robot, la
ubicacin de los robots compaeros de equipo o de los contrarios.
Como consecuencia de esta
situacin el equipo de robots Bogobots cuenta con un bajo
desempeo en lo individual y
colectivo para mantener el control de la pelota, marcar gol
rpidamente o generar una
estrategia defensiva colectiva cuando no se tiene el control de
la pelota u ofensiva cuando se
encuentran en el caso contrario.
Para otorgar a los robots la capacidad de jugar como equipo y
establecer acciones de
juego, en funcin de la ubicacin de la pelota y de los robots en
el campo de juego, resulta
crtico que los algoritmos de visin permitan la auto-localizacin
de los autmatas. Lo
-
25
anterior se efecta a partir del anlisis de los objetos fijos
reconocidos en la cancha.
Por lo tanto, si los robots Bogobots contaran con algoritmos de
auto-localizacin se
podran construir algoritmos de planeacin de trayectorias,
navegacin y evasin de
obstculos. Los cuales mejoraran sustancialmente el desempeo de
los robots al ejecutar
acciones que tomen en cuenta su posicin y la ubicacin de la
pelota. Dada esta situacin, el
primer paso consistir en desarrollar un algoritmo de
auto-localizacin efectivo.
1.4 OBJETIVOS
El proyecto elegido est orientado a la creacin de sistemas de
percepcin y localizacin para
el equipo Bogobots que participa en la Liga RoboCup en la
categora KidSize. El sistema de
percepcin se refiere a cmo el robot observa su entorno a travs
de la cmara, lo cual implica
adentrarse en los algoritmos de segmentacin y clasificacin de
imgenes. Una vez que puede
identificar colores ser posible identificar objetos y determinar
la distancia a la cual se
localizan. El siguiente paso ser fijar su posicin en el campo al
contar con puntos de
referencia definidos. La conjuncin de ambos sistemas proveer
suficiente informacin al
procesador para la toma de decisiones adecuadas en momentos
fundamentales tales como
pasar la pelota a un compaero, tirar a gol o defender la
portera.
La meta final de este proyecto de investigacin radica en crear
algoritmos de
percepcin y localizacin que funcionen y mejoren el desempeo de
los Bogobots en las
siguientes competencias.
Para lograr esta meta se ha establecido el uso de una cmara
comercial tipo Web con
entrada USB conectada a una computadora personal y el desarrollo
de los algoritmos a travs
de MATLAB.
Se espera que una vez desarrollados y optimizados los algoritmos
de percepcin, estos
puedan ser codificados en lenguaje C y colocados en la cmara
CMUCAM3 que actualmente
tienen los robots Bogobots. Esto ltimo no forma parte de los
alcances de este trabajo y se
plantea como trabajo futuro en el rea.
Para desarrollar el algoritmo de auto-localizacin mencionado en
la seccin anterior
resulta importante trabajar en varias etapas previas, las cuales
se abarcan en este trabajo. Estas
son: adquisicin de imgenes, determinacin de criterio de color
para realizar la clasificacin,
segmentacin de la imagen, extraccin de caractersticas del rea
segmentada, identificacin
de objetos de acuerdo a las reglas planteadas por el ambiente,
estimacin de distancias y
finalmente estas distancias sern fundamentales para efectuar la
localizacin del robot en el
-
26
campo de juego. En algunas de estas etapas se evaluarn
diferentes tcnicas a fin de
determinar lo ms conveniente respecto a tiempo de ejecucin y
resultados de procesamiento.
Como parte complementaria se desarrollar una interfaz grfica en
MATLAB que
permita visualizar la salida de cada algoritmo y los resultados
finales alcanzados, despus de
ejecutar el programa de localizacin.
1.5 CONSIDERACIONES IMPORTANTES DEL DOMINIO Y TESIS
Aunque la cmara CMUCAM3 cuenta con su propio procesador para
almacenar y procesar
algoritmos en lenguaje C, se opt por utilizar una Webcam
comercial y generar los
algoritmos en MATLAB debido a su gran versatilidad y facilidad
para depurar cdigo. Todos
los algoritmos desarrollados y evaluados en este programa se
podrn fcilmente transferir a
otro sistema de procesamiento.
La cmara web utilizada se llama Live! Cam Vista VF0420 de la
marca Creative.
Entrega treinta cuadros por segundo en el espacio RGB y se
pueden obtener cinco
resoluciones diferentes: baja (160 x120 y 176 x144), media
(320x240 y 352x288) y alta
(640x480). La cmara tambin puede configurarse con algunos
parmetros, tales como:
compensacin en la luz de fondo, brillantez, contraste,
saturacin, balance de blancos,
exposicin, y modo de exposicin. La cmara puede girar 360
horizontal y 45 vertical. La
resolucin elegida para el desarrollo de este trabajo fue
352x288. Por otro lado, dado que
MATLAB ha sido la herramienta de programacin seleccionada, en
captulos posteriores se
explicar el proceso de adquisicin de imgenes y los parmetros que
pueden modificarse,
tales como el disparo o la tasa a la cual se almacenan las
fotos.
1.6 ORGANIZACIN DE LA TESIS
En el siguiente captulo, se explican las nociones bsicas sobre
imgenes y su procesamiento,
se definen algunas generalidades de los sistemas de
clasificacin, segmentacin y
localizacin. Tambin existe un apartado especial para explicar el
proceso de adquisicin de
imgenes por medio de MATLAB. Los conceptos expuestos permiten
una mejor comprensin
de las tcnicas evaluadas y seleccionadas en captulos
posteriores. En el Captulo 3 se
describe el proceso para determinar las clases de color. Se
evalan dos criterios, superficies
implcitas y umbrales simples en HSI. Como salida se generan
tablas de color reducidas y
tablas de umbrales para las tres componentes de HSI, mismas que
son utilizadas en los
algoritmos de segmentacin de imgenes expuestos en el Captulo 4.
En ste se explica el
-
27
proceso de segmentacin a travs de algunas tcnicas tales como el
procesamiento rengln
por rengln o crecimiento de regiones a travs de un pixel
semilla, el cual podr elegir el
usuario u obtener varias semillas a travs de lneas de escaneo.
Se verifican los resultados
obtenidos al evaluar cada tcnica con el fin de optar por la de
mejor comportamiento. En el
Captulo 5 con la informacin procesada es posible proceder con
las tareas de alto nivel, tales
como la identificacin de objetos y estimacin de parmetros
espaciales de objetos, cunto
miden y a qu distancia de encuentran. En el Captulo 6 se
describe la implementacin del
algoritmo de localizacin. El captulo 7 explica la interfaz
grfica desarrollada en MATLAB,
as como el experimento final realizado. Las conclusiones y
trabajo futuro se exponen en el
captulo 8. Todos los algoritmos elaborados, adems de explicarse
en cada etapa del proceso
se presentan en el captulo 9 de Anexos.
-
28
Captulo 2
2 MARCO TEORICO
La integracin a este proyecto implica proponer algoritmos en el
campo de percepcin y
localizacin que mejoren el desempeo de los robots dentro de las
competencias. La literatura
que se puede encontrar referente a estas reas tan extensas de
investigacin es vasta, sin
embargo la aplicacin de los mtodos conocidos est sujeta a las
restricciones que imponga el
objeto de aplicacin. Para entender mejor las tcnicas expuestas
en captulos subsecuentes,
este captulo abarcar nociones bsicas sobre las imgenes y su
procesamiento, espacio de
color y conversiones entre los mismos, histogramas, el papel
determinante de la iluminacin
en la toma de imgenes, conceptos bsicos en los algoritmos de
segmentacin y localizacin.
Los conceptos y definiciones presentados en este captulo con
fundamentales para la
comprensin de los algoritmos de segmentacin de colores que sern
expuestos en el captulo
4. El lector experimentado puede obviar este captulo y continuar
con el siguiente.
2.1 CONCEPTOS SOBRE EL PROCESAMIENTO DE IMGENES
El campo del procesamiento de imgenes deriva en dos reas
principalmente: mejorar la
informacin pictrica para la percepcin humana, incluyendo la
impresin y transmisin, y
procesar los datos de una escena para la percepcin autnoma por
una mquina. Una imagen
digital se define como una imagen descrita por la funcin f(x,y),
donde x y y son las
coordenadas espaciales y f representa la intensidad de esas
coordenadas. Las coordenadas
espaciales se relacionan con la resolucin de la imagen entre
mayor sea el valor que
adquieran, mayor ser la resolucin. De esta forma . Tambin
puede considerarse como una matriz cuyos ndices de fila y
columna identifican un punto de
la imagen y el valor correspondiente al elemento de la matriz
indica el nivel de color en ese
punto. Los elementos de esa distribucin digital se conocen como
pixeles, por su abreviatura
en ingls picture elements. La cantidad de valores empleados para
describir un pixel depende
de cuanta informacin es empleada para representar el color de
tales elementos de la imagen.
-
29
2.1.1 Etapas del procesamiento de imgenes
Gonzlez y Woods [13] en su libro proponen diversas etapas en el
procesamiento de las
imgenes, tal como lo muestra la Figura 2.1. La primera es la
etapa de adquisicin de
imgenes para lo cual es necesario un sensor de imgenes y la
posibilidad de digitalizar la
seal producida por el sensor, el cual puede ser una cmara
digital. Una vez adquirida, el
siguiente paso es preprocesar esa imagen. El objetivo principal
de esta etapa es mejorar la
imagen de forma tal que se aumenten las posibilidades de xito en
los procesos posteriores. Se
puede eliminar el ruido, aislar regiones que contengan
informacin importante, mejorar el
contraste, aplicar filtros, etc. La tercera etapa trata de la
segmentacin que consiste en dividir
una imagen de entrada en sus partes constituyentes u objetos. La
salida dar como resultado
datos del pixel en bruto, que conformarn el contorno de una
regin o bien todos los puntos
de una regin determinada. En la etapa subsecuente de
representacin y descripcin se extrae
la informacin fundamental para diferenciar una clase de objetos
de otra. Trasladando este
proceso al dominio de esta tesis, en esta etapa se sabra el
color y la cantidad de pixeles que
posee esa regin. Esto brinda informacin a la siguiente fase de
reconocimiento e
interpretacin, de tal forma que se pueda asignar una etiqueta al
objeto identificado que cubra
ciertas caractersticas.
Figura 2.1 Diagrama proceso de adquisicin y anlisis de imgenes
propuesto por Gonzlez & Woods [13]
Acompaando a estas etapas se encuentra una base de conocimiento
que permite
detallar las regiones de una imagen o definir las condicionantes
para reconocer y asignar
etiquetas a una imagen. En este trabajo la base del conocimiento
son todas las caractersticas
de tamao y color de los objetos del ambiente en la competencia
de ftbol de la categora
humanoide KidSize de RoboCup.
-
30
Dentro de cada etapa mostrada en la Figura 2.1 se aplican
distintos algoritmos. Las
tcnicas utilizadas pueden dividirse en tres reas bsicas que
agruparn a una o dos de las
etapas descritas previamente: procesado de bajo nivel, procesado
de nivel intermedio y
procesado de alto nivel.
El procesado de bajo nivel considera un tipo de funciones a las
que se puede
considerar reacciones automticas y que no requieren inteligencia
por parte del sistema de
anlisis de imgenes. Las dos primeras etapas, adquisicin y pre
procesamiento, entran en esta
clasificacin. Los algoritmos destinados a preprocesar la imagen
son aquellos que buscan
reducir el ruido, mejorar el contraste u homogeneizar el color.
El procesamiento de nivel
intermedio se refiere a la labor de extraer y caracterizas los
componentes de la imagen, por lo
tanto la etapa de segmentacin y descripcin se consideran en este
procesamiento. El
procesamiento de alto nivel se encarga de entender la imagen,
por lo que la etapa de
identificacin de objetos en una imagen y estimacin de parmetros
recae en esta
clasificacin.
En este trabajo se aplica el esquema propuesto por Woods [13] y
Firket [8] de procesar
la imagen en tres niveles, primero con algoritmos de adquisicin
y discriminacin de
regiones, seguidos por los algoritmos de segmentacin y extraccin
de caractersticas de las
regiones, para finalmente entregar los resultados de esta etapa
y comenzar el procesamiento
de alto nivel con tareas como la identificacin de objetos,
estimacin de caractersticas
espaciales y localizacin del autmata en su entorno.
2.1.2 Nociones bsicas sobre imgenes
Las imgenes son proyecciones bidimensionales de escenas
tridimensionales, representadas
por f(x,y) donde x y y son las coordenadas espaciales y el valor
de f representa la intensidad en
dichas coordenadas. Cuando las imgenes son en blanco y negro
solo se requiere de una
funcin. En cambio una imagen a color necesita de tres funciones
independientes f1, f2 y f3, en
las cuales se representa la intensidad del pixel para cada
componente. Las imgenes
capturadas durante un encuentro en RoboCup son a color, tratadas
en diferentes espacios
dependiendo de las caractersticas de la cmara. Por ejemplo el
equipo Darmstadt, campen
de las competencias 2009, utiliza el espacio YUV, mientras que
el equipo del TEC-CEM
emplea el espacio RGB.
La Figura 2.2.a muestra la idea de los pixeles como arreglos de
columnas y filas que
almacenan un valor de intensidad. Para una imagen compuesta de
grises slo se tendr una
malla o canal, pero cuando la imagen es de color, sin importar
el espacio elegido, se hablar
-
31
de tres mallas o canales. La Figura 2.2 b explica la resolucin
de una imagen ya que se define
como el nmero de columnas x renglones que posee la imagen, lo
cual significa que una
imagen con resolucin de 388 x252, tendr 352 columnas por 288
renglones.
Figura 2.2 Pixeles como arreglos de columnas y renglones.
Para una imagen en escala de grises, el pixel se representa por
un dgito de ocho bits,
por lo tanto el rango de cuantificacin es [0,255] con cero
correspondiendo al negro y el 255
al blanco. La escala de grises se distribuye en ese rango. Si el
pixel se representa por un bit, el
rango ir de 0 a 1, y esta se denominar imagen binaria. Entender
el concepto de imgenes
binarias ser de gran utilidad para el desarrollo de este
trabajo. La Figura 2.3 muestra un
ejemplo de la extraccin de pixeles de una imagen binaria en la
cual el blanco est
representado por 1 y el negro por 0.
Figura 2.3 Extraccin de pixeles de una imagen binaria [19]
Para las imgenes a color basadas en el espacio RGB se presenta
la siguiente
ecuacin: a(i,j)=[R,G,B]T donde cada canal de color se cuantifica
por un entero de ocho bits,
es decir, el nmero de colores posibles representado por un pixel
se determinar 28 x 2
8 x 2
8 y
por lo tanto habr 1.677 x 107 colores posibles.
-
32
El contenido de una imagen se encuentra codificado en un espacio
de color que se
define mediante la combinacin de sus componentes y la
distribucin del color en el espacio
delimitado por el rango de sus valores. Forsyth y Ponce
describen en su libro [29] dos tipos
de clasificaciones: espacios lineales y espacios no
lineales.
2.1.3 Espacios de color
La base de los espacios lineales se encuentra en el uso de un
conjunto de colores primarios.
Los espacios de color RGB y YUV pertenecen a esta categora.
Dentro de este trabajo la
primera aproximacin para la clasificacin de color se hizo a
travs del espacio RGB.
Los espacios no lineales incluyen propiedades propensas a
perderse en los espacios
lineales y que describen los colores en trminos ms comprensibles
para el ojo humano.
Dentro de estas descripciones se encuentran el tono, la
saturacin y la intensidad o
luminosidad. Ejemplos de estos espacios son: HSI (Hue,
Saturation and Intensity) HSV (Hue
Saturation and Value), HLS (Hue, lightness and saturation). De
acuerdo a J.Russ [36], el tono
describe al color por su longitud de onda, por ejemplo la
diferencia entre amarillo y rojo es
fcil identificar por las caractersticas que cada uno posee y que
marcan la diferencia con los
dems. La saturacin es la cantidad de ese color o cmo se diluye
con la luz blanca. Ejemplo:
la diferencia entre rosa y rojo. La tercera componente de los
espacios mencionados es la
intensidad, luminosidad o valor, trminos que describen la
cantidad de luz en un color. Por
ejemplo, la distincin entre un color rojo carmn y un rojo
bandera.
Despus de analizar las ventajas del uso de este tipo de espacios
se modificaron los
algoritmos para trabajar en el espacio HSI y se realizaron las
conversiones pertinentes entre el
espacio RGB y HSI, ya que las fotos adquiridas por las cmaras
solo es posible obtenerlas en
espacios lineales como RGB o YUV.
RGB es un espacio de color lineal que utiliza los colores
primarios Rojo (Red), Verde
(Green) y Azul (Blue), definidos por las longitudes de onda
645.16nm, 526.32nm y 444.44nm
respectivamente. Las imgenes representadas en RGB se forman con
las tres componentes
definidas por los colores primarios mencionados. Con estas tres
componentes el nmero de
combinaciones posibles ser 1.677 x 107, tal como se mencion en
la seccin previa.
Una imagen en el espacio RGB es un arreglo tridimensional M x N
x 3, donde M se
refiere al nmero mximo de renglones, N al nmero mximo de
columnas y 3 a cada uno de
las componentes de este espacio, es decir rojo, verde y azul,
generalmente se representa a
travs de un cubo para mostrar la progresin de cada color tal
como se muestra en la Figura
2.4 . El eje de referencia muestra que una combinacin particular
de intensidad las tres
-
33
componentes dar como resultado un color en especfico. Por
ejemplo el color Cyan se
obtiene con R=0, B=255 y G=255. Los extremos de este cubo sern
los colores negro y
blanco, cuyas intensidades sern (0,0,0) para el caso del negro y
(255,255,255) para el blanco.
Figura 2.4 Representacin del espacio RGB. Imagen tomada de
[36]
YUV se trata de un espacio lineal, con una profundidad de pixel
de veinticuatro bits.
En este modelo, la componente o canal representa la luminosidad
del pxel, mientras que la u
(cb) y la v (cr) definen el color o croma. Particularmente, el
canal u representa la cantidad de
azul, mientras que el canal v manifiesta la cantidad de
rojo.
El espacio HSI describe el tono, saturacin e intensidad de un
color. Este espacio tiene
la capacidad de separar la intensidad de la informacin intrnseca
del color, la cual se referira
al tono y saturacin. Por tal motivo su uso es recomendable para
el procesamiento de
imgenes. Estos valores se pueden graficar en un espacio
circular, hexagonal, triangular,
cnico o cilndrico. Sin embargo la forma ms comn de representarlo
es con un doble cono,
como el que se muestra en la Figura 2.5. El centro de este doble
cono ser una circunferencia
dividida en ngulos de igual magnitud. Para mostrar los seis
colores representados en el cubo
de RGB, cada seccin ser de 60. Por tal motivo R, Y, G, C, B, M
se refieren a Red, Yellow,
Green, Cyan, Blue y Magenta respectivamente. La distancia del
centro de esa circunferencia
al exterior representa la saturacin encontrada en cada color y
finalmente el eje que atraviesa
ambos conos corresponde a la componente de la intensidad. Esta
tendr un valor normalizado
de 0 (negro) a 1 (blanco). Al extraer una pequea circunferencia
de la figura formada por
ambos conos, los colores cercanos a una intensidad de 1 sern ms
claros que aquellos
cercanos a cero.
B (0,0,255)
R (255,0,0)
G (0,255,0)
-
34
Figura 2.5 Representacin del espacio HSI. Imagen tomada de
[36]
La capacidad de separar la intensidad o luminosidad de las otras
componentes provoca
que el espacio HSI resulte til para el procesamiento de imgenes
ya que permite dejar de
lado los cambios de iluminacin que se presenten en el ambiente a
trabajar.
Ren Honge y Zhong Qiubo en su artculo A new Image Segmentation
Method Base
on HSI Color Space for a Biped Soccer Robot [17], exponen el uso
del HSI para la
segmentacin en el sistema de visin de un robot bpedo. Su sistema
de visin se basa en un
anlisis dinmico de la componente I, referente a la intensidad y
aplican el algoritmo de Fuzzy
K-means para llevar a cabo la segmentacin. Calin Rotaru, el Dr.
Thorsten Graf y el Dr.
Zhang Jianwei en su estudio sobre la segmentacin de imgenes en
aplicaciones
automovilsticas para Volkswagen [35] tambin emplean el espacio
HSI para realizar el
algoritmo de visin. La ventaja que encontraron es la relacin que
guarda este espacio con la
iluminacin. Mientras que en el espacio RGB cada componente est
relacionada entre s y
aparentemente en el anlisis un mismo color con diferente
iluminacin puede clasificarse
errneamente, en el espacio HSI ese color conserva las
caractersticas esenciales sin importar
la iluminacin ya que las componentes son independientes.
Dado que los componentes del espacio HSI no corresponden a la
forma en la que la
mayora de los dispositivos trabajan, ya sea para la adquisicin o
el despliegue de la imagen,
es necesario convertir de imgenes codificadas bajo RGB a imgenes
en HSI y viceversa. La
posibilidad de esta conversin tiene su origen en el hecho de que
el espacio RGB est
compuesto por tres intensidades monocromticas y si partimos del
cubo que define el espacio
-
35
observaremos que en los extremos diagonalmente se ubican el
vrtice de color negro y el
blanco. Al dibujar un plano imaginario perpendicular a ese eje
diagonal, que incluya alguna
de las otras seis esquinas del cubo, la interseccin de los
mismos representar las intensidades
con valores del cero al uno para cada color: rojo, amarillo,
azul, verde, cyan y magenta. Otro
aspecto a denotar es que la pureza del color o saturacin
incrementar en funcin de la
distancia al eje de la intensidad. El ltimo punto que falta es
el tono, para lo cual haremos uso
de la Figura 2.4, al imaginar un plano formado entre los puntos
blanco, negro y cian. El hecho
de que los puntos referentes al blanco y negro pertenezcan al
plano indica que el eje de la
intensidad se encuentra en ese plano tambin. Todos los puntos
contenidos en ese plano tienen
el mismo tono, pero con diferentes combinaciones formadas al
mezclar los tres colores, lo que
da como resultado componentes en intensidad y saturacin. Al
rotar el plano 360 alrededor
del eje vertical de la intensidad se obtendran diferentes
tonalidades. Bajo esta explicacin se
encuentra el fundamento de que las componentes requeridas para
el espacio HSI se pueden
obtener del cubo RGB.
A continuacin se presentan las frmulas de conversin entre HSI y
RGB. Estas
frmulas fueron tomadas de [12].
Conversin RBG a HSI
Sea R, G, B las intensidades normalizadas que van de 0 a 1, se
tiene lo siguiente:
(2.1)
(2.2)
(2.3)
(2.4)
-
36
Conversin HSI a RGB
La ecuacin a aplicar depender de los valores de la componente H,
la cual se dividir
en tres sectores de 120. Estos intervalos corresponden a la
separacin existente entre los
colores primarios: Rojo, Verde y Azul. Considerando que los
valores para cada componente
HSI estarn normalizados y que
Sector RG
(
2.5)
(
2.6)
(
2.7)
Sector RG
(2.8)
(2.9)
(2.10)
(2.11)
Sector RG
(2.12)
(2.13)
(2.14)
(2.15)
Los algoritmos para efectuar la conversin entre espacios fueron
tomados del libro
Digital Image Processing de Gonzlez y Woods [12] y emplean las
ecuaciones descritas
anteriormente. Se presentan al final de este trabajo en el Anexo
A.1 y A.2
-
37
Conocer los espacios de color ser crucial para el desarrollo del
trabajo pues
determinan la distribucin que presentan las coloraciones de los
objetos, lo cual se requiere
para realizar la clasificacin de color.
2.1.4 La iluminacin como factor clave en el procesamiento de
imgenes
Como se mencion anteriormente, una imagen se refiere a una
funcin bidimensional
donde el valor o la amplitud de f en las coordenadas espaciales
(x, y) dan la intensidad o
iluminacin de la imagen en ese punto. Las imgenes percibidas en
las actividades cotidianas
provienen normalmente de la luz reflejada por los objetos, de
tal forma que la funcin antes
descrita estar caracterizada por dos componentes, uno referente
a la cantidad incidente
procedente de la fuente sobre la escena contemplada y la segunda
relacionada con la cantidad
de luz reflejada por los objetos. Dicho fenmeno se ilustra en la
Figura 2.6. Estos elementos
reciben el nombre de componentes de iluminacin y refractancia y
describirn a la funcin de
la intensidad:
(2.16)
Figura 2.6 Modelo de color basado en una luz que incide en una
superficie y dicha superficie lo refleja
Forsyth [29] en su libro indica que existen dos tipos de
superficies de acuerdo a estas
condiciones de incidencia y refractancia, las superficies
difusas y las especulares. Las
primeras resultan ideales para el procesamiento de imgenes, pero
a la vez son poco
frecuentes. Su BRDF1 es independiente de la direccin de salida y
de entrada, lo cual significa
que lucir igual de brillante desde cualquier ngulo. Por otro
lado las superficies especulares
son aquellas brillantes como los espejos. En ellas la radiacin
que llega en una direccin
particular solo puede salir en direccin normal a la superficie.
Esta salida forma zonas
brillantes alrededor de ella, conocidas como especularidades,
las cuales pueden provocar
1 Radio de la radiacin en la direccin de salida con respecto a
la potencia de luz total que incide en un rea.
-
38
ruido en el proceso de segmentacin. Debido a que una imagen se
puede capturar bajo
diferentes condiciones de iluminacin y esto provocar variaciones
en el color, esta
caracterstica afecta de forma importante la segmentacin de la
imagen. Al respecto es posible
atacar dos variables para solucionar el problema, una de ellas
hace referencia al control de las
condiciones de iluminacin y la otra a la aplicacin de algoritmos
que afronten este tipo de
dificultades.
La primera es sencilla, pues despus de probar diferentes tipos
de luminarias se
encontrar aquella en la cual se perciban mejor los colores para
la aplicacin deseada. Al
controlar esta variable, ser posible implementar algoritmos de
segmentacin que consideren
una umbralizacin global simple. Lo anterior significa que se
fijarn rangos en el espacio de
color deseado dentro de los cuales se analizarn y evaluarn los
pixeles, pero esos rangos no
sern dinmicos y no ofrecern alternativas a variaciones en la
iluminacin. Este tipo de
soluciones son frecuentes en aplicaciones de inspeccin
industrial. Dentro del ambiente de
RoboCup esta opcin no es factible pues hasta el 2008 las
condiciones de iluminacin se
encontraban controladas y abarcaban un rango de 600 a 1200 lux.
Posteriormente estas
limitantes se eliminaron y las reglas solo marcan que el
encuentro se lleva a cabo en un campo
iluminado. Restringir estos controles tiene relacin con la
evolucin de la categora y por ende
con un acercamiento a condiciones ms reales.
De no ser posible el control de la iluminacin existen varias
alternativas. La primera
depende de tener acceso a la fuente de iluminacin y consiste en
proyectar el patrn de
iluminacin sobre una superficie reflejante blanca constante.
Esta solucin produce una
imagen donde k es una constante que depende de la superficie e
es
el patrn de iluminacin. Cualquier imagen dividida entre
resultar en una funcin normalizada y as se puede
segmentar empleando un umbral nico T. Este mtodo descrito por
John Russ [36] solamente
funcionar correctamente si el patrn de iluminacin producido por
no cambia de
imagen a imagen.
La siguiente opcin [36] emplea la tcnica de sustraccin de fondo
o background
substraction. Los pasos a seguir son: adquirir la imagen,
extraer el fondo de la misma y
almacenar la intensidad. Posteriormente cada punto de la imagen
de fondo se restar de cada
punto de las imgenes subsecuentes. La desventaja es que durante
este proceso algunos datos
de las imgenes podran perderse adems de que existir un gran
ruido estadstico al elaborar
la operacin.
-
39
Otra de las tcnicas [36] analiza los datos arrojados por el
histograma de la imagen y
obtiene una funcin densidad de la probabilidad de brillo.
Lamentablemente solo es aplicable
si existieran dos