Какие методы анализа изображений я могу использовать для извлечения дорожных знаков из изображения, такого как изображение ниже?
Редактировать:
После анизотропной диффузии: фон, который я не хочу, немного очищается
После Дилатации:
Thresholding после Diffusion: не в состоянии определить лучший порог для этой цели
Однако я не могу понять, как удалить фон?
Изменить: я просто хочу эти части моего изображения
Получение другого входного изображения:
Применение медианной фильтрации и обнаружения краев:
После фильтрации нижнего колпака:
Как изолировать дорожные знаки, пожалуйста, помогите?
Ответы:
Вы пробовали что-то простое, например, корреляцию?
( РЕДАКТИРОВАТЬ ). Идея корреляции заключается в том, чтобы использовать шаблон (в вашем случае обученный образец дорожного знака) и сравнить его с каждой позицией на тестовом изображении. Операция сравнения, которую я использовал для генерации изображений ниже, называется нормализованной взаимной корреляцией . Грубо говоря, вы стандартизируете (среднее = 0, стандартное отклонение = 1) пиксели в шаблоне и той части изображения, которую хотите сопоставить, умножаете их попиксельно и вычисляете среднее значение продуктов. Таким образом, вы получаете «оценку соответствия», то есть меру сходства между шаблоном и тестовым изображением в каждой позиции тестового изображения. Позиция с наилучшим соответствием (самая высокая корреляция) является наиболее вероятным кандидатом на позицию дорожного знака. (На самом деле, я использовал функцию MathematicaCorrelationDistance для генерации изображения ниже, которое равно 1 - (нормализованная корреляция). Таким образом, самое темное пятно на изображении соответствует лучшему совпадению).
У меня нет других шаблонов, поэтому я просто обрезал знак со второй фотографии, которую вы разместили:
Несмотря на то, что шаблон слегка повернут, кросс-корреляция все еще выглядит полезной
и лучшее совпадение находится в правильном положении:
(Конечно, вам понадобится несколько масштабированных версий каждого шаблона для обнаружения знаков любого размера)
источник
Во время моей магистерской программы, в которой участвовал мой супервайзер, он занимался обнаружением и распознаванием всех видов различных сигналов дорожного движения в видеопоследовательности (например, обнаружение дороги, обнаружение линии дороги, а также обнаружение и распознавание дорожных знаков ). Кадры видео, над которыми мы работали, во многом похожи на ваши примеры изображений.
Хотя я лично не работал с дорожными знаками, я думаю, что лучшие результаты были получены с использованием алгоритма Виолы-Джонса (статья) . Короче говоря, это алгоритм, который использует каскад слабых классификаторов (с точностью чуть выше, чем у случайного алгоритма) для построения сильного классификатора, который будет устойчив даже в сложных задачах.
Проект назывался MASTIF (картирование и оценка состояния инфраструктуры трафика) и проделал действительно хорошую работу. Страница публикации проекта может быть действительно полезной, поскольку она содержит ссылки на все опубликованные статьи, связанные с проектом. Просто чтобы дать вам представление, позвольте мне выделить некоторые публикации (в хронологическом порядке):
Еще раз, я лично не работал над дорожными знаками, но я думаю, что вы можете найти много полезного материала здесь. Кроме того, я бы посоветовал просмотреть цитируемые ссылки в газетах, поскольку они также могут помочь.
источник
Что ж, поиск в Google
road way signs detection
дает вам много хороших статей на эту тему.Некоторые используют цветовую сегментацию из-за своеобразного синего, зеленого, красного цветов и т. Д.
Некоторые применяют сначала сглаживание по Гауссу, а затем обнаружение контуров и поиск контуров для извлечения вывески.
Попробуйте следующие две ссылки: Ссылка 1 , Ссылка 2
источник
Я определенно не эксперт здесь, но вы можете начать с определения ребер (например, canny), а затем преобразовать, чтобы обнаружить круги, прямоугольники, квадраты или треугольники (на основе знака, который вы хотите обнаружить), затем вы можете сделать шаблон сопоставление или сопоставление гистограммы, если цвета достаточно различимы (по кандидатам, возвращенным грубым преобразованием).
Первый шаг (определение кандидатов с использованием грубого преобразования) - более сложный шаг. Я могу придумать много способов попытаться определить, является ли этот кандидат знаком или нет. Это забавная проблема. Наслаждайтесь решением этого :)
Кстати, я уверен, что вы можете найти хорошие исследовательские статьи, которые тесно связаны
источник