Автоматическая система распознавания автомобильных номеров
Я в настоящее время делал проект по распознаванию номерного знака транспортного средства на задней стороне, я сделал OCR в качестве предварительного шага, но я понятия не имею, как определить лицензию прямоугольной формы (которая является соответствующей областью автомобиля) номерной знак, я прочитал много статей, но нигде не нашел полезной информации о распознавании прямоугольной области номерного знака. Я делаю свой проект с использованием Matlab. Пожалуйста, кто-нибудь, помогите мне с этим...
Большое спасибо
3 ответа
Я выполнил свой проект по идентификации транспортных средств на основе оптического распознавания символов
В целом, LPR состоит из трех основных этапов: извлечение номерного знака из захваченного изображения, сегментация изображения для извлечения отдельных символов и распознавание символов. Все вышеперечисленные этапы обнаружения номерного знака являются наиболее сложными, поскольку они очень чувствительны к погодным условиям, условиям освещения и размещению номерного знака, а также другим артефактам, таким как рамка, символы или логотип, которые размещены на изображении номерного знака. В Индии номер лицензии написан или в один ряд или в два ряда.
Для скорости и точности системы LPR оба являются очень важными факторами. В некоторых литературных источниках уровень точности хорош, но скорость системы меньше. Подобно нечеткой логике и подходу нейронной сети, уровень точности хорош, но они очень трудоемки и сложны. В нашей работе мы поддерживали баланс между сложностью времени и точностью. Мы использовали метод определения края и вертикальную и горизонтальную обработку для локализации номерного знака. Обнаружение края выполняется оператором "Робертс". Анализ связанных компонентов (CCA) с определенным пороговым значением используется для сегментации. Для распознавания символов мы использовали сопоставление шаблонов по корреляционной функции, а для повышения уровня сопоставления мы использовали расширенную базу данных.
Мой подход к проекту
- Введите изображение с веб-камеры / камеры.
- Конвертировать изображение в двоичный файл
- Определить площадь номерного знака.
- Сегментация.
- Идентификация номера.
- Отображение в графическом интерфейсе.
Мой подход к извлечению номерного знака
- Возьмите вход с веб-камеры / камеры.
- Преобразуйте его в серое изображение.
- Рассчитать пороговое значение.
- Обнаружение края с помощью оператора Робертса.
- Рассчитать горизонтальную проекцию.
- Обрезать изображение по горизонтали, сравнивая с пороговым значением в 1,3 раза.
- Рассчитать вертикальную проекцию.
- Обрезать изображение по вертикали.
Мой подход к сегментации
- Преобразовать извлеченное изображение в двоичное изображение.
- Найти в комплименте изображение извлеченного двоичного изображения.
- Удалите подключенный компонент, значение пикселя которого составляет менее 2% площади.
- Рассчитать количество подключенных компонентов.
- Для каждого подключенного компонента найдите значение строки и столбца
- Рассчитать динамический порог (DM).
- Удалите ненужные символы из сегментированных символов, применяя определенные условия
- Хранить сегментированные символы координат.
Мой подход к признанию
- Инициализируйте шаблоны.
- Для каждого сегментированного символа повторите шаги с 2 по 7
- Преобразование сегментированных символов в размер изображения базы данных, т.е. 24x42.
- Найти значение коэффициента корреляции сегментированного символа с каждым изображением базы данных и сохранить это значение в массиве.
- Выясните позицию индекса максимального значения в массиве.
- Найдите букву, которая является ссылкой по этому значению индекса
- Сохраните это письмо в массиве.
Как вы упомянули, есть как минимум две отдельные фазы:
- Расположение номерного знака на изображении
- Распознавание номера лицензии по изображению
Поскольку на номерных знаках нет меток расположения (как, например, в QR-кодах), сложность распознавания номерного знака на изображении снижается за счет ограничения диапазона преобразования входящего изображения.
Успех многих систем ANPR зависит от точности местоположения и времени захвата оборудования для получения изображения, которое помещает номерной знак в пределах предсказуемого диапазона искажений.
Как только изображение захвачено, фазу местоположения можно обработать, используя статистический анализ для определения области изображения в форме "номерного знака", то есть той, которая имеет правильные пропорции для перспективы. Эта статья описывает один такой подход.
В этой и другой статье описывается использование детектора краев Собела для определения вертикальных краев на номерном знаке. Причина заключается в том, что буквы образуют больше вертикальных линий по сравнению с фоном.
Другая статья сравнивает эффективность некоторых методов (включая обнаружение Собеля и вейвлеты Хаара) и может быть хорошей отправной точкой.
Проверьте OpenALPR ( http://www.openalpr.com/). Он распознает области пластины, используя OpenCV и алгоритм LBP/Haar. Это позволяет ему распознавать как свет в темноте, так и темный в областях светлых пластин. После того, как он распознает общую область, он использует OpenCV для локализации на основе сильных линий / краев изображения.
Он написан на C++, так что, надеюсь, вы сможете его использовать. Если нет, по крайней мере, это ссылка.