Utp va_sl2 procesamiento de imagenes con mat_lab i
1. Procesamiento de Imágenes
y Visión Artificial
(PS02)
Laboratorio: 2
Procesamiento
de Imágenes con MatLab I
Ing. José C. Benítez P.
2. Procesamiento Digital de Imágenes con MatLab I
Objetivo
Generar imágenes de escala de grises.
Tipo de dato de los pixeles de las imágenes.
Histograma
Ajuste de imágenes
Binarización de la imagen
Informe
Presentación
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. José C. Benítez P. 2
3. Objetivo
Generar imágenes en escala de grises y a
colores manualmente.
Realizar conversiones de imágenes a color a
escala de grises mediante algoritmos
clásicos: Lightness, Luminosity y Average
Al final de la clase el alumno debe presentar
un documento word con el desarrollo y
adjuntar sus fuentes en USB.
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. José C. Benítez P. 3
4. Generar Imágenes de escalas de gris
1. Generar 08 imágenes diferentes de contenido manualmente:
• Una de 76,800 pixels, de dimensiones 320x240 de escala
de grises.
• La otra de 38,400 pixels, de dimensiones 160x120 de
escala de grises
Cada una de:
a. de 8 bits.
b. de 16 bits.
c. de 32 bits.
d. de 64 bits.
Ejemplo. Tablero de ajedrez. (imagen generada
manualmente).
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. José C. Benítez P. 4
5. Generar Imágenes de escalas de gris
2. Obtener 08 imágenes de internet diferentes de contenido:
• Una de 76,800 pixels, de dimensiones 320x240 de escala
de grises.
• La otra de 38,400 pixels, de dimensiones 160x120 de
escala de grises
Cada una de:
a. de 8 bits.
b. de 16 bits.
c. de 32 bits.
d. de 64 bits.
Nota. Las imágenes deben ser de mapas de bits y de
formato BMP.
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. José C. Benítez P. 5
6. Tipo de dato de los pixeles de las imágenes
Todos los pixeles de una imagen son de tipo entero sin
signo de 8, 16, 32 o 64 bits.
Para convertir cada uno de los pixeles de una imagen a
enteros sin signo de 8, 16, 32 o 64 bits:
E = uint8(I)
E = uint16(I)
E = uint32(I)
E = uint64(I)
Para generar imágenes en escala de grises de 8 bits:
I1 = zeros(10,20,’uint8’)
I2 = 255 * ones(10,10,’uint8’)
X = [I1 I2]
imshow(X)
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. José C. Benítez P. 6
7. Entrada y salida de imágenes
3. Con las imágenes realizar lo siguiente:
Grabar con otro nombre para conservar el original.
imwrite(I,filename)
Leer los archivos creados para verificar.
I = imread('your_image.bmp');
Mostrar todas las imágenes en una ventana para
verificar su contenido.
subplot(2,2,1), imshow(I1);
subplot(2,2,2), imhist(I2);
subplot(2,2,3), imshow(I3);
subplot(2,2,4), imhist(I4);
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. José C. Benítez P. 7
8. Propiedades de las imágenes
4. Con todas las imágenes realizar lo siguiente:
Verificar el tamaño de cada imagen
[Rows, Cols, RGB] = size(I)
Verificar el tipo de dato de cada imagen
C = class(I)
Verificar datos de cada imagen
imfinfo(‘imagen1.bmp’)
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. José C. Benítez P. 8
9. Conversión de imagen de colores a
escala de grises
5. Obtener 08 imágenes de internet diferentes de contenido:
• Una de 76,800 pixels, de dimensiones 320x240 de color.
• La otra de 38,400 pixels, de dimensiones 160x120 de
color.
Cada una de:
a. de 8 bits.
b. de 16 bits.
c. de 32 bits.
d. de 64 bits.
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. José C. Benítez P. 9
10. Para operar los pixeles de las imágenes
Recordar que:
Para convertir cada pixel a double
D = double(I)
Para convierte cada pixel de una imagen a enteros
sin signo de 8 y 16 bits respectivamente:
E = uint8(I)
E = uint16(I)
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. José C. Benítez P. 10
11. Transformaciones básicas
Con todas las imágenes realizar lo siguiente:
Cambio de tamaño:
Reducir cada imagen a la mitad
I = imread('imagen.ext');
Mostrar la imagen original, la imagen reducida, y el
resultado de imresize(I, 0.5) en una ventana
subplot(3,1,1), imshow(I1);
subplot(3,1,2), imshow(I2);
subplot(3,1,3), imshow(I3);
Rotación:
Rotar cada imagen 60 grados.
Mostrar la imagen original, la imagen reducida, y el
resultado de imrotate(I, 60) en una ventana
subplot(3,1,1), imshow(I1);
subplot(3,1,2), imshow(I2);
subplot(3,1,3), imshow(I3);
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. José C. Benítez P. 11
12. Histograma
Con todas las imágenes realizar lo siguiente:
Histograma de una imagen:
1500
I = imread('imagen.ext'); 1000
Mostrar la imagen original, el histograma, y el 500
resultado de imhist(I) en una ventana 0
0 50 100 150 200 250
subplot(3,1,1), imshow(I1);
subplot(3,1,2), imshow(I2); 2000
1500
subplot(3,1,3), imshow(I3); 1000
500
Ecualización de una imagen: 0
0 50 100 150 200 250
I = imread('imagen.ext');
Mostrar la imagen original, la ecualizada, y el resultado
de histeq(I) en una ventana
subplot(3,1,1), imshow(I1);
subplot(3,1,2), imshow(I2);
subplot(3,1,3), imshow(I3);
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. José C. Benítez P. 12
13. Ajuste de imágenes
Con todas las imágenes realizar:
Ajuste de brillo de imágenes
I = imread('imagen.ext');
Mostrar la imagen original, la brillante en un
25%, y el resultado de imadjust(G,[0 1],[0.2 1],1) 1500
1000
y los tres histogramas en una ventana : 500
subplot(3,2,1), imshow(I1); 0
subplot(3,2,2), imshow(I2); 0 50 100 150 200 250
subplot(3,2,3), imshow(I3); 2000
subplot(3,2,4), imshow(I1); 1500
subplot(3,2,5), imshow(I2); 1000
subplot(3,2,6), imshow(I3); 500
0
0 50 100 150 200 250
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. José C. Benítez P. 13
14. Ajuste de imágenes
Con todas las imágenes realizar:
Ajuste de contraste de imágenes
I = imread('imagen.ext');
Mostrar la imagen original, la brillante en un 25%, y el
resultado de imadjust(G,[0.3 1],[0 1],1); y los tres
histogramas en una ventana : 1500
subplot(3,2,1), imshow(I1); 1000
subplot(3,2,2), imshow(I2); 500
subplot(3,2,3), imshow(I3); 0
0 50 100 150 200 250
subplot(3,2,4), imshow(I1); 10000
subplot(3,2,5), imshow(I2); 8000
6000
subplot(3,2,6), imshow(I3); 4000
2000
0
0 50 100 150 200 250
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. José C. Benítez P. 14
15. Conversión de imagen de color a escala
de grises
Con cada imagen mediante cada uno de los algoritmos de
conversión de imágenes de colores a escala de grises
(Lightness, Luminosity y Average), realizar las
conversiones.
Mostrar en una ventana la imagen original, las 03 escalas
de grises y el resultado de aplicar rgb2gray(I) en Matlab:
subplot(3,2,1), imshow(I1);
subplot(3,2,2), imhist(I2);
subplot(3,2,3), imshow(I3);
subplot(3,2,4), imshow(I4);
subplot(3,2,5), imhist(I5);
Compare y comente los resultados.
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. José C. Benítez P. 15
16. Binarización de la imagen
Con todas imágenes de cada formato
realizar lo siguiente:
Binarización.
I = imread('imagen.ext');
Mostrar la imagen original, la binaria con umbral
60% del valor máximo de pixel, y el resultado de
im2bw(I,150/256) y los tres histogramas en una
ventana :
subplot(3,2,1), imshow(I1);
subplot(3,2,2), imshow(I2);
subplot(3,2,3), imshow(I3);
subplot(3,2,4), imshow(I1);
subplot(3,2,5), imshow(I2);
subplot(3,2,6), imshow(I3);
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. José C. Benítez P. 16
17. Informe
Terminado el laboratorio en la semana siguiente se
debe presentar el informe de laboratorio completo
con todas las fuentes y el informe en USB; y sólo el
informe impreso en folder de color AZUL.
Presentar el informe de laboratorio con el
desarrollo de todos los ejercicios y preguntas de
esta clase.
El informe debe ser básicamente un documento
grafico en lo posible.
Lo mas importante de un informe de laboratorio sus
conclusiones, recomendaciones y observaciones.
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. José C. Benítez P. 17
18. Presentación
Todas las fuentes y el Informe deben presentarse en USB,
dentro de una carpeta que lleve las iniciales del curso, sus
Apellidos, guion bajo y luego el numero de laboratorio.
Ejemplo:
PDI_BenitezPalacios_L2
Si se utilizan fuentes, deben conservar el nombre original y
agregar _tema.
Las Tareas que no cumplan las indicaciones
no serán recepcionados por el profesor.
Procesamiento Digital de Señales - Prof. Ing. Jose C. Benitez P. 18
19. Agradecimiento
http://utppdiyva.blogspot.com
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. José C. Benítez P. 19