Patent ID: 7997502
Filing Date: 2011-08-16
Classification: G06K

Abstract:
1. A decoding method of a two-dimensional code, wherein code symbols of the two-dimensional code comprise an array of bar code cells with different optical reflectance on a basement; each code symbol is a rectangle, wherein said bar code cells in said symbol are solid dots arranged at equal intervals and the cells located at four corners of said code symbol are four positioning dots for defining and recognizing a border, the rest of the cells are data dots, the size of the said positioning dots is larger than that of said data dots; wherein a plurality of said code symbols are arranged repeatedly on the basement so as to be seamlessly jointed as a code matrix, including at least two identical code symbols, wherein adjacent code symbols in the code matrix share same positioning dots on their adjacent border, wherein said data dots are all within the rectangle defined by linking said positioning dots' centers, wherein the diameter of said positioning dots is twice that of said data dots, and wherein said code symbol includes 10×10 bar code cells, wherein except the positioning dots, every adjacent 8 data dots constitute a group to represent one code word; the coordinates of said positioning dots are respectively (0,0),(9,0),(0,9) and (9,9); in a chessboard coordinate system defined by coordinates of the positioning dots, the data dots are divided into 12 groups that respectively represent one code word; unit coordinates of a first group include (1,0), (2,0), (0,1), (1,1), (2,1), (0,2), (1,2), (2,2); unit coordinates of a second group include (3,0), (4,0), (5,0), (6,0), (3,1), (4,1), (5,1), (6,1); unit coordinates of a third group include (7,0), (8,0), (7,1), (8,1), (9,1), (7,2), (8,2), (9,2); unit coordinates of a forth group include (3,2), (4,2), (2,3), (3,3), (4,3), (2,4), (3,4), (4,4); unit coordinates of a fifth group include (5,2), (6,2), (5,3), (6,3), (7,3), (5,4), (6,4), (7,4); unit coordinates of a sixth group include (0,3), (1,3), (0,4), (1,4), (0,5), (1,5), (0,6), (1,6); unit coordinates of a seventh group include (8,3), (9,3), (8,4), (9,4), (8,5), (9,5), (8,6), (9,6); unit coordinates of an eighth group include (2,5), (3,5), (4,5), (2,6), (3,6), (4,6), (3,7), (4,7); unit coordinates of a ninth group include (5,5), (6,5), (7,5), (5,6), (6,6), (7,6), (5,7), (6,7); unit coordinates of a tenth group include (0,7), (1,7), (2,7), (0,8), (1,8), (2,8), (2,9), (3,9); unit coordinates of an eleventh group include (3,8), (4,8), (5,8), (6,8), (3,9), (4,9), (5,9), (6,9); unit coordinates of a twelfth group include (7,7), (8,7), (9,7), (7,8), (8,8), (9,8), (7,9), (8,9), wherein said decoding method comprises the following steps: 1) reading the code symbols by using a reading device to get a gray code symbol image; 2) binarizing the gray code symbol image to get a binary image; 3) parsing the binary image, detecting the margin of each dot to obtain the dot images having a margin; 4) parsing the dot image having the margin to track their closed borders and discarding all non-closed borders to obtain an image of the closed borders; 5) parsing the image of the closed borders, computing an area within every closed border in order to select the positioning dots; 6) matching the positioning dots in a rectangle mode to select one single image of the code symbol; 7) grouping the data dots from the image of the code symbols; 8) reconstructing a matrix of data dots; and 9) reducing codes according to an inverse process of codes layout in a coding process of the two-dimensional code.