Está en la página 1de 15

DESARROLLO

%% %1 - a Visualizar la imagen magrisuave.jpg y su histograma. magrisuave=imread ('magrisuave.jpg');%lee la imagen figure()%es el titulo de la ventana ya sea uno o dos,etc image(magrisuave) %despliega la imagen colormap(gray(256))% pasa la imagen rgb a escala de grises axis image %ajusta las dimensiones de la imagen por defecto title('Imagen magrisuave.jpg');%titulo que aparecera al desplegar la imagen figure() imhist(magrisuave)%despliega el histograma de la imagen title('Histograma de imagen magrisuave.jpg')%titulo que aparece al desplegar el histograma de la imagen

%1 - b Visualizar la funcin de transformacin para ampliar el contraste de la imagen bajocontraste=double(magrisuave)%se transforma a double la imagen para poder hacer operaciones a=min(bajocontraste(:))%te da el minimo valor por pixel de la imagen b=max(bajocontraste(:))%te da el maximo valor por pixel de la imagen

m=255/(b-a);%dividir la cantidad de grises (255) entre la diferencia de los valores maximos (b) menos los minimos(a) nivel=a:b %crea una matriz lineal que va del valor de a hasta el valor de b, del 71 al 189 g=round(m*(nivel-b)+255) %hace la operacin y lo redondea figure plot (nivel, g) %despliega una grafica tomando los valores de nivel (x) y g (y), los cuales son matrices title('Funcion de transformacion lineal') grid%para hacer una cuadricula en la grafica

%% %1 - c Aplicar la funcin de transformacin a la imagen y visualizar la imagen resultante y su histograma: altocontraste=m*(bajocontraste-b)+255; %crea una nueva matriz usando la matriz de bajo contraste altocontraste=uint8(round(altocontraste)); %Redondea los valores de la matriz de alto contrste y los convierte a 8 bits figure image(altocontraste) colormap(gray(256)) axis image title('Ampliacion de contraste'); figure imhist(altocontraste)%despliega el histograma

title('Histograma ampliacion contraste') %Mejora el contraste

%% %Binarizacion A=imread('globulosRGB.jpg'); B=rgb2gray(A);%convierte una imagen rgb a grises C=im2bw(B);figure();imshow(C)%binarizacin figure();imshow(B) D=im2bw(B,0.3);figure();imshow(D) D=im2bw(B,.9);figure();imshow(D)

figure();imhist(B)

figure();imhist(C)

%% %2 - a Posterizacion intestino=imread('intestino.jpg'); figure image(intestino)%despliega la imagen colormap(gray(256)) grisesnuevos=0:(255/4):255;%Crea una matriz de 63.75 a 255 que va de pertenencia=zeros(1,256);%crea una matriz de ceros con una fila y 256 columnas vector=zeros(1,5);%se crea una matriz de ceros con una fila y 5 columnas %Se crea una matriz llamada pertenencia de 256 y se divide en 5 grupos con los valores %de la matriz grises nuevos for i=0:255 for j=1:5 vector(j)=abs(i-grisesnuevos(j)); end temp=find(vector==min(min(vector))); pertenencia(i+1)=grisesnuevos(temp); end

grises=0:255;%se crea una matriz de 0 a 255 figure plot(grises,pertenencia)%despliega una grafica con los valores de grises en el eje x %y la pertenencia en el eje y axis([0 255 0 255]) %Se le dan valores a la matriz posterizada usando los valores de la matriz pertenencia %cuyo valor usado sera designado por el valor que haya en la matriz intestino mas 1 [m n]=size(intestino); posterizada=zeros(size(intestino)); for i=1:m for j=1:n posterizada(i,j)=pertenencia(intestino(i,j)+1); end end figure imagesc(posterizada) colormap(gray) figure imhist(uint8(posterizada))

%% %Correccion Gamma %Hace que se vea ms clara la imagen intestino=imread('intestino.jpg'); figure imshow(intestino) c=double(intestino).^(1/0.5);%formula que va obscurecer la imagen con un valor de 0.5 con contraste figure imagesc(c) colormap(gray(256))

c=double(intestino).^(1/2);%aqui va aclarar la imagen con un valor de 2 con contraste figure imagesc(c) colormap(gray(256))

%% %B)Imgenes con ruido conruido = imread('neuronarat.jpg'); M = 0 %le da mas brillo a la imagen, 1 es blanco y 0 es negro V = 0.06 %valor para poner mas ruido o menos ruido de 0 a 1 J = imnoise(conruido,'gaussian',M,V) figure imshow(J) figure imshow(conruido)

%% %C)Transformacion logaritmica %El logaritmo le da mayor resolucion a los valores pequeos A= imread('neuronarat.jpg'); figure();imshow(A); figure();imhist(A); logA=log(double(A)+1);%se saca el logaritmo de todos los grises que se tienen %mas uno g= max(logA(:))%Valor maximo de los valores de la matriz A C = 255/g %Se saca la constante dividiendo los 255 valores de grises entre g imagennueva=C*logA; figure();imshow(uint8(imagennueva))

%% %D)Marca de agua load('Lena.mat')%Cargar el archivo Lena y marca load('marca.mat') Marca=uint8(Marca)%Transformas marca a un entero ME=Marca+Lena%Sumas Marca y Lena para juntar ambas imagenes imshow(ME) save('elena_marca.mat','ME')

INTRODUCCION Histograma El histograma de una imagen contiene el nmero de pxeles que tienen el mismo nivel de gris. (Probabilidad de que un determinado nivel de gris aparezca en la imagen). En general se representa como un grfico de barras en el que las abcisas son los distintos colores de la imagen y las ordenadas la frecuencia relativa con la que cada color aparece en la imagen. El histograma proporciona informacin sobre el brillo y el contraste de la imagen, y puede ser utilizado para ajustar estos parmetros, eliminar ciertas tonalidades molestas, etc . El contraste mide, en cierto modo, el rango dinmico de los colores en la imagen, es decir, una imagen muy contrastada tiene un amplio abanico de colores (o tonos de gris) desde valores muy bajos a valores muy altos. Para una imagen con poco contraste los colores estn muy juntos, el margen dinmico es pequeo. Expansin de contraste Le da ms resolucin a una parte de una imagen.

La funcin representada en esta grfica tiene la forma s=T(r)=1/(1+(m/r)E) donde r representa las intensidades de la imagen de entrada, s los valores correspondientes de intensidad en la imagen de salida, y E controla la pendiente de la funcin (en el ejemplo, E=20). Correccin Gamma Hace ms clara la imagen. S=Cr Donde c es una constante, r la cantidad de grises y es el valor de que tan oscuro o claro se quiere hacer la imagen.

Transformacin Logartmica Le da ms resolucin a los valores pequeos. g = c * log(1 + r)

donde c es la constante que se obtiene dividiendo el numero de valores de grises entre el mximo logaritmo de todos los grises que se tienen en la imagen.

Posterizacin La posterizacin de una imagen es la reduccin de su gama tonal a unos pocos colores planos, uniformes.

BIBLIOGRAFIA http://www.slideshare.net/omarspp/imagen-e-histograma http://imagenes-uisrael.blogspot.mx/2010/05/histograma.html http://www.tsc.uc3m.es/imagine/Curso_ProcesadoBasico/Contenido/Operaci onesPuntuales/OperacionesPuntuales.html http://www.quesabesde.com/camdig/articulos.asp?articulo=154

CONCLUSION Esta prctica nos permiti a travs de funciones mejorar una imagen de manera simple y ms precisa. Adems, nos enseo a desplegar el histograma, el cual, nos permite saber cuantos valores de cada gris hay en mi imagen, y con ayuda de estos datos nos percatamos de que tan clara u obscura se ve mi imagen. Entre la funciones utilizadas estn: la correccin gamma, que nos permite corregir una imagen obscura, la funcin logartmica, que nos ayudo a iluminar los valores ms pequeos para dar un mejor contraste a mi imagen, la posterizacin, nos proporciona un efecto a la imagen, la binarizacin, cambia la imagen a blanco y negro, y la expansin del contraste, que mejora la resolucin de mi imagen.

También podría gustarte