ISSN 2305-5626. Вестник МГТУ им. Н.Э. Баумана: электронное издание. 2013
2
Алгоритм Кэнни реализует следующие этапы:
1) гауссова сглаживающая фильтрация;
2) нахождение градиента яркости в каждом пикселе;
3) нахождение «максимальных» пикселов;
4) гистерезисная фильтрация «максимальных» пикселов.
Градиент является двумерным вектором, в каждой точке он ха-
рактеризуется длиной и направлением.
Основной проблемой пороговых методов выделения контуров, в
том числе алгоритма Кэнни, является сложность определения порога.
Другая особенность описанного подхода заключается в увеличении
толщины линий в процессе гауссовой сглаживающей фильтрации,
обеспечивающей уменьшение влияния на результат исследований
перепадов яркости.
Избежать увеличения толщины линий позволяет метод нахождения
«максимальных» пикселов или метод «подавления немаксимумов» [1]:
для каждой точки рассматривается отрезок длиной в несколько пиксе-
лов, ориентированных по направлению градиента и с центром в данном
пикселе; пиксел считается «максимальным» тогда и только тогда, когда
длина градиента в нем максимальна среди всех длин градиентов пиксе-
лов отрезка. Граничными можно признать все «максимальные» пикселы
с длинами градиента больше заданного порога.
Градиент яркости в
каждой точке перпендикулярен границе, поэтому после подавления
«немаксимумов» на каждом перпендикулярном сечении «жирной» ли-
нии останется один пиксел с максимальной длиной градиента.
В итоге реализации алгоритма возможны разрывы контуров. Так-
же существует вероятность разрывов контура в результате порогового
отсечения при значительном изменении освещенности объекта на
изображении, при наличии «паразитных» объектов в зоне идентифи-
цируемого объекта (машины, тень от другого объекта и т. п.).
Для сокращения общего количества разрывов в контурах исполь-
зуют алгоритм гистерезисной фильтрации «максимальных» пиксе-
лов, основанный на применении двух порогов отсечения. При этом
минимальное значение порога соответствует минимальной длине
градиента (пиксел признается граничным), максимальное значение
порога соответствует минимальной длине градиента (пиксел может
использоваться для инициализации контура).
После того как контур инициализирован посредством пиксела
A
с
некоторой максимальной длиной градиента, превышающей макси-
мальное значение порога, в установленном порядке рассматривается
каждый соседний с ним пиксел
B
, имеющий максимальную длину
градиента, превышающую минимальное значение порога.
Интересен результат обработки двух вариантов одного и того же
изображения (без предобработки и с предобработкой — изменение
резкости изображения посредством деконволюции [2]) на основе ал-
горитма Кэнни (рис. 1). Изображение с предобработкой здесь и далее
будем называть восстановленным.
1 3,4,5