Upload
jose-luis-martinez
View
172
Download
0
Embed Size (px)
Citation preview
Procesamiento de Imágenes• Modificación imágenes para generar otras imágenes• Objetivo: mejorar la imagen en algún sentido
• Reasignación de niveles de gris pixel a pixel• Puede implementarse mediante LUT (tablas)
Modificación del Histograma
0 2550
255
nivel gris imagen entrada
nive
l gris
imag
en sa
lida
T(r)
r
s
r T(r)0 01 02 1
253 254254 255255 255
1Procesamiento de Imágenes
2Procesamiento de Imágenes
Modificación histograma:cambio escala– Convierte el intervalo [a,b] → [z1,z2] – Mejora brillo y contraste 1
12 )()()( zar
abzzs +−
−−=
0
32
64
96
128
0 64 128 192 256
0
1500
3000
4500
6000
0 64 128 192 2560
1500
3000
4500
6000
0 64 128 192 256
0
32
64
96
128
0 64 128 192 256
[0,110]→ [50,255]
Histograma
Histogramaacumulado
3Procesamiento de Imágenes
Modificación histograma: ecualización• Transforma el histograma en una distribución uniforme• Histograma acumulado lineal
• imagen original, pi pixeles de ng ri• imagen destino, qi pixeles de ng si• ¿tabla T(ri)• para q0, buscar k0 tal que:• r0, r1, ..., rk0-1 se mapean a s0• para q1, buscar k1 tal que:• rk0,..., rk1-1 se mapean a s1
∑∑=
−
=
≤≤00
00
1
0
k
ii
k
ii pqp
∑∑=
−
=
≤+≤10
010
1
0
k
ii
k
ii pqqp
0
1
0 2550
1
0 255
• .....• quedan niveles si sin asignar
4Procesamiento de Imágenes
Modificación histograma: ecualización
0
32
64
96
128
0 64 128 192 2560
1500
3000
4500
6000
0 64 128 192 256
0
1500
3000
4500
6000
0 64 128 192 256
0
32
64
96
128
0 64 128 192 256
0
1500
3000
4500
6000
0 64 128 192 2560
32
64
96
128
0 64 128 192 256
normalización histograma completo
normalización excluyendo extremos del histrograma
imagen original
5Procesamiento de Imágenes
Ruidos de imagen típicos• ruido de “sal y pimienta”: ocurrencias aleatorias de
pixeles completamente blancos y completamente negros.
• ruido impulso: ocurrencias aleatorias de pixelescompletamente blancos
• ruido gausiano: el nivel de gris de todos los pixeles de la imagen es perturbado con una normal
),0( ],[],[ 2ideal σNppjiIjiI ≈+=
figura 4.5 Jain
6Procesamiento de Imágenes
Filtrado lineal: Convolución• Cada pixel de la imagen resultado es combinación lineal
de varios pixels vecinos de la imagen original• Máscara de convolución (Kernel):
• Normalmente, máscaras centradas• Si no, se marca el pixel central
[ ]
[ ] [ ] [ ] [ ] [ ]njmifnmKjifnmKjig
kkk
kkk
kkk
nmK
b
am
d
cn
dbbcb
dc
daaca
++=∗=
⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢
⎣
⎡
=
∑ ∑−= −
−
−
−−−−
,,,,,
,
,0,,
,00,0,0
,0,,
LL
LLLLL
LL
LLLLL
LL
7Procesamiento de Imágenes
Convolución: Ejemplos• Máscara descentrada
– Diferencia hacia adelante
• Máscara centrada– Filtro binomial 3x3 B3x3 =
116
1 2 12 4 21 2 1
g(i, j) = 116
[ f(i −1, j −1) + 2 f(i −1, j) + f(i −1, j +1)+
2 f (i, j −1) + 4 f(i, j) + 2 f(1, j +1)+f (i +1, j −1) + 2 f(i +1, j) + f(i +1, j +1)]
K= −1• 1 g(i, j)= f(i,j +1)− f(i, j)
8Procesamiento de Imágenes
Convolución: banda de basura• La máscara “se sale” de la imagen
• Para una máscara n x n con n impar, el tamaño de la banda de basura es: (n-1)/2
– Dejar valores no válidos (basura)– Mejor rellenarla con ceros
Banda de basura
9Procesamiento de Imágenes
Suavizado (filtrado de ruidos)• Filtro de media
– Todos los pixeles igual peso
• Filtro binomial– Valores sacados del triángulo de Pascal:
– Píxeles más lejanos, menor peso:
• Para no alterar el brillo medio, se divide por la suma de los valores de la máscara
K3x 3 =19
1 1 11 1 11 1 1
11 1
1 2 11 3 3 1
1 4 6 4 1
B3x3 = 116
1 2 12 4 21 2 1
10Procesamiento de Imágenes
Suavizado de la imagen• Filtro Gaussiano
– La constante c se calcula para que los coeficientes sumen 1– A mayor σ, mayor suavizado– Tamaño de la máscara: 5σ - 7σ
• Ejemplo: máscara 5 x 5 para σ = 1
Gσ (i , j) = c ⋅ e−
(i 2 + j 2 )2 σ 2
0.0183 0.0821 0.1353 0.0821 0.01830.0821 0.3679 0.6065 0.3679 0.08210.1353 0.6065 1.0000 0.6065 0.13530.0821 0.3679 0.6065 0.3679 0.08210.0183 0.0821 0.1353 0.0821 0.0183
c = 1/6.1689
11Procesamiento de Imágenes
Suavizado de la imagen• Filtrado Gaussiano con σ = 1, 2, 3, 4
12Procesamiento de Imágenes
Máscaras separables• Condición: rango(K) = 1
– Filtro binomial:
– Filtro Gaussiano:
)],()([)()],()([)(),(),(),(
)()(),(
jifiKjKjifjKiKjifjiKjig
jKiKjiK
yxxy
xy
∗∗=∗∗=∗=
⋅=
Máscara nxn
Máscara nx1+
Máscara 1xn + Eficiente+ Eficiente
B3x3 =1
16
1 2 12 4 21 2 1
=1
16
121
⋅ 1 2 1
Gσ =1 =1
6.1689
0.13530.60651.00000.60650.1353
⋅ 0.1353 0.6065 1.0000 0.6065 0.1353
13Procesamiento de Imágenes
Máscaras separables• Programación eficiente:
• Sólo se necesita una fila intermedia:
),()(),(
),()(),(
)],()([)(),(),(),(
jifjKjig
jifiKjif
jifiKjKjifjiKjig
x
y
yx
′∗=
∗=′
∗∗=∗=
fila i de f’(i,j)Kx
fila i de g(i,j)
Ky fila i de f(i,j)
14Procesamiento de Imágenes
Suavizado gaussiano y binomial• Son muy similares, tienen las siguientes propiedades:
– simetría de rotación, filtran por igual en todas las dimensiones– tienen un único lóbulo central, el peso de los pixeles vecinos
disminuye a medida que nos alejamos del centro– el filtro es un paso bajo, su frecuencia de corte está relacionada
con 1/σ, luego a mayor sigma filtra más– son filtros separables– la aplicación en cascada de varios filtros equivale a aplicar una
vez un filtro mayor» aplicar 2 veces un filtro σ equivale a aplicar un filtro » aplicar 2 veces filtro binomial n, equivale al binomial 2n-1
σ2
15Procesamiento de Imágenes
Filtro de mediana• Filtro no lineal
– ordenar los nxn vecinos por nivel de gris ascendente– asignar la mediana, esto es, el valor que ocupe la mitad en la
lista ordenada
• Buena eliminación de ruido de sal y pimienta e impulso• Los espurios, (outliers) no tienen ninguna influencia
16Procesamiento de Imágenes
Filtro de mediana
0
64
128
192
256
(81,151) (152,151)
0
32
64
96
128
(81,150) (152,150)
0
40
80
120
160
(80,150) (151,150)
Original
Filtro de mediana
Filtro Lineal
17Procesamiento de Imágenes
Correlación• Problema: reconocer y localizar una subimagen dentro
de una imagen
18Procesamiento de Imágenes
Correlación
• Suma de diferencias cuadráticas SSD:
» Va mal si la iluminación no es uniforme
• Correlación normalizada:
» ρ 1 indica relación lineal entre los niveles de gris: correspondencia
( )∑ −ji
bij
aij WW
,
2
( )( )
( ) ( )∑∑
∑
−−
−−=
ij
aij
aij
ij
bij
bij
ij
bij
bij
aij
aij
WWWW
WWWW
22ρ [ ]1,1−∈ρ
buscadasubimagen
principal.imagen la de NxM subventana b
ij
aij
W
W
19Procesamiento de Imágenes
Correlación• Sólo funciona para traslaciones• Para rotaciones:
– Muestrear el ángulo de giro– Interpolación de imágenes para generar el giro sintético
» Elevado costo computacional
• Cambios de escala– Muestrear el cambio de escala– Interpolación de imágenes para generar la nueva escala
» La resolución puede reducirse pero no aumentarse
• Escorzo (foreshortening)– Podría compensarse mediante alabeo de imágenes