Deteccion de los bordes de una imagen

En este apartado vamos a aprender como se pueden detectar los bordes de una imagen mediante la herramienta Matlab:

Para ello leeremos la imagen mediante el comando 'imread' y posteriormente la representaremos para ver nuestra imagen original y poder compararla con la detección de bordes que realizaremos posteriormente. A continuación pasamos la imagen en color obtenida a una imagen representada en una escala de grises. Por último mediante el uso del comando'edge' detectamos los bordes de la imagen en blanco y negro y la representamos:

Código:

im_rgb=imread('Pinguinos.jpg');
figure(),imshow(im_rgb)
im_gray=rgb2gray(im_rgb);%pasa la imagen en color a una imagen en escala de grises.

figure(),imshow(im_gray)
bordesimagen=edge(im_gray,'canny');%realiza la detección de los bordes en una imagen
figure(),imshow(bordesimagen)


Resultados:


Imagen original
Imagen en escala de grises
Imagen con la detección de bordes
 
Entrada principal

4 comentarios:

  1. mi buen y para detectar bordes verticales y horizontales... podras subir algo de eso.. saludos

    ResponderEliminar
    Respuestas
    1. creo que se podria hacer similar dime tu gmail y hablamos por correo y te ayudo!

      Eliminar
  2. Hola, hay una forma de llevar el fondo a negro dejando los pinguinos sin alterar??

    ResponderEliminar
  3. Hola, disculpa que este comentario no este tan relacionado con esta partes, en mi universidad han planteado una practica de desarrollar un rostro en 2d en matlab , quisiera una pequeña ayuda para este proyecto, una vision general de las funnciones mas usadas o algo por el estilo.... gracias

    ResponderEliminar