Які чинники слід враховувати при виборі алгоритму виявлення краю?


33

Я дізнався про низку алгоритмів виявлення ребер, включаючи такі алгоритми, як методи Собеля, Лаплачіана та Канні. Мені здається, найпопулярнішим детектором краю є детектор краю Canny, але чи є випадки, коли це не оптимальний алгоритм для використання? Як я можу визначити, який алгоритм використовувати? Спасибі!


7
Що ви виявляєте?
ендоліт

Відповіді:


29

Існує безліч можливостей виявлення ребер, але 3 приклади, які ви згадуєте, трапляються в 3 різних категоріях.

Собель

Це приблизна похідна першого порядку. Надає екстремуму в положеннях градієнта, 0, де градієнта немає. У 1D це =[101]

  • гладкий край => локальний мінімум або максимум, залежно від сигналу, що йде вгору або вниз.
  • 1 піксельна лінія => 0 на самій лінії, з місцевою крайністю (різної ознаки) прямо біля неї. У 1D це =[121]

Є інші альтернативи Собелу, які мають +/- ті ж характеристики. На сторінці Хреста Робертса у вікіпедії ви можете порівняти декілька з них.

Лаплас

Це наближає похідну другого порядку. Дає 0 у положеннях градієнта, а також 0, де градієнта немає. Це дає екстремуму, де починається або зупиняється (довший) градієнт.

  • гладкий край => 0 по краю, локальна крайність на початку / зупинці краю.
  • 1 піксельна лінія => "подвійний" екстремум на лінії, а "нормальна" екстрема з іншим знаком біля неї

Вплив цих 2 на різні типи країв найкраще можна переглянути візуально:

Порівняння Собеля проти Лапласа

Кенні

Це не простий оператор, але це багатоступеневий підхід, який використовує Sobel як один із кроків. Якщо Собель і Лаплас дають результат сірого масштабу / плаваючої точки, який потрібно поправити самостійно, алгоритм Кенні є розумним пороговим значенням як один з його кроків, тому ви просто отримуєте двійковий результат так / ні. Крім того, на плавному краю ви, ймовірно, знайдете лише 1 рядок десь посередині градієнта.


18

Хоча Собель і Лаплачіан - просто фільтри, Кенні йде далі від цього двома способами.

По-перше, воно робить не максимальне придушення, що позбавляється від шуму, що видається різними предметами та кольоровими градієнтами зображення. По-друге, він фактично включає крок, який дозволяє розрізняти різні напрямки ребер та заповнювати пропущені точки рядка.

Іншими словами, детектор ребер Canny знаходиться в абсолютно іншому класі, ніж Собель та Лаплачіан. Це набагато розумніше в тому, що він включає цілу купу пост-обробки, тоді як Собель і Лаплачіан - це просто високочастотні фільтри на виході з наступним лінійним бінарним порогом.


чи є в цьому плані одноденна версія canny? Це було б просто застосування прямолінійної 2-D версії?
Спейси

9

Як правило, два найважливіших рішення, коли намагаються виявити краї, є:

  1. Чи можу я замість цього сегментувати об'єкти, а потім використовувати морфологічний оператор, щоб знайти край бінарного (сегментованого) зображення? Маючи шумні дані, це, як правило, більш надійне.

  2. Який фільтр згладжування, що зберігає край, слід використовувати для зменшення шуму зображення? Крайові фільтри засновані на розрізненні, яке постраждає від галасливих даних. Найпростіший вибір - це серединний фільтр, але фільтри анізотропної дифузії або нелокальних засобів дозволять забезпечити кращі показники за рахунок того, щоб налаштувати більше параметрів.

Що стосується самого виявлення ребер, я не можу подумати, що є вагомою причиною не використовувати Canny.


7

Сусанський підхід

Інший підхід до виявлення ребер та кутів - це підхід SUSAN .

У такому підході використовується замість похідних наближень інтегральний підхід. Це має перевагу не лише в тому, щоб виявляти ребра, а й у змозі виявляти "двовимірні ознаки" (тобто кути).

Ще однією перевагою підходу інтегрального наближення є те, що шум має менший вплив на результати.


6

Кенні дає бінарне зображення і залежить від зовнішніх заданих порогів (від зображення / програми залежать).
Фільтри, засновані на згортанні, дають зображення "інтенсивності краю". Це корисно, якщо важлива вага або міцність краю (наприклад, у зваженому перетворенні Хоф).

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.