Pull to refresh

Методы нахождения границ изображения

Reading time2 min
Views58K
Алгоритм выделения границ или иначе обнаружения границ работают после того, как качество изображения улучшено перечисленными выше методами. Эти алгоритмы можно подразделить на два класса:
1) подчеркивающие, усиливающие, выделяющие границы;
2) строящие контуры автоматически.

Известны линейные алгоритмы выделения границ и нелинейные. В качестве первых можно привести маски, похожие на те, которые используются в линейной фильтрации. Разница в том, что для выделения границ используются весовые коэффициенты разных знаков, как положительные, так и отрицательные.
Например, использования масок для горизонтальной или вертикальной обработки (выделения, усиления) изображения:
image и image
В однотонных участках изображения, все точки имеют примерно одинаковую яркость, градиент уровней яркости низок, и в результирующем изображении подобные участки просто темнеют. Там, где имеются перепады (резкие переходы, края), крутизна изменения яркости высока и в конечном изображении в таких местах появляются яркие линии.

Другой вариант – нелинейные алгоритмы. К таким относятся апертуры Робертса и Собеля, Шарра, дифер. алгоритм и т.д.

Оператор Собеля
Оператор Собеля хорошо известен во всем мире и применяется для многих задач. Оператор Собеля представляет собой более неточное приближение градиента изображения, но он достаточно качественен для практического применения во многих задачах. Точнее, оператор использует значения интенсивности только в окрестности 3×3 каждого пиксела для получения приближения соответствующего градиента изображения, и использует только целочисленные значения весовых коэффициентов яркости для оценки градиента… [Оператор Собеля вики]
Формула оператора Собеля:
Gx и Gy — две матрицы, где каждая точка содержит приближенные производные по x и по y. Они вычисляются следующим образом путем умножения матрицы Gx и Gy и суммированием обоих матриц, в результате полученный результат записывается в текущие координаты x и y в новое изображение:
image

Матрицы Gy и Gx:
image

Оператор Прюитта
Алгоритм оператора Прюитта подобен алгоритму оператору Собеля, за исключением использования другой матрицы:
image
[Оператор Прюитта вики]

Оператор Шарра
Алгоритм оператора Шарра а подобен алгоритму оператору Собеля, за исключением использования другой матрицы:
image
[Оператор Щарра вики]

Перекрёстный оператор Робертса
Перекрёстный оператор Робертса — один из ранних алгоритмов выделения границ, который вычисляет сумму квадратов разниц между диагонально смежными пикселами. Это может быть выполнено сверткой изображения с двумя ядрами:
image
В результате использования операции дискретного двумерного дифференцирования получается новое значение, которое записывается в новое фото.
[Перекрёстный оператор Робертса]

Дифференциальное выделение границ
Метод заключается в использование дифференциального подхода к обнаружению нулей второй производной по направлению различных векторов градиента.

Было предложено усилить или уменьшить перепады за счет использования коэффициента перед коэффициентами в матрице. Диапазон коэффициентов [0.1;1.5]. Результаты работы операторов были представлены ниже на ряде картинок.
Рисунки с названиями 0.1, 0.4, 0.8, 1.0, 1.2 и 1.5 — результаты работы оператора Собеля с коэффициентом.
При коэффициента равном 1.0 — оператор Собеля.
Снимок груди
image
CAPTCHA
image
Шрек
image

Так же при грамотном использовании порога бинаризации можно добиться весьма не плохих интересов, у кого есть идеи буду рад выслушать (прочесть).
Tags:
Hubs:
+35
Comments35

Articles