Pull to refresh

Системы распознавания номеров на практике

КРОК corporate blog Image processing *


Наверняка каждый сталкивался с историями – «Здравствуйте, мне надо проехать в компанию, которая у вас на территории находится», получая в ответ, что «пропуск не заказан», «нельзя» или и вовсе глухие ворота высотой метра 4. Притом сам въезд как правило охраняется очень разным контингентом – от не совсем трезвого дяди Васи со стаей собак до реальных профи на важных объектах.

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

В топике – про эволюцию от верёвочки на входе до современных систем распознавания номеров.
Читать дальше →
Total votes 42: ↑37 and ↓5 +32
Views 91K
Comments 39

Распознавание номеров: от А до 9

Recognitor corporate blog Algorithms *Image processing *
Уже пару раз на Хабре возникали дискуссии на тему того, как сейчас работает распознавание номеров. Но статьи, где были бы показаны разные подходы к распознаванию номеров, на Хабре пока не было. Так что здесь попробуем разобраться, как все это работает. А потом, если статья вызовет интерес, продолжим и выложим работающую модель, которую можно будет поисследовать.

image
Читать дальше →
Total votes 140: ↑137 and ↓3 +134
Views 166K
Comments 268

Не соблаговолите ли больше не нарушать, сэр (мэм)?

Recognitor corporate blog Open source *Image processing *
Примерно неделю назад Vasyutka опубликовал пост про распознавание номеров и обещал, что мы выложим софт, который можно будет опробовать. Мы немножко схитрили, не рассказав все подробнее. Ну, а то бы никакой интриги не было! Ядро алгоритма распознавания мы сделали с полгода назад, но тот проект, для которого оно было сделано, не двинулся. Он остановился где-то на альфа-версии. Подумав, и посовещавшись с заказчиком, мы решили, что это нехорошо, когда такой алгоритм пылится на полке и не приносит пользу обществу. С другой стороны выкладывать все исходники распознающей части не хотелось. Тогда и родилась идея, о которой пойдёт речь в этой статье.
image
Решили мы, собственно, сделать открытый сервер, который бы распознавал номера, приходящие http-запросами. Так как вся идея некоммерческая, то сервер, конечно, слабенький, но на то, чтобы народ игрался, надеюсь, его хватит.
А вот тут крутой поворот сюжета. Пост этот не про протокол обращения к серверу. Об этом будет следующий пост. Этот пост о программе, которую мы начали делать как пример работы с сервером, но которая вылилась в интересную на наш взгляд концепцию. В статье будет рассказано про Android-приложение, которым можно сфотографировать номер автомобиля… И обругать владельца бранным словом! Ну, или посмотреть статистику того, сколько раз сего автомобилиста обругали.
Те, кому невтерпёж, смогут расковырять работу с сервером из исходников в конце статьи. Остальных подержим пару дней в напряжении, а потом выложим законченный мануал.
Заинтриговал?
Total votes 120: ↑110 and ↓10 +100
Views 65K
Comments 65

Распознавание номеров: от А до 9. Часть 3

Recognitor corporate blog Open source *Image processing *
Неделю назад мы опубликовали статью про открытый сервер для распознавания изображений автомобильных номеров. Теперь, как и обещали, статья про то, как отправлять на него свои фотографии с номерами. Наша цель была, как вы помните, вовсе не ругаться друг на друга неприличными словами, а именно сделать функционирующий сервер в интернете, который справляется с фотографиями и отправляет назад результат распознавания.


(часть фотографий, присланных в течение недели)
Читать дальше →
Total votes 58: ↑57 and ↓1 +56
Views 79K
Comments 29

Автомобильные номера и их применения

Recognitor corporate blog
В последнее время мы с Vasyutka написали ряд постов (1,2,3,4) про распознавание номеров и про наш взгляд на использование системы распознавания. После публикаций было огромное количество интересных комментариев, писем и идей. Наибольшее количество мыслей и откликов было, безусловно, в стиле: «сделайте обращение в ГИБДД» и «прикрутите отправку сообщений по номерам». Но нашей основной целью было не создание приложения, а создание алгоритма распознавания, которым бы мог воспользоватся любой (хотя приложение потихоньку тоже будем развивать, оставляя исходники открытыми). Поэтому многие из идей мы ещё долго не реализуем. Но это не повод грустить! Сервисы, где всё это уже присутствует существуют. Они не очень известны, но они есть.



Этот пост про то, какие проекты социализации и проявления активной гражданской позиции через автомобильный номер существуют в РуНете. Мы с удивлением и любопытством изучали эти проекты, когда нам присылали ссылки или мы натыкались на них. Надеюсь, что вам тоже понравится, а может и пригодится!
Читать дальше →
Total votes 20: ↑17 and ↓3 +14
Views 21K
Comments 19

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

Recognitor corporate blog Algorithms *Image processing *
image
Настало время подробно рассказать, как работает наша реализация алгоритма распознавания номеров: что оказалось удачным решением, что работало весьма скверно. И просто отчитаться перед Хабра-пользователями — ведь вы с помощью Android приложения Recognitor помогли нам набрать приличного размера базу снимков номеров, снятых совершенно непредвзято, без объяснения как снимать, а как нет. А база снимков при разработке алгоритмов распознавания самое важное!
Читать дальше →
Total votes 69: ↑69 and ↓0 +69
Views 143K
Comments 40

Использование сверточных сетей для поиска, выделения и классификации

Recognitor corporate blog Image processing *Machine learning *
Недавно ZlodeiBaal опубликовал статью «Нейрореволюция в головах и сёлах», в которой привел обзор возможностей современных нейронных сетей. Самым интересным, на мой взгляд, является подход с использованием сверточных сетей для сегментации изображений, про этот подход и пойдет речь в статье.

segnet.png


Уже давно появилось желание изучить сверточные сети и узнать что-то новое, к тому же под рукой есть несколько последних Tesla K40 с 12Гб памяти, Tesla c2050, обычные видеокарты, Jetson TK1 и ноутбук с мобильной GT525M, интереснее всего конечно попробовать на TK1, так как его можно использовать практически везде, хоть на столб фонарный повесить. Самое первое с чего начал, это распознавание цифр, тут конечно удивить нечем, цифры уже давно неплохо распознаются сетями, но при этом постоянно возникает потребность в новых приложениях, которые должны что-то распознавать: номера домов, номера автомобилей, номера вагонов и т.д. Все бы хорошо, но задача распознавания цифр является лишь частью более общих задач.
Читать дальше →
Total votes 35: ↑30 and ↓5 +25
Views 46K
Comments 24

Прототип проекта стоимостью $86 миллионов в 57 строках кода

Badoo corporate blog Sport programming *JavaScript *Programming *Image processing *
Translation


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


Представлюсь: меня зовут Иван Греков, я из фронтенд-команды Badoo. Мне очень понравился этот пост, я просто не смог пройти мимо и не перевести его. Этот пост – отличный источник вдохновения для любителей прототипирования устройств и open-source-решений. Перевод публикуется с сохранением авторской точки зрения и, надеюсь, будет интересен вам.

Читать дальше →
Total votes 79: ↑77 and ↓2 +75
Views 51K
Comments 59

Можно ли запихнуть распознавание номеров в любой тамагочи?

Recognitor corporate blog Algorithms *Image processing *Machine learning *
Про распознавание номеров мы рассказываем на Хабре давным давно. Надеюсь даже интересно. Похоже настало время рассказать как это применяется, зачем это вообще нужно, куда это можно запихнуть. А самое главное — как это изменяется в последние годы с приходом новых алгоритмов машинного зрения.


Total votes 24: ↑24 and ↓0 +24
Views 18K
Comments 34

Газпром нефть приглашает в гости: GPN Data Science Meetup

Газпромнефть corporate blog Big Data *IT-companies
Recovery mode
С первого взгляда кажется, что работают в «Газпром нефти» только эффективные менеджеры, а в IT максимум сисадмины и прикомандированные внедренцы всяких Ораклов и САПов. Со второго – можно найти и собственную разработку (веб-фронты, мобильные приложения, софт для управления АЗС), и, например, дата сайентистов. Под катом – про внутренний митап DS, который мы решили сделать внешним.



Читать дальше →
Total votes 15: ↑6 and ↓9 -3
Views 2.8K
Comments 1

Опыт разработки и внедрения систем объектовой видеоаналитики на СХД

Virtualization *Data storages *Computer hardware Artificial Intelligence Data storaging
Recovery mode
СХД – это системы хранения данных, сервера или иные устройства с большим количеством установленных дисков и системами быстрого доступа к ним с гарантией сохранности информации (например, аппаратные или программные RAID-контроллеры). Если речь идёт про хранение видео с нескольких камер, то специализированных решений не требуется. СХД или обычные диски будут использоваться для хранения видеоархива и там же или на отдельном носителе будут храниться события (результат детекции, например, нарушения ПДД или пресечение запретных зон) для дальнейшего доступа к ним и анализа. Но если камер много, например, 80 штук и мы рассматриваем поток RTSP Full HD, 15 FPS с дорожных камер, то зарегистрированных событий в сутки будет уже около 100 Гб. Для хранения таких объемов данных требуются уже специализированные решения. Мы остановили свой выбор на СХД от компании QNAP, куда смогли встроить свой собственный продукт Cumulator. Цель и задача этого продукта – сбор событий с множества устройств: серверов для инференса (исполнения нейронных сетей), камер или микрокомпьютеров, установленных в непосредственной близости от камер.

Сервер на базе Intel NUC, который осуществляет обработку данных с 80 камер с агрегацией этих данных через ПО Cumulator
Сервер на базе Intel NUC, который осуществляет обработку данных с 80 камер с агрегацией этих данных через ПО Cumulator
Читать дальше →
Total votes 12: ↑6 and ↓6 0
Views 3.5K
Comments 15

Локализация QR-кода – важная задача, незаслуженно обделенная вниманием

Smart Engines corporate blog Algorithms *Image processing *Machine learning *Artificial Intelligence
Уверены, что на сегодняшний день не найдется ни одного читателя Хабра, который не был бы знаком с QR-кодами. Эти двумерные штрихкоды повсюду. Закономерно, что в мире существует много инструментов, позволяющих с некоторой долей эффективности добавить QR-коды в свой проект. Вся соль в том, что эта упомянутая эффективность напрямую зависит от качества инструмента, который используется для распознавания QR-кодов. И тут возникает классическая вилка: можно решить задачу (очень) хорошо и (очень) дорого, а можно бесплатно и как-то. А можно ли доработать бесплатное так, чтобы все-таки решить задачу хорошо? Если интересно, заглядывайте под кат.
Читать дальше →
Total votes 9: ↑8 and ↓1 +7
Views 5K
Comments 9

Распознавание номеров автомобилей — бесплатно

Интемс corporate blog Internet marketing *Software Video equipment The future is here


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

Идея понравилась не только, нам, не только тем кто решил участвовать, но и нашим партнерам из FF Group, они уже более 10 лет разрабатывают системы распознавания автономеров.

И мы совместно запускаем бесконечный розыгрыш трех двухканальных лицензий ежемесячно. Это означает, что каждый месяц будем случайным образом определять трех победителей, каждый из которых может выбрать любой софт, разрабатываемый компанией FF Group и получить одну двухканальную лицензию.
Под катом подробное описание программного обеспечения и условий розыгрыша.
Читать дальше →
Total votes 10: ↑5 and ↓5 0
Views 18K
Comments 5

Дело не только в деньгах, или Как я поверил в видеонаблюдение как сервис

DataLine corporate blog IT Infrastructure *Cloud services *Video equipment Systems engineering *
Привет, Хабр! Меня зовут Александр, много лет я ставил системы видеонаблюдения на коммерческих объектах и не доверял облачным сервисам по модели VSaaS (video surveillance as a service). Я был уверен, что серьезные бизнесы не экономят на проектах и выбирают традиционную систему видеонаблюдения по модели on-premise. А вот VSaaS нужен, если приходится втискиваться в бюджет здесь и сейчас. 

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

Дисклеймер: все цены взял из проектов двухлетней давности. Если стоимость поменялась сильно, постарался обновить данные. 


Читать дальше →
Total votes 11: ↑10 and ↓1 +9
Views 4.9K
Comments 28

Распознаем номера автомобилей. Разработка multihead-модели в Catalyst

SimbirSoft corporate blog Python *Algorithms *Image processing *Machine learning *

Фиксация различных нарушений, контроль доступа, розыск и отслеживание автомобилей – лишь часть задач, для которых требуется по фотографии определить номер автомобиля (государственный регистрационный знак или ГРЗ). 

В этой статье мы рассмотрим создание модели для распознавания с помощью Catalyst – одного из самых популярных высокоуровневых фреймворков для Pytorch. Он позволяет избавиться от большого количества повторяющегося из проекта в проект кода – цикла обучения, расчёта метрик, создания чекпоинтов моделей и другого – и сосредоточиться непосредственно на эксперименте.

Сделать модель для распознавания можно с помощью разных подходов, например, путем поиска и определения отдельных символов, или в виде задачи image-to-text. Мы рассмотрим модель с несколькими выходами (multihead-модель). В качестве датасета возьмём датасет с российскими номерами от проекта Nomeroff Net. Примеры изображений из датасета представлены на рис. 1.

Читать далее
Total votes 7: ↑4 and ↓3 +1
Views 3.3K
Comments 0

Распознавание номерных знаков. Как все ускорить

Python *Machine learning *Artificial Intelligence
Nomeroff Net. Как ускорить распознавние номерных знаков.

После запуска моделей на прод рано или поздно приходит понимание того, что Ваши сервисы популярны и что KPI растут. Вместе с популярностью приходят тормоза и нестабильность. В этой статье речь пойдет о прикладном аспекте оптимизации быстродействия алгоритмов/моделей на примере движка распознавания автомобильных номеров “Nomeroff Net”. Буду делиться опытом, полученным на протяжении 2-х летней разработки. Если коротко: нам удалось ускорить время распознавания 1 фото более чем в 10 раз.

“Чел догадался в свой сервер вставить RTX 3090” подумаете Вы… Приблизительно так и было, только если взять замеры до установки GPU то все ускорили в 100+ раз :).
Не будет детального описания архитектуры моделей (они давно известны в узких кругах), хочу поделиться важными моментами, на которые стоит обратить внимание при оптимизации ваших ML-сервисов.
Читать дальше →
Total votes 20: ↑20 and ↓0 +20
Views 8.9K
Comments 11

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

Python *Artificial Intelligence TensorFlow *
Sandbox
✏️ Technotext 2021

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

Необходимая подготовка читателя — должно быть общее представление о компьютерном зрении (computer vision) и нейронных сетях. Здесь не будет описаний, что такое сверточная нейронная сеть и т.п., статей по таким основам найдете много на хабре (вот хорошая Глубокое обучение для новичков: распознаем изображения с помощью сверточных сетей). В то же время, совсем новички могут получить представление, какие знания и компетенции нужны для решения подобных задач.

Читать далее
Total votes 28: ↑27 and ↓1 +26
Views 11K
Comments 21