inspiración ma fernanda-hw2 pdi

17
Universidad de Concepción Facultad de Ingeniería Departamento de Ingeniería Eléctrica DIE Tarea Nº 2 Filtrado de Imágenes Procesamiento Digital de Imágenes [547501-0] I-2008 Nombre : Carlos Ulloa Sierpe Profesor : Eligio Amthauer Sergio Torres Fecha de Entrega : 16 de junio de 2008

Upload: api-27057872

Post on 07-Jun-2015

502 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Inspiración Ma Fernanda-hw2 pdi

Universidad de Concepción Facultad de Ingeniería Departamento de Ingeniería Eléctrica DIE

Tarea Nº 2 Filtrado de Imágenes

Procesamiento Digital de Imágenes [547501-0]

I-2008

Nombre : Carlos Ulloa Sierpe Profesor : Eligio Amthauer

Sergio Torres Fecha de Entrega : 16 de junio de 2008

Page 2: Inspiración Ma Fernanda-hw2 pdi

Tarea 2 - Encabezado Procesamiento Digital de Imágenes

DESARROLLO TAREA 2

I. Selecciones, según su propio criterio una imagen que contenga frecuencias espaciales altas, medias y bajas.

Informe brevemente sobre el proceso

II.Redúzcala a una imagen de 512 x 512 píxeles en 256 niveles de gris, por el método (software) que considere más adecuado. Informe sobre la imagen y haga un breve análisis de ella y las frecuencias espaciales presentes en dicha imagen.

III.Realice un filtrado pasabajo mediante un filtro promediador. Seleccione el orden y los parámetros del filtro según su propio criterio. Realice un primer filtrado con una aplicación del filtro y un segundo filtrado con varias (más de 3) aplicaciones del filtro. Obtenga el módulo de la transformada de Fourier para la imagen original y la imagen filtrada repetidamente. Informe sobre diferencias observables en la imagen y en su transformada de Fourier.

IV.Repita lo anterior para un filtro de mediana.

V.Efectúe una detección de bordes mediante un detector de Sobel y uno de Prewitt. Informe haciendo un análisis comparativo de ambos casos. NOTA: En los análisis visuales de las imágenes, es posible que no se observen diferencias notables. En tal caso no trate de forzar los comentarios. Decir “no se observan diferencias” es válido cuando esto es evidente. Entregar: Un informe escrito con la información solicitada, incluyendo las imágenes en niveles de Gris. Entregar además, copia del informe en formato PDF en un CD anexo al informe escrito

Page 3: Inspiración Ma Fernanda-hw2 pdi

Tarea 2 - Desarrollo Procesamiento Digital de Imágenes

I. Selecciones, según su propio criterio una imagen que contenga frecuencias espaciales altas, medias y bajas.

Filtrado Espacial El filtrado espacial es la operación que se aplica a una imagen para resaltar o atenuar detalles espaciales con el fin de mejorar la interpretación visual o facilitar un procesamiento posterior, y constituye una de las técnicas comprendidas dentro del realce de imágenes. Ejemplos comunes incluyen aplicar filtros para mejorar los detalles de bordes en imágenes, o para reducir o eliminar patrones de ruido. El filtrado espacial es una operación "local" en procesamiento de imagen, en el sentido de que modifica el valor de cada píxel de acuerdo con los valores de los píxeles que lo rodean; se trata de transformar los niveles de gris originales de tal forma que se parezcan o diferencien más de los correspondientes a los píxeles cercanos. Frecuencia Espacial La frecuencia espacial define la magnitud de cambios en el nivel de gris por unidad de distancia en una determinada zona de la imagen. Las áreas de la imagen con pequeños cambios o con transiciones graduales en los valores de los datos se denominan áreas de bajas frecuencias. Las áreas de grandes cambios o rápidas transiciones se conocen como áreas de altas frecuencias (por ejemplo, los bordes). Así, los filtros espaciales se pueden dividir en tres categorías: Filtros pasa bajos: enfatizan las bajas frecuencias, suavizando las imágenes y atenuando ruidos. Se trata de asemejar el nivel de gris de cada píxel al nivel de gris de los píxeles vecinos, reduciendo la variabilidad espacial de la imagen. Ello produce un borroneado de los bordes, perdiéndose en nitidez visual de la imagen, pero ganando en homogeneidad. Filtros pasa altos: enfatizan las altas frecuencias, para mejorar o afilar las características lineales como los límites en general. Realizan por tanto el efecto contrario a los filtros pasabajos, eliminando las bajas frecuencias. Filtro detectores de bordes: realizan otro tipo de operaciones con los píxeles, pero siempre con el resultado de enfatizar los bordes que rodean a un objeto en una imagen, para hacerlo más fácil de analizar. Estos filtros típicamente crean una imagen con fondo gris y líneas blancas y negras rodeando los bordes de los objetos y características de la imagen. Luego para saber si una imagen tiene una frecuencia espacial óptima para el tipo el ejercicio a realizar de debe obtener el modulo de la transformada de fourier, en el que se puede apreciar los distintos niveles de frecuencia de una imagen, siendo este mayor al tener un número de puntos (los que representan magnitudes de frecuencias) mas dispersos, además se puede decir que mientras las frecuencias mas altas se encuentran en los bordes del módulo y mientras mas se acerca al centro de la gráfica significa que son frecuencias

Page 4: Inspiración Ma Fernanda-hw2 pdi

Tarea 2 - Desarrollo Procesamiento Digital de Imágenes

mas bajas, luego para encontrar una imagen que contenga frecuencias espaciales altas, medias y altas debe haber un número de puntos lo mas disperso posible en la grafica. Se probó un set de imágenes para verificar cual de ellas puede tener un espectro de frecuencias mas útil. Estas imágenes se muestran a continuación:

Figura 1: Imágenes 1, 2, 3 y 4

Al hacer el análisis del Modulo de Transformada de Fourier de estas cuatro imágenes es posibles apreciar como están distribuidas espacialmente sus frecuencias, como se aprecia en la Figura 2. Es posible deducir que las imágenes 2 y 4 la densidad espectral es inferior a las imágenes 1 y 3 debido que no ocupan todo el espectro existente de frecuencias habiendo un mayor número de módulos de baja frecuencia y según avanza en los bordes se hace casi nulo en ambos casos. Por otra parte, la imagen 1 presenta una densidad homogénea en casi todo el espectro de frecuencias posibles, pero a la vez no tan densa como la imagen 3 sobre todo en las frecuencias más altas, también hay que tener presente que la imagen 3 tiene una densidad inferior en los bordes, luego hay que decidir cual es la mas apropiada.

Page 5: Inspiración Ma Fernanda-hw2 pdi

Tarea 2 - Desarrollo Procesamiento Digital de Imágenes

Se elige la imagen 3 debido que es más exquisita para la detección de bordes en desmedro de la imagen 1, así diferenciar de mejor manera los bordes en la pregunta número 5.

Figura 2:Módulos de Transformada de Fourier de Imágenes 1, 2, 3 y 4 respectivamente

II. Reducción de Imagen Todas las imágenes usadas son de 512 x 512 píxeles, luego no se utilizó ningún tipo de reducción o en su defecto ampliación, pero para llevar a cabo esto solo de debe utilizar el siguiente script: clear all;close all; P=imread('image1.jpg'); P=rgb2gray(P); figure(6); P2 = imresize(P, [512 512]); %B = imresize(A, [mrows ncols]) imshow(P2); Acá se lee la imagen, se guarda en P, luego se pasa a escala de grises en la misma matriz, la imagen de prueba en este caso es de 375x500 píxeles que son almacenados de manera de datos en 256 niveles de gris. Finalmente se vuelve a leer los datos guardados en P con el comando imresize( ) y transformando

Page 6: Inspiración Ma Fernanda-hw2 pdi

Tarea 2 - Desarrollo Procesamiento Digital de Imágenes

ahora la imagen a una de 512x512 píxeles tal como se muestra en el código. Para mayor información ver ayuda de Matlab.

III. Filtrado pasabajo mediante un filtro promediad or.

Figura 3: Dos máscaras de 3x3 para realizar un filtrado pasabajos (suavizado, promediado)

El resultado de aplicar un filtro pasabajos a una imagen es simplemente el promediado de los píxeles contenidos en el vecindario (o entorno) de la máscara utilizada.

Figura 4: Imagen Original, Filtros 1, 2 y 3

Generalmente estos filtros se les utiliza para atenuar los detalles irrelevantes en una imagen. Otra de las utilidades del filtro pasabajos, aparte de las más obvia que es la atenuación del ruido, es el suavizado de los falsos contornos producidos por una cuantización con un número insuficiente de niveles de gris. El procedimiento básico del filtro pasabajos es reemplazar el valor de cada píxel en una imagen por el promedio de los niveles de gris del vecindario definido por la máscara.

Page 7: Inspiración Ma Fernanda-hw2 pdi

Tarea 2 - Desarrollo Procesamiento Digital de Imágenes

La figura 3 muestra dos máscaras (o núcleos) de 3x3. Usando la primera se tiene el promediado estándar de los píxeles abarcados por aquella. Se debe notar que, en lugar de ser 1/9, los coeficientes de la máscara son todos 1’s. Esto se hace así debido a que es más eficiente computacionalmente tener todos los coeficientes con el valor 1. Luego, la imagen completa se divide por 9 (o sea, por la suma de todos los coeficientes). La Figura 4 muestra primeramente a la imagen original a usar, luego el Filtro Nº 1 en donde se usa una máscara de (3x3), el Filtro Nº 2 con una máscara de (9x9) y finalmente el Filtro Nº 3 con una máscara (9x9) la que se le aplica el filtro 5 veces.

Figura 5: Módulos Transformadas de Fourier Filtros Promediador Pasabajos

Como se puede apreciar en la Figura 5, el Filtro Nº 1 representa el promedio estándar de los píxeles en la máscara ya mencionada. El Filtro Nº 2 se aprecia como se homogenizan los valores aun mas que el Filtro Nº 2 debido a que el filtro es mayor, luego en le Filtro Nº 3 tiene la misma máscara que el anterior pero el filtro es aplicado 6 veces, acá se ve la como la imagen queda suavizada de forma completa haciendo que los bordes sean muy atenuados haciendo más difícil de visualizar.

Page 8: Inspiración Ma Fernanda-hw2 pdi

Tarea 2 - Desarrollo Procesamiento Digital de Imágenes

IV. Filtro de Medianas El filtro de mediana, es el cual reemplaza el valor del píxel central por la mediana de los niveles de gris del vecindario de ese píxel (el valor original del píxel es incluido en el cálculo de la mediana). Los filtros de mediana son muy usados debido a que, para ciertos tipos de ruidos aleatorios, proveen una excelente reducción de ruido y un borroneado considerablemente menor que los filtros lineales de suavizado del mismo tamaño. Los filtros de mediana son particularmente efectivos cuando el ruido es del tipo impulso (también llamado ruido sal y pimienta) debido a que aparece como puntos negros o blancos sobrepuestos en la imagen. La mediana, ξ, de un conjunto de valores es aquella en la que la mitad de los valores en el conjunto son menores o iguales que ξ, y la otra mitad es mayor o igual a ξ. Por ejemplo, si en una imagen tomamos un conjunto de píxeles de 3x3 con valores {1, 9, 5, 0, 8, 7, 1, 2, 4} la mediana para este caso será el valor 4, ya que la mitad de este conjunto es menor (o igual) y la otra mitad es mayor (o igual) a éste: {0, 1, 1, 2, 4, 5, 7, 8, 9}. El procedimiento general para realizar el filtro de mediana en cualquier punto consiste en ordenar los valores de dicho píxel y los de su vecindario, determinar la mediana, y asignar éste último valor al píxel en cuestión. Para un vecindario de 3x3, la mediana es el 5to valor más grande; para uno de 5x5 es el 13mo valor más grande, y así. Cuando algunos valores en un vecindario son iguales, éstos se ven agrupados. Por ejemplo, supongamos que un vecindario de 3x3 tiene los valores {10, 20, 20, 20, 15, 20, 20, 25, 100}. Ordenando este conjunto nos queda {10, 15, 20, 20, 20, 20, 20, 25, 100}, de donde se ve que la mediana es 20. Así, la principal función de los filtros de mediana es hacer que los puntos con niveles de gris distintos sean más parecidos a los de su vecindario. En la figura 4 puede verse los efectos que produce el filtro de mediana en una imagen contaminada con ruido sal y pimienta, este ruido es que se ocupa en el programa presentado y el cual se desea eliminar de la mejor manera.

Page 9: Inspiración Ma Fernanda-hw2 pdi

Tarea 2 - Desarrollo Procesamiento Digital de Imágenes

Figura 6: Imagen original, Imagen mas ruido sal y pimienta, Filtros de mediana (3x3), (5x5),

(7x7), (10x10) En la Figura 7 se ve la imagen original seguida de la imagen con ruido sal y pimienta de valor en este caso 0,1, luego esta se filtra una vez en una máscara de 3x3, se vuelve a filtrar la imagen anterior pero con una máscara de 5x5, la imagen que queda nuevamente se filtra con una máscara de 7x7 y para finalizar se reitera el filtro a la última imagen con una máscara de 10x10. Se puede apreciar que los contornos y bordes no son suavizados tanto como en el caso de filtro pasabajos con promediadores siendo una mejor opción en comparación al caso anterior, finalmente a simple vista solo con un filtro de 3x3 se puede quietar el ruido sal y pimienta, con los siguientes se depura la imagen, perdiendo algo de contrastes y aumentando el brillo.

Page 10: Inspiración Ma Fernanda-hw2 pdi

Tarea 2 - Desarrollo Procesamiento Digital de Imágenes

Figura 7: Módulos Transformada de Fourier (MTF) Imagen original, Imagen mas ruido, Imagen

filtrada 1, 2, 3 y 4 veces. En las siguientes graficas se puede ver como en el caso sonde se le adhiere el ruido sal y pimienta se pierde la densidad de distribución espacial en comparación a la imagen original. a medida que se le aumentan los pasos de cada uno de los filtros vuelve a tomar valores similares a los que tenía al inicio de la imagen inicial. En el caso del filtro 5x5 es la gráfica mas similar a la inicial y su contraste también es parecido, luego a medida que aumentan el numero de filtro hay sectores que quedan sin densidad espectral lo que disminuye un mas el contraste y dando un aspecto mas luminoso o de claridad a la imagen, con esto de puede obtener una información diferente a la imagen original.

Page 11: Inspiración Ma Fernanda-hw2 pdi

Tarea 2 - Desarrollo Procesamiento Digital de Imágenes

V. Detectores de Sobel y Prewitt El Filtro Sobel y el Filtro Prewitt son filtros que trabajan con el operador gradiente, la idea general es que dentro de una vecindad de píxeles se encuentre la mayor pendiente, luego esa será la mayor diferencia, de esta manera se detectan los bordes, este utiliza dos mascaras o filtros los cuales uno detecta los bordes verticales y el otro los horizontales, para obtener los bordes completos se realiza la suma de las imágenes que nos resultaron con los bordes verticales y horizontales. Otro filtro para la detección de bordes es Prewitt, el cual consta de 8 matrices, que se aplican píxel a píxel en la imagen y luego se suman las imágenes para obtener los bordes bien marcados. El filtro de Prewitt, marca muy bien los bordes, ya que sus matrices atacan estos de seis lados diferentes, en general cada matriz toma el nombre de un punto cardinal: Norte, Sur, Este, Oeste, Noroeste, Noreste, Suroeste, Sureste. Las respectivas matrices son:

1 1 1

1 2 1

1 1 1

E

− − = − −

1 1 1

1 2 1

1 1 1

N

− − − = −

1 1 1

1 2 1

1 1 1

NE

− − = − −

1 1 1

1 2 1

1 1 1

O

− = − − −

1 1 1

1 2 1

1 1 1

E

− = − − −

1 1 1

1 2 1

1 1 1

E

= − − − −

1 1 1

1 2 1

1 1 1

S

= − − − −

1 1 1

1 2 1

1 1 1

NE

= − − − −

Figura 8: Matrices de Prewitt Para este caso se utiliza la detección de bordes no con las matrices vistas en la Figura 8, sino que con las siguientes matrices.

1 1 11

0 0 03

1 1 1

fprewitt h

− − − − = ⋅

1 0 11

1 0 13

1 0 1

fprewitt v

− − = − ⋅ −

Figura 9: Matrices de Prewitt utilizadas en el filtro programado El filtro Sobel tiene la ventaja de que proporciona un suavizado además del efecto de derivación. Ya que la derivación acentúa el ruido, el efecto de suavizado es particularmente interesante, puesto que elimina parte del ruido. El requisito básico de un operador de derivación es que, el que en el que la suma de los coeficientes de la máscara sea cero.

Page 12: Inspiración Ma Fernanda-hw2 pdi

Tarea 2 - Desarrollo Procesamiento Digital de Imágenes

Finalmente para el programa utilizado se hace la convolución de las de las matrices horizontales con las verticales tanto en el filtro Sobel como en el Prewiit, luego se obtiene:

* *dh A fprewitt h A fsobel h= − ∨ −

* *dv A fprewitt v A fsobel v= − ∨ − 2 2

2prewiett sobel

dh dvd ∨

+=

Con A matriz de 512x512, * es la función convolución. Luego d queda una matriz de 512x512 con la detección de borne de manera de un arreglo escalar.

1 2 11

0 0 04

1 2 1

fsolve h

− − − − = ⋅

1 0 11

2 0 24

1 0 1

fsolve v

− − = − ⋅ −

Figura 9: Matrices de Sobel horizontal y vertical En la Figura 10 se pueden apreciar la detección de bordes de los dos filtros anteriormente explicados, al ver las 2 detecciones no se evidencia a simple vista una diferencia mayor entre las dos imágenes, pero viendo las imágenes mas en detalles la detección de bordes de Sobel es ligeramente superior en cuanto a errores ya que atenúa ciertos sectores en donde no hay bordes sino mas bien ruido, pero de todos modos es mínima la diferencia. .

Figura 10: Imagen Original, Detector de Bordes Sobel y Detector Prewitt

Page 13: Inspiración Ma Fernanda-hw2 pdi

Tarea 2 - Desarrollo Procesamiento Digital de Imágenes

Page 14: Inspiración Ma Fernanda-hw2 pdi

Tarea 2 - Anexo Procesamiento Digital de Imágenes

ANEXO

Pregunta I clear all;close all %%%%%%%%% Imagen 1 %%%%%%%%%%%%%%%%%%% g8=[0:255]'*[1 1 1]/255; P1=imread('4.jpg'); P1_=rgb2gray(P1); g256(1:256,1)=linspace(0,1,256)'; [N,M]=size(P1_);N2=floor(N/2);M2=floor(M/2); Pf1=fft2(P1_); %%%%%%%%%%%%%% Imagen 2 %%%%%%%%%%%%%%%%%%% g8=[0:255]'*[1 1 1]/255; P2=imread('pperu.jpg'); P2_=rgb2gray(P2); g256(1:256,1)=linspace(0,1,256)'; [N,M]=size(P2_);N2=floor(N/2);M2=floor(M/2); Pf2=fft2(P2_); %%%%%%%%%%%%% Imagen 3 %%%%%%%%%%%%%%%%%%%%% g8=[0:255]'*[1 1 1]/255; P3=imread('bebe2.jpg'); P3_=rgb2gray(P3); g256(1:256,1)=linspace(0,1,256)'; [N,M]=size(P3_);N2=floor(N/2);M2=floor(M/2); Pf3=fft2(P3_); %%%%%%%%%%%% Imagen 4 %%%%%%%%%%%%%%%%%%% g8=[0:255]'*[1 1 1]/255; P4=imread('thno.jpg'); P4_=rgb2gray(P4); g256(1:256,1)=linspace(0,1,256)'; [N,M]=size(P4_);N2=floor(N/2);M2=floor(M/2); Pf4=fft2(P4_); %%%%%%%%%%%%% Garfica de Imagenes %%%%%%%%%%% figure(1); subplot(2,2,1) image(P1_);colormap(g8);axis image;title('Imagen 1') subplot(2,2,2) image(P2_);colormap(g8);axis image;title('Imagen 2') subplot(2,2,3) image(P3_);colormap(g8);axis image;title('Imagen 3') subplot(2,2,4) image(P4_);colormap(g8);axis image;title('Imagen 4') %%%%%%% Modulos de Transformada de fourier %%%%%%%% figure(2); subplot(2,2,1) imagesc(log10(1+abs(Pf1)));colormap(jet);axis image;title('Imagen 1') subplot(2,2,2) imagesc(log10(1+abs(Pf2)));colormap(jet);axis image;title('Imagen 2') subplot(2,2,3) imagesc(log10(1+abs(Pf3)));colormap(jet);axis image;title('Imagen 3') subplot(2,2,4) imagesc(log10(1+abs(Pf4)));colormap(jet);axis image;title('Imagen 1')

Page 15: Inspiración Ma Fernanda-hw2 pdi

Tarea 2 - Anexo Procesamiento Digital de Imágenes

Pregunta II clear all;close all; P=imread('image1.jpg'); P=rgb2gray(P); figure(6); P2 = imresize(P, [512 512]); %B = imresize(A, [mrows ncols]) imshow(P2); Pregunta III % filtros promediadores clear all; close all;pack g256=[0:255]'*[1 1 1]/255; a=imread('bebe2.jpg'); a=rgb2gray(a); a= imresize(a, [512 512]);%reduccion de imagen a 512x512 %%%%% Imagen Original figure(1);subplot(2,2,1);image(a);colormap(g256);axis image; title('original'); %%%%% Filtro 1 f1=ones(3,3)/9; %0.11 b=conv2(a,f1,'same'); figure(1);subplot(2,2,2);image(b);colormap(g256);axis image; title('Filtro Nº 1'); %%%%% Filtro 2 f2=ones(9,9)/81; %0.01234 c=conv2(b,f2,'same'); figure(1);subplot(2,2,3);image(c);colormap(g256);axis image; title('Filtro Nº 2'); %%%%% Filtro 3 f3=ones(9,9)/81; %0.00694 d=b; for i=1:5 d=conv2(d,f3,'same'); end figure(1);subplot(2,2,4);image(d);colormap(g256);axis image; title('Filtro Nº 3'); %%%%% Fin filtros promediadores af=fft2(a); figure(2);subplot(2,2,1);imagesc(log10(1+abs(af)));colormap(jet);axis image;title('log10(1+abs(af))'); bf=fft2(b); figure(2);subplot(2,2,2);imagesc(log10(1+abs(bf)));colormap(jet);axis image;title('log10(1+abs(bf))'); cf=fft2(c); figure(2);subplot(2,2,3);imagesc(log10(1+abs(cf)));colormap(jet);axis image;title('log10(1+abs(cf))'); df=fft2(d); figure(2);subplot(2,2,4);imagesc(log10(1+abs(df)));colormap(jet);axis image;title('log10(1+abs(df))');

Page 16: Inspiración Ma Fernanda-hw2 pdi

Tarea 2 - Anexo Procesamiento Digital de Imágenes

Pregunta IV clear all; close all;pack g256=[0:255]'*[1 1 1]/255; a=imread('bebe2.jpg'); a=rgb2gray(a); b=imnoise(a,'salt & pepper',0.1); figure(1);subplot(3,2,1);image(a);colormap(g256);axis image; title('original'); figure(1);subplot(3,2,2);image(b);colormap(g256);axis image; title('Imagen mas ruido'); c=medfilt2(b,[3,3]); figure(1);subplot(3,2,3);image(c);colormap(g256);axis image; title('Filtro Mediana (3 x 3)'); d=medfilt2(c,[5,5]); figure(1);subplot(3,2,4);image(d);colormap(g256);axis image; title('Filtro Mediana (5 x 5)'); e=medfilt2(d,[7,7]); figure(1);subplot(3,2,5);image(e);colormap(g256);axis image; title('Filtro Mediana (7 x 7)'); f=medfilt2(e,[10,10]); figure(1);subplot(3,2,6);image(f);colormap(g256);axis image; title('Filtro Mediana (10 x 10)'); af=fft2(a); figure(2);subplot(3,2,1);imagesc(log10(1+abs(af)));colormap(jet);axis image;title('MTF Imagen Original'); bf=fft2(b); figure(2);subplot(3,2,2);imagesc(log10(1+abs(bf)));colormap(jet);axis image;title('MTF Imagen + Ruido'); cf=fft2(c); figure(2);subplot(3,2,3);imagesc(log10(1+abs(cf)));colormap(jet);axis image;title('MTF Imagen Filtrada 1 vez'); df=fft2(d); figure(2);subplot(3,2,4);imagesc(log10(1+abs(df)));colormap(jet);axis image;title('MTF Imagen Filtrada 2 vez'); ef=fft2(e); figure(2);subplot(3,2,5);imagesc(log10(1+abs(ef)));colormap(jet);axis image;title('MTF a Imagen Filtrada 3 vez'); ff=fft2(f); figure(2);subplot(3,2,6);imagesc(log10(1+abs(ff)));colormap(jet);axis image;title('MTF a Imagen Filtrada 4 vez');

Page 17: Inspiración Ma Fernanda-hw2 pdi

Tarea 2 - Anexo Procesamiento Digital de Imágenes

Pregunta V clear all; close all;pack g256=[0:255]'*[1 1 1]/255; a=imread('bebe2.jpg'); a=rgb2gray(a); [N,M]=size(a); figure(1);subplot(1,3,1);image(a);colormap(g256);axis image; title('Imagen Original'); %%% Detector Sobel fsobelh=[-1 -2 -1; 0 0 0; 1 2 1]/4; fsobelv=[ 1 0 -1; 2 0 -2; 1 0 -1]/4; ch=abs(conv2(a,fsobelh,'same')); cv=abs(conv2(a,fsobelv,'same')); c=sqrt(ch.*ch+cv.*cv)/sqrt(2); figure(1);subplot(1,3,2);imagesc(c);colormap(g256);axis image; title('Detector Sobel'); %%%% Detector Prewitt fprewitth=[-1 -1 -1; 0 0 0; 1 1 1]/3; fprewittv=[ 1 0 -1; 1 0 -1; 1 0 -1]/3; dh=abs(conv2(a,fprewitth,'same')); dv=abs(conv2(a,fprewittv,'same')); d=sqrt(dh.*dh+dv.*dv)/sqrt(2); figure(1);subplot(1,3,3);imagesc(d);colormap(g256);axis image; title('Detector Prewitt');