Автоматическая система распознавания автомобильных номеров - PullRequest
2 голосов
/ 20 сентября 2011

В настоящее время я делаю проект по распознаванию номерного знака транспортного средства на задней стороне, я сделал OCR в качестве предварительного шага, но я понятия не имею, как обнаружить прямоугольник (который является соответствующей областьюномерной знак, я прочитал много бумаг, но нигде не нашел полезной информации о распознавании прямоугольной области номерного знака.Я делаю свой проект с использованием Matlab.Пожалуйста, кто-нибудь, помогите мне с этим ...

Большое спасибо

Ответы [ 3 ]

3 голосов
/ 20 сентября 2011

Как вы упомянули, есть как минимум две отдельные фазы:

  1. Расположение номерного знака на изображении
  2. Распознавание номера лицензии по изображению

Поскольку на номерных знаках нет меток расположения (как, например, в QR-кодах), сложность распознавания номерного знака на изображении уменьшается за счет ограничения диапазона преобразования входящего изображения.

Успех многих систем ANPR зависит от точности местоположения и времени захвата оборудования для получения изображения, которое помещает номерной знак в пределах предсказуемого диапазона искажений.

Как только изображение захвачено, фаза местоположения может быть обработана с помощью статистического анализа для определения области изображения в форме «номерного знака», то есть той, которая имеет правильные пропорции для перспективы. Эта статья описывает один такой подход.

В этой статье и еще один описывают использование детектора краев Собела для определения вертикальных краев на номерном знаке.Причина заключается в том, что буквы образуют больше вертикальных линий по сравнению с фоном.

В другой статье сравнивается эффективность некоторых методов (включая обнаружение Собеля и вейвлеты Хаара), и это может быть хорошей отправной точкой.

2 голосов
/ 06 декабря 2013

Я выполнил свой проект по идентификации транспортных средств на основе оптического распознавания символов

Как правило, LPR состоит из трех основных этапов: Извлечение номерного знака из захваченного изображения, сегментация изображения для извлечения отдельных символов и распознавание символов . Все вышеперечисленные этапы обнаружения номерного знака являются наиболее сложными, поскольку они очень чувствительны к погодным условиям, условиям освещения и размещению номерного знака, а также другим артефактам, таким как рамка, символы или логотип, которые размещены на изображении номерного знака. В Индии номер лицензии написан либо в один ряд, либо в два.

Для скорости и точности системы LPR оба являются очень важными факторами. В некоторых литературных источниках уровень точности хорош, но скорость системы меньше. Подобно нечеткой логике и подходу нейронной сети, уровень точности хорош, но они очень трудоемки и сложны. В нашей работе мы сохранили баланс между сложностью времени и точностью. Мы использовали метод определения края и вертикальную и горизонтальную обработку для локализации номерного знака. Обнаружение края выполняется оператором «Робертс». Анализ связанных компонентов (CCA) с определенным пороговым значением используется для сегментации. Для распознавания символов мы использовали сопоставление шаблонов по корреляционной функции, а для повышения уровня сопоставления мы использовали расширенную базу данных.

Мой подход к проекту

  1. Ввод изображения с веб-камеры / камеры.
  2. Конвертировать изображение в двоичный файл.
  3. Определить область номерного знака.
  4. сегментация.
  5. Идентификационный номер.
  6. Отображение в графическом интерфейсе.

Мой подход к извлечению номерного знака

  1. Возьмите данные с веб-камеры / камеры.
  2. Преобразовать его в полутоновое изображение.
  3. Рассчитать пороговое значение.
  4. Обнаружение края с помощью оператора Робертса.
  5. Рассчитать горизонтальную проекцию.
  6. Обрезать изображение по горизонтали, сравнивая с пороговым значением в 1,3 раза.
  7. Рассчитать вертикальную проекцию.
  8. Обрезать изображение по вертикали.

Мой подход к сегментации

  1. Преобразование извлеченного изображения в двоичное изображение.
  2. Найти комплиментальное изображение извлеченного двоичного изображения.
  3. Удалить подключенный компонент, значение пикселя которого составляет менее 2% площади.
  4. Рассчитать количество подключенных компонентов.
  5. Для каждого подключенного компонента найдите значение строки и столбца
  6. Рассчитать динамический порог (DM).
  7. Удаление нежелательных символов из сегментированных символов с применением определенных условий
  8. Хранить сегментированные символы координат.

Мой подход к признанию

  1. Инициализировать шаблоны.
  2. Для каждого сегментированного символа повторите шаги с 2 по 7
  3. Преобразование сегментированных символов в размер изображения базы данных, т.е. 24x42.
  4. Найти значение коэффициента корреляции сегментированного символа с каждым изображением базы данных и сохранить это значение в массиве.
  5. Узнать позицию индекса максимального значения в массиве.
  6. Найдите букву, которая является ссылкой по этому значению индекса
  7. Сохраните эту букву в массиве.
1 голос
/ 16 января 2014

Проверьте OpenALPR (http://www.openalpr.com).. Он распознает области пластин с помощью OpenCV и алгоритма LBP / Haar. Это позволяет ему распознавать как светлые участки на темных, так и темных областях светлых пластин. После того, как он распознает общую область, он использует OpenCV для локализации на основе сильных линий / краев изображения.

Он написан на C ++, так что, надеюсь, вы сможете его использовать. Если нет, то, по крайней мере, это ссылка.

...