Распознавание штрих-кода

В этом примере показано, как создать систему обработки изображений, которая может распознавать и интерпретировать GTIN-13 штрихкод. Штрих-код GTIN-13, формально известный как EAN-13, является международным стандартом штрих-кода. Это супермножество широко используемого стандарта UPC.

Пример модели

Следующий рисунок показывает модель распознавания штрих-кода:

Штрих-код GTIN-13

GTIN - это аббревиатура, обозначающая Global Trade Item Number, семейство идентификационных номеров продуктов, которое охватывает различные версии штрихкодов EAN и обеспечивает единую всемирную систему нумерации. Штрих-код GTIN-13 (EAN/UCC-13) кодирует 13-значный номер.

Алгоритм

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

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

Вы можете изменить количество и местоположение сканлайнов, изменив значение параметра «Row Positions Of Scanlines».

Результаты

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

Доступные версии примера

Пример использования сохраненного видео данных: vipbarcoderecognition.slx (независимая от платформы)

Пример использования live video acquisition: viplivebarcoderecognition_win.slx (только для Windows ®)

Ссылки

[1] T. Pavlidis, J. Swartz, and Y.P. Wang, Fundamentals of star code information theory, Computer, pp. 74-86, vol. 23, no. 4, Apr 1990.