Professional Documents
Culture Documents
CONSTRUIMOS FUTURO
Entrenamiento Da MATLAB 2008: Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
MSc Leandro F. Ariza Jimnez
Grupo en Conectividad y Procesado de Seal (CPS)
CONSTRUIMOS FUTURO
Agenda
Introduccin Objetivo propuesto Tpicos propuestos Desarrollo metodolgico Manipulacin matricial en MATLAB Acondicionamiento y ejecucin del proceso de adquisicin de video e imgenes Procesamiento de imgenes y video utilizando MATLAB
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
Introduccin
Matrices y vectores MATLAB >> Matrix Laboratory Imgenes >> Arreglo matricial (matrix array) Videos >> Secuencia matricial (frames) Toolboxes: Image Acquisition Toolbox Image Processing Toolbox
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
Objetivo propuesto
Acercar a los participantes a travs de una sesin de cuatro horas a las capacidades de adquisicin y procesamiento de imgenes y videos soportadas por los correspondientes toolboxes de MATLAB.
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
Tpicos propuestos
Fundamentos de manipulacin matricial en MATLAB. Control del equipo de registro mediante MATLAB. Adquisicin de video e imgenes mediante MATLAB. Tcnicas bsicas de procesamiento de imgenes y video utilizando MATLAB.
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
Desarrollo metodolgico
FASE DE TRABAJO Manipulacin matricial en MATLAB Acondicionamiento y ejecucin del proceso de adquisicin de video e imgenes Procesamiento de imgenes y video utilizando MATLAB DURACIN
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
CONSTRUIMOS FUTURO
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
10
I = [1; 2; 3; 4; 5]
I = [-2; -1; 0; 1; 2]
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
11
I = [1 2 3; 4 5 6; 7 8 9] I = [1, 2, 3; 4, 5, 6; 7, 8, 9]
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
12
256x256
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
13
I (1,2) I (1,3) I (1,1) I (2,1) I (2,2) I (2,3) ),3) I (K 3,2) I (1I 3,)3) I (1,2) I (3 I,1 N (1 ,( M I (2, N M) I (2,2) M I (2,3) K M I, ,1 (M ) K,2) I (3 IK (3,2) I I 3) ,)3) N ),3 I( N (1 ,( I ( M M M O M K I (2, N ) I( M ,2)I (3 I,(N M) ,3 ) K I ( M , N ) K
K K K O K
Matriz multidimensional
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
14
256x256x3
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
15
16
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
17
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
18
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
CONSTRUIMOS FUTURO
20
21
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
22
23
24
>> celldisp(ans.SupportedFormats)
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
25
Objeto de video >> Representa la conexin entre MATLAB y el dispositivo de adquisicin. Fuente de video >> Un mismo objeto de video puede contener mltiples fuentes de video.
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
26
'winvideo' 'Laptop Integrated Webcam' 240 320 'uint8' 1 'Windows WDM Compatible Driver' 'DirectX 9.0'
27
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
28
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
29
30
31
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
32
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
33
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
34
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
35
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
36
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
37
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
38
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
39
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
40
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
41
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
42
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
43
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
44
45
46
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
47
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
48
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
49
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
CONSTRUIMOS FUTURO
51
Histograma
>> I = imread(cameraman.tif); >> figure, imshow(I); figure, imhist(I) Distribucin de la frecuencia con que aparecen los niveles de gris de una imagen. No aporta informacin sobre la distribucin espacial de los niveles de gris.
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
52
Contraste
Mide el rango dinmico de los niveles de gris en una imagen. Puede mejorarse por medio de una transformacin lineal.
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
53
Transformaciones de intensidad
54
Segmentacin
Subdivide una imagen en sus regiones constitutivas u objetos. Algunos algoritmos se basan en propiedades bsicas los niveles de intensidad: Discontinuidad Similitud
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
55
56
>> K = im2bw(I,0.3);
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
57
Filtrado espacial
Operaciones realizadas directamente sobre los pxeles de la imagen. Se convoluciona empleando una mscara de m x n con coeficientes.
R = w1 z1 + w2 z 2 + K + w9 z9
Se utilizan tcnicas de rellenado (padding).
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
R = wi zi
i =1
58
Filtro pasa-bajo
Otras mscaras:
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
59
No lineal y de ordenamiento estadstico. Computacionalmente ineficiente. Degrada la imagen en menor cuanta que otros filtros paso bajo. Excelente reduccin de ruido impulsivo (salt & pepper).
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
60
Filtro pasa-bajo
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
61
Filtro pasa-alto
0 1 0 1 4 1 0 1 0
Otras mscaras:
1 1 1 1 8 1 1 1 1
Viernes, 1 de agosto de 2008
1 1 1
0 0 0
1 1 1
1 2 1
0 0 0
1 2 1
62
Deteccin de bordes
Frontera entre dos regiones con nivel de gris relativamente diferentes.
63
Deteccin de bordes
Detector de bordes >> Operador local de derivacin.
I ( x, y )
Operador diferencial
Umbral
Bordes
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
64
Deteccin de bordes
Gx I x I = = I Gy y
I = mag ( I ) = Gx 2 + Gy 2
I Gx + Gy
Viernes, 1 de agosto de 2008
Gy ( x, y ) = tan Gx
1
65
Deteccin de bordes
Operador \ Deriv. Parcial
Gx
0 1 1 0 1 0 1 1 0 1 1 0 1 1 0 1 2 0 2 1 0 1
Gy
1 0 0 1 1 1 1 0 0 0 1 1 1 1 2 1 0 0 0 2 1 1
Prewitt
Roberts
Sobel
Viernes, 1 de agosto de 2008
66
Deteccin de bordes
Imagen original
Viernes, 1 de agosto de 2008
Gx - Sobel
Gy - Sobel
Gradiente Sobel
67
Deteccin de bordes
Derivada de segundo orden >> Laplaciano. Sensible en exceso al ruido, produce bordes dobles y no permite determinar direcciones.
I I I = 2 + 2 x y
2 2 2
Viernes, 1 de agosto de 2008
0 1 0 1 4 1 0 1 0
1 1 1 1 8 1 1 1 1
68
69
Bibliografa
GONZLEZ, Rafael C. y WOODS, Richard E. Digital Image Processing. 2da ed. New Jersey, Prentice Hall, 2002. 793 p. GONZLEZ, Rafael C., WOODS, Richard E. y EDDINS, Steven. Digital Image Processing Using MATLAB. New Jersey, Prentice Hall, 2004. 782 p. THE MATHWORKS, Image Adquisition Toolbox Users Guide. THE MATHWORKS, Image Processing Toolbox Users Guide.
Viernes, 1 de agosto de 2008 Taller de adquisicin y procesamiento de imgenes y video mediante MATLAB
CONSTRUIMOS FUTURO