Decoding method of two-dimensional code symbol mark

Abstract: The invention is intended to decode and process at high speed by reading two-dimensional code symbol marks by a code reader in a small memory capacity. The X-axis side indication line (4) or/and Y-axis side indication line (5) in an information area (8) recording the code symbol mark (2) are read by the code reader (3), and division marks (7) recorded on the X-axis side indication line (4) or/and Y-axis side indication line (5) are detected. At every interval of dividing the division marks (7) in the Y-axis direction or/and X-axis direction by a specific integer value, the code mark (9) of the binary signal recorded in the information area (8) is sequentially read by the code reader (3) up to the end part of the Y-axis side indication line (5) or/and X-axis the region formed in each square of which one side is the interval of the division mark (7) read by the code reader (3), or the length between the division codes divided by an integer value is processed, thereby decoding the code symbol mark (2).

Description: The present invention relates to a decoding method of two-dimensional code symbol mark in the information processing field, such as sales and production control. At the present, the bar code method of displaying the code with black and white bars in various density, and reading with an optical code reader such as bar code reader and laser scanner in widely used in the distribution industry, production control and other fields. The bar code is extremely small in the information transmission capacity because only black and white bars are displayed at narrow or wide intervals in one-dimensional direction. For example, the Chinese characters, Japanese hiragana and Arabic letters cannot be expressed. Accordingly, the present inventor Previously proposed two-dimensional code symbol marks in matrix, and the apparatus and method of reading them in the Japanese Laid-Open Patent No. Sho. 64-86289, Japanese Laid-Open Patent No. Sho. 64-76176, and PCT/JP90/00980. The two-dimensional symbol mark is effective because an extremely large amount of information can be displayed and transmitted, and this two-dimensional code symbol mark is read by an image reader and the image is processed. Such method of reading with image reader and processing the image is most ordinary means, but since the code symbol is read in very fine intervals, for example, 0.1 mm by the image reader and processed in analog process, the quantity of data to be read is very massive and the memory capacity increases extremely, and it takes time to read, and also decoding of the code symbol mark is time-consuming. In EP-A-0 437 627, there is disclosed a method for reading a two-dimensional code comprising the steps of: detecting an X-basic line, a Y-basic line and an additional mark, detecting internal line position marks for calculating Y-axis internal lines and X-axis internal lines, the intersections of which define the mark area basic points, calculating the marks areas from the mark area basic points, and reading and decoding the binary code included in the mark areas. The positions of the X and Y-internal lines are calculated so as to compensate for errors arising from distortion of the data recording sheet. It is hence an aim of the invention to be able to read a two-dimensional code symbol mark with a small memory capacity, and decode at high speed. According to the invention, there is provided, in common with EP-A-0 437 627, a method of decoding a two-dimensional code symbol mark having an information area defined by an X-axis indication line and a Y-axis indication line for determining the reading range of the two-dimensional code symbol mark and reading a binary signal of a code symbol mark recorded in the information area, thereby decoding the code symbol mark, wherein the X-axis indication line and the Y-axis indication line of the information area, and spaced-apart division marks recorded on the X-axis indication line and the Y-axis indication line are detected by a code reader, said method being characterised by comprising the steps of: (a) calculating the intervals between adjacent division marks and dividing by a specified integer the intervals between adjacent division marks up to an end part of the Y-axis indication line or the X-axis indication line, (b) digitally reading at every divided interval and digitally storing a binary signal corresponding to the presence or absence of the code symbol mark, and (c) digitally decoding and processing the digitally stored code symbol mark recorded in each region formed by a square of which one side is the length defined by the intervals between adjacent division marks or the division mark intervals divided by an integer value. It will be appreciated that with the disclosed methods, it is possible to decode a two-dimensional symbol mark easily and promptly by reading the X-axis side indication line and Y-axis side indication line for specifying the information area of the two-dimensional code symbol mark, and division marks provided on them with a code reader to detect the X-axis side or Y-axis side, or the X-axis side and Y-axis side. For a better understanding of the invention and to show how the same may be carried into effect, reference will now be made, by way of example, to the accompanying drawings, in which: Fig. 1 is a partially omitted explanatory diagram for reading of code symbol mark by a code reader according to one way of performing the invention, Fig. 2 is a magnified view of a code symbol mark for explaining the reading of the same, Fig. 3 is a flow chart for explaining reading and decoding process of the same, Fig. 4 is an explanatory diagram of one way of reading of the same, Fig. 5 is a schematic diagram for explaining computer processing of the same, Fig. 6 is an input explanatory diagram by a scanner in another way of performing the same, Fig. 7 is an explanatory diagram of reading of code symbol mark of the same, and Fig. 8 is an explanatory diagram of reading of code symbol mark of a further different way of performing the same. Referring now to the drawings, some preferred ways of performing the invention are described in detail below. Fig. 1 to Fig. 5 relates to one way of putting the invention into effect. In a data sheet 1 of specified dimensions, a matrix two-dimensional code symbol mark 2 is recorded as shown in Fig. 1, and this code symbol mark 2 is read by a code reader 3 of a CCD sensor of image pickup device for one-dimensional use. The code symbol mark 2 comprises, as shown in Fig. 1 and Fig. 2, an X-axis side indication line 4 for determining the X-axis side, a Y-axis side indication line 5 for determining the Y-axis side, and a corner mark 6 of an asymmetrical shape at a diagonal position of their intersection, and division marks 7 are provided on the X-axis side indication line 4 and Y-axis side indication line 5 so as to segment these lines into a plurality. The division marks 7 are, as shown in Fig.1 and Fig. 2, to segment the X-axis side indication line 4 and Y-axis side indication line 5 at specific intervals, and also the width and length of the division marks 7 are equalized with the above interval so as to record the code symbol mark 2 at highest possible density. In this way, by properly recording code marks 9 of binary symbol at proper positions (Xi, Yi) (only one position is shown in Fig.1 for the ease of understanding) in the information area 8 enclosed by the X-axis side indication line 4, Y-axis side indication line 5 and corner mark 6, the specified code symbol mark 2 is expressed. For example, in the region enclosed by four or five division marks 7 corresponding to the intersection side of the X-axis side indication line 4 and Y-axis side indication line 5 of the information area 8, the principal information such as production information, accounting information and management information is recorded, and on the circumference side the auxiliary information such as nation information and cipher information is recorded, so that a large quantity of information may be expressed and transmitted. In the method of reading the code symbol mark 2 by the code reader 3 of one-dimensional CCD sensor, for example as shown in Fig. 3 and Fig. 4(A), first the code reader 3 is moved at rough reading precision in the direction of the X-axis at every 3 to 10 mm, or preferably 5 to 10 mm to detect the Y-axis side indication line 5, X-axis side indication line 4 and corner mark 6, and the positions of the Y-axis side indication line 5, X-axis side indication line 4 and corner mark 6 are entered in a microcomputer 10 through and input interface 11 as shown in Fig. 5. The Y-axis side indication line 5 and X-axis side indication line 4 may be detected by sensing a continuous bar of a specific length. Thus, since the code reader 3 is moved roughly, the position of the code symbol mark 2 and the information region may be detected in a short time. From a region slightly larger than the information area 8 of the code symbol mark 2 detected above, the Y-axis side indication line 5, the position and width of the division marks 7, the number of division marks 7 and their interval are detected in relation with the relative length with the Y-axis side indication line 5 as shown in Fig.3 and Fig. 4(B) by a precise reading pitch of 0.1 to 0.5 mm (the pitch to be read, corresponding to the size of the code symbol mark) again by the code reader 3 as shown in Fig. 4(B), and are fed into the microcomputer 10. The division marks 7 are recognized by detecting a continuous array at specific intervals on the Y-axis side indication line 5. Meanwhile, the interval of division marks 7, supposing to be equal, may he calculated from the length of the Y-axis side indication line 5 and number and width of the division marks 7. In the code symbol mark 2, as shown in Fig. 1 and Fig. 2, since line 4 and Y-axis side indication line 5, the code reader 3 may be scanned from either the X-axis side or the Y-axis side so as to read, and by the presence or absence of detection of division marks 7, the code symbol mark 2 may be promptly distinguished, so as to decide whether or not to decode easily. In this way, when the division marks 7 at the Y-axis side indication line 5 side are detected, on the basis of this Y-axis detection, as shown in Fig.4(B), the detected data is rotated 90 degrees, and the position of the division marks 7 of the X-axis side indication line 4 side is calculated. After decoding, at every interval of the division marks 7 calculated in the X-axis direction according to Fig.3, the cord mark 9 at the position recorded in the information area 8 (Xi, Yi) as shown in Fig.4(C) is sequentially read by the code reader 3, and is fed into a memory unit 12 of the RAM of the computer 10. After the end of the X-axis side indication line 4 or the end of the corner mark 6, when passing over the predetermined range, reading is terminated. Since the code mark 9 is read at every interval of the division marks 7 in this way, digital, not analog, reading is processed same as in bar code. It is particularly preferred to read at the middle point of the division marks 7 and every middle point between the division marks 7 as shown in Fig.4(C) in order to prevent errors. When reading by the code reader 3 is over, according to the detection of the asymmetric corner mark 6, the code mark 9 in the region (Xi, Yi) of a small division formed in a square of which one side is the interval of the division marks 7 from the detected division mark 7 side is analyzed by programmed dimensional analytical process or other method, and the code symbol mark 2 recorded in the information area 8 specified by the X-axis side indication line 4 and Y-axis side indication line 5 is decoded, and as required it is delivered to an external display means 14 such as printer through an output interface 13 as shown in Fig. 5. Since the corner mark is slightly slender and asymmetric as shown in Fig.1 and Fig.2, even if the X-axis side indication line and Y-axis side indication line, or their division marks are symmetrical, the code symbol mark recorded in the information area may be decoded accurately. Furthermore, by detecting the corner mark, the code symbol mark may be accurately decoded even if the information area is detected in a rhombic shape by scanning the code symbol by seeing through with the code reader. Therefore, even in the two-dimensional code symbol mark, it can be decoded and processed one-dimensionally and digitally on the basis of the division marks, and analog image processing as in the conventional two-dimensional image processing is not required, and therefore the memory capacity is extremely small, so that it is possible to read at high speed and decode at high speed. In another way of putting the invention into effect, as shown in Fig. 6, the code symbol mark 2 is read by the code reader 3 of one-dimensional laser scanner for detecting the reflected light of laser beam by the photo detector by revolving and oscillating a polygon mirror 3A. the laser beam is scanned by oscillating the polygon mirror 3A in the Y-axis direction as shown in the diagram, and the Y-axis side indication line 5 and division marks 7 are detected, and also by oscillating and scanning in the X-axis direction (if necessary, possible to scan in both Y-axis direction and X-axis direction), the X-axis side indication line 4 and its division marks 7 are detected, and the division marks 7 and the code mark 9 recorded in specified position (Xi, Yi) of the information area 8 in every interval of division marks 7 are sequentially read in the same manner as above, thereby analyzing as shown herein. In this method, by detecting the individual division marks of the X-axis side indication line and small division in a square of which one side is the interval of division marks may be securely and accurately determined, and decoding errors may be prevented. In the method too, if the code symbol mark 2 is elongated or contracted due to facsimile transmission or the like, by detecting the division marks 7, the information region may be accurately detected, and decoded. Fig. 8 shows another way of performing the invention. This way relates to a decoding method of code symbol mark 2 corresponding to a case in which the information area 8 formed by the X-axis side indication line 4 and Y-axis side indication line 5 is deformed vertically and laterally (slightly exaggerated in the diagram). In this method, as mentioned above, the code symbol mark 2 is read by the code reader 3 and is fed into the microcomputer 10, while the start point 0 and end point B of the Y-axis side indication line 5, and the start point 0 and end point A of the X-axis side indication line 4, and also the end point C of the corner mark 6 are detected. Consequently, by the microcomputer 10, the Y-axis side indication line (4, 0-B) corresponding to the X-axis side indication line (4, 0-A), the crossing angles o, xn of A-C line and the crossing angle yn of B-C line to the Y-axis side indication line (4, O-B) are calculated in the following equations by program processing. xi = o + i × xn - o Nx yi = o + i × yn - o NY where Nx is the number of division marks on the X-axis side indication line 4 for linear interpolation, and Ny is the number of division marks on the Y-axis side indication line 5 for linear interpolation. By calculating the slant angle in the linear interpolation method of equations (1), (2), the Y-axis side division line 14, and X-axis side division line 15 starting from the i-th division mark 7 on the X-axis side indication line 4 and the i-th division mark 7 on the Y-axis side indication line 5 can be individually calculated. In sequence, by processing the recorded information of the code mark 9 in each region of small division of square formed by these intersections, the code symbol mark 2 of the information area 8 is decoded and processed. In the method, if the information area specified by the X-axis side indication line and Y-axis side indication line is deformed in a rhombic shape or the like by facsimile transmission, paper elongation or contraction, see-through reading or the like, the region of each small division of information area may be accurately restored, and recording of code mark can be detected, and the two-dimensional code symbol mark may be decoded and processed. In this method, too, by the linear interpolation method according to the above principle, the division line calculating the slant angle passing through each end part of division mark is deduced, and recording of code mark in the region enclosed by the crossing points of these division lines may be processed same as in the foregoing embodiment. In the explanation herein, for the ease of understanding, the reading method of only one code symbol mark is explained, but it is obvious that a plurality or a multiplicity may be similarly read and processed. Besides, in these methods, for the sake of simplicity, the code mark is detected at every interval of the division marks (the interval of division marks divided by an integer value of 1), but even in the case of code symbol mark recording the code marks by dividing the interval of division marks into a plurality by an integer value of 2 or 4, the code mark at position (Xij, Ykl) may be similarly decoded and processed by programmed dimensional processing method, by reading and processing at every interval of the division marks into a plurality by the integer value by means of the code reader. In the method, the division marks are as wide as the interval of division marks so as to record the code marks as the densely as possible, but if the division marks are narrow, the intermediate point of the division mark may be regarded as the interval of the division marks, so that it is possible to realize similarly. In the foregoing methods, the information region of small division of code symbol mark is calculated within the square enclosed by intersection of division lines according to the division marks of the X-axis side indication line and Y-axis side indication line, but it is also possible to calculate within the square of a specified range of which the center is each intersection of division lines one side is the length of the interval of division marks or dividing this interval by an integer value. The above methods relate to optical detecting methods, but it is also possible to decode and process by writing the two-dimensional code symbol mark by using a magnetic material, and reading by a code reader making use of the magnetic head of a floppy disk drive of a computer, and hence it may be applied in IC card, telephone card and others economically. Incidentally, instead of the one-dimensional code reader explained herein, a two-dimensional code reader may be similarly applied to decode and process the code symbol mark. Thus, in the methods disclosed hereinabove, the two-dimensional code symbol mark may be decoded and processed by easily reading the code marks in the information area according to the division marks of the X-axis side indication line and Y-axis side indication line by means of the code reader, and therefore the recording capacity may be extremely saved, and it is possible to process at high speed. It is further possible to decode and process by scanning the code reader at rough reading precision in spite of two-dimensional code symbol mark, thereby detecting the code symbol mark promptly. It is also possible to decode and process with line sensor or laser scanner of one-dimensional charge coupled device (CCD) in spite of two-dimensional code symbol mark. It is still further possible to decode the code symbol mark promptly and accurately if the code symbol mark is distorted due to facsimile transmission, elongation or contraction of code paper, or see-through. Another advantage is to be able to decode by easily and promptly reading the code mark within the information area specified by the X-axis side indication line and Y-axis side indication line of two-dimensional code symbol mark. By detecting the X-axis side indication line, Y-axis side indication line, and their division marks by the code reader, in a range specified by the X-axis side indication line and Y-axis line indication line by recording the two-dimensional code symbol mark may be easily discovered, so that decoding and processing may be executed. Furthermore, by sequentially reading the recorded code mark at every interval specified by the division marks, the code marks recorded in the two-dimensional information area can be processed digitally, and can be read and processed by the code reader like the bar code, and therefore the memory capacity may be extremely decreased, and the decoding speed may be raised. Moreover, by calculating the region of small division formed in a square of which one side is the length of dividing the interval of division marks or the division mark spacing by an integer value, and processing the information in every region of small division of the read code marks to decode the code symbol marks recorded in the information area, even the two-dimensional code symbol mark may be digitally processed, without image processing by image reader as required in the prior art, so as to be decoded and processed promptly.

Claims: A method of decoding a two-dimensional code symbol mark (2) having an information area (8) defined by an X-axis indication line (4) and a Y-axis indication line (5) for determining the reading range of the two-dimensional code symbol mark (2) and reading a binary signal of a code symbol mark (9) recorded in the information area (8), thereby decoding the code symbol mark (2), wherein the X-axis indication line (4) and the Y-axis indication line (5) of the information area (8), and spaced-apart division marks (7) recorded on the X-axis indication line (4) and the Y-axis indication line (5) are detected by a code reader (3), said method being characterised by comprising the steps of: (a) calculating the intervals between adjacent division marks (7) and dividing by a specified integer the intervals between adjacent division marks up to an end part of the Y-axis indication line (5) or the X-axis indication line (4); (b) digitally reading at every divided interval and digitally storing a binary signal corresponding to the presence or absence of the code symbol mark (2); and (c) digitally decoding and processing the digitally stored code symbol mark (2) recorded in each region formed by a square of which one side is the length defined by the intervals between adjacent division marks (7) or the division mark intervals divided by an integer value. The method of decoding the two-dimensional symbol mark according to claim 1, wherein the X-axis indication line (4), the Y-axis indication line (5), the division marks (7) recorded on the X-axis indication line and Y-axis indication line, and a corner mark (6) at a diagonal position with respect to the intersection with the X-axis indication line (4) and Y-axis indication line (5) of which the code symbol mark (2) is recorded in the information area (8) are individually detected by the code reader (3), wherein crossing angles are calculated based on a detection of the X-axis indication line (4) and Y-axis indication line (5), including calculating crossing angles of the X-axis indication line with a straight line linking an end part of the X-axis indication line (4) and the corner mark (6), and calculating crossing angles of the Y-axis indication line with a straight line linking an end part of the Y-axis indication line (5) and the corner mark (6), and calculating straight lines passing through the division marks (7) of the X-axis indication line (4) and the Y-axis indication line (5), or the points of segmenting the interval of the division marks (7) into a specific number by a linear interpolation method, and calculating a region of each square formed by crossing of these straight lines, and digitally decoding the digitally stored code symbol mark (2) recorded in the information area (8). The method of decoding the two-dimensional code symbol mark according to claim 1 or 2, wherein the code reader (3) is first scanned at rough reading precision to detect the X-axis indication line (4), the Y-axis indication line (5), and the corner mark (6) at the diagonal position of the intersections with the X-axis indication line (4) and Y-axis indication line (5), and the code reader (3) is scanned at dense reading precision to detect the X-axis indication line (4) and division marks (7) on the X-axis indication line, the interval between adjacent such division marks (7), or the Y-axis indication line (5) and division marks (7) on the Y-axis indication line (5), and the interval between adjacent such division marks, thereby digitally decoding the digitally stored code symbol mark (2) recorded in the information area (8) specified by the X-axis indication line (4) and Y-axis indication line (5). The method according to any one of claims 1 to 3, wherein the code reader (3) is a line sensor or laser scanner of a one-dimensional charged coupled device (CCD). The method according to claim 3, wherein reading within the information region (8) by the code reader (3) is done at the middle point of the division marks (7), and at the middle point between division marks (7). The method according to claim 4, wherein: the code reader (3) detects the X-axis indication line (4) and the division marks (7) of the X-axis indication line (4), or the Y-axis indication line (5) and the division marks of the Y-axis indication line (5); and a mirror (3A) of the laser scanner (3) is revolved by 90 degrees and the indication line of the remaining side of the above information area (8) and its division marks (7) are detected by another one-dimensional laser scanner installed in the orthogonal direction with respect to the line scanner of said code reader (3), and the code symbol mark (2) recorded in the information area (8) specified by the X-axis indication line (4) and Y-axis indication line (5) is decoded. The method according to claim 4 or 5, wherein each square determines the region of a specified range centred around the middle point of the division marks (7), to process the code mark (2) recorded in this region. The method according to claim 4 or 5, wherein the information area (8) is detected by reading the X-axis indication line (4), Y-axis side indication line (5), and an asymmetrical corner mark (6) at the diagonal position of their intersection. The method according to claim 4 or 5, wherein the division marks (7) are as wide as the interval between adjacent division marks. The method according to claims 1 or 2, wherein the code symbol mark is written on a magnetic material.

Inventors: YOSHIDA HIROKAZU, YOSHIDA, HIROKAZU, Yoshida, Hirokazu, c/o Teiryo Sangyo Co., Ltd.
Applicants: YOSHIDA HIROKAZU, YOSHIDA, HIROKAZU
Application year: 1992
Main classification: G06K7
IPC codes: G06K7, G06K19