Tuesday, May 26, 2009

umbralizacion

import ij.*;
import ij.process.*;
import ij.gui.*;
import java.awt.*;
import ij.plugin.filter.*;

public class ejemplo1 implements PlugInFilter
{
ImagePlus imp;

public int setup(String arg, ImagePlus imp)
{
this.imp = imp;
return DOES_ALL;
}

public void run(ImageProcessor ip)
{

int a=ip.getWidth();
int b=ip.getHeight();
for(int i=0;i
{
for(int j=0;j
{
int m=ip.getPixel(i,j);
if(p<50)
{
m=0;
}
if(p>50)
{
m=255;
}
im.putPixel(i,j,255-p);
}

}
}

}

Wednesday, May 6, 2009

Filtro de la mediana offline

clear;
V=uint8(zeros(9,1));
A=imread('auto.jpg');
[m,n]= size(A);
B=uint8(zeros(m,n));
for i=2:m-1;
for j=2:n-1
V=[A(i-1, j-1),A(i-1, j),A(i-1, j+1),A(i, j-1),A(i, j),A(i, j+1),A(i+1, j-1),A(i+1, j),A(i+1, j+1)];
C=sum(V);
B(i,j)=uint8(C/9);
end
end;
A(2:m-1,2:n-1)=B(2:m-1,2:n-1);
imshow(A);

Imagenes con el algoritmo corregio

Imagenes filtro mediana online

Imagen sin filtrar


Imagen filtrada
V=unit8(zeros(9,1));

I1=imgread('im1.jpg');

I2=uint8(Zeros(m,n));

[m,n]=size(I1)

for i=2:m-1;

forj=2:n-1;

V=[I1(i-1,j-1),I1(i-1,j),I1(i-1,j+1),I1(i,j-1),I1(i,j),I1(i,j+1),I1(i+1,j-1),I1(i+1,j),I1(i+1,j+1)]/9;

V=sort(V);

I2(i,j)=V;

end;

end;

I1(2:m-1;1:n-1)=I2(2:m-1;2:n-1);

imageshow(I1);

Filtro de la Mediana online (Math Lab)

V=uint8(zeros(9,1));
I1=imread('im1.jpg');
[m,n]=size(I1);
for i=2:m-1;
for j=2:n-1
V=uint8(I1(i-1,j-1)+I1(i-1,j)+I1(i-1,j+1)+I1(i,j-1)+I1(i,j)+I1(i,j+1)+I1(i+1,j-1)+I1(i+1,j)+I1(i+1,j+1));
I1(i,j)=V/9;
end
end
imshow(I1);

Tuesday, May 5, 2009

ejemplo de paso de fitro online




La imagen superior esta corregida con un filtro online la inferior es la original como se puede ver en la parte superior en la mitad la linea negra se borra