Оператор Ротуэлла
Оператор Ротуэлла, в дисциплине компьютерного зрения — оператор для обнаружения границ, представленный Чарлзом Ротуэллом (англ. C. A. Rothwell) на Симпозиуме IEEE по компьютерному зрению[1] в 1995 году.
В целом, оператор Ротуэлла очень похож на оператор Кэнни, разница между ними в том, что алгоритм Ротуэлла использует истончение краёв (англ. Edge detection#Edge thinning) вместо подавления немаксимумов (англ. Non-Maximum Suppression), и что динамическое определение порога (англ. dynamic thresholding) используется вместо гистерезиса.
Причины создания
Авторы метода считали, что подавление немаксимумов некорректно работает на переходах в изображениях из-за процесса сглаживания. От гистерезиса авторы отказались из-за убеждения, что яркость края не имеет принципиального значения для более высокого уровня визуальной обработки, в частности, в распознавании объектов. Гораздо важнее для них была контрастность.
Основные этапы алгоритма
Первичная обработка. Изображение сглаживается с помощью дискретной выборки двумерного фильтра Гаусса. Здесь плавно используются отдельные одномерные ядра Гаусса последовательно в х и у направлениях. «Хвост» ядра свертки составляет 1,5 % от её центральных значений. Затем находится градиент для каждой точки изображения. и вычисляется с помощью центральных конечных разностей операторов вида [-1,0,1]. |ΔS| (для удобства обозначается через N) и θ вычисляются для каждой точки с помощью выражений, аналогичных в операторе Canny:
Субпиксельная локализация. Для каждого пикселя, у которого N > (где это заранее заданный порог), где фактически будут лежать краевые пиксели (англ. Edgels), используется техника поиска локальных максимумов оператора Кэнни. Места краевых пикселей найдены путём оценки пересечения второй производной с нулем в направлении нормали к контуру касательной.
Определение порога изображения. После определения N и θ появляется проблема разделения краевых пикселей и остальных точек. Это производится с помощью динамического определения порога (англ. dynamic thresholding), то есть оператор определяет значение порога, которое варьируется в зависимости от изображения. Порог поверхности ( на дискретных областях изображения) вычисляется и используется для классификации edgels-пикселей всякий раз, когда > α (использование константы 0 < α ≤ 1 описывается ниже). определяется с помощью элементов множества Σ. Эти edgels обеспечивают хорошее представление о сильных edgels в локальной области. Поэтому мы присваиваем значение для каждого (х, у) є Σ, а затем формирует кусочно-плоскую поверхность, интерполированую для всех остальных (х, у). Выбор порога изображения продолжается сравнением значения и пороговой функции и классификации точки (х, у) как edgel, если первый составляет не менее 90 % от последнего. Параметр α вводится учета случая, при котором сильные edgel могут стать немного дальше к переходу. Все пиксели, которые проходят пороговый тест включены в множество Σ, очевидно, что Σ входит в Σ.
Истончение. Процесс определения порога даёт изображение множества элементов Σ, членами которого являются связанные краевые пиксели. Элемент является «соседом» другого элемента, если он находится на расстоянии не более 1 пикселя от него, то есть, принадлежит квадрату 3х3, центром которого является второй элемент. Ширина множества часто равна двум или трем точкам и поэтому не представляет топологии цифровой кривой. Подмножества утончаются до цепей единичной толщины. Этот процесс основан на алгоритме истончения Цао-Фу. Он работает таким образом, чтобы не сокращать edgels цепи, которые имеют свободный конец (то есть edgels, с которыми связана только одна edgel). Тем не менее, истончение Цао-Фу рассматривает все элементы множества в равной степени, так, например, сильные edgel могут быть убраны в отличие от более слабой точки. Так что сохраняется локализация хребтов, упорядочиваются члены Σ, а слабые элементы удаляются в первую очередь. Истонченное множество называется Σ
Получение топологического описания. Учитывая Σ, извлекается топологическое описание из дискретных изображений и с ним ассоциируется субпиксельная геометрическая интерпретация. Все элементы в Σ составляют сеть вершин краев поверхности (vertex-edge-face network). Вершины расположены на edgels, которые имеют либо только одного соседа (в этом случае они являются концами edgel-цепочки), либо которые имеют более двух связанных с ними edgels. Топологически угловая точка определяется при встречи двух edgel-цепей содержахщихся в пределах одного ребра. Сегментация края в таких угловых точках не производится. Как только вершины получены, осуществляется проход по edgel-цепям между ними с помощью маски 3 на 3. Поскольку каждый edgel добыт, его суб-пиксели записывается в список.
См. также
Примечания
Литература
- C. A. Rothwell, J. L. Mundy, W. Hoffman, V.D. Nguyen «Driving Vision by Topology», 1995.
- Tsao, Y.F. and Fu, K.S. "Parallel Thinning Operations for Digital Binary Images, " Proceedings CVPR, p. 150-155, 1981.