Найти в Дзене

Верификация 2D кодов в потоке. Возможно ли это?

Оглавление
Групповое считывание DataMatrix кодов камерой технического зрения
Групповое считывание DataMatrix кодов камерой технического зрения

В нашей первой статье, посвященной техническому зрению, мы обсудили различия между ручным сканером и камерами машинного зрения. Рассказали о том, как техническое зрение решает разные прикладные задачи, в зависимости от того программного обеспечения, которое используется для обработки изображений, полученных с камеры. В качестве примера такого ПО мы приводили декодер 2D кода, который ищет в изображении код и «считывает» его.

Но и по итогам бесед с нашими клиентами, и по обсуждениям в профильных каналах, понятно, что одной из самых необходимых функций технического зрения была бы верификация: проверка качества напечатанного кода и его «грейдирование» в соответствии с требованиями ГОСТ. Как было бы удобно: верифицировать все 2D коды в потоке, на скорости, во время печати или нанесения. Тогда как стационарный верификатор предназначен лишь для выборочной проверки отдельных кодов. Но вот можно ли камерам технического зрения доверить эту задачу?

Давайте разберемся.

Что говорят нормативные документы (ГОСТ 15415)

Для начала посмотрим в регулирующий документ ГОСТ 15415, в соответствии с которым и происходит оценка качества штрих кода.

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

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

Несколько примеров, объясняющих ситуацию на практике

Когда DataMatrix «выглядит» лучше, чем его «видит» камера

Напечатанный GS1 DataMatrix должен быть строго квадратной формы, без геометрических искажений – таково одно из требований.

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

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

Окно программы для верификации
Окно программы для верификации

А теперь посмотрим на камеру, размещенную над конвейером. Нет никакой гарантии в том, что она установлена строго параллельно плоскости конвейера (мы говорили об этом пару абзацев выше). Например, потому, что необходимо убрать блики, и устройство расположено под углом. 2D код, сфотографированный под углом, имеет искаженную геометрию: то есть для анализа он подается не такой, какой он есть на самом деле, а уже искаженный. Алгоритм верификации находит искажение и бракует код, а если и не бракует, то грейд такого кода все равно будет ниже, чем тот, которого он «достоин»

А если используется широкоугольный объектив?

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

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

Пример работы широкоугольного объектива
Пример работы широкоугольного объектива

Теперь представим, что такой линзой фотографируется идеально напечатанный штрих код (а если он еще попадает ближе к краю изображения). У нас получается не красивый квадрат, а бочка. И теперь отправляем его в декодер, который снова говорит: «а у вас код кривой». Но код–то и тут исходно нормальный…

Или не хватает освещенности?

Третий пример. Еще одно требование к 2D коду (кроме отсутствия геометрических искажений): он должен быть контрастным, четко выраженным, без смаза. Для того, чтобы полученное изображение было контрастным и четким необходимо хорошее освещение и правильно выбранная выдержка, при которой делается снимок. Признаемся себе честно: всегда ли в условиях производства возможно соблюсти эти условия? С увеличением скорости конвейера есть шанс получить смазанное изображение. И опять мы даем декодеру для анализа не фактический код, а его неконтрастное и (или) смазанное изображение – и хороший код опять получает низкий грейд.

Кстати подробнее о том, что такое класс качества печати 2D кода (грейд) мы рассказываем в этой статье.

Важно расстояние от камеры до измеряемого кода

Четвертый пример, самый неочевидный. Анализ некоторых параметров качества печати по ГОСТ происходит по кружку замера – т.н. апертуре замера (не путать с апертурой - она же диафрагма -самого объектива камеры). Апертура замера выбирается верификатором исходя из требований ГОСТ, в зависимости от размера единичного модуля (здесь мы пишем что это такое) анализируемого 2D кода. Точно измерить размер модуля можно только точно зная расстояние от кода до матрицы. При установке камеры расстояние до кода анализатору неизвестно, поэтому размер модуля вообще получается «от потолка», а далее выбирается апертура замера… А ведь на одном и том же коде, при использовании разных апертур замера можно получить грейды качества, различающиеся на 1-3 ступени…

И еще много других технических причин...

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

...Например - увеличение нагрузки на процессор

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

Делаем выводы

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

Из всего вышесказанного делаем вывод: добиться от системы машинного зрения решения задачи верификации штрих кода по ГОСТу очень трудно: если все же пытаться решать эту задачу, преодолевать указанные выше трудности, то потребуются: дорогостоящая высокоскоростная камера с качественной оптикой и подсветкой, профессиональный ее монтаж, мощный внешний ПК с установленными классным и поэтому дорогим программным декодером. Кроме того, построенная система будет нуждаться в периодических калибровках, проверках и поверках оборудования. Будет ли уровень вложений оправдан решаемой задачей? Решать заказчику.

А какой же есть выход?

С нашей точки зрения более оправданным решением было бы снижение планки требований. Перед камерами и системами машинного зрения нужно ставить задачу более грубой оценки качества. Да, такую оценку необходимо «соотнести» с данными от стационарного верификатора, но на этом и остановиться. А детальную проверку качества печати оставить специализированным устройствам – верификаторам 2D кода.

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

В следующей статье мы поговорим – какие задачи можно доверять системам технического зрения в рамках маркировки «Честный ЗНАК».

#честный знак #маркировка на производстве #верификация 2D кода #системы технического зрения