Открыть сервис

Двумерный штриховой код

Двумерный штриховой код (также 2D-код, матричный код) — это способ кодирования информации в виде графического изображения, состоящего из множества модулей (квадратов, точек, шестиугольников), расположенных в двух измерениях (по горизонтали и вертикали). В отличие от линейных (одномерных) штриховых кодов, которые кодируют данные только в одном направлении (ширине штрихов), двумерные коды позволяют хранить значительно больший объём информации, включая текст, числа, URL-адреса, изображения и бинарные данные, а также обладают механизмами коррекции ошибок, что обеспечивает считывание даже при частичном повреждении кода.

История

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

Ранние разработки

В 1970-х годах компания Intermec (США) разработала первый двумерный штриховой код — Code 49. Он представлял собой многострочный стековый код, объединяющий несколько одномерных кодов друг над другом. Однако из-за сложности считывания и низкой ёмкости он не получил широкого распространения.

Появление матричных кодов

Настоящий прорыв произошёл в 1987 году, когда японская компания Denso Wave (дочернее предприятие Toyota) создала QR-код (Quick Response Code). Изначально он предназначался для быстрой маркировки автомобильных деталей на конвейере. QR-код стал первым массовым матричным кодом, поддерживающим коррекцию ошибок (по алгоритму Рида — Соломона) и считывание в любом направлении (360°).

Распространение и стандартизация

В 1990-х годах появились другие популярные форматы: Data Matrix (1994, компания RVSI Acuity CiMatrix), PDF417 (1990, компания Symbol Technologies), Aztec Code (1995, компания Welch Allyn). В 2000-х годах двумерные коды начали активно использоваться в логистике, торговле, здравоохранении и для мобильных платежей. В 2010-х годах с распространением смартфонов QR-коды стали повсеместны.

В России

В России двумерные коды активно внедряются с середины 2010-х годов. В 2019 году система маркировки товаров «Честный знак» (оператор — ЦРПТ) начала использовать код Data Matrix для обязательной маркировки лекарств, табачной продукции, обуви, шин и других товаров. С 2021 года в России введена обязательная маркировка товаров лёгкой промышленности и молочной продукции.

Классификация

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

Стековые (многострочные) коды

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

  • PDF417 — один из самых распространённых стековых кодов. Используется в билетах, документах (водительские права США), почтовой службе. Ёмкость до 1,1 КБ текста.
  • Code 49 — ранний стековый код, ныне малоиспользуемый.
  • Code 16K — вариант Code 49 с улучшенной плотностью.

Матричные коды

Данные кодируются в виде матрицы из модулей (обычно квадратов). Считывание происходит по двум осям одновременно. Матричные коды обычно компактнее стековых и имеют лучшую коррекцию ошибок.

  • QR-код — самый популярный. Имеет квадратную форму с тремя поисковыми узорами в углах. Поддерживает до 7089 цифр или 4296 символов (включая кириллицу). Коррекция ошибок до 30%.
  • Data Matrix — компактный код, часто используется для маркировки малых объектов (микросхемы, медицинские ампулы). Может быть квадратным или прямоугольным. Поддерживает до 2335 цифр. Коррекция ошибок до 25%.
  • Aztec Code — код, не требующий «тихой зоны» (поля вокруг кода). Используется в транспорте (билеты метро, авиабилеты). Поддерживает до 3832 цифр.
  • MaxiCode — круглый код, разработанный для сортировки посылок (UPS). Содержит концентрические круги.
  • Micro QR — уменьшенная версия QR-кода для малых объёмов данных.

Устройство и принцип работы

Структура

Типичный матричный код (на примере QR-кода) состоит из следующих элементов:

  1. Поисковые узоры (finder patterns) — три квадрата в углах, позволяющие сканеру определить ориентацию и размер кода.
  2. Выравнивающие узоры (alignment patterns) — небольшие квадраты, помогающие при искажении изображения.
  3. Синхронизирующие полосы (timing patterns) — чередующиеся чёрные и белые модули, задающие сетку.
  4. Зона тишины (quiet zone) — белое поле вокруг кода, необходимое для отделения от фона.
  5. Область данных — непосредственно модули, кодирующие информацию. Данные разбиваются на блоки, к которым добавляются коды коррекции ошибок (алгоритм Рида — Соломона).

Кодирование

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

Считывание

Считывание производится оптическим сканером (лазерным или камерой). Современные смартфоны используют камеру и специализированное ПО для декодирования. Процесс включает:

  • Поиск кода в кадре.
  • Определение его границ и ориентации.
  • Извлечение модулей данных.
  • Декодирование с коррекцией ошибок.
  • Вывод информации (текст, URL, контакт).

Применение

Логистика и торговля

  • Маркировка товаров (Data Matrix в системе «Честный знак» в РФ).
  • Отслеживание посылок (MaxiCode, PDF417).
  • Учёт на складах (QR-код, Data Matrix).

Транспорт и билеты

  • Электронные билеты на самолёты, поезда, концерты (PDF417, Aztec Code).
  • QR-коды на остановках для получения расписания.
  • Билеты метро (Aztec Code в некоторых системах).

Реклама и маркетинг

  • QR-коды на упаковках, листовках, билбордах для перехода на сайт, получения скидки, скачивания приложения.
  • В России с 2021 года QR-коды используются для подтверждения вакцинации от COVID-19 (через портал «Госуслуги»).

Здравоохранение

  • Маркировка лекарств (Data Matrix в системе мониторинга движения лекарственных средств).
  • Идентификация пациентов (браслеты с QR-кодом).
  • Учёт медицинского оборудования.

Производство и промышленность

  • Маркировка деталей (Data Matrix на микросхемах, печатных платах).
  • Отслеживание партий и серийных номеров.

Финансы и платежи

  • QR-коды для безналичной оплаты (СБП, Apple Pay, Google Pay).
  • Коды на квитанциях для оплаты ЖКХ.

Документы и идентификация

  • Водительские права (PDF417 в США).
  • Паспорта (Data Matrix на странице с данными).
  • Визитные карточки (QR-код с контактами).

Преимущества и недостатки

Преимущества

  • Высокая ёмкость — до нескольких тысяч символов.
  • Коррекция ошибок — возможность считывания при повреждении до 30% кода.
  • Быстрое считывание — считывание с любого угла (360°).
  • Компактность — можно размещать на малых поверхностях.
  • Универсальность — кодирование любых типов данных (текст, URL, бинарные файлы).

Недостатки

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

Критика и безопасность

С распространением QR-кодов возникли проблемы безопасности. Злоумышленники могут размещать подложные коды, ведущие на фишинговые сайты или загружающие вредоносное ПО. В России в 2022-2023 годах были зафиксированы случаи мошенничества с QR-кодами на парковках и в общественных местах. Рекомендуется проверять URL перед переходом и использовать защищённые сканеры.

Интересные факты

  • QR-код был изобретён в 1994 году сотрудником Denso Wave Масахиро Хара. Компания не стала патентовать технологию, что способствовало её глобальному распространению.
  • Самая большая версия QR-кода (Version 40) содержит 177×177 модулей и может хранить до 7089 цифр.
  • В 2019 году в Китае был создан QR-код площадью 1,2 км² (на рисовом поле), который был виден со спутника.
  • В России система «Честный знак» использует код Data Matrix, который наносится на каждую единицу товара для борьбы с контрафактом.

Источники

  1. ГОСТ Р ИСО/МЭК 18004-2015 «Информационные технологии. Технологии автоматической идентификации и сбора данных. Спецификация символики штрихового кода QR Code».
  2. ISO/IEC 16022:2006 «Information technology — Automatic identification and data capture techniques — Data Matrix bar code symbology specification».
  3. Официальный сайт системы маркировки «Честный знак» (ЦРПТ).
  4. «Штриховые коды: теория и практика» / под ред. В. И. Алексеева. — М.: Машиностроение, 2018.
  5. Denso Wave. «QR Code Essentials» (техническая документация).
  6. «Two-Dimensional Bar Codes» / R. C. Palmer. — Springer, 2015.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →