ГОСТ ISO/IEC 24724-2011 сторінка 4 з 21
.
Таблица 4 — Значения шаблонов поиска и ширина элементов
|
Вариант шаблона поиска |
Ширина элемента в модулях (при нумерации снаружи вовнутрь) для элемента с номером |
|||||
|
1 |
2 |
3 |
4 |
5 |
||
|
0 |
3 |
8 |
2 |
1 |
1 |
|
|
1 |
3 |
5 |
5 |
1 |
1 |
|
|
2 |
3 |
3 |
1 |
1 |
||
|
3 |
3 |
1 |
9 |
1 |
1 |
|
|
4 |
2 |
4 |
1 |
1 |
||
|
5 |
2 |
5 |
6 |
1 |
1 |
|
|
6 |
2 |
3 |
8 |
1 |
1 |
|
|
1 |
5 |
1 |
1 |
|||
|
8 |
1 |
3 |
9 |
1 |
1 |
|
Пары со значениями шаблона поиска (левый и правый) 8и0и0и8не используют, так как значения 0 и 8 могут быть преобразованы в противоположные значения при возникновении одиночной краевой ошибки 1-Х. Оставшиеся 79 возможных пар значений шаблона поиска кодируют величину контрольной суммы по mod 79.
-
Вычисление контрольной суммы
Значения для двух шаблонов поиска CLEFT и CR|GHT могут быть представлены одним из девяти воз- можныхзначений. Пары значений шаблонов поиска 0и8и8и0не используют. Таким образом, остается 79 (9 х 9 - 2 = 79) сочетаний пар значений шаблонов поиска. Значение контрольной суммы равно остатку от деления по модулю 79 взвешенной суммы значений ширины элементов в знаке символа.
Значение контрольной суммы по модулю 79 вычисляют по формуле
(W-ijEt j + W, 2Е.] 2 + ...+ W18E18 + W21E21 + ...+W48E48) mod 79,
где WN MEN м — произведение ширины элемента (в модулях) на весовой коэффициент этого элемента по таблице 5, расположенного в позиции М знака символа N1).
Весовые коэффициенты вычисляют как степенную функцию с аргументом 3 по модулю 7934.
Таблица 5 — Весовые коэффициенты элементов знаков символа для вычисления значения контрольной суммы
|
Номер знака символа |
Весовой коэффициент для элемента с номером |
||||||||
|
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
||
|
1 |
1 |
3 |
9 |
27 |
2 |
6 |
18 |
54 |
|
|
2 |
4 |
12 |
36 |
29 |
8 |
24 |
72 |
58 |
|
|
3 |
16 |
48 |
65 |
37 |
32 |
17 |
51 |
74 |
|
|
4 |
64 |
34 |
23 |
69 |
49 |
68 |
46 |
59 |
|
Кодирование двух значений шаблона поиска проводят в следующем порядке: temp равно значению контрольной суммы;
если temp больше или равно 8, то temp = temp + 1;
если temp больше или равно 72, то temp = temp + 1;
Cleft = temp div 9;
cright = temp mod 9-
В приложении F (F.1) приведен пример вычисления контрольной суммы и выбора контрольного знака.
-
Декодирование шаблона поиска
Декодирование шаблона поиска начинают с его идентификации путем сравнения общей ширины четырех расположенных рядом элементов со значениями ширины крайней левой или крайней правой пар элементов. Для шаблона поиска это отношение должно находиться в пределах от 12:9,5 до 14:12,5. Левый и правый шаблоны поиска отличают по инверсии темных и светлых элементов.
Установление шаблона поиска и проверка действительных пропорций знака символа и соответствующего шаблона поиска должны быть подтверждением того, что был сканирован надлежащий сегмент символа GS1 DataBar Всенаправленный, GS1 DataBar Усеченный, GS1 DataBar Двустрочный или GS1 DataBar Двустрочный Всенаправленный, соответствующий четверти символа.
-
2.5 Рекомендуемый алгоритм декодирования
Системы считывания штриховых кодов обеспечивают считывание настолько несовершенных символов, насколько это позволяют используемые на практике алгоритмы декодирования. В настоящем пункте приведен рекомендуемый алгоритм декодирования, используемый для расчета значения декодируемости по ISO/IEC 15416 при измерении качества печати символа.
Алгоритм включает в себя следующие этапы декодирования символа:
-
обнаружение сегмента при поиске в символе слева направо и справа налево последовательности из четырех элементов с заданным соотношением:
при сканировании слева направо:
9,5:12 < ((элемент 1 + элемент 2):(элемент 1 + элемент 2 + элемент 3 + элемент 4)) <12,5:14;
при сканировании справа налево:
9,5:12 < ((элемент 3 + элемент 4): (элемент 1 + элемент 2 + элемент 3 + элемент 4)) <12,5:14.
Данное соотношение определяет со второго по пятый элементы шаблона поиска.
Используя метод, изложенный в перечислении с) 1) — 3), декодируют шаблон поиска для нахождения нормированных значений «от края до подобного края» (штрих плюс пробел и пробел плюс штрих) Е1 и Е2, исходя из размера р, а также сумму размеров первых четырех элементов шаблона поиска. Проверяют соответствие значений Е1 и Е2 действительному шаблону поиска символов штрихового кода GS1 DataBar Всенаправленный, GS1 DataBar Усеченный, GS1 DataBar Двустрочный или GS1 DataBar Двустрочный Всенаправленный.
Примечание — Нумерация элементов соответствует порядку их следования от внешнего края символа к его центру, таким образом, первым элементом в левом шаблоне поиска считают крайний левый элемент, а первым элементом правого шаблона поиска — крайний правый (см. рисунок 2);
-
определяют направление следования элементов и инверсию элементов «черный — белый» шаблона поиска. С помощью шаблона поиска и ориентации устанавливают, какая (n,k) структура — (16,4) или (15,4) — подходит для прилегающего к нему знак символа, а также цвет (черный или белый) начального элемента;
-
декодируют каждый прилегающий знак символа со структурой (16,4) следующим образом:
-
измеряют ширину семи размеров р, ег е2, е3, е4, е5 и е6 (рисунок 3).
П
Нечетньїщ Нечетный2 Нечетный3
Нечетный4
Четный^ Четный2
Четный3
Четный4
Рисунок 3 — Измеряемые размеры при декодировании
римечание — На рисунке3 первый элемент изображен в виде темного элемента слева, но знаки символа могут быть также зеркальным отражением слева направо и/или инвертированы по цветам темный/светлый по отношению к рисунку.
п
2)
реобразуют измеренные размеры еъ е2, е3, е4, е5, и е6 в нормированные значения Е^Ег, Е3, Е4, Е5 и Е6, которые представляют собой ширину в целых значениях модулей (Е,) измеренных размеров. Для значения Е, используют следующие выражения:Е
если 1,5р/16 < е, < 2,5р/16, то Е
если 2,5р/16 < е если 3,5р/16 < е если 4,5р/16 < е если 5,5р/16 < е если 6,5р/16 < е если 7,5р/16 < е если 8,5р/16 < е
<3,5р/16, тоЕ < 4,5р/16, то Е < 5,5р/16, то Е < 6,5р/16, то Е <7,5р/16, тоЕ < 8,5р/16, то Е < 9,5р/16, то Е
= 2;
= 3;
= 4;
= 5;
= 6;
= 8;
= 9.
сли данные условия не выполняются, знак символа считают ошибочным;
о
3)
пределяют нормированные значения ширины элементов, исходя из значений Е. К ширине последнего элемента знака символа относят оставшиеся модули (вместо вычисления его ширины по значениям Е). Установление действительных размеров ширины элементов является единственным решением, при котором в знаке символа не должны присутствовать элементы с шириной менее одного модуля, и должен быть включен хотя бы один четный элемент с шириной один модуль. Например, на рисунке 3 значения от Е1 до Е6 равны {434554}. Возможные производные наборы элементов могут быть рассчитаны как {4031 41 30} (следует обратить внимание на присутствие элементов шириной 0 модулей), {31 223221}, {221 3231 2} (следует обратить внимание на отсутствие четных элементов шириной один модуль) или {1 3 0 41 4 0 3} (следует обратить внимание на присутствие элементов шириной 0 модулей и на отсутствие четных элементов шириной один модуль). Только восемь значений ширины элементов {31 22 322 ^удовлетворяют этим требованиям, поэтому их выбирают в качестве значений ширины элементов. Если ни один из полученных наборов элементов не является действительным, то знак считают ошибочным. В приложении G приведена реализация алгоритма декодирования ширины этих элементов на языке программирования С;
-
определяют значения четного и нечетного поднаборов с помощью программы, приведенной в приложении В;
-
вычисляют значение знака символа из значений четного и нечетного поднаборов;
-
вычисляют и сохраняют значения произведений весовых коэффициентов на значения ширины элементов для расчета контрольной суммы;
-
декодируют каждый прилегающий знак символа со структурой (15,4) следующим образом:
-
измеряют ширину семи размеров р, еъ е2, е3, е4, е5 и е6 (рисунок 3);
-
преобразуют измеренные размеры е^ е2, е3, е4, е5 и е6 в нормированные значения Еп Е2, Е3, Е4, Е5 и Е6, которые представляют собой ширину в целых значениях модулей (Е) этих измеренных размеров. Для і-го значения Е используют следующие выражения:
Е
если 1,5р/15 < е, < 2,5р/15, то Е если 2,5р/15 < е, < 3,5р/15, то Е если 3,5р/15 < е, < 4,5р/15, то Е
если 4,5р/15 < е если 5,5р/15 < е если 6,5р/15 < е если 7,5р/15 < е если 8,5р/15 < е
< 5,5р/15, то Е < 6,5р/15, то Е <7,5р/15, тоЕ < 8,5р/15, то Е < 9,5р/15, то Е
= 2;
= 3;
= 4;
= 5;
= 6;
= 8;
= 9.
сли данные условия не выполняются, знак символа считают ошибочным;
о
3)
пределяют значение знака символа со структурой (15,4) в соответствии с порядком, установленным в перечислениях с) 3) — 6);
-
декодируют значение шаблона поиска с помощью следующего метода, использующего нормиро
ванные значения ширины элементов:
-
находят значение р как сумму элементов еп е2, е3 и е4 шаблона поиска;
-
преобразуют измеренные размеры еъ е2, е3 и е4 в нормированные значения Еп Е2, Е3 и Е4, которые представляют собой ширину в целых значениях модулей (Е) этих измеренных размеров. Для і-го значения Е используют следующие выражения:
если 1,5р/14 < е, < 2,5р/14, то Е, =2;
если 2,5р/14 < ej < 3,5р/14, то Еі = 3;
если 3,5р/14 < е, < 4,5р/14, то Е, = 4;
если 4,5р/14 < е, < 5,5р/14, то Е, = 5;
если 5,5р/14 < е, < 6,5р/14, то Е, = 6;
если 6,5р/14 < е, < 7,5р/14, то Е, = 7;
если 7,5р/14 < е, < 8,5р/14, то Е, = 8;
если 8,5р/14 < е, < 9,5р/14, то Е, = 9;
-
значения для Еї, Е2, Е3 и Е4 шаблона поиска приведены в таблице 4;
-
после декодирования всех четырех знаков данных и двух шаблонов поиска проверяют значения обоих шаблонов поиска на принадлежность к установленному набору из 79 действительных пар значений, а также на совпадение значения контрольной суммы по модулю 79, вычисленной по двум шаблонам поиска, результатам расчета по модулю 79 суммы взвешенных значений ширины элементов (5.2.4.2) для знаков символа;
д) вычисляют значение флага сопровождения и идентификационного номера предмета по четырем знакам данных;
h) в качестве дополнительной меры проводят вторичные проверки изменения скорости сканирования, абсолютного времени сканирования, размеров символа и т.п., целесообразность которых определяют исходя из конкретного типа устройства считывания и предполагаемых условий применения.
При разработке сканеров, предназначенныхдля практического считывания символов GS1 DataBar, требуются средства обеспечения надежности измерений, такие как сбор избыточных данных. В приложении Н приведены дополнительные рекомендации по декодированию символов, которые следует учитывать для минимизации ошибочных считываний.
5.3 Специальные виды символов для особых применений
-
Символ GS1 DataBar Усеченный
Структура и правила кодирования символа GS1 DataBar Усеченный (рисунок 4) аналогичны символу GS1 DataBar Всенаправленный; отличием является высота символа, уменьшенная до минимального размера 13Х. Символ GS1 DataBar Усеченный может быть использован для маркировки мелких предметов торговли вместо символа GS1 DataBar Ограниченный в случае, когда требуется, чтобы разряд индикатора мог принимать более одного значения. Символ GS1 DataBar Усеченный применяют также с целью уменьшения высоты символа GS1 Композитный в случае, когда двумерный компонент состоит из четырех столбцов.
Символы GS1 DataBar Усеченный предназначены для считывания информации сканерами различного типа— считывающими карандашами, ручными (переносными) лазерными сканерами, а также линейными и двумерными сканерами изображения. Всенаправленные сканеры на кассовых терминалах в пунктах розничной торговли не позволяют осуществлять эффективное считывание указанных символов.
Рисунок 4 — Символ GS1 DataBar Усеченный, представляющий номер (01)00012345678905
Побачили розбіжність з офіційним текстом?
Дивіться також
Сборник ГОСТ ЕСКД
Збірник із 154 стандартів