Как распознать номерной знак транспортного средства по изображению с помощью Open ALPR (автоматическое распознавание номерных знаков) в Windows

OpenALPR библиотека с открытым исходным кодом для автоматического распознавания номерных знаков, написанная на C ++ с привязками на C #, Java, Node.js, Go и Python. Библиотека анализирует изображения и видеопотоки для идентификации номерных знаков. Выводом является текстовое представление любых символов номерного знака, распознанных на обработанном изображении. Тем не менее, в данной статье мы заинтересованы только в инструменте CLI, который облегчит взаимодействие с библиотекой, не зная, какой язык программирования необходимо использовать для работы с этим инструментом. OpenALPR включает утилиту командной строки, просто набираяalpr [image file path]«достаточно, чтобы начать распознавать изображения номерного знака!

В этой статье мы расскажем вам, как легко распознать номерной знак автомобиля с помощью этого инструмента CLI в среде Windows.

1. Загрузите последнюю версию Open ALPR

В качестве первого шага вам понадобится исполняемый файл (двоичные файлы) Open ALPR для Windows. К счастью, вам не нужно строить их, как вы можете легко скачать их со страницы релизов проекта в Github здесь. После загрузки zip-файла в соответствии с вашей архитектурой (x86 или x64) разархивируйте его содержимое, например, в некоторый каталог, так как мы добавим путь к исполняемому файлу в качестве переменной среды в Windows, чтобы мы могли просто ввести alpr вместо полного пути к исполняемому файлу мы разархивируем его в C:\Program Files\openalpr_64 каталог.

Внутри папки вы найдете alpr.exe файл, это утилита CLI, которую мы будем использовать в этом руководстве, так что теперь вы можете определить каталог, в котором находится исполняемый файл в ПУТИ Windows (см. эту статью, чтобы узнать, как редактировать и устанавливать переменные среды) или выполните команды с абсолютным путем, например:

"C:\\Program Files\\openalpr_64\\alpr.exe" "C:\\Program Files\\openalpr_64\\demo.jpg"

Но если вы зарегистрируете каталог внутри пути, команду будет проще написать:

alpr "C:\\Program Files\\openalpr_64\\demo.jpg"

Получив двоичный файл, перейдите к следующему шагу, чтобы узнать, как его использовать. Для получения дополнительной информации о ALPR, пожалуйста, посетите официальный репозиторий на Github здесь.

2. Использование из CLI

Теперь, когда у вас есть бинарный файл, вы можете либо перейти в каталог, где расположен исполняемый файл, в нашем случае это:

cd C:\Program Files\openalpr_64

Затем просто запустите команду alpr предоставив в качестве первого аргумента абсолютный / относительный путь к изображению, которое вы хотите отсканировать:

alpr ./demo.jpg

И все, alpr начнет обработку заданного изображения и напечатает результаты в консоли:

Распознавание автомобильных номеров ALPR

Укажите регион пластины

Как вы знаете, по всему миру существуют разные типы табличек с разной длиной и распределением, что означает, что в некоторых случаях alpr потребуется некоторая помощь для правильной идентификации. Вот почему вы можете указать код региона, который alpr будет использовать для правильной идентификации идентификации таблички, например, если вы попытаетесь идентифицировать другую табличку стиля региона (европейская табличка с распространением США по умолчанию), вы найдете «Номера не найдены». сообщение в CLI, чтобы предотвратить это, зная область пластины, укажите код с -c или же --country флаг со значением (которое us по умолчанию):

REM An european vehicle
alpr image.jpg --c eu
REM An american vehicle
alpr image.jpg --c us

Смотрите следующий пример:

Europa Vehicle Plate

Заметка

Хотя нет кода для каждой страны в мире, вам нужно будет указать код. Обычно он должен работать практически на любой пластине с кодом us и eu, однако другие допустимые значения: us, eu, au, auwide, gb, kr, mx, sg. Например, в изображении статьи мы используем колумбийское транспортное средство, однако используемый нами код работал, чтобы распознать его, следуя аналогичной схеме.

Генерация вывода в формате JSON

Если вы хотите проанализировать сгенерированный вывод из приложения от вашего авторитета, например, приложения, написанного на каком-то языке программирования, таком как PHP, Node.js, Python и т. Д., Вы можете извлечь информацию в универсальном читаемом формате, таком как JSON, просто добавьте --json пометить команду:

alpr image.jpg --json

И инструмент CLI с выводом вместо исходного текста, структурированный объект JSON со следующей структурой:

{
"version": 2,
"data_type": "alpr_results",
"epoch_time": 1546207403000,
"img_width": 768,
"img_height": 1024,
"processing_time_ms": 33.806999,
"regions_of_interest": [],
"results": [
{
"plate": "KKV939",
"confidence": 89.048828,
"matches_template": 0,
"plate_index": 0,
"region": "",
"region_confidence": 0,
"processing_time_ms": 10.102,
"requested_topn": 10,
"coordinates": [
{
"x": 305,
"y": 535
},
{
"x": 481,
"y": 533
},
{
"x": 484,
"y": 613
},
{
"x": 308,
"y": 616
}
],
"candidates": [
{
"plate": "KKV939",
"confidence": 89.048828,
"matches_template": 0
},
{
"plate": "KKV9S9",
"confidence": 80.908226,
"matches_template": 0
},
{
"plate": "KKV99",
"confidence": 78.569084,
"matches_template": 0
},
{
"plate": "KXV939",
"confidence": 75.373528,
"matches_template": 0
},
{
"plate": "KV939",
"confidence": 74.683296,
"matches_template": 0
},
{
"plate": "KXV9S9",
"confidence": 67.232918,
"matches_template": 0
},
{
"plate": "KV9S9",
"confidence": 66.542694,
"matches_template": 0
},
{
"plate": "KXV99",
"confidence": 64.893784,
"matches_template": 0
},
{
"plate": "KV99",
"confidence": 64.203545,
"matches_template": 0
}
]
}
]
}

Улучшения библиотеки OpenALPR всегда приветствуются. Поэтому, пожалуйста, просмотрите OpenALPR дизайн описание и начать. Вклады кода не единственный способ помочь. У вас есть большая библиотека изображений номерных знаков? Если это так, пожалуйста, загрузите свои данные на анонимный FTP, расположенный на upload.openalpr.com. У вас есть время, чтобы «пометить» изображения пластин на входном изображении или помочь другими способами? Пожалуйста, сообщите всем об этом, разместив заметку на форуме.

Ссылка на основную публикацию
Adblock
detector