Clase3 - Universidad de Sevillajdedios/asignaturas/Clase3.pdfTitle Clase3 Author ramiro Created Date...
Transcript of Clase3 - Universidad de Sevillajdedios/asignaturas/Clase3.pdfTitle Clase3 Author ramiro Created Date...
PERCEPCIÓN AVANZADA
COMPLEMENTOS DE VISION DE MEDIO NIVEL
MASTER EN Automática, Robótica y Telemática
Dr. J. RAMIRO MARTINEZ DE DIOS
• Preprocesado. Iluminación
• Preprocesado. Estabilización
• Fusión de datos para segmentación
• Otras técnicas
Complementos de Visión de Medio Nivel
• Iluminación• Modelado de iluminación
• Corrección mediante métodos globales
– Ecualización de histograma
– Especificación de histograma
– “Stretching” de histograma
• Corrección mediante métodos locales
• Control de iluminación
Preprocesado. Iluminación
• Relevancia de la iluminación
Preprocesado. Iluminación
• Relevancia de la iluminación
Preprocesado. Iluminación
• Iluminación. Modelo de Phong
• Ia: intensidad de la luz ambiente,
• αa: coeficiente de iluminacion ambiente reflejado en la superficie de objetos
• αr: coeficiente de reflexion en la superficie del objecto
• Ip: intensidad de la fuente de luz
• q: angulo entre rayo y normal de la superficie del objeto
• W(q): función de distribution de la reflectancia angular que depende de q y del objeto
• θ: ángulo entre rayo reflejado y la línea de visión del observador
speculardiffuseambient IIII ++=
aaambient II α=
)cos(qII prdiffuse α=
)cos()( θqWII pspecular =
Preprocesado. Iluminación
• Ecualización de histograma– Trata de obtener un histograma global plano para todos los
niveles de intensidad
• Especificación de histograma– Trata de obtener un histograma global deseado para todos los
niveles de intensidad
Preprocesado. Iluminación
• “Streching” de histograma
– Aplica una transformación a los niveles de intensidad de la imagen
para mejorar su distribución en todo el rango de intensidades de la
imagen
– Se aplica sobre el histograma acumulado detectando los valores de
intensidad para los que se obtienen valores próximos al 0% y al
100%
– Se calcula la transformación lineal para conseguir que dichos
porcentajes se produzcan en unos valores de intensidad deseados
que cubran el rango de intensidades deseados.
– Se aplica la transformación lineal a los valores de intensidad de la
imagen, obteniéndose un histograma en el rango deseado de
intensidades.
Preprocesado. Iluminación
• “Streching” de histograma
HISTOGRAMA
0
50
100
150
200
250
300
1 14 27 40 53 66 79 92 105
118
131
144
157
170
183
196
209
222
235
248
Niveles de grises
Nº
de p
unto
s
HISTOGRAMA
0
50
100
150
200
250
300
1 14 27 40 53 66 79 92 105
118
131
144
157
170
183
196
209
222
235
248
Niveles de grises
Nº
de p
unto
s
Preprocesado. Iluminación
• Corrección de iluminación local
• Aplicación del esquema a subimágenes (esquema de Chow-Kaneko)
– Equalización de histograma de subimagen
– Medidas locales de brillo y contraste:
– Problemas: efecto “tablero de ajedrez”� subimágenes solapadas
• Particularización de técnicas globales a entornos locales
)y,xvar(/Mk)y,x(A =)y,x(m)]y,x(m)y,x(f)[y,x(A)y,x(g +−=
Preprocesado. Iluminación
• “Streching” de histograma local
Preprocesado. Iluminación
• Control de iluminación
– Esquema general
– Modelado de visibilidad
– Control borroso de iluminacion
– Aplicación
Preprocesado. Control de iluminación
• Esquema general
– Realimentación visual
– Base de datos con información de la aplicacion:
– referencias para el control
Preprocesado. Control de iluminación
• Camara de infrarrojos: Mitsubishi IRM-300
– Configuracion :
• Ganancia: 5 valores discretos
• Nivel: continuo
Preprocesado. Control de iluminaciónAplicación
Bril
loC
ontr
aste
• Preprocesado. Iluminación
• Preprocesado. Estabilización
• Fusión de datos para segmentación
• Otras técnicas
Complementos de Visión de Medio Nivel
• Image stabilization:
– Human visualization: vibrations induces stress in the operation
– Computer image processing: pre-processing vibrations cancellation
• Two approaches:
– Stabilize the camera vibrations:
• simple mechanical systems for camcorders: vibrations reduction not
elimination
• gyrostabilize camera systems: restricted in terms of cost, size, weight
– Correct image vibrations
• time-consuming computations for image matching
Preprocesado. Estabilización
• A computerized real-time image stabilization based on
Fourier-Mellin matching
– capable of stabilizing at a rate of standard video (PAL or NTSC) on a
general Pentium III at 800 MHz
– independent of hardware and software platforms
Preprocesado. Estabilización
• Capture, stabilization based on matching, display
• Matching:
– Cross-correlation: difficulties with rotated images
– Feature matching: requires presence of features (corners, edges)
– Fourier Transform: high robustness and discriminating properties
• Disadvantages: does not match rotated images
– Fourier-Mellin Transform: high robustness and discriminating properties
• matches rotated images
Vibrations
translations+
rotations
Estabilización. Principio de funcionamiento
• Matching two images through the Fourier-Mellin Transform
– Imn(x,y) is a rotated and translated replica of Imn-1E(x,y)
– Two steps:
1) Detection and correction of rotation angle between Imn(x,y) and Imn-1E(x,y)
Result: ImnR(x,y), rotation-corrected version of Imn(x,y)
2) Detection and correction of translation offsets between Imn-1E(x,y) and Imn
R(x,y)
Result: ImnE(x,y), traslation-corrected version of Imn
R(x,y)
– s(x,y) and r(x,y) are central rectangular regions of Imn(x,y) and Imn-1E(x,y)
– α is the rotation angle and x0, y0 are translational offsets
( ) ( ) ( )( )00 ycosvsinx,xsinvcosxry,xs −+−−+= αααα
Estabilización. Principio de funcionamiento
The FT of s(x,y) and r(x,y) are related by:
The spectral phase of s(x,y) depends on translation and rotation. The spectral magnitude
of s(x,y) is translation invariant
A rotation of the image involves a rotation of the same angle of the spectral magnitude.
rp(θ,ρ) and sp(θ,ρ) are spectral magnitudes of r and s in polar magnitudes (θ,ρ). Then:
A rotation is transformed to a translation along the angular axis. It is easy to observe that
the FT of rp(θ,ρ) and sp(θ,ρ) are related by:
( ) ( ) ( ) ( )( )ααααφcosvsinu,sinvcosuRev,uS
v,usj +−+= −
( ) ( ) ( )( )αααα cosvsinu,sinvcosuRv,uS +−+=
( ) ( )ραθρθ ,r,s pp −=
( ) ( )ϖνϖν παθ ,Re,S pj
p2−=
Estabilización. Principio de funcionamiento
• Image rotation correction
The peak of qr(θ,ρ) is located at θ=θmax =α
where and are the phases of and .
Rotation correction consists in rotation Imn(x,y) – α. The result is ImnR(x,y)
• Image translation correction
sR(x,y) is the translated version of r(x,y). The peak of qt(x,y) is located at
xmax=x0 and ymax=y0
Translation correction consists in shifting ImnR (x,y) by (-x0 , -y0 )
( ) ( ) ( )
−−= − ϖνφϖνφρθ ,
p,
pjexpF,q RSr
1
( )ϖνφ ,pS
( )ϖνφ ,pR ( )ϖν ,S p ( )ϖν ,Rp
( ) ( ) ( )
−−= − v,uv,uRjexpFy,xq R
St φφ1
Estabilización. Principio de funcionamiento
• Drift correction
– Combines stabilization of Imn(x,y) respect to Imn-1(x,y) and, Imn(x,y) respect to Imn-N(x,y)
– α 1׀, x01׀, y0 1׀ rotation angle and offsets between Imn(x,y) and Imn-1(x,y)
– α ׀N, x0 ׀N, y0׀N rotation angle and offsets between Imn(x,y) and Imn-N(x,y)
– τr and τt are called drift correction rotation and translation factors, respectively
• Contrast correction
– Actual luminance of Im(x,y): bright (MI) and contrast (C)
– Desired bright and contrast: MIref and Cref
– Contrast enhance:
( ) ( )( ) refref
MIMIy,xImC
Cy,xIm* +−=
( )Nrr ατατα 1
1+−= ( )
Ntt xxx 01010 1 ττ +−= ( )Ntt yyy 01010 1 ττ +−=
Estabilización. Aspectos prácticos
• Operation modes
– Size of Sp(υ,ω) is WxW. Size of s(x,y) is MxM
– Resolution of α, x0 and y0 depends on W and M
– Two operation modes: Mode1: low values of W and M� average stabilization capability
Mode2: high values of W and M� high stabilization capability
• Sub-pixel resolution
– Resolution in the position of peak of qr(x,y) or qt(ρ,θ) increases with:
• Higher values of M or W: increase in computation load
• Sub-pixel resolution: Assumes peak is located at p_m
( ) ( )CBA
XCXBXAm_p
+++++−= 1 1
Estabilización. Aspectos prácticos
• Optimization of the computation of the FFT
– Use of Cooley-Tukey algorithm � simple and efficient
– Exploitation of FFT symmetry properties of 1D-FFT and 2D-FFT of real data
• Save of 50% in 2D-FFT of real data
– Offline pre-computation of twiddle factors of Cooley-Tukey algorithm
• Save of 40%
• Optimization in rotation and translation corrections
– Use of bilinear interpolation � simple and efficient
– Use of “integer” operations more efficient than “floating point” operations
• Save of 30%
Estabilización. Aspectos computacionales
• Two consecutive images with vibrations
• Rotation angle identification & correction θmax=3 � α=2.109375º
Imn-1E(x,y) Imn(x,y)
qr(θ,ρ) ImnR(x,y)
Estabilización. Experimentos
Imn-1E(x,y) Imn(x,y) Imn
R(x,y)
• Translation offsets identification & correction x0=0.4 & y0=-2
Estabilización. Experimentos
α x0 y0
• Sequences α, x0 and y0 obtained from a sequence of 1000 images
• Implemented on a Pentium III at 800 MHz with 128 MB
• OS: Windows NT and Vx-Works
• Mode1: M=W=128 /// Mode2: M=W=256
• Stabilizing time for Mode1= 28.6 ms. // Mode2= 102.1 ms.
Estabilización. Experimentos
• Preprocesado. Iluminación
• Preprocesado. Estabilización
• Fusión de datos para segmentación
• Otras técnicas
Complementos de Visión de Medio Nivel
• Trata de segmentar un objeto mediante puntos de interés
• Ventajas:
– Transforma un problema completo en subproblemas (más simples)
• Desventajas:
– Requiere informacion adicional (heurística, inf. de operador)
• Ofrece ventajas netas sobre otras técnicas cuando:
– Objetos complejos, dificiles de modelar
– Entorno no estructurado y complejo
Fusión de datos para segmentación
• Ejemplo: Segmentación de peces
– Mejora de condiciones de iluminacion
Fusión de datos para segmentación
– Mejora de condiciones de iluminación
Fusión de datos para segmentación
– Detección de puntos de interés en ambas imágenes
– Empleo de sec. de imágenes para:
• Reducir la incertidumbre
• Tomar mas muestras del pez
– Empleo de información estéreo para validar
secuencias de puntos de interés
– Asociación de puntos de interés del mismo pez
empleando coherencia de resultados
Fusión de datos para segmentación
– Puntos de interés: Aletas caudales, Agallas
– Detección de aletas caudales: Invariante a:
• Iluminación • Escalado
• Rotación • Alta selectividad
Fusión de datos para segmentación
• Detección de aletas caudales– Filtros template que se ajustan al ángulo de la cola
– Cada máscara representa un borde en una dirección
– Kirsh:
1 1 1 1 1 1 -1 1 1 -1 -1 1
1 -2 1 -1 -2 1 -1 -2 1 -1 -2 1
-1 -1 -1 -1 -1 1 -1 1 1 1 1 1
-1 -1 -1 1 -1 -1 1 1 -1 1 1 1
1 -2 1 1 -2 -1 1 -2 -1 1 -2 -1
1 1 1 1 1 1 1 1 -1 1 -1 -1
– Borde si cumple:
• valor resultante de aplicar template > valor
Fusión de datos para segmentación
Fusión de datos para segmentación
– Detección de aletas caudales
Fusión de datos para segmentación
– Detección de Agallas
• Resultados combinados de varios métodos:
– Umbralización
– Crecimiento de regiones
– Búsqueda de “blobs”
Fusión de datos para segmentación
Fusión de datos para segmentación
– Asociación de puntos de interés
• Conocimiento de la aplicación
Segmentación basada en puntos de interés: Asociación de puntos del mismo pez
Segmentación basada en puntos de interés: Asociación de puntos del mismo pez
• Preprocesado. Iluminación
• Preprocesado. Estabilización
• Fusión de datos para segmentación
• Otras técnicas
– Segmentación de movimiento
– Contornos activos
Complementos de Visión de Medio Nivel
– Requiere escenas con fondo estático
– Diferencia de imágenes respecto a un fondo
• Detección de presencia
• Estima la posición del móvil
– Diferencia de imágenes consecutivas
• Detección de movimiento
• Permite estimar la dirección del movimiento pero no magnitud
Otras técnicas
– Técnicas de substracción del fondo• Generar un modelo del fondo supuesto estático
• Calcular diferencias respecto del fondo
• Cancelación de sombras del objeto en el fondo
Otras técnicas
• Técnicas de flujo óptico
– Flujo óptico: movimiento aparente de los objetos en la imagen
– Dado un pixel p en la imagen t, ¿dónde estará en la imagen t+1?
– No refleja necesariamente el movimiento de los objetos
Problema de la apertura: a partir de la muestra local solo se puede reconocer el movimiento vertical (dirección del gradiente) y no el horizontal (dirección perpendicular al gradiente)
– Existen muchos y variados métodos:
• Empleando gradiente
• Basado en las características
Otras técnicas
• Contornos activos o “snakes”
– Ajustan un contorno a una imagen empleando técnicas de minimización de energía
– Utilizan la suma de 3 fuerzas o energías:
• Energía interna: Fuerza que se respete la forma del contorno
• Energía de la imagen: Atracción por características del borde (magnitud y dirección). Define energía potencial como la distancia a un borde
• Energía externa: impuesta por usuario u otras características
– Se evoluciona a partir de un molde inicial hasta encontrar un mínimo local de la función de energía
Contornos activos o snakes
• Contornos activos
Snake inicial sna ke en el paso 2 snake en el paso 5
Contornos activos o snakes
Contornos activos o snakes
Robusto a:
– Escalados
– Rotaciones
– Desplazamientos
– Cambios de contorno
Robusto a:
– Ruido en imágenes
– Iluminación no uniforme
Desventajas:- Muchos parámetros
- Complejas
- Carga computacional
Contornos activos o snakesAplicaciones:
– Interpretación de imágenes biomédicas
• Imágenes de resonancia magnética
• Ecografías
• Tomografías computerizadas
– Segmentación de objetos no rígidos: e.g. personas