Pull to refresh

Comments 10

Маленький вопрос: насколько это распознавание устойчиво к повороту баркода? Например, на 20 или 45 градусов.

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

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

Сразу отмечу как немного практик. Баркоды стараются распределять не рядом. То есть максимально разнести по наклейке, часто повернув вторую на 90 градусов. Или же они чётко отделены друг от друга по вертикали довольно таки чётким пустым местом.
100ms и real-time несколько разные вещи. Когда я занимался распознованием у нас был предел 30ms на кадр. В общем без нейронок все это на порядок быстрее.
Перспективные искажения можно и легко исправить с помощью преобразования Хафа.
Наш детектор работает 44мс на 512х512, соответственно, если хочется действительно real-time, можно немного уменьшить размер входного изображения. Нейронки работают медленнее классических алгоритмов, здесь вы правы, зато они позволяют выиграть в качестве.

В приложениях, где действительно нужен real-time, задача как правило достаточно простая (обычно один большой баркод на страницу). В таком простом случае можно без потерь качества уменьшить разрешение в несколько раз.
Я десять лет назад делал распознование любого из 3-4 обьектов за 30ms в картинке 320х240 в один поток без нейронок. Но делал хитро.
Вам бы для распознования баркодов рекомендовал бы посмотреть на 2D DCT и FFT. Для баркодов там будут интересные артефакты. Можно также посмотреть на вейвлеты. И обрабатывать это простой статистикой.
Отличная статья! Очень вовремя — делаю распознавалку для PDF417.

Кто-нибудь может подсказать python пакет для декодирования PDF417? pyzbar упорно отказывается распознавать именно этот формат ((
«Получив какое-то решение, всегда стоит посмотреть вокруг и сравнить качество полученного решения с более ранними исследованиями.» — эпично :))
Хорошая статья на самом деле, отдельное спасибо за 4 ссылку — весьма интересная работа.
Sign up to leave a comment.