Детектор края Дериша
Обнаружение функций |
---|
Обнаружение края |
Обнаружение углов |
Обнаружение больших двоичных объектов |
Обнаружение гребня |
Преобразование Хафа |
Тензор структуры |
Обнаружение аффинных инвариантных функций |
Описание функции |
Масштабировать пространство |
Эта статья включает список литературы , связанную литературу или внешние ссылки , но ее источники остаются неясными, поскольку в ней отсутствуют встроенные цитаты . ( Март 2013 г. ) |
Детектор краев Дериша — это оператор обнаружения краев, разработанный Рашидом Деришем в 1987 году. Это многошаговый алгоритм , используемый для получения оптимального результата обнаружения краев в дискретном двумерном изображении. Этот алгоритм основан на работе Джона Ф. Кэнни, связанной с обнаружением границ ( детектор границ Кэнни ) и его критериях оптимального обнаружения границ:
- Качество обнаружения – все существующие края должны быть отмечены и ложное обнаружение не должно происходить.
- Точность – отмеченные края должны быть максимально приближены к краям реального изображения.
- Однозначность – данный край на изображении должен быть отмечен только один раз. Никаких множественных реакций на один край реального изображения быть не должно.
По этой причине этот алгоритм часто называют детектором Кэнни-Дериша.
Различия между детектором кромок Canny и Deriche
[ редактировать ]Детектор краев Дериша, как и детектор краев Канни , состоит из следующих 4 шагов:
- Сглаживание
- Расчет величины и направления градиента
- Немаксимальное подавление
- Установление порога гистерезиса (с использованием двух порогов)
Существенное отличие заключается в реализации первых двух шагов алгоритма. В отличие от детектора кромок Канни, детектор кромок Дериша использует БИХ- фильтр в виде:
Фильтр оптимизирует критерии Кэнни. Как видно из предыдущей формулы, наиболее эффективный фильтр получается при значении приближается к 0. Тогда такой фильтр использует формулу:
Преимущество такого фильтра в том, что его можно адаптировать под характеристики обрабатываемого изображения, используя всего один параметр. Если значение α мало (обычно от 0,25 до 0,5), это приводит к лучшему обнаружению. С другой стороны, лучшая локализация достигается, когда параметр имеет более высокое значение (около 2 или 3). Для большинства обычных случаев рекомендуется значение параметра около 1.
Изображение | ||||
---|---|---|---|---|
а | α = 0,25 | α = 0,5 | α = 1 | α = 2 |
Использование БИХ-фильтра имеет смысл, особенно в тех случаях, когда обрабатываемое изображение зашумлено или требуется большое сглаживание (что приводит к большому ядру свертки для КИХ-фильтра). В этих случаях детектор Дериша имеет значительное преимущество перед детектором Кэнни, поскольку он способен обрабатывать изображения за короткое постоянное время, независимо от желаемой степени сглаживания.
Реализация детектора Дериша
[ редактировать ]Процесс получения значения двумерного фильтра Дериша можно разделить на две части. В первой части массив изображений передается в горизонтальном направлении слева направо по следующей формуле:
и справа налево по формуле:
Результат вычисления затем сохраняется во временный двумерный массив:
Второй шаг алгоритма очень похож на первый. В качестве входных данных используется двумерный массив из предыдущего шага. Затем он передается в вертикальном направлении сверху вниз и снизу вверх по следующим формулам:
Описание алгоритма подразумевает, что обрабатываемые строки и столбцы независимы друг от друга. В результате решение на основе БИХ-фильтра часто применяется во встраиваемых системах и архитектурах, поддерживающих высокий уровень распараллеливания .
сглаживание | x-производная | y-производная | |
---|---|---|---|
0 | |||
1 | |||
-1 | |||
0 | |||
0 | |||
1 | |||
-1 | |||
0 | |||
1 | 1 | ||
1 | 1 |
Математические свойства алгоритма часто используются при практической реализации детектора Дериша. Достаточно реализовать только одну часть алгоритма, которая затем вызывается дважды, выполняя при этом транспозицию полученной матрицы.
Исходное изображение | ||||
---|---|---|---|---|
Отфильтрованное изображение | ||||
Параметры фильтра | α = 1,5 нижний порог = 20 высокий порог = 40 | α = 4,0 низкий порог = 50 высокий порог = 90 | α = 0,8 нижний порог = 26 высокий порог = 41 | α = 1,0 низкий порог = 15 высокий порог = 35 |
См. также
[ редактировать ]Дальнейшее чтение
[ редактировать ]- Р. Дериш, Использование критериев Кэнни для получения рекурсивно реализованного оптимального детектора границ , Int. Дж. Компьютерное зрение, Том. 1, стр. 167–187, апрель 1987 г.
- Р. Сирди, Нежное введение в детектор оптимальных краев Дериша , Éditions des Nik's news, 1998.
- Дж. Кэнни, Вычислительный подход к обнаружению границ , Транзакции IEEE по анализу шаблонов и машинному интеллекту, 8 (6): 679–698, 1986.