В прошлом году в Виктории (Австралия) было украдено больше 16 тысяч автомобилей, что принесло собственникам более 170 миллионов долларов убытков. Для борьбы с угонами правоохранительные органы Виктории уже используют веб-приложение для проверки статуса регистрации автомобиля, а также стационарный сканер для номерных знаков.
Тейт Браун, разработчик из Австралии, подумал, что было бы неплохо установить на автомобили сканеры, которые могли бы распознавать номера машин на ходу, прогонять информацию через базу угона и автоматически уведомлять, если авто не зарегистрировано или числится угнанным.
Программист был удивлен, узнав, что полиция Виктории как раз занимается внедрением такой системы. Установка подобных девайсов на 220 автомобилей оценивается в $86 млн., то есть оборудование всего одного авто обойдется больше чем в $390 тысяч.
Разработка аналога
Впечатленный суммой, Тейт Браун решил попробовать создать свой аналог программного обеспечения для подобных устройств. Он определил для себя три ключевых момента касательно будущего кода:
- Программа-сканер должна уметь работать с изображениями в низком качестве, ведь получить хорошую картинку на ходу довольно сложно даже с качественной техникой
- Обрабатывать информацию следует локально. Стримить видео в центральное хранилище для дальнейшей обработки довольно бессмысленно, к тому же будет нагружать трафик. Анализ информации на удаленной мощной машине с хорошим программным обеспечением может быть более качественным, но стоит проверить, будет ли достаточно хорош результат локальной обработки.
- Код должен быть написан с использованием технологий open source.
Результатом стала программа, которая не только сканирует номерной знак, но и определяет марку и модель машины на случай, если украденным является только номер.
Для анализа изображений используется openalpr, библиотека с открытым кодом. Тейт Браун опасался, будет ли система корректно работать с австралийскими номерами (библиотека рассчитана на американские номера), но опасения оказались беспочвенными. Некоторые буквы распознаются хуже, но в целом определяются верно.
Стоят ли 57 строк кода $86 млн.?
Весь код, написанный Тейтом, состоит всего из 57 строк. Это вселяет в разработчика уверенность, что система, устанавливаемая полицией, должна стоить существенно дешевле 86 миллионов. Он предполагает, что часть бюджета будет потрачена на замену существующих баз данных и улучшение программного обеспечения (что позволит снимать каждую машину несколько раз в секунду), но сумма все равно кажется Брауну завышенной.
Также программист указал на возможность привлечения добровольных помощников полиции. Например, такими сканерами можно было бы оснастить автомобили водителей Uber и Lyft, что позволит значительно расширить охват территории.
Подробности своей разработки и код Тейт Браун изложил в своем блоге.
[customscript]techrocks_custom_after_post_html[/customscript]
[customscript]techrocks_custom_script[/customscript]