Sunteți pe pagina 1din 7

UNIVERSIDAD TECNOLÓGICA DEL PERÚ

FACULTAD DE INGENIERÍA DE SISTEMAS Y ELECTRONICA

Curso : PROCESAMIENTO DIGITAL DE IMAGENES

Docente : ING. ITAMAR SALAZAR REQUE

Laboratorio : 1

Alumno : MIGUEL NATALIO ZEÑA SANTIBAÑEZ

CODIGO : 1420506

Fecha : Domigo 01 de setiembre del 2019


LABORATORIO 01
Procesamiento Digital de Imágenes
El presente laboratorio consta de 6 partes, el laboratorio será presentado en formato pdf o
word. Toda la información debe estar en el PDF o WORD enviado, no se aceptará información
extra como códigos, imágenes, etc.
Fecha y hora de entrega: Domingo 01 de Setiembre hasta las 5pm.

Adquisición y formación de una imagen.


1. (4 puntos) Lea la imagen a color RGB tissue.png usando el comando: imread() y
responda las siguientes preguntas:
a. Obtenga los valores R, G y B de los píxeles ubicados en:
i. Fila 62, columna 38.
Los valores son R= 237, G=255, B=255

ii. Fila 281, columna 441.


Los valores son R=125, G=73, B=34

iii. Fila 316, columna 676.


Los valores son R=110, G=97, B=177

b. En clase se explicó que los distintos valores R, G y B denotaban la contribución


de dicho color en el color final. Es decir, si teníamos para un píxel R = 220, G
= 220 y B = 50. El color probablemente sería amarillo, pues tiene alta presencia
de R (rojo) y G (verde). Basado en los valores obtenidos para los 3 píxeles en
a), diga usted a qué color pertenece cada uno de los 3 píxeles. Justifique
brevemente su respuesta. (máximo 2 líneas por pixel)

- El pixel R=220 pertenece al color rojo, el cual es un color primario y tiene una intensidad de
220 y está más cerca al 255 que es el color rojo en su máxima intensidad.
- El pixel G=220 pertenece al color verde, el cual es un color primario y tiene una intensidad
de 220, se encuentra más cerca al 255 que es el color verde en su máxima intensidad.
- El pixel B=50 pertenece al color azul, el cual es un color primario y tiene intensidad de 50,
se encuentra más cerca al 0 que es su mínima intensidad y está más cerca al negro.

Usando el comando imagesc.


2. (6 puntos) Convierta la imagen RGB de 1) a escala de grises usando el comando
rgb2gray().
a. Muestre la imagen en escala de grises usando los siguientes comandos:
(ordenar en máximo 1 hoja)
i. figure, imagesc()
ii. figure, imagesc(), axis image
iii. figure, imagesc(), axis image, axis off,
iv. figure, imagesc(), axis image, axis off, colormap summer
v. figure, imagesc(), axis image, axis off, colormap summer, colorba
a) Imagen a escala grises con rgb2gray() i. figure, imagesc()

ii. figure, imagesc(), axis image iii. figure, imagesc(), axis image, axis off,

iv. figure, imagesc(), axis image, axis off, v. figure, imagesc(), axis image, axis off,
colormap summer colormap summer,colorbar
b. Comente brevemente:
i. Diferencia entre a.ii) y a.i) (máximo 1 línea)
La i) muestra la imagen escalada completa en cambio ii) establece la relación de escala entre ejes.
ii. Diferencia entre a.iii) y a.ii) (máximo 1 línea)
La ii) muestra la relación de escala entre ejes en cambio iii) no muestra la escala.
iii. Diferencia entre a.iv) y a,iii). (máximo 1 línea)
La imagen iv) nos muestra un color de verano en cambio la iii) no.
iv. ¿Qué está haciendo colormap summer? (máximo 1 línea)
Esta que cambia el color de imagen a color de verano entre amarillo y verde.
v. ¿Qué pasa si en vez de escribir colormap parula escribimos colormap
winter? * (máximo 1 línea
La imagen que nos muestra es en base al color azul y verde.
vi. ¿Qué hace colorbar? (máximo 1 línea)
Colorbar nos muestra una barra de colores vertical a la derecha de la imagen.

Diferencia entre imshow e imagesc


3. (3 puntos) Re-escale los valores de la imagen a escala de grises para que el máximos
valor ya no sea 255 sino 32, el mínimo valor seguirá siendo 0.
a. Muestre la imagen con valores reescalados a máximo 32, usando los siguientes
comandos (ordenar en máximo media hoja)
i. figure, imshow(); colorbar
ii. figure, imagesc(); axis image; axis off; colormap gray, colorbar

b. Comente brevemente
i. ¿Por qué una imagen aparece más oscura que la otra? ¿Cuál es la diferencia entre
imshow() e imagesc()? (máximo 2 líneas)
La primera imagen está en rango de colores de 0 a 255, mientras que la segunda imagen esta solo de 0
a 32. Con imshow se mantiene la imagen en tamaño original mientras que el imagesc te muestra la
imagen a escala por defecto.

Función propia del modelo de color HSV


4. (4 puntos) El modelo de color HSV es una transformación del modelo de color RGB
que normalmente usamos. MATLAB tiene implementado su función rgb2hsv. En el
laboratorio se pidió que implementara la suya teniendo como referencia las
ecuaciones vistas en clase.
a. Implemente su propia función (digamos que su función se llama hsv_propia ) para pasar de
rgb a hsv. La función deberá pedir 3 entradas (r, g y b) y deberá devolver 3 salidas (h, s y
v). Pruebe que su función (hsv_propia) y la función de MATLAB obtiene resultados muy
similares con los siguientes valores. **
i. hsv_propia(0.3,0.4,0.5) y rgb2hsv(0.3,0.4,0.5) (máximo 1 línea)

Con la función sale h=0.41, s=0.4 , v=0.5 mientras con el comando me sale h=0.58, s=0.4,
v=0.5.

ii. hsv_propia(0.1,0.1,0.1) y rgb2hsv(0.1,0.1,0.1) (máximo 1 línea)

Con la función sale h=NaN, s=0 v=0.1 mientras con el comando me sale h=NaN, s=0, v=0.1.

iii. hsv_propia(0, 0, 0) y rgb2hsv(0, 0, 0) (máximo 1 línea)

Con la función sale h=NaN, s=NaN,v=0 mientras con el comando me sale h=NaN, s=NaN, v=0.
Muestre un pantallazo del código de su función propia. (máximo media hoja)

** Observe que cuando r=g=b MATLAB hace h=0 y s=0. Haga lo mismo para evitar que
salgan valores NaN.

Calcule el error entre los resultados obtenidos

i. Reste el h obtenido de hsv_propio con el h obtenido de rgb2hsv para los valores: 0.32,
0.45 y 0.57. ¿Cuál es el error? (máximo 1 línea)
H propio es 0.5797 y H con commando es 0.5800; el error es de 0.051%.

ii. Reste el s obtenido de hsv_propio con el s obtenido de rgb2hsv para los valores: 0.32,
0.45 y 0.57. ¿Cuál es el error? (máximo 1 línea)
S propio es 0.4386 y S con comando es 0.4386; el error es 0%.

iii. Reste el v obtenido de hsv_propio con el v obtenido de rgb2hsv para los valores: 0.32,
0.45 y 0.57. ¿Cuál es el error? (máximo 1 línea)
V propio es 0.57 y V con comando es 0.57, el error es 0%.

Atentamente,
Docente: Itamar Franco Salazar Reque

S-ar putea să vă placă și