Видеорегистратор с функцией распознавания номеров

Добавил пользователь Алексей Ф.
Обновлено: 19.09.2024

Системы распознавания автомобильных номеров можно поделить на 2 группы: распознование на "борту" камеры и на сервере (видеорегистраторе). В перовом случае серьезные аппаратные требования предъявляются к производительности камер, поэтому такие камеры стоят недешево. Во втором случае нужно мощное компьютерное железо, поэтому такие сервера тоже стоят недешево.

Цилиндрическая ANPR-камера для транспорта , Матрица 1/1.8″ Progressive Scan CMOS , 50 Гц: 1920 × 1080 50 к/с , Цвет: 0.001 лк (F1.2, AGC вкл.), 0,0005 лк с ИК-подсветкой , H.265, H.264 , 140 дБ WDR , 3D DNR , Wiegand 26 , Тревожный вход / выход , 1 интерфейс RS-485 , Дальность ИК-подсветки до 100 м , Два установленных потока , Встроенный слот для microSD / TF-карты, есть, до 128 ГБ , Распознавание номерных знаков ТС , IP67, IK10

Цилиндрическая ANPR-камера для транспорта , Матрица 1/1.8″ Progressive Scan CMOS , 50 Гц: 1920 × 1080 50 к/с , Цвет: 0.001 лк (F1.2, AGC вкл.), 0,0005 лк с ИК-подсветкой , H.265, H.264 , 140 дБ WDR , 3D DNR , Wiegand 26 , Тревожный вход / выход , 1 интерфейс RS-485 , Дальность ИК-подсветки до 100 м , Два установленных потока , Встроенный слот для microSD / TF-карты, есть, до 128 ГБ , Распознавание номерных знаков ТС , IP67, IK10

(1 канал до 200 кмч на плате Maxima 1) модуль предназначен для автоматического распознавания автомобильных номеров, попавших в поле зрения видеокамеры. Система может использоваться для контроля въезда/выезда автотранспорта c территории предприятий, парковок.

(1 канал до 30 кмч на плате Maxima 1) модуль предназначен для автоматического распознавания автомобильных номеров, попавших в поле зрения видеокамеры. Система может использоваться для контроля въезда/выезда автотранспорта c территории предприятий, парковок.

(2 канала до 200 кмч на плате Maxima 2) модуль предназначен для автоматического распознавания автомобильных номеров, попавших в поле зрения видеокамеры. Система может использоваться для контроля въезда/выезда автотранспорта c территории предприятий, парковок.

(2 канала до 30 кмч на плате Optima 2) модуль предназначен для автоматического распознавания автомобильных номеров, попавших в поле зрения видеокамеры. Система может использоваться для контроля въезда/выезда автотранспорта c территории предприятий, парковок.

(3 канала до 200 кмч на плате Maxima 3) модуль предназначен для автоматического распознавания автомобильных номеров, попавших в поле зрения видеокамеры. Система может использоваться для контроля въезда/выезда автотранспорта c территории предприятий, парковок.

(3 канала до 30 кмч на плате Optima 3) модуль предназначен для автоматического распознавания автомобильных номеров, попавших в поле зрения видеокамеры. Система может использоваться для контроля въезда/выезда автотранспорта c территории предприятий, парковок.

(4 канала до 200 кмч на плате Maxima 4) модуль предназначен для автоматического распознавания автомобильных номеров, попавших в поле зрения видеокамеры. Система может использоваться для контроля въезда/выезда автотранспорта c территории предприятий, парковок.

(4 канала до 30 кмч на плате Optima 4) модуль предназначен для автоматического распознавания автомобильных номеров, попавших в поле зрения видеокамеры. Система может использоваться для контроля въезда/выезда автотранспорта c территории предприятий, парковок.

|канал до 30 кмч| модуль для автоматического распознавания автомобильных номеров, попавших в поле зрения видеокамеры. Система может использоваться для контроля въезда/выезда автотранспорта c территории предприятий, парковок.

(доп. канал 200 км/ч) модуль для автоматического распознавания автомобильных номеров, попавших в поле зрения видеокамеры. Система может использоваться для контроля въезда/выезда автотранспорта c территории предприятий, парковок.

Модуль интеграции с радарами Искра (Симикон) для использования с системой распознавания номеров AutoTRASSIR.

Программное обеспечение измерения и контроля средней скорости на участке дороги, генерация отчетов о средней скорости автомобилей. Требует установку как минимум двух модулей распознавания автономеров (LPR) AutoTRASSIR-200 (в комплект не входят). Цена за один участок дороги.

Программное обеспечение для контроля количества и времени пребывания автомобилей на территории парковки. Требует установку как минимум двух модулей распознавания автономеров (LPR) AutoTRASSIR-30 (в комплект не входят). Цена за одну парковку.

модуль интеграции аппаратного распознавателя номеров IP-видеокамеры в систему AutoTRASSIR (Hikvision, и др., список поддерживаемых видеокамер уточняйте в ДССЛ). Максимальное количество распознающих камер на сервер, благодаря минимальной загрузке CPU сервера.

VR10

Подарок 446-003

Радар для обнаружения и идентификации различных транспортных средств, расстояние определения: 1–6 м, мощность сигнала: 12.5 дБм, потребляемая мощность: 2.5 Вт. 108х73х18 мм

Бюджетный специальный программный модуль распознавания автономеров для использования совместно со СКУД Gate (1 канал видео) БЕЗ НДС

Комплект для организации парковки с определеним номеров. Состав: 1) серверTRASSIR NeuroStation (опция стоечное исполнение TRASSIR NeuroStation Compact RE) ,2) камера DS-2CD2023G0E-I -1 шт- лицензия в подарок, 3) лицензия на определение номеров, по кол-ву каналов AutoTRASSIR-30/1 -1 шт, 4) модуль AutoTRASSIR-30 Parking-длястатистики въезжающих/выезжающих,5)бесплатный скрипт на открытие шлагбаума

Комплект для организации парковки с определеним номеров. Состав: 1) сервер TRASSIR NeuroStation (опция стоечное исполнение TRASSIR NeuroStation Compact RE) ,2) камера DS-2CD2023G0E-I (2.8 мм) -1 шт - лицензия в подарок, 3) лицензия на определение номеров, по кол-ву каналов AutoTRASSIR-30/1 -1 шт 4) бесплатный скрипт на открытие шлагбаума

Распознавание автомобильных номеров на камере видеонаблюдения появилась относительно недавно. Стоимость системы распознавания автомобильных номеров в многих случаях фактически равна стоимости смарт камеры видеонаблюдения.

  • открытие шлагбаума для въезда на территорию
  • автоматизированная выписка штрафов
  • расчет стоимости парковки
  • оповещение оператора о совпадении номера с базой номеров

Распознавание автомобильных номеров полезная информация:

Задачи автоматизированного анализа видеоизображений (ААВ),так или иначе связанные с автомобильным транспортом, весьма разнообразны. Компании-разработчики предлагают все новые и новые функции программного обеспечения (ПО), интересные и полезные для заказчиков. Условно можно выделить две основных группы задач, связанных с анализом изображений автотранспортных средств (АТС).

Технологии в системах видеонаблюдения стремительно развиваются. Аналитика на видеосервере и с помощью вычислительных средств камеры, распознавание лиц и номеров являются неотъемлемой частью многих систем. Как следствие, видеонаблюдение используется не только в обеспечении безопасности, но и для решения бизнес-задач: анализа поведения посетителей в торговом зале, подсчета посетителей на входе/выходе из магазина, организациии систем доступа по алгоритмам распознавания лиц, автоматизации паркинга и др. Одним из наиболее востребованных решений для бизнес-аналитики является распознавание автомобильных номеров

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



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


Что такое распознавание лиц?

Распознавание лиц (Face Recognition - англ.) - это одни из наиболее перспективных методов биометрической бесконтактной идентификации человека по лицу.

Первые системы распознавания лиц были реализованы как программы устанавливаемые на компьютер. В наше время технология распознавания лиц наиболее часто используется в системах видеонаблюдения, контроля доступа, на разнообразных мобильных и облачных платформах. Журнал Массачусетского технологического института - MIT Technology Review включил технологию распознавания лиц в список 10 прорывных технологий 2017 года.

Если вы думаете что про фантастическую эффективность я для красного словца сболтнул, то не на самом деле я затруднился подобрать должный эпитет. Но вот проиллюстрировать затруднений нет никаких. В Китае в базе данных единой системы слежения и распознавания более миллиарда человек. В реальном времени система использует 170 миллионов камер.

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

Видео на английском, но там и без перевода все понятно, посмотрите это действительно интересно.

Китайцы, конечно, не считают систему совершенной: они хотят в ближайшие три года добавить ещё каких-то 400 миллионов камер. Чтобы был настоящий китайский масштаб: полмиллиарда камер в реальном времени мониторят 1,4 млрд человек. Ждём реакции Яровой.

По оценке Bloomberg , мировой рынок распознавания лиц вырастет с 4,05 млрд. долларов в 2017 году до 7,76 млрд. долларов США к 2022 году.





Как работает система распознавания лиц?

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


Наиболее распространенная схема реализации — IP-камера передает видеопоток на сервер, на сервере специализированное программное обеспечение для выполняет анализ видеопотока и сравнение полученных из видеопотока изображений лиц, с базой лиц эталонов.

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



В данном случае анализ изображения будет производится на самой камере, а на сервер будут передаваться обработанные метаданные.

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



В отличии от первых двух схем где используются IP-камеры, в данном случае камера встроена в устройство контроля доступа, которое кроме распознавания лица которое естественно происходит на устройстве, выполняет функции управления доступом как правило через турникет или электрозамок установленный на дверь. База данных лиц эталонов хранится на устройстве, и как правило уже не в виде фотоизображений.

Недостатки — как правило все такие устройства выпускаются для использования в помещениях.
Преимущества — низкая стоимость систем по сравнению с системами видеонаблюдения используемыми для распознавания лиц.

В любом случае успех реализации проектов по распознаванию лиц зависит от трех важных факторов:
• Алгоритм распознавания
• Базы данных распознанных лиц (эталонов)
• Быстродействие алгоритма



Технология распознавания лиц


Недостатки
Более высокие коэффициенты ошибок FAR и FRR по сравнению с 3D распознаванием лиц.


3D-распознавание лиц
3D распознавание (Three-dimensional face recognition - англ.) производится как правило по реконструированным трехмерным образам. Технология 3D распознавания лиц имеет более высокие качественные характеристики. Хотя конечно и она не является идеальной.

Существует несколько разнообразных технологиях 3D сканирования. Это могут быть лазерные сканеры с оценкой дальности от сканера до элементов поверхности объекта, специальные сканеры со структурированной подсветкой поверхности объекта и математической обработкой изгибов полос, либо это могут быть сканеры, обрабатывающие фотограмметрическим методом синхронные стереопары изображений лиц.

Одним из наиболее исследованных потребителями и экспертами 3D сканеров является знаменитый Face ID, от компании Apple. Опыт использования Face ID крайне интересен и показателен, потому что по сути это единственное устройство с технологией 3D распознавания лиц выпущенное на масс маркет, если конечно можно считать телефон за сотку устройством для масс маркета.

3D технология от Apple единственная в мире использует - вертикально-излучающие лазеры (VCSEL), по слухам суммарно потратив на разработку Face ID от 1,5 до 2 миллиардов долларов. Поставщиком VCSEL для Apple выступают две компании Finisar Corp (инвестиции Apple - 390 млн. долларов ) и Lumentum Holdings . И судя по тому что другие 3D технологии, не показывают такой эффективности как Face ID, разблокировка по лицу на смартфонах на Android, появится не скоро.

Естественно с задачами идентификации близнецов Face ID не справляется, хотя этого никто и не ожидал, но даже с близкими родственниками случаются фейлы .
Ну и скорее комичный момент, но по началу Face ID не различал азиатов , но проблему настолько быстро пофиксили, что Apple даже не успели вчинить ни одного иска за расизм.


Преимущества 3D
Большая точность и меньшее количество ошибок пока недостижимое для 2D систем распознавания лиц.

Недостатки 3D
Достаточно легко подделать для профессионалов
Даже Face ID несмотря на всю крутость был взломан вьетнамской компанией Bkav сразу после поступления в продажу. Маска была создана с помощью 3D принтера. Себестоимость создания маски всего $150. Создание маски достаточно сложно для обычного человека, и ваша мама вряд ли сможет это повторить, но для профессионалов это как два пальца об асфальт.

Не используйте 3D распознавания лиц для защиты от несанкционированного доступа к ноутбукам, смартфонам, помещениям с особым уровнем секретности, все они могут быть с легкостью взломаны профессионалами.

• 3D распознавание требует специальных камер для сканирования, которые в несколько раз дороже обычных камер видеонаблюдения которые используется в 2D распознавании.
• Отсутствие готовых баз данных идентифицированных лиц, по сравнению с 2D распознаванием
• Распознавание близнецов, остается сложной задачей для алгоритмов распознавания лиц. В среднем в мире рождается 13.1 близнецов на 1000 новорожденных , и эта цифра сильно колеблется в зависимости от географического региона.



Технология достаточно перспективная так как позволяет нивелировать болевые точки 2D-распознавания.

• Распознавания лиц в полной темноте и в условиях недостаточного освещения
• Макияж, прическа, борода, шляпа, очки — не являются проблемой для тепловизионных камер
• Позволяют распознавать близнецов



Можно выделить два направления, в которых ведется разработка:
• Идентификация по заранее созданным термограммам идентифицированных лиц. Здесь проблемы те же что и с 3D-распознавание, готовых баз данных эталонов нет, оборудование дорогое.
• Идентификация человека по изображениям полученным с тепловизионной камеры, а в качестве лиц эталонов используются база данных обычных двумерных изображений. Решается задача как вы наверное уже догадались использованием глубоких нейронных сетей.

Распознавание лиц по текстуре кожи и по тепловизионному изображению. работает, только в лаборатории, и то не идеально. Но мы внимательно наблюдаем, и если что сразу дадим вам знать.

Качество программного обеспечения

Современные системы видеонаблюдения – это не только сбор видеопотока, но и широкие возможности видеоаналитики. Такие функции, как подсчет числа посетителей, распознавание лиц, распознавание и фиксация автомобильных номеров, уверенно вышли за пределы интересов и юрисдикции спецслужб на решение ежедневных бизнес-задач.

Остановимся чуть подробнее на одной из востребованных функций видеоанализа – распознавание автомобильных номеров. Иногда система видеонаблюдения интегрируется с системой контроля доступа: камера считывает номер автомобиля, система аналитики сверяет полученное изображение со списком номеров из базы данных и при нахождении совпадения отправляет подтверждение СКУД на пропуск автомобиля.

Отдельно отметим, что при проектировании системы видеонаблюдения необходимо разделить задачи распознавания автомобильных номеров и обзорную функцию (перемещения техники и пешеходов, расположение камер в зависимости от условий наблюдаемого участка и т. д.). Для камеры, предназначенной для распознавания номеров, существуют ограничения на размещение и настройки. Фокус камеры должен быть направлен строго на участок, предназначенный для проезда автомобилей (в большинстве случаев это 3–4 м). В связи с этим рекомендуется использовать камеры с фиксированным объективом, они к тому же обычно имеют лучшие характеристики по светочувствительности по сравнению с моторизованными объективами.

Камеру с каким разрешением лучше выбрать?

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

Для расчета используется формула (w/n)*p: где w – ширина обзора в зоне фиксации номера (м), n – размер автомобильного номера (м), p – рекомендованная ширина изображения номера в пикселях.

Если примем ширину просматриваемого участка 3 м, среднюю ширину номерного знака 0,52 м, а оптимальный размер изображения (по практике) 200 пикселей, то получим: (w/n)*p = (3/0,52)*200 = 1154 пикселя.

Расчет показывает, что нам подойдет камера с разрешением HD (1280 х 720 пикселей).

Камеры для системы распознавания должны иметь определенные характеристики

Следует учитывать физический размер матрицы. Чем больше матрица, тем больше ее светочувствительность. Минимально допустимый размер матрицы для распознавания номеров – 1/3 дюйма. Наиболее эффективны матрицы размером 1/2 дюйма и выше.


Рисунок 1. Сравнение изображений, получаемых в темное и светлое время суток с камер, отличающихся размером матрицы

При выборе камеры следует также учитывать параметр светосилы. Он определяется выбором объектива для камеры и указывается в виде F-числа, (соотношение фокусного расстояния и величины раскрытия диафрагмы). Чем больше светосила, тем больше света попадет на матрицу камеры, а соотношение сигнал/шум, соответственно, выше. На самом изображении станет меньше цифровых шумов. Для распознавания номеров требуется объектив со светосилой не меньше F/1,4. Объектив с F/1,3 будет являться более светосильным.

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

Обратим внимание и на такую характеристику камеры, как количество кадров в секунду. Производители рекомендуют камеру с частотой кадров 25к/с. Однако на практике на тех объектах, где машины движутся с низкой скоростью, камеры переводят в режим 12к/с и ниже, снимая тем самым нагрузку на оборудование, которое обрабатывает информацию.

Размещение видеокамеры

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

1. Угол наклона номерного знака не должен превышать 5° относительно оси x в двухмерном варианте изображения.

2. Камера должна быть направлена таким образом, чтобы горизонтальный и вертикальный углы не превышали 30°.


Для захвата двух полос движения можно разместить камеру следующим образом:
3. Располагать камеру следует на высоте от 2 до 6 метров. При размещении на объектах, имеющих шлагбаум, необходимо учесть, что сам шлагбаум образует определенную зону отчуждения.
4. После установки камеры днем требуется обязательная проверка качества изображения, получаемого в темное время суток.


  • На большую часть объектов, где въезд контролирует человек, можно зайти, использовав социнжиниринг, денежную купюру или, наоборот (реже), не войти из-за ряда причин, связанных с человеческим фактором. Нужно делать так, чтобы те, кому нужно въехать, всегда могли это сделать, а те кому не нужно — не могли.
  • При этом издевательство с пропусками лучше пропустить. В идеале – ещё и пропустить стадию выхода из машины вообще. Ваш контакт отправил информацию о том, что вам можно — и ворота открываются автоматически.
  • Служба безопасности должна чётко контролировать перемещения, иметь возможность выяснить, чья вот это машина стоит на территории и видеть перемещения людей по объекту за любой срок.

Как это может быть?

  1. Если вы сотрудник, ваш номер машины автоматически распознаётся, можно проезжать, фактически, без остановки. В лог пишется, кто вы и когда заехали-выехали.
  2. Если вы гость — ваш номер тоже распознается (встречающая сторона отправила заявку с ним), и вы также сможете заехать без остановки. Если охране нужно идентифицировать гостя по документу – остановиться всё же придётся на въезде или на входе в здание. Лог пишется.
  3. Если вы нежданный гость — можно оформить разовый пропуск. Данные о вашем номере также упадут в лог. Пропустить вас без разрешения на основе одного только мнения охраны не выйдет.
  4. Если возникает нештатная ситуация — можно легко поднять данные за пару минут по номеру машины (чья это тачка перегородила проезд?), по времени прибытия (кто заезжал сегодня с 8 до 9 утра?) и по другим параметрам.

Как обычно устроен въезд?



Вот так выглядит типовой КПП на стандартных объектах (фото с Яндекс.Карт)

Например, тут есть и будка КПП небольших размеров, и ограждающие ширину проезда бетонные блоки, и шлагбаум и даже противоподкатные шипы. В данном случае управление всеми техническими средствами исключительно ручное: брелок на открытие шлагбаума у дежурного в расчет не идет.

Проезд машин на таком КПП чаще всего осуществляется по бумажным спискам. Списки составляются по звонку или, в лучшем случае, по письму от руководителей отделов. Здесь человеческий фактор налицо, а возможность восстановить картину событий даже через день весьма посредственная. Если понадобится провести какое-то расследование, то оно будет основываться исключительно на показаниях людей. Возможно, его ещё можно будет дополнить кадрами из архива системы видеонаблюдения, в котором еще придется выискивать нужную информацию, так как тегов с маркой или номером машины там никто не проставляет в реальном времени. Результат — низкая достоверность отчетной информации и огромные временные затраты на составление прокотола.

Три стадии КПП

  1. КПП с веревочкой, которую поднимает и опускает вахтёр, сидящий в будке.
  2. КПП с каким-либо видом электрически управляемых преграждающих конструкций. Управляется с пульта в КПП сотрудником охраны или с брелка проезжающими.
  3. КПП со шлагбаумом, управляемым системой контроля доступа с применением персональных идентификаторов.



Пример оснащения въезда автоматическим шлагбаумом



Пример КПП 3-й категории

Когда несколько месяцев назад наши безопасники осознали этот простой и печальный факт, мы начали искать решение, которое можно будет применять и у нас, и на объектах заказчиков.

Решение на практике

Вводная: есть офисный центр, у которого есть два въезда и один выезд. На территории — многоярусная стоянка для автомобилей сотрудников и гостей. Исходно въезд и выезд на территорию оснащены контрольно-пропускным пунктом с системой контроля и управления доступом (СКУД), включающей в себя автоматические шлагбаумы, которые управляются СКУД, а СКУД, в свою очередь, использует уникальные персональные идентификаторы для принятия решения о доступе. Сначала работали с RFID-метками, которые располагались в машинах и выдавались сотрудникам.

Условием для получения RFID-метки служило предоставление информации о машине – марки и госномера. С момента внедрения системы данная информация стала персональной, т.е. начала попадать под действие закона о защите персональных данных (это отдельный вопрос). Задача по проезду гостей решалась через электронную заявку на разовый пропуск с указанием данных о машине. Таким образом, в рассматриваемой системе сохранялась точная информация о проездах сотрудников с привязкой к точке и времени проезда и информация о дате посещения компании гостем на определенной машине.

Со временем сотрудники меняли машины, и лишь самые сознательные сообщали актуальную информацию. RFID-метка легко переносилась в другую машину: в результате начался зарождаться бардак: это привело к потере актуальной информации о стоящей на автостоянке машине. Когда на одном из уровней мы нашли ржавую девятку, то прошерстили базу машин и поняли, что сотрудники научились подолгу хранить неиспользуемые машины на стоянке, пользуясь тем, что привязки автомобиль-водитель нет. Это, конечно, не конец света, но сигнал о проблеме — отсутствии актуальной информации у службы безопасности. Как следствие — невозможность быстро найти владельца машины в случае действительно серьезных инцидентов. Так и возникла задача отслеживания проезда конкретного сотрудника на конкретной машине.

Был вариант оснащения автомобилей различными стационарными метками, которые крепятся на кузове машины, но это оказалось не очень целесообразным при расчётах: если такую машину угоняют или меняют, затраты слишком велики. Плюс пришлось бы получать разрешение каждого сотрудника на прикручивание непонятного предмета к кузову (как правило, в пространстве под бампером).

В итоге решили остановиться на использовании системы видеоаналитики номеров машин. При этом нужно было подключить распознавание к текущей СКУД, чтобы была связка человек-машина. Идеальным решением стало новое голландское решение, которое показывали на выставке MIPS 2012. Что приятно, голландцы сразу разрабатывали свою систему распознавания с учётом особенностей российского рынка и рынка восточной Европы, в частности, с точной подстройкой по особенностям номеров и шрифтов.

Устройство

Система может работать и напрямую с любым исполнительным преграждающим устройством. В этом случае потребуется только модуль ANPR без модуля-конвертора, так как у ANPR есть релейный выход для управления внешними устройствами. Понятно, что при таком подключении теряется важная часть сохранения событий проезда в СКУД, остается только протокол событий на самом устройстве. Одним словом, на любой запрос и любую задачу возможна нужная конфигурация системы без лишних затрат.

Производитель дает четкие инструкции по высоте и дальности установки системы от линии, на которой должно выполняться распознавание. Обоим устройствам необходимо питание с постоянным напряжением 24 В, для конфигурирования модулей и удаленного управления они оснащены портами LAN. На модуле ANPR есть web-интерфейс и встроенный FTP-сервер.

Все параметры настроек понятны и легко изменяются, а через FTP-соединение можно скачать кадры, сделанные при проезде автомобилей. Есть настройки размера, качества картинки. Параметры записи по событиям позволяют хранить кадры без перезаписи в течение месяца или же настроить автоматическое сохранение кадров на внешнем FTP-сервере.
Настройки параметров обработки изображения позволяют ограничить область для распознавания, чтобы исключить попадание сразу двух госномеров, или задать параметры считывания номера для ускорения передачи информации о нем в СКУД.



Вот так выглядит законченная установка системы на выезде с территории

Примеры

Ниже – примеры распознаваемых номеров (в том числе с нестандартным размещением, в плохую погоду и т.д.), а также пара картинок с номерами, которые распознать не удается.

Обратите внимание, что в левом верхнем углу кадра размещается информация о распознанном госномере, дате, времени и количестве распознаваний за время перемещения машины в поле зрения телекамеры.



Информация непосредственно на записываемом кадре



Установка госномера выше, чем у обычных легковых автомобилей. Распознаётся.



А это любитель совсем нештатного места установки. Распознаётся.



Работа системы в дождь. Номер чистый. Распознаётся.



Первая цифра и первая буква значительно размыты. Не распознается!



Один из нескольких погнутых номеров. Распознается с ошибкой: T 954 KP 19RUS.

Резюме

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

Опыт тестовой эксплуатации в течение месяца позволил значительно поднять уровень актуальности данных об эксплуатируемых автомобилях, так как у сотрудников появился стимул сообщить эти данные, ведь новая система позволяла проезжать быстрее, не отвлекаясь на нажатие кнопки на RFID-метке.

image


Настало время подробно рассказать, как работает наша реализация алгоритма распознавания номеров: что оказалось удачным решением, что работало весьма скверно. И просто отчитаться перед Хабра-пользователями — ведь вы с помощью Android приложения Recognitor помогли нам набрать приличного размера базу снимков номеров, снятых совершенно непредвзято, без объяснения как снимать, а как нет. А база снимков при разработке алгоритмов распознавания самое важное!

Что получилось с Android приложением Recognitor

Было очень приятно, что пользователи Хабра взялись качать приложение, пробовать его и отправлять нам номера.

image


Скачиваний программы и оценки

Теперь у нас на руках база в 12 000 снимков фотографий — впереди гигантская работа по отладке алгоритмов. Все самое интересное только начинается!

Напомню, что в приложении Android предварительно выделялся номер. В этой статье я не буду подробно останавливаться на этом этапе. В нашем случае — каскадный детектор Хаара. Этот детектор не всегда срабатывает, если номер в кадре сильно повернут. Анализ того, как работает нами обученный каскадный детектор, когда не работает, оставлю на следующие статьи. Это ведь действительно очень интересно. Кажется, что это черный ящик — вот обучили детектор и больше ничего не сделать. На самом деле это не так.

Но все-таки каскадный детектор — неплохой вариант в случае ограниченных вычислительных ресурсов. Если автомобильный номер грязный или рамка плохо видна, то Хаар тоже неплохо себя проявляет относительно других методов.

Распознавание номера

Здесь рассказ про распознавание текста в картинках такого вида:

image


Общие подходы про распознавании были описаны в первой статье.

Изначально мы ставили перед собой задачу распознавания грязных, частично стертых и здорово искаженных перспективой номеров.
Во-первых, это интересно, а во-вторых, казалось, что тогда чистые будут срабатывать вообще в 100% случаях. Обычно, конечно, так и происходит. Но тут не сложилось. Оказалось, что если по грязным номерам вероятность успеха была 88%, то по чистым, например, 90%. Хотя на деле вероятность распознавания от фотографии на мобильном приложении до успешного ответа, конечно, оказалось еще хуже указанной цифры. Чуть меньше 50% от приходящих изображений (чтобы люди не пытались фотографировать). Т.е. в среднем дважды нужно было сфотографировать номер, чтобы распознать его успешно. Хотя во многом такой низкий процент связан с тем, что многие пытались снимать номера с экрана монитора, а не в реальной обстановке.

Весь алгоритм строился для грязных номеров. Но вот оказалось, что сейчас летом в Москве 9 из 10 номеров идеально чистые. А значит лучше изменить стратегию и сделать два раздельных алгоритма. Если удалось быстро и надежно распознать чистый номер, то этот результат и отправим пользователю, а если не удалось, то тратим еще немного времени процессора и запускаем второй алгоритм для грязных номеров.

Простой алгоритм распознавания номеров, который стоило бы реализовать сразу

Как же распознать хороший и чистый номер? Это совсем не сложно.

Предъявим следующие требования к такому алгоритму:

1) некоторая устойчивость к поворотам (± 10 градусов)
2) устойчивость к незначительному изменению масштаба (20%)
3) отрезание каких-либо границ номера границей кадра или просто плохо выраженные границы не должны рушить все (это принципиально важно, т.к. в случае грязных номеров приходится опираться на границу номера; если номер чистый, то ничего лучше цифр/букв не характеризует номер).

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

Бинаризуем кадр

image

Здесь стоит еще пройтись фильтром средних частот и нормализовать изображение.

На изображении приведен изначально малоконтрастный кадр для наглядности.

Затем бинаризовать по фиксированному порогу (можно порог фиксировать, т. к. изображение было нормализовано).

Гипотезы по повороту кадра

Предположим несколько возможных углов поворотов изображения. Например, +10, 0, -10 градусов:

image

В дальнейшем метод будет иметь небольшую устойчивость к углу поворота цифр и букв, поэтому выбран такой достаточно большой шаг по углу — 10 градусов.
С каждым кадром в дальнейшем будем работать независимо. Какая гипотеза по повороту даст лучший результат, та и победит.

А затем собрать все связанные области. Тут использовалась стандартная функция findContours из OpenCV. Если связанная область (контур) имеет высоту в пикселях от H1 до H2 а ширина и высота связана отношением от K1 до K2, то оставляем в кадре и отмечаем, что в этой области может быть знак. Почти наверняка на этом этапе останутся лишь цифры и буквы, остальной мусор из кадра уйдет. Возьмем ограничивающие контуры прямоугольники, приведем их к одному масштабу и дальше поработаем с каждой буквой/цифрой отдельно.

image

Вот какие ограничивающие прямоугольники контуров удовлетворили нашим требованиям:

image

Качество снимка хорошее, все буквы и цифры отлично разделимы, иначе мы до этого шага не дошли бы.
Масштабируем все знаки к одному размеру, например, 20х30 пикселей. Вот они:

Кстати, OpenCV при выполнении Resize (при приведении к размеру 20х30) бинаризованное изображение превратит в градиентаное, за счет интерполяции. Придется повторить бинаризацию.

И теперь самый простой способ сравнить с известными изображениями знаков — использовать XOR (нормализованная дистанция Хэмминга). Например так:

Distance = 1.0 — |Sample XOR Image|/|Sample|

Если дистанция больше пороговой, то считаем, что мы нашли знак, меньше — выкидываем.

Буква-цифра-цифра-цифра-буква-буква

Суммарные очки за гипотезу — сумма дистанций Хэмминга всех 6 знаков. Чем больше, тем лучше.

Итак, если суммарные очки меньше порога, то считаем, что мы нашли 6 знаков номера (без региона). Если больше порога, то идем к алгоритму устойчивому к грязным номерам.

Следующие два или три знака над линей, проведенной по низу 6 уже найденных знаков, — регион. Если третья цифра существует, и ее похожесть больше пороговой, то регион состоит из трех цифр. Иначе из двух.

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

Алгоритм устойчивый к грязным номерам

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

image

Вот примеры номеров, когда первый алгоритм не смог ничего сделать:

А алгоритм, описанный далее, смог.

Но придется опираться на границы автомобильного номера, а потом уже внутри строго определенной области искать знаки с точно известной ориентацией и масштабом. И главное — никакой бинаризации!

Ищем нижнюю границу номера

image

Самый простой и самый надежный этап в этом алгоритме. Перебираем несколько гипотез по углу поворота и строим для каждой гипотезы по повороту гистограмму яркости пикселей вдоль горизонтальных линий для нижней половины изображения:

image

Выберем максимум градиента и так определим угол наклона и по какому уровню отрезать номер снизу. Не забудем улучшить контраст и получим вот такое изображение:

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

Ищем верхнюю границу номера

image

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

Резкого перехода яркости в верхней части номера нет, а максимальный градиент и вовсе разрежет номер посередине.

Мы вышли из ситуации не очень тривиально: обучили на каждую цифру и каждую букву каскадный детектор Хаара, нашли все знаки на изображении, так определили верхнюю линию где резать:

image

Казалось бы, что тут и стоит остановиться — мы же нашли уже цифры и буквы! Но на деле, конечно, детектор Хаара может ошибаться, а у нас тут 7-8 знаков. Хороший пример цифры 4. Если верхняя граница номера сливается с цифрой 4, то совсем не сложно увидеть цифру 7. Что кстати и произошло в данном примере. Но с другой стороны, несмотря на ошибку в детектировании, верхняя граница найденных прямоугольников действительно совпадает с верхней границей автомобильного номера.

Найти боковые границы номера

Тоже ничего хитрого — абсолютно также, как и нижнюю. Единственное отличие, что часто яркость градиента первого или последнего знака в номере может превышать яркость градиента вертикальной границы номера, поэтому выбирается не максимум, а первый градиент, превышающий порог. Аналогично с нижней границей необходимо перебрать несколько гипотез по наклону, т. к. из-за перспективы перпендикулярность вертикальной и горизонтальной границы совсем не гарантирована.

Итак, вот хорошо обрезанный номер:

image


да! особенно приятно вставить кадр с отвратительным номером, который был успешно распознан.

image

Печалит лишь одно — к этому этапу от 5% до 15% номеров могут отрезаться неправильно. Например, так:

(кстати это кто-то нам отправил желтый номер такси, насколько я понял — формат не штатный)

Все это нужно было, чтобы все это делалось лишь для оптимизации вычислений, т. к. перебрать все возможные положение, масштабы и наклоны знаков при их поиске — очень затратно вычислительно.

Разделить строку на знаки

image

К сожалению, из-за перспективы и не стандартной ширины всех знаком, приходится как-то выделять символы в уже обрезанном номере. Тут снова выручит гистограмма по яркости, но уже вдоль оси X:

Единственное, что в дальнейшем стоит исследовать две гипотезы: символы начинаются сразу или один максимум гистограммы стоит пропустить. Это связано с тем, что на некоторых номерах отверстие под винт или головка винта автомобильного номера могут различаться, как отдельный знак, а могут быть и вовсе незаметны.

Распознавание символов

Изображение до сих пор не бинаризовано, будем использовать всю информацию, что есть.

image

Здесь печатные символы, значит подойдет взвешенная ковариация для сравнения изображений с примером:

image

Образцы для сравнения и веса при ковариации:

Конечно, нельзя просто сравнить область, выделенную с помощью горизонтальной гистограммы, с образцами. Приходится делать несколько гипотез по смещению и по масштабу.
Количество гипотез по положению по оси X = 4
Количество гипотез по положению по оси Y = 4
Количество гипотез по масштабу = 3

Таким образом, для каждой области при сравнении с одним знаком необходимо рассчитать 4х4х3 ковариации.

Первым делом найдем 3 большие цифры. Это 3 х 10 х 4 х 4 х 3 = 1440 сравнений.

Затем слева одну букву и справа еще две. Букв для сравнения 12. Тогда количество сравнений 3x12x4x4x3 = 1728

Когда у нас есть 6 символов, то все справа от них — регион.

image

В регионе могут быть 2 цифры или 3 цифры — это нужно учесть. Разбивать регион гистограммным способом уже бессмысленно из-за того, что качество изображения может быть слишком низкое. Поэтому просто поочередно находим цифры слева направо. Начинаем с левого верхнего угла, необходимо несколько гипотез по оси X, оси Y и масштабу. Находим наилучшее совпадение. Смещаемся на заданную величину вправо, снова ищем. Третий символ будем искать слева от первого и справа от второго, если мера похожести третьего символа больше пороговой, то нам повезло — номер региона состоит из трех цифр.

Выводы

Практика применения алгоритма (второго описанного в статье) в очередной раз подтвердила прописную истину при решении задач распознавания: нужна действительно презентативная база при создании алгоритмов. Мы нацеливались на грязные и потертые номера, т.к. тестовая база снималась зимой. И действительно часто довольно плохие номера удавалось узнавать, но чистых номеров в обучающей выборке почти не было.

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

И, конечно, надеюсь, что статья будет полезна.

Первая статья цикла — общий обзор технологий
Вторая статья — Наш сервер
Третья статья — Протокол обращения к нашему серверу

Читайте также: