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

ISO/IEC 15438

ISO/IEC 15438 — это международный стандарт, определяющий требования к символике штрихового кода PDF417 (Portable Data File — портативный файл данных, сокращение от «Portable Data File 417»). Стандарт устанавливает спецификации для кодирования данных, структуры символа, размеров, уровней коррекции ошибок и методов декодирования двумерного матричного штрихкода, который используется для хранения значительных объёмов информации в компактной графической форме.

История и разработка

Разработка стандарта ISO/IEC 15438 началась в конце 1990-х годов как часть серии международных стандартов по автоматической идентификации и сбору данных (AIDC). PDF417 был изобретён в 1991 году компанией Symbol Technologies (США) для удовлетворения потребностей в высокоплотном кодировании данных, превышающем возможности линейных штрихкодов. Первая версия стандарта была опубликована в 2000 году. Впоследствии документ неоднократно пересматривался: последняя актуальная редакция — ISO/IEC 15438:2015 (с поправками 2020 года). Работа над стандартом ведётся подкомитетом SC 31 «Автоматическая идентификация и сбор данных» объединённого технического комитета ISO/IEC JTC 1.

Структура символа PDF417

Символ PDF417 состоит из последовательности строк, каждая из которых содержит несколько модулей (элементов). Основные структурные элементы:

  • Стартовый и стоповый паттерны — уникальные последовательности модулей, обозначающие начало и конец символа.
  • Левая и правая индикаторные колонки — содержат информацию о количестве строк, столбцов, уровне коррекции ошибок и других параметрах символа.
  • Кодовые слова (codewords) — каждая строка делится на 17 модулей, образующих 4 штриха и 4 пробела. Каждый такой набор кодирует одно кодовое слово — 17-битное значение в диапазоне от 0 до 928 (всего 929 возможных значений). Количество кодовых слов в строке может варьироваться от 1 до 30, что задаёт ширину символа.
  • Область данных — последовательность кодовых слов, несущих закодированную информацию и служебные данные.

Количество строк в символе может составлять от 3 до 90, количество столбцов (кодовых слов на строку) — от 1 до 30. Таким образом, общее количество кодовых слов в одном символе может достигать 2700, что позволяет хранить до 1850 буквенно-цифровых или 2710 цифровых символов.

Режимы кодирования данных

Стандарт ISO/IEC 15438 определяет три основных режима сжатия данных (компакции), которые могут переключаться внутри одного символа:

  • Text compaction — кодирование буквенно-цифровых символов (латиница, цифры, знаки препинания) с использованием таблиц подстановки. Обеспечивает сжатие примерно 2,9 символа на кодовое слово.
  • Byte compaction — кодирование произвольных байтовых данных (бинарные файлы, изображения). Обеспечивает сжатие 1,2 байта на кодовое слово.
  • Numeric compaction — кодирование последовательностей цифр. Обеспечивает сжатие примерно 2,93 цифры на кодовое слово.

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

Коррекция ошибок

PDF417 использует алгоритм Рида — Соломона для исправления ошибок. Стандарт ISO/IEC 15438 предусматривает девять уровней коррекции ошибок (ECL — Error Correction Level), от 0 до 8:

Уровень ECLКоличество кодовых слов коррекцииМаксимальная исправляемая ошибка (в % от данных)
020,2 %
140,5 %
281,0 %
3162,0 %
4324,0 %
5648,0 %
612816,0 %
725632,0 %
851264,0 %

Выбор уровня коррекции зависит от условий сканирования и требуемой надёжности. В реальных приложениях чаще всего используются уровни 2–5. Кодовые слова коррекции располагаются в конце символа после данных.

Макро-PDF417

Стандарт ISO/IEC 15438 также определяет расширение Macro PDF417 (также известное как PDF417 Truncated), позволяющее разбивать большие объёмы данных на несколько связанных символов. Каждый символ в такой последовательности содержит заголовок с идентификатором файла, номером сегмента и общим количеством сегментов. Это позволяет декодировать данные, превышающие ёмкость одного символа (до 1,1 мегабайта в теоретическом максимуме).

Применение

PDF417 и соответствующий стандарт ISO/IEC 15438 нашли широкое применение в различных отраслях:

  • Транспорт и логистика — авиационные билеты (IATA), почтовые отправления, грузовые накладные.
  • Документооборот — водительские удостоверения (в США и некоторых других странах), удостоверения личности, паспорта, визы.
  • Здравоохранение — маркировка лекарственных средств, медицинских приборов, браслеты пациентов.
  • Банковское дело — чеки, платёжные поручения.
  • Производство — маркировка комплектующих, серийных номеров, инструкций.

В России PDF417 используется в системах маркировки товаров (например, «Честный знак» — обязательная маркировка лекарств, обуви, табачной продукции), а также в транспортных документах и удостоверениях личности.

Технические требования

Стандарт ISO/IEC 15438 устанавливает жёсткие параметры для печати и сканирования:

  • Минимальный размер модуля (X-размер) — не менее 0,0075 дюйма (0,19 мм) для большинства приложений.
  • Соотношение высоты штриха к ширине модуля (Y-размер) — обычно 3:1, но может варьироваться.
  • Поля (quiet zones) — свободное пространство вокруг символа не менее 2X слева и справа, не менее 1X сверху и снизу.
  • Допуски на печать — отклонения ширины модулей не более ±0,4X для штрихов и пробелов.

Критика и ограничения

Несмотря на широкое распространение, PDF417 имеет ряд недостатков:

  • Относительно низкая плотность данных по сравнению с более современными двумерными кодами (например, Data Matrix или QR-код). Для хранения одинакового объёма информации PDF417 требует большей площади.
  • Чувствительность к повреждениям — при локальном повреждении символа (например, царапине) восстановление данных возможно только в пределах возможностей коррекции ошибок, что ограничено выбранным уровнем ECL.
  • Сложность декодирования — алгоритм требует больше вычислительных ресурсов по сравнению с простыми линейными кодами.

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

Источники

  • ISO/IEC 15438:2015 «Information technology — Automatic identification and data capture techniques — PDF417 bar code symbology specification»
  • ГОСТ Р ИСО/МЭК 15438-2010 «Информационные технологии. Технологии автоматической идентификации и сбора данных. Спецификация символики штрихового кода PDF417»
  • AIM International Technical Specification — PDF417 (1994)
  • Palmer, R. C. «The Bar Code Book: A Comprehensive Guide to Reading, Printing, Specifying, and Applying Bar Code and Other Machine-Readable Symbols» (5th ed., 2007)
Заметили ошибку или не согласны с информацией в статье? Напишите нам support@bfometr.ru