Detector de Bordes Laplaciano en Matlab [código]
En Procesamiento Digital de Imágenes, uno de los detectores de bordes de imágenes en escala de grises que otorga buenos resultados es el operador Laplaciano, el cual aplica la segunda derivada a un píxel analizado. En este post presentamos el código fuente en Matalb del detector de bordes Laplaciano para imágenes en escala de grises.
El código fuente en Matalb del detector de bordes Laplaciano para imágenes en escala de grises es:
function L = Laplaciano(imagen) im=imread(imagen); imD = double(im); radio=1; %el Laplaciano usa mascarilla de 3x3=>radio=1 matriz = RefMatriz(imD,radio); [f,c] = size(matriz); for i=1+radio:(f-radio) for j=1+radio:(c-radio) suma=matriz(i-radio,j)+matriz(i,j-radio)-4*matriz(i,j)+matriz(i,j+radio)+matriz(i+radio,j); G(i-radio,j-radio)=fix(suma); end end S=Negativo(G); subplot(1,2,1); imshow(imagen); title('Imagen Original'); subplot(1,2,2); imshow(uint8(S)); title('Deteccion de Bordes usando Laplaciano');
El código de la función RefMatriz() lo pueden encontrar en el post de reflejar píxeles de una matriz. El código de la función Negativo() es:
function y=Negativo(imD) [f,c]=size(imD); for i=1:f for j=1:c nuevaI(i,j)=255-imD(i,j); end end y=nuevaI;
Los resultados de usar el detector de bordes Laplaciano se observa en la siguiente figura:














0 comentarios:
Publicar un comentario
Bienvenido a jcGeorge's Blog!!!
Por favor deja tu comentario, consulta o sugerencia, procura mantener habilitado tu perfil de Blogger o deja un enlace a tu blog o web.
Gracias por leer este blog!!!