%m015
%Aplica filtro mediana
A=double(imread('_im_lenna_128.bmp'));
[nf nc]=size(A);

subplot(1,2,1);
imshow(A,[]); %[] significa que ajusta automáticamente el mínimo y máximo

K=[1 1 1; 1 1 1; 1 1 1];
B=zeros(nf,nc);
G=zeros(1,9);
%ojo sin bordes...
for f=1+1:nf-1
   for c=1+1:nc-1
    i=1;
 	 for ff=-1:1
        for cc=-1:1
           G(i)=A(f+ff,c+cc);
           i=i+1;
        end;
     end;
     
     
     for i=1:8
        for j=i+1:9
           if G(j)<G(i)
              aux=G(i);
              G(i)=G(j);
              G(j)=aux;
           end;
        end;
     end;
     
     B(f,c)=G(5);
   end;
end;

subplot(1,2,2);
imshow(B,[]); %[] significa que ajusta automáticamente el mínimo y máximo

