Está en la página 1de 3

VISIN ARTIFICIAL - PRCTICA NO 2

HISTOGRAMA DE UNA IMAGEN Y TRANSFORMACIONES LINEALES BSICAS

Profesor: Carlos Andrs Mera Banguero


Periodo: Agosto Diciembre de 2015
Universidad: Universidad Nacional de Colombia, Sede Medelln

CONTENIDO
El Histograma de una Imagen ............................................................................................................................. 1
Transformacin Lineal de Imgenes ................................................................................................................... 2
Transformacin Lineal de Imgenes (Codificacin ) ......................................................................................... 2

EL HISTOGRAMA DE UNA IMAGEN


Una de las herramientas que ayuda a determinar qu tipo transformacin se debe aplicar a una imagen es el
histograma. Matlab provee una funcin que ayuda a calcular el histograma de una imagen y adems proporciona
otras funciones que ayudan a mejorar su calidad transformando el histograma.

1. Lea las imgenes img1.jpg, img2.png e img3.jpg en las variables img1, img2 e img3,
respectivamente.

2. Convierta las imgenes a tonos de gris (rgb2gray) y almacnelas en las variables img1g, img2g e img3g.

3. Use la funcin imhist para visualizar el histograma de las 3 imgenes en niveles de gris. Nota: este comando
NO funciona directamente con imgenes a color.

4. Describa cada uno de los histogramas mostrando la relacin de lo que ve en el histograma con el contenido de
cada imagen. Hay alguna relacin entre el histograma y la imagen?.

5. Para visualizar el histograma de la imagen a color se debe hacer lo siguiente:


R = img3(:,:,1);
G = img3(:,:,2);
B = img3(:,:,3);
[yR, x] = imhist (R);
[yG, x] = imhist (G);
[yB, x] = imhist (B);
plot(x, yR, 'Red', x, yG, 'Green', x, yB, 'Blue');

6. Es una mala eleccin mostrar los histogramas de los tres planos en una sola imagen como la anterior?,
Explique su respuesta.

7. Hay diferencias substanciales entre el histograma de la imagen a color y la imagen en niveles de gris?, si los
hay, Explique a qu se debe esta diferencia.

1
TRANSFORMACIN LINEAL DE IMGENES
Identifique qu transformacin lineal fue usada para crear cada una de los cuatro resultados de la siguiente
imagen.

1. Escriba el cdigo en Matlab de cada una de las operaciones identificadas para reproducir el resultado (Use
como gua la comparacin entre el histograma de la imagen original y el histograma de la imagen resultante).

2. Usando el comando subplot, compare los histogramas de las imgenes dadas (R1, R2, R3 y R4) con los
obtenidos con sus transformaciones e indique en cuales hubo resultados similares y en cuales resultados
exactos.

Imagen Original

Resultado 1 Resultado 2 Resultado 3 Resultado 4

TRANSFORMACIN LINEAL DE IMGENES (CODIFICACIN )


Una transformacin lineal altera la imagen reemplazando el valor de cada pxel por un nuevo valor que solo
depende de ese pxel en esa imagen. As, la imagen se transforma en la imagen siguiendo la ecuacin:

(, ) = (, ) +

1. Implemente en Matlab una funcin llamada transformacionLineal que codifique este tipo de
transformacin. La firma de la funcin debe ser la siguiente:

function G = transformacionLineal(I, a, b)

2. Use las imgenes img3.jpg e img4.png para probar su funcin. Encuentre una combinacin de valores de a y
b que permitan mejorar la visualizacin de la imagen. Defina esos valores usando el histograma de las imgenes
y explique cmo le ayud el histograma y la intuicin para definirlos.

2
3. Desarrolle una funcin que dada una imagen a color retorne una imagen en color en el que en cada cuadrante
se muestre el contenido de un canal y en el ltimo cuadrante la parte correspondiente a color.

La firma de la funcin debe ser la siguiente:

function G = img2canalTransformation(I)

También podría gustarte