Оператор Ротуэлла Содержание Причины создания | Основные...
Обработка изображенийКомпьютерное зрениеРаспознавание образов
компьютерного зренияангл.оператор Кэнниистончение краёвангл.англ.англ.гистерезисакраевые пикселиангл.англ.интерполированую
Оператор Ротуэлла, в дисциплине компьютерного зрения — оператор для обнаружения границ, представленный Чарлзом Ротуэллом (англ. C. A. Rothwell) на Симпозиуме IEEE по компьютерному зрению[1] в 1995 году.
В целом, оператор Ротуэлла очень похож на оператор Кэнни, разница между ними в том, что алгоритм Ротуэлла использует истончение краёв (англ. Edge detection#Edge thinning) вместо подавления немаксимумов (англ. Non-Maximum Suppression), и что динамическое определение порога (англ. dynamic thresholding) используется вместо гистерезиса.
Содержание
1 Причины создания
2 Основные этапы алгоритма
3 См. также
4 Примечания
5 Литература
6 Ссылки
Причины создания |
Авторы метода считали, что подавление немаксимумов некорректно работает на переходах в изображениях из-за процесса сглаживания. От гистерезиса авторы отказались из-за убеждения, что яркость края не имеет принципиального значения для более высокого уровня визуальной обработки, в частности, в распознавании объектов. Гораздо важнее для них была контрастность.
Основные этапы алгоритма |
Первичная обработка. Изображение сглаживается с помощью дискретной выборки двумерного фильтра Гаусса. Здесь плавно используются отдельные одномерные ядра Гаусса последовательно в х и у направлениях. «Хвост» ядра свертки составляет 1,5 % от её центральных значений. Затем находится градиент для каждой точки изображения. Sx{displaystyle S_{x}} и Sy{displaystyle S_{y}} вычисляется с помощью центральных конечных разностей операторов вида [-1,0,1]. |ΔS| (для удобства обозначается через N) и θ вычисляются для каждой точки с помощью выражений, аналогичных в операторе Canny:
- N=Sx2+Sy2{displaystyle mathbf {N} ={sqrt {{mathbf {S} _{x}}^{2}+{mathbf {S} _{y}}^{2}}}}
- Θ=arctan(SySx).{displaystyle mathbf {Theta } =operatorname {arctan} left({mathbf {S} _{y} over mathbf {S} _{x}}right).}
Субпиксельная локализация. Для каждого пикселя, у которого N > tl{displaystyle t_{l}} (где tl{displaystyle t_{l}} это заранее заданный порог), где фактически будут лежать краевые пиксели (англ. Edgels), используется техника поиска локальных максимумов оператора Кэнни. Места краевых пикселей найдены путём оценки пересечения второй производной с нулем в направлении нормали к контуру касательной.
Определение порога изображения. После определения N и θ появляется проблема разделения краевых пикселей и остальных точек. Это производится с помощью динамического определения порога (англ. dynamic thresholding), то есть оператор определяет значение порога, которое варьируется в зависимости от изображения. Порог поверхности (Nx,y{displaystyle N_{x,y}} на дискретных областях изображения) вычисляется и используется для классификации edgels-пикселей всякий раз, когда Nx,y{displaystyle N_{x,y}} > αTx,y{displaystyle T_{x,y}} (использование константы 0 < α ≤ 1 описывается ниже). Tx,y{displaystyle T_{x,y}} определяется с помощью элементов множества Σ0{displaystyle _{0}}. Эти edgels обеспечивают хорошее представление о сильных edgels в локальной области. Поэтому Tx,y{displaystyle T_{x,y}} мы присваиваем значение Nx,y{displaystyle N_{x,y}} для каждого (х, у) є Σ0{displaystyle _{0}}, а затем формирует кусочно-плоскую поверхность, интерполированую для всех остальных (х, у). Выбор порога изображения продолжается сравнением значения Nx,y{displaystyle N_{x,y}} и пороговой функции Tx,y{displaystyle T_{x,y}} и классификации точки (х, у) как edgel, если первый составляет не менее 90 % от последнего. Параметр α вводится учета случая, при котором сильные edgel могут стать немного дальше к переходу. Все пиксели, которые проходят пороговый тест включены в множество Σ, очевидно, что Σ0{displaystyle _{0}} входит в Σ.
Истончение. Процесс определения порога даёт изображение множества элементов Σ, членами которого являются связанные краевые пиксели. Элемент является «соседом» другого элемента, если он находится на расстоянии не более 1 пикселя от него, то есть, принадлежит квадрату 3х3, центром которого является второй элемент. Ширина множества часто равна двум или трем точкам и поэтому не представляет топологии цифровой кривой. Подмножества утончаются до цепей единичной толщины. Этот процесс основан на алгоритме истончения Цао-Фу. Он работает таким образом, чтобы не сокращать edgels цепи, которые имеют свободный конец (то есть edgels, с которыми связана только одна edgel). Тем не менее, истончение Цао-Фу рассматривает все элементы множества в равной степени, так, например, сильные edgel могут быть убраны в отличие от более слабой точки. Так что сохраняется локализация хребтов, упорядочиваются члены Σ, а слабые элементы удаляются в первую очередь. Истонченное множество называется Σt{displaystyle _{t}}
Получение топологического описания. Учитывая Σt{displaystyle _{t}}, извлекается топологическое описание из дискретных изображений и с ним ассоциируется субпиксельная геометрическая интерпретация. Все элементы в Σt{displaystyle _{t}} составляют сеть вершин краев поверхности (vertex-edge-face network). Вершины расположены на edgels, которые имеют либо только одного соседа (в этом случае они являются концами edgel-цепочки), либо которые имеют более двух связанных с ними edgels. Топологически угловая точка определяется при встречи двух edgel-цепей содержахщихся в пределах одного ребра. Сегментация края в таких угловых точках не производится. Как только вершины получены, осуществляется проход по edgel-цепям между ними с помощью маски 3 на 3. Поскольку каждый edgel добыт, его суб-пиксели записывается в список.
См. также |
- Оператор Кэнни
- Оператор Айверсона
- Градиент
- Выделение границ
- Оператор Собеля
- Компьютерное зрение
- Оператор Прюитта
- Перекрёстный оператор Робертса
Примечания |
↑ IEEE International Symposium on Computer Vision, 1995
Литература |
- 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.
Ссылки |
- Реализация метода на языке С++
- C. A. Rothwell, J. L. Mundy, W. Hoffman, V.D. Nguyen «Driving Vision by Topology»
Другие работы C. A. Rothwell (недоступная ссылка)
Для улучшения этой статьи по информационным технологиям желательно: |