EP3567513A1 - Optical information reading apparatus and optical information reading method - Google Patents

Optical information reading apparatus and optical information reading method Download PDF

Info

Publication number
EP3567513A1
EP3567513A1 EP19160714.2A EP19160714A EP3567513A1 EP 3567513 A1 EP3567513 A1 EP 3567513A1 EP 19160714 A EP19160714 A EP 19160714A EP 3567513 A1 EP3567513 A1 EP 3567513A1
Authority
EP
European Patent Office
Prior art keywords
reading
code
contrast
optical
time
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.)
Granted
Application number
EP19160714.2A
Other languages
German (de)
French (fr)
Other versions
EP3567513B1 (en
Inventor
Mitsuaki Hirono
Shuhei ITAMOTO
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.)
Optoelectronics Co Ltd
Original Assignee
Optoelectronics 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 Optoelectronics Co Ltd filed Critical Optoelectronics Co Ltd
Priority to EP21197063.7A priority Critical patent/EP3944130A1/en
Publication of EP3567513A1 publication Critical patent/EP3567513A1/en
Application granted granted Critical
Publication of EP3567513B1 publication Critical patent/EP3567513B1/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
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/0095Testing the sensing arrangement, e.g. testing if a magnetic card reader, bar code reader, RFID interrogator or smart card reader functions properly
    • 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/1473Methods for optical code recognition the method including quality enhancement steps error correction
    • 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
    • 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
    • G06K7/10831Arrangement of optical elements, e.g. lenses, mirrors, prisms
    • 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/1408Methods for optical code recognition the method being specifically adapted for the type of code
    • G06K7/14172D bar codes
    • 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/1439Methods for optical code recognition including a method step for retrieval of the optical code
    • G06K7/1447Methods for optical code recognition including a method step for retrieval of the optical code extracting optical codes from image or text carrying said optical code
    • 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 an optical information reading apparatus and an optical information reading method that perform an optical code reading process and a stability determination process.
  • the one-dimensional code which is also referred to as bar code, linear code, or the like, can express information, such as alphanumeric characters, for example, a universal product code through its bars and spaces made using striations with different widths linearly arranged adjacent to each other.
  • the two-dimensional code which is also referred to as two-dimensional symbol or the like, is a symbol in which information are arranged vertically and horizontally so that high information density is achieved, thereby storing a larger amount of information than the one-dimensional code.
  • the QR code registered trademark
  • optical information reading apparatuses are widely used in different fields.
  • an optical information reading apparatus is attached to a movable body which is called a vehicle in a transfer system.
  • the optical information reading apparatus moves with the vehicle and reads an optical code attached to a predetermined position (station), and upon success of reading, outputs code information to the processor of the vehicle.
  • the code information acts as a trigger for vehicle's deceleration or stop.
  • the stability of reading the optical code decreases due to contamination on the code label, print quality deterioration, contamination on the reading window of the optical information reading apparatus, or the like.
  • PMI predictive maintenance information
  • the optical information reading apparatus notifies the user of the fact that the reading stability is decreasing at the stage where the optical code is readable, the user can take a necessary countermeasure before the optical information reading apparatus can no longer read the optical code, thereby avoiding the situation where the optical code unintentionally becomes unreadable.
  • the present invention which has been made in view of this, provides an optical information reading apparatus and an optical information reading method in which a reading stability determining process can be performed accurately.
  • An optical information reading apparatus includes: an imaging section that performs imaging; and a control section that reads an optical code contained in image data taken by the imaging section and outputs a signal upon success of reading of the optical code, in which the control section: calculates a first contrast at the time of teaching and a second contrast at the time of reading success, and determines reading stability based on a decrease rate of the second contrast with respect to the first contrast.
  • An optical information reading method includes: performing imaging in an imaging section; reading an optical code contained in image data taken by the imaging section; outputting a signal upon success of reading of the optical code; calculating a first contrast at the time of teaching and a second contrast at the time of reading success; and determining reading stability based on a decrease rate of the second contrast with respect to the first contrast.
  • a reading stability determining process can be performed accurately.
  • a code scanner is used as one example of an optical information reading apparatus.
  • a code scanner is attached to a vehicle (not shown in the drawings) that runs along a path on the ceiling or the like of a factory to carry parts and the like, and is used to read an optical code attached to a predetermined position.
  • a vehicle may be referred to as “shuttle”, “car carriage”, “travel cart”, “movable body”, or the like.
  • the vehicle is wirelessly connected to a host computer (not shown in the drawings) that controls the transfer system.
  • code scanner 100 performs a process for reading a two-dimensional code and a reading stability determining process.
  • Code scanner 100 consists of optical head section 110 and decoder section 120.
  • Optical head section 110 includes lens 111 and complementary metal oxide semiconductor (CMOS) image sensor (hereinafter simply referred to as "CMOS") 112 which is one example of solid-state image sensing device.
  • CMOS complementary metal oxide semiconductor
  • Optical head section 110 may further include light emitting diode (LED) 113 which is one example of light source.
  • LED light emitting diode
  • Lens 111 is, for example, an optical lens which takes an image of an object to be read including an optical code into optical head section 110, and forms an image on the imaging area of CMOS 112.
  • CMOS 112 images the object to be read from light reflected off the object to be read taken by the lens 111, generates image data, which is expressed by a digital brightness, from the analog image signal obtained by imaging, and outputs it to decoder section 120.
  • the CMOS 112 can pick up a clear image.
  • Decoder section 120 includes first input/output interface (first I/O) 121, processor 122, random access memory (RAM) 123, read only memory (ROM) 124, and second input/output interface (second I/O) 125.
  • first I/O first input/output interface
  • processor 122 random access memory
  • RAM random access memory
  • ROM read only memory
  • second I/O second input/output interface
  • First I/O 121 is an interface for data communication between optical head section 110 and decoder section 120 and image data output from CMOS 112 is input to processor 122 through first I/O 121.
  • Processor 122 controls CMOS 112 and LED 113 and performs a filtering process for removing noise in image data input from CMOS 112 through first I/O 121, a data processing process for preparation of decoding, a process for decoding an optical code contained in the processed image data, and the like.
  • the decoding process may use means described in Japanese Patent Application Laid-Open No. 2005-25417 , for example, or other known arbitrary means.
  • processor 122 determines reading stability. Subsequently, processor 122 outputs code information, which is the optical code reading result, and PMI, which represents the reading stability determination result, to the processor of the vehicle through second I/O 125.
  • RAM 123 is a storage means that temporarily stores image data input from CMOS 112, is used as a work memory during a data processing process for preparation for decoding, and stores other data needed for the operation of code scanner 100 or other data that dynamically changes. Note that a part of RAM 123 may be nonvolatile.
  • ROM 124 is a nonvolatile storage means that stores, for example, a program for actuating code scanner 100.
  • Second I/O 125 is an interface for data communication between processor 122 and the processor of the vehicle, and decoded data information output from processor 122 is input to the processor of the vehicle through second I/O 125.
  • Embodiment 1 The flow of a process in processor 122 in code scanner 100 of Embodiment 1 will be described with reference to FIG. 2 . Note that, in Embodiment 1, before the start of operation of a transfer system, at the time of teaching for making, for example, settings of thresholds related to a code scanner 100, a two-dimensional code reading process and calculation of contrast C T are performed.
  • Processor 122 is standby until the trigger signal is turned on or a reading start request is input (ST 101: NO).
  • processor 122 turns on LED 113 (ST 102), retrieves image data input from CMOS 112 (ST 103), and turns off LED 113 (ST 104).
  • processor 122 binarizes the intensity of reflected light from the two-dimensional code contained in the retrieved image data, and decodes the binarized data and converts it to code information of several digits to several hundreds of digits, thereby decrypting the code information (ST 105).
  • the position of the code in image data may be contained in code information.
  • Processor 122 determines whether or not code information has been decrypted (ST 106). When the code information has been successfully decrypted (ST 106: YES), processor 122 outputs a completion notification signal indicating the completion of the reading process to the processor of the vehicle (ST 107).
  • processor 122 determines reading stability (ST 108), outputs predetermined data (code information, code position information, PMI, or the like) to the processor of the vehicle (ST 109), and terminates the process.
  • predetermined data code information, code position information, PMI, or the like
  • the processor of the vehicle recognizes the position of the vehicle based on the code information, and controls the vehicle so that it decelerates and stops in a predetermined position, for example.
  • code information and PMI are transferred from the vehicle to the host computer and are shown on the display of the host computer. Note that the details of the reading stability determining process will be described later.
  • ST 110 when the trigger signal is not off and the reading stop request is not input (ST 110: NO), the flow returns to ST 102.
  • processor 122 outputs an abnormality notification signal indicating the fact that a process for reading the two-dimensional code has not been completed, that is, the occurrence of an abnormality to the processor of the vehicle (ST 111), and terminates the process.
  • the processor of the vehicle controls the vehicle to bring it to an emergency stop, for example.
  • Embodiment 1 The flow of a process in the processor of the vehicle mounted with code scanner 100 of Embodiment 1 will be described with reference to FIG. 3 .
  • the vehicle is moving at high speed at the start point of the flow.
  • the processor of the vehicle is standby until input of predetermined data containing code information, code position information, and PMI from code scanner 100 (ST 131: NO).
  • predetermined data containing code information, code position information, and PMI from code scanner 100
  • ST 131: NO When the predetermined data is input (ST 131: YES) for the first time (ST 132: YES), the processor decelerates the vehicle (ST 133). The flow returns to ST 131.
  • the processor determines whether or not the two-dimensional code is located within the central portion of the screen (ST 134).
  • Embodiment 1 the details of the reading stability determining process of Embodiment 1 (ST 108 in FIG. 2 ) will be described with reference to FIG. 4 .
  • caution threshold L1 and warning threshold L2 L1 ⁇ L2 are set in advance.
  • processor 122 calculates contrast CS of the two-dimensional code at a reading success (ST 151).
  • processor 122 calculates a decrease rate ((C T - C S )/C T ) of contrast C S with respect to contrast C T calculated at the time of teaching (ST 152).
  • processor 122 compares the decrease rate with caution threshold L1 and warning threshold L2 (ST 153 and ST 155).
  • processor 122 determines that the reading stability is at a normal level and sets the simplified character of PMI to "A" (ST 154). In contrast, when the decrease rate is greater than caution threshold L1 (ST 153: NO) and less than or equal to warning threshold L2 (ST 155: YES), processor 122 determines that the reading stability is at a caution level and sets the simplified character of PMI to "B" (ST 156). When the decrease rate is greater than warning threshold L2 (ST 155: NO), processor 122 determines that the reading stability is at a warning level and sets the simplified character of PMI to "C" (ST 157).
  • code information which is a reading result related to the two-dimensional code
  • PMI which is a determination result related to reading stability
  • Embodiment 1 is applicable to reading of one-dimensional codes.
  • Example processes in code scanner 100 and a vehicle according to Embodiment 1 will be described with reference to FIG. 5 .
  • the X coordinate of a point within a central portion is "greater than or equal to 250 and less than 350".
  • Code scanner 100 attached to the vehicle moves along the movement of the vehicle (the direction of A in FIG. 5 ).
  • code scanner 100 turns on LED 113, repeats to attempt a process for reading two-dimensional code 400, and determines a success or failure of reading two-dimensional code 400 each time.
  • two-dimensional code 400 does not exist in screen F1 at time t 1 and screen F2 at time t 2 , and code scanner 100 therefore determines that code information has been not decrypted (ST 106: NO in FIG. 2 ). In this case, data is not output from code scanner 100 to the vehicle, the processor of the vehicle does not perform speed control (ST 131: NO in FIG. 3 ). Consequently, the high speed of the vehicle is maintained.
  • code scanner 100 determines that a success of reading two-dimensional code 400 has been achieved.
  • time t 3 corresponds to the time of the first reading success.
  • code scanner 100 performs a reading stability determining process (ST 108 in FIG. 2 ), and outputs data including code information, code position information, PMI, and the like to the vehicle (ST 109 in FIG. 2 ).
  • code information is "24256”
  • PMI is "B”. Since this is the first data input, the processor of the vehicle decelerates the vehicle (ST 132: YES and ST 133 in FIG. 3 ).
  • code scanner 100 determines that a success of reading two-dimensional code 400 has been achieved. In this case also, code scanner 100 performs a reading stability determining process and outputs data to the vehicle.
  • code information is "24256”
  • PMI is "A”. Since this is not the first data input, the processor of the vehicle determines whether or not the two-dimensional code is located within the central portion of the screen (ST 134 of FIG. 3 ).
  • screen F4 the two-dimensional code is out of the central portion of the screen (ST 134: NO in FIG. 3 ), the processor of the vehicle does not perform additional speed control. Consequently, the deceleration of the vehicle is maintained.
  • code scanner 100 determines that a success of reading two-dimensional code 400 has been achieved. In this case also, code scanner 100 performs a reading stability determining process and outputs data to the vehicle.
  • code information is "24256”
  • PMI is "A”. Since this is not the first data input, the processor of the vehicle determines whether or not the two-dimensional code is located within the central portion of the screen.
  • screen F5 the two-dimensional code is within the central portion of the screen (ST 134: YES in FIG. 3 ), the processor of the vehicle brings the vehicle to a stop (ST 134: YES, ST 135 in FIG. 3 ).
  • reading stability is determined based on a decrease rate (relative evaluation) of contrast at the time of teaching and reading success.
  • determination can be made considering the environment in which reading is performed, so that stability can be determined more accurately than with evaluation (absolute evaluation) based on a comparison between fixed thresholds and the contrast at the time of reading success.
  • code scanner 100 may correct contrast C T calculated at the time of teaching on the basis of the difference between the positions of the optical code in the image data at the time of teaching and the time of reading success, and calculate a decrease rate ((C T - C S )/C T ) of contrast C S with respect to contrast C T obtained by the correction.
  • the brightness of image data such as an optical code
  • the brightness of image data also varies depending on the distance (depth) between code scanner 100 and the optical code, that is, the size of the optical code in the screen.
  • the larger the gap between the size of an optical code at the time of teaching and the size of the optical code at the time of reading success the lower the accuracy of the contrast decrease rate.
  • code scanner 100 may correct contrast C T calculated at the time of teaching on the basis of the difference between the sizes of the optical code in the image data at the time of teaching and the time of reading success, and calculate a decrease rate ((C T - C S )/C T ) of contrast C S with respect to contrast C T obtained by the correction.
  • a variation in brightness dependent on the distance (depth) of the screen can be corrected, thereby improving the accuracy of determining reading stability.
  • a laser telemeter may be used to measure depths.
  • Embodiment 2 a reading stability determining process different from that described in Embodiment 1 will be described. Note that the configuration and process flow of code scanner 100 in Embodiment 2 are the same as those in Embodiment 1 and their description will therefore be omitted.
  • Two-dimensional codes are subjected to error correction processing, such as Reed-Solomon coding, at the time of code patterning so that they are readable even if a portion of the cell patterns of the code is damaged.
  • error correction processing such as Reed-Solomon coding
  • code scanner 100 can read all code information even if a portion of the two-dimensional code is damaged.
  • code scanner 100 can recognize the number of erroneous cell patterns so that error correction can be performed. For this reason, in Embodiment 2, a reading stability determining process is performed based on the correction level.
  • processor 122 counts the number of erroneous cell patterns CP E (ST 251).
  • processor 122 calculates a correction level (CP E /CP T ) which is the ratio of the number of erroneous cell patterns CP E to the maximum number of correctable cell patterns CP T related to the two-dimensional code (ST 252). Note that CP T may be the total number of cell patterns.
  • processor 122 compares the correction level with caution threshold L1 and warning threshold L2 (ST 253 and ST 255).
  • processor 122 determines that the reading stability is at a normal level and sets the simplified character of PMI to "A" (ST 254). In contrast, when the correction level is greater than caution threshold L1 (ST 253: NO) and less than or equal to warning threshold L2 (ST 255: YES), processor 122 determines that the reading stability is at a caution level and sets the simplified character of PMI to "B" (ST 256). When the correction level is greater than warning threshold L2 (ST 255: NO), processor 122 determines that the reading stability is at a warning level and sets the simplified character of PMI to "C" (ST 257).
  • reading stability is determined depending on the correction level of the two-dimensional code. Hence, reading stability can be determined based on the evaluation of the entire pattern of the two-dimensional code, so that stability can be determined more accurately.
  • Embodiment 3 a reading stability determining process that is different from that described in Embodiment 1 will be described. Note that the configuration and process flow of code scanner 100 in Embodiment 3 are the same as those in Embodiment 1 and their description will therefore be omitted.
  • code scanner 100 can decode the binarized data to obtain correct code information. Further, code scanner 100 converts the obtained code information back to binarized data and can recognize the number of erroneous dots through binarization determination. In view of this, in Embodiment 3, a reading stability determining process is performed based on the number of erroneous dots recognized through binarization determination.
  • Embodiment 3 The details of the reading stability determining process of Embodiment 3 will be described with reference to FIG. 9 . Note that in Embodiment 3, for RAM 124, caution threshold L1 and warning threshold L2 (L1 ⁇ L2) are set in advance.
  • processor 122 counts the number of erroneous dots D E through binarization determination (ST 351).
  • processor 122 calculates a damage rate (D E /D T ) which is the ratio of the number of erroneous dots D E counted through binarization determination to the total number of dots D T of the two-dimensional code (ST 352).
  • processor 122 compares the damage rate with caution threshold L1 and warning threshold L2 (ST 353 and ST 355).
  • processor 122 determines that the reading stability is at a normal level and sets the simplified character of PMI to "A" (ST 354). In contrast, when the damage rate is greater than caution threshold L1 (ST 353: NO) and less than or equal to warning threshold L2 (ST 355: YES), processor 122 determines that the reading stability is at a caution level and sets the simplified character of PMI to "B" (ST 356). When the damage rate is greater than warning threshold L2 (ST 355: NO), processor 122 determines that the reading stability is at a warning level and sets the simplified character of PMI to "C" (ST 357).
  • Embodiment 3 is also applicable to reading of a one-dimensional code.
  • reading stability is determined depending on the damage rate of the optical code. Hence, reading stability can be determined based on the evaluation of the entire pattern of the optical code, so that stability can be determined more accurately.
  • Embodiments 1 to 3 are performed independently of each other. In the present invention, two or more of them may be used in combination to determine reading stability. In this case, the reliability of reading stability can be enhanced.
  • processor 122 determines the caution level which is the worst result among determination results to be the final reading stability and sets the simplified character of PMI to "B".
  • reading stability is evaluated in three steps according to the magnitude relationship with two thresholds, this is not necessarily the case in the present invention: reading stability may be evaluated in two steps or four or more steps.
  • the optical information reading apparatus may determine reading stability related to a plurality of optical codes, and when reading stability related to all the optical codes are decreased, determine that optical information reading apparatus itself has deteriorated, and transmit a signal for notifying warning to the host computer through the vehicle.
  • the host computer may collect PMI from the optical information reading apparatus of each vehicle, and when a plurality of pieces of PMI for one optical code is at a caution level or warning level, determine that the optical code has deteriorated, and may issue a warning and notify the position of that optical code to the administrator.
  • the host computer may collect a plurality of pieces of PMI for one optical code from the optical information reading apparatus of one vehicle, and when the percentage of caution level or warning level is greater than or equal to a predetermined value, determine that the optical code has deteriorated, and may issue a warning and notify the position of that optical code to the administrator.
  • the present invention is suitable for use in an optical information reading apparatus and an optical information reading method that perform an optical code reading process and a stability determination process.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Electromagnetism (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Toxicology (AREA)
  • Quality & Reliability (AREA)
  • Character Discrimination (AREA)

Abstract

An optical code reading process and a reading stability determining process are performed while suppressing an increase in the cost of a transfer system and avoiding a decrease in work efficiency. CMOS (112) performs imaging. Processor (122) reads an optical code contained in image data taken by CMOS (112) and outputs a signal upon success of reading of the optical code. Further, processor (122) calculates a first contrast at the time of teaching and a second contrast at the time of reading success, and determines reading stability based on a decrease rate of the second contrast with respect to the first contrast.

Description

    Technical Field
  • The present invention relates to an optical information reading apparatus and an optical information reading method that perform an optical code reading process and a stability determination process.
  • Background Art
  • Today, in a wide range of fields of product management, position detection, and the like, one-dimensional codes, two-dimensional codes, and other optical codes written with information expressed by symbols having reflectance different from that of the periphery are used. The one-dimensional code, which is also referred to as bar code, linear code, or the like, can express information, such as alphanumeric characters, for example, a universal product code through its bars and spaces made using striations with different widths linearly arranged adjacent to each other. The two-dimensional code, which is also referred to as two-dimensional symbol or the like, is a symbol in which information are arranged vertically and horizontally so that high information density is achieved, thereby storing a larger amount of information than the one-dimensional code. Note that the QR code (registered trademark) is a type of two-dimensional code.
  • To read optical codes, such as one-dimensional codes or two-dimensional codes, a code scanner or other optical information reading apparatuses is used. Optical information reading apparatuses are widely used in different fields. For example, an optical information reading apparatus is attached to a movable body which is called a vehicle in a transfer system. In this case, the optical information reading apparatus moves with the vehicle and reads an optical code attached to a predetermined position (station), and upon success of reading, outputs code information to the processor of the vehicle. The code information acts as a trigger for vehicle's deceleration or stop.
  • In use of the optical information reading apparatus, the stability of reading the optical code decreases due to contamination on the code label, print quality deterioration, contamination on the reading window of the optical information reading apparatus, or the like. Conventionally, a process is performed for measuring reading stability and outputting predictive maintenance information (PMI) indicating reading stability (see PTL 1).
  • Since the optical information reading apparatus notifies the user of the fact that the reading stability is decreasing at the stage where the optical code is readable, the user can take a necessary countermeasure before the optical information reading apparatus can no longer read the optical code, thereby avoiding the situation where the optical code unintentionally becomes unreadable.
  • Citation List Patent Literature
  • PTL 1
    Japanese Patent Application Laid-Open No. 2004-54645
  • Summary of Invention Technical Problem
  • In recent years, more accurate determination of reading stability has been required.
  • The present invention, which has been made in view of this, provides an optical information reading apparatus and an optical information reading method in which a reading stability determining process can be performed accurately.
  • Solution to Problem
  • An optical information reading apparatus according to the present invention includes: an imaging section that performs imaging; and a control section that reads an optical code contained in image data taken by the imaging section and outputs a signal upon success of reading of the optical code, in which the control section: calculates a first contrast at the time of teaching and a second contrast at the time of reading success, and determines reading stability based on a decrease rate of the second contrast with respect to the first contrast.
  • An optical information reading method according to the present invention includes: performing imaging in an imaging section; reading an optical code contained in image data taken by the imaging section; outputting a signal upon success of reading of the optical code; calculating a first contrast at the time of teaching and a second contrast at the time of reading success; and determining reading stability based on a decrease rate of the second contrast with respect to the first contrast.
  • Advantageous Effects of Invention
  • According to the present invention, a reading stability determining process can be performed accurately.
  • Brief Description of Drawings
    • FIG. 1 is a diagram showing a schematic hardware configuration of a code scanner according to Embodiment 1 of the present invention;
    • FIG. 2 is a flow diagram showing the flow of a process in a processor in the code scanner according to Embodiment 1 of the present invention;
    • FIG. 3 is a flow diagram showing the flow of a process in a processor of a vehicle according to Embodiment 1 of the present invention;
    • FIG. 4 is a flow diagram showing the flow of a reading stability determining process in the code scanner according to Embodiment 1 of the present invention;
    • FIG. 5 is a diagram for explaining a concrete example of a process in the code scanner according to Embodiment 1 of the present invention;
    • FIG. 6 is a diagram for explaining the fact that brightness related to image data changes depending on the position of the screen;
    • FIG. 7 is a diagram for explaining the fact that brightness related to image data changes depending on the distance (depth);
    • FIG. 8 is a flow diagram showing the flow of a reading stability determining process in a code scanner according to Embodiment 2 of the present invention; and
    • FIG. 9 is a flow diagram showing the flow of a reading stability determining process in a code scanner according to Embodiment 3 of the present invention.
    Description of Embodiments
  • Embodiments of the present invention will be described in detail below with reference to the drawings. Note that in each embodiment, a code scanner is used as one example of an optical information reading apparatus. In addition, in each embodiment, a code scanner is attached to a vehicle (not shown in the drawings) that runs along a path on the ceiling or the like of a factory to carry parts and the like, and is used to read an optical code attached to a predetermined position. A vehicle may be referred to as "shuttle", "car carriage", "travel cart", "movable body", or the like. Note that the vehicle is wirelessly connected to a host computer (not shown in the drawings) that controls the transfer system.
  • (Embodiment 1)
  • In Embodiment 1, code scanner 100 performs a process for reading a two-dimensional code and a reading stability determining process.
  • <Configuration of code scanner>
  • First, the schematic hardware configuration of code scanner 100 of Embodiment 1 will be described with reference to FIG. 1. Code scanner 100 consists of optical head section 110 and decoder section 120.
  • Optical head section 110 includes lens 111 and complementary metal oxide semiconductor (CMOS) image sensor (hereinafter simply referred to as "CMOS") 112 which is one example of solid-state image sensing device. Optical head section 110 may further include light emitting diode (LED) 113 which is one example of light source.
  • Lens 111 is, for example, an optical lens which takes an image of an object to be read including an optical code into optical head section 110, and forms an image on the imaging area of CMOS 112.
  • CMOS 112 images the object to be read from light reflected off the object to be read taken by the lens 111, generates image data, which is expressed by a digital brightness, from the analog image signal obtained by imaging, and outputs it to decoder section 120.
  • LED 113 emits light to illuminate the object to be read. Hence, the CMOS 112 can pick up a clear image.
  • Decoder section 120 includes first input/output interface (first I/O) 121, processor 122, random access memory (RAM) 123, read only memory (ROM) 124, and second input/output interface (second I/O) 125.
  • First I/O 121 is an interface for data communication between optical head section 110 and decoder section 120 and image data output from CMOS 112 is input to processor 122 through first I/O 121.
  • Processor 122 controls CMOS 112 and LED 113 and performs a filtering process for removing noise in image data input from CMOS 112 through first I/O 121, a data processing process for preparation of decoding, a process for decoding an optical code contained in the processed image data, and the like. To be specific, the decoding process may use means described in Japanese Patent Application Laid-Open No. 2005-25417 , for example, or other known arbitrary means.
  • Further, processor 122 determines reading stability. Subsequently, processor 122 outputs code information, which is the optical code reading result, and PMI, which represents the reading stability determination result, to the processor of the vehicle through second I/O 125.
  • RAM 123 is a storage means that temporarily stores image data input from CMOS 112, is used as a work memory during a data processing process for preparation for decoding, and stores other data needed for the operation of code scanner 100 or other data that dynamically changes. Note that a part of RAM 123 may be nonvolatile.
  • ROM 124 is a nonvolatile storage means that stores, for example, a program for actuating code scanner 100.
  • Second I/O 125 is an interface for data communication between processor 122 and the processor of the vehicle, and decoded data information output from processor 122 is input to the processor of the vehicle through second I/O 125.
  • <Process flow in code scanner>
  • The flow of a process in processor 122 in code scanner 100 of Embodiment 1 will be described with reference to FIG. 2. Note that, in Embodiment 1, before the start of operation of a transfer system, at the time of teaching for making, for example, settings of thresholds related to a code scanner 100, a two-dimensional code reading process and calculation of contrast CT are performed.
  • Processor 122 is standby until the trigger signal is turned on or a reading start request is input (ST 101: NO). When the trigger signal is turned on or the reading start request is input (ST 101: YES), processor 122 turns on LED 113 (ST 102), retrieves image data input from CMOS 112 (ST 103), and turns off LED 113 (ST 104).
  • Subsequently, processor 122 binarizes the intensity of reflected light from the two-dimensional code contained in the retrieved image data, and decodes the binarized data and converts it to code information of several digits to several hundreds of digits, thereby decrypting the code information (ST 105). Note that, in this embodiment, the position of the code in image data may be contained in code information.
  • Processor 122 determines whether or not code information has been decrypted (ST 106). When the code information has been successfully decrypted (ST 106: YES), processor 122 outputs a completion notification signal indicating the completion of the reading process to the processor of the vehicle (ST 107).
  • After ST 107, processor 122 determines reading stability (ST 108), outputs predetermined data (code information, code position information, PMI, or the like) to the processor of the vehicle (ST 109), and terminates the process. The processor of the vehicle recognizes the position of the vehicle based on the code information, and controls the vehicle so that it decelerates and stops in a predetermined position, for example. In addition, code information and PMI are transferred from the vehicle to the host computer and are shown on the display of the host computer. Note that the details of the reading stability determining process will be described later.
  • When processor 122 has not successfully decrypted the code information upon the above-described determination in ST 106 (ST 106: NO), the flow proceeds to ST 110.
  • In ST 110, when the trigger signal is not off and the reading stop request is not input (ST 110: NO), the flow returns to ST 102. In contrast, when the trigger signal is turned off or a reading stop request is input (ST 110: YES), processor 122 outputs an abnormality notification signal indicating the fact that a process for reading the two-dimensional code has not been completed, that is, the occurrence of an abnormality to the processor of the vehicle (ST 111), and terminates the process. Upon reception of the abnormality notification signal, the processor of the vehicle controls the vehicle to bring it to an emergency stop, for example.
  • <Process flow in vehicle>
  • The flow of a process in the processor of the vehicle mounted with code scanner 100 of Embodiment 1 will be described with reference to FIG. 3. Suppose that, in Embodiment 1, the vehicle is moving at high speed at the start point of the flow.
  • The processor of the vehicle is standby until input of predetermined data containing code information, code position information, and PMI from code scanner 100 (ST 131: NO). When the predetermined data is input (ST 131: YES) for the first time (ST 132: YES), the processor decelerates the vehicle (ST 133). The flow returns to ST 131.
  • In addition, when the predetermined data is input (ST 131: YES) not for the first time (ST 132: NO), the processor determines whether or not the two-dimensional code is located within the central portion of the screen (ST 134).
  • When the two-dimensional code is out of the central portion of the screen (ST 134: NO), the flow returns to ST 131. In contrast, when the two-dimensional code is located within the central portion of the screen (ST 134: YES), the vehicle is stopped (ST 135), and the process is terminated.
  • <Reading stability determining process>
  • Next, the details of the reading stability determining process of Embodiment 1 (ST 108 in FIG. 2) will be described with reference to FIG. 4. Note that in Embodiment 1, for RAM 124, caution threshold L1 and warning threshold L2 (L1 < L2) are set in advance.
  • First, processor 122 calculates contrast CS of the two-dimensional code at a reading success (ST 151).
  • Next, processor 122 calculates a decrease rate ((CT - CS)/CT) of contrast CS with respect to contrast CT calculated at the time of teaching (ST 152).
  • Next, processor 122 compares the decrease rate with caution threshold L1 and warning threshold L2 (ST 153 and ST 155).
  • When the decrease rate is less than or equal to caution threshold L1 (ST 153: YES), processor 122 determines that the reading stability is at a normal level and sets the simplified character of PMI to "A" (ST 154). In contrast, when the decrease rate is greater than caution threshold L1 (ST 153: NO) and less than or equal to warning threshold L2 (ST 155: YES), processor 122 determines that the reading stability is at a caution level and sets the simplified character of PMI to "B" (ST 156). When the decrease rate is greater than warning threshold L2 (ST 155: NO), processor 122 determines that the reading stability is at a warning level and sets the simplified character of PMI to "C" (ST 157).
  • After processor 122 makes determination related to reading stability, in ST 109 in FIG. 2, code information, which is a reading result related to the two-dimensional code, and PMI, which is a determination result related to reading stability, are output to the processor of the vehicle.
  • Although the above description has been made assuming that PMI is a simplified character, this is not necessarily the case in Embodiment 1: for example, a decrease rate ((CT - CS)/CT) may be used as PMI. In this case, the necessity of the above-described process from ST 153 to ST 157 in FIG. 4 is eliminated.
  • Further, although reading of a two-dimensional code has been described above as an example, Embodiment 1 is applicable to reading of one-dimensional codes.
  • <Example processes in code scanner and vehicle>
  • Example processes in code scanner 100 and a vehicle according to Embodiment 1 will be described with reference to FIG. 5. Note that, in this example, the X coordinate of a point within a central portion is "greater than or equal to 250 and less than 350".
  • Code scanner 100 attached to the vehicle moves along the movement of the vehicle (the direction of A in FIG. 5).
  • Referring to FIG. 5, suppose that the trigger signal is turned on at time tTR. Subsequently, at time tj (j is an integer of one or more), code scanner 100 turns on LED 113, repeats to attempt a process for reading two-dimensional code 400, and determines a success or failure of reading two-dimensional code 400 each time.
  • In FIG. 5, two-dimensional code 400 does not exist in screen F1 at time t1 and screen F2 at time t2, and code scanner 100 therefore determines that code information has been not decrypted (ST 106: NO in FIG. 2). In this case, data is not output from code scanner 100 to the vehicle, the processor of the vehicle does not perform speed control (ST 131: NO in FIG. 3). Consequently, the high speed of the vehicle is maintained.
  • Subsequently, two-dimensional code 400 appears for the first time in screen F3 at time t3, and code scanner 100 determines that a success of reading two-dimensional code 400 has been achieved. In other words, time t3 corresponds to the time of the first reading success. In this case, code scanner 100 performs a reading stability determining process (ST 108 in FIG. 2), and outputs data including code information, code position information, PMI, and the like to the vehicle (ST 109 in FIG. 2). In FIG. 5, code position information is "(X, Y) = (600, 200)", code information is "24256", and PMI is "B". Since this is the first data input, the processor of the vehicle decelerates the vehicle (ST 132: YES and ST 133 in FIG. 3).
  • Further, two-dimensional code 400 appears in screen F4 at time t4, and code scanner 100 determines that a success of reading two-dimensional code 400 has been achieved. In this case also, code scanner 100 performs a reading stability determining process and outputs data to the vehicle. In FIG. 5, code position information is "(X, Y) = (400, 200)", code information is "24256", and PMI is "A". Since this is not the first data input, the processor of the vehicle determines whether or not the two-dimensional code is located within the central portion of the screen (ST 134 of FIG. 3).
  • In screen F4, the two-dimensional code is out of the central portion of the screen (ST 134: NO in FIG. 3), the processor of the vehicle does not perform additional speed control. Consequently, the deceleration of the vehicle is maintained.
  • Further, two-dimensional code 400 appears in screen F5 at time t5, and code scanner 100 determines that a success of reading two-dimensional code 400 has been achieved. In this case also, code scanner 100 performs a reading stability determining process and outputs data to the vehicle. In FIG. 5, code position information is "(X, Y) = (320, 200)", code information is "24256", and PMI is "A". Since this is not the first data input, the processor of the vehicle determines whether or not the two-dimensional code is located within the central portion of the screen.
  • In screen F5, the two-dimensional code is within the central portion of the screen (ST 134: YES in FIG. 3), the processor of the vehicle brings the vehicle to a stop (ST 134: YES, ST 135 in FIG. 3).
  • <Effects>
  • As described above, in Embodiment 1, reading stability is determined based on a decrease rate (relative evaluation) of contrast at the time of teaching and reading success. Hence, determination can be made considering the environment in which reading is performed, so that stability can be determined more accurately than with evaluation (absolute evaluation) based on a comparison between fixed thresholds and the contrast at the time of reading success.
  • <Variation 1>
  • The brightness of image data varies depending on the position of the screen and decreases toward the end. For example, in FIG. 6, the brightness of the center of the screen (x = 0, y = 0) is "70.7", while the brightness of the upper left corner of the screen (x = -30, y = -20) is "24.9". For this reason, the larger the gap between the position of an optical code at the time of teaching and the position of the optical code at the time of reading success, the lower the accuracy of the contrast decrease rate.
  • In view of this, in Variation 1 of Embodiment 1, code scanner 100 may correct contrast CT calculated at the time of teaching on the basis of the difference between the positions of the optical code in the image data at the time of teaching and the time of reading success, and calculate a decrease rate ((CT - CS)/CT) of contrast CS with respect to contrast CT obtained by the correction.
  • Consequently, a variation in brightness dependent on the position of the screen can be corrected, thereby improving the accuracy of determining reading stability.
  • <Variation 2>
  • In addition, the brightness of image data, such as an optical code, also varies depending on the distance (depth) between code scanner 100 and the optical code, that is, the size of the optical code in the screen. For example, the brightness of the center (x = 0, y = 0) of the screen in FIG. 6 (with a depth of 101 mm) is "70.7", while the brightness of the center (x = 0, y = 0) of the screen in FIG. 7 (with a depth of 111 mm) is "50.3". For this reason, the larger the gap between the size of an optical code at the time of teaching and the size of the optical code at the time of reading success, the lower the accuracy of the contrast decrease rate.
  • In view of this, in Variation 2 of Embodiment 1, code scanner 100 may correct contrast CT calculated at the time of teaching on the basis of the difference between the sizes of the optical code in the image data at the time of teaching and the time of reading success, and calculate a decrease rate ((CT - CS)/CT) of contrast CS with respect to contrast CT obtained by the correction.
  • Consequently, a variation in brightness dependent on the distance (depth) of the screen can be corrected, thereby improving the accuracy of determining reading stability. Note that a laser telemeter may be used to measure depths.
  • (Embodiment 2)
  • In Embodiment 2, a reading stability determining process different from that described in Embodiment 1 will be described. Note that the configuration and process flow of code scanner 100 in Embodiment 2 are the same as those in Embodiment 1 and their description will therefore be omitted.
  • Two-dimensional codes are subjected to error correction processing, such as Reed-Solomon coding, at the time of code patterning so that they are readable even if a portion of the cell patterns of the code is damaged. Hence, code scanner 100 can read all code information even if a portion of the two-dimensional code is damaged. At this time, code scanner 100 can recognize the number of erroneous cell patterns so that error correction can be performed. For this reason, in Embodiment 2, a reading stability determining process is performed based on the correction level.
  • <Reading stability determining process>
  • The details of the reading stability determining process of Embodiment 2 will be described with reference to FIG. 8. Note that in Embodiment 2, for RAM 124, caution threshold L1 and warning threshold L2 (L1 < L2) are set in advance.
  • First, processor 122 counts the number of erroneous cell patterns CPE (ST 251).
  • Next, processor 122 calculates a correction level (CPE/CPT) which is the ratio of the number of erroneous cell patterns CPE to the maximum number of correctable cell patterns CPT related to the two-dimensional code (ST 252). Note that CPT may be the total number of cell patterns.
  • Subsequently, processor 122 compares the correction level with caution threshold L1 and warning threshold L2 (ST 253 and ST 255).
  • When the correction level is less than or equal to caution threshold L1 (ST 253: YES), processor 122 determines that the reading stability is at a normal level and sets the simplified character of PMI to "A" (ST 254). In contrast, when the correction level is greater than caution threshold L1 (ST 253: NO) and less than or equal to warning threshold L2 (ST 255: YES), processor 122 determines that the reading stability is at a caution level and sets the simplified character of PMI to "B" (ST 256). When the correction level is greater than warning threshold L2 (ST 255: NO), processor 122 determines that the reading stability is at a warning level and sets the simplified character of PMI to "C" (ST 257).
  • Although the above description has been made assuming that PMI is a simplified character, this is not necessarily the case in Embodiment 2: for example, a correction level (CPE/CPT) may be used as PMI. In this case, the necessity of the above-described process from ST 253 to ST 257 in FIG. 8 is eliminated.
  • <Effects>
  • As described above, in Embodiment 2, reading stability is determined depending on the correction level of the two-dimensional code. Hence, reading stability can be determined based on the evaluation of the entire pattern of the two-dimensional code, so that stability can be determined more accurately.
  • (Embodiment 3)
  • In Embodiment 3, a reading stability determining process that is different from that described in Embodiment 1 will be described. Note that the configuration and process flow of code scanner 100 in Embodiment 3 are the same as those in Embodiment 1 and their description will therefore be omitted.
  • Even if a portion of binarized data of the two-dimensional code is erroneous, code scanner 100 can decode the binarized data to obtain correct code information. Further, code scanner 100 converts the obtained code information back to binarized data and can recognize the number of erroneous dots through binarization determination. In view of this, in Embodiment 3, a reading stability determining process is performed based on the number of erroneous dots recognized through binarization determination.
  • <Reading stability determining process>
  • The details of the reading stability determining process of Embodiment 3 will be described with reference to FIG. 9. Note that in Embodiment 3, for RAM 124, caution threshold L1 and warning threshold L2 (L1 < L2) are set in advance.
  • First, processor 122 counts the number of erroneous dots DE through binarization determination (ST 351).
  • Next, processor 122 calculates a damage rate (DE/DT) which is the ratio of the number of erroneous dots DE counted through binarization determination to the total number of dots DT of the two-dimensional code (ST 352).
  • Next, processor 122 compares the damage rate with caution threshold L1 and warning threshold L2 (ST 353 and ST 355).
  • When the damage rate is less than or equal to caution threshold L1 (ST 353: YES), processor 122 determines that the reading stability is at a normal level and sets the simplified character of PMI to "A" (ST 354). In contrast, when the damage rate is greater than caution threshold L1 (ST 353: NO) and less than or equal to warning threshold L2 (ST 355: YES), processor 122 determines that the reading stability is at a caution level and sets the simplified character of PMI to "B" (ST 356). When the damage rate is greater than warning threshold L2 (ST 355: NO), processor 122 determines that the reading stability is at a warning level and sets the simplified character of PMI to "C" (ST 357).
  • Although the above description has been made assuming that PMI is a simplified character, this is not necessarily the case in Embodiment 3: for example, a damage rate (DE/DT) may be used as PMI. In this case, the necessity of the above-described process from ST 353 to ST 357 in FIG. 9 is eliminated.
  • Further, although the above description has been made assuming that a two-dimensional code is read, Embodiment 3 is also applicable to reading of a one-dimensional code.
  • <Effects>
  • As described above, in Embodiment 3, reading stability is determined depending on the damage rate of the optical code. Hence, reading stability can be determined based on the evaluation of the entire pattern of the optical code, so that stability can be determined more accurately.
  • The above-described reading stability determining processes of Embodiments 1 to 3 are performed independently of each other. In the present invention, two or more of them may be used in combination to determine reading stability. In this case, the reliability of reading stability can be enhanced.
  • For example, when resultant reading stability determined based on the contrast described in Embodiment 1 is at a normal level, and resultant reading stability determined based on the correction level described in Embodiment 2 is at a caution level, processor 122 determines the caution level which is the worst result among determination results to be the final reading stability and sets the simplified character of PMI to "B".
  • Although a code scanner is used as an optical information reading apparatus in each embodiment, the present invention is applicable to the cases where other optical information reading apparatuses are used.
  • Further, although description has been made in the above-described embodiments assuming that reading stability is evaluated in three steps according to the magnitude relationship with two thresholds, this is not necessarily the case in the present invention: reading stability may be evaluated in two steps or four or more steps.
  • Further, in the above-described embodiments, the optical information reading apparatus may determine reading stability related to a plurality of optical codes, and when reading stability related to all the optical codes are decreased, determine that optical information reading apparatus itself has deteriorated, and transmit a signal for notifying warning to the host computer through the vehicle.
  • Further, in the above-described embodiments, the host computer may collect PMI from the optical information reading apparatus of each vehicle, and when a plurality of pieces of PMI for one optical code is at a caution level or warning level, determine that the optical code has deteriorated, and may issue a warning and notify the position of that optical code to the administrator.
  • Further, in the above-described embodiments, the host computer may collect a plurality of pieces of PMI for one optical code from the optical information reading apparatus of one vehicle, and when the percentage of caution level or warning level is greater than or equal to a predetermined value, determine that the optical code has deteriorated, and may issue a warning and notify the position of that optical code to the administrator.
  • Industrial Applicability
  • The present invention is suitable for use in an optical information reading apparatus and an optical information reading method that perform an optical code reading process and a stability determination process.
  • Reference Signs List
    • 100 Code scanner
    • 110 Optical head section
    • 111 Lens
    • 112 CMOS
    • 113 LED
    • 120 Decoder section
    • 121 First I/O
    • 122 Processor
    • 123 RAM
    • 124 ROM
    • 125 Second I/O

Claims (7)

  1. An optical information reading apparatus (100), comprising:
    an imaging section (112) that performs imaging; and
    a control section (122) that reads an optical code (400) contained in image data taken by the imaging section (112) and outputs a signal upon success of reading of the optical code (400),
    wherein the control section (122):
    calculates a first contrast at the time of teaching and a second contrast at the time of reading success, and
    determines reading stability based on a decrease rate of the second contrast with respect to the first contrast.
  2. The optical information reading apparatus according to claim 1, wherein the control section (122) corrects the first contrast according to a difference between the positions of the optical code on a screen at the time of the teaching and the time of the reading success.
  3. The optical information reading apparatus according to claim 1, wherein the control section (122) corrects the first contrast according to a difference between the sizes of the optical code on a screen at the time of the teaching and the time of the reading success.
  4. The optical information reading apparatus according to claim 1, wherein
    the optical code (400) is an error-correction processed two-dimensional code, and wherein the control section (122):
    counts the number of error corrected cell patterns,
    calculates a correction level that is a ratio of the number of error corrected cell patterns to the total number of cell patterns,
    determines reading stability on the basis of the correction level, and
    determines final reading stability on the basis of the reading stability based on the decrease rate and the reading stability based on the correction level.
  5. The optical information reading apparatus according to claim 1, wherein
    the control section (122):
    counts the number of erroneous dots through binarization determination,
    calculates a damage rate that is a ratio of the number of erroneous dots counted through binarization determination to the total number of dots of the optical code,
    determines reading stability on the basis of the damage rate, and
    determines final reading stability on the basis of the reading stability based on the decrease rate and the reading stability based on the damage rate.
  6. An optical information reading apparatus (100), comprising:
    an imaging section (112) that performs imaging; and
    a control section (122) that reads an optical code (400) contained in image data taken by the imaging section (112) and outputs a signal upon success of reading of the optical code (400), wherein
    the control section (122):
    counts the number of erroneous dots through binarization determination,
    calculates a damage rate that is a ratio of the number of erroneous dots counted through binarization determination to the total number of dots of the optical code, and
    determines reading stability on the basis of the damage rate.
  7. An optical information reading method, comprising:
    performing imaging in an imaging section;
    reading an optical code contained in image data taken by the imaging section;
    outputting a signal upon success of reading of the optical code;
    calculating a first contrast at the time of teaching and a second contrast at the time of reading success; and
    determining reading stability based on a decrease rate of the second contrast with respect to the first contrast.
EP19160714.2A 2018-05-11 2019-03-05 Optical information reading apparatus and optical information reading method Active EP3567513B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP21197063.7A EP3944130A1 (en) 2018-05-11 2019-03-05 Optical information reading apparatus and optical information reading method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018092388A JP2019197492A (en) 2018-05-11 2018-05-11 Device and method for reading optical information

Related Child Applications (2)

Application Number Title Priority Date Filing Date
EP21197063.7A Division EP3944130A1 (en) 2018-05-11 2019-03-05 Optical information reading apparatus and optical information reading method
EP21197063.7A Division-Into EP3944130A1 (en) 2018-05-11 2019-03-05 Optical information reading apparatus and optical information reading method

Publications (2)

Publication Number Publication Date
EP3567513A1 true EP3567513A1 (en) 2019-11-13
EP3567513B1 EP3567513B1 (en) 2023-08-30

Family

ID=65724168

Family Applications (2)

Application Number Title Priority Date Filing Date
EP21197063.7A Pending EP3944130A1 (en) 2018-05-11 2019-03-05 Optical information reading apparatus and optical information reading method
EP19160714.2A Active EP3567513B1 (en) 2018-05-11 2019-03-05 Optical information reading apparatus and optical information reading method

Family Applications Before (1)

Application Number Title Priority Date Filing Date
EP21197063.7A Pending EP3944130A1 (en) 2018-05-11 2019-03-05 Optical information reading apparatus and optical information reading method

Country Status (4)

Country Link
US (1) US10565417B2 (en)
EP (2) EP3944130A1 (en)
JP (1) JP2019197492A (en)
CN (1) CN110472449B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230306217A1 (en) * 2020-08-18 2023-09-28 Ashish Anand A combined data retrieval and tamper-evident security system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10002353A1 (en) * 1999-04-19 2000-10-26 Keyence Co Ltd Optical reader for the optical reading of recorded code data and for determination whether reading is successful, includes stability determination device
US20040026508A1 (en) * 2002-06-18 2004-02-12 Katsuki Nakajima Method of and device for reading optical data code
JP2004054645A (en) 2002-07-19 2004-02-19 Keyence Corp Two-dimensional code reader, two-dimensional code reading method, two-dimensional code reading program and computer-readable recording medium
US20040046024A1 (en) * 2002-07-19 2004-03-11 Chikara Natsukari Two-dimensional code reader setting method, two-dimensional code reader, two dimensional code reader setting program and computer readable recording medium
JP2005025417A (en) 2003-06-30 2005-01-27 Optoelectronics Co Ltd Optical information reading device

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4236151B2 (en) * 2002-07-18 2009-03-11 株式会社小松製作所 Analog control circuit for fan drive
JP6431809B2 (en) * 2015-04-24 2018-11-28 富士通フロンテック株式会社 Image processing system, image processing apparatus, image processing method, and image processing program

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10002353A1 (en) * 1999-04-19 2000-10-26 Keyence Co Ltd Optical reader for the optical reading of recorded code data and for determination whether reading is successful, includes stability determination device
US20040026508A1 (en) * 2002-06-18 2004-02-12 Katsuki Nakajima Method of and device for reading optical data code
JP2004054645A (en) 2002-07-19 2004-02-19 Keyence Corp Two-dimensional code reader, two-dimensional code reading method, two-dimensional code reading program and computer-readable recording medium
US20040046024A1 (en) * 2002-07-19 2004-03-11 Chikara Natsukari Two-dimensional code reader setting method, two-dimensional code reader, two dimensional code reader setting program and computer readable recording medium
JP2005025417A (en) 2003-06-30 2005-01-27 Optoelectronics Co Ltd Optical information reading device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230306217A1 (en) * 2020-08-18 2023-09-28 Ashish Anand A combined data retrieval and tamper-evident security system

Also Published As

Publication number Publication date
US10565417B2 (en) 2020-02-18
US20190347460A1 (en) 2019-11-14
EP3944130A1 (en) 2022-01-26
EP3567513B1 (en) 2023-08-30
JP2019197492A (en) 2019-11-14
CN110472449A (en) 2019-11-19
CN110472449B (en) 2023-06-23

Similar Documents

Publication Publication Date Title
JP3516144B1 (en) Optical information code reading method and optical information code reader
US10706246B2 (en) Optical information reading apparatus and optical information reading method
US8333326B2 (en) Stacked barcode reader and stacked barcode reading method
US20170046606A1 (en) Two-dimensional code, and two-dimensional-code analysis system
JPS60262284A (en) Image processing
US20240005115A1 (en) System and method to determine whether an image contains a specific barcode
US6941026B1 (en) Method and apparatus using intensity gradients for visual identification of 2D matrix symbols
EP3567513B1 (en) Optical information reading apparatus and optical information reading method
US8381983B2 (en) Apparatus and method for reading barcode
US5189289A (en) Distinguishing bar code types by comparing bar block sizes
US10460142B2 (en) Barcode identification method for improving decoding reliability by correcting image distortion
JPH096885A (en) Bar code decoding system
JP5379626B2 (en) Stack bar code information reading method and stack bar code information reading device
US20190272405A1 (en) Optoelectronic code reading apparatus and method of reading codes
US8403221B2 (en) Method and apparatus for reading barcode information
CN109697382B (en) Linear bar code edge distortion processing method and equipment
JP2007317039A (en) Optical sign reader
EP0895175A1 (en) Process for scanning a bar-code
US7364080B2 (en) System and method for bar code detection
JP5453594B2 (en) Symbol information reading apparatus and symbol information reading method
US20160292482A1 (en) Stack barcode reader and stack barcode reading method
KR101313681B1 (en) 2 Dimension Barcode and method of decoding the 2 dimension barcode
CN114519692A (en) Method and system for predicting life of printed labels
CN116894447A (en) Reading of optical codes
JPS61279991A (en) Character segmenting method for optical character reader and the like

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20190312

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

RBV Designated contracting states (corrected)

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

RIN1 Information on inventor provided before grant (corrected)

Inventor name: HIRONO, MITSUAKI

Inventor name: ITAMOTO, SHUHEI

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: EXAMINATION IS IN PROGRESS

17Q First examination report despatched

Effective date: 20210510

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: GRANT OF PATENT IS INTENDED

INTG Intention to grant announced

Effective date: 20230321

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE PATENT HAS BEEN GRANTED

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

REG Reference to a national code

Ref country code: GB

Ref legal event code: FG4D

REG Reference to a national code

Ref country code: CH

Ref legal event code: EP

REG Reference to a national code

Ref country code: DE

Ref legal event code: R096

Ref document number: 602019035924

Country of ref document: DE

REG Reference to a national code

Ref country code: IE

Ref legal event code: FG4D

REG Reference to a national code

Ref country code: LT

Ref legal event code: MG9D

REG Reference to a national code

Ref country code: NL

Ref legal event code: MP

Effective date: 20230830

REG Reference to a national code

Ref country code: AT

Ref legal event code: MK05

Ref document number: 1606374

Country of ref document: AT

Kind code of ref document: T

Effective date: 20230830

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20231201

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20231230

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: SE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20230830

Ref country code: RS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20230830

Ref country code: NO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20231130

Ref country code: LV

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20230830

Ref country code: LT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20230830

Ref country code: IS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20231230

Ref country code: HR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20230830

Ref country code: GR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20231201

Ref country code: FI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20230830

Ref country code: AT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20230830

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: PL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20230830

Ref country code: NL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20230830

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: ES

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20230830

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: SM

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20230830

Ref country code: RO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20230830

Ref country code: ES

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20230830

Ref country code: EE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20230830

Ref country code: DK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20230830

Ref country code: CZ

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20230830

Ref country code: PT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20240102

Ref country code: SK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20230830

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: DE

Payment date: 20240205

Year of fee payment: 6

Ref country code: GB

Payment date: 20240322

Year of fee payment: 6

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20230830

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 20240320

Year of fee payment: 6

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT