8-800-700-35-17
пн-пт 09.00 - 18.00 (МСК)
Array
(
    [0] => Array
        (
            [value] => 167
        )

    [1] => Array
        (
            [value] => 166
        )

    [2] => Array
        (
            [value] => 173
        )

    [3] => Array
        (
            [value] => 174
        )

    [4] => Array
        (
            [value] => 306
        )

    [5] => Array
        (
            [value] => 694
        )

    [6] => Array
        (
            [value] => 456
        )

    [7] => Array
        (
            [value] => 842
        )

)

OCR и OСV: распознавание и верификация символов для производств

Оптическое распознавание символов (англ. optical character recognition, OCR) – технология преобразования изображений, содержащих буквенно-цифровые надписи (рукописные или напечатанные), в машиночитаемые текстовые данные.

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

Помимо считывания символов зачастую требуется их верификация (англ. optical character verification, OCV) – проверка соответствия символов в одной или нескольких символьных строках символам, которые должны содержаться в данных строках.


Уровень развития технологий сегодня таков, что уверенное распознавание и верификация большинства маркировок могут быть обеспечены применением систем машинного зрения «из коробки». Уже более 8 лет наша компания является официальным партнером-интегратором в России и СНГ мирового лидера в производстве систем машинного зрения – компании Cognex. Алгоритмы и оборудование Cognex позволяют быстро проектировать и разрабатывать высококачественные приложения на основе машинного зрения в широком спектре отраслей. Однако существуют задачи, с которыми типовое оборудование не справляется, и тогда требуется разработка индивидуального решения на основе собственных алгоритмов машинного зрения и глубокого обучения, в чем наша компания также специализируется. Цель статьи: поделиться практическим опытом применения машинного зрения для успешного распознавания и верификации символов в различных промышленных приложениях.

Оборудование для распознавания и верификации символов, и его возможности

Современные технологии OCR и OCV применяются на производстве для решения следующих задач:

  • Контроль наличия маркировки
  • Идентификация объектов контроля по маркировке
  • Track&Trace — прослеживаемость продукции на всех этапах производства
  • Верификация нанесенной маркировки

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

Видеодатчики. В конце 2019 года компания Cognex выпустила серию видеодатчиков IS2000/2001 с функцией чтения текста ( «Read Text (OCR)»). Ранее этот функционал был доступен только в смарт-камерах, которые стоят на порядок выше. Видеодатчики надежно справляются с распознаванием качественно пропечатанных символов при печати на этикетках, прямой печати и печати лазером. Могут работать на высоких скоростях, содержат мощные алгоритмы распознавания и имеют относительно низкую стоимость.

Смарт-камеры. Продуктовая линейка полнофункциональных смарт-камер Cognex оснащена новейшими алгоритмами OCR. Мощные алгоритмы распознавания Cognex OCRMax™ и позиционирования — Cognex PatMax и PatMax Redline — позволяют уверенно распознавать маркировку на сложных поверхностях. Смарт-камеры полностью автономны (аналитика происходит на борту) и способны работать на высоких скоростях, малые габариты позволяют вписывать их в стесненные пространства.

Системы на базе камер машинного зрения. Камеры выполняют только съемку маркировки и передают изображения на сервер, где выполняется основная обработка. Все умные функции берет на себя компьютер, распознавание маркировки осуществляется на базе алгоритмов, заложенных в программном обеспечении Cognex VisionPro. Основные преимущества подобных систем: мощные алгоритмы распознавания OCRMax™ и позиционирования PatMax, возможность гибкой настройки оптической схемы, комбинирования алгоритмов; а также возможность подключения до 8 камер на 1 ПК, что позволяет удешевить решение.

Решение производственных задач при помощи традиционных алгоритмов распознавания

В программном обеспечении распознавания символов могут использоваться различные алгоритмы: традиционные алгоритмы и алгоритмы глубокого обучения (Deep Learning), либо их комбинации.

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

В качестве примера рассмотрим все этапы работы традиционного алгоритма OCRMax™ — OCR и OCV инструмент, который используется как в системах InSight Vision, так и в программном обеспечении Cognex VisionPro. OCRMax™ выполняет не только распознавание, но и верификацию маркировки. Ключевые показатели: высокая производительность, предварительная обработка изображений, обучение новым шрифтам, возможность распознавания символов за миллисекунды, возможность достижения точности распознавания на уровне 99,99% или близкой к этому, простота программирования.

Возможности OCRMax™ достаточно широки и включают в себя:

  • Обучение считыванию любого печатного шрифта
  • Распознавание текста при небольшом контрасте между шрифтом и фоном
  • Распознавание текста при значительных различиях в ширине и высоте символов
  • Распознавание текста, когда символы соприкасаются, перекошены или искажены
  • Определение похожих символов (буква «О» и число «0»)
  • Обучение строки символов за один шаг
  • Обучение отдельных символов – можно дополнительно обучить в ходе точечной настройки
  • Обучение нескольким вариантам одного символа
  • Загрузка или сохранение обученных шрифтов

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

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

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

Далее следует этап классификации, который заключается в отнесении каждого обнаруженного символа к определенному классу, например, к букве «А», букве «B», «С» и т.д. Классификация нужна для того, чтобы система отличала такие случаи как буква В и цифра 8, и другие похожие символы, которые могут вызвать сомнения в первоначальной обработке. Опциональный алгоритм программирования Fielding позволяет задать любую дополнительную информацию о строке символов, снижая тем самым вероятность ошибки. Например, можно установить, что символ 4 справа всегда является цифрой или буквой, или что в маркировке должен содержаться код производства. Если система его не найдет, то выдаст сигнал о браке.

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

Заключительный этап — оптическая проверка символов (OCV). Верификация нужна для анализа настройки маркировки на наличие в ней каких-либо ошибок.

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


Таблица 1. Условия качественного распознавания традиционными алгоритмами

Фактор Условие
Изображение Обеспечено выделение четких границ символов.
Контраст Символы отличаются от фона как минимум на 30 уровней градации серого. Прописывается везде, в том числе и в ТЗ, совместно с заказчиками.
Качество печати Символы печатаются без искажений.
Шрифт Символы в строке состоят из предустановленного в ПО шрифта.
Поверхность Строка нанесена на чистой плоской поверхности с незначительными или полностью отсутствующими факторами, которые могли бы повлиять на внешний вид конкретного символа.


Таблица 2. Негативные условия распознавания традиционными алгоритмами

Фактор Условие
Изображение Изображение не попало в фокус или плохо освещено.
Шрифт Символы искажены либо выходят за рамки строки.
Размер шрифта Не соответствует требованиям: минимальная площадь 20x15 пикселей или максимальная площадь 100x80 пикселей.
Контраст  Низкий. Символы не отличаются от фона как минимум на 30 уровней градации серого.
Поверхность Качество поверхности, на которую нанесена строка, не позволяет осуществить надежное распознавание. Ржавая, бликующая.


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

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

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

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

По сравнению с традиционными алгоритмами, глубокое обучение дает более широкие возможности распознавания не только типовых маркировок, но и сложных, поврежденных шрифтов, символов на сложном текстурном фоне и т.д. Программное обеспечение Cognex VisionPro Deep Learning (ViDi) — лучшее в своем классе программное обеспечение для анализа изображений на базе технологий глубокого обучения, разработанное специально для автоматизации производства. В конце апреля 2020 года Cognex выпустил на рынок также линейку смарт-камер с программным обеспечением глубокого обеспечения на борту. Это оборудование заточено именно под распознавание промышленных маркировок и предобучено на огромной базе шрифтов. Возможна работа «из коробки», так как дообучение может и не потребоваться. Кроме того, использование камеры не требует специальных знаний в области машинного зрения.

От чего зависит процент распознавания

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

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

Достичь 70-80% распознавания – не проблема, это можно сделать на стандартных библиотеках, при отсутствии сложных условий. По опыту нашей работы, чтобы достичь распознавания 90-95% нужно поработать над алгоритмами: зачастую достаточно точечных настроек. А вот чтобы достичь уровня 99% и выше, требуется серьезная доработка алгоритмов. Используются дополнительные факторы, повышающие качество распознавания маркировки: например, мы можем использовать несколько алгоритмов, один за одним, распознавание по серии кадров. Способы имеются, но для достижения результата нужно серьезно поработать над доработкой программы. Многое зависит от условий: если мы имеем дело с качественной печатью на хорошей поверхности, то серьезные доработки могут и не потребоваться.

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

Примеры выполненных проектов

За свой почти десятилетний опыт работы компания «Малленом Системс» выполнила множество наукоемких IT-проектов в машиностроении, нефтегазовой, металлургической, пищевой, фармацевтической, алмазодобывающей, атомной и других отраслях промышленности. В том числе было реализовано множество проектов по считыванию маркировки, зачастую трудночитаемой или нанесенной на сложное поверхности. Рассмотрим два из них:

Проект 1: Чтение маркировки с капсюль-детонаторов

Негативные факторы, усложняющие считывание: металлическая бликующая и искривленная поверхность, а также малые размеры капсюль-детонатора и маркировки (диаметр детонатора — 8 мм, размер маркировки — 4 мм). Кроме того, необходимо было обеспечить 100%-ную точность распознавания.

Для решения задачи была разработана система на основе камер машинного зрения (взрывозащищенное исполнение), специализированного освещения и ПО на основе Cognex VisionPro. В результате удалось добиться параллельного и максимально точного распознавания маркировки на 6-ти объектах при использовании одного ПК. Заказчик остался доволен результатом и расширил систему на 4 производственные точки. По запросу заказчика были реализованы доработки интерфейса ПО для удобства работы оператора и визуализации процесса распознавания на русском языке. 

 

Рис. 1. Маркировка капсюль-детонатора

Проект 2: Идентификация труб по маркировке

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

Решение было построено на комбинации результатов распознавания, полученных в ПО Cognex VisionPro, и ПО собственной разработки «Малленом Системс», основанном на алгоритмах определения номера трубы по результатам распознавания на серии кадров. Объединение анализа изображений с 3-х камер дало возможность распознавания маркировки по всей длине трубы.

На текущий момент система обеспечивает считывание с точностью более 99%. На одном ПК может выполняться одновременная обработка видеоизображений, поступающих с нескольких камер (максимум 8).

«Малленом Системс» продолжает работать над увеличением точек распознавания в разных цехах предприятия, так как заказчик хочет получить на выходе полное прослеживание маркировки на всех этапах производства.

 

Рис. 2. Символьная маркировка труб

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

Свои запросы направляйте: 

ООО «Малленом Системс»
162610, Череповец ул. Металлургов, 21Б
8 800 700-35-17

info@mallenom.ru

www.mallenom.ru 

 Виталий Мишин,

Старший менеджер ООО «Малленом Системс»

 

25.11.2020