La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Robótica Inteligente L. Enrique Sucar Leonardo Romero Marco López ITESM Cuernavaca.

Presentaciones similares


Presentación del tema: "Robótica Inteligente L. Enrique Sucar Leonardo Romero Marco López ITESM Cuernavaca."— Transcripción de la presentación:

1 Robótica Inteligente L. Enrique Sucar Leonardo Romero Marco López ITESM Cuernavaca

2 Visión Robótica Introducción Adquisición y representación de imágenes Filtrado Detección de orillas Color Estereo Aplicaciones en robótica

3 ¿Qué es Visión? “Visión es saber que hay y donde mediante la vista” (Aristóteles) “Visión es recuperar de la información de los sentidos propiedades válidas del mundo exterior” (Gibson) “Visión es un proceso que produce a partir de las imágenes del mundo una descripción que es útil para el observador y que no tiene información irrelevante” (Marr)

4 Procesamiento de Imágenes Remover defectos, remover problemas por movimiento o desenfoque, mejorar ciertas propiedades como color, contraste, estructura, etc. agregar “colores falsos” a imágenes monocromáticas

5 Ejemplo procesamiento

6 Visión Computacional Determinar la identidad y localización de objetos en una imagen, construir una representación tridimensional de un objeto, analizar un objeto para determinar su calidad, descomponer una imagen u objeto en diferentes partes.

7 Ejemplo visión

8 Aplicaciones Robótica móvil y vehículos autónomos Manufactura Interpretación de imágenes aéreas Análisis de imágenes médicas Interpretación de escritura y dibujos Análisis de imágenes de microscopios y telescopios Compresión de imágenes para transmisión y almacenamiento Interfaces humano-computadora Seguridad Aplicaciones militares

9 Ejemplos de aplicaciones

10 Formación de la imagen

11 Representación Monocromática: I=f(x,y) Color: f(x,y)=[f_{rojo}(x,y),f_{azul}(x,y),f_{verde}(x,y)]

12 Proyección

13 Imágenes binoculares Z = f - 2df / (y’ -y’’)

14 Digitalización de imágenes 24 38 4345 565946 50 44

15 Efectos de Muestreo (resolución)

16 Dispositivos de captura Cámaras fotográficas, cámaras de televisión, digitalizadores, sensores de rango (laser), sensores de ultrasonido, rayos X, tomografía, resonancia magnética.

17 Arquitectura sistema de visión

18 Visión de nivel bajo Obtener características útiles para los siguientes niveles de visión: –orillas o bordes, –color, –textura, –gradiente, –profundidad

19 Imágenes intrínsecas

20 Mejoramiento de la imagen Previo a obtener características: –resaltar aspectos deseados, –eliminar ruido, mejorar contraste, etc. Técnicas de pre-procesamiento: –operaciones puntuales, –filtrado, –ecualización por histograma.

21 Operaciones puntuales Pixel de salida sólo depende de un pixel de entrada S[x,y] = f(E[x,y])

22 Función de Transformación IEIE ISIS

23 Binarización Transformación lineal en el que la imagen de salida tiene 2 valores - blanco y negro S=blanco, si E > T S=negros, si E < T T es el umbral

24 Ejemplos de Operaciones Puntuales

25 Histograma de intensidades Distribución de niveles de intensidad en una imagen Ejemplo: Estimado de probabilidad de ocurrencia de cada nivel de intensidad: p= nr / nt 0 0 0 1 1 11 1 1 2 2 2 2 2 3 3 0 1 2 3

26 Ejemplos de histogramas

27 Ecualización del histograma Función de transformación:h s(k) =  k n i / n Para k = 0, 1, 2, 3 …. Número de niveles Esto es, al hacer la transformación se asigna a cada nivel de intensidad de la imagen de salida el valor de la sumatoria de las probabilidades hasta ese valor Da un valor entre 0 y 1 que hay que multiplicar por una constante (255) Función de transformación:h s(k) =  k n i / n Para k = 0, 1, 2, 3 …. Número de niveles Esto es, al hacer la transformación se asigna a cada nivel de intensidad de la imagen de salida el valor de la sumatoria de las probabilidades hasta ese valor Da un valor entre 0 y 1 que hay que multiplicar por una constante (255)

28 Ejemplos de ecualización - antes

29 Ejemplos de ecualización - después

30 Filtrado Filtrar una imagen consiste en aplicar una transformación de forma que se acentúen o disminuyan ciertos aspectos g(x,y) = T[f(x,y)]

31 Filtrado en el Dominio Espacial Operan directamente sobre los pixels de la imagen Se utiliza generalmente una “máscara” que opera sobre una vecindad de pixels, centrándose sobre el pixel de interés Se realiza una convolución (barrido) de la máscara con la imagen

32 Filtrado en el Dominio Espacial Cada pixel de la nueva imagen se obtiene mediante la sumatoria de la multiplicación de la máscara por la vecindad del pixel: g(x,y) =  f(i,j) w(i,j) Generalmente se divide sobre cierto valor constante para normalizar

33 Aplicación de una máscara

34 Convolución 111 111 111 máscara Imagen original 01 1 0 00 0001 1 1 Imagen nueva

35 Convolución - paso 1 111 111 111 máscara Imagen original 01 1 0 00 0001 1 1 Imagen nueva 2

36 Convolución - paso 2 111 111 111 máscara Imagen original 01 1 0 00 0001 1 1 Imagen nueva 2 5

37 Normalización 111 111 111 máscara Imagen nueva 2 5 Imagen nueva normalizada 0 1 En esta caso se divide entre “9” (suma de las valores de la máscara)

38 Algunos Filtros Filtros puntuales Filtros de suavizamiento Filtros de acentuamiento Filtros de énfasis de altas frecuencias Cada clase de filtro difiere en los valores utilizados en la máscara

39 Filtros de suavizamiento Eliminan ruido o detalles pequeños que no sean de interés Filtro pasa-bajos (en frecuencia)

40 Filtros de suavizamiento Promedio - promedio de pixels vecinos (máscara con unos) Mediana - substituye por mediana de la vecindad Gaussiano - aprox. distribución gaussiana

41 Ejemplos de aplicación de filtros de suavizamiento

42 Filtros de acentuamiento Intensifica los detalles y cambios, mientras que atenúa las partes uniformes Filtro pasa-altos (en frecuencia)

43 Filtros de acentuamiento Ejemplo de filtro pasa-alto Suma de los pesos es cero (se “eliminan” regiones de intensidad uniforme)

44 Ejemplos de aplicar filtros pasa-altos

45 Procesamiento de nivel bajo Procesamiento de nivel intermedio Procesamiento de nivel alto Procesamiento de nivel bajo Procesamiento de nivel intermedio Procesamiento de nivel alto óvalo Niveles de análisis

46 ¿Qué es una orilla? Parte de la imagen en que hay un cambio brusco o discontinuidad en la intensidad de la imagen- derivada “alta”

47 Orillas locales Las orillas de una imagen normalmente se detectan como pequeños segmentos o secciones de un borde que se integran en etapas posteriores Orillas locales

48 Operadores de gradiente Se basan en diferenciar la imagen, es decir, encontrar el gradiente:  f = (df/dx, df/dy) Magnitud del gradiente:  f| = [ (df/dx) 2 + (df/dy) 2 ] 1/2

49 Aproximación al gradiente Se puede aproximar el gradiente tomando la diferencia de valores contiguos en la imagen. Para una sección de 2 x 2: df/dx = I 1,2 - I 1,1 df/dy = I 2,1 - I 1,1 1,11,2 2,1 2,2

50 Las aproximaciones anteriores se pueden implementar como filtros espaciales (máscaras) Operadores como el de Roberts, Prewitt y Sobel, se implementan con dos máscaras: una para dx y otra para dy

51 Operadores de Roberts Corresponden a las diferencias cruzadas de 2 x 2 0 1 0 1 0 0

52 Operadores de Prewitt Corresponden a las diferencias en secciones de 3 x 3 0 0 0 1 1 1 0 0 1 1 0 1

53 Ejemplos con los operadores de Roberts y Prewitt (magnitud)

54 Operadores de Sobel -2 0 0 0 1 2 1 0 -2 0 1 2 0 1

55 Ejemplos con operadores de Sobel

56 Color El color es importante porque: –ayuda a la extracción de características, –apoya los niveles superiores como segmentación y reconocimiento. El ojo humano distingue miles de colores y en cambio sólo aprox. 20 niveles de gris - el color es importante en el reconocimiento visual.

57 Espectro El color tiene que ver con la longitud de onda dentro de la luz visible del espectro electromagnético color:violeta azul verde amarillo naranja rojo longitud400 700 de onda (nm)

58 Percepción del Color Un objeto se ve de cierto color si refleja las longitudes de onda de dicho color (por ejemplo, verde: 500-570 nm) y absorbe el resto, al ser iluminado por luz “blanca”

59 Atributos básicos del color Croma o longitud de onda dominante (Hue) Pureza o saturación Brillantez o intensidad

60 Percepción humana del color Percibimos el color mediante sensores (conos) que son de diferentes tipos - mayor sensibilidad a diferentes longitudes de onda:  (azul),  (verde),  (rojo)

61 Combinación de colores La identificación del color se hace mediante la combinación de los 3 tipos de sensores - combinación de colores “primarios” (RGB) Combinación aditiva - luz (a) y substractiva - pigmentos (b)

62 Componentes de una imagen a color

63 Modelos de Color Diferentes formas de representar el color: –modelos sensoriales - orientados a los equipos RGB, CMY, YIQ –modelos perceptuales - se asemejan a la percepción humana y se orientan al procesamiento de imágenes y visión HSV, HLS, HSI

64 Modelo RGB Se basa en los componentes primarios: RGB Se puede representar como un “cubo” con un primario en cada eje

65 Modelo HSI Transformación del espacio RGB al espacio perceptual Forma de 2 pirámides triangulares unidas en su base

66 Conversión RGB a HSI I = 1/3 (R + G +B) S = 1 - 3 m / (R + G + B) H = cos -1 [ ½ [(R - G) + (R - B) ] ] m = min(R,G,B) [ (R-G) 2 + (R-B) (G-B)] 1/2

67 Ejemplo de Imagen en HSI

68 Procesamiento de imágenes a color Detección de orillas –Aplicar en cada componente Ecualización del histograma –Aplicar sólo en Intensidad (modelo HSI)

69 Ejemplo de ecualización en color [González 98]

70 Ejemplo de detección de orillas con Sobel en RGB

71 Segmentación en base a color Al ser el color un atributo que ayuda al reconocimiento de objetos, se puede utilizar como una forma incial de segmentación de imágenes en base a color Por ejemplo, se ha utilizado en: –Segmentación de área de piel de personas –Identificación de cultivos en imágenes aéreas –Idenificación de diferentes tipos de terreno para vehículos autónomos

72 Clasificación en base a color Se pueden utilizar diferentes técnicas para separar los pixels del color de los objetos de interés, por ejemplo: –Determinr una región de interés en el espacio RGB o en otros modelos de color –Usar un clasificador bayesiano simple en base a los atributos en algún modelo –Utilizar otras técnicas de clasificación o aprendizaje (se verán en visión de alto nivel)

73 Clasificación en base a color Región en el espacio RGB Región de “piel” en espacio rg

74 Clasificación en base a color Ejemplo: detección de regiones de piel

75 Visión Tridimensional

76 Introducción El objetivo de visión 3-D es recuperar la información de profundidad o tercera dimensión a partir de imágenes Una imagen es un objeto bidimensional en que se ha “perdido” la 3-D El proceso de proyección de 3-D a 2-D es irreversible - se pierde información

77 Proyección de 3-D a 2-D Un número infinito de escenas en 3-D pueden generar la misma imagen en 2-D

78 Técnicas Visión estereoscópica Forma de sombreado Forma de textura

79 Visión estereoscópica Una forma de recuperar la 3-D es mediante el uso de 2 cámaras o visión estéreo La idea es combinar las imágenes de las 2 cámaras y mediante geometría obtener la profundidad de cada punto en la imagen Las 2 cámaras están en posiciones distintas a una distancia conocida

80 Visión estereo

81 Algoritmo básico Obtener dos imágenes Identificar puntos correspondientes en ambas imágenes Mediante geometría calcular la profundidad de cada punto - en base a la distancia entre las cámaras, la posición de los puntos correspondientes en las imágenes y la longitud focal de la cámara

82 Correspondencia (matching) El aspecto clave en el algoritmo es el de correspondencia entre puntos No es fácil identificar los pixels en las imágenes que corresponden a los mismos puntos u objetos en la escena Alternativas: –Correlación o template matching –Relajación

83 Ejemplo de correlación

84 Ejemplo de estereograma

85 Ejemplo de aplicación del algoritmo de relajación

86 Forma de Sombreado En general el mundo esta constituido por objetos opacos y relativamente continuos Considerando una iluminación constante y una reflectividad aproximadante uniforme - los cambios de intensidad dan información de profundidad

87 Forma de Sombreado

88 Algoritmos Estereo fotométrico - uso de múltiples fuentes de iluminación Relajación - uso de restricciones entre elementos Algoritmo diferencial - uso de información local

89 Ejemplo de aplicación del método de forma de sombreado

90 Visión de Nivel Bajo y Medio orillas textura color 3-D Imagen Segmen- tada

91 Visión de Nivel Alto orillas textura color 3-D Imagen Segmen- tada Descripción simbólica Representación del mundo

92 Visión de Alto Nivel Obtiene una interpretación consistente de las características obtenidas en visión de nivel bajo e intermedio Se basa en utilizar conocimiento de los objetos del dominio de interés En base al conocimiento y las características se realiza el reconocimiento

93 Reconocimiento

94 Ejemplo HGP 5080

95 Vector de Características Las características de un objeto se pueden agrupar en un vector de características (feature vector): V = (v1, v2, …, vn) Este vector da una representación compacta del objeto correspondiente

96 Clasificación La clasificación de objetos consiste en encontrar el tipo (clase) para un objeto desconocido en base al vector de características Para ello podemos considerar el vector como un punto en el espacio n-dimensional de características

97 Espacio de características (ejemplo con 2) X v1 v2

98 Vecino más cercano Una forma de clasificación es el método del vecino más cercano: –se obtienen las características de objetos conocidos –se calcula el “centro de masa” de los vectores de cada clase –se obtiene el vector de una imagen –se calcula la “distancia” a cada clase –se selecciona la clase más cercana

99 Clasificación con VMC X v1 v2

100 Reconocimiento Estadístico Descrita la imagen (instancia) y los modelos (clases) en base a una serie de parámetros, se busca la clase más probable Notación: –clases: C i –instancia o patrón: X j –P(C i ): probabilidad a priori de cada clase –P(X j | C i ): probabilidad del patrón dada la clase

101 Reconocimiento Estadístico Se busca maximizar la probabilidad de la clase dado el patrón Probabilidad posterior, por teorema de Bayes: P(C i | X j ) = P(C i ) P(X j | C i ) / P(X j ) Se selecciona la clase C i que maximiza P Equivalente a maximizar: P(C i ) P(X j | C i ), log P(C i ) P(X j | C i ), etc.

102 Clasificador Bayesiano Simple La estimación de las probabilidades se simplifica si se considera que los atributos son independientes dada la clase: P(C i | X j ) = k P(C i ) P(X j | C i ) P(C i | X j ) = k P(C i ) P(X1 j | C i ) … P(XN j | C i ) Por ejemplo (R,G,B = color): P(objeto j | R,G,B)= k P(O j ) P(R|O j ) P(G|O j ) P(B|O j ) Las probabilidades se pueden estimar a partir de ejemplos

103 Ejemplo de Clasificador Bayesiano Simple Clase - Robot: si/no Atributos –Rojo: [0.. 255] (dividir en intervalos) –Verde: [0.. 255] –Azul: [0.. 255] Estimación de parámetros: P(t), P(R|t), P(V|t), P(A|t), Clasificación P(r|R,V.A) = k P(t) P(R|t) P(V|t) P(A|t)

104 Aplicaciones en Robótica Navegación en interiores Navegación en exteriores Localización (marcas naturales y artificiales) Reconocimiento de diferentes objetos (p. ej. tipos de terreno) Reconocimiento de personas y ademanes (comunicación humano robot) Identificación y localización de objetos (otros robots, para manipulación, etc.)

105 Estimación de profundidad con laser Punto láser P(O laser |Z) Z Cámara Punto láser Z

106 Reconocimiento de personas y ademanes

107 Reconocimiento de ademanes

108

109 Navegación en endoscopía

110 Ejemplo de Endoscopía

111 Robótica Se utiliza para que un robot móvil pueda navegar en pasillos de edificios Se asume que el robot tiene una fuente de iluminación (lámpara) cercana a la cámara

112 Ejemplo de navegación robótica

113 Navegación en ambientes exteriores

114 Referencias L. E. Sucar, Notas de Curso de Visión González y Woods, Digital Image Processing, Addison-Wesley

115 Actividades Equipos futbol  plataformas listas Equipos minirobótica  terminar construcción de prototipo


Descargar ppt "Robótica Inteligente L. Enrique Sucar Leonardo Romero Marco López ITESM Cuernavaca."

Presentaciones similares


Anuncios Google