WO2014091880A1 - バーコードリーダ、バーコード読取り方法及びバーコード読取り用プログラム - Google Patents

バーコードリーダ、バーコード読取り方法及びバーコード読取り用プログラム Download PDF

Info

Publication number
WO2014091880A1
WO2014091880A1 PCT/JP2013/081015 JP2013081015W WO2014091880A1 WO 2014091880 A1 WO2014091880 A1 WO 2014091880A1 JP 2013081015 W JP2013081015 W JP 2013081015W WO 2014091880 A1 WO2014091880 A1 WO 2014091880A1
Authority
WO
WIPO (PCT)
Prior art keywords
barcode
edge
polarity
information
edges
Prior art date
Application number
PCT/JP2013/081015
Other languages
English (en)
French (fr)
Inventor
博 重光
雅生 後藤
博 鶴木
正人 寺岡
Original Assignee
Necインフロンティア株式会社
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 Necインフロンティア株式会社 filed Critical Necインフロンティア株式会社
Priority to US14/427,681 priority Critical patent/US9336424B2/en
Priority to CN201380047281.XA priority patent/CN104704509B/zh
Publication of WO2014091880A1 publication Critical patent/WO2014091880A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/10544Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
    • G06K7/10792Special measures in relation to the object to be scanned
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/10544Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
    • G06K7/10821Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • G06K7/146Methods for optical code recognition the method including quality enhancement steps
    • G06K7/1478Methods for optical code recognition the method including quality enhancement steps adapting the threshold for pixels in a CMOS or CCD pixel sensor for black and white recognition

Definitions

  • the present invention relates to a barcode reader, a barcode reading method, and a barcode reading program for reading a barcode.
  • FIG. 1 is a block diagram of an example of a normal bar code reader.
  • Light is emitted from the barcode reader to the barcode, and the reflected light from the barcode is received for reading.
  • the barcode reading mechanism is as follows. Light is projected from the light emitting LED 901 to the barcode 903, and the reflected light from the barcode is condensed on a CCD (Charge Coupled Device) sensor 907 through the light receiving lens 905. The collected reflected light is photoelectrically converted by the CCD sensor 907, the amplitude of the read analog signal indicating the intensity of the reflected light obtained thereby is amplified by the analog amplifier 909, and then the amplified analog signal is converted into a predetermined signal. Binarization is performed by a method, a digital signal obtained by the binarization is taken into the decoding unit 911 and decoded by the decoding unit 911, thereby obtaining data encoded in the form of a barcode symbol.
  • CCD Charge Coupled Device
  • the light emitted from the projection LED 901 is referred to as scan light.
  • Scanning is the process of irradiating the barcode 903 with scan light and imaging the reflected light from the barcode 903 with an imaging device such as a CCD sensor 907.
  • the scanning light may scan the barcode 903 sequentially from one end to the other end in time, or may scan the barcode 903 from one end to the other end simultaneously.
  • a CPU Central Processing Unit
  • a decoding unit 911 includes a decoding unit 911 and a GPIO (General Purpose Input / Output) 913, and the GPIO 913 supplies a projecting signal to the projecting LED 901.
  • the decoding unit 911 may be hardware built in the CPU 915, may be software by the CPU 915 reading and executing a program, or may be a mixture of these. Good.
  • the arrangement surface of the barcode arrangement object is white
  • the bright portion of the barcode arranged on it is gray
  • the dark portion of the barcode included in the barcode is black.
  • the barcode cannot be read by a normal barcode reader.
  • the barcode includes a barcode symbol and quiet zones at both ends thereof.
  • the bar code symbol includes a white bar and a black bar corresponding to a start character, a data character, a check digit, and a stop character.
  • the quiet zone and the white bar constitute a bright part
  • the black bar constitutes a dark part.
  • arrangement includes pasting and printing.
  • FIG. 2 (a) shows an example of a barcode viewed from above where the black bar constituting the dark part is black and the ground color constituting the bright part is gray.
  • FIG. 2B shows an analog read signal when the barcode shown in FIG. 2A is arranged on a white arrangement surface which is a barcode arrangement object and is read by a normal barcode reader. The waveform is shown.
  • a normal barcode reader recognizes that the highest potential A is a potential corresponding to the lightness of the light portion of the barcode, and recognizes that the lowest potential B is a potential corresponding to the lightness of the dark portion of the barcode, An intermediate potential between these two potentials A and B is set as a threshold value.
  • the potential of the analog read signal is compared with a threshold value and binarized. Therefore, in order to perform binarization after setting an intermediate potential between the potential A corresponding to white on the arrangement surface in FIG. 2B and the potential B corresponding to black in the dark part of the black bar, a part of the quiet zone is used. It will be recognized as a black bar. Accordingly, since the binarized data does not correspond to the barcode pattern, the barcode cannot be normally decoded.
  • FIG. 2 shows the case where the length of the quiet zone of the barcode is shorter than the standard, but the same applies when the length of the quiet zone satisfies the standard, and the barcode is normally decoded. I can't.
  • FIG. 2 only the quiet zone before the barcode symbol is shown, but there is also a quiet zone behind the barcode symbol.
  • Patent Document 1 discloses an optical information reader capable of decoding even when a bright portion of a printed barcode is gray and the periphery of the barcode is white. However, Patent Document 1 detects an error in which a black region is included in a region to be recognized as a margin (margin corresponding region), reconstructs the array data so as to restore the margin corresponding region, and after the reconstruction It is necessary to perform a complicated process of decoding the array data.
  • the present invention provides a barcode reader capable of decoding a barcode by simple processing even when the reflectance around the barcode is higher than the reflectance of the bright portion of the barcode,
  • An object is to provide a barcode reading method and a barcode reading program.
  • information indicated by the bar code based on position information and polarity information of a plurality of edges included in a read signal indicating the intensity of reflected light from the bar code irradiated with the scan light.
  • a barcode reader for reading unnecessary edge position information and polarity information generated by a difference between the intensity of reflected light from a quiet zone of the barcode and the intensity of reflected light from an adjacent portion of the quiet zone is deleted.
  • An edge deletion unit and when the edge deletion unit detects two consecutive edges having the same polarity, the edge closer to the end of the scan is regarded as the unnecessary edge, and the position information and polarity information of the unnecessary edge
  • a bar code reader is provided which is characterized by deleting.
  • information indicated by the barcode based on position information and polarity information of a plurality of edges included in a read signal indicating the intensity of reflected light from the barcode irradiated with the scan light.
  • the barcode reading method for reading the unnecessary edge position information and polarity information caused by the difference between the intensity of the reflected light from the quiet zone of the barcode and the intensity of the reflected light from the adjacent portion of the quiet zone is deleted.
  • the position information and polarity information of the unnecessary edge are deleted by detecting the position of the unnecessary edge by using the edge closer to the end of the scan as the unnecessary edge when two consecutive edges having the same polarity are detected.
  • a barcode reading method is provided which is performed by deleting the polarity information.
  • information indicated by the barcode based on position information and polarity information of a plurality of edges included in a read signal indicating the intensity of reflected light from the barcode irradiated with the scan light.
  • a bar code reading program for causing a computer to function as a bar code reader for reading a bar code, wherein the bar code reading program causes the computer to reflect the intensity of the reflected light from the quiet zone of the bar code and adjacent to the quiet zone.
  • the barcode can be decoded with a simple process.
  • FIG. 1 It is a conceptual diagram which shows the structure of a normal barcode reader.
  • A shows an example in the case where a black bar constituting a dark part is black and a bar code in which a ground color constituting a bright part is gray is viewed from above.
  • B shows the waveform of the analog read signal when the barcode shown in (a) is placed on the white placement surface which is the barcode placement target and is read by a normal barcode reader.
  • FIG. 4 is a waveform diagram for explaining a read analog signal waveform of a portion where black bars and white bars of a bar code are alternately continued according to an embodiment of the present invention and a bar code reading method for reading a bar code therefrom.
  • FIG. 4 is a waveform diagram for explaining a barcode quiet zone and a signal waveform of a neighboring portion thereof and a barcode reading method for reading the barcode therefrom according to an embodiment of the present invention. It is a flowchart which shows a part of process shown in FIG. 5, and the process added to it.
  • the above-described problem is solved by performing the following preprocessing after projecting light on a barcode and A / D converting received light data.
  • the white bar starts from the change start point or the black bar starts based on the data indicating whether the change start point is the “rise” change start point or the “fall” change start point To decide. Further, the midpoint of the “rise” change start point and the subsequent change end point is obtained, and the midpoint of the “fall” change start point and the subsequent change end point is obtained. The bar width is determined based on the distance between the midpoint corresponding to the “rise” change start point and the midpoint corresponding to the “fall” change start point.
  • FIG. 3 is a conceptual diagram of the barcode reader according to the present embodiment.
  • the projection LED 101, barcode 103, light receiving lens 105, CCD 107, analog amplifier 109, and GPIO 113 shown in FIG. 3 are the projection LED 901, barcode 903, light reception lens 905, CCD 907, and analog amplifier 909 shown in FIG. 1, respectively. Since it is the same as that of GPIO 913, overlapping description thereof will be omitted.
  • the bar code reader according to the present embodiment is different from the normal bar code reader in the following points. That is, an A / D conversion unit 121, a memory 123, and a preprocessing unit 125 are added between the analog amplifier 109 and the decoding unit 111. Further, the decoding unit 111 is not the same as the decoding unit 911.
  • the A / D converter 121 converts the read analog signal output from the CCD sensor 107 and amplified by the analog amplifier 109 into input data that is a digital signal. More specifically, the A / D converter (Analog-to-Digital Converter) 121 converts the read analog signal input from the analog amplifier 109 into a digital signal having a predetermined sampling rate and a predetermined number of bits. Each sample of the signal is each input data.
  • the memory 123 stores each input data A / D converted by the A / D converter 121 for one scan.
  • the preprocessing unit 125 performs predetermined processing (described later) to generate data indicating whether each bar is a black bar or each white bar, and data indicating the width of each bar. These data are supplied to the decoding unit 111.
  • the CPU 115 includes an A / D conversion unit 121, a memory 123, a preprocessing unit 125, and a decoding unit 111.
  • Each of the A / D conversion unit 121, the preprocessing unit 125, and the decoding unit 111 may be hardware built in the CPU 115, or may be software by the CPU 115 reading and executing a program. Further, a mixture of these may be used.
  • a / D conversion unit 121 may be arranged outside the CPU instead of inside the CPU 115 so that the CPU 115 controls them. Good.
  • FIG. 5 is a flowchart showing a flow of processing performed by the preprocessing unit 125
  • FIG. 6 is a flowchart showing a detailed flow of the change start point search processing of the flow of FIG. 5
  • FIG. 7 is a flowchart of FIG. It is a flowchart which shows the detailed flow of the change end point search process of a flow.
  • FIG. 8 is a waveform diagram showing a read analog signal waveform or the like of a portion where black bars and white bars of a bar code are alternately continued
  • FIG. 9 is a read analog signal waveform or the like of a quiet zone of the bar code and its adjacent portion.
  • FIG. 8 is a waveform diagram showing a read analog signal waveform or the like of a portion where black bars and white bars of a bar code are alternately continued
  • FIG. 9 is a read analog signal waveform or the like of a quiet zone of the bar code and its adjacent portion.
  • the input data for one scan obtained by projecting light onto the bar code, receiving the reflected light (scanning the bar code), and A / D converting the analog read signal indicating the received light intensity is the input data area of the memory 123 When stored in 123-1 (FIG. 4), the following processing is performed.
  • a difference between data adjacent to each other (that is, between sample data adjacent to each other) is calculated (STEP 1). More specifically, for all input data for one scan stored in the input data area 123-1 of the memory 123, the difference from the adjacent input data is calculated. That is, difference data that is the difference between the input data stored at address n included in the input data area 123-1 of the memory 123 and the input data stored at address (n + 1) is calculated, and the difference data is calculated. Are stored at address n included in the difference data area 123-2 of the memory 123.
  • (2-1) Search for a change start point (STEP 201). More specifically, the absolute value of the difference data between the self-input data and the previous input data (difference data stored in the differential data area 123-2 of the memory 123 corresponding to the previous input data) Is less than a predetermined value, and the absolute value of the difference between the input data and the input data immediately after (the difference data stored in the difference data area 123-2 of the memory 123 corresponding to the input data) If the value is equal to or greater than a predetermined value, a certain address of the input data is set as a change start point memory address corresponding to the change start point.
  • Code data indicating whether the change start point is the “rise” change start point or the “fall” change start point is stored in the code data area 123-4 of the memory 123.
  • the change start stored in the change start point area of the memory 123 is code data indicating whether the change start point is a “rise” change start point or a “fall” change start point. It is stored in the code data area 123-4 so as to be associated with the memory address (STEP 206).
  • the absolute value of the difference data (difference data stored in the difference data area 123-2 corresponding to the immediately preceding input data) between the input data and the immediately preceding input data is not less than a predetermined value.
  • the absolute value of the difference between the input data and the input data immediately after (the difference data stored in the difference data area 123-2 corresponding to the input data) is less than a predetermined value.
  • the memory address having the input data is set as the change end point memory address corresponding to the change end point (STEP 601).
  • the predetermined value as the threshold when searching for the change end point may be the same as the predetermined value when searching for the change start point, or may be determined separately.
  • the change end point first found from the position of each change start point is the change end point corresponding to the change start point. Therefore, it is only necessary to find one change end point for each change start point, and therefore it is not necessary to perform a process for deleting some change end points later.
  • the change end point memory address is stored in the change end point memory address area 123-5 in association with the corresponding change start point memory address (STEP 602).
  • a midpoint between the change start point and the change end point is determined (STEP 8). Specifically, the memory address closest to the average value of the change start point memory address corresponding to the change start point and the subsequent (end corresponding) change end point memory address is determined as the midpoint memory address corresponding to the midpoint. To do. Then, the midpoint memory address is stored in the midpoint memory address area 123-6.
  • the change end point and midpoint corresponding to the deleted change start point cannot be obtained.
  • the change start point, the change end point, and the midpoint can be treated as a set of points corresponding to one edge, and thus deleting the change start point is the same as not generating the corresponding edge. It is. Even if the change end point and the midpoint are obtained without deleting the change start point, and then the change start point, the change end point and the midpoint are deleted, the same result can be obtained. In this case, it can be said that this deletion is an edge deletion.
  • the edge is a general term for a rising edge and a falling edge.
  • the bar width In the calculation of the bar width, a numerical value obtained by multiplying a difference between two midpoint memory addresses respectively corresponding to two midpoints adjacent to each other by a predetermined coefficient is used as the bar width.
  • the input data indicating the received light intensity is A / D converted at a predetermined interval and then stored in consecutive memory addresses in the input data area 123-1 of the memory 123. Therefore, as described above, the bar width can be calculated based on the difference between two midpoint memory addresses respectively corresponding to two midpoints adjacent to each other.
  • the section that starts from the change start point of “rise”, passes through the change end point and the change start point of “fall”, and ends at the change end point is determined to be a white bar section.
  • the section that starts from the “falling” change start point passes through the change end point and the “rise” change start point, and ends at the change end point is determined to be a black bar section. Therefore, the bar binary level data region 123-7 is associated with the bar binary level data indicating whether each section corresponds to the white bar or the black bar, and the bar width data. And stored in the bar width data area 123-8. If the bar binary level data and the bar width data are stored in a common address in the appearance order of the bars in these areas, the addresses can be used for decoding. Further, the appearance order of bars may be stored as data associated with the bar binary level data and the bar width data. The bar binary level data and the bar width data may be further associated with a change start point memory address. Also, code data may be used instead of the bar binary level data.
  • the decoding unit 111 Based on the bar binary level data stored in the bar binary level data area 123-7 of the memory 123 and the bar width data stored in the bar width data area 123-8, the decoding unit 111 Decode the code.
  • the search for the change end point is performed after the search for the change start point.
  • the search for the change start point may be performed after the search for the change end point.
  • it may be determined one by one from the first data, whether it is a change start point or a change end point. Even in these cases, the last edge of the edges corresponding to two consecutive “rising edges” and the first edge of the edges corresponding to two consecutive “falling edges” are deleted. To do.
  • FIG. 8 shows a waveform of a read analog signal corresponding to a portion where black bars and white bars of a bar code are alternately continued.
  • the waveform of the read analog signal is indicated by a continuous line, and the sample points obtained by A / D conversion are indicated by small diamonds on the continuous line.
  • a white circle indicates a rising change start point
  • a black circle indicates a falling change start point
  • a black triangle indicates a change end point corresponding to any of them.
  • the memory addresses close to the average value of the change start point memory address corresponding to the position of the A point and the change end point memory address corresponding to the position of the B point are the points A and B.
  • the midpoint memory address corresponding to the midpoint 1 position is the memory address close to the average value of the change start point memory address corresponding to the position of the C point and the change end point memory address corresponding to the position of the D point.
  • the memory address close to the average value of the change start point memory address corresponding to the position of the C point and the change end point memory address corresponding to the position of the D point is the position of the middle point 2 between the C point and the D point. Is the midpoint memory address corresponding to.
  • the difference memory address which is a difference from the midpoint memory address corresponding to the midpoint 1 and the midpoint memory address corresponding to the midpoint 2
  • the distance between these midpoints is calculated as the bar width.
  • FIG. 9 shows the waveform of the read analog signal corresponding to the quiet zone of the bar code and its adjacent part.
  • the dark part of the barcode printed on the barcode is black
  • the bright part of the barcode is gray
  • the periphery of the barcode is white.
  • the quiet zone and the white bar are bright and gray.
  • it is a waveform of a read analog signal in the case of reading the quiet zone and reading the bar code symbol after reading the white color of the adjacent part preceding the bar code in the vicinity of the scan start point.
  • the original waveform is indicated by a continuous line
  • the sample points obtained by A / D conversion are indicated by small diamonds on the continuous line.
  • a white circle indicates a rising change start point
  • a black circle indicates a falling change start point
  • a black triangle indicates a change end point corresponding to any of them.
  • the point E is determined as the rising change start point
  • the point F is determined as the change end point
  • the point G is determined as the falling change start point
  • the point H is determined as the change end point.
  • the midpoint 3 corresponding to the E point and the F point is set as one midpoint
  • the midpoint 4 corresponding to the G point and the H point is set as another midpoint.
  • the point X is detected as the falling change start point, but is deleted in STEP4 and STEP5. Accordingly, along with this, the point Y is not detected as the falling change end point. Further, along with these, the midpoint corresponding to the point X and the point Y is not calculated.
  • the bright portion of the barcode is gray and the adjacent portion of the barcode is white
  • the falling change start point X and the falling change start point G are continuous, the previous “falling” change start point X is deleted, and the subsequent “falling” change start point G is deleted.
  • the point is kept as it is. That is, since the falling change start point X and the falling change start point G are continuous, the previous “falling” change start point X is not caused by the barcode pattern. It is determined that there is no change, and the subsequent “falling” change start point G is determined to be caused by the barcode pattern.
  • the area from the point E to the point H is recognized as one white bar, and the distance between the midpoint 3 and the midpoint 4 is calculated as the bar width corresponding to the white bar.
  • FIG. 9 partially overlaps with the above description, but the bright portion of the barcode printed on the barcode is gray, the adjacent portion of the barcode level is white, and the outside of the adjacent portion.
  • the waveform etc. when a black part exists in are shown. That is, in FIG. 9, point E corresponds to the black portion further outside the white portion around the barcode, and the range from point F to point X corresponds to the white portion around the barcode. Is.
  • the level of the scan start point becomes equal to the level of the F point and the X point, so the scan start point and the first falling edge There is no rising change start point between the X points, which are the change points, and thus this setting is performed.
  • FIG. 10 shows a part of the flowchart in which the above (A) is represented by STEPs 11 and 12 and the above (B) is represented by STEPs 13 and 14.
  • FIG. 9 shows an example in which the bright portion of the barcode is gray and the adjacent portion of the barcode is white, after scanning the white portion of the adjacent portion of the barcode in the vicinity of the scan start point.
  • An example of scanning a barcode is shown.
  • the white color around the barcode is scanned. Therefore, in the vicinity of the scan end point, the rising from the last dark part of the barcode to the bright part and the rising from the last bright part of the barcode to the white part around the barcode are continued twice. As a process to cope with this, the latter “rise” change start point data is deleted, and the former “rise” change start point data is left.
  • the edge closer to the end along the barcode scanning direction is deleted as an unnecessary edge. That is, the edge close to the end of the scan is deleted as an unnecessary edge.
  • the side close to the scanning end is the side near the scanning start end if it is the scanning start end, and the side near the scanning end if it is the scan end end. is there.
  • the present invention is not limited thereto.
  • the present invention can be applied to a case where similar characteristics are obtained with respect to light having a predetermined wavelength, for example.
  • the present invention can also be applied to the above example and when the brightness is reversed.
  • the above barcode reader can be realized by hardware, software, or a combination thereof.
  • the barcode reading method performed by the above barcode reader can also be realized by hardware, software, or a combination thereof.
  • “realized by software” means realized by a computer reading and executing a program.
  • the program can be any type of non-transitory computer readable medium. readable medium) and can be supplied to a computer.
  • Non-transitory computer readable media include various types of tangible storage media. Examples of non-transitory computer-readable media include magnetic recording media (for example, flexible disks, magnetic tapes, hard disk drives), magneto-optical recording media (for example, magneto-optical disks), CD-ROMs (Read Only Memory), CD-ROMs. R, CD-R / W, semiconductor memory (for example, mask ROM, PROM (Programmable ROM), EPROM (Erasable PROM), flash ROM, RAM (random access memory)).
  • the program may also be supplied to the computer by various types of transitory computer readable media. Examples of transitory computer readable media include electrical signals, optical signals, and electromagnetic waves.
  • the temporary computer-readable medium can supply the program to the computer via a wired communication path such as an electric wire and an optical fiber, or a wireless communication path.
  • a bar code reader that reads information indicated by the bar code based on position information and polarity information of a plurality of edges included in a read signal indicating the intensity of reflected light from the bar code irradiated with scan light.
  • An edge deleting unit that deletes position information and polarity information of unnecessary edges caused by a difference between the intensity of reflected light from the quiet zone of the barcode and the intensity of reflected light from an adjacent portion of the quiet zone; The edge deletion unit, when detecting two consecutive edges having the same polarity, deletes the position information and polarity information of the unnecessary edge by using the edge closer to the end of the scan as the unnecessary edge. Bar code reader.
  • Appendix 3 The barcode reader according to Appendix 1 or 2, If there is no other edge between the scan end and the first edge having a certain polarity when viewed from the scan end, the scan end is defined as an edge having a polarity opposite to the certain polarity.
  • a bar code reader further comprising a decoder for decoding information indicated by the bar code based on the width data of each bar and the binary level data of each bar.
  • Appendix 6 The barcode reader according to any one of appendices 1 to 5, A plurality of edges included in one scan based on difference data for one scan corresponding to input data for one scan representing the read signal, each representing difference between input data adjacent to each other.
  • a bar code reading method comprising: decoding information indicated by the bar code based on the width data of each bar and the binary level data of each bar.
  • the bar code reading program includes a computer, Including functioning as an edge deletion unit that deletes position information and polarity information of unnecessary edges caused by a difference between the intensity of reflected light from the quiet zone of the barcode and the intensity of reflected light from an adjacent portion of the quiet zone. , The edge deletion unit, when detecting two consecutive edges having the same polarity, deletes the position information and polarity information of the unnecessary edge by using the edge closer to the end of the scan as the unnecessary edge.
  • a barcode reading program includes a computer, Including functioning as an edge deletion unit that deletes position information and polarity information of unnecessary edges caused by a difference between the intensity of reflected light from the quiet zone of the barcode and the intensity of reflected light from an adjacent portion of the quiet zone.
  • the barcode reading program according to supplementary note 13, comprising: A bar code reading program which further causes the computer to function so as to use the polarity of the change start point corresponding to the edge as the polarity of the edge.
  • the barcode reading program according to supplementary note 13 or 14, If there is no other edge between the scan end and the first edge having a certain polarity when viewed from the scan end, the scan end is defined as an edge having a polarity opposite to the certain polarity. As described above, the bar code reading program further causes the computer to function.
  • the barcode reading program according to any one of supplementary notes 13 to 15, The width information of each bar is obtained based on the position information of a plurality of edges remaining after the position information and polarity information of unnecessary edges are deleted by the edge deletion unit, and the position information and polarity of unnecessary edges are obtained by the edge deletion unit.
  • a bar code reading program for further causing the computer to function to obtain binary level data of each bar based on polarity information of the plurality of edges remaining after information is deleted.
  • the barcode reading program according to supplementary note 16, A bar code reading program which further causes the computer to function to decode information indicated by the bar code based on the width data of each bar and the binary level data of each bar.
  • the present invention can be used to read barcodes.

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Electromagnetism (AREA)
  • Toxicology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Character Input (AREA)
  • Cash Registers Or Receiving Machines (AREA)
  • Telephone Function (AREA)
  • Printers Characterized By Their Purpose (AREA)

Abstract

 バーコードの周辺の反射率のほうがバーコードの明部の反射率よりも高い場合であっても、簡易な処理で、バーコードをデコードすることが可能なバーコードリーダを提供する。 スキャン光が照射されたバーコードからの反射光の強度を示す読取り信号に含まれる複数のエッジの位置情報と極性情報に基づいて前記バーコードが示す情報を読み取るバーコードリーダであって、前記バーコードのクワイエットゾーンからの反射光の強度と前記クワイエットゾーンの隣接部からの反射光の強度との差により生ずる不要エッジの位置情報と極性情報を削除するエッジ削除部を備え、前記エッジ削除部は、連続している2つの同一極性のエッジを検出したら、スキャンの端部に近い側のエッジを前記不要エッジとして、該不要エッジの位置情報と極性情報を削除する。

Description

バーコードリーダ、バーコード読取り方法及びバーコード読取り用プログラム
 本発明は、バーコードを読み取るためのバーコードリーダ、バーコード読取り方法及びバーコード読取り用プログラムに関する。
 図1は、通常のバーコードリーダの一例のブロック図である。バーコードリーダからバーコードに投光し、バーコードからの反射光を受光して読み取りを行う。具体的には、バーコードの読み取りの仕組みは以下の通りである。投光用LED901からバーコード903へ投光し、バーコードからの反射光を、受光レンズ905を通してCCD(Charge Coupled Device)センサ907に集光させる。集光された反射光をCCDセンサ907で光電変換し、それにより得られた反射光の強度を示す読取りアナログ信号の振幅をアナログ増幅器909で増幅した後、その増幅されたアナログの信号を所定の方式で二値化して、その二値化により得られるデジタル信号をデコード部911に取り込み、そのデコード部911によりデコードすることによりバーコードシンボルの形態でエンコードされているデータを得る。
 ここで、投光用LED901から出射した光のことをスキャン光という。スキャン光をバーコード903に照射し、バーコード903からの反射光をCCDセンサ907などの撮像装置で撮像することをスキャンという。ここで、スキャン光は、バーコード903を一端から他端まで時間を追って順にスキャンするものでもよいし、バーコード903の一端から他端までを同時にスキャンするものであってもよい。
 なお、図1に示す例では、CPU(Central Processing Unit)がデコード部911及びGPIO(General Purpose Input/Output)913を含み、GPIO913が投光用LED901に投光用の信号を与えるようにしている。ここで、デコード部911は、CPU915に内蔵されているハードウェアでもよいし、CPU915がプログラムを読んで実行することによるソフトウェア的なものであってもよいし、これらを混合したものであってもよい。
特開2009-076031号公報
 ここで、例えば、バーコード配置対象物の配置面が白色であり、これに配置されたバーコードの明部が灰色であり、バーコードに含まれるバーコードの暗部が黒色である場合があるが、このような場合(すなわち、配置面の反射率のほうがバーコードの明部の反射率よりも高い場合)には、通常のバーコードリーダではバーコードを読み取ることができなかった。
 ここで、バーコードは、バーコードシンボルとその両端部にあるクワイエットゾーンを含む。バーコードシンボルは、スタートキャラクタ、データキャラクタ、チェックデジット、ストップキャラクタに対応する白色バーと黒色バーを含む。また、クワイエットゾーンと白色バーが明部を構成し、黒色バーが暗部を構成する。
 また、配置とは、貼付、印刷などを含む。
 例えば、図2(a)は、暗部を構成する黒色バーが黒色であり、明部を構成する下地色が灰色であるようなバーコードを上面から見た場合の一例を示している。図2(b)は、バーコード配置対象物である白色の配置面に、図2(a)に示すバーコードを配置して、通常のバーコードリーダにより、これを読み取った際のアナログ読取り信号の波形を示している。通常のバーコードリーダは、最高電位Aをバーコードの明部の明度に対応する電位であると認識し、また、最低電位Bをバーコードの暗部の明度に対応する電位であると認識し、それらの2つの電位A、Bの中間電位を閾値として設定する。そして、アナログ読取り信号の電位を閾値と比較して二値化する。従って、図2(b)の配置面の白色に対応する電位Aと黒色バーの暗部の黒色に対応する電位Bの中間電位を閾値としてから、二値化をするため、クワイエットゾーンの一部を黒色バーと認識してしまう。従って、二値化後のデータがバーコードのパターンに対応しないものとなるので正常にバーコードをデコードすることができなかった。
 図2は、バーコードのクワイエットゾーンの長さが規定より短い場合を示しているが、クワイエットゾーンの長さが規定を満足している場合も同様であって、正常にバーコードをデコードすることができない。また、図2には、バーコードシンボルの前のクワイエットゾーンのみ記しているが、バーコードシンボルの後ろにもクワイエットゾーンが存在する。
 特許文献1には、印刷されたバーコードの明部が灰色であり、そのバーコードの周辺が白色であるような場合でもデコード可能な光学的情報読取装置が開示されている。しかしながら、特許文献1は、マージンとして認識されるべき領域(マージン対応領域)に黒色領域が含まれる誤りを検出し、そのマージン対応領域を復元するように配列データを再構成し、その再構成後の配列データをデコードするという複雑な処理を行わなければならない。
 そこで、本発明は、バーコードの周辺の反射率のほうがバーコードの明部の反射率よりも高い場合であっても、簡易な処理で、バーコードをデコードすることが可能なバーコードリーダ、バーコード読取り方法及びバーコード読取り用プログラムを提供することを目的とする。
 本発明の第1の観点によれば、スキャン光が照射されたバーコードからの反射光の強度を示す読取り信号に含まれる複数のエッジの位置情報と極性情報に基づいて前記バーコードが示す情報を読み取るバーコードリーダであって、前記バーコードのクワイエットゾーンからの反射光の強度と前記クワイエットゾーンの隣接部からの反射光の強度との差により生ずる不要エッジの位置情報と極性情報を削除するエッジ削除部を備え、前記エッジ削除部は、連続している2つの同一極性のエッジを検出したら、スキャンの端部に近い側のエッジを前記不要エッジとして、該不要エッジの位置情報と極性情報を削除することを特徴とするバーコードリーダが提供される。
 本発明の第2の観点によれば、スキャン光が照射されたバーコードからの反射光の強度を示す読取り信号に含まれる複数のエッジの位置情報と極性情報に基づいて前記バーコードが示す情報を読み取るバーコード読取り方法であって、前記バーコードのクワイエットゾーンからの反射光の強度と前記クワイエットゾーンの隣接部からの反射光の強度との差により生ずる不要エッジの位置情報と極性情報を削除し、前記不要エッジの位置情報と極性情報の削除は、連続している2つの同一極性のエッジを検出したら、スキャンの端部に近い側のエッジを前記不要エッジとして、該不要エッジの位置情報と極性情報を削除することにより行われることを特徴とするバーコード読取り方法が提供される。
 本発明の第3の観点によれば、スキャン光が照射されたバーコードからの反射光の強度を示す読取り信号に含まれる複数のエッジの位置情報と極性情報に基づいて前記バーコードが示す情報を読み取るバーコードリーダとしてコンピュータを機能させるためのバーコード読取り用プログラムであって、前記バーコード読取り用プログラムは、コンピュータを、前記バーコードのクワイエットゾーンからの反射光の強度と前記クワイエットゾーンの隣接部からの反射光の強度との差により生ずる不要エッジの位置情報と極性情報を削除するエッジ削除部として機能させることを含み、前記エッジ削除部は、連続している2つの同一極性のエッジを検出したら、スキャンの端部に近い側のエッジを前記不要エッジとして、該不要エッジの位置情報と極性情報を削除することを特徴とするバーコード読み取り用プログラムが提供される。
 本発明によれば、バーコードの周辺の反射率のほうがバーコードの明部の反射率よりも高い場合であっても、簡易な処理で、バーコードをデコードすることが可能となる。
通常のバーコードリーダの構成を示す概念図である。 (a)は、暗部を構成する黒色バーが黒色であり、明部を構成する下地色が灰色であるようなバーコードを上面から見た場合の一例を示す。(b)は、バーコード配置対象物である白色の配置面に、(a)に示すバーコードを配置して、通常のバーコードリーダにより、これを読み取った際のアナログ読取り信号の波形を示す。 本発明の実施形態によるバーコードリーダの構成を示す概念図である。 図3に示すメモリの領域群を示す図である。 本発明の実施形態による前処理部で行う処理のフローを示すフローチャートである。 図5のフローの変化開始点検索処理の詳細なフローを示すフローチャートである。 図5のフローの変化終了点検索処理の詳細なフローを示すフローチャートである。 本発明の実施形態によるバーコードの黒色バー、白色バーが交互に連続する部分の読取りアナログ信号波形及びそれからバーコードを読み取るためのバーコード読取り方法を説明するための波形図である。 本発明の実施形態によるバーコードのクワイエットゾーン及びその隣接部の信号波形及びそれからバーコードを読み取るためのバーコード読取り方法を説明するための波形図である。 図5に示す工程の一部とそれに追加した工程を示すフローチャートである。
 101 投光用LED
 103 バーコード
 105 受光レンズ
 107 CCD
 109 アナログ増幅器
 111 デコード部
 113 GPIO
 115 CPU
 121 A/D変換部
 123 メモリ
 125 前処理部
 以下、図面を参照して本発明を実施するための形態について詳細に説明する。
 本実施形態では、バーコードに投光し、受光データをA/D変換した後に、以下の前処理を行うことによって、上記課題を解決する。
 (1)サンプルされた隣接データ間の差分を計算する。
 (2)上記(1)で得た差分とその差分の±符号から、「立ち上がり」変化開始点、「立ち下がり」変化開始点、及び、変化終了点を検索して決定する。
 (3)「立ち上がり」変化開始点が連続する場合(つまり、2つの「立ち上がり」変化開始点の間に「立ち下がり」変化開始点が無い場合)、前の「立ち上がり」変化開始点を削除し、「立ち下がり」変化開始点が連続する場合(つまり、2つの「立ち下がり」変化開始点の間に「立ち上がり」変化開始点が無い場合)、前の「立ち下がり」変化開始点を削除する。
 (4)変化開始点が、「立ち上がり」変化開始点であるか、「立ち下がり」変化開始点であるかのデータに基づいて、その変化開始点から白色バーが始まるのか、黒色バーが始まるのかを決定する。また、「立ち上がり」変化開始点とそれに続く変化終了点の中点を求め、「立ち下がり」変化開始点とそれに続く変化終了点の中点を求める。「立ち上がり」変化開始点に対応する中点と、「立ち下がり」変化開始点に対応する中点との距離に基づいて、バー幅を決定する。
 図3は、本実施形態によるバーコードリーダの概念図である。
 図3に示す投光用LED101、バーコード103、受光レンズ105、CCD107、アナログ増幅器109、GPIO113は、それぞれ、図1に示す投光用LED901、バーコード903、受光レンズ905、CCD907、アナログ増幅器909、GPIO913と同様なものであるので、これらについての重複する説明は省略する。
 本実施形態によるバーコードリーダが、通常のバーコードリーダと異なる点は、以下の点である。すなわち、アナログ増幅器109とデコード部111との間に、A/D変換部121、メモリ123、前処理部125が追加されている点である。また、デコード部111がデコード部911と同様なものでないことである。
 A/D変換部121は、CCDセンサ107から出力され、アナログ増幅器109で増幅された読取りアナログ信号をデジタル信号である入力データに変換する。より詳細には、A/D変換部(Analog-to-Digital Converter)121は、アナログ増幅器109から入力した読取りアナログ信号を所定のサンプリングレート及び所定のビット数のデジタル信号に変換するが、このデジタル信号の各サンプルが各入力データである。
 メモリ123は、A/D変換部121でA/D変換された各入力データを1スキャン分まとめて格納する。
 前処理部125は、所定の処理(後述する)を行って、各バーが黒色バーであるのか各白色バーであるのかを示すデータと、各バーの幅を示すデータを生成する。これらのデータがデコード部111に供給される。
 なお、図3では、CPU115は、A/D変換部121、メモリ123、前処理部125、デコード部111を内蔵している。A/D変換部121、前処理部125、デコード部111は、それぞれ、CPU115に内蔵されているハードウェアでもよいし、CPU115がプログラムを読んで実行することによるソフトウェア的なものであってもよいし、これらを混合したものであってもよい。
 また、A/D変換部121、メモリ123、前処理部125、デコード部111の一部又は全部を、CPU115内部ではなく、CPUの外部に配置して、CPU115がこれらを制御するようにしてもよい。
 図5は、前処理部125で行う処理のフローを示すフローチャートであり、図6は、図5のフローの変化開始点検索処理の詳細なフローを示すフローチャートであり、図7は、図5のフローの変化終了点検索処理の詳細なフローを示すフローチャートである。図8は、バーコードの黒色バー、白色バーが交互に連続する部分の読取りアナログ信号波形等を示す波形図であり、図9は、バーコードのクワイエットゾーン及びその隣接部の読取りアナログ信号波形等を示す波形図である。
 次に、図5、図6、及び図7を参照して、前処理部125で行う処理について説明する。
 バーコードへ投光して反射光を受光(バーコードをスキャン)し、受光強度を示すアナログ読取り信号をA/D変換することにより得られる1スキャン分の入力データがメモリ123の入力データ用領域123-1(図4)に格納されると、以下の処理を行う。
 (1)相互に隣接するデータ間(つまり、相互に隣接するサンプルデータ間)の差分を計算する(STEP1)。より詳細に説明すると、メモリ123の入力データ用領域123-1に格納されている1スキャン分のすべての入力データについて、それに隣接する入力データとの差分を計算する。つまり、メモリ123の入力データ用領域123-1に含まれるn番地に格納されている入力データと(n+1)番地に格納されている入力データとの差分である差分データを計算し、その差分データを、メモリ123の差分データ用領域123-2に含まれるn番地に格納する。
 (2)全ての変化開始点を検索して決定する(STEP2、STEP3)。
 (2-1)変化開始点があるか検索する(STEP201)。より詳細に説明すると、自入力データと直前の入力データとの差分データ(直前の入力データに対応してメモリ123の差分データ用領域123-2に格納されている差分データ)の値の絶対値が所定値未満であり、且つ、自入力データと直後の入力データとの差分(自入力データに対応してメモリ123の差分データ用領域123-2に格納されている差分データ)の値の絶対値が所定値以上である場合には、その自入力データのある番地を変化開始点に対応した変化開始点メモリ番地とする。
 (2-2)変化開始点に対応した変化開始点メモリ番地をメモリ123の変化開始点メモリ番地用領域123-3に格納する(STEP202)。
 (2-3)差分データ用領域123-2の変化開始点メモリ番地に格納されている差分データが示す差分の±符号を確認する(STEP203)。
 (2-4)差分の±符号がプラスであれば、変化開始点は、「立ち上がり」の変化開始点であると判断し(STEP204)、差分データの符号がマイナスであれば、変化開始点は、「立ち下がり」の変化開始点であると判断する(STEP205)。
 (2-5)変化開始点が、「立ち上がり」の変化開始点であるか、「立ち下がり」の変化開始点であるかを示す符号データをメモリ123の符号データ用領域123-4に格納する。例えば、変化開始点が、「立ち上がり」の変化開始点であるか、「立ち下がり」の変化開始点であるかを示す符号データを、メモリ123の変化開始点用領域に格納されている変化開始メモリ番地に関連づけられるように符号データ用領域123-4に格納する(STEP206)。
 (3)削除すべき変化開始点があるかを確認する(STEP4)。より詳細に説明すると、連続する「立ち上がり」の変化開始点があるか否かと、連続する「立ち下がり」の変化開始点があるか否かを確認する。具体的には、変化開始点メモリ番地用領域123-3に格納されている変化開始点メモリ番地と、それに関連づけられて符号データ用領域123-4に格納されている符号データを見て、それらの変化開始点メモリ番地のうちの2つの連続する変化開始点メモリ番地に対応する符号データがプラス符号を示しているか否かをみる。そして、そうならば、2つの連続する変化開始点メモリ番地のうち大きい方の変化開始点メモリ番地とそれに対応する符号データ(実際にはプラス符号を示している。)を削除すべき変化開始点に係るものとする。これは、スキャン末端点付近にあるクワイエットゾーンとそれに後続する周辺白色部との明度差により生ずる不要立ち上がりエッジを削除する処理である。更に、同様に、変化開始点メモリ番地用領域123-3に格納されている変化開始点メモリ番地と、それに関連づけられて符号データ用領域123-4に格納されている符号データを見て、それらの変化開始点メモリ番地のうちの2つの連続する変化開始点メモリ番地に対応する符号データがマイナス符号を示しているか否かをみる。そして、そうならば、2つの連続する変化開始点メモリ番地のうち小さい方の変化開始点メモリ番地とそれに対応する符号データ(実際にはマイナス符号を示している。)を削除すべき変化開始点に係るものとする。これは、スキャン開始点付近にあるクワイエットゾーンとそれに先行する周辺白色部との明度差により生ずる不要立ち下がりエッジを削除する処理である。
 (4)削除すべき変化開始点に係るデータを削除する(STEP5)。具体的には、削除すべきものと判断された変化開始点メモリ番地とそれらに関連づけられている符号データとを、それぞれ、変化開始点メモリ番地用領域123-3と符号データ用領域123-4から削除する。
 例えば、「立ち上がり」の変化開始点に対応する変化開始点メモリ番地の数値が変化開始点メモリ番地領域123-3において2つ連続している場合は、後の変化開始点メモリ番地とそれに対応する符号データを削除し、前の変化開始点メモリ番地とそれに対応する符号データを残す。同様に、「立ち下がり」の変化開始点に対応する変化開始点メモリ番地の数値が変化開始点メモリ番地領域123-3において2つ連続している場合は、前の変化開始点メモリ番地とそれに対応する符号データを削除し、後の変化開始点メモリ番地とそれに対応する符号データを残す。
 (5)上記の(4)での削除の後に残った全ての変化開始点にそれぞれ対応する複数の変化終了点を検索して決定する(STEP6、STEP7)。
 (5-1)自入力データと直前の入力データとの差分データ(直前の入力データに対応して差分データ用領域123-2に格納されている差分データ)の値の絶対値が所定値以上であり、且つ、自入力データと直後の入力データとの差分(自入力データに対応して差分データ用領域123-2に格納されている差分データ)の値の絶対値が所定値未満である場合には、その自入力データのあるメモリ番地を変化終了点に対応した変化終了点メモリ番地とする(STEP601)。変化終了点を検索する際の閾値としての所定値は、変化開始点を検索する際の所定値と同じであってもよいし、別に定めてもよい。それぞれの変化開始点の位置から最初に見つかった変化終了点が、その変化開始点に対応する変化終了点である。従って、それぞれの変化開始点に対して1つの変化終了点を見つければよく、従って、後で、一部の変化終了点を削除するような処理は不要である。
 (5-2)変化終了点メモリ番地を、変化終了点メモリ番地用領域123-5に、対応する変化開始点メモリ番地と関連づけて、格納する(STEP602)
 (6)変化開始点と変化終了点間との間の中点を決定する(STEP8)。具体的には、変化開始点に対応する変化開始点メモリ番地とそれに続く(それに対応する)変化終了点メモリ番地との平均値に最も近いメモリ番地を、中点に対応する中点メモリ番地とする。そして、中点メモリ番地を中点メモリ番地用領域123-6に格納する。
 従って、削除した変化開始点に対応する変化終了点及び中点は得られない。変化開始点、変化終了点及び中点が1つのエッジに対応する一組の点であると扱うことができ、従って、変化開始点を削除することは、それに対応するエッジを発生させないことと同じである。変化開始点の削除をしないまま、変化終了点及び中点を得て、それから、変化開始点、変化終了点及び中点を削除しても同じ結果が得られる。この場合は、この削除はエッジの削除であるということができる。なお、エッジとは、立ち上がりエッジと立ち下がりエッジの総称である。
 (7)中点間のバー幅を算出する(STEP9)。
 バー幅の算出では、相互に隣接する2つの中点にそれぞれ対応する2つの中点メモリ番地の差に所定係数を掛けて得られた数値をバー幅とする。受光強度を示す入力データは、所定間隔でA/D変換されてから、メモリ123の入力データ用領域123-1の連続するメモリ番地に格納されている。従って、前述したように、相互に隣接する2つの中点にそれぞれ対応する2つの中点メモリ番地の差に基づいてバー幅を算出することができる。
 (8)バー幅データ及びバー二値レベルデータを格納する(STEP10)。
 一方では、「立ち上がり」の変化開始点から開始し、変化終了点と、「立ち下がり」の変化開始点とを経て、変化終了点で終了する区間は、白色バーの区間であると判断する。他方では、「立ち下がり」の変化開始点から開始し、変化終了点と、「立ち上がり」の変化開始点とを経て、変化終了点で終了する区間は、黒色バーの区間であると判断する。そこで、各区間が白色バーに対応するのか、黒色バーに対応するのかを示すバー二値レベルデータを、バー幅データとを、相互に関連づけて、それぞれ、バー二値レベルデータ用領域123-7とバー幅データ用領域123-8に格納する。バー二値レベルデータとバー幅データは、それらの領域において、バーの出現順序の共通のアドレスに格納されれば、そのアドレスをデコード用に利用することができる。また、バーの出現順序を、バー二値レベルデータとバー幅データに関連づけられたデータとして格納してもよい。バー二値レベルデータとバー幅データは、更に、変化開始点メモリ番地と関連づけられていてもよい。また、バー二値レベルデータの代わりに、符号データを用いてもよい。
 デコード部111は、メモリ123のバー二値レベルデータ用領域123-7に格納されているバー二値レベルデータ及びバー幅データ用領域123-8に格納されているバー幅データを基に、バーコードのデコードを行う。
 図5のフローでは、変化開始点の検索を行った後に変化終了点の検索を行っているが、これとは逆に、変化終了点の検索を行った後に変化開始点の検索を行ってもよい。また、最初のデータから順に、変化開始点であるか、変化終了点であるかを1つずつ判断していくようにしてもよい。これらの場合であっても、2つの連続する「立ち上がり」に対応するエッジのうち最後の方のエッジと、2つの連続する「立ち下がり」に対応するエッジのうちの最初の方のエッジを削除する。
 図8は、バーコードの黒色バー、白色バーが交互に連続する部分に対応する読取りアナログ信号の波形を示す。この信号波形を対象とした場合の前処理部125の動作の説明をする。図8では、読取りアナログ信号の波形を連続線で示し、A/D変換して得られるサンプル点をその連続線上にある小さな菱形で示している。図中、白抜きの丸は立ち上がり変化開始点を、黒色の丸は立ち下がり変化開始点を示し、黒色の三角はそれらの何れかに対応した変化終了点を示す。
 図8の2番目の凸波形では、A点の位置に対応する変化開始点メモリ番地とB点の位置に対応する変化終了点メモリ番地との平均値に近いメモリ番地が、A点とB点との中点1の位置に対応する中点メモリ番地とされる。同様に、C点の位置に対応する変化開始点メモリ番地とD点の位置に対応する変化終了点メモリ番地との平均値に近いメモリ番地が、C点とD点との中点2の位置に対応する中点メモリ番地とされる。そして、中点1に対応する中点メモリ番地と中点2に対応する中点メモリ番地と差分である差分メモリ番地に基づいて、これらの中点間の距離がバー幅として算出される。
 図9は、バーコードのクワイエットゾーンとその隣接部に対応する読取りアナログ信号の波形を示す。この信号波形を対象とした場合の前処理部125の動作の説明をする。より詳細に説明をすると、図9は、バーコードに印刷されているバーコードのうちの暗部が黒であり、バーコードのうちの明部が灰色であり、そのバーコードの周辺が白色である場合に、バーコードシンボルの前のクワイエットゾーンを含む部分に対応する読取りアナログ信号の波形である。なお、図9から明らかなようにクワイエットゾーンと白バーとが明部であり灰色である。具体的には、スキャン開始点付近において、バーコードに先行する隣接部の白色を読み取った後に、クワイエットゾーンを読み取り、それからバーコードシンボルを読み出す場合の読取りアナログ信号の波形である。
 図9でも、図8と同様に、原波形を連続線で示し、A/D変換して得られたサンプル点をその連続線上にある小さな菱形で示している。図中、白抜きの丸は立ち上がり変化開始点を、黒色の丸は立ち下がり変化開始点を示し、黒色の三角はそれらの何れかに対応した変化終了点を示す。
 図9では、アドレス番地についての細かい説明は省略するが、E点が立ち上がり変化開始点、F点が変化終了点、G点が立ち下がり変化開始点、H点が変化終了点と決定される。また、E点とF点に対応する中点3が1つの中点とされ、G点とH点に対応する中点4がもう1つの中点とされる。ここで、STEP2、STEP3で、X点は立ち下がり変化開始点として検出されるが、STEP4、STEP5で、削除されている。従って、これに伴い、点Yは、立ち下がり変化終了点として検出されていない。更に、これらに伴い、点Xと点Yに対応する中点は算出されていない。つまり、バーコードの明部が灰色であり、そのバーコードの隣接部が白色であるので、波形上は、立ち下がり変化開始点であるX点、変化終了点であるY点が存在しているが、立ち下がり変化開始点Xと立ち下がり変化開始点Gとが連続しているので、前の「立ち下がり」の変化開始点X点は削除され、後の「立ち下がり」の変化開始点G点はそのまま維持される。つまり、立ち下がり変化開始点Xと立ち下がり変化開始点Gとが連続しているので、これらのうちの前の「立ち下がり」の変化開始点X点は、バーコードのパターンに起因したものではないと判断され、後の「立ち下がり」の変化開始点G点は、バーコードのパターンに起因したものであると判断される。その結果、E点からH点までの間が、1つの白色バーとして認識され、中点3と中点4との間の距離が、その白色バーに対応するバー幅として算出される。
 図8と図9では、変化開始点と変化終了点が別々に決定される信号波形を示しているが、信号によっては、サンプル間隔との比較において信号の変化率が大きいことに起因して、変化開始点と変化終了点が同一のポイントとなることもある。この場合には、中間点は、変化開始点と変化終了点とに一致する。
 図9は、上記と説明が一部重複するが、バーコードに印刷されているバーコードのうちの明部が灰色であり、そのバーコードレベルの隣接部が白色であり、その隣接部の外側に黒色部がある場合の波形等を示している。つまり、図9において、E点は、バーコードの周辺の白色部の更に外側の黒色部に対応するものであり、F点からX点までの範囲は、バーコードの周辺の白色部に対応するものである。
 これに対し、バーコードの周辺の白色部の更に外側に黒色の領域が存在していない場合もある。このような場合には、図5、図6、及び図7に示す処理に加え、以下のような処理をする。
 (A)スキャン開始点と最初の立ち下がりの変化開始点の間に、他の変化開始点がなかった場合は、スキャン開始点の入力データのメモリ番地を、立ち上がりの変化開始点、変化終了点、及び中点の全てに対応したメモリ番地として設定する。
 バーコードの周辺の白色部の更に外側に黒色の領域が存在していない場合には、スキャン開始点のレベルがF点とX点のレベルと等しくなり、従って、スキャン開始点と最初の立ち下がりの変化点であるX点の間に、立ち上がり変化開始点が無く、よって、この設定が行われる。
 比較のために説明をすると、図9の場合には、スキャン開始点と最初の立ち下がりの変化点であるX点の間に、立ち上がり変化開始点であるE点があるので、この設定は行われない。
 (B)スキャン終了点と最後の立ち上がりの変化開始点の間に、他の変化開始点がなかった場合は、スキャン終了点のデータのメモリ番地を、立ち下がりの変化開始点、変化終了点、及び中点の全てに対応したメモリ番地として設定する。これは、上記の(A)の処理を左右反転させた処理である。
 上記の(A)と(B)の処理は、STEP3とSTEP4の間に行う。上記の(A)をSTEP11、12で表し、上記の(B)をSTEP13、14で表したフローチャートの一部を図10に示す。
 なお、図9は、バーコードのうちの明部が灰色であり、そのバーコードの隣接部が白色である場合の一例として、スキャン開始点付近において、バーコードの隣接部の白色をスキャンした後に、バーコードをスキャンする例を示した。これに対し、スキャン終了点付近においては、バーコードをスキャンした後に、バーコードの周辺の白色をスキャンすることとなる。従って、スキャン終了点付近においては、バーコードの最後の暗部から明部にかけての立ち上がりと、バーコードの最後の明部からバーコードの周辺の白色部にかけての立ち上がりが2回連続する。これに対処する処理として、後者の「立ち上がり」の変化開始点のデータを削除し、前者の「立ち上がり」の変化開始点のデータを残す処理を行うことになる。
 すなわち、これらを合わせて説明をすると、連続している2つの同一極性のエッジを検出したら、バーコードのスキャン方向に沿って端部に近い側のエッジを不要エッジとして削除するということになる。つまり、スキャンの端部に近い側のエッジを不要エッジとして削除するということになる。スキャンの端部に近い側とは、スキャン開始側の端部であれば、スキャン開始の端部に近い側であり、スキャン終了側の端部であれば、スキャン終了の端部に近い側である。
 なお、上記では、バーコードの明部が灰色であり、バーコードの暗部が黒色であり、バーコードの隣接部が白である場合を例にとり、説明をしたが、本発明は、これに限らず、読取りアナログ信号の波形を見て、バーコードの隣接部に対応するレベルとバーコードの暗部に対応するレベルとの間にバーコードの明部に対応するレベルがある様々な場合に適用することができる。従って、本発明は、例えば、所定の波長の光に対して、同様な特性が出る場合にも適用することができる。また、本発明は、上記の例と、明度が反転した場合にも適用することができる。
 なお、上記のバーコードリーダは、ハードウェア、ソフトウェア又はこれらの組合わせにより実現することができる。また、上記のバーコードリーダにより行なわれるバーコード読取り方法も、ハードウェア、ソフトウェア又はこれらに組合わせにより実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラムを読み込んで実行することにより実現されることを意味する。
 プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer
readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
 本願は、日本の特願2012-271513(2012年12月12日に出願)に基づいたものであり、又、特願2012-271513に基づくパリ条約の優先権を主張するものである。特願2012-271513の開示内容は、特願2012-271513を参照することにより本明細書に援用される。
 本発明の代表的な実施の形態が詳細に述べられたが、様々な変更(changes)、置き換え(substitutions)及び選択(alternatives)が請求項で定義された発明の精神と範囲から逸脱することなくなされることが理解されるべきである。また、仮にクレームが出願手続きにおいて補正されたとしても、クレームされた発明の均等の範囲は維持されるものと発明者は意図する。
 上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
 (付記1) スキャン光が照射されたバーコードからの反射光の強度を示す読取り信号に含まれる複数のエッジの位置情報と極性情報に基づいて前記バーコードが示す情報を読み取るバーコードリーダであって、
 前記バーコードのクワイエットゾーンからの反射光の強度と前記クワイエットゾーンの隣接部からの反射光の強度との差により生ずる不要エッジの位置情報と極性情報を削除するエッジ削除部を備え、
 前記エッジ削除部は、連続している2つの同一極性のエッジを検出したら、スキャンの端部に近い側のエッジを前記不要エッジとして、該不要エッジの位置情報と極性情報を削除することを特徴とするバーコードリーダ。
 (付記2) 付記1に記載のバーコードリーダであって、
 前記エッジの極性として、そのエッジに対応する変化開始点の極性を利用することを特徴とするバーコードリーダ。
 (付記3) 付記1又は2に記載のバーコードリーダであって、
 スキャン端部と前記スキャン端部から見て最初の或る極性のエッジとの間に、他のエッジが無い場合には、前記スキャン端部を前記或る極性と反対の極性を有するエッジとすることを特徴とするバーコードリーダ。
 (付記4) 付記1乃至3の何れか1に記載のバーコードリーダであって、
 前記エッジ削除部により不要エッジの位置情報と極性情報が削除された後に残った複数のエッジの位置情報に基づいて、各バーの幅データを求め、前記エッジ削除部により不要エッジの位置情報と極性情報が削除された後に残った前記複数のエッジの極性情報に基づいて、各バーの二値レベルデータを求めることを特徴とするバーコードリーダ。
 (付記5) 付記4に記載のバーコードリーダであって、
 前記各バーの幅データと前記各バーの二値レベルデータに基づいて、前記バーコードが示す情報をデコードするデコーダを更に備えることを特徴とするバーコードリーダ。
 (付記6) 付記1乃至5の何れか1に記載のバーコードリーダであって、
 前記読取り信号を表す1スキャン分の入力データにそれぞれ対応する1スキャン分の差分データであって、相互に隣接する入力データ間の差分を表す差分データに基づいて、1スキャンに含まれる複数のエッジを検出するエッジ検出部を更に備えることを特徴とするバーコードリーダ。
 (付記7) スキャン光が照射されたバーコードからの反射光の強度を示す読取り信号に含まれる複数のエッジの位置情報と極性情報に基づいて前記バーコードが示す情報を読み取るバーコード読取り方法であって、
 前記バーコードのクワイエットゾーンからの反射光の強度と前記クワイエットゾーンの隣接部からの反射光の強度との差により生ずる不要エッジの位置情報と極性情報を削除し、
 前記不要エッジの位置情報と極性情報の削除は、連続している2つの同一極性のエッジを検出したら、スキャンの端部に近い側のエッジを前記不要エッジとして、該不要エッジの位置情報と極性情報を削除することにより行われることを特徴とするバーコード読取り方法。
 (付記8) 付記7に記載のバーコード読取り方法であって、
 前記エッジの極性として、そのエッジに対応する変化開始点の極性を利用することを特徴とするバーコード読取り方法。
 (付記9) 付記7又は8に記載のバーコード読取り方法であって、
 スキャン端部と前記スキャン端部から見て最初の或る極性のエッジとの間に、他のエッジが無い場合には、前記スキャン端部を前記或る極性と反対の極性を有するエッジとすることを更に有することを特徴とするバーコード読取り方法。
 (付記10) 付記7乃至9の何れか1に記載のバーコード読取り方法であって、
 前記不要エッジの位置情報と極性情報の削除により不要エッジの位置情報と極性情報が削除された後に残った複数のエッジの位置情報に基づいて、各バーの幅データを求め、前記不要エッジの位置情報と極性情報の削除により不要エッジの位置情報と極性情報が削除された後に残った前記複数のエッジの極性情報に基づいて、各バーの二値レベルデータを求めることを特徴とするバーコード読取り方法。
 (付記11) 付記10に記載のバーコード読取り方法であって、
 前記各バーの幅データと前記各バーの二値レベルデータに基づいて、前記バーコードが示す情報をデコードすることを特徴とするバーコード読取り方法。
 (付記12) 付記7乃至11の何れか1に記載のバーコード読取り方法であって、
 前記読取り信号を表す1スキャン分の入力データにそれぞれ対応する1スキャン分の差分データであって、相互に隣接する入力データ間の差分を表す差分データに基づいて、1スキャンに含まれる複数のエッジを検出することを特徴とするバーコード読取り方法。
 (付記13) スキャン光が照射されたバーコードからの反射光の強度を示す読取り信号に含まれる複数のエッジの位置情報と極性情報に基づいて前記バーコードが示す情報を読み取るバーコードリーダとしてコンピュータを機能させるためのバーコード読取り用プログラムであって、
 前記バーコード読取り用プログラムは、コンピュータを、
 前記バーコードのクワイエットゾーンからの反射光の強度と前記クワイエットゾーンの隣接部からの反射光の強度との差により生ずる不要エッジの位置情報と極性情報を削除するエッジ削除部として機能させることを含み、
 前記エッジ削除部は、連続している2つの同一極性のエッジを検出したら、スキャンの端部に近い側のエッジを前記不要エッジとして、該不要エッジの位置情報と極性情報を削除することを特徴とするバーコード読み取り用プログラム。
 (付記14) 付記13に記載のバーコード読取り用プログラムであって、
 前記エッジの極性として、そのエッジに対応する変化開始点の極性を利用するように前記コンピュータを更に機能させることを特徴とするバーコード読取り用プログラム。
 (付記15) 付記13又は14に記載のバーコード読取り用プログラムであって、
 スキャン端部と前記スキャン端部から見て最初の或る極性のエッジとの間に、他のエッジが無い場合には、前記スキャン端部を前記或る極性と反対の極性を有するエッジとするように前記コンピュータを更に機能させることを特徴とするバーコード読取り用プログラム。
 (付記16) 付記13乃至15の何れか1に記載のバーコード読取り用プログラムであって、
 前記エッジ削除部により不要エッジの位置情報と極性情報が削除された後に残った複数のエッジの位置情報に基づいて、各バーの幅データを求め、前記エッジ削除部により不要エッジの位置情報と極性情報が削除された後に残った前記複数のエッジの極性情報に基づいて、各バーの二値レベルデータを求めるように前記コンピュータを更に機能させることを特徴とするバーコード読取り用プログラム。
 (付記17) 付記16に記載のバーコード読取り用プログラムであって、
 前記各バーの幅データと前記各バーの二値レベルデータに基づいて、前記バーコードが示す情報をデコードするように前記コンピュータを更に機能させることを特徴とするバーコード読取り用プログラム。
 (付記18) 付記13乃至17の何れか1に記載のバーコード読取り用プログラムであって、
 前記読取り信号を表す1スキャン分の入力データにそれぞれ対応する1スキャン分の差分データであって、相互に隣接する入力データ間の差分を表す差分データに基づいて、1スキャンに含まれる複数のエッジを検出するように前記コンピュータを更に機能させることを特徴とするバーコード読取り用プログラム。
 本発明は、バーコードを読み取るために利用することができる。

Claims (8)

  1.  スキャン光が照射されたバーコードからの反射光の強度を示す読取り信号に含まれる複数のエッジの位置情報と極性情報に基づいて前記バーコードが示す情報を読み取るバーコードリーダであって、
     前記バーコードのクワイエットゾーンからの反射光の強度と前記クワイエットゾーンの隣接部からの反射光の強度との差により生ずる不要エッジの位置情報と極性情報を削除するエッジ削除部を備え、
     前記エッジ削除部は、連続している2つの同一極性のエッジを検出したら、スキャンの端部に近い側のエッジを前記不要エッジとして、該不要エッジの位置情報と極性情報を削除することを特徴とするバーコードリーダ。
  2.  請求項1に記載のバーコードリーダであって、
     前記エッジの極性として、そのエッジに対応する変化開始点の極性を利用することを特徴とするバーコードリーダ。
  3.  請求項1又は2に記載のバーコードリーダであって、
     スキャン端部と前記スキャン端部から見て最初の或る極性のエッジとの間に、他のエッジが無い場合には、前記スキャン端部を前記或る極性と反対の極性を有するエッジとすることを特徴とするバーコードリーダ。
  4.  請求項1乃至3の何れか1に記載のバーコードリーダであって、
     前記エッジ削除部により不要エッジの位置情報と極性情報が削除された後に残った複数のエッジの位置情報に基づいて、各バーの幅データを求め、前記エッジ削除部により不要エッジの位置情報と極性情報が削除された後に残った前記複数のエッジの極性情報に基づいて、各バーの二値レベルデータを求めることを特徴とするバーコードリーダ。
  5.  請求項4に記載のバーコードリーダであって、
     前記各バーの幅データと前記各バーの二値レベルデータに基づいて、前記バーコードが示す情報をデコードするデコーダを更に備えることを特徴とするバーコードリーダ。
  6.  請求項1乃至5の何れか1に記載のバーコードリーダであって、
     前記読取り信号を表す1スキャン分の入力データにそれぞれ対応する1スキャン分の差分データであって、相互に隣接する入力データ間の差分を表す差分データに基づいて、1スキャンに含まれる複数のエッジを検出するエッジ検出部を更に備えることを特徴とするバーコードリーダ。
  7.  スキャン光が照射されたバーコードからの反射光の強度を示す読取り信号に含まれる複数のエッジの位置情報と極性情報に基づいて前記バーコードが示す情報を読み取るバーコード読取り方法であって、
     前記バーコードのクワイエットゾーンからの反射光の強度と前記クワイエットゾーンの隣接部からの反射光の強度との差により生ずる不要エッジの位置情報と極性情報を削除し、
     前記不要エッジの位置情報と極性情報の削除は、連続している2つの同一極性のエッジを検出したら、スキャンの端部に近い側のエッジを前記不要エッジとして、該不要エッジの位置情報と極性情報を削除することにより行われることを特徴とするバーコード読取り方法。
  8.  スキャン光が照射されたバーコードからの反射光の強度を示す読取り信号に含まれる複数のエッジの位置情報と極性情報に基づいて前記バーコードが示す情報を読み取るバーコードリーダとしてコンピュータを機能させるためのバーコード読取り用プログラムであって、
     前記バーコード読取り用プログラムは、コンピュータを、
     前記バーコードのクワイエットゾーンからの反射光の強度と前記クワイエットゾーンの隣接部からの反射光の強度との差により生ずる不要エッジの位置情報と極性情報を削除するエッジ削除部として機能させることを含み、
     前記エッジ削除部は、連続している2つの同一極性のエッジを検出したら、スキャンの端部に近い側のエッジを前記不要エッジとして、該不要エッジの位置情報と極性情報を削除することを特徴とするバーコード読み取り用プログラム。
PCT/JP2013/081015 2012-12-12 2013-11-18 バーコードリーダ、バーコード読取り方法及びバーコード読取り用プログラム WO2014091880A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US14/427,681 US9336424B2 (en) 2012-12-12 2013-11-18 Barcode reader, barcode reading method, and barcode reading program
CN201380047281.XA CN104704509B (zh) 2012-12-12 2013-11-18 条形码读取器、条形码读取方法、以及条形码读取程序

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2012271513A JP5424369B1 (ja) 2012-12-12 2012-12-12 バーコードリーダ、バーコード読取り方法及びバーコード読取り用プログラム
JP2012-271513 2012-12-12

Publications (1)

Publication Number Publication Date
WO2014091880A1 true WO2014091880A1 (ja) 2014-06-19

Family

ID=50287292

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/081015 WO2014091880A1 (ja) 2012-12-12 2013-11-18 バーコードリーダ、バーコード読取り方法及びバーコード読取り用プログラム

Country Status (5)

Country Link
US (1) US9336424B2 (ja)
JP (1) JP5424369B1 (ja)
CN (1) CN104704509B (ja)
MY (1) MY158868A (ja)
WO (1) WO2014091880A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111830780B (zh) * 2020-06-30 2023-11-03 华虹半导体(无锡)有限公司 光罩和光罩信息读取方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008140255A (ja) * 2006-12-04 2008-06-19 Olympus Corp バーコード読取装置およびバーコード読取方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4125765A (en) * 1977-06-27 1978-11-14 International Business Machines Corporation Label find method and circuit
JP2853933B2 (ja) 1992-04-03 1999-02-03 日本電気精器株式会社 記録票読取装置の信号処理方法
JP3475529B2 (ja) 1994-11-25 2003-12-08 株式会社デンソー 光学情報読み取り装置の信号処理装置
US6371373B1 (en) * 1999-05-25 2002-04-16 Matsushita Electric Industrial Co., Ltd. Method for reading a two-dimensional barcode
JP2001014421A (ja) * 1999-06-28 2001-01-19 Matsushita Electric Ind Co Ltd バーコード読み取り装置
US6739513B1 (en) 2000-09-05 2004-05-25 Rjs Systems International Box detector in barcode environment
KR100667778B1 (ko) 2004-11-20 2007-01-11 삼성전자주식회사 바코드 판독 방법 및 장치
US8024691B2 (en) * 2006-09-28 2011-09-20 Mcgill University Automata unit, a tool for designing checker circuitry and a method of manufacturing hardware circuitry incorporating checker circuitry
JP5035042B2 (ja) 2007-08-29 2012-09-26 株式会社デンソーウェーブ 光学的情報読取装置
US8822255B2 (en) * 2009-09-04 2014-09-02 Ulvac, Inc. Method of manufacturing a solar cell module and apparatus of manufacturing a solar cell module
JP5224398B2 (ja) 2009-11-11 2013-07-03 Necインフロンティア株式会社 バーコードリーダおよびラベル貼付システム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008140255A (ja) * 2006-12-04 2008-06-19 Olympus Corp バーコード読取装置およびバーコード読取方法

Also Published As

Publication number Publication date
CN104704509A (zh) 2015-06-10
US20150278568A1 (en) 2015-10-01
JP2014115953A (ja) 2014-06-26
MY158868A (en) 2016-11-16
CN104704509B (zh) 2016-07-06
US9336424B2 (en) 2016-05-10
JP5424369B1 (ja) 2014-02-26

Similar Documents

Publication Publication Date Title
US7337970B2 (en) Barcode scanner decoding
JP2738098B2 (ja) 光走査装置
KR100920764B1 (ko) 고밀도의 광학 심볼을 2단계로 해독하기 위한 장치 및 방법
EP1836646B1 (en) Bar code scanner decoding
JP2007213359A (ja) 二次元コード検出システムおよび二次元コード検出プログラム
WO2014091880A1 (ja) バーコードリーダ、バーコード読取り方法及びバーコード読取り用プログラム
US7506816B2 (en) System and method for determining a threshold for edge detection based on an undifferentiated equalized scan line signal
US9262665B2 (en) Decoding method and decoding processing device
US7093763B1 (en) Laser scanner having analog digitizer with increased noise immunity
JP5489247B2 (ja) バーコード読取装置及び方法
JP4188104B2 (ja) バーコード読取装置
JP2007034546A (ja) 光学読取装置
JP5896488B2 (ja) バーコード読取装置、バーコード読取方法及びバーコード読取プログラム
JP5515012B2 (ja) バーコード情報読取方法及びバーコード情報読取装置
JP6083829B2 (ja) バーコード読取装置、バーコード読取方法及びバーコード読取プログラム
JP2009123088A (ja) データコード読取装置及びその方法
JP5349504B2 (ja) 光学的情報読取装置及び光学的情報読取方法
JP2011028414A (ja) 光学的情報読取装置
JP4107237B2 (ja) 光学的情報読取装置の境界位置特定方法
JP5441200B1 (ja) バーコード読取装置及びバーコード読取方法
JP5453594B2 (ja) シンボル情報読取装置及びシンボル情報読取方法
Hu et al. A low cost barcode recognition method
JPH0728924A (ja) Idマーク読み取り装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13863176

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 14427681

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: IDP00201501497

Country of ref document: ID

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13863176

Country of ref document: EP

Kind code of ref document: A1