Які найпоширеніші алгоритми адаптивного порогування?


38

Адаптаційний поріг був обговорений у кількох питаннях раніше:

Адаптивний порог для сегментації печінки за допомогою Matlab

Які найкращі алгоритми визначення порогу зображення документа в цьому прикладі?

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

Які алгоритми адаптивного використання ви найбільше використовували та для яких застосувань; як ви прийшли до вибору цього алгоритму?

Відповіді:


24

Я не думаю, що моя буде повною відповіддю, але я запропоную те, що знаю, і оскільки це сайт, що редагується спільнотою, я сподіваюся, що хтось незабаром дасть безкоштовну відповідь :)

Методи адаптивного порогування - це ті, що не використовують однаковий поріг у всьому зображенні .

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

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

Альтернативний підхід до знаходження локального порогу полягає у статистичному дослідженні значень інтенсивності локального сусідства кожного пікселя . Поріг є різним для кожного пікселя і розраховується з його локального мікрорайону (можливий середній, середній та інші варіанти). Існує реалізація подібних методів, включених до бібліотеки OpenCV у cv::adaptiveThresholdingфункції.

Я знайшов ще один подібний метод під назвою Бредлі Локальний Поріг . Він також вивчає сусідство кожного пікселя, встановлюючи яскравість на чорну, якщо яскравість пікселів на t відсотки нижча, ніж середня яскравість оточуючих пікселів. Відповідний папір можна знайти тут .

Ця відповідь stackoverflow згадує локальний (адаптивний) метод порогового значення під назвою Niblack, але я про нього раніше не чув.

Нарешті, є метод, який я використав в одному з моїх попередніх менших проектів, під назвою Thresholding Image Variational Minimax Optimization . Це ітеративний метод, заснований на оптимізації енергетичної функції, що є нелінійною комбінацією двох компонентів. Один компонент має на меті обчислити поріг, виходячи з положення найбільш сильних змін інтенсивності зображення. Інший компонент має на меті згладити поріг у (об'єктних) прикордонних районах. Він досить добре зарекомендував себе на зображеннях аналогових приладів (різні затінення та відображення від скляних / пластикових присутніх), але вимагав ретельного вибору кількості ітерацій.

fγ(f)

Відкриття оригінального зображення з великим квадратним SE видаляє всі відповідні структури зображення, але зберігає функцію освітлення. Біла шапка оригінального зображення або віднімання функції освітлення від вихідного зображення виводить зображення з однорідною підсвічуванням.


14

Тут ви можете знайти документ, який містить порівняння кількох методів визначення порогових значень:

  • М. Сезгін, Б. Санкур - Опитування щодо методів порогового зображення та кількісної оцінки продуктивності, Журнал електронних зображень, 2004 - pdf

Ось ще одна робота з оцінки методів бінаризації:

  • P. Stathis, E. Kavallieratou та N. Papamarkos - техніка оцінки алгоритмів бінаризації, Journal of Universal Computer Science, 2008, - pdf

Метод адаптивного бінаризації, який я використав у своєму останньому проекті, використовує цілісні зображення для швидкого обчислення порогової функції, використовуваної методом Саувола. Метод Саувола описаний у:

  • J. Sauvola та M. Pietikainen, Бінаризація адаптивних образів документів, Розпізнавання візерунків 33, 2000. - pdf

Модифікація, яка використовує цілісні зображення, що забезпечують 20-кратну швидкість (відповідно до документа), описана в цьому документі:

  • Ф. Шафайт, Д. Кейзерс і Т. М. Бреуель, Ефективна реалізація локальних методів адаптивного порогування за допомогою інтегральних зображень, Розпізнавання документів та отримання XV, 2008 р. - pdf

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


6

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

Адаптивну бінаризацію можна розділити на три категорії:

1) Глобальний метод: за допомогою цього методу оцінюється спочатку фон зображення; після цього створюється нормалізоване зображення за допомогою довідкової інформації. Потім застосовується метод глобальної бінаризації.

2) Метод на основі патчу: як вказує ім'я, метод на основі патча виконуватиме патч бінаризації за патчем. На кожному виправлення оцінюється бінаризація глобальним методом бінаризації. Після цього виконується деяка післяобробка, щоб зробити позов, що поріг бінаризації в сусідніх патчах має плавний перехід.

3) Метод Moving-window: за допомогою цього методу бінаризація здійснюється пікселем за пікселем. Рухоме вікно встановлюється для обчислення статистики пікселів у вікні, і на основі статистики обчислюється поріг для центрального пікселя у вікні.

Дуже важко сказати, який метод найкращий, оскільки це залежить від програми. Коли ви думаєте про адаптивну бінаризацію, не забудьте врахувати наступні питання:

1) налаштування параметрів: чи метод має процедуру автоматичного встановлення параметрів? Як ми можемо встановити параметри дуже добре, щоб вони могли працювати в більшості випадків?

2) який критерій обґрунтування хорошої адаптаційної бінаризації? У багатьох випадках різниця між різними методами бінаризації дійсно мала. Однак невелика різниця може призвести до великої різниці в підсумку.

3) чи може бінаризація працювати в деяких конкретних ситуаціях? Наприклад, припустимо, що мета адаптивної бінаризації - це вилучення об'єктів із чорного фону, чи може бінаризація автоматично адаптуватися до цієї ситуації? Або візова віза.

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

5) попередня обробка. Хороша бінаризація також повинна включати інсайдер по обробці зображень. Якщо зображення занадто розмито, воно може автоматично регулювати параметри алгоритму або викликати деяку попередню обробку, щоб уникнути поганої бінаризації.

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