Виявляч контурів Кенні (англ. Canny edge detector) — алгоритм, що використовується для виявлення контурів на зображеннях. Він є багатоетапним і здатний виявляти широкий спектр контурів. Алгоритм був розроблений Джоном Кенні 1986 року.
Робота алгоритму Кенні
Алгоритм Кенні складається з п'яти основних етапів:
- Згладжування: Вихідне зображення згладжується за допомогою фільтра Гаусса для видалення шумів.
- Пошук градієнта: Обчислюється градієнт зображення за допомогою оператора Собеля. Градієнт показує напрямок і величину змін яскравості.
- Немаксимальне пригнічення: Визначаються локальні максимуми градієнта по напрямку градієнта. Пікселі, які не є локальними максимумами, пригнічуються.
- Гістерезис: Визначається два порогових значення: високий і низький. Пікселі з градієнтом вище високого порогового значення позначаються як контури. Пікселі з градієнтом нижче низького порогового значення відкидаються. Пікселі між високим і низьким пороговими значеннями позначаються як можливі контури, якщо вони з'єднані з пікселями вище високого порогового значення.
- З'єднання контурів: Можливі контури з'єднуються, утворюючи повні контури.
Переваги та недоліки
Переваги:
- Виявляє контури з різною товщиною та без переривань.
- Малошумний.
- Обчислювально ефективний.
Недоліки:
- Може пропустити деякі слабкі контури.
- Може бути чутливим до шумів, якщо не використовується згладжування.
Використання
Алгоритм Кенні широко використовується в обробці зображень для:
- Автоматичного сегментування об'єктів
- Виявлення дефектів
- Розпізнавання образів
- Стериоскопічного аналізу
Теорія виявлення контурів
Кенні розробив обчислювальну теорію виявлення контурів, яка пояснює принцип дії алгоритму Кенні. Теорія стверджує, що контур повинен задовольняти трьом основним критеріям:
- Добрий відгук: Контур повинен мати чіткий відгук на градієнт зображення.
- Локалізація: Контур повинен бути чітко локалізованим по краях об'єктів.
- Одна відповідь: На кожному контурі можна мати лише один відгук.
Алгоритм Кенні є потужним інструментом виявлення контурів, який широко використовується в обробці зображень. Він ефективний, малошумний і надійний. Алгоритм заснований на обчислювальній теорії виявлення контурів, яка забезпечує теоретичну основу для його роботи.
Часто задавані питання
- Яка мета алгоритму Кенні?
Виявляти контури на зображеннях. - Як працює алгоритм Кенні?
Він використовує багатоетапний процес, включаючи згладжування, пошук градієнта, не максимальне пригнічення, гістерезис і з'єднання контурів. - Які переваги алгоритму Кенні?
Виявлення контурів з різною товщиною і без переривань, низький рівень шумів і обчислювальна ефективність. - Які недоліки алгоритму Кенні?
Може пропустити деякі слабкі контури та бути чутливим до шумів. - Де використовується алгоритм Кенні?
Автоматичне сегментування об'єктів, виявлення дефектів, розпізнавання образів та стереоскопічний аналіз.