Машинное зрение вместо ручного сканера: проверка штрихкода и даты на каждой коробке

  • Хлеб
  • Коробки

Заказчик

Производитель хлеба и выпечки.

Задача

Автоматически проверять штрихкод и дату на коробках с продукцией и останавливать конвейер, если маркировка неверная или не читается.

Результат

Система машинного зрения контролирует маркировку 1 700 коробок в сутки с точностью 99,9%. Ошибки в штрихкоде и дате исправляют на заводе, до отгрузки в торговые сети.

  • Хлеб
  • Коробки

Содержание

Ситуация

Готовую продукцию завод упаковывает в гофрокоробки и отгружает в торговые сети. На каждой коробке — этикетка с датой изготовления и штрихкодом ITF-14: такой формат используют на транспортной таре. По штрихкоду и дате сеть принимает товар в распределительном центре и в магазине.

Раньше маркировку до отгрузки проверял сотрудник на производстве. Штрихкод он считывал ручным сканером, а дату сверял на глаз. Если код не читался, линию останавливали и перепечатывали этикетки.

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

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

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

Иллюстрация: ручной сканер считал штрихкод на коробке и показывает «Штрихкод считан», хотя на этикетке не тот сорт булочек и вчерашняя дата

Задача

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

Решение

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

Простая на первый взгляд задача раскладывается на три технические, и каждая следует из предыдущей:

  1. Определить момент, когда коробка встала перед камерой и этикетку можно проверять.
  2. Распознать штрихкод и дату и сравнить их с заданием на смену.
  3. Передать результат в автоматику линии, чтобы при ошибке в маркировке конвейер останавливался.
Схема проверки штрихкода и даты на коробке в три шага: коробка встала перед камерой, система распознаёт и сверяет штрихкод и дату, передаёт результат автоматике линии; если совпали, коробка едет дальше, если нет, конвейер останавливается

Настроили камеру и ракурс

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

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

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

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

Научили систему определять коробку и распознавать этикетку

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

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

Коробка встала перед камерой, этикетка видна полностью: можно распознавать штрихкод и дату.

Когда коробка остановилась, начинается второй шаг — распознавание. Система проверяет на этикетке две вещи:

  • штрихкод — находит, расшифровывает и сравнивает цифры с заданием на смену;
  • дату изготовления — распознаёт и тоже сверяет с заданием.

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

Олег Халилов, руководитель проектов

Олег Халилов, руководитель проектов

Видеонумератор не привязан к одному формату штрихкода.

В других проектах мы распознаём штрихкоды иных стандартов, QR-коды, сроки годности и прочую информацию на этикетках, нужную для контроля качества.

Создали интерфейс оператора

В окне программы оператор заполняет два поля — цифры штрихкода и дату. Ниже транслируется видео с камеры. Поверх кадра система подписывает распознанные данные и крупно выводит результат: зелёное «верно» или красное «неверно». Вглядываться в коробку оператору не нужно: причину ошибки видно сразу на экране.

Распознавание штрихкода и даты в интерфейсе оператора: сверху поля со штрихкодом и датой, ниже видео с камеры, поверх этикетки синим подписаны распознанные значения, внизу зелёное «Верно»

Окно оператора: задание на смену, распознанные штрихкод и дата поверх кадра и результат проверки.

Подключили систему к автоматике линии

Само по себе распознавание этикетки задачу заказчика не решало. Если бы система только выводила ошибку на экран, кому-то пришлось бы следить за монитором и останавливать линию вручную. Человеческий фактор никуда бы не делся. Чтобы проверка работала без участия людей, систему компьютерного зрения подключили к автоматике конвейера.

Компьютер, на котором установлен Видеонумератор, связан по локальной сети с модулем дискретного вывода ОВЕН, а модуль подключён к контуру управления конвейером. Когда система находит ошибку, она отправляет модулю команду по протоколу Modbus TCP. Модуль размыкает цепь управления, и конвейер останавливается. Оператор устраняет причину и сбрасывает ошибку в программе.

Иллюстрация остановки конвейера при неверной дате на упаковке: видеокамера снимает этикетку коробки, Видеонумератор находит ошибку и по Modbus TCP передаёт команду модулю ОВЕН, модуль размыкает цепь

Схема остановки линии по шагам: видео с камеры, команда по Modbus TCP, размыкание цепи. Красным отмечена коробка с ошибкой в дате, зелёным — прошедшие проверку.

Такую же связку программы и модуля ОВЕН мы используем и в других проектах. На производстве алюминиевых банок система останавливает конвейер, если замечает перевёрнутую банку. А при погрузке мешков в машину выключает ленту, когда посчитано нужное количество (в этом кейсе мы подробно разобрали, какое оборудование выбирать для разных производственных линий).

Непредвиденные трудности

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

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

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

Раньше: штрихкод ITF-14 на этикетке коробки стоит вертикально, штрихи идут вдоль направления печати; на кадре с камеры рамками выделены штрихкод и дата

Раньше: штрихкод стоял вертикально, штрихи шли вдоль направления печати, и полоса непропечатки могла стереть штрих целиком.

Мы попробовали решить проблему программно. Разработчик испытал 18 вариантов предобработки изображения: переводил кадр в чёрно-белый, поднимал контраст, убирал зернистость, размывал. Код начал читаться, но цепочка обработок занимала бы 2–3 секунды на каждую этикетку. А на линии заказчика коробки идут потоком, и столько времени у системы нет.

В итоге помогло простое решение. Заказчик развернул штрихкод в макете этикетки на 90°, и теперь полосы непропечатки, если появляются, идут поперёк штрихов. В одном месте штрих может прерваться, но по всей остальной высоте сохраняет ширину. Предобработка не понадобилась, и система стала работать стабильно: полосы непропечатки больше не мешают распознаванию.

Теперь: штрихи стоят поперёк направления печати, непропечатка их только пересекает и не мешает распознавать штрихкод.

Результат

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

Каждые сутки система контролирует 1 700 коробок с точностью 99,9%. Ошибки исправляют прямо на месте, и коробка с неверным штрихкодом или датой больше не уходит к клиенту незамеченной. Главный эффект — меньше возвратов и претензий от торговых сетей.

В октябре 2026 года заказчик начал запуск такой же проверки штрихкода и даты на второй линии.

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

Команда. С нашей стороны проект вёл один инженер. Со стороны заказчика работал технический специалист завода.

Стоимость. Проверка штрихкода и даты оплачивается как один вид распознавания брака на линии. Заказчик выбрал вечную лицензию: на октябрь 2026 года она стоит 400 000 рублей без НДС, годовая — 100 000 рублей. Настройка и запуск входят в цену, а камеру и компьютер заказчик покупает отдельно. Расчёт под другое число линий — в калькуляторе на странице цен.

Вопросы и ответы

Что такое ITF-14 и зачем он на коробке?

ITF-14 — штрихкод для транспортной упаковки по стандарту GS1. Он хранит 14-значный номер GTIN-14: первая цифра обозначает уровень упаковки, дальше идут номер товара и контрольная цифра. По нему склад и магазин принимают коробку, не вскрывая её. Код состоит из широких и узких штрихов, поэтому любое искажение ширины при печати мешает его прочитать.

Чем камера лучше ручного сканера штрихкодов на конвейере?

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

Какие коды и надписи может проверять Видеонумератор?

Любые, которые видит камера: штрихкоды разных стандартов, QR-коды, даты, сроки годности и другие надписи на этикетке. На линии хлебозавода из этого кейса система проверяет штрихкод ITF-14 и дату изготовления. Распознавание настраиваем под конкретную продукцию и упаковку.

Нужна ли специальная камера машинного зрения?

Нет. Камеры машинного зрения — отдельный класс промышленных камер со сменной оптикой. Для подсчёта продукции, распознавания брака и сортировки изделий по видам хватает IP-камеры видеонаблюдения Full HD с поддержкой RTSP. Для мелких кодов важна резкость, поэтому в этом проекте заказчик взял камеру Tiandy с ручной настройкой фокуса и зума. Она стоит всего на несколько тысяч рублей дороже камер без ручной настройки и в разы дешевле камер машинного зрения.

Сколько стоит и сколько длится внедрение?

Запуск проверки маркировки на одной линии занял месяц. Проверка штрихкода и даты оплачивается как один вид распознавания брака. На октябрь 2026 года это 100 000 рублей в год или 400 000 рублей за вечную лицензию, без НДС. До подписания договора мы бесплатно проверим, справится ли система. Пришлите видео с линии — мы настроим распознавание и покажем результат. Условия и калькулятор — на странице цен.

Другие кейсы

Машинное зрение вместо ручного сканера: проверка штрихкода и даты на каждой коробке

Подробнее

Автоматический подсчет коробок с рыбой на траулерах: 99,9% точности

Подробнее

Счетчик мешков на конвейере с управлением отгрузкой: опыт внедрения на складах и заводах

Подробнее

Контроль качества продукции на производстве: как компьютерное зрение работает в реальных цехах

Подробнее

«Арнест Упаковочные Решения»: распознавание перевернутых банок на конвейере

Подробнее

    Давайте сделаем проект вместе

    Заполните форму или напишите нам