Documentos de Académico
Documentos de Profesional
Documentos de Cultura
TRANSFORMACIONES
DE UNA IMAGEN
Ingeniería en Mecatrónica
INTRODUCCIÓN
• Se plantea una aplicación: p.e. Encontrar las monedas
en la siguiente imagen:
• Diseñar un sistema de visión que sea capaz de hacer
eso implica:
• Diseño de cada una de las etapas del esquema siguiente.
Tema 4 Transformaciones de una Imagen 3
INTRODUCCIÓN
Iluminación
INTRODUCCIÓN
Tabla de Contenidos
• Operaciones Puntuales
• Operaciones Locales
• Operaciones Globales
• Operaciones Geométricas
Tema 4 Transformaciones de una Imagen 6
Operaciones Puntuales
• Definición:
• El resultado de aplicarlas a un pixel depende
únicamente del valor de intensidad de ese pixel
• Pueden ser:
• Independientes de las características globales
• Con una sola imagen
• Transformaciones de una imagen según una función
• Entre varias imágenes
• Dependientes de las características globales de la
imagen
Tema 4 Transformaciones de una Imagen 7
Operaciones Puntuales
• Independientes de las Características Globales
• Operaciones de UNA imagen con una CONSTANTE
• Suma: g(x, y)=f(x,y) + K
• Resta: g(x, y)=f(x,y) - K
• Multiplicación: g(x, y)=f(x,y) * K
• División: g(x, y)=f(x,y)/K
• Máximo: g(x, y)=máx(f(x,y),K)
• Mínimo: g(x, y)=mín(f(x,y),K)
• Inversa: g(x, y)=255 - f(x,y)
0 si f(x, y) < K
• Umbralización: g(x, y) =
255 si f(x, y) >= K
Tema 4 Transformaciones de una Imagen 8
Operaciones Puntuales
• Ejemplo
+100
¿Brillo? →Aumenta
x1.5
¿Brillo? →Aumenta
¿Contraste? →Aumenta
Tema 4 Transformaciones de una Imagen 9
Operaciones Puntuales
• Ejemplo
Original Inversa
Tema 4 Transformaciones de una Imagen 10
Operaciones Puntuales
• Ejemplo: deseamos extraer los objetos del fondo…
• ¿qué operación?
Umbral 70
Umbral 100
Tema 4 Transformaciones de una Imagen 11
Operaciones Puntuales
• Independientes de las Características Globales
• Transformaciones según una FUNCIÓN
• Transformación logarítmica
• Transformación exponencial
Operaciones Puntuales
• Ejemplo
Resta Resta x 6
Tema 4 Transformaciones de una Imagen 13
Operaciones Puntuales
• Ejemplo
Umbralizada
128
Min(Original,
Umbralizada)
Original
14
Tema 4 Transformaciones de una Imagen
A B
A OR B
15
Tema 4 Transformaciones de una Imagen
A B
A AND B
16
Tema 4 Transformaciones de una Imagen
A B
A XOR B
17
Tema 4 Transformaciones de una Imagen
A B
A OR
not(B)
Tema 4 Transformaciones de una Imagen 18
Operaciones Puntuales
• Dependientes de las Características Globales
• Manipulación del Histograma
• La ecualización del histograma persigue obtener una distribución
uniforme del histograma de la imagen.
• Autoescalados de la imagen / LUT
Original
Ecualización
Histograma
19
Tema 4 Transformaciones de una Imagen
Transformaciones de laImagen
• Ecualización del histograma
Ecualización
20
Tema 4 Transformaciones de una Imagen
Origen Origen
Máx: 182 - 55
Mín: 55
Escalada
¿Cuál es la transformación?
f (x, y) − f (x, y)min
g(x, y)= MAX − MIN+MIN
f (x, y)max − f (x, y)min
Operaciones Puntuales
• Ejemplo:
• La imagen de la izquierda tiene el siguiente histograma.
Tema 4 Transformaciones de una Imagen 22
Operaciones Puntuales
• ¿Cómo es el histograma de la imagen I2?, con
• I2 = max(I, 90)
Tema 4 Transformaciones de una Imagen 23
Operaciones Puntuales
• ¿Cómo es el histograma de la imagen I3?, con
• I3 = min(I, 90)
Tema 4 Transformaciones de una Imagen 24
Operaciones Globales
• Look Up Table (LUT)
• Es una transformación de la distribución de intensidades de la
imagen
• Aplicaciones: Umbralizaciones, Realce, escalados, ….
• Se rellena una tabla cuyo tamaño coincide el espacio de intensidades ( p.e en
imágenes de 8 bits -> 28 =256)
• El valor de intensidad de cada pixel de la imagen de entrada se utiliza como índice
(i) de la tabla.
• El valor de intensidad para ese pixel en la imagen de salida es el valor de la tabla
LUT para ese índice:
0 186
1 170
2 172
3 168
Imagen Entrada 4 167 Imagen Salida
Intensidad Pixel . Intensidad Pixel
. .
.
.
…
.
.
252 21
253 20
254 20
255 20
Tema 4 Transformaciones de una Imagen 25
Tabla de Contenidos
• Operaciones Puntuales
• Operaciones Locales
• Operaciones Globales
• Operaciones Geométricas
Tema 4 Transformaciones de una Imagen 26
Operaciones Locales
• La imagen se transforma en función de los niveles de gris
de cada píxel considerado y de los de su entorno.
• Pueden ser:
• Lineales:
• Media en un entorno del pixel.
• Convolución.
• No lineales:
• Estadísticas: Mediana
• Analíticas
•
Transformación por cualquier función
• Media geométrica, armónica, contraarmónica ....
• Morfológicas
Tema 4 Transformaciones de una Imagen 27
Operaciones Locales
• Convolución:
g(x,y) = w1*f(x-1,y-1)+ w2*f(x,y-1)+ w3*f(x+1,y-1)+
w4*f(x-1,y)+ w5*f(x,y)+ w6*f(x+1,y)+
w7*f(x-1,y+1)+ w8*f(x,y+1)+ w9*f(x+1,y+1)
Imagen
Tema 4 Transformaciones de una Imagen 28
Operaciones Locales
• Convolución f(1,1)*w1+
0,1 w1
1,1 w2
2,1 w3
3,1 4,1 5,1 f(3,1)*w3+
0,2 w4
1,2 w5
2,2 w6
3,2 4,2 5,2 f(1,2)*w4+
0,3 w7
1,3 w8
2,3 w9
3,3 4,3 5,3 G(2,2) = f(2,2)*w5+
f(3,3)*w9
Tema 4 Transformaciones de una Imagen 29
Operaciones Locales
• Convolución
1 1 1
1/9 1 1 1
1 1 1
-1 0 1
-1 0 1
-1 0 1
Tema 4 Transformaciones de una Imagen 30
Operaciones Locales
• Convolución (Problemas):
• Contornos: no se dispone de suficiente información
• Se asume un valor constante
• Se considera transparente
w1 w2 w3
w4 w5
0,0 w6
1,0 2,0 3,0 4,0 5,0
w7 w8
0,1 w9
1,1 2,1 3,1 4,1 5,1
Operaciones Locales
• Convolución (Problemas):
• Saturaciones:
• El resultado de la convolución puede superar el valor máximo o mínimo
que podemos almacenar en un pixel (8 - 16 bits)
1 1 1
1/9 1 1 1
1 1 1
1 1 1
1/4 1 1 1
1 1 1
Tema 4 Transformaciones de una Imagen 32
Operaciones Locales
• Ejercicios rápidos: Plantee una máscara que haga:
• Máscara para extraer bordes:
• Verticales.
• Horizontales.
• Diagonales.
• Máscara para hallar el Brillo de una imagen.
• Máscara para hallar la media en un entorno de 7x7.
• Máscara para desplazar una imagen (x, y) pix.
• Suponiendo que tenemos una imagen digital (1 y
ceros).
• Plantear una máscara que me permita detectar pixeles
aislados (no tienen vecinos, en conexión a 8).
• Plantear una máscara que me permita detectar un patrón.
Tema 4 Transformaciones de una Imagen 33
Tiempos de cálculo
• Asuma:
• Una imagen de 640x480 pixels se convoluciona.
• Suponga que se usa una máscara de convolución de 3x3 pixels, como la
siguiente
• Una operación de suma de dos enteros (byte) tarda 1ns en nuestro
procesador.
• Una operación de multiplicación de dos enteros (byte) tarda 5ns en
nuestro procesador.
• Una operación de asignación tarda 0.5 ns.
• Calcule el número total de operaciones necesarias de cada tipo.
• Realice una predicción del tiempo total necesario para el procesado de la
imagen.
1 2 1
2 4 2
1 2 1
34
Tema 4 Transformaciones de una Imagen
Transformaciones de laImagen
• Operaciones no lineales
11
• Analíticas
• Media geométrica
Geom. =
MGeom. d(r, c)
d(r,c) N22
N
(r,c)W
(r ,c)W
• Media armónica
• Media contra-armónica N2
• Media de potencia M Harmónica ==
1
d(r,c)
(r ,c)W d(r, c)
• Estadísticas
• Mediana
Tema 4 Transformaciones de una Imagen 35
Operaciones Locales
• No Lineales
• Mediana
10 90 30
25 50 67
26 28 80
10 25 26 28 30 50 67 80 90
Tema 4 Transformaciones de una Imagen 36
Operaciones Locales
• No Lineales
• Estadísticas
Filtro
Mediana
(no lineal)
Filtro
Original + Media
Ruido Aleatorio (lineal!)
Tema 4 Transformaciones de una Imagen 37
Operaciones Locales
• No Lineales
• Morfológicas
• En imágenes binarias:
• Erosión
• Dilatación
• Adelgazamiento y esqueletización
• Opening
• Closing
• En imágenes multinivel:
• Extensión de las mismas operaciones
Tema 4 Transformaciones de una Imagen 38
Operaciones Locales
• Erosión y dilatación:
• Dependen de la forma del elemento estructurante y de la imagen
Transformaciones de laImagen
• Erosión y dilatación
Operaciones Locales
• Erosión de imágenes binarias
Tema 4 Transformaciones de una Imagen 41
Operaciones Locales
• Dilatación de imágenes binarias
Tema 4 Transformaciones de una Imagen 42
Operaciones Locales
• Erosión de una imagen multinivel
Tema 4 Transformaciones de una Imagen 43
Operaciones Locales
• Dilatación de una imagen multinivel
44
Tema 4 Transformaciones de una Imagen
Transformaciones de laImagen
• Opening y Closing
• Encadenamiento de pares de operaciones
• Erosión
• Dilatación
• El orden de aplicación no es siempre el mismo
• Opening
• Erosión + Erosión + Dilatación + Dilatación
• Closing
• Dilatación + Dilatación + Erosión + Erosión
Tema 4 Transformaciones de una Imagen 45
Tabla de Contenidos
• Operaciones Puntuales
• Operaciones Locales
• Operaciones Globales
• Operaciones Geométricas
Tema 4 Transformaciones de una Imagen 46
Operaciones Globales
• Operaciones globales
• La imagen se transforma globalmente sin considerar
los pixeles de forma individual, realizándose un cambio
de dominio
• Entre las más empleadas:
• Transformada de Fourier
• Filtrado de ruido
• Frecuencias altas y bajas de la imagen
• Transformada discreta del coseno
• Transformada de Hough
• Cambio entre modelos de color
• También se definen sus transformadas inversas
Tema 4 Transformaciones de una Imagen 47
Operaciones Globales
• Transformada de Fourier
Dominio
h(x,y) Espacio
f(x,y) g(x,y)=
f(x,y)*h(x,y)
TF TF-1
H(u,v) Dominio
G(u,v)=
F(u,v) Frecuencia
F(u,v)H(u,v)
r=0 c=0
Tema 4 Transformaciones de una Imagen 48
Operaciones Globales
• Ejemplo: Frecuencia baja
Tema 4 Transformaciones de una Imagen 49
Operaciones Globales
• Ejemplo: Frecuencia alta
Tema 4 Transformaciones de una Imagen 50
Operaciones Globales
1 1 1 F[]
h(x,y) 1/9
1 1 1
1 1 1
f’(x,y)=f(x,y)*h(x,y)
f’(x,y)=F-1[F(u,v)*H(u,v)]
¿Qué tipo de
filtro es H(u,v)?
51
Tema 4 Transformaciones de una Imagen
Operaciones Globales
-1 -1 -1
F[]
h(x,y) -1 8 -1
-1 -1 -1
f’(x,y)=f(x,y)*h(x,y)
f’(x,y)=F-1[F(u,v)*H(u,v)]
¿Qué tipo de
filtro es H(u,v)?
Tema 4 Transformaciones de una Imagen 52
Tabla de Contenidos
• Operaciones Puntuales
• Operaciones Locales
• Operaciones Globales
• Operaciones Geométricas
Tema 4 Transformaciones de una Imagen 53
Operaciones Geométricas
• Operaciones geométricas
• La posición de cada pixel en la imagen resultado depende de la
posición en la imagen origen
• Las más usadas:
• Homotecia, zoom (ampliar una zona de la imagen)
• Traslación
• Rotación
• Warping, corrección de distorsiones
• Morphing, transformación suave entre varias imágenes
Tema 4 Transformaciones de una Imagen 54
Operaciones Geométricas
• Warping
• Correspondencia entre las posiciones de los pixels en la imagen de entrada y
posiciones de los pixels en la imagen de salida
Transformación
Geométrica
I(r,c) D(r’, c’)
r’= R(r,c)
c’= C(r,c)
Operaciones Geométricas
• Warping
1. Definir los cuadriláteros sobre la imagen con unos puntos ‘tiepoints’ conocidos
2. Encontrar las ecuaciones R(r,c) y C(r,c) para estos puntos
3. Establecer una correspondencia entre los puntos dentro de este cuadrilátero y la
imagen final
I(r,c)
d(r̂,ĉ)
Tema 4 Transformaciones de una Imagen 56
Operaciones Geométricas
Warping
Tema 4 Transformaciones de una Imagen 57
Operaciones Geométricas
58
Tema 4 Transformaciones de una Imagen
Pixel Pixel
Pixel (i, j),
(i’, j’) (x,y)
intersección
Operaciones Geométricas:
• Por ejemplo, para el pixel (x,y) podemos tomar el valor del pixel
(i’,j’)más próximo (rápido)
Pixel
(x,y)
p(i’+1, j’+1)
61
Tema 4 Transformaciones de una Imagen
• Ventajas
• Inconvenientes
Tema 4 Transformaciones de una Imagen 63
Operaciones: Resumen
Indep. de Una imagen Suma, resta, mult, Inversa
Puntuales división por cte.
caract.
globales umbralización Cualquier función
Varias Suma, resta, Máximo, mínimo.
mult, división. Lógicas: AND,
imágenes
OR, NOT, XOR
Dep. de Una imagen Ecu. Del Autoescalado
histograma.
caract.
globales
Locales lineales Una imagen Convolución Media en un
entorno
No lineales Mediana Op. Morfológicas.
Erosión, dilatación
Análisis Frecuencial
5
5
dp dp
4
4
3
F F T s p ect ru m
FFT spectrum
3
2 2
1 1
0 0
-64 -48 -32 -16 0 16 32 48 64 -64 -48 -32 -16 0 16 32 48 64
Distance t o t he FFT center (pixels) Distance to the FFT center (pixels)
(a) (b)
4
FFT spectrum
0
-64 -48 -32 -16 0 16 32 48 64
Distance to the FFT center (pixels)
Muestra correcta
Tema 4 Transformaciones de una Imagen 67
Ejemplo
• Deseamos extraer la posición en la cámara de la siguiente marca.
¿Qué operación debemos realizar?
Tema 4 Transformaciones de una Imagen 68
Ejemplo
• Deseamos extraer la posición en la cámara de la siguiente marca.
• ¿Qué operación debemos realizar?.
• ¿Qué tipo de operación es?
• ¿Qué precisión puedo obtener en la detección del punto?
• ¿Qué ocurre si acerco/alejo la cámara?
• ¿Qué ocurre si cambia la iluminación de la escena?
• ¿Qué ocurre si la cámara rota sobre su eje óptico?
• SLAM