Algoritmo de CannyAlgoritmo de Canny es un operador desarrollado por John F. Canny en 1986 que utiliza un algoritmo de múltiples etapas para detectar una amplia gama de bordes en imágenes.[1] Lo más importante es que Canny también desarrolló una teoría computacional acerca de la detección de bordes que explica por qué la técnica funciona. Desarrollo del algoritmo de CannyEl propósito de Canny era descubrir el algoritmo óptimo de detección de bordes. Para que un detector de bordes pueda ser considerado óptimo debe cumplir los siguientes puntos:
Para satisfacer estos requisitos Canny utiliza el cálculo de variaciones - una técnica que encuentra la función que optimiza un funcional indicado. La función óptima en el algoritmo de Canny es descrito por la suma de cuatro términos exponenciales, pero se puede aproximar por la primera derivada de una gaussiana. Etapas Algoritmo de CannyReducción de ruidoVéase también: Reducción de ruido
El algoritmo de detección de bordes de Canny utiliza un filtro basado en la primera derivada de una gaussiana. Ya que es susceptible al ruido presente en datos de imagen sin procesar, la imagen original es transformada con un filtro gaussiano. El resultado es una imagen un poco borrosa respecto a la versión original. Esta nueva imagen no se ve afectada por un píxel único de ruido en un grado significativo. He aquí un ejemplo de un filtro gaussiano 5x5 = 1.4: Encontrar la intensidad del gradiente de la imagenEl borde de una imagen puede apuntar en diferentes direcciones, por lo que el algoritmo de Canny utiliza cuatro filtros para detectar horizontal, vertical y diagonal en los bordes de la imagen borrosa. El operador de detección de bordes ( Roberts, Prewitt, Sobel, por ejemplo) devuelve un valor para la primera derivada en la dirección horizontal (Gy) y la dirección vertical (Gx). A partir de este, se pueden determinar el gradiente de borde y la dirección:
Referencias
Enlaces externos
|
Portal di Ensiklopedia Dunia