В изображении кромка - это кривая, которая следует по пути быстрого изменения интенсивности изображения. Кромки часто связаны с границами объектов в сцене. Обнаружение кромок используется для идентификации кромок в изображении.
Для поиска ребер можно использовать edge функция. Эта функция ищет места на изображении, где интенсивность быстро изменяется, используя один из следующих двух критериев:
Места, где первая производная интенсивности больше по величине, чем некоторый порог
Места, где вторая производная интенсивности имеет пересечение нуля
edge предоставляет несколько производных оценщиков, каждый из которых реализует одно из этих определений. Для некоторых из этих оценщиков можно указать, должна ли операция быть чувствительной к горизонтальным кромкам, вертикальным кромкам или к тем и другим. edge возвращает двоичное изображение, содержащее 1, где найдены ребра, и 0 в другом месте.
Самый мощный метод обнаружения границ, который edge предоставляет метод Канни. Метод Канни отличается от других методов обнаружения ребер тем, что использует два различных порога (для обнаружения сильных и слабых ребер), и включает слабые ребра в выход, только если они соединены с сильными ребрами. Поэтому этот способ является менее вероятным, чем другие, подверженным воздействию шума, и более вероятным обнаружением истинных слабых краев.
В этом примере показано, как обнаруживать края на изображении с помощью как детектора краев Канни, так и детектора краев Собеля.
Прочтите изображение и выведите его на экран.
I = imread('coins.png');
imshow(I)
Примените к изображению краевые детекторы Собеля и Канни и отобразите их для сравнения.
BW1 = edge(I,'sobel'); BW2 = edge(I,'canny'); figure; imshowpair(BW1,BW2,'montage') title('Sobel Filter Canny Filter');
