Vision Computacional

26
VISION COMPUTACIONAL

Transcript of Vision Computacional

Page 1: Vision Computacional

VISION COMPUTACIONAL

Page 2: Vision Computacional

Introducción

• En los humanos, el sistema de visión provee de información detallada acerca del entorno que puede ser utilizada en una gran variedad de formas, tales como el reconocimiento de objetos y formas, comunicarse, guiar movimientos, identificar personas, reconocer gestos, encontrar rutas, manipular objetos y una gran variedad de tareas mas.

Page 3: Vision Computacional

Introducción (cont.)

• La visión por computadora es una área que intenta aprovechar este sistema.• Considerando el sistema visual como un

dispositivo que almacena una banda de radiación electromagnética como una entrada y utiliza esto para obtener conocimiento acerca de los objetos que se encuentran en el entorno, que emiten y reflejan estas radiaciones, es posible obtener información de gran interés

Page 4: Vision Computacional

Introducción (cont.)

• “La visión humana es una tarea de procesamiento de información, es el proceso de describir con las imágenes lo que esta presente en el mundo real y dónde se encuentra.” (Marr 1982)

Page 5: Vision Computacional

Definición

• Visión es un proceso que produce, a partir de imágenes del mundo externo (escenas), una descripción que es útil para el observador y que está libre de información irrelevante (Marr,1976)• Ciencia que desarrolla las bases teóricas y

algorítmicas para obtener información sobre el mundo real a partir de una o varias imágenes (Haralick, 1992)

Page 6: Vision Computacional

Definición (cont.)

• Disciplina que desarrolla sistemas capaces de interpretar el contenido de escenas naturales (Castleman, 1996)• La Visión computacional, que ha emergido

como una disciplina propia basada principalmente en las matemáticas y ciencias de la computación, consiste en hacer que un computador vea. Esto, sin embargo, es todavía un problema no resuelto... (Faugeras, 2001)

Page 7: Vision Computacional

Definición (cont.)

• El objetivo de la visión computacional (VC) es tomar decisiones útiles acerca de los objetos físicos reales del mundo (de escenas) en base a imágenes adquiridas digitalmente. (Shapiro, 2000)• Por lo tanto, la tarea de la VC es la

construcción de descriptores de la escena en base a características relevantes contenidas en una imagen.

Page 8: Vision Computacional

Definición (cont.)

• Los términos en inglés machine vision, computational vision, image understanding, robot vision, scenes analysis y hasta image analysis están siendo desplazados por computer vision.

Page 9: Vision Computacional

Componentes de una escena• Objetos• Formas• Superficies• Colores• Movimientos• Iluminación• Reflejos• Texturas

Page 10: Vision Computacional

Obtención de la imagen

• Una imagen es un registro de valores organizados en forma bidimensional, generalmente representando intensidad de radiación electromagnética.• Cuantización espacial• Cuantización numérica• Cuantización espectral

Page 11: Vision Computacional

Obtención de la imagen (cont.)

• Uno de los objetivos de la obtención de imágenes es asegurar que la escena obtenida sea real, que no sea producto de distorsiones propiciadas por el equipo de captura o por variaciones de movimiento al momento de obtenerla.

Page 12: Vision Computacional

Procesos sobre la imagen

• Transformar una descripción icónica (registro de la señal o imagen) en una interpretación simbólica.• Extraer propiedades invariantes en la imagen:

tamaño, posición, color, forma, textura• Proveer información útil y relevante para las

acciones que realiza el observador: manipulación, seguimiento, evitar obstáculos, reconocimiento, etc.

Page 13: Vision Computacional

Procesos que se llevan a cabo

• Sensar: Obtener propiedades como materiales, forma, iluminación y relaciones espaciales.• Codificar información: Obtener información

para entender el mundo 3-D, incluye la geometría, textura, movimiento e identificación de objetos.

Page 14: Vision Computacional

Procesos que se llevan a cabo (cont.)

• Representaciones: que podrían ser usadas para almacenar descripciones de objetos, sus partes, propiedades y relaciones.• Algoritmos: Métodos que permitan procesar

información de las imágenes y construir descripciones del mundo y sus objetos.

Page 15: Vision Computacional

Marco de representación para visión

• De acuerdo con Marr, el marco de representación debe contener:• Imágenes de entrada: representar valores de

intensidad en cada punto de la imagen. Reflactancia de superficies, iluminación, puntos de vista.• Esquema basico 2-D: Se encarga de hacer explicita

la información de la imagen bidimensional, en forma de cruces con cero, formas, terminaciones y discontinudades, segmentos de bordes, lineas virtuales, grupos, bordes.

Page 16: Vision Computacional

Marco de representación para visión (cont.)

• Esquema intermedio 2-D: Hace explicita la orientación y profundidad de las superficies visibles y el contorno de discontinuidades. Orientación de la superficie, distancia desde el observador, discontinuidades en profundidad y en orientación de la superficie.• Esquema 3-D: Describe formas y su

organización espacial utilizando representaciones modulares jerárquicas. Volúmenes, superficies.

Page 17: Vision Computacional

Esquema de la visión

Captura Segmentación y caracterización

Correspondencia o clasificación

Interpretación

Modelo

Page 18: Vision Computacional

Aplicaciones• Las aplicaciones computacionales en análisis de imágenes

son prácticamente ilimitadas. Algunos ejemplos de son:• Clasificación y segmentación• Imágenes estéreo 3-D• Proyecto de navegación de robots• Consultas a bases de datos de imágenes.• Inspección de agujeros en barras transversales.• Examinar el interior de una cabeza humana (MRI)• Procesamiento de paginas de texto escaneadas• Determinar la cantidad de la cubierta de nieve usando

imágenes satelitales.• Análisis de una escena de piezas.

Page 19: Vision Computacional

Problemas que enfrenta

• Él obtener el éxito en el desarrollo de aplicaciones en visión computacional es generalmente difícil. Las implementaciones han tenido que aceptar ciertas restricciones del entorno para comprometer la flexibilidad del sistema.• Esto es debido a que el entorno real tiene

una gran cantidad de variaciones en las imágenes de entrada.

Page 20: Vision Computacional

Problemas que enfrenta (cont.)

• La apariencia de los objetos puede cambiar significativamente al tener cambios de iluminación, presencia de otros objetos, los cuales podrían ser inesperados.• Los problemas de oclusión obstaculizan el

reconocimiento de objetos

Page 21: Vision Computacional

Hardware y software

• La computación con imágenes tiene mas de 30 años, inicialmente los laboratorios realizaban investigaciones utilizando grandes equipos de cómputo o adquiriendo equipo de cómputo con propósitos especiales.• En la actualidad el decremento en los precios

de memoria con gran capacidad y procesadores de propósito general de alta velocidad han hecho que el computo de imágenes en computadoras personales sea posible.

Page 22: Vision Computacional

Hardware y software (cont.)

• Existen gran cantidad de software que permite realizar muchas de las operaciones sobre imágenes (matlab).• Existen scanners o camaras digitales que

pueden ser utilizados para procesar imágenes propias.• Existen librerías de software que contienen

subrutinas de procesamiento de imágenes (opencv).

Page 23: Vision Computacional

Hardware y software (cont.)

• Existen empresas que venden dispositivos de entrada para visión por computadora, proveen librerías para procesamiento de imágenes y aplicaciones que implementan interfaces graficas para el usuario.• Existe hardware que permite incrementar la

velocidad de las operaciones sobre imágenes.• Se han definido lenguajes de programación

con imágenes y operaciones con imágenes como lenguajes primitivos.

Page 24: Vision Computacional

Ejemplos• VISOMAPS: Sistema de inspección industrial mediante visión por

computador.• Componentes: camara de tv, placa preprocesadora, ordenador.• Cuatro entradas de vídeo multiplexadas • Detección y sincronización automática con la pieza o bien sincronización

externa • Resolución de 336 x 286 píxeles • Tratamiento de imágenes de grises (256 niveles) binarios o contornos • Posibilidad de discriminación de colores • Tiempo de procesado: dependiendo del número de parámetros y ventanas

a considerar (tiempos típicos entre 80ms y 200ms) • Posibilidad de definir ventanas de coordenadas fijas sobre la imagen, o bien

ventanas que se posicionan y siguen automáticamente el objeto (tracking) • Posibilidad de simulación del test de desarrollo para validar estrategias y

obtener los tiempos de procesado de cada test • Facilidad de depuración de errores en el desarrollo de inspecciones

Page 25: Vision Computacional

Ejemplos (cont.)

http://www.maps.es/fntesp/visio.htm

Page 26: Vision Computacional

Ejemplos (cont.)AutoNOMOS: Vehiculos roboticos

En las siguientes imágenes se muestra el prototipo del carro autónomo, desarrollado en la universidad Freie de Berlin con colaboración de investigadores del IRSI de la Universidad de Guadalajara.

Ver video 1Ver video 2