CN106682716B - Two-dimensional code encoding method and decoding method adopting hierarchical structure - Google Patents

Two-dimensional code encoding method and decoding method adopting hierarchical structure Download PDF

Info

Publication number
CN106682716B
CN106682716B CN201611092884.3A CN201611092884A CN106682716B CN 106682716 B CN106682716 B CN 106682716B CN 201611092884 A CN201611092884 A CN 201611092884A CN 106682716 B CN106682716 B CN 106682716B
Authority
CN
China
Prior art keywords
source data
data information
code
stream
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201611092884.3A
Other languages
Chinese (zh)
Other versions
CN106682716A (en
Inventor
楼喜中
廖景辉
宣雷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Rong Qi Science and Technology Ltd.
Original Assignee
Hangzhou Boogoob Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Boogoob Technology Co ltd filed Critical Hangzhou Boogoob Technology Co ltd
Priority to CN201611092884.3A priority Critical patent/CN106682716B/en
Publication of CN106682716A publication Critical patent/CN106682716A/en
Application granted granted Critical
Publication of CN106682716B publication Critical patent/CN106682716B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06037Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking multi-dimensional coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06046Constructional details
    • G06K19/06131Constructional details the marking comprising a target pattern, e.g. for indicating the center of the bar code or for helping a bar code reader to properly orient the scanner or to retrieve the bar code inside of an image

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)

Abstract

The invention discloses a decoding method of a novel layered two-dimensional code, which has the advantages of firstly decoding main information and then decoding secondary information by applying a soft decoding method to a novel layered two-dimensional code picture, having high restoring accuracy and being more suitable for the requirement of the current rapid development. The method comprises the steps of scanning a layered two-dimensional code picture, standardizing the two-dimensional code picture which is possibly distorted by utilizing gray level quantization image processing to obtain a standard two-dimensional code matrix, carrying out soft decision demodulation on the generated standard two-dimensional code matrix to obtain a soft information bit stream, inputting the soft information bit stream into a matrix de-interleaving matrix and a Turbo code decoder to carry out error correction decoding reduction to obtain a source data information stream, completing decoding, and improving the reduction accuracy of the decoding.

Description

Two-dimensional code encoding method and decoding method adopting hierarchical structure
Technical Field
The invention relates to the field of positioning two-dimensional codes, in particular to a two-dimensional code encoding method and a two-dimensional code decoding method adopting a layered structure.
Background
The two-dimensional bar code/two-dimensional code is a pattern recording data symbol information in which black and white alternate patterns are arranged on a plane in a transverse direction and a longitudinal direction according to a certain rule by using a certain specific arrangement sequence. By using the bit stream concepts of '0' and '1' of the internal logic foundation of the computer, the dark patterns correspond to '1' bits, and the light patterns correspond to '0' bits. Compared with a one-dimensional bar code, the two-dimensional bar code can express information in the transverse direction and in the longitudinal direction, has a certain checking function, can describe the article instead of identifying the article, does not need to rely on a database in most occasions like the one-dimensional bar code, and can be applied independently. A Reed-Solomon algorithm (Reed-Solomon) used by the existing two-dimensional bar code is used for obtaining a supervisory code and correcting errors generated by two-dimensional code fouling on the basis of solving a linear equation system in a Galois field, and the calculation complexity is high.
Two-dimensional bar codes are widely applied to industrial parts, and one industrial part is often used for a long time, so that when the two-dimensional bar codes printed on the parts by laser engraving cannot be identified due to pollution and abrasion, economic losses can be caused because parts cannot be replaced in time. Therefore, it is a great trend to design a two-dimensional code which is easier to identify and has stronger anti-pollution capability for industrial parts.
Disclosure of Invention
The invention aims to provide a two-dimension code coding method adopting a layered structure aiming at the defects in the prior art, which has the advantages that main information needing to be coded preferentially and non-important secondary information of a source data information stream are coded separately to form a two-dimension code picture, the condition that the main information cannot be identified by a large-scale stained two-dimension code can be avoided, and the reliability of the two-dimension code picture is improved.
The technical problem solved by the invention can be realized by adopting the following technical scheme:
a two-dimension code coding method adopting a layered structure comprises the following steps:
s1, classifying the primary and secondary information of the source data information flow to obtain a new source data information flow, and selecting a corresponding encoding rule for the classified new source data information flow;
s2, obtaining a source data code word from the new source data information stream according to the coding rule, binary converting the source data code word into a source data binary bit stream, and coding the source data binary bit stream through a Turbo coder to obtain a data code word;
s3, inputting the data code word in the step S2 into a matrix interleaver for interleaving, and reading the interleaved data code word to obtain a final code word;
and S4, grouping the final code words and converting the final code words into two-dimensional codes according to the graphic coding rule.
The method for classifying the primary and secondary information of the source data information stream in step S1 is as follows:
the method comprises the steps of classifying information carried by a source data information flow into primary information and secondary information, using the information flow needing to be compiled preferentially as the primary information, using other information as the secondary information, and obtaining a new source data information flow according to the arrangement sequence of the primary information before and the secondary information after.
Step S1 further needs to determine whether the length of the main source data information stream satisfies a multiple input of 3, and the specific method is as follows:
judging the length of the classified main source data information stream, and if the input main source data information stream is a character string ABC, adding an empty character behind the character string ABC is not needed; if the input main source data information flow is a character A, two null characters NUL are required to be added behind the character A to obtain a new main source data information flow ANULNUL; if the input main source data information stream is a character AB, adding an empty character NUL behind the character AB to obtain a new main source data information stream ABNUL;
the method for obtaining the source data code word by the new source data information stream according to the coding rule is as follows:
and converting the new source data information flow into binary codes through an ASCII code table, calculating the number of the binary codes through a convolutional code encoder, and comparing the number of the binary codes with the number of the binary codes contained in a preset data area in an ECC200 table rule.
The specific method of step S2 is as follows:
1) generating binary code words in the range of (0,255) by querying the ASCII code table for the new source data information stream in the step S2, and generating a new source data binary stream X with the length of KK
2) Encoding the binary codeword using a (13,15) Turbo encoder with puncturing matrix, the (13,15) Turbo encoder computing the input source data binary codeword, with the formula:
Figure DEST_PATH_GDA0001239523150000031
g1(D)=1+D+D3
g0(D)=1+D2+D3
a convolutional code (RSC) encoder with recursive system will zero out the encoder state by adding 3 tail bits later based on the feedback structure in the sub-encoder.
Binary stream X of source data with length KKDirectly entering into the encoder 1 for encoding, obtaining tail bit execution register zero clearing through shift register feedback, filling tail bit after encoding of source data binary stream, and finally obtaining the encoder1 check stream Z obtainedKCheck stream ZKAs follows:
{Z0,Z1,...,ZK-1,XK,ZK,XK+1,ZK+1,XK+2,ZK+2}
binary stream X of source data with length KKObtaining binary stream X 'with length of K after internal interweaving'K. Will binary stream X'KEntering into an encoder 2 and filling tail bits to obtain a check stream Z'KCheck stream Z'KAs follows:
{Z'0,Z′1...,Z'K-1,X'K,Z'K,X'K+1,Z'K+1,X'K+2,Z'K+2}
two groups of check flows Z obtained by the above stepsKZ'KInputting the data into a puncturing matrix to puncture the check bits, and puncturing the two groups of punctured check bit streams and the source data binary stream XKAnd combining to obtain the data code word.
In step S4, the specific method for grouping the final code words and converting the final code words into two-dimensional codes according to the graph encoding rule is as follows:
the final code word obtained by the main information coding is firstly subjected to graph conversion, and the final code word of the secondary information is subjected to graph conversion from left to right and from top to bottom in the converted graph to obtain the two-dimensional code, wherein the specific method comprises the following steps:
carrying out graphic conversion on the final code words obtained by converting the main source data information flow in every three groups according to the output arrangement sequence; and adding double L-shaped identification areas to the final code words obtained by converting the secondary source data information flow into a complete two-dimensional code picture according to the output arrangement sequence, wherein every two code words are grouped into one group.
A decoding method adopting a layered structure two-dimensional code comprises the following steps:
a1. scanning the two-dimensional code by using a scanner capable of identifying the two-dimensional code to obtain and generate a standard two-dimensional code matrix;
a2. and decoding the generated two-dimensional code matrix through a decoder to obtain a source data information stream.
The specific method of the step a1 is as follows:
and scanning the two-dimensional code by using a high-precision scanner, and acquiring a two-dimensional code image through specific image processing to obtain a standard two-dimensional code matrix.
The specific method of the step a2 is as follows:
a. demodulating the generated standard two-dimensional code matrix through a demodulator to obtain binary soft information bit stream;
b. the demodulated binary soft information bit stream enters a matrix de-interleaving decoder for de-interleaving to obtain a group of new binary soft information bit streams;
c. entering the new binary soft information bit stream into a Turbo decoder, and performing decoding error correction through the Turbo decoder to obtain a source data binary bit stream;
d. and resolving the source data information stream from the source data binary bit stream by using a decoding rule.
Compared with the prior art, the invention has the following beneficial effects:
according to the invention, the two-dimensional code picture is layered by taking the two-dimensional code picture formed by the primary information as a main body, and the two-dimensional code picture formed by the secondary information is sequentially added to the layered main body two-dimensional code picture. After the two-dimensional code is generated, the scanner can still recognize and read the source data information flow of the main information even if large-scale contamination occurs. The identifiability of the two-dimensional code picture is improved.
Drawings
Fig. 1 is a schematic flow chart of an encoding method using a layered two-dimensional code according to the present invention.
Fig. 2 is a schematic flow chart of a decoding method using a layered two-dimensional code according to the present invention.
Fig. 3 is a schematic structural diagram of an encoder according to the present invention.
Fig. 4 is a schematic diagram of a binarized image according to the present invention.
Fig. 5 is a schematic diagram of a binarized image matrix according to the present invention.
Detailed Description
In order to make the technical means, the creation characteristics, the achievement purposes and the effects of the invention easy to understand, the invention is further described with the specific embodiments.
Referring to fig. 1 and fig. 2, the encoding method of the novel layered two-dimensional code according to the present invention includes the following steps:
and S1, performing primary and secondary information classification on the source data information flow. Judging whether the length of the main source data information stream meets the multiple input of 3;
the specific input for judging whether the length of the main source data information stream meets the multiple of 3 is as follows: judging the length of the classified main source data information stream, for example, if the input main source data information stream is a character string ABC, it is not necessary to add a null character behind the character string ABC, and the following step S2 is required; if the input main source data information stream is a character a, two null characters null are required to be added behind the character a to obtain a new main source data information stream anulunl, and the following step S2 is required; if the input main source data information stream is a character AB, an empty character NUL needs to be added behind the character AB to obtain a new main source data information stream ABNUL, and the following step S2 needs to be performed;
s2, selecting the corresponding ECC200 table according to the primary source data information flow and judging whether the secondary source data information flow can be completely filled;
selecting the corresponding ECC200 table rule and determining whether the secondary source data stream can be completely filled specifically includes: firstly, converting the classified main source data information flow into binary codes, calculating the number of the binary codes obtained by the binary codes through a convolutional code encoder, and selecting the corresponding ECC200 specification size according to the main source data information flow; and then converting the classified secondary source data information stream into a binary system, calculating the number of binary codes obtained by the binary codes through a convolutional code encoder, wherein the calculation method is the same as that of the primary source data information stream, and (13,15) the Turbo encoder comprises 6 registers, so that after the encoding is finished, the state of the encoder needs to be cleared to be 0, a group of 12-bit binary code word streams can be obtained, and the group of binary codes are classified into the binary code word streams obtained by the secondary source data information stream. When the size of the corresponding ECC200 specification is selected, and when the secondary source data information flow can not fill the complete graph, the binary stream does not need to be supplemented to completely fill the graph; when the secondary source data information flow cannot be completely accommodated due to overlong length and too small graph, the redundant binary flow is removed;
for example, a (13,15) Turbo encoder with a puncturing matrix and a coding rate of 1/2 is used to input seven secondary source data information streams of two primary source data information streams, a null character is added to the two primary source data information streams to obtain a new primary source data information stream, the new primary source data information stream is converted into eight binary codes to obtain a 24-bit binary code word stream, each binary code obtains the number of binary codes through the (13,15) Turbo encoder with a coding rate of 1/2, namely each binary code outputs two binary codes through a convolutional code encoder to obtain 24 × 2-48 binary codes in total, according to a table with a data area of 8 × 8 selected as an ECC200 data area, according to a graph coding method of table two, each row and each column are 2 × 2 blocks, so that the table can accommodate 4 × 4 × 3-48 binary codes of the primary source data information streams, that is, the primary source data stream satisfies the ECC200 table rule; calculating seven secondary source data information streams to obtain 112 binary codes, because a (13,15) Turbo encoder with the coding rate of 1/2 can clear '0' to the Turbo encoder by only adding 6 binary codes, 118 required binary codes are obtained, each primary source data information stream has four color blocks according to the table four, each color block can carry 2 secondary source data information binary codes, so 8 binary codes can be accommodated, all secondary source data information streams can be accommodated according to a table with a required data area of 8 × 8 obtained by calculation, namely the secondary source data information streams meet the ECC200 table rule without deleting redundant binary code word streams, and the following step S3 is required;
s3, obtaining source data code words from the source data information flow according to the coding rule, carrying out binary conversion to obtain source data binary bit flow, and coding through (13,15) Turbo coder to obtain data code words;
the obtaining of the source data code word by the source data information stream according to the coding rule specifically includes: generating source data code words in a range of (0,255) by querying an ASCII code table, wherein different encoding modes exist for different data types, the code length can be compressed by mixing other encoding modes such as a C40 mode, a Text mode, an X12 mode, an EDIFACT mode and a Base256 mode in order to improve the efficiency of specific type data, and characters are switched with ASCII codes according to the requirements of different encoding modes;
performing binary conversion on the source data code word to obtain a group of binary streams only containing 0 and 1, wherein the generation length of the binary streams is K;
the (13,15) Turbo encoder performs encoding specifically as follows: (13,15) the Turbo encoder calculates the binary code word of the input source data, and the formula is as follows:
Figure DEST_PATH_GDA0001239523150000081
g1(D)=1+D+D3
g0(D)=1+D2+D3
a recursive systematic convolutional code (RSC) encoder adds 3 tail bits after the input codeword stream according to the feedback structure in the sub-encoder to zero the encoder state. The encoder structure is shown in fig. 3.
Binary stream X of source data with length KKDirectly entering the encoder 1 for encoding, obtaining tail bit execution register zero clearing through shift register feedback, filling tail bits after encoding of source data binary stream, and finally obtaining check stream Z obtained by the encoder 1KCheck stream ZKAs follows:
{Z0,Z1,...,ZK-1,XK,ZK,XK+1,ZK+1,XK+2,ZK+2}
binary stream X of source data with length KKObtaining binary stream X 'with length of K after internal interweaving'K. Will binary stream X'KEnters the encoder 2 and gets the correction after filling tail bitsTest flow Z'KCheck stream Z'KAs follows:
{Z'0,Z′1...,Z'K-1,X'K,Z'K,X'K+1,Z'K+1,X'K+2,Z'K+2}
two groups of check flows Z obtained by the above stepsKZ'KInputting the data into a puncturing matrix to puncture the check bits, and puncturing the two groups of punctured check bit streams and the source data binary stream XKAnd combining to obtain the data code word.
S3, the data code word in S2 is input into a matrix interleaver for interleaving, the interleaved data code word is read to obtain a final code word, the matrix interleaver firstly carries out grouping interleaving on the data code word, the column number C is preset to be 30, then the code word number of the data code word is set to be U, the minimum integer R meeting the inequality U and not more than RC is found out to obtain the row number R, after the row number R is determined, a matrix A is obtained, the data code word is written into the matrix A row by row, if the data code word can not write the R row completely, the other vacant positions of the R row are filled by 0 or 1 of the data binary bit stream, the matrix A is subjected to matrix transformation to obtain a new matrix B, if the matrix A is transformed according to the table one, the data is read out from the new matrix B row by row, and the 0 or 1 of the data binary bit stream in the data code word does not exist before is removed, obtaining a final code word;
s4, firstly, carrying out graphic conversion on the final code words obtained by the conversion of the main source data information flow, wherein the final code words are grouped every three according to the output arrangement sequence; and adding double L-shaped identification areas to the final code words obtained by converting the secondary source data information flow into a complete two-dimensional code picture according to the output arrangement sequence, wherein every two code words are grouped into one group.
As shown in fig. 2, fig. 3, fig. 4, fig. 5, table 1 and table 2, a decoding method for a novel layered two-dimensional code includes the following steps:
s1, scanning the two-dimensional code by using a scanner capable of identifying the novel two-dimensional code to obtain an acquired two-dimensional code picture;
the scanner of the novel two-dimensional code is a scanner with high identification precision, and can identify a layered two-dimensional code picture obtained by secondary information; when the identification precision of the scanner is not high, the main information can be still identified, and the two-dimensional code cannot be invalid due to the fact that the secondary information cannot be identified;
s2, graying the collected two-dimensional code picture, and binarizing the grayed image;
graying the collected two-dimensional code picture by using a weighted average method, and carrying out weighted average on RGB three components by using the sensitivity of human eyes to different colors to obtain a more reasonable grayscale image; the grayed image is binarized to realize image binarization soft bit output;
s3, positioning and correcting the binarized image to obtain a standardized two-dimensional code matrix;
the binaryzation image is positioned and corrected accurately by positioning the two-dimensional code in the image, searching an L-shaped positioning graph, acquiring the vertex coordinate and the lengths of two sides of the L-shaped positioning graph, rotating and cutting the graph, and mapping the obtained two-dimensional code picture into a standardized two-dimensional code matrix;
s4, demodulating the obtained standardized two-dimensional code matrix by a demodulator by using a soft decision method to obtain a soft information bit stream;
s5, inputting the demodulated soft information bit stream into a matrix de-interleaver to obtain a de-interleaved soft information bit stream;
inputting the demodulated soft information bit stream into a matrix deinterleaver, and specifically: the obtained soft information bit stream enters a de-interleaving decoder to be de-interleaved to obtain a group of code word streams, the specific algorithm of the de-interleaving decoder is to construct a de-interleaving matrix, wherein the column number C of the de-interleaving matrix is specified to be 30, the number of code words is set to be U 'according to the received code words, the minimum integer R' meeting the inequality U 'less than or equal to CR' is found out to obtain the row number R ', after the row number R' is determined, the matrix D is obtained, the received code words are written into the matrix D column by column, if the input code words can not write the row number R 'completely, other vacant positions of the row number R' are filled by 0 or 1 of the data binary bit stream, then the matrix D is subjected to matrix transformation, if the matrix D is transformed according to table three, the new matrix E is obtained, then the matrix E is read row by row, and the data binary bit stream 0 or 1 in the data code words which do not exist before is, obtaining soft information bit stream after de-interleaving;
s6, inputting the soft information bit stream after de-interleaving into a Turbo decoder for decoding to obtain a source data information stream;
the method for decoding the soft information bit stream after interleaving comprises the following steps: the deinterleaved soft information bit stream is input to serial concatenated Turbo code decoders DEC1 and DEC2 consisting of two Soft Input Soft Output (SISO), the decoder DEC1 optimally decodes the component code RSC1 to produce a binary stream X of source dataKThe decoder DEC2 uses the information as prior information to optimally decode the component code RSC2 to generate the likelihood ratio information of each bit in the interleaved source data binary stream, and then the 'extrinsic information' in the information is deinterleaved and sent to DEC1 for next decoding. After multiple iterations, the external information of DEC1 or DEC2 tends to be stable, the progressive value of the likelihood ratio approaches the maximum likelihood estimation decoding of the whole code, and the likelihood ratio is hard-decided to obtain the optimal estimation sequence.
Inter-interlace pre-column ordering {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29}
After-interleaving inter-column ordering {0,20,10,5,15,25,3,13,23,8,18,28,1,11,21,6,16,26,4,14,24,19,9,29,12,2,7,22,27,17}
TABLE 1
De-interleaving inter-column ordering {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29}
Post-de-interleaving inter-column ordering {0,12,25,6,18,3,15,26,9,22,2,13,24,7,19,4,16,29,10,21,1,14,27,8,20,5,17,28,11,23}
TABLE 2
The foregoing shows and describes the general principles and broad features of the present invention and advantages thereof. It will be understood by those skilled in the art that the present invention is not limited to the embodiments described above, which are described in the specification and illustrated only to illustrate the principle of the present invention, but that various changes and modifications may be made therein without departing from the spirit and scope of the present invention, which fall within the scope of the invention as claimed. The scope of the invention is defined by the appended claims and equivalents thereof.

Claims (5)

1. A two-dimension code coding method adopting a layered structure is characterized by comprising the following steps:
s1, classifying the primary and secondary information of the source data information flow to obtain a new source data information flow, and selecting a corresponding encoding rule for the classified new source data information flow;
s2, obtaining a source data code word from the new source data information stream according to the coding rule, binary converting the source data code word into a source data binary bit stream, and coding the source data binary bit stream through a Turbo coder to obtain a data code word;
s3, inputting the data code word in the step S2 into a matrix interleaver for interleaving, and reading the interleaved data code word to obtain a final code word;
s4, grouping the final code words, and converting the final code words into two-dimensional codes according to a graph coding rule;
the method for classifying the primary and secondary information of the source data information stream in step S1 is as follows:
classifying the primary information and the secondary information of the information carried by the source data information flow, taking the information flow which needs to be compiled preferentially as the primary information, taking other information as the secondary information, and obtaining a new source data information flow according to the arrangement sequence of the primary information before and the secondary information after;
step S1 further needs to determine whether the length of the main source data information stream satisfies a multiple input of 3, and the specific method is as follows:
judging the length of the classified main source data information stream, and if the input main source data information stream is a character string ABC, adding an empty character behind the character string ABC is not needed; if the input main source data information flow is a character A, two null characters NUL are required to be added behind the character A to obtain a new main source data information flow ANULNUL; if the input main source data information stream is a character AB, an empty character NUL needs to be added behind the character AB to obtain a new main source data information stream ABNUL.
2. The two-dimensional code encoding method using hierarchical structure according to claim 1, wherein the method for obtaining the source data code word from the new source data information stream according to the encoding rule is as follows:
and converting the new source data information flow into binary codes through an ASCII code table, calculating the number of the binary codes through a (13,15) Turbo encoder, and comparing the number of the binary codes with the number of the binary codes contained in a preset data area in an ECC200 table rule.
3. The two-dimensional code encoding method using hierarchical structure according to claim 1, wherein the specific method of step S2 is as follows:
1) generating binary code words in the range of (0,255) by querying the ASCII code table for the new source data information stream in the step S2;
2) and (13,15) a Turbo encoder with a puncturing matrix is used for encoding the binary code word to obtain a data code word.
4. The two-dimensional code encoding method using hierarchical structure according to claim 1, wherein the specific method of grouping the final codewords in step S4 and converting the final codewords into two-dimensional codes according to the graph encoding rule is as follows:
and carrying out graphic conversion on the final code word obtained by encoding the primary information, and carrying out graphic conversion on the final code word of the secondary information in the converted graphic from left to right and from top to bottom to obtain the two-dimensional code.
5. The two-dimensional code encoding method using the hierarchical structure according to claim 4, wherein the specific method is as follows:
carrying out graphic conversion on the final code words obtained by converting the main source data information flow in every three groups according to the output arrangement sequence; and adding double L-shaped identification areas to the final code words obtained by converting the secondary source data information flow into a complete two-dimensional code picture according to the output arrangement sequence, wherein every two code words are grouped into one group.
CN201611092884.3A 2016-12-02 2016-12-02 Two-dimensional code encoding method and decoding method adopting hierarchical structure Active CN106682716B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611092884.3A CN106682716B (en) 2016-12-02 2016-12-02 Two-dimensional code encoding method and decoding method adopting hierarchical structure

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611092884.3A CN106682716B (en) 2016-12-02 2016-12-02 Two-dimensional code encoding method and decoding method adopting hierarchical structure

Publications (2)

Publication Number Publication Date
CN106682716A CN106682716A (en) 2017-05-17
CN106682716B true CN106682716B (en) 2020-04-24

Family

ID=58867465

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611092884.3A Active CN106682716B (en) 2016-12-02 2016-12-02 Two-dimensional code encoding method and decoding method adopting hierarchical structure

Country Status (1)

Country Link
CN (1) CN106682716B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107424199B (en) * 2017-08-07 2020-11-13 联通系统集成有限公司河南省分公司 Method for correcting and detecting graphic encrypted data
CN115622661A (en) * 2021-07-14 2023-01-17 大唐移动通信设备有限公司 Signal transmission method and device

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1845124A (en) * 2006-05-16 2006-10-11 北京紫光捷通科技有限公司 Color information superposition of QR code
CN1920858A (en) * 2005-08-26 2007-02-28 毛山 Two-dimensional bar code based information transfer method and encoding/decoding device
JP2008126607A (en) * 2006-11-24 2008-06-05 Taito Corp Card having scratch layer printed with code data
CN103279731A (en) * 2013-06-06 2013-09-04 格科微电子(上海)有限公司 Two-dimension code anti-fake method and anti-fake verification method thereof
CN104281866A (en) * 2013-07-09 2015-01-14 航天信息股份有限公司 Two-dimensional code application method and device
CN106022425A (en) * 2016-05-15 2016-10-12 上海思岭信息科技有限公司 Layered-structure 2D code encoding and decoding method

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1920858A (en) * 2005-08-26 2007-02-28 毛山 Two-dimensional bar code based information transfer method and encoding/decoding device
CN1845124A (en) * 2006-05-16 2006-10-11 北京紫光捷通科技有限公司 Color information superposition of QR code
JP2008126607A (en) * 2006-11-24 2008-06-05 Taito Corp Card having scratch layer printed with code data
CN103279731A (en) * 2013-06-06 2013-09-04 格科微电子(上海)有限公司 Two-dimension code anti-fake method and anti-fake verification method thereof
CN104281866A (en) * 2013-07-09 2015-01-14 航天信息股份有限公司 Two-dimensional code application method and device
CN106022425A (en) * 2016-05-15 2016-10-12 上海思岭信息科技有限公司 Layered-structure 2D code encoding and decoding method

Also Published As

Publication number Publication date
CN106682716A (en) 2017-05-17

Similar Documents

Publication Publication Date Title
KR101884273B1 (en) Interleaving and mapping method and deinterleaving and demapping method for ldpc codeword
CN1770639B (en) Concatenated iterative and algebraic coding
CN101656541B (en) Coding method and device of RS codes
US20100327066A1 (en) Network based reliable decoding of bar codes
US20150006992A1 (en) Method and decoder for processing decoding
US8011596B2 (en) Machine readable 2D symbology printable on demand
CN106682716B (en) Two-dimensional code encoding method and decoding method adopting hierarchical structure
CN106022425B (en) A kind of coding and interpretation method of layered structure two dimensional code
CN1294519C (en) Two-D bar code encoding and decoding method
US20110066917A1 (en) Method and Apparatus for Elementary Updating a Check Node During Decoding of a Block Encoded with a Non-binary LDPC Code
CN101371448A (en) Fast encoding and decoding methods and related devices
CN101425807B (en) Devices and methods for bit-level coding and decoding of turbo codes
CN105391455A (en) Return-to-zero Turbo code starting point and depth blind identification method
JP2004511179A (en) Piecewise deinterleaving
CN1183687C (en) Hybrid interleaver for TURBO codes
CN106130566A (en) A kind of 72 bit status information big data traceability system can error correction coding/decoding method
CN102932002B (en) The FPGA method for designing of truncated-type high speed TPC decoder
CN1182657C (en) Method used to reduce storage content needed and complexity by product code decode
CN109450460A (en) A kind of parameter identification method of RS code and the concatenated code of convolutional code
CN102751996A (en) High-performance low-complexity decoding method of block product codes TPC (Turbo Product Code)
Lou et al. Polar encode and decode in two-dimensional bar code
CN115348010B (en) Method and system suitable for eliminating residual error codes of continuous variable quantum key distribution
Chen et al. On $ A^{\ast} $ Algorithms for Decoding Short Linear Block Codes
Greeshma et al. Fpga implementatıon of turbo product codes for error correctıon
JP2023035458A (en) Method for generating image integrated with two-dimensional code

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20191225

Address after: 310013 room 409, floor 4, building 1, No. 252, Wantang Road, Hangzhou City, Zhejiang Province

Applicant after: Hangzhou Rong Qi Science and Technology Ltd.

Address before: 201203, room 560, 208, midsummer Road, Shanghai, Pudong New Area

Applicant before: SHANGHAI SLIONTEK CO., LTD.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant