[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

RU2823438C1 - Method of generating and decoding two-dimensional code of data medium - Google Patents

Method of generating and decoding two-dimensional code of data medium Download PDF

Info

Publication number
RU2823438C1
RU2823438C1 RU2023130909A RU2023130909A RU2823438C1 RU 2823438 C1 RU2823438 C1 RU 2823438C1 RU 2023130909 A RU2023130909 A RU 2023130909A RU 2023130909 A RU2023130909 A RU 2023130909A RU 2823438 C1 RU2823438 C1 RU 2823438C1
Authority
RU
Russia
Prior art keywords
code
aggregating
dimensional code
information
color
Prior art date
Application number
RU2023130909A
Other languages
Russian (ru)
Inventor
Дмитрий Александрович Раевский
Виталий Игоревич Климинский
Сергей Николаевич Зиновкин
Original Assignee
Акционерное общество "Гознак" (АО "Гознак")
Filing date
Publication date
Application filed by Акционерное общество "Гознак" (АО "Гознак") filed Critical Акционерное общество "Гознак" (АО "Гознак")
Application granted granted Critical
Publication of RU2823438C1 publication Critical patent/RU2823438C1/en

Links

Abstract

FIELD: physics.
SUBSTANCE: invention relates to formation of information carriers. Technical result is achieved by the fact that it provides for the possibility of decoding the aggregating two-dimensional code, wherein for the formation of the aggregating two-dimensional code of the information medium, the steps are performed at which: selecting the format of the QR code; set of information to be placed in the aggregating two-dimensional code is converted into a bit data array; breaking down each generated bit array of data, which exceeds the allowable volume for the selected QR code format, into a set of blocks; generating a QR code for each block; obtained QR codes are placed in a matrix of aggregated values; for each single data element of the used format of the QR code, layer-by-layer bitwise aggregation is carried out; dimension of identifier parts responsible for encoding information in cells of the aggregating two-dimensional code, which determine the colour of the symbol and the symbol in the cell, is determined, and a control code table used for encoding is formed.
EFFECT: increase in the amount of information placed in the aggregating two-dimensional code of the information medium while maintaining the possibility of recognition by the built-in cameras of smartphones and subsequent decoding.
10 cl, 8 dwg, 5 tbl

Description

Область техники, к которой относится изобретениеField of technology to which the invention relates

Предлагаемые изобретения относятся к области формирования носителей информации, содержащих агрегирующий двумерный код, таких как идентификационные документы или информационные носители, содержащие технологические инструкции или информационные материалы, а также для использования в маркетинговых целях.The proposed inventions relate to the field of forming information media containing an aggregating two-dimensional code, such as identification documents or information media containing technological instructions or information materials, as well as for use for marketing purposes.

Уровень техникиState of the art

Основные проблемы, с которыми сталкиваются потребители рынка систем для работы с идентификационными документами, использующими решения на основе QR-кодов, определяются ограничением на объем информации, которую можно поместить в QR-код, и требованием поддержания стабильности считывания QR-кодов на заданном уровне. The main problems faced by consumers of the market for systems for working with identification documents using solutions based on QR codes are determined by the limitation on the amount of information that can be placed in a QR code and the requirement to maintain the stability of reading QR codes at a given level.

В попытке увеличить объем данных, которые можно сохранить с использованием QR-кода, можно выделить следующие типы решений.In an attempt to increase the amount of data that can be stored using a QR code, the following types of solutions can be distinguished.

Использование в одном документе двух или более QR-кодов или использование в дополнение к основному QR-коду дополнительного двумерного штрих-кода, выполненного по технологии «невидимого штрих-кода». Очевидно, что такой путь повышения объема размещаемой на идентификационном документе информации за счет использования нескольких QR-кодов меньшего размера имеет следующие недостатки:Using two or more QR codes in one document or using, in addition to the main QR code, an additional two-dimensional barcode made using “invisible barcode” technology. Obviously, this way of increasing the volume of information placed on an identification document by using several smaller QR codes has the following disadvantages:

1) ограничение числа доступных моделей сканеров QR-кодов в связи с отсутствием у ряда моделей как функционала одновременного чтения нескольких QR-кодов с последующим объединением полученных сведений в единый блок, так и функционала чтения «невидимых QR-кодов»;1) limiting the number of available models of QR code scanners due to the lack of functionality in a number of models for simultaneous reading of several QR codes with subsequent merging of the received information into a single block, and the functionality for reading “invisible QR codes”;

2) стандартные приложения для мобильных устройств не имеют функционала одновременного чтения нескольких QR-кодов с последующим объединением полученных сведений в единый блок, что может потребовать разработку дополнительных программных модулей для систем, работающих с QR-кодами;2) standard applications for mobile devices do not have the functionality for simultaneous reading of several QR codes with subsequent integration of the received information into a single block, which may require the development of additional software modules for systems that work with QR codes;

3) суммарная площадь, с учетом обязательных разделительных полей между QR-кодами, занимаемая несколькими QR-кодами на документе, превышает площадь, занимаемую QR-кодом старшего уровня, что повышает вероятность механического повреждения всего информационного поля, занимаемого на документе QR-кодами.3) the total area, taking into account the mandatory separating fields between QR codes, occupied by several QR codes on a document exceeds the area occupied by a higher-level QR code, which increases the likelihood of mechanical damage to the entire information field occupied by QR codes on a document.

4) расположение на идентификационном документе 2-х и более QR-кодов менее 30-й версии вместо одного QR-кода 40-й версии приведет в вынужденному уменьшению размеров всего поля каждого из располагаемых QR-кодов, и, с учетом количества элементов по версиям, и каждого отдельного модуля QR-кода, приведет к значительному снижению читабельности всего QR-кода сканерами, контрольными терминалами и мобильными устройствами.4) placement on an identification document of 2 or more QR codes of less than the 30th version instead of one QR code of the 40th version will lead to a forced reduction in the size of the entire field of each of the available QR codes, and, taking into account the number of elements by version , and each individual QR code module, will lead to a significant reduction in the readability of the entire QR code by scanners, control terminals and mobile devices.

Вторым способом увеличения объема данных, которые можно сохранить с использованием QR-кода является использование полутоновых или цветных ячеек вместо ячеек, содержащих черный и белый цвет. Увеличение количества цветов, с одной стороны, приводит к увеличению объема информации, которую можно сохранить при помощи QR-кода, но, с другой стороны, накладывает ограничения на минимальный размер ячейки, а, следовательно, увеличивает размер QR-кода, при этом количество применяемых цветов ограничивается как возможностями устройств печати, так и возможностями устройств считывания.A second way to increase the amount of data that can be stored using a QR code is to use grayscale or color cells instead of black and white cells. Increasing the number of colors, on the one hand, leads to an increase in the amount of information that can be stored using a QR code, but, on the other hand, it imposes restrictions on the minimum cell size, and, therefore, increases the size of the QR code, while the number of used colors is limited by both the capabilities of printing devices and the capabilities of reading devices.

Так, например, DataMatrix коды, предлагаемые в US 2022/0327302 A1, опубл. 13.10.2022, формируемые на основе цветных прямоугольных элементов с 3-х битной цветовой кодировкой, возможно использовать для маркировки этикеток контейнеров и пробирок с материалами для биохимических исследований, но только для небольшого числа цветов в кодовой палитре и только для кодов с низкой плотностью расположения элементов изображения. При увеличении числа цветов в составе кода и использовании для формирования изображения плотно расположенных и гранично неразделенных прямоугольных элементов, а также при отсутствии в составе изображения контрольной цветовой кодовой таблицы, данное решение будет очень сильно зависимо (при его использовании для бесконтактного считывания изображения кода) от условий внешнего освещения. Наличие цветовых составляющих во внешних источниках освещения может приводить к значительному смещению цветовой палитры сканируемого изображения, вызывая тем самым ошибки декодирования. For example, DataMatrix codes proposed in US 2022/0327302 A1, publ. 10/13/2022, formed on the basis of colored rectangular elements with 3-bit color coding, can be used for marking labels of containers and test tubes with materials for biochemical research, but only for a small number of colors in the code palette and only for codes with a low density of elements. Images. With an increase in the number of colors in the code and the use of densely spaced and boundary unseparated rectangular elements to form the image, as well as in the absence of a control color code table in the image, this solution will be very dependent (when used for contactless reading of the code image) on the conditions external lighting. The presence of color components in external light sources can lead to a significant shift in the color palette of the scanned image, thereby causing decoding errors.

В US 7032823 B2, опубл. 25.04.2006 описан процесс формирования битового потока для формирования 5-ти слойного массива (RGB-слои, слои яркости и масштаба), при этом предусматривается использование в QR-коде распределенной контрольной цветовой палитры. Данная технология не учитывает цветовые особенности при выводе изображения документов на печать и особенности процесса сканирования документов мобильными устройствами при проведении проверок в различных условиях освещенности. В условиях массового использования с доступными на сегодняшний день устройствами печати/считывания применение такой технологии затруднительно и приведет к большому числу ошибок при декодировании.In US 7032823 B2, publ. 04/25/2006 describes the process of forming a bit stream to form a 5-layer array (RGB layers, brightness and scale layers), which provides for the use of a distributed control color palette in the QR code. This technology does not take into account color features when printing images of documents and the features of the process of scanning documents with mobile devices when conducting checks in different lighting conditions. In conditions of mass use with currently available printing/reading devices, the use of such technology is difficult and will lead to a large number of errors during decoding.

Также известны попытки создания двумерных кодов, содержащих цветные фигуры в виде треугольников как основных элементов кодирования данных (US 7936901 B2, опубл. 03.05.2011 и CN 111723890 A, опубл. 29.09.2020). Использование данной технологии не применимо при создании информационных носителей, так как регулярные структуры полутоновых фигур делают практически невозможным использование для их считывания мобильных устройств, в которых применяются технологии контрастного или фазового автофокуса. Кроме того, в различных условиях освещенности при сканировании мобильными устройствами идентификационных документов, практически невозможно получить изображение, на котором можно гарантированно идентифицировать фигуры с близкими полутонами одного цвета.There are also known attempts to create two-dimensional codes containing colored figures in the form of triangles as the main elements of data encoding (US 7936901 B2, published 05/03/2011 and CN 111723890 A, published 09/29/2020). The use of this technology is not applicable when creating information media, since the regular structures of halftone figures make it almost impossible to use mobile devices that use contrast or phase autofocus technologies to read them. In addition, in different lighting conditions when scanning identification documents with mobile devices, it is almost impossible to obtain an image in which it is possible to reliably identify figures with similar halftones of the same color.

В CN 107895187 A, опубл. 10.04.2018 показан способ формирования двумерного кода символьного типа, но его применимость позиционируется только для обмена короткими сообщениями, без применения в области идентификационных документов. Приводится пример простого нестандартного матричного кода неопределенного формата. Целью уменьшения объема кода декларируется борьба с возможностью использования кодов, как переносчиков компьютерных вирусов.In CN 107895187 A, publ. 04/10/2018 shows a method for generating a two-dimensional character code, but its applicability is positioned only for the exchange of short messages, without application in the field of identification documents. An example of a simple non-standard matrix code of unspecified format is given. The declared goal of reducing the volume of code is to combat the possibility of using codes as carriers of computer viruses.

Наиболее близким к заявленному изобретению является патент US 9805296 B2, опубл. 31.10.2017, раскрывающий способ генерации многослойного цветного QR-кода из данных, подлежащих кодированию, включающий:The closest to the claimed invention is patent US 9805296 B2, publ. 10/31/2017, disclosing a method for generating a multi-layer color QR code from data to be encoded, including:

разделение данных, подлежащих кодированию, на множество блоков данных согласно количеству слоев и уровню исправления ошибок каждого уровня, заданному пользователем;dividing the data to be encoded into a plurality of data blocks according to the number of layers and the error correction level of each layer specified by the user;

разбиение данных во всех блоках данных на биты;splitting the data in all data blocks into bits;

независимое кодирование разделенных блоков данных во множество монохромных QR-кодов, при этом каждый монохромный QR-код имеет одно и то же измерение;independently encoding separated blocks of data into multiple monochrome QR codes, with each monochrome QR code having the same dimension;

перемешивание блоков данных в каждом монохромном QR-коде случайным образом или на основе размеров каждого монохромного QR-кода;shuffling the data blocks in each monochrome QR code randomly or based on the sizes of each monochrome QR code;

объединение всех монохромных QR-кодов для создания многослойного цветного QR-кода с использованием предопределенной таблицы кодов цветов; иcombining all monochrome QR codes to create a multi-layer color QR code using a predefined color code table; And

добавление цветовых ограничений к пространственным узорам,adding color restrictions to spatial patterns,

при этом добавление цветовых ограничений к пространственным шаблонам включает: окрашивание всех шаблонов поиска и шаблонов выравнивания набором цветов для уменьшения ложных срабатываний в процессе локализации.while adding color constraints to spatial patterns includes: coloring all search patterns and alignment patterns with a set of colors to reduce false positives during the localization process.

К недостаткам данного способа генерации многослойного цветного QR-кода можно отнести использование типовых форм элементов QR-кода для формирования результирующего изображения многослойного цветного QR-кода, полностью заполняемых цветом из кодовой палитры, и имеющих общую границу - данное решение неприменимо для использования QR-кодов высокой плотности (версия 20 и выше) в идентификационных документах, так как при печати гранично неразделенных разноцветных элементов будет происходить граничное смешение цветов, что вызовет появление цветов, отсутствующих в палитре и приведет к значительному искажению границ элементов QR-кода.The disadvantages of this method of generating a multilayer color QR code include the use of standard forms of QR code elements to form the resulting image of a multilayer color QR code, completely filled with color from the code palette, and having a common border - this solution is not applicable for the use of high-quality QR codes density (version 20 and higher) in identification documents, since when printing borderline non-separated multi-colored elements, borderline color mixing will occur, which will cause the appearance of colors that are not in the palette and will lead to a significant distortion of the boundaries of the QR code elements.

Также данный патент раскрывает способ декодирования многослойного цветного QR-кода, включающий:This patent also discloses a method for decoding a multi-layer color QR code, including:

захват изображения одного или более двумерных многослойных цветных QR-кодов, имеющих множество слоев закодированных данных;capturing an image of one or more two-dimensional multi-layer color QR codes having multiple layers of encoded data;

обнаружение грубых местоположений цветных QR-кодов с помощью детектора QR-кодов на основе скользящего окна, обученного в автономном режиме;detecting coarse locations of color QR codes using a sliding window based QR code detector trained offline;

создание внутри каждого обнаруженного неровного местоположения исправленного цветового QR-кода, который генерируется с использованием надежного алгоритма геометрического преобразования;generating within each detected bump location a corrected color QR code that is generated using a robust geometric transformation algorithm;

выполнение восстановления цвета по исправленному цветовому QR-коду путем восстановления исходного цвета каждого цветового пикселя исправленного цветового QR-кода с использованием классификатора цветов, обученного в автономном режиме, и дальнейшего разложения восстановленного цветового QR-кода на несколько монохромных QR-кодов с использованием предварительно определенной таблицы кодов цветов, используемой в процесс кодирования; иperforming color restoration from a corrected color QR code by restoring the original color of each color pixel of the corrected color QR code using an offline-trained color classifier and further decomposing the reconstructed color QR code into multiple monochrome QR codes using a predefined table color codes used in the encoding process; And

извлечение закодированных данных из монохромных QR-кодов слой за слоем и объединение монохромных QR-кодов для вывода данных, закодированных в захваченном цветном QR-коде.extracting encoded data from monochrome QR codes layer by layer and combining monochrome QR codes to output data encoded in the captured color QR code.

К недостаткам данного способа декодирования многослойного цветного QR-кода можно отнести неприменимость данного метода для использования в процессах проверки идентификационных документов, так как захват изображения двумерных многослойных цветных QR-кодов, сформированных из гранично неразделенных разноцветных элементов, при считывании из детектирующим устройством сильно зависим от условий освещенности (в частности от интенсивности источников света и цветового спектра источников света), и интерференции цветов на границах раздела элементов QR-кода, особенно для QR-кодов плотности (версии 21 и выше).The disadvantages of this method of decoding a multilayer color QR code include the inapplicability of this method for use in verification processes of identification documents, since image capture of two-dimensional multilayer color QR codes formed from boundary unseparated multi-colored elements, when read from a detecting device, is highly dependent on the conditions illumination (in particular from the intensity of light sources and the color spectrum of light sources), and color interference at the interfaces of QR code elements, especially for density QR codes (version 21 and higher).

Заявленное изобретение направлено на устранение недостатков известных технических решений.The claimed invention is aimed at eliminating the shortcomings of known technical solutions.

Раскрытие сущности изобретенияDisclosure of the invention

Техническим результатом заявленного изобретения является увеличение объема информации, размещаемой в агрегирующем двумерном коде носителя информации с сохранением возможности распознавания встроенными камерами смартфонов и последующего декодирования. The technical result of the claimed invention is to increase the volume of information placed in the aggregating two-dimensional code of the information carrier while maintaining the possibility of recognition by the built-in cameras of smartphones and subsequent decoding.

Технический результат достигается за счет способа формирования агрегирующего двумерного кода носителя информации, включающего следующие действия: The technical result is achieved through a method for generating an aggregating two-dimensional code of an information carrier, which includes the following actions:

a) выбирают формат, включающий версию и помехозащищенность QR-кода, используемого для дальнейшей агрегации;a) select a format that includes the version and noise immunity of the QR code used for further aggregation;

b) формируют, по меньшей мере, один набор сведений, подлежащих размещению в агрегирующем двумерном коде;b) forming at least one set of information to be placed in the aggregating two-dimensional code;

c) каждый сформированный набор сведений преобразуют в битовый массив данных;c) each generated set of information is converted into a bit array of data;

d) разбивают каждый сформированный битовый массив данных, превышающий по объему допустимый для выбранного формата QR-кода, на набор блоков, соответствующих допустимому объему данных выбранного формата QR-кода;d) splitting each generated bit array of data that exceeds the volume permissible for the selected QR code format into a set of blocks corresponding to the permissible data volume of the selected QR code format;

e) для каждого блока данных из полученного, по меньшей мере, одного набора блоков данных формируют QR-код согласно выбранному формату;e) for each data block from the received at least one set of data blocks, a QR code is generated according to the selected format;

f) полученные QR-коды размещают в, по меньшей мере, одной матрице агрегированных значений размерностью [n, n, m+1], где n - размерность двумерной матрицы выбранного формата QR-кода, m - число агрегируемых QR-кодов;f) the resulting QR codes are placed in at least one matrix of aggregated values with dimension [n, n, m+1], where n is the dimension of the two-dimensional matrix of the selected QR code format, m is the number of aggregated QR codes;

g) для каждого единичного элемента данных используемого формата QR-кода проводят послойную побитовую агрегацию на (m+1)-й агрегирующий слой каждой матрицы с получением идентификатора для каждой ячейки (m+1)-го агрегирующего слоя; g) for each single data element of the used QR code format, a layer-by-layer bitwise aggregation is carried out onto the (m+1)th aggregation layer of each matrix to obtain an identifier for each cell of the (m+1)th aggregation layer;

h) определяют размерность частей идентификатора, отвечающих за кодирование информации в ячейках агрегирующего двумерного кода, определяющих цвет символа и символ в ячейке, и формируют контрольную кодовую таблицу, используемую для кодирования; h) determine the dimension of the parts of the identifier responsible for encoding information in the cells of the aggregating two-dimensional code, determining the color of the symbol and the symbol in the cell, and form a control code table used for encoding;

i) проводят формирование изображения элементов разметки агрегирующего двумерного кода;i) carry out the formation of an image of the markup elements of the aggregating two-dimensional code;

j) используя значения идентификатора из каждой ячейки (m+1)-го агрегирующего слоя каждой матрицы агрегированных значений, в соответствии с контрольной кодовой таблицей формируют изображение результирующего агрегирующего двумерного кода, при этом количество символов в одной ячейке агрегирующего двумерного кода соответствует количеству матриц агрегированных значений;j) using the identifier values from each cell of the (m+1)-th aggregation layer of each matrix of aggregated values, in accordance with the control code table, an image of the resulting aggregating two-dimensional code is formed, while the number of symbols in one cell of the aggregating two-dimensional code corresponds to the number of matrices of aggregated values ;

k) в сформированное изображение агрегирующего двумерного кода добавляют поля с контрольной кодовой таблицей; k) fields with a control code table are added to the generated image of the aggregating two-dimensional code;

l) сформированное изображение агрегирующего двумерного кода наносят на носитель информации.l) the generated image of the aggregating two-dimensional code is applied to the information carrier.

В частности, дополнительно по действию h) определяют часть идентификатора, отвечающую за цвет рамки ячейки.In particular, in addition to action h) the part of the identifier responsible for the color of the cell border is determined.

В частности, что дополнительно по действию h) определяют часть идентификатора, отвечающую за цвет или оптическую плотность фона ячейки.In particular, in addition, according to action h) the part of the identifier responsible for the color or optical density of the cell background is determined.

В частности, поля с контрольной кодовой таблицей размещают в виде распределенного набора элементов агрегирующего двумерного кода в выделенных полях элементов данных или элементов разметки агрегирующего двумерного кода.In particular, fields with a control code table are placed in the form of a distributed set of elements of the aggregating two-dimensional code in the selected fields of data elements or markup elements of the aggregating two-dimensional code.

В частности, по меньшей мере, один из сформированных QR-кодов содержит средства ограничения доступа к содержащейся в нем информации.In particular, at least one of the generated QR codes contains means for restricting access to the information contained therein.

В частности, дополнительно в контрольную кодовую таблицу добавляют информацию о количестве и/или порядке размещения в сборке матриц.In particular, additional information about the number and/or order of placement of matrices in the assembly is added to the control code table.

В частности, дополнительно в контрольную кодовую таблицу добавляют информацию о версии агрегируемых QR-кодов.In particular, additional information about the version of the aggregated QR codes is added to the control code table.

Также технический результат достигается за счет способа декодирования изображения агрегирующего двумерного кода носителя информации, включающего следующие действия:Also, the technical result is achieved through a method for decoding an image of an aggregating two-dimensional code of an information carrier, including the following actions:

a) проводят сканирование изображения агрегирующего двумерного кода с носителя информации;a) scan the image of the aggregating two-dimensional code from the storage medium;

b) проводят обнаружение изображений элементов разметки агрегирующего двумерного кода;b) detect images of markup elements of the aggregating two-dimensional code;

c) по выделенным элементам разметки проводят позиционирование полученного изображения;c) the resulting image is positioned using the selected marking elements;

d) по черно-белым полям элементов разметки шаблона поиска определяют границы динамического диапазона и корректирует баланс белого на изображении агрегирующего двумерного кода;d) using the black-and-white fields of the markup elements of the search template, determine the boundaries of the dynamic range and adjust the white balance in the image of the aggregating two-dimensional code;

e) проводят декомпозицию изображения агрегирующего двумерного кода и формируют набор изображений его элементов с индексацией, соответствующей нумерации модулей данных QR-кода;e) decompose the image of the aggregating two-dimensional code and form a set of images of its elements with indexing corresponding to the numbering of the QR code data modules;

f) проводят выделение из изображения агрегирующего двумерного кода контрольной кодовой таблицы;f) extract the aggregating two-dimensional code of the control code table from the image;

g) по контрольной кодовой таблице проводят определение кодирующих элементов, определяющих цвет символа и символ в ячейке, а также определяют размерности частей идентификатора, используемых для кодирования информации, определяющих цвет символа и символ в ячейке, определяют количество и способ выделения QR-кодов из агрегирующего двумерного кода;g) using the control code table, they determine the coding elements that determine the color of the symbol and the symbol in the cell, and also determine the dimensions of the parts of the identifier used to encode information that determine the color of the symbol and the symbol in the cell, determine the number and method of isolating QR codes from the aggregating two-dimensional code;

h) определяют параметры необходимой цветокоррекции на основе анализа параметров контрольных изображений кодовых цветовых меток для цвета символов;h) determine the parameters of the necessary color correction based on the analysis of the parameters of control images of coded color marks for the color of the characters;

i) проводят цветокоррекцию набора изображений элементов данных агрегирующего двумерного кода;i) carry out color correction of a set of images of data elements of the aggregating two-dimensional code;

j) проводят распознавание всего набора изображений агрегирующего двумерного кода и формируют, по меньшей мере, одну матрицу идентификаторов его элементов, при этом количество формируемых матриц соответствует количеству символов в одной ячейке агрегирующего двумерного кода, заданному в контрольной кодовой таблице;j) perform recognition of the entire set of images of the aggregating two-dimensional code and form at least one matrix of identifiers of its elements, wherein the number of generated matrices corresponds to the number of characters in one cell of the aggregating two-dimensional code specified in the control code table;

k) из каждой матрицы идентификаторов выполняют восстановление слоев составляющих QR-кодов;k) from each matrix of identifiers, the layers of the constituent QR codes are restored;

l) проводят послойное декодирование информации из составляющих QR-кодов с последующим ее распределением по наборам сведений;l) carry out layer-by-layer decoding of information from the components of QR codes with its subsequent distribution among sets of information;

m) декодированную информацию выводят на экран контрольного устройства.m) the decoded information is displayed on the screen of the control device.

В частности, дополнительно по действию g) определяют часть идентификатора, отвечающую за цвет рамки ячейки.In particular, in addition to action g) the part of the identifier responsible for the color of the cell border is determined.

В частности, дополнительно по действию g) определяют часть идентификатора, отвечающую за цвет или оптическую плотность фона ячейки.In particular, in addition to action g) the part of the identifier responsible for the color or optical density of the cell background is determined.

Краткое описание чертежейBrief description of drawings

Фиг. 1 - структура элементов разметки QR-кода версии 7.Fig. 1 - structure of markup elements of QR code version 7.

1 - свободная зона, 2 - шаблон поиска, 3 - разделитель, 4 - шаблон синхронизации, 5 - направляющий шаблон, 6 - информация о формате, 7 - информация о версии, 8 - кодовые слова данных и исправления ошибок, 9 - функциональные шаблоны, 10 - область кодирования. 1 - free zone, 2 - search pattern, 3 - separator, 4 - synchronization pattern, 5 - guide pattern, 6 - format information, 7 - version information, 8 - data and error correction codewords, 9 - function patterns, 10 - coding area.

Фиг. 2 - структура блоков данных и блоков исправления ошибок QR-кода на примере версии 21. Количество модулей данных в QR-коде: 1 - 101 модуль, 2 - 85 модулей.Fig. 2 - structure of data blocks and error correction blocks of a QR code using version 21 as an example. Number of data modules in a QR code: 1 - 101 modules, 2 - 85 modules.

Фиг. 3 - проведение послойной побитовой агрегации QR-кодов в агрегирующий двумерный код.Fig. 3 - carrying out layer-by-layer bitwise aggregation of QR codes into an aggregating two-dimensional code.

Фиг. 4 - структура блоков данных и блоков исправления ошибок (с нумерацией блоков) на примере QR-кода версии 7.Fig. 4 - structure of data blocks and error correction blocks (with block numbering) using the example of QR code version 7.

Назначение блоков: D1-D13 - блок данных 1, D14-D26 - блок данных 2, D27-D39 - блок данных 3, D40-D52 - блок данных 4, D53-D66 - блок данных 5, E1-E26 - блок исправления ошибок 1, E27-E52 - блок исправления ошибок 2, E53-E78 - блок исправления ошибок 3, E79-E104 - блок исправления ошибок 4, E105-E130 - блок исправления ошибок 5.Purpose of blocks: D1-D13 - data block 1, D14-D26 - data block 2, D27-D39 - data block 3, D40-D52 - data block 4, D53-D66 - data block 5, E1-E26 - error correction block 1, E27-E52 - error correction unit 2, E53-E78 - error correction unit 3, E79-E104 - error correction unit 4, E105-E130 - error correction unit 5.

Фиг. 5 - вид единичной ячейки данных агрегирующего двумерного кода при однопотоковой агрегации. Размер ячейки при использовании базовой 21-й версии QR-кода составляет 0,5 x 0,5 мм.Fig. 5 - view of a single data cell of an aggregating two-dimensional code for single-stream aggregation. The cell size when using the basic 21st version of the QR code is 0.5 x 0.5 mm.

Фиг. 6 - вид единичной ячейки данных агрегирующего двумерного кода при 4-х потоковой агрегации. Размер ячейки при использовании базовой 21-й версии QR-кода составляет 1 x 1 мм.Fig. 6 - view of a single data cell of an aggregating two-dimensional code with 4-stream aggregation. The cell size when using the basic 21st version of the QR code is 1 x 1 mm.

Фиг. 7 - сравнение карт с размещенными на них QR-кодом версии 40 и агрегирующим двумерным кодом на основе QR-кодов 21-й версии. При сохранении размеров объем данных в агрегирующем двумерном коде увеличен более чем в 4 раза.Fig. 7 - comparison of cards with QR code version 40 placed on them and an aggregating two-dimensional code based on QR codes of version 21. While maintaining the dimensions, the volume of data in the aggregating two-dimensional code is increased by more than 4 times.

Фиг. 8 - пример изображения тестового прототипа агрегирующего двумерного кода.Fig. 8 is an example image of a test prototype of an aggregating two-dimensional code.

Осуществление изобретенияCarrying out the invention

Предлагаемая технология кодирования и представления информации в агрегирующих двумерных кодах может быть использована для оптимизации представления объемов информации при размещении персональной идентификационной, биометрической и ведомственной информации о владельце в идентификационных документах, а также при формировании информационных носителей рекламного и технологического назначения, содержащих общую информацию и дополнительные информационные машиночитаемые документы.The proposed technology for encoding and presenting information in aggregating two-dimensional codes can be used to optimize the presentation of volumes of information when placing personal identification, biometric and departmental information about the owner in identification documents, as well as in the formation of information media for advertising and technological purposes, containing general information and additional information machine readable documents.

Технология основана на использовании набора последовательно применяемых методов (включая нейросетевые методы), позволяющих сформировать изображение агрегирующего двумерного кода высокой емкости и использовать его при размещении как на идентификационных документах ограниченного размера, так и на информационных носителях различного назначения больших размеров. Сформированное изображение может быть прочитано с использованием, как стандартных камер мобильных устройств, так и специализированными считывателями QR-кодов, позволяющими сохранять полученное изображение в растровом формате.The technology is based on the use of a set of sequentially applied methods (including neural network methods) that make it possible to generate an image of a high-capacity aggregating two-dimensional code and use it when placed both on identification documents of limited size and on large-sized information media for various purposes. The generated image can be read using both standard cameras of mobile devices and specialized QR code readers that allow you to save the resulting image in raster format.

Особенностью предложенного способа является возможность предварительного выбора формата QR-кода, используемого для дальнейшей агрегации. Таким образом агрегирующий двумерный код может создаваться в зависимости от предъявляемых к нему требований по версии и помехозащищенности.A feature of the proposed method is the ability to pre-select the QR code format used for further aggregation. Thus, an aggregating two-dimensional code can be created depending on the version and noise immunity requirements placed on it.

В случае ограниченного пространства для размещения двумерного кода, например, на идентификационных документах, агрегирующий двумерный код формируется по размеру отведенной для его размещения области, учитывая минимально допустимый размер ячейки.In the case of limited space for placing a two-dimensional code, for example, on identification documents, an aggregating two-dimensional code is formed according to the size of the area allocated for its placement, taking into account the minimum allowable cell size.

Например, для размещения агрегирующих двумерных кодов могут использоваться вклейки на страницы паспортов в формате ID-3 стандарта ИКАО или идентификационные пластиковые карты в формате ID-1 стандарта ИКАО, что и будет определять максимально допустимый геометрический размер. For example, to place aggregating two-dimensional codes, inserts on passport pages in the ID-3 format of the ICAO standard or identification plastic cards in the ID-1 format of the ICAO standard can be used, which will determine the maximum permissible geometric size.

Напротив, при отсутствии жестких требований к размеру двумерного кода, например, при размещении на информационных плакатах или стендах, возможно, не увеличивая серию QR-кода, разместить в агрегирующем двумерном коде больший объем информации за счет увеличения числа символов в одной ячейке. Наиболее выгодным с точки зрения емкости агрегирующего двумерного кода является размещение в ячейке знаков в количестве, равном квадрату целого числа, т.е. 4, 9, 16 и т.д.On the contrary, in the absence of strict requirements for the size of a two-dimensional code, for example, when placed on information posters or stands, it is possible, without increasing the series of the QR code, to place a larger amount of information in the aggregating two-dimensional code by increasing the number of characters in one cell. The most advantageous from the point of view of the capacity of the aggregating two-dimensional code is to place characters in a cell in an amount equal to the square of the integer, i.e. 4, 9, 16, etc.

Количество данных, содержащихся в QR-коде определяется используемой версией кода. При этом, чем выше уровень коррекции (допустимый уровень повреждения QR-кода), тем меньший объем информации доступен для размещения в составе QR-кода (для версий с 20 по 40 представлены в Таблице 1, в битах). The amount of data contained in a QR code is determined by the version of the code used. Moreover, the higher the correction level (the permissible level of damage to the QR code), the less information is available for placement in the QR code (for versions 20 to 40 are presented in Table 1, in bits).

Таблица 1Table 1

Версия QR-кодаQR code version Количество модулейNumber of modules Уровень коррекции (допустимый уровень повреждения)Correction level (acceptable level of damage) 7% (L)7% (L) 15% (M)15% (M) 25% (Q)25% (Q) 30% (H)30% (H) 2020 97x9797x97 68886888 53525352 38803880 30803080 2121 101x101101x101 74567456 57125712 40964096 32483248 2222 105x105105x105 80488048 62566256 45444544 35363536 2323 109x109109x109 87528752 68806880 49124912 37123712 2424 113x113113x113 93929392 73127312 53125312 41124112 2525 117x117117x117 1020810208 80008000 57445744 43044304 2626 121x121121x121 1096010960 84968496 60326032 47684768 2727 125x125125x125 1174411744 90249024 64646464 50245024 2828 129x129129x129 1224812248 95449544 69686968 52885288 2929 133x133133x133 1304813048 1013610136 72887288 56085608 30thirty 137x137137x137 1388013880 1098410984 78807880 59605960 3131 141x141141x141 1474414744 1164011640 82648264 63446344 3232 145x145145x145 1564015640 1232812328 89208920 67606760 3333 149x149149x149 1656816568 1304813048 93689368 72087208 3434 153x153153x153 1752817528 1380013800 98489848 76887688 3535 157x157157x157 1844818448 1449614496 1028810288 78887888 3636 161x161161x161 1947219472 1531215312 1083210832 84328432 3737 165x165165x165 2052820528 1593615936 1140811408 87688768 3838 169x169169x169 2161621616 1681616816 1201612016 91369136 3939 173x173173x173 2249622496 1772817728 1265612656 97769776 4040 177x177177x177 2364823648 1867218672 1332813328 1020810208

Далее приведены примеры формирования и декодирования агрегирующего двумерного кода для идентификационного документа и для информационного стенда.The following are examples of the formation and decoding of an aggregating two-dimensional code for an identification document and for an information stand.

Пример применения агрегирующего двумерного кода в идентификационном документе.An example of using an aggregating two-dimensional code in an identification document.

Особенностью применения агрегирующего двумерного кода в идентификационном документе является ограниченное поле на документе для размещения QR-кода. В данном примере представлен вариант формирования, размещения и декодирования двумерного кода на идентификационном документе для учета оружия граждан (разрешение на хранение и ношение оружия) с выделенным полем для QR-кода размером 40 x 40 мм. A feature of the use of an aggregating two-dimensional code in an identification document is the limited field on the document for placing a QR code. This example presents an option for generating, placing and decoding a two-dimensional code on an identification document for registering citizens’ weapons (permit to store and carry weapons) with a dedicated field for a QR code measuring 40 x 40 mm.

Формирование агрегирующего двумерного кода для идентификационного документа проводится в следующем порядке:The generation of an aggregating two-dimensional code for an identification document is carried out in the following order:

a) выбирается формат, включающий версию и помехозащищенность QR-кода, используемого для дальнейшей агрегации:a) a format is selected, including the version and noise immunity of the QR code used for further aggregation:

Для размещения на площади 40 x 40 мм наиболее оптимально использовать QR-код версии 21, содержащий 9252 модуля данных. Объем данных, размещаемых в QR-коде версии 21, с учетом уровня коррекции «M» (15%) составляет 5712 байт или 5,578 Кбайт (см. табл. 1, фиг. 2 и 4). For placement on an area of 40 x 40 mm, it is most optimal to use the QR code version 21, containing 9252 data modules. The volume of data placed in the QR code version 21, taking into account the correction level “M” (15%), is 5712 bytes or 5.578 KB (see Table 1, Figs. 2 and 4).

b) формируется один набор сведений, подлежащих размещению в агрегирующем двумерном коде:b) one set of information is generated to be placed in an aggregating two-dimensional code:

Предполагается разместить в двумерном коде набор следующих документов и сведений:It is expected to place in a two-dimensional code a set of the following documents and information:

1) Идентификационные данные владельца оружия (2 Кбайт);1) Identification data of the weapon owner (2 KB);

2) Биометрический профиль владельца оружия (всего до квантирования векторов - 24 Кбайт: 2 вектора радужной оболочки глаза по 3 Кбайт, 1 вектор лица размером 2 Кбайт, 2 вектора отпечатка пальца по 8 Кбайт, всего после квантирования векторов - 6 Кбайт);2) Biometric profile of the weapon owner (total before vector quantization - 24 Kbytes: 2 iris vectors of 3 Kbytes, 1 face vector of 2 Kbytes, 2 fingerprint vectors of 8 Kbytes, in total after vector quantization - 6 Kbytes);

3) Карточки имеющегося у владельца оружия (15 по 2 Кбайт);3) Cards of weapons owned by the owner (15 x 2 KB);

4) Данные о приобретении патронов (10 по 2 Кбайт);4) Data on the purchase of cartridges (10 x 2 KB);

5) Данные электронной цифровой подписи (1 Кбайт).5) Electronic digital signature data (1 KB).

Итого общий размер размещаемых в двумерном коде данных: 59 Кбайт.Total total size of data placed in the two-dimensional code: 59 KB.

c) сформированный набор сведений преобразуется в единый битовый массив данных. В случае, если в составе сведений значимая информация присутствует не во всех разделах, например, если у владельца оружия имеется менее 15 единиц, то данные в незаполненных фрагментах сведений заполняются символом дополнительного заполнения «#».c) the generated set of information is converted into a single bit array of data. If significant information is not present in all sections of the information, for example, if the owner of the weapon has less than 15 units, then the data in the empty pieces of information is filled in with the additional padding symbol “#”.

d) сформированный битовый массив данных разбивается, пропорционально объему данных выбранного ранее QR-кода, на число блоков данных (битовых массивов), в результате чего определяется число QR-кодов, необходимое для размещения заданного объема данных. Для размещения 59 Кбайт в наборе QR-кодов 21 версии потребуется 11 QR-кодов. Избыточный набор данных последнего QR-кода заполняется символом дополнительного заполнения «#».d) the generated bit array of data is divided, in proportion to the data volume of the previously selected QR code, into the number of data blocks (bit arrays), as a result of which the number of QR codes required to accommodate the given amount of data is determined. To accommodate 59 KB in the version 21 QR code set, 11 QR codes will be required. The redundant data set of the last QR code is filled with the extra padding symbol "#".

e) для каждого блока данных из набора блоков, полученных после разделения на блоки, формируют QR-код согласно выбранному формату.e) for each block of data from the set of blocks obtained after division into blocks, a QR code is generated according to the selected format.

f) полученные QR-коды последовательно размещают на слоях с 1 по 11 в матрице агрегированных значений размерностью [101, 101, 12].f) the resulting QR codes are sequentially placed on layers 1 to 11 in a matrix of aggregated values of dimension [101, 101, 12].

g) для каждого единичного элемента данных используемого формата QR-кода проводится послойная побитовая агрегация на 12-й агрегирующий слой матрицы агрегированных значений (см. фиг. 3), в результате чего получают идентификатор для каждой ячейки 12-го агрегирующего слоя. g) for each single data element of the used QR code format, a layer-by-layer bitwise aggregation is carried out onto the 12th aggregation layer of the matrix of aggregated values (see Fig. 3), resulting in an identifier for each cell of the 12th aggregation layer.

h) определяется размерность и состав частей идентификатора, отвечающих за кодирование информации в ячейках агрегирующего двумерного кода, определяющих цвет символа и символ в ячейке. Используется 11-битовый идентификатор (с числом бит по числу агрегируемых QR-кодов), в котором резервируются 4 бита для кода цвета символа, 4 бита для кода символа, 3 бита для цвета рамки вокруг символа). h) the dimension and composition of the parts of the identifier responsible for encoding information in the cells of the aggregating two-dimensional code, determining the color of the symbol and the symbol in the cell, are determined. An 11-bit identifier is used (with the number of bits corresponding to the number of QR codes being aggregated), in which 4 bits are reserved for the symbol color code, 4 bits for the symbol code, 3 bits for the color of the frame around the symbol).

Далее формируется контрольная кодовая таблица, используемая для кодирования, содержащая: Next, a control code table is generated, used for coding, containing:

- количество агрегируемых QR-кодов (в данном примере 11);- the number of aggregated QR codes (in this example 11);

- количество групп агрегируемых QR-кодов (в данном примере 1);- number of groups of aggregated QR codes (in this example 1);

- количество бит идентификатора, зарезервированных под код цвета;- the number of identifier bits reserved for the color code;

- количество бит идентификатора, зарезервированных под код символа;- the number of identifier bits reserved for the character code;

- количество бит идентификатора, зарезервированных под код цвета рамки;- the number of identifier bits reserved for the frame color code;

- 4 контрольных изображения кодовых цветовых меток (каждое контрольное изображение содержит по 4 цветных квадрата, разделенных белыми полями) - итого 16 цветных контрольных меток, определяющих кодировку символов.- 4 control images of code color marks (each control image contains 4 color squares separated by white fields) - a total of 16 color control marks that determine the character encoding.

Таблица символов. Для кодировки 4-х битной таблицы в данном примере используются 16 прописных символов английского алфавита, шрифт полужирный Calibri:Symbol table. To encode a 4-bit table in this example, 16 uppercase characters of the English alphabet are used, in bold Calibri font:

Таблица 2. Символы, используемые для кодировки и номера ячеек для размещения их в них контрольных образцов (тройное резервирование).Table 2. Symbols used for coding and cell numbers for placing control samples in them (triple redundancy).

№ п/пNo. СимволSymbol Номера модулей данных QR-кодаQR code data module numbers 11 AA D101, D301, D501D101, D301, D501 22 BB D107, D307, D507D107, D307, D507 33 CC D114, D314, D514D114, D314, D514 44 DD D121, D321, D521D121, D321, D521 55 EE D128, D328, D528D128, D328, D528 66 FF D135, D335, D535D135, D335, D535 77 GG D142, D342, D542D142, D342, D542 88 HH D149, D349, D549D149, D349, D549 99 II D156, D356, D556D156, D356, D556 1010 KK D163, D363, D563D163, D363, D563 11eleven LL D170, D370, D570D170, D370, D570 1212 MM D177, D377, D577D177, D377, D577 1313 NN D184, D384, D584D184, D384, D584 1414 OO D191, D391, D591D191, D391, D591 1515 PP D198, D398, D598D198, D398, D598 1616 QQ D713, D743, D777D713, D743, D777

Данные из элементов QR-кодов временно замещаются данными контрольной кодовой таблицы агрегирующего двумерного кода, и при декодировании будут восстановлены за счет использования формата QR-кода с уровнем коррекции.The data from the elements of the QR codes is temporarily replaced by the data of the control code table of the aggregating two-dimensional code, and when decoding will be restored through the use of a QR code format with a correction level.

Первые семь цветов из кодовой таблицы символов используются для цветового контроля цвета рамок символов.The first seven colors from the character code table are used to color control the color of character frames.

Используемые цвета - 4 базовых цвета палитры CMYK + 3 дополнительных цвета, получаемых при попарном смешении 3-х базовых цветов CMY + те же 7 цветов с 60% насыщенностью + 2 цвета с 30% насыщенностью (черный и синий).The colors used are 4 basic colors of the CMYK palette + 3 additional colors obtained by pairwise mixing of 3 basic CMY colors + the same 7 colors with 60% saturation + 2 colors with 30% saturation (black and blue).

i) проводится формирование изображения элементов разметки агрегирующего двумерного кода. i) an image of the markup elements of the aggregating two-dimensional code is formed.

j) используя значения идентификатора из каждой ячейки агрегирующего слоя матрицы агрегированных значений, в соответствии с контрольной кодовой таблицей, формируют изображение результирующего агрегирующего двумерного кода (см. фиг. 5).j) using the identifier values from each cell of the aggregation layer of the matrix of aggregated values, in accordance with the control code table, an image of the resulting two-dimensional aggregation code is formed (see Fig. 5).

k) в сформированное изображение агрегирующего двумерного кода добавляют поля с контрольной кодовой таблицей: k) fields with a control code table are added to the generated image of the aggregating two-dimensional code:

Таблица 3. Распределение данных контрольной таблицы по модулям данных QR-кода версии 21 (тройное резервирование).Table 3. Distribution of control table data by QR code data modules version 21 (triple redundancy).

№ п/пNo. Наименование показателяIndicator name Номера модулей данных QR-кодаQR code data module numbers 11 Количество агрегируемых QR-кодовNumber of aggregated QR codes D1, D201, D401D1, D201, D401 22 Количество групп агрегируемых QR-кодовNumber of groups of aggregated QR codes D22, D222, D422D22, D222, D422 33 Количество бит идентификатора, зарезервированных под код цветаNumber of identifier bits reserved for color code D43, D243, D443D43, D243, D443 44 Количество бит идентификатора, зарезервированных под код символаNumber of identifier bits reserved for the character code D64, D264, D464D64, D264, D464 55 Контрольные изображения кодовых цветовых меток для цвета символовReference images of coded color marks for character color D85, D285, D485D85, D285, D485

l) сформированное изображение агрегирующего двумерного кода наносится на носитель информации. Изображение может наноситься непосредственно на носитель информации (в этом случае при необходимости внесения изменения в содержимое документа носитель информации перевыпускается) или изображение может наноситься на вклейки, наклеиваемые на носитель информации. В первом случае для нанесения изображения QR-кода может использоваться сублимационная цветная печать, во втором - термоструйная или пьезоэлектрическая струйная цветная печать.l) the generated image of the aggregating two-dimensional code is applied to the information carrier. The image can be applied directly to the information carrier (in this case, if it is necessary to make changes to the contents of the document, the information carrier is re-issued) or the image can be applied to stickers glued to the information carrier. In the first case, sublimation color printing can be used to apply the QR code image, in the second - thermal inkjet or piezoelectric inkjet color printing.

Использование агрегирующих двумерных кодов на идентификационных документах позволяет решать следующие задачи: The use of aggregating two-dimensional codes on identification documents allows you to solve the following problems:

a) обеспечить возможность использования больших объемов данных, особенно при производстве идентификационных документов в условиях значительного дефицита электронных микросхем, используемых для хранения информации в идентификационных документах (см. фиг. 7);a) ensure the possibility of using large volumes of data, especially in the production of identification documents in conditions of a significant shortage of electronic chips used to store information in identification documents (see Fig. 7);

b) значительно (в разы) снизить себестоимость производства идентификационных документов по технологии двумерных кодов, по сравнению с себестоимостью производства идентификационных документов с электронными носителями информации;b) significantly (by several times) reduce the cost of producing identification documents using two-dimensional code technology, compared to the cost of producing identification documents with electronic storage media;

c) при совместном использовании технологий двумерных кодов с технологией электронных носителей информации значительно повышается уровень защищенности идентификационного документа.c) when two-dimensional code technologies are used together with electronic storage media technology, the level of security of the identification document is significantly increased.

Декодирование агрегирующего двумерного кода проводится в следующем порядке:Decoding of the aggregating two-dimensional code is carried out in the following order:

a) проведение сканирования изображения агрегирующего двумерного кода с носителя информации - сканирование проводится при помощи мобильного приложения, использующего камеру смартфона, с последующей коррекцией геометрических искажений полученного изображения агрегирующего двумерного кода. Для минимизации геометрических искажений рекомендуется при сканировании изображения располагать оптическую ось объектива камеры смартфона на нормали к центру сканируемого кода; a) scanning an image of an aggregating two-dimensional code from a storage medium - scanning is carried out using a mobile application using a smartphone camera, followed by correction of geometric distortions of the resulting image of an aggregating two-dimensional code. To minimize geometric distortions, when scanning an image, it is recommended to position the optical axis of the smartphone camera lens normal to the center of the scanned code;

b) обнаружение на полученном изображении элементов разметки агрегирующего двумерного кода;b) detection of marking elements of an aggregating two-dimensional code on the received image;

c) проведение позиционирования полученного изображения по выделенным элементам разметки;c) positioning the resulting image according to the selected marking elements;

d) по черно-белым полям элементов разметки шаблона поиска определяются границы динамического диапазона и корректируется баланс белого на изображении агрегирующего двумерного кода;d) using the black-and-white fields of the markup elements of the search pattern, the boundaries of the dynamic range are determined and the white balance in the image of the aggregating two-dimensional code is adjusted;

e) проведение с использованием предварительно обученной нейросети декомпозиции изображения агрегирующего двумерного кода, формирование набора изображений его элементов, с индексацией, соответствующей нумерации модулей данных QR-кода;e) carrying out, using a pre-trained neural network, decomposition of an image of an aggregating two-dimensional code, forming a set of images of its elements, with indexing corresponding to the numbering of QR code data modules;

f) проведение распознавания изображений элементов данных, содержащих элементы кодовой таблицы агрегирующего двумерного кода, с последующим формированием контрольной кодовой таблицы;f) carrying out recognition of images of data elements containing elements of the code table of the aggregating two-dimensional code, with the subsequent formation of a control code table;

g) по контрольной кодовой таблице проводят определение размерности частей идентификатора, используемых для кодирования информации, количества агрегируемых QR-кодов, количества групп агрегируемых QR-кодов, количества бит идентификатора, зарезервированных под код цвета символа, количества бит идентификатора, зарезервированных под код символа, количества бит идентификатора, зарезервированных под код цвета рамки, кодовых цветов и набора кодовых символов;g) using the control code table, determine the size of the identifier parts used to encode information, the number of aggregated QR codes, the number of groups of aggregated QR codes, the number of identifier bits reserved for the symbol color code, the number of identifier bits reserved for the symbol code, the number identifier bits reserved for frame color code, code colors and code character set;

h) определение параметров необходимой цветокоррекции на основе анализа параметров контрольных изображений кодовых цветовых меток для цвета символов;h) determining the parameters of the necessary color correction based on the analysis of the parameters of control images of coded color marks for the color of characters;

i) проведение цветокоррекции набора изображений элементов данных двумерного агрегирующего кода;i) carrying out color correction of a set of images of data elements of a two-dimensional aggregation code;

j) проведение распознавания всего набора изображений элементов данных агрегирующего двумерного кода и формирование 12-го агрегирующего слоя матрицы идентификаторов;j) performing recognition of the entire set of images of data elements of the aggregating two-dimensional code and forming the 12th aggregation layer of the identifier matrix;

k) из 12-го агрегирующего слоя матрицы агрегированных значений выполняют восстановление слоев с 1 по 11 матрицы QR-кодов;k) from the 12th aggregation layer of the matrix of aggregated values, the layers 1 to 11 of the QR code matrix are restored;

l) проводят послойное декодирование информации из составляющих QR-кодов с последующим ее распределением по наборам сведений, при котором, для каждого QR-кода выполняется восстановление информации элементов данных, временно занимаемых кодовой таблицей агрегирующего двумерного кода, с последующим объединением наборов сведений в единый результирующий набор сведений;l) carry out layer-by-layer decoding of information from the components of QR codes with its subsequent distribution among sets of information, in which, for each QR code, the information of data elements temporarily occupied by the code table of the aggregating two-dimensional code is restored, followed by combining the sets of information into a single result set information;

m) декодированную информация выводят на экран контрольного устройства.m) the decoded information is displayed on the screen of the control device.

Пример применения агрегирующего двумерного кода для информационного стенда.An example of using an aggregating two-dimensional code for an information stand.

Особенностью применения агрегирующего двумерного кода для информационных стендов является отсутствие ограничений на размер QR-кода, что позволяет не только использовать QR-коды версии 40, но и применить многопотоковое агрегирование QR-кодов. A special feature of using an aggregating two-dimensional code for information stands is that there are no restrictions on the size of the QR code, which allows not only the use of QR codes version 40, but also the use of multi-stream aggregation of QR codes.

В данном примере представлен вариант формирования, размещения и декодирования двумерного кода на информационном стенде, размещенном рядом с оборудованием, или непосредственно на корпусе оборудования, в производственном цехе предприятия. Предполагается, что особенности производства не позволяют использовать беспроводные технологии связи, а техническому персоналу, обслуживающему оборудование, необходим оперативный доступ к инструкциям по обслуживанию данного оборудования. Используя мобильное приложение на смартфоне или планшете, техник сканирует двумерный код с информационного стенда, содержащий инструкцию по обслуживанию данного оборудования или его отдельного компонента, и выполняет описанные в ней действия. This example presents the option of generating, placing and decoding a two-dimensional code on an information stand located next to the equipment, or directly on the equipment body, in the production workshop of the enterprise. It is assumed that production features do not allow the use of wireless communication technologies, and technical personnel servicing the equipment need prompt access to instructions for servicing this equipment. Using a mobile application on a smartphone or tablet, the technician scans a two-dimensional code from an information stand containing instructions for servicing this equipment or its individual component, and performs the actions described in it.

В данном примере рассмотрим формирование агрегирующего двумерного кода размером 50 x 50 см с использованием агрегирования данных в несколько потоков.In this example, we will consider the formation of an aggregating two-dimensional code measuring 50 x 50 cm using data aggregation into several streams.

Формирование агрегирующего двумерного кода проводится в следующем порядке:The generation of an aggregating two-dimensional code is carried out in the following order:

a) выбирается формат, включающий версию и помехозащищенность QR-кода, используемого для дальнейшей агрегации.a) a format is selected, including the version and noise immunity of the QR code used for further aggregation.

Для размещения на площади 50 x 50 см наиболее оптимально использовать QR-код версии 40, содержащий 29648 модуля данных. Объем данных, размещаемых в QR-коде версии 40, с учетом уровня коррекции «M» (15%) составляет 18672 байт или 18,234 Кбайт (см. табл. 1). For placement on an area of 50 x 50 cm, it is most optimal to use the QR code version 40, containing 29648 data modules. The volume of data placed in the QR code version 40, taking into account the correction level “M” (15%), is 18672 bytes or 18.234 KB (see Table 1).

b) формируется один набор сведений, подлежащих размещению в агрегирующем двумерном коде:b) one set of information is generated to be placed in an aggregating two-dimensional code:

Предполагается разместить в агрегирующем двумерном коде: It is supposed to be placed in the aggregating two-dimensional code:

1) технологическую инструкцию в формате pdf общим объемом 290 Кбайт;1) technological instructions in pdf format with a total volume of 290 KB;

2) данные электронной цифровой подписи (1 Кбайт).2) electronic digital signature data (1 KB).

Итого общий размер размещаемых в двумерном коде данных: 291 Кбайт.Total total size of data placed in the two-dimensional code: 291 KB.

c) сформированный набор сведений преобразуется в единый битовый массив данных. c) the generated set of information is converted into a single bit array of data.

d) сформированный битовый массив данных разбивается пропорционально объему данных выбранного ранее QR-кода на число блоков данных (битовых массивов), в результате чего определяется число QR-кодов, необходимое для размещения заданного объема данных. Для размещения 291 Кбайт в наборе QR-кодов 40 версии потребуется 16 QR-кодов. Для формирования агрегирующего двумерного кода сформируем 4 потока по 4 агрегируемых QR-кода. При использовании 4-х потоков агрегирования, общий объем для размещения данных составит 298752 байт или 291,744 Кбайт. Избыточный набор данных последнего QR-кода заполняется символом дополнительного заполнения «#».d) the generated bit array of data is divided in proportion to the data volume of the previously selected QR code into the number of data blocks (bit arrays), as a result of which the number of QR codes required to accommodate the given amount of data is determined. To accommodate 291 KB in the version 40 QR code set, 16 QR codes will be required. To generate an aggregating two-dimensional code, we will generate 4 streams of 4 aggregated QR codes. When using 4 aggregation streams, the total volume for storing data will be 298,752 bytes or 291,744 KB. The redundant data set of the last QR code is filled with the extra padding symbol "#".

е) для каждого блока данных из набора блоков, полученных после разделения на блоки, формируют QR-код согласно выбранному формату.f) for each block of data from the set of blocks obtained after division into blocks, a QR code is generated according to the selected format.

f) полученные QR-коды последовательно размещают на слоях с 1 по 4 в 4-х матрицах агрегированных значений размерностью [177, 177, 5].f) the resulting QR codes are sequentially placed on layers 1 to 4 in 4 matrices of aggregated values of dimension [177, 177, 5].

g) для каждого единичного элемента данных используемого формата QR-кода проводится послойная побитовая агрегация на 5-й агрегирующий слой матрицы агрегированных значений. Операция выполняется последовательно для каждой из 4-х матриц. В результате получают идентификатор для каждой ячейки 5-го агрегирующего слоя каждой из 4-х матриц.g) for each single data element of the QR code format used, layer-by-layer bitwise aggregation is carried out to the 5th aggregation layer of the matrix of aggregated values. The operation is performed sequentially for each of the 4 matrices. As a result, an identifier is obtained for each cell of the 5th aggregation layer of each of the 4 matrices.

h) определяется размерность и состав частей идентификатора, отвечающих за кодирование информации в ячейках агрегирующего двумерного кода, определяющих цвет символа и символ в ячейке. В каждой из 4-х матриц используется четырехбитовый идентификатор (с числом бит по числу агрегируемых QR-кодов), в котором резервируются 2 бита для кода цвета символа, 2 бита для кода символа. Для рамки цвет не резервируется, так как цвет рамки для кодирования в данном примере не используется (все рамки будут черного цвета). h) the dimension and composition of the parts of the identifier responsible for encoding information in the cells of the aggregating two-dimensional code, determining the color of the symbol and the symbol in the cell, are determined. Each of the 4 matrices uses a four-bit identifier (with the number of bits corresponding to the number of aggregated QR codes), in which 2 bits are reserved for the symbol color code, 2 bits for the symbol code. No color is reserved for the frame, since the frame color is not used for coding in this example (all frames will be black).

Далее формируется контрольная кодовая таблица, используемая для кодирования, содержащая: Next, a control code table is generated, used for coding, containing:

- количество агрегируемых QR-кодов в одном потоке (в данном примере 4);- the number of aggregated QR codes in one stream (in this example 4);

- количество групп (потоков агрегирования) агрегируемых QR-кодов (в данном примере 4);- the number of groups (aggregation streams) of aggregated QR codes (in this example 4);

- количество бит идентификатора, зарезервированных под код цвета;- the number of identifier bits reserved for the color code;

- количество бит идентификатора, зарезервированных под код символа;- the number of identifier bits reserved for the character code;

- 1 контрольное изображение кодовых цветовых меток (содержит по 4 цветных квадрата, разделенных белыми полями) - итого 4 цветные контрольные метки, определяющие кодировку символов.- 1 control image of code color marks (contains 4 colored squares each, separated by white fields) - a total of 4 color control marks that determine the character encoding.

Таблица символов. Для кодировки 2-х битной таблицы в данном примере используются 4 прописных символов английского алфавита, шрифт полужирный Calibri:Symbol table. To encode a 2-bit table in this example, 4 uppercase characters of the English alphabet are used, in bold Calibri font:

Таблица 4. Символы, используемые для кодировки и номера ячеек для размещения в них контрольных образцов (тройное резервирование).Table 4. Symbols used for coding and cell numbers for placing control samples in them (triple redundancy).

№ п/пNo. СимволSymbol Номера модулей данных QR-кодаQR code data module numbers 11 AA D101, D301, D501D101, D301, D501 22 BB D107, D307, D507D107, D307, D507 33 CC D114, D314, D514D114, D314, D514 44 DD D121, D321, D521D121, D321, D521

Данные из элементов QR-кодов временно замещаются данными контрольной кодовой таблицы агрегирующего двумерного кода, и при декодировании будут восстановлены за счет использования формата QR-кода с уровнем коррекции.The data from the elements of the QR codes is temporarily replaced by the data of the control code table of the aggregating two-dimensional code, and when decoding will be restored through the use of a QR code format with a correction level.

Используемые цвета - 4 базовых цвета палитры CMYK.The colors used are 4 basic colors of the CMYK palette.

i) проводится формирование изображения элементов разметки агрегирующего двумерного кода (см. фиг. 6).i) an image of the markup elements of the aggregating two-dimensional code is formed (see Fig. 6).

j) используя значения идентификатора из каждой ячейки агрегирующего слоя матрицы агрегированных значений, в соответствии с контрольной кодовой таблицей, формируют изображение результирующего агрегирующего двумерного кода, при этом в каждом модуле данных агрегирующего двумерного кода размещается по одному набору из 4-х символов (в формате 2 x 2). Каждый из наборов формируется из ячеек 4-х матриц с одинаковыми индексами.j) using the identifier values from each cell of the aggregation layer of the matrix of aggregated values, in accordance with the control code table, an image of the resulting aggregating two-dimensional code is formed, while each data module of the aggregating two-dimensional code contains one set of 4 characters (in format 2 x2). Each of the sets is formed from cells of 4 matrices with the same indices.

k) в сформированное изображение агрегирующего двумерного кода добавляют поля с контрольной кодовой таблицей: k) fields with a control code table are added to the generated image of the aggregating two-dimensional code:

Таблица 5. Распределение данных контрольной таблицы по модулям данных QR-кода версии 40 (тройное резервирование).Table 5. Distribution of control table data by QR code version 40 data modules (triple redundancy).

№ п/пNo. Наименование показателяIndicator name Номера модулей данных QR-кодаQR code data module numbers 11 Количество агрегируемых QR-кодов в одном потоке Number of aggregated QR codes in one stream D1, D201, D401D1, D201, D401 22 Количество групп агрегируемых QR-кодов (потоков агрегирования)Number of groups of aggregated QR codes (aggregation streams) D22, D222, D422D22, D222, D422 33 Количество бит идентификатора, зарезервированных под код цветаNumber of identifier bits reserved for color code D43, D243, D443D43, D243, D443 44 Количество бит идентификатора, зарезервированных под код символаNumber of identifier bits reserved for the character code D64, D264, D464D64, D264, D464 55 Контрольное изображение кодовых цветовых меток для цвета символовReference image of coded color marks for character color D85, D285, D485D85, D285, D485

l) сформированное изображение агрегирующего двумерного кода наносится на носитель информации. Для нанесения изображения двумерного кода может использоваться термоструйная или пьезоэлектрическая струйная цветная печать.l) the generated image of the aggregating two-dimensional code is applied to the information carrier. Thermal inkjet or piezoelectric color inkjet printing can be used to apply the two-dimensional code image.

Использование агрегирующих двумерных кодов на информационных стендах позволяет обеспечить возможность использования больших объемов данных, особенно при размещении носителей информации с двумерными агрегирующими кодами в зонах, где по каким-либо причинам невозможно или запрещено применение беспроводной связи.The use of two-dimensional aggregation codes on information stands makes it possible to use large volumes of data, especially when placing storage media with two-dimensional aggregation codes in areas where for some reason the use of wireless communications is impossible or prohibited.

Декодирование агрегирующего двумерного кода для информационного стенда проводится в следующем порядке:Decoding of the aggregating two-dimensional code for the information stand is carried out in the following order:

a) проведение сканирования изображения агрегирующего двумерного кода с носителя информации - сканирование проводится при помощи мобильного приложения, использующего камеру смартфона, с последующей коррекцией геометрических искажений полученного изображения агрегирующего двумерного кода. Для минимизации геометрических искажений рекомендуется, при сканировании изображения, располагать оптическую ось объектива камеры смартфона на нормали к центру сканируемого кода; a) scanning an image of an aggregating two-dimensional code from a storage medium - scanning is carried out using a mobile application using a smartphone camera, followed by correction of geometric distortions of the resulting image of an aggregating two-dimensional code. To minimize geometric distortions, it is recommended that when scanning an image, place the optical axis of the smartphone camera lens at the normal to the center of the scanned code;

b) обнаружение на полученном изображении элементов разметки агрегирующего двумерного кода;b) detection of marking elements of an aggregating two-dimensional code on the received image;

c) проведение позиционирования полученного изображения по выделенным элементам разметки;c) positioning the resulting image according to the selected marking elements;

d) по черно-белым полям элементов разметки шаблона поиска определяются границы динамического диапазона и корректируется баланс белого на изображении агрегирующего двумерного кода;d) using the black-and-white fields of the markup elements of the search pattern, the boundaries of the dynamic range are determined and the white balance in the image of the aggregating two-dimensional code is adjusted;

e) проведение с использованием предварительно обученной нейросети декомпозиции изображения агрегирующего двумерного кода и формирование набора изображений его элементов с индексацией, соответствующей нумерации модулей данных QR-кода;e) carrying out, using a pre-trained neural network, decomposition of an image of an aggregating two-dimensional code and generating a set of images of its elements with indexing corresponding to the numbering of QR code data modules;

f) проведение распознавания изображений элементов данных, содержащих элементы кодовой таблицы агрегирующего двумерного кода, с последующим формированием контрольной кодовой таблицы;f) carrying out recognition of images of data elements containing elements of the code table of the aggregating two-dimensional code, with the subsequent formation of a control code table;

g) по контрольной кодовой таблице проводят определение размерности частей идентификатора, используемых для кодирования информации, количества агрегируемых QR-кодов, количества групп агрегируемых QR-кодов (потоков агрегирования), количества бит идентификатора, зарезервированных под код цвета символа, количества бит идентификатора, зарезервированных под код символа, кодовых цветов и набора кодовых символов;g) using the control code table, determine the size of the identifier parts used to encode information, the number of aggregated QR codes, the number of groups of aggregated QR codes (aggregation streams), the number of identifier bits reserved for the symbol color code, the number of identifier bits reserved for character code, code colors and code character set;

h) определение параметров необходимой цветокоррекции на основе анализа параметров контрольных изображений кодовых цветовых меток для цвета символов;h) determining the parameters of the necessary color correction based on the analysis of the parameters of control images of coded color marks for the color of characters;

i) проведение цветокоррекции набора изображений элементов данных двумерного агрегирующего кода;i) carrying out color correction of a set of images of data elements of a two-dimensional aggregation code;

j) проведение распознавания всего набора изображений элементов данных агрегирующего двумерного кода и формирование 5-го агрегирующего слоя для каждой из 4-х матриц идентификаторов;j) performing recognition of the entire set of images of data elements of the aggregating two-dimensional code and forming the 5th aggregation layer for each of the 4 identifier matrices;

k) из 5-го агрегирующего слоя каждой из 4-х матриц агрегированных значений выполняют восстановление слоев с 1 по 4 матрицы QR-кодов;k) from the 5th aggregation layer of each of the 4 matrices of aggregated values, the layers 1 to 4 of the QR code matrix are restored;

l) проводят послойное декодирование информации из составляющих QR-кодов с последующим ее распределением по наборам сведений, при котором, для каждого QR-кода из каждого потока выполняется восстановление информации элементов данных, временно занимаемых кодовой таблицей агрегирующего двумерного кода, с последующим объединением наборов сведений в единый результирующий набор сведений;l) carry out layer-by-layer decoding of information from the components of QR codes with its subsequent distribution among sets of information, in which, for each QR code from each stream, the information of data elements temporarily occupied by the code table of the aggregating two-dimensional code is restored, followed by combining the sets of information into a single result set of information;

m) декодированную информация выводят на экран контрольного устройства.m) the decoded information is displayed on the screen of the control device.

Дополнение к примерамAddition to examples

Возможен случай, когда сформированные сведения желательно разместить в виде нескольких наборов сведений. Тогда каждый набор сведений по отдельности преобразуют в битовый массив данных, а далее для каждого битового массива производят один и тот же набор действий по формированию QR-кодов. В дальнейшем, при декодировании представленные в виде отдельных наборов сведения также будут представлены отдельно, что позволяет в случае необходимости установить ограничение на доступ к некоторым наборам сведений. There may be a case when it is desirable to place the generated information in the form of several sets of information. Then each set of information is separately converted into a bit array of data, and then for each bit array the same set of actions is performed to generate QR codes. In the future, during decoding, the information presented in the form of separate sets will also be presented separately, which allows, if necessary, to set restrictions on access to certain sets of information.

Возможно, что уже имеется сформированный набор сведений, записанный в QR-код. В случае отсутствия доступа к содержимому данного QR-кода, его можно использовать при формировании агрегирующего двумерного кода, включив в один из слоев в имеющемся формате. В данном случае целесообразно формат агрегируемых кодов выбирать по формату уже имеющегося QR-кода. В случае невозможности такого подхода возможно агрегирование QR-кодов различных версий.It is possible that there is already a generated set of information recorded in the QR code. If you do not have access to the contents of this QR code, it can be used when generating an aggregating two-dimensional code by including it in one of the layers in the existing format. In this case, it is advisable to select the format of the aggregated codes according to the format of the existing QR code. If this approach is not possible, aggregation of QR codes of different versions is possible.

При агрегировании QR-кодов различных версий используется базовый шаблон размещения модулей от QR-кода старшей версии из всего агрегируемого набора кодов. Агрегирование битовых ячеек проводится не по принципу геометрического совпадения ячеек в шаблонах QR-кодов, а по их порядковой нумерации. Для этого формируется конверсионная таблица слоев, на основании которой далее проводится построение матрицы [n, n, m+1]. Для QR-кодов меньших версий ячейки из шаблона большей версии, для которых не найдено соответствующих ячеек в младшей версии, заполняются произвольными значениями и игнорируются при обратном преобразовании агрегированного двумерного кода в исходный QR-код. Версии агрегируемых кодов и порядок их сборки указываются в контрольной таблице агрегирующего двумерного кода.When aggregating QR codes of different versions, the basic template for placing modules from the QR code of the older version from the entire aggregated set of codes is used. Aggregation of bit cells is carried out not according to the principle of geometric coincidence of cells in QR code templates, but according to their serial numbering. To do this, a conversion table of layers is generated, on the basis of which the [n, n, m+1] matrix is then constructed. For smaller version QR codes, cells from the larger version template for which no corresponding cells are found in the minor version are filled with arbitrary values and ignored when the aggregated 2D code is converted back to the original QR code. The versions of the aggregated codes and the order in which they are assembled are indicated in the control table of the two-dimensional aggregation code.

Возможно использование для агрегации QR-кодов разных версий как при однопотоковой, так и при многопотоковой агрегации. При многопотоковой агрегации возможно использование варианта, когда QR-коды разделяются по потокам с учетом одинаковых версий.It is possible to use different versions of QR codes for aggregation, both for single-stream and multi-stream aggregation. With multi-stream aggregation, it is possible to use an option when QR codes are divided into streams, taking into account the same versions.

В случае, если идентификатор имеет большую длину, то дополнительно к частям идентификатора, отвечающим за цвет символа в ячейке и символ в ячейке, а также за цвет рамки ячейки, возможно, чтобы часть идентификатора отвечала за цвет или оптическую плотность фона ячейки.If the identifier is long, then in addition to the parts of the identifier responsible for the color of the symbol in the cell and the symbol in the cell, as well as the color of the cell frame, it is possible for part of the identifier to be responsible for the color or optical density of the background of the cell.

Контрольная кодовая таблица может формироваться как в выделенном поле в центре или с краю изображения агрегирующего двумерного кода, так и в виде распределенного набора элементов агрегирующего двумерного кода, размещаемых в выделенных полях элементов данных или элементов разметки агрегирующего двумерного кода.The control code table can be formed either in a dedicated field in the center or at the edge of the image of the aggregating two-dimensional code, or in the form of a distributed set of elements of the aggregating two-dimensional code placed in the dedicated fields of data elements or markup elements of the aggregating two-dimensional code.

Таким образом, предложенное техническое решение позволяет увеличить объем информации, размещаемой в агрегирующем двумерном коде носителя информации, с последующим ее декодированием, сохраняя при этом возможность распознавания встроенными камерами смартфонов. Thus, the proposed technical solution makes it possible to increase the amount of information placed in the aggregating two-dimensional code of the information carrier, followed by its decoding, while maintaining the ability to be recognized by the built-in cameras of smartphones.

Ограничения при использовании агрегирующих двумерных кодовLimitations when using aggregating two-dimensional codes

При использовании агрегирующих двумерных кодов необходимо учитывать следующие ограничения:When using aggregating two-dimensional codes, the following restrictions must be taken into account:

a) ограничения на количество цветов цветовой палитры определяются:a) restrictions on the number of colors in the color palette are determined by:

a. размерами носителя или площадью, выделяемой для размещения агрегирующего двумерного кода; a. the size of the media or the area allocated to accommodate the aggregating two-dimensional code;

b. оптическим разрешением устройств, используемых для чтения агрегирующего двумерного кода;b. optical resolution of devices used to read the aggregating two-dimensional code;

b) ограничения на используемые в палитре цвета - нежелательно использовать цвета из палитры Pantone и аналогичных, которые могут попасть за границы цветового пространства принтеров и сканеров, используемых для нанесения и чтения QR-кодов;b) restrictions on the colors used in the palette - it is undesirable to use colors from the Pantone palette and similar ones, which may fall outside the boundaries of the color space of printers and scanners used for applying and reading QR codes;

c) ограничения на используемые в палитре светлые цвета - рекомендуется, для повышения читаемости агрегирующего двумерного кода, не использовать светлую область цветового охвата устройств, используемых для нанесения и чтения агрегирующего двумерного кода;c) restrictions on light colors used in the palette - it is recommended, in order to increase the readability of the aggregating two-dimensional code, not to use the light area of the color gamut of devices used for applying and reading the aggregating two-dimensional code;

d) ограничения на состав используемого оборудования чтения агрегирующих двумерных кодов: d) restrictions on the composition of the equipment used for reading aggregating two-dimensional codes:

a. для чтения агрегирующих двумерных кодов рекомендуется использовать мобильные телефоны, планшеты или терминалы, оборудованные цветными камерами высокого разрешения (не менее 12 Мп);a. to read aggregating two-dimensional codes, it is recommended to use mobile phones, tablets or terminals equipped with high-resolution color cameras (at least 12 MP);

b. возможно использование аппаратных специализированных сканеров QR-кодов, позволяющих после чтения структуры QR-кода передавать на устройство обработки изображения цветное изображение QR-кода для его дальнейшей программной обработки;b. it is possible to use specialized hardware QR code scanners, which allow, after reading the structure of the QR code, to transfer a color image of the QR code to an image processing device for its further software processing;

e) ограничения на состав кодовой таблицы символов: желательно избегать включения в состав кодовой таблицы символов, отличающихся по начертанию (перекрытию по площади изображения) менее, чем на 30%;e) restrictions on the composition of the character code table: it is advisable to avoid including in the code table characters that differ in style (overlap in image area) by less than 30%;

f) при формировании изображения агрегирующего двумерного кода не следует включать в состав кодовой таблицы и применять для кодирования символы, в совокупности формирующие геометрические узоры (треугольники, квадраты, полностью залитые цветом или полутоновые ячейки), так как такие изображения препятствуют правильной работе систем автофокусировки считывающих устройств, использующих контрастные или фазовые технологии автофокуса;f) when generating an image of an aggregating two-dimensional code, symbols that collectively form geometric patterns (triangles, squares, completely filled with color or halftone cells) should not be included in the code table and used for encoding, since such images interfere with the correct operation of the autofocus systems of reading devices , using contrast or phase detection autofocus technologies;

g) ограничения на максимальный размер агрегирующего двумерного кода определяются оптическими возможностями объективов и характеристиками матриц считывающих устройств.g) restrictions on the maximum size of the aggregating two-dimensional code are determined by the optical capabilities of the lenses and the characteristics of the matrices of the reading devices.

Перспективы развитияDevelopment prospects

Дальнейшее повышение плотности информации, размещаемой в агрегирующих двумерных кодах может быть достигнуто частичным изменением форм базовых элементов двумерного кода: кроме стандартных буквенно-цифровых символов, возможно применение для кодирования информации наборов различных геометрических элементов, размещаемых в стандартных знакоместах матрицы агрегирующего двумерного кода. Кроме того, возможно применение как черно-белых, так и полутоновых символьных элементов, как отдельно, так и в различных комбинациях (с учетом ограничений). Появление за последние 5 лет новых мобильных устройств с камерами в сотни мегапикселей дает основания полагать, что в ближайшие годы, при дальнейшем улучшении технологий получения изображения, часть из вышеуказанных ограничений будет снята. A further increase in the density of information placed in aggregating two-dimensional codes can be achieved by partially changing the forms of the basic elements of the two-dimensional code: in addition to standard alphanumeric characters, it is possible to use sets of various geometric elements placed in standard familiarity spaces of the matrix of the aggregating two-dimensional code to encode information. In addition, it is possible to use both black and white and halftone symbolic elements, both separately and in various combinations (subject to restrictions). The emergence of new mobile devices with hundreds of megapixel cameras over the past 5 years gives reason to believe that in the coming years, with further improvements in image acquisition technologies, some of the above restrictions will be lifted.

Использование вышеописанного метода возможно для создания не только информационных носителей, но и информационных материалов значительно большего размера, при этом возможно значительное увеличение объема информации, размещаемой в составе агрегирующего двумерного кода, за счет увеличения количества используемых при кодировании цветов и символов.Using the method described above is possible to create not only information media, but also information materials of a much larger size, while a significant increase in the volume of information placed as part of an aggregating two-dimensional code is possible due to an increase in the number of colors and symbols used in coding.

Claims (35)

1. Способ формирования агрегирующего двумерного кода носителя информации, включающий следующие действия: 1. A method for generating an aggregating two-dimensional code of an information carrier, including the following steps: a) выбирают формат, включающий версию и помехозащищенность QR-кода, используемого для дальнейшей агрегации;a) select a format that includes the version and noise immunity of the QR code used for further aggregation; b) формируют, по меньшей мере, один набор сведений, подлежащих размещению в агрегирующем двумерном коде;b) forming at least one set of information to be placed in the aggregating two-dimensional code; c) каждый сформированный набор сведений преобразуют в битовый массив данных;c) each generated set of information is converted into a bit array of data; d) разбивают каждый сформированный битовый массив данных, превышающий по объему допустимый для выбранного формата QR-кода, на набор блоков, соответствующих допустимому объему данных выбранного формата QR-кода;d) splitting each generated bit array of data that exceeds the volume permissible for the selected QR code format into a set of blocks corresponding to the permissible data volume of the selected QR code format; e) для каждого блока данных из полученного, по меньшей мере, одного набора блоков данных формируют QR-код согласно выбранному формату;e) for each data block from the received at least one set of data blocks, a QR code is generated according to the selected format; f) полученные QR-коды размещают в, по меньшей мере, одной матрице агрегированных значений размерностью [n, n, m+1], где n - размерность двумерной матрицы выбранного формата QR-кода, m - число агрегируемых QR-кодов;f) the resulting QR codes are placed in at least one matrix of aggregated values with dimension [n, n, m+1], where n is the dimension of the two-dimensional matrix of the selected QR code format, m is the number of aggregated QR codes; g) для каждого единичного элемента данных используемого формата QR-кода проводят послойную побитовую агрегацию на (m+1)-й агрегирующий слой каждой матрицы с получением идентификатора для каждой ячейки (m+1)-го агрегирующего слоя; g) for each single data element of the used QR code format, a layer-by-layer bitwise aggregation is carried out onto the (m+1)th aggregation layer of each matrix to obtain an identifier for each cell of the (m+1)th aggregation layer; h) определяют размерность частей идентификатора, отвечающих за кодирование информации в ячейках агрегирующего двумерного кода, определяющих цвет символа и символ в ячейке, и формируют контрольную кодовую таблицу, используемую для кодирования; h) determine the dimension of the parts of the identifier responsible for encoding information in the cells of the aggregating two-dimensional code, determining the color of the symbol and the symbol in the cell, and form a control code table used for encoding; i) проводят формирование изображения элементов разметки агрегирующего двумерного кода;i) carry out the formation of an image of the markup elements of the aggregating two-dimensional code; j) используя значения идентификатора из каждой ячейки (m+1)-го агрегирующего слоя каждой матрицы агрегированных значений, в соответствии с контрольной кодовой таблицей формируют изображение результирующего агрегирующего двумерного кода, при этом количество символов в одной ячейке агрегирующего двумерного кода соответствует количеству матриц агрегированных значений;j) using the identifier values from each cell of the (m+1)-th aggregation layer of each matrix of aggregated values, in accordance with the control code table, an image of the resulting aggregating two-dimensional code is formed, while the number of symbols in one cell of the aggregating two-dimensional code corresponds to the number of matrices of aggregated values ; k) в сформированное изображение агрегирующего двумерного кода добавляют поля с контрольной кодовой таблицей; k) fields with a control code table are added to the generated image of the aggregating two-dimensional code; l) сформированное изображение агрегирующего двумерного кода наносят на носитель информации.l) the generated image of the aggregating two-dimensional code is applied to the information carrier. 2. Способ по п. 1, отличающийся тем, что дополнительно по действию h) определяют часть идентификатора, отвечающую за цвет рамки ячейки. 2. The method according to claim 1, characterized in that additionally, by action h) the part of the identifier responsible for the color of the cell frame is determined. 3. Способ по п. 1 или 2, отличающийся тем, что дополнительно по действию h) определяют часть идентификатора, отвечающую за цвет или оптическую плотность фона ячейки.3. The method according to claim 1 or 2, characterized in that additionally, according to action h), the part of the identifier responsible for the color or optical density of the cell background is determined. 4. Способ по любому из пп. 1-3, отличающийся тем, что поля с контрольной кодовой таблицей размещают в виде распределенного набора элементов агрегирующего двумерного кода в выделенных полях элементов данных или элементов разметки агрегирующего двумерного кода.4. Method according to any one of paragraphs. 1-3, characterized in that the fields with the control code table are placed in the form of a distributed set of elements of the aggregating two-dimensional code in the selected fields of data elements or markup elements of the aggregating two-dimensional code. 5. Способ по любому из пп. 1-4, отличающийся тем, что, по меньшей мере, один из сформированных QR-кодов содержит средства ограничения доступа к содержащейся в нем информации.5. Method according to any one of paragraphs. 1-4, characterized in that at least one of the generated QR codes contains means for restricting access to the information contained in it. 6. Способ по любому из пп. 1-5, отличающийся тем, что дополнительно в контрольную кодовую таблицу добавляют информацию о количестве и/или порядке размещения в сборке матриц.6. Method according to any one of paragraphs. 1-5, characterized in that additional information about the number and/or order of placement in the assembly of matrices is added to the control code table. 7. Способ по любому из пп. 1-6, отличающийся тем, что дополнительно в контрольную кодовую таблицу добавляют информацию о версии агрегируемых QR-кодов.7. Method according to any one of paragraphs. 1-6, characterized in that additional information about the version of the aggregated QR codes is added to the control code table. 8. Способ декодирования изображения агрегирующего двумерного кода носителя информации, включающий следующие действия:8. A method for decoding an image of an aggregating two-dimensional code of an information carrier, including the following steps: a) проводят сканирование изображения агрегирующего двумерного кода с носителя информации;a) scan the image of the aggregating two-dimensional code from the storage medium; b) проводят обнаружение изображений элементов разметки агрегирующего двумерного кода;b) detect images of markup elements of the aggregating two-dimensional code; c) по выделенным элементам разметки проводят позиционирование полученного изображения;c) the resulting image is positioned using the selected marking elements; d) по черно-белым полям элементов разметки шаблона поиска определяют границы динамического диапазона и корректирует баланс белого на изображении агрегирующего двумерного кода;d) using the black-and-white fields of the markup elements of the search template, determine the boundaries of the dynamic range and adjust the white balance in the image of the aggregating two-dimensional code; e) проводят декомпозицию изображения агрегирующего двумерного кода и формируют набор изображений его элементов с индексацией, соответствующей нумерации модулей данных QR-кода;e) decompose the image of the aggregating two-dimensional code and form a set of images of its elements with indexing corresponding to the numbering of the QR code data modules; f) проводят выделение из изображения агрегирующего двумерного кода контрольной кодовой таблицы;f) extract the aggregating two-dimensional code of the control code table from the image; g) по контрольной кодовой таблице проводят определение кодирующих элементов, определяющих цвет символа и символ в ячейке, а также определяют размерности частей идентификатора, используемых для кодирования информации, определяющих цвет символа и символ в ячейке, определяют количество и способ выделения QR-кодов из агрегирующего двумерного кода;g) using the control code table, they determine the coding elements that determine the color of the symbol and the symbol in the cell, and also determine the dimensions of the parts of the identifier used to encode information that determine the color of the symbol and the symbol in the cell, determine the number and method of isolating QR codes from the aggregating two-dimensional code; h) определяют параметры необходимой цветокоррекции на основе анализа параметров контрольных изображений кодовых цветовых меток для цвета символов;h) determine the parameters of the necessary color correction based on the analysis of the parameters of control images of coded color marks for the color of the characters; i) проводят цветокоррекцию набора изображений элементов данных агрегирующего двумерного кода;i) carry out color correction of a set of images of data elements of the aggregating two-dimensional code; j) проводят распознавание всего набора изображений агрегирующего двумерного кода и формируют, по меньшей мере, одну матрицу идентификаторов его элементов, при этом количество формируемых матриц соответствует количеству символов в одной ячейке агрегирующего двумерного кода, заданному в контрольной кодовой таблице;j) perform recognition of the entire set of images of the aggregating two-dimensional code and form at least one matrix of identifiers of its elements, wherein the number of generated matrices corresponds to the number of characters in one cell of the aggregating two-dimensional code specified in the control code table; k) из каждой матрицы идентификаторов выполняют восстановление слоев составляющих QR-кодов;k) from each matrix of identifiers, the layers of the constituent QR codes are restored; l) проводят послойное декодирование информации из составляющих QR-кодов с последующим ее распределением по наборам сведений;l) carry out layer-by-layer decoding of information from the components of QR codes with its subsequent distribution among sets of information; m) декодированную информацию выводят на экран контрольного устройства.m) the decoded information is displayed on the screen of the control device. 9. Способ по п. 8, отличающийся тем, что дополнительно по действию g) определяют часть идентификатора, отвечающую за цвет рамки ячейки. 9. The method according to claim 8, characterized in that additionally, by action g) the part of the identifier responsible for the color of the cell frame is determined. 10. Способ по п. 8 или 9, отличающийся тем, что дополнительно по действию g) определяют часть идентификатора, отвечающую за цвет или оптическую плотность фона ячейки.10. The method according to claim 8 or 9, characterized in that in addition to action g) the part of the identifier responsible for the color or optical density of the cell background is determined.
RU2023130909A 2023-11-27 Method of generating and decoding two-dimensional code of data medium RU2823438C1 (en)

Publications (1)

Publication Number Publication Date
RU2823438C1 true RU2823438C1 (en) 2024-07-23

Family

ID=

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7032823B2 (en) * 2003-01-30 2006-04-25 Denso Wave Incorporated Two-dimensional code, methods and apparatuses for generating, displaying and reading the same
US9805296B2 (en) * 2016-02-23 2017-10-31 The Chinese University Of Hong Kong Method and apparatus for decoding or generating multi-layer color QR code, method for recommending setting parameters in generation of multi-layer QR code, and product comprising multi-layer color QR code

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7032823B2 (en) * 2003-01-30 2006-04-25 Denso Wave Incorporated Two-dimensional code, methods and apparatuses for generating, displaying and reading the same
US9805296B2 (en) * 2016-02-23 2017-10-31 The Chinese University Of Hong Kong Method and apparatus for decoding or generating multi-layer color QR code, method for recommending setting parameters in generation of multi-layer QR code, and product comprising multi-layer color QR code

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
BAKRI BADAWI. Fuzzy encoder framework for four layers color QR code, 31.12.2019, Найдено в: "http://ijie.um.edu.my/index.php/MJCS/article/view/21468". MAHSSA ABDOLAHI. Structural colour QR codes for multichannel information storage with enhanced optical security and life expectancy, 2019, Найдено в: "https://pubmed.ncbi.nlm.nih.gov/31247595/". *
КАЗИЕВА НАЗЫМ. Методы и алгоритмы штрихового кодирования для задач лицевой биометрии. Диссертация кандидата технических наук, 2020, 306 с. *

Similar Documents

Publication Publication Date Title
DK2806377T3 (en) OK Code: A multidimensional color bar code
Grillo et al. High capacity colored two dimensional codes
EP1612724B1 (en) System and method for encoding high density geometric symbol set
Yang et al. Robust and fast decoding of high-capacity color QR codes for mobile applications
US7997491B2 (en) Thin film transistor liquid crystal display barcodes
Taveerad et al. Development of color QR code for increasing capacity
US8931700B2 (en) Four dimensional (4D) color barcode for high capacity data encoding and decoding
US8915440B2 (en) Four dimensional (4D) color barcode for high capacity data encoding and decoding
KR100341504B1 (en) Machine readable code for representing information and method and apparatus for encoding/decoding the same
Querini et al. 2D Color Barcodes for Mobile Phones.
Galiyawala et al. To increase data capacity of QR code using multiplexing with color coding: An example of embedding speech signal in QR code
EP1870858A2 (en) Method of classifying colors of color based image code
EP2842076A1 (en) Two-dimensional barcodes having a plurality of different regions
WO2010031110A1 (en) Data storage device and encoding/decoding methods
Querini et al. Color classifiers for 2D color barcodes
Querini et al. Reliability and data density in high capacity color barcodes
WO2005086076A1 (en) System for encoding information using colors
KR100919818B1 (en) Method of encoding divided two-dimensional barcodes for mobile communication terminal
RU2823438C1 (en) Method of generating and decoding two-dimensional code of data medium
Ramya et al. Improved color QR codes for real time applications with high embedding capacity
John et al. Designing a 2D color barcode
US20240143951A1 (en) Information code, information code generation device, information code readout device, program, and information code utilization system
CN1770177A (en) System and method for encoding high density geometric symbol set
El-Sheref et al. Improving performance of the multiplexed colored QR codes
Lim et al. Multi-Color Code with High Data Capacity