Diseño e Implementación de una Plataforma de Pruebas de Procesamiento de Imágenes para la Estimación de Flujo Óptico

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Diseño e Implementación de una Plataforma de Pruebas de Procesamiento de Imágenes para la Estimación de Flujo Óptico"

Transcripción

1 UNIVERSIDAD SIMÓN BOLÍVAR Decanato de Estudios Profesionales Coordinación de Ingeniería Electrónica Diseño e Implementación de una Plataforma de Pruebas de Procesamiento de Imágenes para la Estimación de Flujo Óptico Por Dioris Enrique Aguilar Cova Sartenejas, Marzo del 2005.

2 UNIVERSIDAD SIMÓN BOLÍVAR Decanato de Estudios Profesionales Coordinación de Ingeniería Electrónica Diseño e Implementación de una Plataforma de Pruebas de Procesamiento de Imágenes para la Estimación de Flujo Óptico Por Dioris Enrique Aguilar Cova Realizado con la Asesoría de Wilfredis Medina Gerardo Fernández PROYECTO DE GRADO Presentado ante la Ilustre Universidad Simón Bolívar como requisito parcial para optar al título de Ingeniero Electrónico. Sartenejas, Marzo del 2005.

3 UNIVERSIDAD SIMÓN BOLÍVAR Decanato de Estudios Profesionales Coordinación de Ingeniería Electrónica Diseño e Implementación de una Plataforma de Pruebas de Procesamiento de Imágenes para la Estimación de Flujo Óptico. PROYECTO DE GRADO presentado por Dioris Enrique Aguilar Cova. REALIZADO CON LA ASESORÍA DEL Ing. Wilfredis Medina. RESUMEN El proceso de estimación de flujo óptico se basa en la aplicación de ciertos algoritmos a secuencias de imágenes para obtener información referente al movimiento de los elementos que constituyen la escena capturada en la secuencia de imágenes en cuestión, tal información es usada en tareas como la compresión de secuencias de imágenes, detección de objetos móviles, control de navegación y en la segmentación de imágenes entre otras áreas de estudio. Bajo esa línea se realizó el siguiente trabajo sobre un sistema de procesamiento de imágenes de estimación de flujo óptico para aplicaciones en el área de visión artificial. En este trabajo se implementó el algoritmo de estimación de flujo óptico propuesto por Horn y Schunck [8], donde fue sometido a diferentes secuencias de imágenes con diversas características. Se desarrolló una plataforma de pruebas en el ambiente LabVIEW que permite controlar el pre-procesamiento de las imágenes previo a la estimación del flujo óptico. Mediante esta misma plataforma se permite visualizar y guardar la información relacionada con el diagrama de agujas para que pueda ser usada por otra aplicación. PALABRAS CLAVES: Flujo óptico, segmentación, detección de bordes, procesamiento de imágenes digitales, campo de movimiento. Aprobado con mención: Postulado para el Premio: Sartenejas, Marzo del iii

4 DEDICATORIA Definitivamente la perfección del ser humano está en su imperfección, y solo por eso estará rodeado de muchas limitaciones, pero parte de su grandeza es aceptarlas y confiar en el trabajo que día a día haga para que no le entorpezcan en su afán por crecer y ser mejor persona. Por ello este trabajo va dedicado a mis seres queridos, en especial a mis padres, a mi hermana, a mi familia, a mis amigos y a todas aquellas personas con las que de una u otra forma he aprendido a crecer y también a todas aquellas con las que seguiré creciendo en el mañana. Dioris Enrique Aguilar Cova iv

5 AGRADECIMIENTOS A Dios por sobre todas las cosas, en especial por ser el motor de mi vida y por haberme brindado la oportunidad que tantos anhelan y que, en retribución, se ha convertido en compromiso para ayudar a quienes pueda serle útil aún solo con mi presencia. A mis padres por su incondicional apoyo y entera confianza en mi y porque han demostrado ser geniales modelos de sensibilidad y valentía frente a las situaciones difíciles. A los ingenieros y amigos Leonardo Fermín y José Cappelletto por sus valiosos aportes y sugerencias en la elaboración de este estudio. Al Ing. Wilfredis Medina y al Prof. Gerardo Fernández por aceptar la tutoría de este trabajo y por sus consejos a lo largo de este estudio. A los muchos amigos que, a lo largo de estos maravillosos cinco años de compartir buenos y malos momentos, me hayan enseñado a valorar cada instante y a ofrecer lo mejor de mi en todo momento. Y finalmente pero no menos importante a la ilustre Universidad Simón Bolívar por ser cuna de numerosos talentos, por incentivar el aprendizaje, por creer que el conocimiento es parte fundamental para hacer crecer un país y por brindarle a muchos estudiantes, aunque sea a unos pocos de tantos venezolanos, la oportunidad de la educación superior. Gracias v

6 ÍNDICE GENERAL RESUMEN... iii DEDICATORIA... iv AGRADECIMIENTOS...v ÍNDICE GENERAL... vi 1 CAPÍTULO CAPÍTULO Objetivo general Objetivos específicos CAPÍTULO Visión Artificial Sistema de Visión Artificial Propósito de un Sistema de Visión Artificial Imagen Características de una imagen Análisis de una imagen Procesamiento de Imágenes Digitales Convolución Movimiento en una Imagen Procesamiento de Secuencias de Imágenes Campo de movimiento Percepción del Movimiento Algoritmos de Estimación de Flujo Óptico Algoritmos de apareamiento por bloques Algoritmos por técnicas frecuenciales Algoritmo de Gradiente Espacio - Temporal Algoritmo de Horn y Schunck CAPÍTULO Secuencia Metodológica Selección del Ambiente de Trabajo...72 vi

7 4.3 Búsqueda y Selección del algoritmo de estimación de flujo óptico Implementación del Algoritmo de estimación de flujo óptico Selección de secuencias de imágenes Secuencias Sintéticas de Imágenes Secuencias de imágenes reales CAPÍTULO Secuencia Newsquare Visualización de velocidad Efecto del factor de Suavizado Convergencia por Iteraciones Secuencia Elemento en Movimiento Visualización de Velocidad Efecto del Factor de Suavizado Convergencia por iteraciones Secuencia GRID Secuencia Esfera en Rotación Secuencia Cuadros Secuencia Carro Secuencia Círculos en Movimiento Secuencia Dedos CAPÍTULO Conclusiones Recomendaciones CAPÍTULO CAPÍTULO Apéndice A Apéndice B vii

8 ÍNDICE DE FIGURAS Figura Nº 3.1 Sistema de visión artificial típico Figura Nº 3.2 Propósito de un sistema de visión artificial Figura Nº 3.3 Imagen digitalizada Figura Nº 3.4 Valores de Píxel Figura Nº 3.5 Referencia espacial del píxel (0, 0) Figura Nº 3.6 Clasificación de los algoritmos de procesamiento de imágenes Figura Nº 3.7 Representación gráfica de la convolución Figura Nº 3.8 Vector de movimiento Figura Nº 3.9 Mecanismos de percepción visual del movimiento Figura Nº 3.10 Método de los vectores de desplazamiento Figura Nº 3.11 Método del flujo Óptico Figura Nº 3.12 Proyección del movimiento sobre el plano de imagen Figura Nº 3.13 Estimación del flujo óptico a partir de una secuencia de imágenes Figura Nº 3.14 Flujo Óptico: Difícil concepto de manejar Figura Nº 3.15 Problema de la correspondencia en el cálculo del flujo óptico Figura Nº 3.16 Cálculo de velocidad en un método de bloque Figura Nº 3.17 Representación de la estimación de movimiento por algoritmos de apareamiento por bloques Figura Nº 3.18 Espacio de velocidades Figura Nº 4.1 Diagrama de la Implementación del Algoritmo Figura Nº 4.2 Cuadro 1 de la secuencia de imágenes Newsquare Figura Nº 4.3 Cuadro 15 de la secuencia de imágenes Elemento en Movimiento Figura Nº 4.4 Cuadro 0 de la secuencia de imágenes Calle Figura Nº 4.5 Cuadro 0 de la secuencia de imágenes Cuadro viii

9 Figura Nº 4.6 Cuadro 0 de la secuencia de imágenes Esfera en rotación Figura Nº 4.7 Cuadro 0 de la secuencia de imágenes Grid en traslación Figura Nº 4.8 Cuadro 0 de la secuencia de imágenes Círculos en movimiento Figura Nº 4.9 Cuadro 15 de la secuencia de imágenes Dedo Figura Nº 5.1 Tipo de desplazamiento en la secuencia Newsquare Figura Nº 5.2 Escala de colores para las velocidades Figura Nº 5.3 Prueba 1 de velocidad de la Secuencia Newsquare Figura Nº 5.4 Prueba 2 de velocidad de la secuencia Newsquare Figura Nº 5.5 Flujo Óptico de la Secuencia Newsquare con factor de suavidad igual a 0, Figura Nº 5.6 Flujo Óptico de la Secuencia Newsquare con factor de suavidad igual a Figura Nº 5.7 Flujo Óptico de la Secuencia Newsquare con factor de suavidad igual a Figura Nº 5.8 Flujo Óptico de la Secuencia Newsquare con factor de suavidad igual a Figura Nº 5.9 Flujo Óptico de la Secuencia Newsquare con factor de suavidad igual a Figura Nº 5.10 Flujo Óptico de la Secuencia Newsquare con factor de suavidad igual a Figura Nº 5.11 Flujo Óptico de la secuencia Newsquare con 0 iteraciones..90 Figura Nº 5.12 Flujo Óptico de la secuencia Newsquare con 5 iteraciones..91 Figura Nº 5.13 Flujo Óptico de la secuencia Newsquare con 10 iteraciones.91 Figura Nº 5.14 Flujo Óptico de la secuencia Newsquare con 16 iteraciones.92 Figura Nº 5.15 Flujo Óptico de la secuencia Newsquare con 64 iteraciones.92 Figura Nº 5.16 Flujo Óptico de la secuencia Newsquare con 100 iteraciones Figura Nº 5.17 Flujo Óptico de la secuencia Newsquare con 150 iteraciones ix

10 Figura Nº 5.18 Flujo Óptico de la secuencia Newsquare con 200 iteraciones Figura Nº 5.19 Flujo Óptico de la secuencia Newsquare con 500 iteraciones Figura Nº 5.20 Flujo Óptico de la secuencia Newsquare con 1000 iteraciones Figura Nº 5.21 Tipo de Desplazamiento de la secuencia Elemento en Movimiento Figura Nº 5.22 Flujo Óptico de la Secuencia Elemento en Movimiento a 1 píxel/cuadro Figura Nº 5.23 Flujo Óptico de la Secuencia Elemento en Movimiento a una velocidad de 2 píxel/cuadro Figura Nº 5.24 Flujo Óptico de la Secuencia Elemento en Movimiento a una velocidad de 3 píxel/cuadro Figura Nº 5.25 Flujo Óptico de la Secuencia Elemento en Movimiento con factor de suavidad igual a 0, Figura Nº 5.26 Flujo Óptico de la Secuencia Elemento en Movimiento con factor de suavidad igual a Figura Nº 5.27 Flujo Óptico de la Secuencia Elemento en Movimiento con factor de suavidad igual a Figura Nº 5.28 Flujo Óptico de la Secuencia Elemento en Movimiento con factor de suavidad igual a Figura Nº 5.29 Flujo Óptico de la Secuencia Elemento en Movimiento con factor de suavidad igual a Figura Nº 5.30 Flujo Óptico de la Secuencia Elemento en Movimiento con factor de suavidad igual a Figura Nº 5.31 Flujo Óptico de la secuencia Elemento en Movimiento con 0 iteraciones Figura Nº 5.32 Flujo Óptico de la secuencia Elemento en Movimiento con 5 iteraciones x

11 Figura Nº 5.33 Flujo Óptico de la secuencia Elemento en Movimiento con 10 iteraciones Figura Nº 5.34 Flujo Óptico de la secuencia Elemento en Movimiento con 16 iteraciones Figura Nº 5.35 Flujo Óptico de la secuencia Elemento en Movimiento con 64 iteraciones Figura Nº 5.36 Flujo Óptico de la secuencia Elemento en Movimiento con 100 iteraciones Figura Nº 5.37 Flujo Óptico de la secuencia Elemento en Movimiento con 150 iteraciones Figura Nº 5.38 Flujo Óptico de la secuencia Elemento en Movimiento con 200 iteraciones Figura Nº 5.39 Flujo Óptico de la secuencia Elemento en Movimiento con 500 iteraciones Figura Nº 5.40 Flujo Óptico de la secuencia Elemento en Movimiento con 1000 iteraciones Figura Nº 5.41 Prueba 1 de la Secuencia Grid Figura Nº 5.42 Prueba 2 de la Secuencia Grid Figura Nº 5.43 Prueba 3 de la Secuencia Grid Figura Nº 5.44 Prueba 4 de la Secuencia Grid Figura Nº 5.45 Prueba 5 de la Secuencia Grid Figura Nº 5.46 Prueba 6 de la Secuencia Grid Figura Nº 5.47 Prueba 7 de la Secuencia Grid Figura Nº 5.48 Prueba 8 de la Secuencia Grid Figura Nº 5.49 Prueba 1 de la Secuencia Esfera en Rotación Figura Nº 5.50 Prueba 2 de la Secuencia Esfera en Rotación Figura Nº 5.51 Prueba 3 de la Secuencia Esfera en Rotación Figura Nº 5.52 Prueba 4 de la Secuencia Esfera en Rotación Figura Nº 5.53 Prueba 5 de la Secuencia Esfera en Rotación Figura Nº 5.54 Prueba 6 de la Secuencia Esfera en Rotación xi

12 Figura Nº 5.55 Prueba 7 de la Secuencia Esfera en Rotación Figura Nº 5.56 Prueba 8 de la Secuencia Esfera en Rotación Figura Nº 5.57 Prueba 1 de la Secuencia Cuadros Figura Nº 5.58 Prueba 2 de la Secuencia Cuadros Figura Nº 5.59 Prueba 3 de la Secuencia Cuadros Figura Nº 5.60 Prueba 4 de la Secuencia Cuadros Figura Nº 5.61 Prueba 5 de la Secuencia Cuadros Figura Nº 5.62 Prueba 6 de la Secuencia Cuadros Figura Nº 5.63 Prueba 7 de la Secuencia Cuadros Figura Nº 5.64 Prueba 8 de la Secuencia Cuadros Figura Nº 5.65 Prueba 1 de la Secuencia Carro Figura Nº 5.66 Prueba 2 de la Secuencia Carro Figura Nº 5.67 Prueba 3 de la Secuencia Carro Figura Nº 5.68 Prueba 4 de la Secuencia Carro Figura Nº 5.69 Prueba 5 de la Secuencia Carro Figura Nº 5.70 Prueba 6 de la Secuencia Carro Figura Nº 5.71 Prueba 7 de la Secuencia Carro Figura Nº 5.72 Prueba 8 de la Secuencia Carro Figura Nº 5.73 Prueba 1 de la secuencia Círculos en Movimiento Figura Nº 5.74 Prueba 2 de la Secuencia Círculos en Movimiento Figura Nº 5.75 Prueba 3 de la Secuencia Círculos en Movimiento Figura Nº 5.76 Prueba 4 de la Secuencia Círculos en Movimiento Figura Nº 5.77 Prueba 5 de la Secuencia Círculos en Movimiento Figura Nº 5.78 Prueba 5 de la Secuencia Círculos en Movimiento Figura Nº 5.79 Prueba 6 de la Secuencia Círculos en Movimiento Figura Nº 5.80 Prueba 7 de la Secuencia Círculos en Movimiento Figura Nº 5.81 Prueba 1 de la Secuencia Dedos Figura Nº 5.82 Prueba 2 de la Secuencia Dedos Figura Nº 5.83 Prueba 3 de la Secuencia Dedos Figura Nº 5.84 Prueba 4 de la Secuencia Dedos xii

13 Figura Nº 5.85 Prueba 5 de la Secuencia Dedos Figura Nº 5.86 Prueba 6 de la Secuencia Dedos Figura Nº 5.87 Prueba 7 de la Secuencia Dedos Figura Nº 5.88 Prueba 8 de la Secuencia Dedos Figura Nº 8.1 Respuesta espectral de un banco de doce filtros de Gabor. 172 xiii

14 INDICE DE TABLAS Tabla 5.1 Parámetros de Simulación para la Prueba 1 de la Secuencia Grid Tabla 5.2 Parámetros de Simulación para la Prueba 2 de la Secuencia Grid Tabla 5.3 Parámetros de Simulación para la Prueba 3 de la Secuencia Grid Tabla 5.4 Parámetros de Simulación para la Prueba 4 de la Secuencia Grid Tabla 5.5 Parámetros de Simulación para la Prueba 5 de la Secuencia Grid Tabla 5.6 Parámetros de Simulación para la Prueba 6 de la Secuencia Grid Tabla 5.7 Parámetros de Simulación para la Prueba 7 de la Secuencia Grid Tabla 5.8 Parámetros de Simulación para la Prueba 8 de la Secuencia Grid Tabla 5.9 Parámetros de Simulación para la Prueba 1 de la Secuencia Esfera en Rotación Tabla 5.10 Parámetros de Simulación para la Prueba 2 de la Secuencia Esfera en Rotación Tabla 5.11 Parámetros de Simulación para la Prueba 3 de la Secuencia Esfera en Rotación Tabla 5.12 Parámetros de Simulación para la Prueba 4 de la Secuencia Esfera en Rotación Tabla 5.13 Parámetros de Simulación para la Prueba 5 de la Secuencia Esfera en Rotación Tabla 5.14 Parámetros de Simulación para la Prueba 6 de la Secuencia Esfera en Rotación xiv

15 Tabla 5.15 Parámetros de Simulación para la Prueba 7 de la Secuencia Esfera en Rotación Tabla 5.16 Parámetros de Simulación para la Prueba 8 de la Secuencia Esfera en Rotación Tabla 5.17 Parámetros de Simulación para la Prueba 1 de la Secuencia Cuadros Tabla 5.18 Parámetros de Simulación para la Prueba 2 de la Secuencia Cuadros Tabla 5.19 Parámetros de Simulación para la Prueba 3 de la Secuencia Cuadros Tabla 5.20 Parámetros de Simulación para la Prueba 4 de la Secuencia Cuadros Tabla 5.21 Parámetros de Simulación para la Prueba 5 de la Secuencia Cuadros Tabla 5.22 Parámetros de Simulación para la Prueba 6 de la Secuencia Cuadros Tabla 5.23 Parámetros de Simulación para la Prueba 7 de la Secuencia Cuadros Tabla 5.24 Parámetros de Simulación para la Prueba 8 de la Secuencia Cuadros Tabla 5.25 Parámetros de Simulación para la Prueba 1 de la Secuencia Carro Tabla 5.26 Parámetros de Simulación para la Prueba 2 de la Secuencia Carro Tabla 5.27 Parámetros de Simulación para la Prueba 3 de la Secuencia Carro Tabla 5.28 Parámetros de Simulación para la Prueba 4 de la Secuencia Carro Tabla 5.29 Parámetros de Simulación de la Prueba 5 de la Secuencia Carro xv

16 Tabla 5.30 Parámetros de Simulación para la Prueba 6 de la Secuencia Carro Tabla 5.31 Parámetros de Simulación para la Prueba 7 de la Secuencia Carro Tabla 5.32 Parámetros de Simulación para la Prueba 8 de la Secuencia Carro Tabla 5.33 Parámetros de Simulación de la Prueba 1 de la Secuencia Círculos en Movimiento Tabla 5.34 Parámetros de Simulación de la Prueba 2 de la Secuencia Círculos en Movimiento Tabla 5.35 Parámetros de Simulación de la Prueba 3 de la Secuencia Círculos en Movimiento Tabla 5.36 Parámetros de Simulación de la Prueba 4 de la Secuencia Círculos en Movimiento Tabla 5.37 Parámetros de Simulación de la Prueba 4 de la Secuencia Círculos en Movimiento Tabla 5.38 Parámetros de Simulación de la Prueba 5 de la Secuencia Círculos en Movimiento Tabla 5.39 Parámetros de Simulación de la Prueba 6 de la Secuencia Círculos en Movimiento Tabla 5.40 Parámetros de Simulación de la Prueba 7 de la Secuencia Círculos en Movimiento Tabla 5.41 Parámetros de Simulación para la Prueba 1 de la Secuencia Dedos Tabla 5.42 Parámetros de Simulación para la Prueba 2 de la Secuencia Dedos Tabla 5.43 Parámetros de Simulación para la Prueba 3 de la Secuencia Dedos Tabla 5.44 Parámetros de Simulación para la Prueba 4 de la Secuencia Dedos xvi

17 Tabla 5.45 Parámetros de Simulación para la Prueba 5 de la Secuencia Dedos Tabla 5.46 Parámetros de Simulación para la Prueba 6 de la Secuencia Dedos Tabla 5.47 Parámetros de Simulación para la Prueba 7 de la Secuencia Dedos Tabla 5.48 Parámetros de Simulación para la Prueba 8 de la Secuencia Dedos xvii

18 LISTA DE SÍMBOLOS, ABREVIACIONES Y TÉRMINOS Imagen (image) Cuadro (frame) Es la proyección en perspectiva en el plano bidimensional de una escena tridimensional en un determinado instante de tiempo to. Este término se utiliza con frecuencia con la acepción del término cuadro, a pesar de que existe una ligera diferencia [5]. Es una matriz bidimensional de valores de intensidad lumínica obtenidos para un tiempo to constante I[x,y,to]. Pudiera decirse en cierta forma que es una imagen discretizada [5]. Píxel Es cada una de las posiciones en que es discretizada una imagen, o lo que es lo mismo, cada una de las posiciones de un cuadro. [5]. Imagen Binaria ó Imagen Bitonal Son aquellas imágenes cuyos píxeles sólo tienen dos valores: cero y uno [10]. Secuencia digitalizada de video Es una muestra discreta en espacio y tiempo I[x,y,t] de una función continua de intensidad lumínica I(x,y,t) [5]. xviii

19 Campo de movimiento (Motion field) Es un arreglo bidimensional de vectores que representan la velocidad de cada punto de una imagen, o lo que es lo mismo, es la proyección en perspectiva del campo tridimensional de vectores de velocidad de una escena en movimiento en el plano de la imagen. El campo de movimiento es un concepto abstracto y no puede ser recuperado de una secuencia de imágenes [5]. Flujo Óptico (Optic flow) Es la velocidad aparente de las estructuras de niveles de gris. El flujo óptico puede considerarse como una aproximación del campo de movimiento, pero a diferencia de aquel puede ser obtenido de una secuencia de imágenes. Las variaciones en los niveles de gris pueden ser debidas al movimiento de los objetos en la secuencia de imágenes, por ello a partir del flujo óptico es posible determinar el movimiento de los objetos en secuencias de imágenes [3][5]. Parámetros del movimiento Es aquel conjunto de números los cuales representan el movimiento de un punto o un grupo de puntos en el espacio y el tiempo. Tales coeficientes pueden representar las coordenadas espaciales, la velocidad lineal, la velocidad angular, etc [5]. Profundidad de bit (Bit depth) Este valor está determinado por la cantidad de bits utilizados para definir cada píxel. Cuanto mayor sea la profundidad de bits, tanto mayor será la cantidad de tonos (escala de grises o color) que puedan ser representados. Las imágenes digitales se pueden producir en blanco y negro (en forma bitonal), a escala de grises o a color [10]. xix

20 Campo de Visión Imagen Sintética Área limitada en la que el sensor de video puede adquirir imágenes [10]. Imagen sin imperfecciones debidas al sensor óptico y carente de ruido [1]. Rango Dinámico Es el rango de diferencia tonal entre la parte más clara y la más oscura de una imagen. Cuanto más alto sea el rango dinámico, se pueden potencialmente representar más matices, a pesar de que el rango dinámico no se correlaciona en forma automática con la cantidad de tonos reproducidos [5][10]. xx

21 1 CAPÍTULO 1 INTRODUCCIÓN Existe un creciente interés en la automatización de procesos basados en la percepción visual del mundo que nos rodea, los cuales requieren adquisición y un cierto grado de procesamiento de imágenes. Esto está relacionado con el campo de la visión artificial, donde tales sistemas intentan copiar el proceso de visión humana para aplicarlo a tareas de alta complejidad y con relativa exactitud donde se busca crear un modelo del mundo real a partir de imágenes, recuperando información útil de una escena partiendo de su proyección en dos dimensiones (2D). Estos sistemas de visión artificial o computarizada, se valen de las imágenes que puedan captar sus sensores ópticos para determinar y caracterizar visualmente el medio que les rodea, apoyándose en herramientas y técnicas de procesamiento de imágenes que permiten la extracción de rasgos importantes ayudando a identificar los elementos en la escena que rodean al sistema, de manera tal de aumentar su autonomía en las labores que le fueron programadas a realizar. Por lo tanto, la extracción de información en secuencias de imágenes es una tarea clave en muchos sistemas de visión artificial, donde esta información puede ser útil para la solución de problemas como la obtención de información referente al desplazamiento de objetos, la medición de velocidad de objetos, la modelización tridimensional del entorno y la restauración de imágenes entre otros. De manera particular, el problema de la estimación de movimiento a partir de secuencias de imágenes es una de las áreas de mayor investigación

22 en el campo de la visión artificial, ofreciendo respuestas en áreas como la reconstrucción de escenas en tres dimensiones para el control de navegación de robots autónomos, la compresión de secuencias de imágenes y la caracterización de objetos en una escena en dos dimensiones, es decir, el campo de estudio se enfoca en la visión computarizada cuando se habla del problema de la estimación de movimiento, área que representa hoy día la tercera generación, en cuanto a línea de investigación, en el campo de la robótica. El presente estudio centra su atención en la estimación de movimiento presente en una secuencia de imágenes basándose en técnicas de procesamiento de imágenes y algoritmos de extracción de información para la obtención de resultados útiles y confiables. De manera específica, se trabajó con el algoritmo propuesto por Horn y Schunck [3] para la estimación de flujo óptico. Se desarrolló una plataforma de pruebas para controlar el pre procesamiento de las imágenes con la idea de mejorar los resultados de estimación de movimiento y se efectuaron numerosas pruebas para evaluar las características de ejecución del algoritmo presentándose resultados cualitativos y cuantitativos. 22

23 2 CAPÍTULO 2 OBJETIVOS 2.1 Objetivo general Diseño e implementación de un Sistema de Procesamiento de Imágenes para aplicaciones de Visión Artificial. El sistema se basará en Matlab o en la plataforma IMAQ de National Instruments (bajo LabVIEW), lo cual será definido por el estudiante luego del estudio comparativo correspondiente. El sistema proveerá de capacidades básicas de PDI: filtrado, segmentación, análisis de histograma, clustering, detección de bordes, identificación de objetos en imágenes y cálculos de flujo óptico de los diferentes objetos identificados en la imagen Objetivos específicos Se pretende contar con una plataforma de pruebas y experimentos para el pre-procesamiento de imágenes que permitan, a partir de su análisis posterior, la detección de objetos móviles (obstáculos) en el ambiente de trabajo de un manipulador robótico. Se desea realizar (a través de la plataforma) los cálculos del flujo óptico de los objetos identificados sobre una secuencia de imágenes (video). Se esperan resultados significativos que sirvan de ayuda al problema de generación dinámica de campos de velocidades, línea de trabajo del Grupo de Mecatrónica de la Universidad Simón Bolívar. Se espera sentar las bases necesarias para extender la plataforma a problemas de visión estereoscópica. 23

24 3 CAPÍTULO 3 FUNDAMENTOS TEÓRICOS 3.1 Visión Artificial Cuando se habla de la acción del ser humano de ver su entorno e interpretarlo, resulta una actividad sencilla y simple de comprender y realizar, pero cuando se piensa en máquinas y robots, acciones como éstas representan acciones complejas en las cuales deben existir los elementos adecuados para recibir el medio, compararlo con información preestablecida y realizar acciones según las indicaciones programadas. Para realizar lo anterior se requiere gran cantidad de procesos, los cuales deben ser implementados adecuadamente con la finalidad de lograr el objetivo establecido. El hombre dentro de su mundo es capaz de percibir mediante todos sus sentidos, para ello se vale de órganos como el cerebelo y de un complejo sistema nervioso con los cuales se coordinan los informes que reciben los órganos sensoriales, hasta que, después de almacenarlos, relacionarlos y seleccionarlos, resurgen otra vez mediante órganos de ejecución como los músculos y las articulaciones. Dada la capacidad de las computadoras para el procesamiento de datos a altas velocidades, éstas permiten manejar gran cantidad de información empleando procedimientos automáticos, ello beneficia directamente el procesamiento de información en forma visual, lo que se conoce como visión artificial. En este caso la visión artificial se maneja como la transferencia a las máquinas de la capacidad de percibir el medio 24

25 ambiente que les rodea, en este caso se trata de que vean solo lo necesario, es decir, percibirlo, analizarlo y procesar la información [9]. La visión artificial lleva asociada una enorme cantidad de conceptos relacionados con hardware, software y también con desarrollos teóricos. A continuación se comentan las bases de un sistema de visión artificial, sus componentes y funciones para construir el entorno sobre el cual se elaboró el presente estudio. 3.2 Sistema de Visión Artificial Un sistema de visión artificial, como se puede apreciar en la Figura Nº 3.1, está compuesto por los siguientes elementos de hardware [9]: Figura Nº 3.1 Sistema de visión artificial típico. Tomada de Diseño del Control De Un Robot De Dos Grados De Libertad Para Aplicaciones De Seguimiento de Objetos por J. MENDOZA, continuación. Cada una de las partes tiene una función en específico y se detallan a 25

26 Sensor óptico: el cual generalmente es una cámara de video. La captura de imágenes se realiza primero con la interacción de un dispositivo que capta la imagen con el exterior o realidad, la cámara es un dispositivo capaz de capturar una imagen de la realidad que nos rodea con la finalidad de procesarla y analizarla para interpretar sus componentes [9]. Tarjeta de conversión analógica digital: Es una tarjeta que adquiere la información que le envía la cámara, el software de captura de imagen establece los detalles y características de la imagen. Cuando se desea usar video existen múltiples opciones de sistemas y cambios entre ellos [9]. Computadora: Como resultado de la digitalización de la imagen, se obtiene información que debe ser almacenada en la memoria de la computadora para su posterior procesamiento. El procesamiento se lleva a cabo empleando software adecuado. Para ello se emplean algoritmos que proporcionan la información requerida a partir de la imagen [9]. Monitor de video: Este dispositivo permite desplegar o mostrar las imágenes o escenas como resultado del procesamiento de las imágenes [9]. 3.3 Propósito de un Sistema de Visión Artificial Un sistema de visión artificial analiza imágenes y produce datos descriptivos de dichas imágenes (Véase Figura Nº 3.2) [8]. Estas descripciones deben captar rasgos de los objetos que son capturados en las imágenes para ser utilizados en algún otro proceso que requiera tal información, por lo tanto, se puede considerar al sistema de visión artificial como parte de una gran entidad que interactúa con el medio que le rodea. 26

27 El sistema de visión artificial puede ser considerado como un elemento en un lazo de realimentación relacionado específicamente con la tarea de capturar y analizar imágenes, mientras que otros elementos del lazo se encargan de la toma de decisiones y la implementación de tales decisiones basadas en la información extraída de las imágenes capturadas en un inicio. La entrada a un sistema de visión artificial es una imagen o una serie de imágenes, mientras que la salida es una descripción que debe satisfacer dos criterios [8]: Debe mantener relación con lo capturado en la imagen. Debe contener toda la información requerida para alguna otra tarea. El primer criterio asegura que la descripción depende de alguna manera con la entrada visual. El segundo criterio asegura que la información provista por el sistema sea útil. Iluminación Instrumento de Captura de Imagen Sistema de Visión Artificial Escena Imagen Descripción Realimentación según la aplicación del sistema de visión artificial Figura Nº 3.2 Propósito de un sistema de visión artificial. Tomado de Robot Vision por P. HORN, El propósito de un sistema de visión artificial es producir una descripción simbólica de las imágenes capturadas. Esta descripción puede ser empleada para manejar la interacción de un sistema robótico con el medio que le rodea. 27

28 3.4 Imagen La visión humana percibe y comprende al mundo que le rodea con facilidad, a diferencia de una computadora que intenta duplicar este efecto empleando la electrónica, todo ello para darle la habilidad de ver y distinguir lo que ve, por lo que no es una tarea fácil, para ello el sistema de visión artificial requiere percibir visualmente el medio que le rodea, y lo hace mediante las imágenes que sus sensores le puedan proporcionar. Por lo cual el estudio de las imágenes resulta ser una tarea obligatoria en el campo de la visión artificial. Una imagen es la representación de la realidad de tres dimensiones (3D) en dos dimensiones (2D), esta puede ser por ejemplo, una foto, o una imagen digital como la que se muestra en la Figura Nº 3.3. La intensidad de la imagen en dos dimensiones es el resultado de la perspectiva de la proyección, donde las profundidades juegan un papel importante. Figura Nº 3.3 Imagen digitalizada. Tomada de Matlab Toolbox Image Processing Las imágenes digitales están formadas por elementos llamados píxeles, donde éstos son las pequeñas secciones de color que constituyen a la imagen, y lo hacen como si formaran piezas de un mosaico tal como se 28

29 puede apreciar en la Figura Nº 3.3. Una imagen digital, en otras palabras, es una rejilla de muchos píxeles agrupados muy cercanos entre sí que cuando son vistos como un todo forman la imagen digital (Véase Figura Nº 3.4). A cada píxel se le asigna un valor tonal (negro, blanco, matices de gris o color), el cual está representado en un código binario (ceros y unos). Los dígitos binarios ("bits") para cada píxel son almacenados por una computadora en una secuencia, y con frecuencia se les reduce a una representación matemática (comprimida) [10]. Luego la computadora interpreta y lee los bits para producir una versión analógica para su visualización o impresión (Véase Figura Nº 3.4). Figura Nº 3.4 Visualización de los píxeles en una imagen digital. Tomada de Tutorial de Digitalización de Imágenes, Para propósitos de procesamiento de imágenes, el término imagen hace referencia a una imagen digital, pudiendo ser representada como una función de intensidad de luz que depende de dos coordenadas espaciales tal como se muestra a continuación: f ( x, y ) 3.1 Donde f es el brillo o el respectivo valor tonal en el punto (x, y), y x y y son las coordenadas espaciales de un píxel. 29

30 Figura Nº 3.4 Valores de Píxel. Tomada de Tutorial de Digitalización de Imágenes, Como se exhibe en esta imagen bitonal, a cada píxel se le asigna un valor tonal, en este ejemplo 0 para el negro y 1 para el blanco. Cada grupo de píxeles representa una zona o región, la cual esta referida por medio de sus coordenadas dentro de la imagen. Con este principio, es posible definir donde existe movimiento en la secuencia de imágenes por medio de la verificación del cambio en la luminosidad, colores y estructura del píxel de una imagen a otra. Por convención, la referencia espacial de un píxel de coordenadas (0, 0) se ubica en la parte superior izquierda de la imagen. En la Figura Nº 3.5 se nota que el valor de x aumenta de izquierda a derecha y el valor de y aumenta de arriba hacia abajo. Figura Nº 3.5 Referencia espacial del píxel (0, 0). Tomada de Tutorial de Digitalización de Imágenes, En el procesamiento de imágenes digitales, un sensor de imágenes convierte una imagen en un número discreto de píxeles. El mismo sensor 30

31 asigna a cada píxel una ubicación y un valor en escala de grises u otro valor de color que especifique el brillo o color del píxel respectivamente [10]. 3.5 Características de una imagen La realidad que nos rodea existe en tres dimensiones y el sistema de visión artificial tiene a la computadora como herramienta para el procesamiento de imágenes y a la cámara de video como sensor que proporciona las imágenes en dos dimensiones. Debido a que las imágenes están en dos dimensiones, se pierden detalles importantes los cuales pueden ser subsanados empleando algoritmos adecuados que pueden obtener las características cualitativas y cuantitativas de las imágenes. Las características de una imagen se pueden resumir en: (a) Nivel de Brillo: Es la variación en el nivel de gris que sufre un píxel debido a la aportación de luz en la escena [9][10]. (b) Resolución: La resolución espacial de una imagen está definida por el número de filas y columnas de píxeles que la conforman. De esta manera, una imagen formada por m filas y n columnas tiene una resolución n x m, es decir, la imagen tiene m píxeles a lo largo del eje de las abscisas y n píxeles a lo largo del eje de las ordenadas [9][10]. (c) Definición: Este parámetro indica el número de grises o sombras que pueden apreciarse en una imagen. Este indicador está controlado por la cantidad de bits empleados para codificar el valor de cada píxel (profundidad de bit bit depth), de hecho, para una cantidad de bits n, se tendrá una definición de 2 n, lo cual significa que existirán 2 n valores diferentes que podrá tener el píxel [9][10]. 31

32 (d) Número de planos: Esto corresponde al número de arreglos que componen la imagen. Una imagen en escala de grises está compuesta por un solo plano, mientras que una imagen a color real está compuesta por tres planos, uno con la componente roja, otro con la azul y el último con la componente verde de la imagen [9][10]. (e) Contraste: Es la variación o diferencia que existe entre los niveles de gris entre diferentes partes de la imagen [9][10]. (f) Nitidez: Es la respuesta en nivel de gris de la imagen ante cambios bruscos en la iluminación de la escena captada [9][10]. (g) Color: Dependiendo del tipo de sensor empleado, la imagen digitalizada será en color (tres canales) o solo gris (un canal) [9][10]. Generalmente existen dos niveles en las imágenes, bajo nivel de imagen procesado y la búsqueda de un alto nivel de entendimiento de la imagen. El alto nivel de procesamiento busca imitar a la visión humana y su interpretación, además de su contenido semántico. Para ello se extrae información en reiteradas ocasiones y con ella se clarifica el conocimiento que se desea obtener. La meta principal en un sistema de visión es resolver problemas complejos y obtener resultados similares a los obtenidos por sistemas biológicos [9]. Los parámetros que afectan la calidad de una imagen dentro de un sistema son: Resolución. Es la medición de calidad con que reproduce el sistema los detalles del objeto [9]. 32

33 Contraste. Es la diferencia que existe en niveles de gris entre los objetos componentes de una imagen y su fondo [9]. Profundidad del campo. Es la diferencia entre las distancias lejanas y cercanas en un objeto en un espacio que pueda ser percibido [9]. Distorsión. Es un error óptico comúnmente conocido como aberración que causa diferencias en la magnificación de diferentes puntos de la imagen y su profundidad [9]. Errores de perspectiva. Es un error convencional de los lentes que causa cambios en la magnificación, es decir los objetos parecen más largos o más cercanos [9]. 3.6 Análisis de una imagen El sistema de visión por computadora tiene que trabajar con los objetos en movimiento o cambios de iluminación, esto como resultado de estar inmersos en un ambiente que cambia constantemente. Todo lo que nos rodea y lo que está a la vista, forma la escena dinámica. La entrada al análisis de esta escena dinámica es la secuencia de imágenes tomada del exterior. La cámara de video que se usa para obtener esta secuencia también puede estar en movimiento. Cada imagen representa la escena en un instante particular del tiempo. Los cambios en la escena pueden proceder del movimiento de la cámara, de los objetos en movimiento, cambios en iluminaciones, o cambios en la estructura, tamaño o forma de objeto entre otros factores. El sistema tiene que detectar los cambios, determinar las características del observador y los objetos en movimiento, caracterizar los 33

34 mismos usando la abstracción de nivel alto, explorar la estructura de objetos y reconocerlos [9]. Estas imágenes contienen la información importante del ambiente, del mundo físico incluyendo la profundidad, orientación de superficie, estructura y movimiento de objetos en el espacio. 3.7 Procesamiento de Imágenes Digitales En el tratamiento de imágenes hay que distinguir dos tipos de información a procesar: las imágenes y los datos [5]. (a) (b) Imágenes. Se dice que la información es del tipo imagen cuando los datos que componen el paquete de información pueden organizarse en una matriz espacial. Como ejemplos se pueden citar la imagen propiamente dicha donde en una matriz se representan los colores de cada punto que conforma la imagen, o el campo de velocidades asignado a cada punto de una imagen, o la transformada de Fourier de una imagen [5]. Datos. Se dice que la información es del tipo datos cuando el paquete de información no puede ser considerado en una matriz espacial. Como ejemplos se citan las coordenadas de los segmentos que componen una imagen, el nivel promedio de gris en una imagen, o el histograma de una imagen. El procesamiento de imagen puede clasificarse según el tipo de información de entrada y salida. De esta manera se presentan los siguientes casos [5]: a. Procesamiento imagen-imagen: cuando la entrada al proceso requiere una información del tipo imagen y la salida del mismo es una información del tipo imagen. Un ejemplo sería el cambio de niveles de gris de una imagen. 34

35 b. Procesamiento imagen-dato: cuando la entrada al proceso requiere una información del tipo imagen y la salida del mismo es una información del tipo dato. Un ejemplo sería la obtención del nivel promedio de gris de una imagen. c. Procesamiento dato-imagen: cuando la entrada al proceso requiere una información del tipo dato y la salida del mismo es una información del tipo imagen. Un ejemplo sería la reconstrucción de una imagen a partir de las coordenadas tridimensionales de las aristas de los objetos. d. Procesamiento dato-dato: cuando la entrada al proceso requiere una información del tipo dato y la salida del mismo es una información del tipo dato. Un ejemplo sería la determinación de las coordenadas del centro de un objeto representado por las coordenadas de sus aristas. Eventualmente, pueden presentarse procesos que combinen, tanto en las entradas como en las salidas, imágenes y datos. Figura Nº 3.6 Clasificación de los algoritmos de procesamiento de imágenes. Tomada de Visión Artificial Dinámica Determinación De Movimiento A Partir De Secuencias De Imágenes por A. IZAGUIRRE, En la mayoría de las implementaciones que trabajan con imágenes digitales se opera con varios de los cuatro procesamientos de imágenes mostrados. El estudio de la visión dinámica puede considerarse en forma global como el procesamiento de una serie de imágenes cuyo resultado será una 35

36 serie de datos. A la entrada del proceso se tiene una secuencia de imágenes, y a la salida se tienen datos tales como las coordenadas de los objetos, los parámetros que definen el movimiento de los objetos y en algunos casos una serie de datos que definen el entorno en un espacio tridimensional. Sin embargo, el análisis de secuencias de imágenes no es una tarea sencilla de un solo paso, por lo cual es un hecho que el proceso tiene que ser dividido en subprocesos que pueden ser de tipos diversos: imagen-imagen, imagendatos, o datos datos [5]. Las operaciones que se realizan sobre imágenes y que tienen como resultado otra imagen se pueden clasificar en tres grupos [2]: (a) (b) Operaciones puntuales: Son aquellas en que el valor de cada píxel G[x,y] de la imagen resultante se obtiene a partir del valor del píxel F[x,y] de la imagen original, sin involucrar ningún otro píxel. Como ejemplos se pueden señalar la umbralización, el realce de contraste, la modificación del histograma de la imagen, la conversión a pseudocolor y el cambio de color [2][5]. Operaciones locales: Son aquellas en las que el valor de cada píxel G[x,y] de la imagen resultante se obtiene a partir de los valores del píxel F[x,y] y de sus vecinos en la imagen original. Eventualmente el concepto de operaciones locales puede ser extendido al campo de las tres dimensiones, es decir, incluyendo las secuencias temporales de imágenes. Entre operaciones locales básicas se pueden mencionar las convoluciones, las operaciones morfológicas y las operaciones booleanas locales. Como ejemplos se pueden señalar los filtros por 36

37 convolución, los detectores de bordes, los uniformizadores de textura, etc [2][5]. (c) Operaciones globales: Son aquellas en las que el valor de cada píxel G[x,y] de la imagen resultante se obtiene de los valores del píxel F[x,y] y de todos los demás píxeles en la imagen original. Como ejemplos de las operaciones globales se citan la transformada de Fourier, la del coseno, y sus respectivas antitransformadas [2][5] Convolución Una de las operaciones más útiles y utilizadas en el procesamiento de imágenes es la convolución. La operación de convolución bidimensional relaciona dos matrices, una de ellas es la imagen original F[x,y] y la otra, la matriz de convolución H[x,y]. Cada punto de la imagen resultante G[x,y] es la combinación lineal de los puntos de la imagen F[x,y], en el entorno del punto de trabajo, con los coeficientes de la matriz de convolución H[x,y] [5]. En la práctica se lleva a cabo siguiendo los siguientes pasos: (a) Se define, en la matriz de convolución, un elemento de referencia H(xo, yo ), usualmente el elemento central. Se superpone la matriz convolución H[x,y] sobre la matriz imagen F[x,y], haciendo coincidir el elemento de referencia (xo, yo) con un elemento (xj, yj) de F[x,y]. (b) Se calcula la suma de productos de los elementos superpuestos entre ambas matrices para obtener el valor del elemento G(xj, yj ). (c) Se repiten estos pasos para todos los elementos (xj, yj), obteniendo la matriz G(xj, yj) completa. Matemáticamente el operador convolución se representa con el símbolo * y se define como 37

38 3.2 Aunque por definición la convolución abarca matrices de infinitos elementos, por lo general ambas matrices son limitadas, y el operador H[x,y] es mucho más pequeño. En la Figura Nº 3.12 se representa gráficamente la operación de convolución. La convolución tiene una gran cantidad de aplicaciones en el campo del procesamiento de imágenes. Su más obvia aplicación es el filtrado, ya que si H(x,y) es la respuesta al impulso de un filtro, la convolución de una imagen F(x,y) con H(x,y), es equivalente a pasar a la imagen por el mismo filtro. Adicionalmente la convolución se utiliza para la evaluación de gradiente, el promediado de nivel de gris, la búsqueda de contornos, etc. Figura Nº 3.7 Representación gráfica de la convolución. Tomada de Visión Artificial Dinámica Determinación De Movimiento A Partir De Secuencias De Imágenes por A. IZAGUIRRE, 2003 Es muy fácil implementar la convolución por medio de circuitos electrónicos, en especial cuando el operador matricial tiene un tamaño reducido. Por lo general los operadores matriciales tienen unas dimensiones de 3 x 3 a 5 x 5 elementos. En este punto hay que recordar que para los filtros por convolución, el tamaño de la matriz H[x,y] repercute en la calidad del filtro en el dominio de la frecuencia. 38

39 Para algunas aplicaciones en donde intervienen secuencias de imágenes, es posible definir una convolución tridimensional, con dos dimensiones espaciales y una temporal tal como se muestra en (3). En la Figura Nº 3.11 se muestra un resumen de los tipos de operaciones realizadas sobre las imágenes. 3.3 Operaciones Puntuales Convoluciones Transformaciones Imagen a Imagen Operaciones Locales Operaciones Morfológicas Operaciones Globales Operaciones Booleanas Procesamiento de Imágenes Transformaciones Imagen a Datos Transformaciones Datos a Imagen Transformaciones Datos a Datos Figura Nº 3.11 Tipos de procesamiento de imágenes. Tomada de Visión Artificial Dinámica Determinación De Movimiento A Partir De Secuencias De Imágenes por A. IZAGUIRRE,

40 3.8 Movimiento en una Imagen El movimiento es una fuente de información visual importante. La estimación del movimiento en imágenes tiene una gran cantidad de aplicaciones, que pueden clasificarse dentro de los siguientes grupos: (a) (b) (c) Recuperación de la estructura tridimensional a partir de secuencias de imágenes bidimensionales, (Estructura obtenida del movimiento, SFM), como son la detección de obstáculos para robots de navegación autónoma, la modelización del entorno, la adquisición automática de modelos para diseño asistido por computador (CAD), etc [5]. Compresión y reconstrucción de secuencias de imágenes, como son los casos de codificación y decodificación MPEG, y la reconstrucción de imágenes afectadas por ruido [5]. Seguimiento y caracterización dinámica de objetos en movimiento como en la detección de parámetros de tráfico de automóviles, los sistemas de seguridad por visión artificial y en la previsión metereológica [5]. Una imagen provee solo información bidimensional del mundo tridimensional. Si se dispone de dos imágenes tomadas desde distintas ubicaciones espaciales, es posible modelar en parte el mundo tridimensional, en cuyo caso se dice que se dispone de dos imágenes estereoscópicas. Sin embargo, también desde secuencias de imágenes bidimensionales es posible extraer suficiente información como para modelar en cierto grado los objetos en movimiento. La recuperación de la estructura tridimensional del entorno tiene amplios campos de aplicación en el diseño asistido por computador (CAD), ya que permitiría modelar objetos del mundo real en el lenguaje matemático de los ordenadores, para luego generar moldes o 40

41 troqueles, analizar el acoplamiento entre piezas, etc. En este caso, el movimiento puede ser la cámara en vez del objeto, lo cual matemáticamente no tiene diferencia. La compresión de secuencias de imágenes es una de las aplicaciones más importantes de la estimación del movimiento a partir de imágenes y, además, es la aplicación más extendida. Las secuencias de imágenes están compuestas por objetos con diferentes movimientos. Cada cuadro de la secuencia de imágenes es muy parecido al anterior, a excepción de que algunos puntos de un cuadro cambian de posición para el siguiente, y que pueden presentarse nuevos objetos en movimiento que entran en el campo de visión. De aquí que las aplicaciones de compresión de imágenes en movimiento se basan en indicar sólo los cambios de posición de aquellas partes de la imagen que cambian y mantener el resto [5]. También con la información contenida en las secuencias de imágenes es posible reconstruir imágenes ruidosas, ya que parte de la información de una imagen se mantiene en la siguiente, posiblemente desplazada. Este caso es muy similar a la compresión de secuencias. El seguimiento y caracterización dinámica de objetos en movimiento permite la utilización de la visión artificial en aplicaciones muy útiles y prometedoras. En aplicaciones de control de tráfico de automóviles, es posible ajustar automáticamente y a un bajo costo los sistemas de señalización en función de las características del tráfico. Pueden utilizarse también para aplicaciones de seguridad, donde un operario humano puede distraerse con facilidad. Dentro del procesamiento digital de imágenes, se desarrollan las bases teóricas y algorítmicas mediante las cuales se extrae información del mundo real, de manera automática a partir de una imagen observada, de un conjunto de imágenes o de una secuencia. 41