Download Artificial Neural Networks for Computer Vision

Document related concepts

Segmentación (procesamiento de imágenes) wikipedia , lookup

Transcript
Artificial Neural Networks for
Computer Vision
Zhou, Chelappa
Springer Verlag
Introducción
• Algoritmos de visión de bajo nivel implementados mediante redes
neuronales
– Extracción de información tridimensional a partir de imágenes
bidimensionales
– Información sobre movimiento en secuencias de imágenes
• En general los problemas de vision de bajo nivel están mal planteados
(ill posed).
• La regularización de Tikhonov consiste en
– introducir restricciones dadas por el conocimiento apriorístico
– Estabilizar la solución añadiendo funciones auxiliares
• La computación cooperativa toma en cuenta múltiples restricciones
para regularizar las soluciones y tiene una cierta base biológica
introduccion
• La computación cooperativa emplea unidades de proceso masivamente
paralelas que se comunican mediante señales inhibitorias y excitatorias
• La computación cooperativa proporciona una mayor robusted debido a
la distribución del conocimiento en las conexiones y a la posibilidad de
entrenar o aprender los pesos de las conexiones
• Las redes neuronales implementan este tipo de computación
cooperativa
• Aplicaciones tratadas
–
–
–
–
–
Static stereo
Lateral motion stereo
Longitudinal motion stereo
Computation of optical flow
Image restoration
Introducción
• Las redes empleadas son similares a las de
Amari y Hopfield
– Dos reglas de decisión:
• Determinista (búsqueda de mínimos locales) y
• Estocástica (búsqueda de mínimos globales, muy
costosa)
– Dos tipos de funciones de activación
• Umbral
• Máxima evolución
Introducción
• Visión estéreo convencional se basa en el emparejamiento
de líneas, bordes. Inconvenientes: sensibilidad al ruido,
escasez de características
• Utiliza derivadas densas, calculadas utilizando un operador
suavización/diferenciación
• Se escoge el tamaño de la ventana para minimizar el efecto
de la discretización espacial.
• Finalmente utiliza filtros de Gabor (sinusoidales en una
ventana gausiana)
Introducción
• Motion stereo utiliza dos o más imágenes monoculares,
observadas por la misma cámara en instantes y/o
posiciones distintas
• La red neuronal implementa un campo de disparidades
para calcular el emparejamiento estereo.
• Catefgorias de motion stereo:
– Lateral: el movimiento es ortogonal al eje de visión (aprox)
– Longitudinal: el movimiento es a lo largo del eje de visión
– Rotational: el plano imagen rota en torno al eje de visión
Introducción
• El cálculo del flujo óptico es la distribución de velocidades
aparentes de objetos en movimiento en la imagen
• Problema: localizar discontinuidades en el movimiento
• Restauración: es la recuperación de una imagen a partir de
una imagen degradada
Amari Networks
• Dinámica y estados estables de la red
recurrente (neuronas biestables)
Hopfield network
• Red recurrente, asíncrona
Hopfield
• Versión discreta, unidades binarias,
interconexiones simétricas y
autoconexiones no nulas
Hopfield
Posiblemente conjuntos
disjuntos de unidades para
los que se calcula el máximo
local, en base a información local
Hopfield
• Estudio de convergencia
Un conjunto de unidades cambian de estado sim.
Vision estereo estática
• Recuperación de la profundidad a partir de dos imágenes tomadas
desde distintos puntos de vista
• Basada en la estereopsis de la vista humana (fig 3.1)
• Las disparidades en las proeyecciones de los puntos en la retina
permiten reconstruir la profundidad
• Métodos básicos de establecimento de correspondencias y cálculo de
disparidades
– Basados en regiones: se establece la correspondencia entre regiones
mediante correlaciones:
– Basados en caracteristicas (ptos, lineas) : son más robustos frente a ruido y
variaciones de iluminación, más rápidos, pero no son densos
Visión estereo
• El método propuesto se basa en la correspondencia de
regiones
• Para eliminar la sensibilidad al nivel medio de intensidad
se consideran las derivadas de la imagen.
• Para disminuir el efecto del ruido se combina la derivación
con un filtrado de suavización
• Método resumido
– Se toman imágenes desde dos cámaras
– Se filtran las imágenes
– La Red Neuronal calcula las disparidades
• La distancia en el eje Z, la profundidad,
puede obtenerse a partir de la disparidad
• Los problemas centrales son
– Extraer las características para establecer las
correspondencias
– Obtener el mapa de disparidad entre esos
puntos
Ajuste polinomial de la imagen
Estimar las derivadas de primer equivale a
calcular el segundo coeficiente del ajuste polinomial
de una imagen
La restriccón epipolar permite trabajar con lineas solo
Estimación de las derivadas
• Partiendo del ajuste polinomial el cálculo
Función intensidad
continua
aproximada
Minimizando
el error cuadratico
• El filtro M(y) debe cumplir las siguientes
restricciones
– Debe eliminar la sensibilidad al sesgo de
amplitud
– Debe eliminar el ruido eficientemente
Imagen corrompida con ruido y sesgo de iluminación
El filtro elimina es sesgo
La varianza del filtro es de la forma
• La varianza del filtro decrece con el
aumento del tamaño de la ventana
• El aumento de tamaño de ventana produce
suavizaciones indeseadas que elimina
detalles locales
• Ventanas muy pequeñas son sensibles al
ruido
Ejemplos
• Muestran la reducción de sensibilidad del
filtro
– Ej1: un sesgo de 20 y ruido blanco gausiano de
30 db se añade a la imagen
– Idem con 20 db de ruido
Consideraciones comp
• Debido a la discretización de las imágenes,
un punto puede no encontrar
correspondiente
• Considerando que la discretización en la imagen izqda induce una
discretización en la escena, los ptos en la imagen dcha pueden no
coincidir con las proyecciones de los ptos en la escena. Fig 3.5
• El error de discretización depende de la profundidad, la longitud de
foco y el baseline
• Para objetos paralelos al plano imagen el error es cero
La red neuronal
• Tiene NrxNcx(D+1) neuronas
interconectadas
• D es la máxima disparidad
• Nr y Nc son las filas y columnas de la
imagen
• Cada punto se representa por D neuronas
mutuamente excluyentes
Restricción fotométrica
Restricción de suavidad
• El emparejamiento se realiza mediante la
evaluación de la red.
• Cada neurona actualiza su estado de
acuerdo a sus entradas
• Su salida es la función maximo
(mutuamente excluyentes) por grupos que
representan la disparidad
• Los incrementos de la función de energía no
son negativos siempre, por lo que no se
puede garantizar la convergencia de la red.
Resultados experimentales
• Estereogramas de puntos aleatorios
– Generados aleatoriamente
– 128x128, con forma de pastel de bodas, en tres niveles
– La disparidad crece en cada nivel
• Exp 1: 10% random dot stereogram. 10% pixels blancos
• Exp2: 50% densidad, 20% de la imagen izqda decorrelados
al azar
• Exp 3: 5 db de ruido gausiano
Experimentos
• Imágenes naturales.
– Exigen un cierto alineamiento
– Se distingue entre regiones homogeneas y
regiones inhomogeneas en base a la varianza,
• Regiones homogeneas: Actualización secuencial
• Regiones inhomogeneas: act. síncrona
Motion stereo-Lateral Motion
• Se toma una secuencia de imágenes mientras la cámara se
desplaza lateralmentea velocidad constante
• El eje óptico es perpenticular a la dirección de movimiento
• Todas las imágenes están espaciadas uniformemente
• Se aplica la restricción epipolar
• La disparidad (y la profundidad) pueden determinarse a
partir de dos imágenes consecutivas
• Las primitivas utilizadas son las imágenes de gradiente
calculadas a partir de la interpolación con polinomios de
Chebyshev y la distancia de Chamfer
• La proyección de un punto en la i-esima imagen
• La disparidad se puede calcular como
Medidas primitivas
• Aproximación a las derivadas de la imagen mediante
polinomios de Chebyshev
Medidas primitivas
• Distancia de Chamfer: distancia al pixel borde más cercano
– Construir una imagen binaria de bordes (prewitt)
– Construir la imagen de distancias mediante la ecuación recursiva
Aproximación batch
• Realiza el emparejamiento sobre todas las
imágenes de la secuencia simultaneamente
• Cuantifica la disparidad en D valores
separados por W
• Usa tantas neuronas como pixels por
valores de disparidad. Son unidades binarias
que
Batch
• Movimiento de un pixel en la secuencia
sobre el eje y en la imagen p
• Coordenadas
Batch
• Función de error o energía para el emparejamiento a partir
de las distancias de Chamfer y las derivadas
Batch
• Interconexiones e imputs
Aproximación recursiva (on-line)
• Consiste en la realización con cada nueva
imagen de dos pasos
– Actualización de los bias input
– Cálculo del emparejamiento
On-line
• El modelo de la observación
• La actualización adaptativa
Error de emparejamiento
• Conocidas la varianza del ruido y las
segundas derivadas de la imagen
Detección de oclusiones
• Los pixels ocluidos se caracterizan por tener
valores infradeterminados de disparidad
• Las restricciones de suavidad tienden a
difuminar las oclusiones (sus altos valores
de disparidad)
Oclusiones
• Regla de deteccion basada en el error
• Corrección de bias modificados
Resultados experimentales
• Batch y on-line sobre una secuencia
Motion stereo longitudinal
motion
•
•
•
•
Aplicaciones en robótica movil
Asume movimiento a lo largo del eje óptico
No hay asunciones sobre las superficies
Se asume conocimiento de la velocidad de
la cámara
• Utilizan filtros de Gabor para las primitivas
• Se necesitan dos valores de disparidad para
calcular la profundidad, debido a la
dependencia temporal de la profundidad
respecto del plano imagen.
• Dependiendo de la relación usada se
restringe la aplicación a los planos X-Z o YZ.
• No se aplica a los puntos en el FOE, por lo
que deben ser estimados mediante
interpolación
• Para evitar el error acumulado se utiliza:
Para reducir el efecto del error
Optical flow
• Flujo optico es la distribución de
velocidades aparentes de los patrones en
movimiento en las imágenes.
• Calculan en flujo en base a la intensidad de
las imágenes y a las curvaturas principales
• Para detectar discontinuidades detectan
primero las oclusiones y luego aplican un
proceso de lineas
• Utilizan múltiples tramas para mejorar la
robusted de la estimación
Se ajustan la intensidad con un polinomio bivariado para
Disminuir el efecto del ruido y la cuantización
Utiliza los polinomios de Chebyshev
Curvatura principales
• Son los valores minimo y máximo de las
curvaturas normales de la función
intensidad.
• Se definen en términos de la curvatura
media y la curvatura gausiana.
Curvatura gausiana
Curvatura media
Bajo la asunición
• Las segundas derivadas pueden calcularse
en base a la aproximación de Chebyshev
Sustituyendo pueden expresarse las curvaturas
En terminos de las segundas derivadas
Consideraciones fisiológicas
• El cortex visual está organizado en capas y con correspondencias
topográficas
• Neuronas con orientación similar se apilan en columnas
perpenticulares al la superficie
• Todas las neuronas en una columna tienen la misma orientación del
campo receptivo
• Una hipercolumna reune varias columnas que cubren 180º aprox.
• Cada hipercolumna es una unidad visual y codifica complemente un
area visual
• La hipercolumna es selectiva en relación a la dirección, velocidad
Computación
• Las unidades están distribuidas en un plano
cartesiano.
• Las hipercolumnas corresponden a pixels de
la imagen
• Se modelan los desplazamientos para cada
pixel (hipercolumnas...) por filas y
columnas NrxNcx(D+1)2 unidades
• Las hipercolumnas son exclusivas
Estructura de la red neuronal
(i,j) pixel
(k.l) direccion de movimiento cuantizada
Realización
• Incluye una restricción de suavidad del flujo
y un proceso de detección de lineas para
detectar discontinuidades del flujo
• El error se compone de
– Diferencia de curvaturas e intensidades
– Restricción de suavidad
– Proceso de discontinuidades para interrumpir la
restricción de suavidad
• En la formulación neuronal
– Input bias corresponden a las diferencias entre
curvaturas e intensidades
– Las conexiones entre unidades son
• Excluyentes entre hipercolumnas
• Implementan el proceso de lineas
• Implementan la restricción de suavidad
Definición del incremento de energía debido a
Un cambio de estado en un par de unidades
Las lineas se actualizan independientemente en
Función de los siguientes incrementos de energía
Para lineas verticales y horizontales
Detección de discontinuidades
• Resultan de los fenomenos de oclusión
producidos por los contornos de los objetos
en movimiento
• Es nesario detectarlas para evitar la
sobresuavización del flujo
• Se basan en la detección de oclusiones para
determinar las discontinuidades
• Split motion: un elemento se divide en
varios (fig 6.10)
• Fusion motion: varios elementos se funden
en uno (fig 6.9)
• El proceso de fusión esta infradeterminado
mientras que el de split está
sobredeterminado
• La detección se hace en función de los
errores de emparejamiento
Errores de emparejamiento producidos por la oclusion en (i,j)
Bajo proyección ortográfica o de perspectiva sin movimeinto en el eje optico
Multiples tramas
Experimentos
• Imágenes sinteticas de puntos y un disco
rotando
• Imágenes naturales
– Pick-up frente a background estacionario
Image restoration