Está en la página 1de 49

Procesamiento de la imagen

Javier Gonzlez Jimnez


Dpto. de Ingeniera
de Sistemas y Automtica
Universidad de Mlaga
Procesamiento de la imagen

ndice
Introduccin
Conceptos bsicos
Histograma
Tablas de Consulta
Medidas de distancia
Convolucin

Suavizado
Realce

Procesamiento de la imagen

Introduccin

INTRODUCCIN
Objetivo : Eliminar ruido, realzar tonos, ajuste de colores,
En VC su utilizacin suele ser necesaria antes de la
aplicacin de un detector de bordes y/o segmentacin

IMAGEN

Preprocesamiento

IMAGEN

ORIGINAL

funcin h(f ( x, y))

MEJORADA

f (x,y)

g (x, y)

Aplicacin en el dominio espacial y frecuencial

Procesamiento de la imagen

Introduccin

Procesamiento en el dominio espacial


Operan de forma directa con los pixels de la imagen

g(x, y) = h(f(x,y
h(f(x,y))
))
f(x,y
f(x,y)) : imagen original
g(x,y
g(x,y)) : imagen mejorada
h( )

: funcin definida sobre un entorno de vecindad de (x, y)

1x1 : Tablas de consulta


1x1 : Promediado de imgenes
NxM : Convolucin

Procesamiento de la imagen

Introduccin
Procesamiento en el dominio frecuencial

IMAGEN

F {f(x,y)}

ORIGINAL

IMAGEN
FRECUENCIAL
F (u,v)

f (x,y)

F(u,v) x H(u,v)

IMAGEN
MEJORADA
g (x,y)

-1

IMAGEN

{G(u,v)}

FRECUENCIAL
G (u,v)

Procesamiento de la imagen

Conceptos bsicos
CONCEPTOS BSICOS EN PROCESAMIENTO DE IMGEN

Histograma de una imagen


es una representacin grfica de la frecuencia con la que los
niveles de grises aparecen en dicha imagen.
se construye rastreando toda la imagen y contabilizando el
nmero de pxeles que poseen cada nivel de gris.
proporciona informacin estadstica sobre cmo estn
distribuidos los distintos niveles de grises de la imagen
im=imread('rice.tif');
imshow(im)
imhist (im);

Procesamiento de la imagen

Conceptos bsicos

Histograma de una imagen


til para tareas tales como:
conocer si la digitalizacin se ha efectuado correctamente
decidir el valor de umbralizacin de una imagen
tener una estimacin del brillo medio y contraste, etc.

L-1
Mucho brillo y
poco contraste

L-1

Imagen binaria

L-1
objeto sobre fondo

L-1
Saturacin del blanco

Procesamiento de la imagen

Conceptos bsicos
CONCEPTOS BSICOS EN PROCESAMIENTO DE IMGEN

Tablas de consulta (Look-up-tables)


define una transformacin pxel a pxel entre los niveles de
grises de la imagen a procesar y de la imagen resultante
consiste en asignar como nuevo nivel de grs el correspondiente
al elemento indexado con el nivel de entrada.
0

niveles
salida

L-1

b0
b1

.
.
.

.
.
.

L-2
L-1
L-1 niveles
entrada

Representacin contnua

niveles
entrada

bL- 2
bL- 1

b0
b1

.
.
.
bL - 2
bL - 1
niveles
salida

Representacin discreta

Procesamiento de la imagen

Conceptos bsicos

Tablas de consulta
aunque muy simple, tiene una gran
utilidad en el procesamiento de
imgenes
su implementacin es fcil
se puede aplicar en tiempo real (a la
frecuencia de digitalizacin).

% creamos una LUT para el 'umbral'


especificado y los valores min y max
lut= ones(256,1);
lut(1:umbral)= lut(1:umbral).*min;
lut(umbral+1:end)= lut(umbral+1:end).*max;
% aplicamos la LUT a la imagen
im_out = lut(double(imagen)+1);
% cambiamos el formato al de imagen
im_out= uint8(im_out);

niveles
salida

niveles
salida

niveles
salida

L-1

L-1

L-1

B
A
T

L-1 niveles
entrada

Operacin de umbralizacin

L-1 niveles
entrada

Procesamiento de la imagen
No se modifica la imagen

L-1 niveles
entrada

Inversin de la paleta de grises

Conceptos bsicos

Medidas de distancia:
1.

D es una funcin distancia si: 2.


3.

D(p1,p2) 0 [D(p1,p2)=0 si p1=p2]


D(p1,p2) = D(p2,p1)
D(p1,p3) D(p1,p2)+D(p2,p3)

distancia eucldea entre p1 y p2 :

distancia 4 (Manhattan) entre p1 y p2 :

distancia 8 (Tchebichev) entre p1 y p2 :


2
2
2
2
2

2
2 1 2
2 1 0 1 2
2 1 2
2
D4

Procesamiento de la imagen

2
1
1
1
2

2
1
0
1
2

2
1
1
1
2

D8

2
2
2
2
2

10

Conceptos bsicos

Medidas de distancia:
j

Distancia Euclidea

= (i-n) 2 + (j-m) 2

Distancia Manhattan

= |i-n| + |j-m|

Procesamiento de la imagen

Distancia Tchebichev

= max[ |i-n|, |j-m| ]

11

Conceptos bsicos

Convolucin
h(m,n)
180

183

122

120

119

123

123

122

177

189

188

122

133

128

120

123

h
(+
1,+
1
)

h
(+
1
,0
)

h
(+
1
,-1
)

177

200

203

199

196

150

130

150

h
(0
,+1
)

h
(0
,0
)

h
(0
,-1)

170

158

155

147

126

125

140

156

h
(-1,+
1)

h
(-1,0
)

h
(-1,-1
)

166

153

138

136

143

143

145

160

176

166

169

155

133

155

175

170

172

177

163

156

166

156

200

166

170

144

146

140

155

156

167

165

Im a ge n o rig in al f(i,j)

g ( i, j ) = f h =

f( i m , j n ) h (m , n )
m n

Im ag en re sulta nte g (i ,j )

El kernel (mscara) se voltea respecto al origen ( la imagen, es


conmutativo)
En MATLAB: conv2 (filter2 o imfilter no voltean

Convolucin 1D

Procesamiento de la imagen

correlacion)

Convolucin 2D

12

Propiedades de la Convolucin

Conceptos bsicos

Conmutativa:
Asociativa:
Distributiva:
Asociativa respecto al
producto escalar:
Derivada:
Teorema de convolucin:
Procesamiento de la imagen

13

Suavizado de imgenes

SUAVIZADO DE IMGENES
Objetivo:: Reducir ruido y/o efectos espurios como consecuencia
Objetivo
del proceso de captura, digitalizacin y transmisin.
Promediado del entorno
Filtrado gaussiano
Filtro de la mediana
Promediado de imgenes
Filtrado en el dominio frecuencial (filtro paso bajo)

DEMO MATLAB: Noise reduction filtering

Procesamiento de la imagen

14

Suavizado de imgenes

SUAVIZADO DE IMGENES

Original

Impulse noise

Ruido Sal y Pimienta


Pimienta (Salt and pepper):
contiene ocurrencias aleatorias de pixeles
blancos
blanco
s y negros

Ruido Impulso:
Impulso: contiene ocurrencias
aleatorias de pixeles blancos

Ruido Gaussiano:
Gaussiano: variaciones en la
intensidad que siguen una distribucion
Normal (Gaussiana
(Gaussiana))

Salt and pepper noise

Gaussian noise

Fuente: S. Seitz
Procesamiento de la imagen

15

Suavizado de imgenes

Promediado del entorno


Reemplazar el nivel de gris de cada pixel por el valor medio de los
niveles de grises de sus vecinos:

S : conjunto de p pixels situados en un entorno de (x,y)


(nxm) : entorno de vecindad

Procesamiento de la imagen

16

Suavizado de imgenes

Promediado del entorno


Si se emplea un entorno de 3x3 el proceso es equivalente a
convolucionar con una mscara de la forma:
1/9 1/9 1/9
1/9 1/9 1/9
1/9 1/9 1/9

El tamao del entorno de vecindad seleccionado determina el grado


de suavizado alcanzado

Procesamiento de la imagen

17

Suavizado de imgenes

Promediado del entorno


Perfil de la lnea 256 de las
imgenes (b), (c) y (d)

256

1
0.5
0

100

200

300

400

500

100

200

300

400

500

100

200

300

400

500

(a) Imagen original

(b) Imagen con ruido

0.5
0
1
0.5
0

(c) Media 3x3

(c) Media 9x9


Procesamiento de la imagen

18

Suavizado de imgenes

Promediado del entorno


Ventaja : Fcil de entender y aplicar
Inconveniente: Enturbiamiento de los contornos

Alternativa

PROBLEMAS
No elimina puntos espurios
Qu valor de T se escoge?

Procesamiento de la imagen

19

Suavizado de imgenes

Filtrado gaussiano
Reemplazar el nivel de gris de cada pixel una media ponderada de los
niveles de grises vecinos
Se implementa mediante una convolucin con la funcin gaussiana:

Propiedad de separabilidad

0.003
0.013
0.022
0.013
0.003

0.013
0.059
0.097
0.059
0.013

0.022
0.097
0.159
0.097
0.022

0.013
0.059
0.097
0.059
0.013

0.003
0.013
0.022
0.013
0.003

5 x 5, = 1
Procesamiento de la imagen

20

Suavizado de imgenes

Filtrado gaussiano
Propiedad de separabilidad

% Separabilidad del operador Gaussiano


% h = fspecial('gaussian',hsize,sigma)
g_x = fspecial('gaussian',[1,5],1)
g_y = fspecial('gaussian',[5,1],1)
g=g_y*g_x %Propiedad de separabilidad
h = fspecial('gaussian',[5,5],1) %da lo mismo que si se construye
directamente en 2D

Procesamiento de la imagen

21

Suavizado de imgenes

Filtrado gaussiano
Es un filtro ptimo

compromiso entre actuacin en espacio y frecuencia

Dominio espacial

Dominio frecuencial

Procesamiento de la imagen

22

Suavizado de imgenes

Filtrado gaussiano
Es un filtro ptimo

compromiso entre actuacin en espacio y frecuencia

Procesamiento de la imagen
Cortesa de Zhigang Zhu

23

Suavizado de imgenes

Filtrado gaussiano
En el caso discreto

equivalente a una convolucin con:


0

18

25

18

18

50

71

60

18

25

71

100

71

25

18

50

71

60

18

18

25

18

El tamao de la mscara
depende de :

w
Procesamiento de la imagen

24

Suavizado de imgenes

Filtrado gaussiano

Mayor Sigma:
ms suavizado
ms enturbuiamiento

Procesamiento de la imagen

25

Suavizado de imgenes

Filtrado gaussiano
Ventajas :
- Se aplica mediante convolucin.
convolucin.
- Provoca un menor enturbiamiento de bordes que media simple.
Inconveniente:
- Mscaras grandes incluso para valores de pequeos, lo que
implicara un elevado coste computacional.
Afortunadamente
es separable

Aplicar filtro 1D por filas y columnas


g(
g(x,y
x,y)=g(x)g(y)
)=g(x)g(y)

Procesamiento de la imagen

26

Suavizado de imgenes

Filtro de la mediana
Reemplazar el nivel de gris de cada pixel por la mediana de los
niveles de grises vecinos
Se aplica tomando el elemento central de los niveles de grises de
los pixels vecinos ordenados de menor a mayor:

10

11

12

10

50

10

10

12

11

ENTORNO 3x3

ORDENACIN DEL ENTORNO


10 10 10 10 11

11

12 12 50

mediana

Procesamiento de la imagen

27

Suavizado de imgenes

Preprodesamiento de Imgenes

Filtro de la mediana

(a) Imagen con ruido de


nieve (salt & pepper)

(b) Mediana

Procesamiento de la imagen

(c) Media 3x3

28

Suavizado de imgenes

Filtro de la mediana
Ventajas :
- Conserva los bordes de la imagen
- Elimina puntos espurios
Inconveniente:
- Elevado coste computacional (ordenacin)
Alternativa

Algoritmo de la pseudomediana

- Elimina lneas delgadas y redondea las esquinas


Alternativa

Variar entorno de vecindad

Procesamiento de la imagen

29

Suavizado de imgenes

Promediado de imgenes
Promediar los niveles de grises de pixels de distintas imgenes de una
misma escena cuya nica diferencia, en teora, es el ruido

Si es un ruido blanco, entonces:

Procesamiento de la imagen

30

Suavizado de imgenes

Promediado de imgenes

Ruido
Gaussiano

1 imagen

10 imgenes

50 imgenes

Ruido tipo
sal y pimienta

Procesamiento de la imagen

31

Suavizado de imgenes

Promediado de imgenes
Ventajas :
- Conserva los bordes de la imagen
- Reduce el ruido inherente de las imgenes reales

Inconveniente:
Solo se puede aplicar con imgenes en las que no exista
movimiento en el momento de la captura de una secuencia de
imgenes

Procesamiento de la imagen

32

Suavizado de imgenes

Filtrado en el dominio frecuencial


Transiciones bruscas en los niveles de grises de una imagen
contribuyen fuertemente en las componentes de altas frecuencias
Atenuando el rango especfico de las componentes de altas frecuencias
en la transformada se puede eliminar el ruido en el dominio espacial.
Paso baja

Paso alta

Paso banda

Dominio
frecuencial

Dominio
espacial

Procesamiento de la imagen

33

Suavizado de imgenes

Filtrado en el dominio frecuencial


%Visualizar espectro de Fourier

Aplicacin:
f(x,y)

F {f(x,y)}

F(u,v)

G(u,v) = H(u,v) x F(u,v)


g(x,y)

-1

im=imread('saturn.tif');
imf = fft2 (im);
imfs = fftshift (imf);
colormap(gray);
image(imfs);
image
(imfs);

G(u,v)
{G(u,v)}

La multiplicacin en el dominio frecuencial equivale a la


convolucin en el dominio espacial

Procesamiento de la imagen

34

Suavizado de imgenes

Filtrado en el dominio frecuencial


- Filtro ideal paso bajo (ILPF):
1

D0

ILPF 1D

ILPF 2D

Imagen ILPF

- Filtro de Butterworth (BLPF)


1
0.5
0

BLPF 1D

D0

BLPF 2D

Procesamiento de la imagen

Imagen BLPF

35

Suavizado de imgenes

Filtrado en el dominio frecuencial


- Filtro ideal paso bajo (ILPF):
1 si D (u,v) D0
H(u,v) =
0 si D(u,v) > D0
Distancia al eje de frecuencias

- Filtro de Butterworth (BLPF)

Frecuencia de corte

Orden del filtro

Procesamiento de la imagen

36

Suavizado de imgenes

Filtrado en el dominio frecuencial

ILPF (D0 = 70)

FFT

IFFT

Espectro de Fourier

H(u,v)

(Imagen original)

Espectro de Fourier
(Imagen filtrada)

Procesamiento de la imagen

37

Suavizado d imgenes

Filtrado en el dominio frecuencial

BLPF (D0 = 50, n=1)

FFT

IFFT

Espectro de Fourier

H(u,v)

(Imagen original)

Espectro de Fourier
(Imagen filtrada)

Procesamiento de la imagen

38

Realce de Imgenes

REALCE DE IMGENES
Objetivos::
Objetivos
- Aumentar el contraste mediante la redistribucin de los
niveles de grises de la imagen.
- Adaptarse de forma automtica a los cambios de
iluminacin.

Transformacin de la paleta
Igualacin de histograma
Especificacin de histograma
Realce local

Procesamiento de la imagen

39

Realce de Imgenes

Transformacin de la paleta
Idea: Estirar y desplazar el histograma para aprovechar mejor el rango
de niveles de grises

Procesamiento de la imagen

40

Realce de Imgenes

Transformacin de la paleta
Escalado NoNo-Lineal

f(x,y) = g(x,y)

< 1 para aumentar el contraste de las zonas oscuras


> 1 para aumentar el contraste de las zonas claras
1

<1
=1

0.5

>1
0

0.5

Procesamiento de la imagen

41

Realce de Imgenes

Transformacin de la paleta
Escalado NoNo-Lineal

f(x,y) = g(x,y)

= 0.5 (raiz cuadrada)

0.5

0
0

0.5

Procesamiento de la imagen
Cortesa de Zhigang Zhu

42

Realce de Imgenes

Transformacin de la paleta
f(x,y) = g(x,y)

Escalado NoNo-Lineal

=3

0.5

4000
4000

3500
3000

0.5

3500
3000

2500
2500
2000
2000
1500
1500
1000
1000
500
500

Procesamiento de la imagen

0
0

50

100

150

200

250
0

50

100

150

200

250

Realce de Imgenes

Igualacin de histogramas
Idea: Modificar la imagen para lograr un aprovechamiento
ptimo del rango de niveles de grises mediante una
distribucin uniforme de los mismos.

Imagen con mal aprovechamiento


de los niveles de grises

Imagen con buen aprovechamiento


de los niveles de grises
HISTOGRAMA

HISTOGRAMA

1
0.9

0.8

0.8

F rec uenc ia

Frec uenc ia

0.7
0.6
0.5
0.4

0.6

0.4

0.3

0.2

0.2
0.1

0
0

50

100
150
Niveles de Grises

200

250

50

Procesamiento de la imagen

100
150
Niveles de Grises

200

250

44

Realce de Imgenes

Imagen Original

Imagen Realzada
Funcin de transformacin
FDP ACUMULADA
250

Niveles de Salida

200

150

100

50

0
0

50

100

150

200

250

Niveles de Entrada

HISTOGRAMA
1
0.9
0.8
0.7
Frec uenc ia

Preprodesamiento de Imgenes

Igualacin de histogramas

0.6
0.5
0.4
0.3
0.2
0.1
0
0

50

100
150
Niveles de Grises

200

250

Histograma de la imagen original


HISTOGRAMA
1
0.9
0.8
0.7

Frecuencia

0.6
0.5
0.4
0.3
0.2
0.1

DEMO MATLAB: Image histogram and intensity adjustment


Procesamiento de la imagen

0
0

50

100
150
Niveles de Grises

200

250

50
Histograma de la imagen realzada

Realce de Imgenes

Especificacin de histogramas
Idea: Modificar una imagen de tal forma que la imagen
resultante tenga un histograma determinado

Imagen

T(r)

Imagen

original

Igualada

r (x,y)

s(x,y)

?
IMAGEN
Con histograma
especificado
z (x,y)

G-1(s)

G(z)
G-1(i)

Procesamiento de la imagen

Imagen
Igualada
i(x,y)

51

Realce de Imgenes

Especificacin de histogramas
Imagen Original

Imagen Realzada

HISTOGRAMA
1
0.9
0.8

Frecuencias

0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0

50

100
150
Niveles de grises

200

250

Histograma especificado

HISTOGRAMA
1

HISTOGRAMA
1

0.9
0.9

0.8
0.8

0.7

Frecuencias

Frecuencias

0.7

0.6
0.5
0.4

0.6
0.5
0.4

0.3
0.3

0.2
0.2

0.1
0.1

0
0

50

100

150

200

250

Niveles de grises

0
0

50

100

150

200

250

Niveles de grises

Histograma de la imagen original

Histograma de la imagen realzada

Procesamiento de la imagen

52

Realce de Imgenes

Realce local
Idea: Plantear el realce a partir de la distribucin de
intensidades sobre en entorno de cada pixel de la
imagen.
Aplicacin: Definir una ventana NxM que es posicionada
pixel a pixel por la imagen, operando solamente en
dicho entorno en base a los atributos de las
intensidades de sus pixels.

EJEMPLO : Aplicar igualacin o especificacin


empleando slo un conjunto de pixels vecinos

Procesamiento de la imagen

53

Realce de Imgenes

Realce local
Media del entorno
de vencidad

Media de la imagen
completa

Desviacin tpica del


entorno de vencidad

Constante entre 0 y 1
GANANCIA DEL FILTRO

Procesamiento de la imagen

54

También podría gustarte