Optical information reading method, optical information reading device, and program

The optical information reading method improves decoding success rates by analyzing images periodically and controlling the analysis process based on pixel value concentration near the image center, addressing the challenge of short-duration visibility of optical information.

JP7799363B1Active Publication Date: 2026-01-15OPTOELECTRONICS CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2025148751
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2025-09-09
Publication Date
2026-01-15
Estimated Expiration
2045-09-09

AI Technical Summary

Technical Problem

Optical information reading devices struggle to read code symbols and characters when they appear within the field of view for a short time, leading to increased decoding failures and reduced success rates due to the limitations in decoding processing time and the inability to determine suitable image capture states.

Method used

An optical information reading method that analyzes images periodically, calculating a parameter indicating the concentration of rapidly fluctuating pixel values near the image center, and controls the analysis process based on this parameter to prioritize images with higher potential for successful decoding.

Benefits of technology

The method enhances the success rate of reading optical information by ensuring timely analysis of images with higher likelihood of containing the information near the center, thereby improving decoding efficiency and reducing failures.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007799363000001_ABST
    Figure 0007799363000001_ABST
Patent Text Reader

Abstract

To read optical information with a high success rate even when the optical information exists within the field of view of imaging for only a short time. [Solution] In an image periodically captured by an imaging unit, edge centrality is calculated as a first parameter indicating the degree to which locations where pixel values ​​rapidly fluctuate are concentrated in the center of the image (S14). Regarding the execution of an analysis process that analyzes the acquired image and reads optical information contained in the image, if a second image is newly acquired while a first image is being analyzed in the analysis process (Yes in S15), the edge centrality value for the second image is compared with the edge centrality value for the first image, and if the degree indicated by the edge centrality value for the second image is greater (Yes in S17), a new analysis process is started for the second image (S18).
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to an optical information reading method for reading optical information such as code symbols contained in a captured image, an optical information reading device for reading such optical information, and a program for causing a computer to execute the optical information reading method. [Background technology]

[0002] 2. Description of the Related Art Conventionally, optical information reading devices have been known that capture an image of an object to be read using an imaging unit such as a camera, and read optical information such as code symbols and characters contained in the obtained image. Among these optical information reading devices, there are some that periodically capture images within the field of view and analyze the captured images, regardless of whether or not an object to be read is present, and read code symbols on an object to be read that appear within the field of view at any time.

[0003] It is also known that in such optical information reading devices, a limit is placed on the decoding process time of a captured image (see Non-Patent Document 1). From another perspective, Patent Document 1 describes a technology in which a code reader determines the position of a code symbol in an image based on the statistics of the edge directions and the variations in edge directions present in the captured image. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] US Patent Application Publication No. 2024 / 0289578 [Non-patent literature]

[0005] [Non-Patent Document 1] "NLV-5201 Fixed 2D Imager Scanner User's Manual", 3rd Edition, Optoelectronics Co., Ltd., April 3, 2024, p. 78 Summary of the Invention [Problem to be solved by the invention]

[0006] However, when reading a code symbol on an object that appears within the field of view at any timing, it is not known in advance when the image captured will contain the code symbol, and even if the code symbol is included, it is not known whether the image was captured in a state suitable for reading. In other words, it is only after the image decoding process is successful that it is known that the image contains a code symbol that can be read.

[0007] On the other hand, decoding an image takes some time, especially if the image is not successfully decoded, as the number of retries increases. Therefore, in a case where an object to be read that includes a code symbol moves through the field of view at a relatively high speed and passes by, for example, if the code symbol is initially captured with the symbol slightly cut off at the edge of the field of view, it is possible that the object to be read passes through the field of view while an attempt is being made to decode the image. In this case, the code symbol will no longer appear in the image captured after the decoding fails, and as a result, the code symbol on the object to be read cannot be read.

[0008] In response to this issue, if a limit is placed on the image decoding processing time as described in Non-Patent Document 1, images that cannot be decoded can be quickly abandoned and the next captured image can be decoded. This increases the number of cases where multiple attempts to capture and decode the image are possible before the object to be read passes through the field of view. However, if the time limit is set too short, images that would have been decoded may fail to be decoded due to insufficient retries, which could actually lower the success rate of reading. Therefore, the interval between capturing images for which decoding is attempted cannot be shortened too much, limiting the effect of improving the success rate of reading.

[0009] These problems also occur when reading optical information other than code symbols, such as characters. Furthermore, the technology described in Non-Patent Document 1 is not particularly aimed at solving the above-mentioned problems, and although the position of the code symbols is determined by a front-end processing unit separate from the host processor, this is essentially performed as part of the decoding process.

[0010] This invention has been made in consideration of the above circumstances, and aims to enable the optical information on an imaged object to be read with a high success rate by analyzing images taken periodically, even if the optical information is present within the field of view of the image for only a short time. [Means for solving the problem]

[0011] To achieve the above object, the optical information reading method of the present invention preferably includes an image acquisition step of acquiring images periodically captured by an imaging unit, and an image analysis step of calculating a value of a first parameter indicating the degree to which areas where pixel values ​​rapidly fluctuate are concentrated in the center of the image in the image acquired in the image acquisition step. It may also include a reading step of analyzing the image acquired in the image acquisition step to read optical information contained in the image, and a reading control step of, if a second image is newly acquired in the image acquisition step while a first image is being analyzed in the reading step, comparing the value of the first parameter for the second image with the value of the first parameter for the first image, and if the degree indicated by the value of the first parameter for the second image is greater, starting a new analysis of the second image using the reading step.

[0012] In such an image reading method, the reading control procedure may include a procedure of stopping analysis of the first image by the reading procedure when analysis of the second image by the reading procedure is newly started. In addition, in the image analysis procedure, the value of the first parameter may be calculated based on the sum of the values ​​of a second parameter indicating the degree of variation in pixel values ​​in the vicinity of each sample pixel for a predetermined number of sample pixels in the image, weighted by the value of a third parameter indicating how close the sample pixel is to the center of the image.

[0013] Furthermore, the value of the second parameter for each sample pixel may be determined based on the difference in pixel value between the sample pixel and a pixel adjacent to the sample pixel. Alternatively, the value of the second parameter for each sample pixel may be determined based on the difference in pixel value between the sample pixel and a pixel horizontally adjacent to the sample pixel, and the difference in pixel value between the sample pixel and a pixel vertically adjacent to the sample pixel.

[0014] In addition, each of the above optical information reading methods may include a setting reception procedure for receiving a setting of the type of optical information to be read, and a change procedure for changing the relationship between the position of the sample pixel and the value of the third parameter based on the setting received in the setting reception procedure. Furthermore, in the change procedure, the ratio between the degree to which the position of the sample pixel in the image viewed in the first direction contributes to the value of the third parameter and the degree to which the position of the sample pixel in the image viewed in the second direction contributes to the value of the third parameter may be changed for mutually different first and second directions, depending on the content of the settings received in the setting reception procedure.

[0015] Another optical information reading method of the present invention includes an image acquisition step of acquiring images periodically captured by an imaging unit, and an image analysis step of determining a value of a first parameter based on a sum of values ​​of a second parameter indicating a degree of variation in pixel values ​​near each sample pixel for a predetermined number of sample pixels in the image acquired in the image acquisition step, weighted by a value of a third parameter indicating how close the sample pixel is to the center of the image. It may also include a reading step of analyzing the image acquired in the image acquisition step to read optical information contained in the image, and a reading control step of, if a second image is newly acquired in the image acquisition step while a first image is being analyzed in the reading step, comparing the value of the first parameter for the second image with the value of the first parameter for the first image, and if the degree of variation indicated by the value of the first parameter for the second image is greater, starting a new analysis of the second image using the reading step.

[0016] Another optical information reading method of the present invention includes an image acquisition step of acquiring images periodically captured by an imaging unit, and an image analysis step of determining a value of a first parameter indicating the degree to which optical information to be read is located near the center of the image acquired in the image acquisition step. It may also include a reading step of analyzing the image acquired in the image acquisition step to read the optical information contained in the image, and a reading control step of, if a second image is newly acquired in the image acquisition step while a first image is being analyzed in the reading step, comparing the value of the first parameter for the second image with the value of the first parameter for the first image, and if the degree indicated by the value of the first parameter for the second image is greater, starting a new analysis of the second image using the reading step.

[0017] Another optical information reading method of the present invention includes an image acquisition procedure for acquiring images periodically captured by an imaging unit, and a reading procedure for analyzing the images acquired in the image acquisition procedure and reading optical information contained in the images. It may also include a reading control procedure for, if a second image is newly acquired in the image acquisition procedure while a first image is being analyzed in the reading procedure, comparing the first image and the second image based on values ​​of specific parameters indicating image characteristics, and controlling whether to start a new analysis of the second image in the reading procedure depending on the comparison result.

[0018] Furthermore, the present invention described above can be embodied in any manner, such as an apparatus, a system, a program, or a recording medium on which a program is recorded, in addition to being embodied in the form of the method described above. [Effects of the Invention]

[0019] According to the configuration of the present invention, when optical information on an imaged object is read by analyzing images taken periodically, the optical information can be read with a high success rate even if the optical information is only present within the field of view of the image for a short period of time. [Brief explanation of the drawings]

[0020] [Figure 1] FIG. 1 is a block diagram showing the hardware configuration of a reader 100 which is an embodiment of an optical information reader according to the present invention. [Figure 2] FIG. 2 is a functional block diagram showing the functional configuration of the reading device 100 shown in FIG. [Figure 3] FIG. 3 is a diagram showing an example of the movement of optical information read by the reading device 100 shown in FIG. [Figure 4] 4A to 4C are diagrams showing the relationship between the positional relationship between the optical information 105 to be read and the imaging range F at the time of imaging, and the degree of difficulty in reading. [Figure 5] FIG. 5 is a diagram showing an example of the relationship between the position of a sample pixel in an image and the weight w. [Figure 6] 6A to 6C are diagrams showing the relationship between the positional relationship between the two-dimensional code 106 to be read and the imaging range F at the time of imaging, and the magnitude of the edge centrality calculated by Equation 2. FIG. [Figure 7] FIG. 7 is a flowchart showing the process executed by the CPU 121 of the reading device 100 when an instruction to start reading optical information is detected. [Figure 8] FIG. 8 is a flowchart showing an example of the analysis process started in the process of FIG. [Figure 9] FIG. 9 is a diagram showing a schematic configuration of an experimental device used in an experiment to verify the effect of the reading device 100 of FIG. [Figure 10] FIG. 10 is a graph showing data on the success rate of reading code symbols by the reader 100 of FIG. 1 and a reader of a comparative example, obtained through an experiment using the device of FIG. [Figure 11] FIG. 11 is a diagram showing a first modified example of the relationship between the position of a sample pixel in an image and the weight w. [Figure 12] 12A to 12C are diagrams showing the relationship between the position in the image of the code symbol 108 to be read and the magnitude of the edge centrality calculated by Equation 2 when the weight w shown in FIG. 11 is used. [Figure 13] FIG. 13 is a diagram showing a second modified example of the relationship between the position of a sample pixel in an image and the weight w. DETAILED DESCRIPTION OF THE INVENTION

[0021] An embodiment of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram showing the hardware configuration of a reader 100 which is an embodiment of an optical information reader according to the present invention. The reading device 100 shown in FIG. 1 is a device for optically reading optical information such as a code symbol 102a or a character string 102b, which is represented by parts on a reading target 101 that have a light reflectance different from that of the surroundings. The object 101 to be read may be a recording medium such as paper that statically carries the code symbol 102a and the character string 102b, or may be a display that dynamically displays them.

[0022] As shown in FIG. 1, the reading device 100 includes an optical unit 110, a control unit 120, an operation unit 131, a notification unit 132, and a display unit 133. Of these, the optical unit 110 is an imaging unit that includes an imaging sensor 111, a lens 112, and a pulsed LED (light emitting diode) 113, and is used to optically capture an image of the object 101 to be read.

[0023] The image sensor 111 is a light receiving element for capturing an image of an imaging target such as the read target 101, and can be configured, for example, by a CMOS (complementary metal oxide semiconductor) image sensor. The image sensor 111 can generate image data indicating the gradation value of each pixel based on the charge accumulated in each pixel of the image sensor by capturing an image, and output the image data to the control unit 120. In the image sensor 111, the pixels are arranged two-dimensionally.

[0024] The lens 112 is an optical system for forming an image of reflected light from the object to be imaged on the image sensor 111 . The pulsed LED 113 is a light projecting unit for projecting illumination light onto an object to be imaged.

[0025] Next, the control unit 120 includes a CPU 121, a ROM 122 that stores programs executed by the CPU 121 and data such as various tables, a RAM 123 that the CPU 121 uses as a working area when executing various processes, and a communication I / F 124 for communicating with external devices.

[0026] The CPU 121 is a processor that uses the RAM 123 as a working area and executes programs stored in the ROM 122 to control the operation of the entire reading device 100, including the optical unit 110, operation unit 131, notification unit 132, and display unit 133, and realizes various functions, including those described below with reference to Fig. 2. These functions may include processes such as analyzing image data of an image captured by the imaging sensor 111, reading, displaying, externally outputting, or storing optical information contained in the image data, determining whether or not to analyze the captured image data, and controlling processes related to reading of the optical information based on the results of the determination. The communication I / F 124 is an interface for communicating with various external devices, such as a data processing device that uses the decoded result of the code symbol 102a and the read result of the character string 102b.

[0027] The operation unit 131 is an operation means such as a button or a trigger for accepting an operation from an operator. The notification unit 132 is a notification means for sending various notifications to the operator. Specific notification methods include, but are not limited to, displaying a message or data on a display, lighting or blinking a lamp, and outputting a sound from a speaker. The display unit 133 is a display means for displaying the contents of the optical information read by the reading device 100, information about the operating status of the reading device 100, etc., and can be configured with a liquid crystal display or the like. The notification unit 132 and the display unit 133 may be configured as common hardware.

[0028] When the reading device 100 is controlled by an external device or automatically operated by autonomous control, the operation unit 131, the notification unit 132, and the display unit 133 do not need to be provided. The reader 100 described above can be configured as, for example, a stationary code symbol reader, but is not limited to this. A general-purpose computer such as a smartphone or personal computer may be used as all or part of the hardware.

[0029] The above-described reading device 100 is characterized in that it determines whether or not to start analysis for reading optical information from an image read by the image sensor 111 according to the content of the image, and controls whether or not to start analysis based on the result of the determination, and the method of this determination. These points will be explained next.

[0030] First, among the functions related to reading optical information provided in the reading device 100, the function related to reading optical information based on images obtained by periodic imaging, which is related to the above-mentioned characteristics, will be described. FIG. 2 is a functional block diagram showing the functional configuration. 2, the reading device 100 includes the functions of an imaging unit 141, an image acquisition unit 142, an information reading unit 143, an output unit 144, a reading control unit 145, an edge centrality calculation unit 146, an imaging control unit 147, a reading condition setting reception unit 148, and a reading instruction reception unit 149. In the example described here, the functions of these units are realized by the CPU 121 executing software to control the optical unit 110 and other units of the reading device 100, but some or all of these functions may also be realized by a dedicated control circuit.

[0031] 2 has a function of controlling the optical unit 110 to periodically capture images, acquiring image data obtained by capturing images for each frame (image capture cycle period), and transferring the image data to the image acquisition unit 142. The conditions for the periodic image capture and the start and end timings can be determined by the image capture control unit 147. In addition, it is also possible to cause the optical unit 110 to capture images at any timing. When the image acquisition unit 142 acquires image data from the imaging unit 141, it notifies the reading control unit 145 of this fact and has the function of storing the image data so that the information reading unit 143 and the edge centrality calculation unit 146 can refer to it.

[0032] The information reading unit 143 is a reading unit that has the function of acquiring image data from the image acquisition unit 142, performing analysis processing such as object extraction and decoding, and reading optical information in the image represented by the image data. The actual processing performed differs depending on the type of optical information to be read, etc. For example, if a code symbol of a specific standard is expected as the optical information, object extraction and decoding processing suitable for that standard may be performed, and if characters are expected, character recognition processing may be performed. The type of processing to be actually performed can be determined based on an instruction given by the reading control unit 145 based on the settings received by the reading condition setting receiving unit 148, for example.

[0033] The output unit 144 has a function of outputting the reading result, such as a character string obtained by reading by the information reading unit 143, to an external device such as a data processing device that processes the data, using the communication I / F 124 and the notification unit 132, and also notifying an operator of successful reading. The method of notifying the operator can be any method, such as a buzzer or vibration, and may not be performed if notification is not necessary. The output unit 144 may also have a function of displaying the reading result on the display unit 133.

[0034] The reading control unit 145 has a function of, when the image acquisition unit 142 acquires new image data, determining whether or not to cause the information reading unit 143 to start an analysis process for the image data (corresponding to "second image data"), and causing the information reading unit 143 to execute the analysis process for the image data according to the result of the determination. The reading control unit 145 refers to the execution status of the analysis process in the information reading unit 143, and if the information reading unit 143 is executing an analysis process for previously acquired image data (corresponding to "first image data") at the time when it is determined that the information reading unit 143 should start an analysis process for the newly acquired image data, the reading control unit 145 may stop the analysis process and start the analysis process for the newly acquired image data.

[0035] Furthermore, in this embodiment, the determination of whether or not to cause the information reading unit 143 to start analysis processing of newly acquired image data is made based on the value of edge centrality, which is a first parameter that indicates the degree to which areas where pixel values ​​change rapidly are concentrated in the center of the image. The calculation method and significance of edge centrality will be described later, but this edge centrality is a parameter that is expected to have a large value when the optical information to be read is located near the center of the captured image.

[0036] Then, if the edge centrality of the newly acquired image data is greater than the edge centrality of the image data being analyzed by the information reading unit 143 (if the value indicates a greater degree of concentration in the central part), the reading control unit 145 decides to cause the information reading unit 143 to start the analysis process of the newly acquired image data.

[0037] To make this determination, the reading control unit 145 causes the edge centrality calculation unit 146 to calculate the edge centrality by referring to the image data held by the image acquisition unit 142. The edge centrality of the image data that the information reading unit 143 has started to analyze may be held by the reading control unit 145 so that it can be referenced in subsequent processing.

[0038] In addition, the reading control unit 145 also has a function of setting the content of the analysis process to be executed, such as an analysis process appropriate for the type of optical information to be read, to the information reading unit 143 based on the settings such as the type of optical information to be read received by the reading condition setting receiving unit 148. The reading control unit 145 also has a function of instructing the imaging unit 141 to start and stop periodic imaging via the imaging control unit 147 based on instructions to start and stop reading received by the reading instruction receiving unit 149.

[0039] The edge centrality calculation unit 146 has a function of an image analysis unit that, in accordance with an instruction from the reading control unit 145, refers to image data held by the image acquisition unit 142 and calculates the edge centrality of the image data. The imaging control unit 147 has a function of instructing the imaging unit 141 to start and end periodic imaging in accordance with instructions from the reading control unit 145. In addition, the imaging control unit 147 may have a function of instructing imaging conditions such as the exposure time and gain of the imaging sensor 111, and the intensity and lighting time of the illumination by the pulse LED 113.

[0040] The reading condition setting receiving unit 148 has a function of a setting receiving unit that receives settings related to the optical information reading operation performed by the reading device 100, including the type of optical information to be read and the reading mode setting. The reading instruction receiving unit 149 has a function of receiving instructions to start and end reading of optical information. The manner in which the reading condition setting receiving unit 148 and the continuous reading instruction receiving unit 149 receive settings and instructions is arbitrary, and as an example, they may be received as operator operations via the operation unit 131, etc., or as control data from another device via the communication I / F 124.

[0041] Next, the meaning of the edge centrality and the calculation method thereof will be described with reference to FIGS. 3 to 6C. First, FIG. 3 shows an example of the movement of optical information read by the reader 100. As shown in FIG. In the reading device 100 of this embodiment, the effect of improving the reading success rate by control using edge centrality is considered to be significant, for example, when reading optical information 105 passing through the imaging range of the optical unit 110 of the reading device 100 at any timing, not necessarily immediately after receiving an instruction to start reading. The effect of improving the reading success rate is considered to be particularly significant in cases where the optical information 105 moves at a relatively high speed and passes through the imaging range F in a time (for example, about 50 to 150 milliseconds) that does not impede imaging but makes it difficult to repeat the entire image analysis (decoding, etc.) process multiple times. In this case, it is assumed that the reading device 100 will perform reading without being able to grasp the timing at which optical information will exist (enter) the imaging range or the position at which the optical information will exist in the imaging range at each timing.

[0042] For example, consider a case where optical information 105 to be read passes through an imaging range F of optical unit 110 as shown by arrow A in Fig. 3. If imaging can be performed several times by optical unit 110 during this passage, it is assumed that imaging is performed sequentially in a state where the positional relationship between imaging range F and optical information 105 is as shown in Figs. 4A to 4C. 4A to 4C are diagrams showing the relationship between the positional relationship between the optical information 105 to be read and the imaging range F at the time of imaging, and the degree of difficulty in reading.

[0043] In this case, the image captured in the state of FIG. 4A does not include the entire optical information 105, and therefore the optical information 105 cannot be read. The image captured in the state of Figure 4B includes the entire optical information 105, but the parts located towards the edge of the imaging range F are difficult to read because the amount of light is small and sufficient contrast cannot be obtained, or the image is distorted due to field curvature. An image captured in a state where optical information 105 is located near the center of imaging range F, as in the state of FIG. 4C, does not have the problems seen in the cases of FIGS. 4A and 4B, and is easy to read.

[0044] Therefore, it is believed that the reading success rate can be improved if the analysis process for reading can be performed on an image captured in a state such as that shown in Figure 4C. This not only means that the probability of successful reading in one image analysis process can be increased, but also means that even if reading is not successful in one image analysis, the reading success rate can be improved by taking the time to retry analysis on an image captured in a state such as that shown in Figure 4C, rather than taking the time to retry analysis on an image captured in a state such as that shown in Figure 4B.

[0045] On the other hand, if the movement speed of the optical information 105 is relatively fast, for example, when the optical information 105 is successfully captured in a state as shown in FIG. 4B, the optical information 105 may have already passed through the imaging range F by the time of the next imaging attempt, and may not be captured (or only a portion of the information may be captured as shown in FIG. 4A). In such a case, even if it is determined that the optical information 105 is located at the edge of the image, not attempting to analyze the image may actually decrease the success rate of reading. This is because there may be cases where there is a low possibility of successful reading if the image is analyzed further, but discarding the image means that there is no longer any possibility of successful reading.

[0046] Therefore, in this embodiment, the following algorithm is used to control the execution of analysis processing for reading optical information from an image. Step 1: When an image is captured without image analysis being performed, an analysis process is performed to read optical information from the image. Step 2: If a new image is captured during the analysis process of step 1, it is determined whether the optical information in the new image is closer to the center than in the image being analyzed. Step 3: If step 2 determines that the object is located near the center, the ongoing analysis process is stopped and a new analysis process is started to read optical information from the new image obtained in step 2. Step 4: If step 2 determines that the image is not close to the center, the new image obtained in step 2 is not analyzed.

[0047] This means that if a new image that is thought to be more likely to be read successfully is obtained while the analysis process is being performed, that newly obtained image can be analyzed, so an overall high reading success rate can be expected. Furthermore, if an image that is considered more likely to be successfully read is not obtained, the analysis process being performed continues, so that an analysis process that has a certain probability of success is not stopped and an analysis process that has a lower probability of success is not moved on, thereby preventing a decrease in the reading success rate.

[0048] Here, the determination in step 2 above is made based on the value of a first parameter, which indicates the degree to which the areas where pixel values ​​change rapidly are concentrated in the center of the image, calculated for each captured image. Here, the edge centrality ECC, which can be calculated using the following equations 1 and 2, is used as the first parameter.

[0049]

number

[0050]

number

[0051] That is, a predetermined number of sample pixels are determined in the image, and the edge value E is calculated for each sample pixel according to Equation 1. Then, as in the numerator of Equation 2, the edge value E of each sample pixel is weighted by multiplying it by a weight w, which is a coefficient corresponding to the position of that sample pixel in the image, and the sum is then calculated for each sample pixel. This value is standardized by the number of samples N and the maximum pixel value max(P) in the image, and the resulting value is taken as the edge centrality ECC.

[0052] Among these, the edge value E is a second parameter that indicates the degree of variation in pixel values ​​in the vicinity of each sample pixel based on the difference in pixel value between the sample pixel and a pixel adjacent to the sample pixel. In the example of Equation 1, the absolute values ​​of the differences in pixel values ​​between adjacent pixels in each of the horizontal direction (first axis direction) and vertical direction (second axis direction) of the image are calculated, and the sum of these values ​​is used as the edge value E. When optical information such as code symbols is present, it is expected that a difference of one pixel will result in a large difference in pixel value at the boundary between a white (light) module and a black (dark) module. The edge value E is used as a parameter that will be particularly large when such a location exists.

[0053] In addition, the difference in pixel values ​​between adjacent pixels in both the horizontal and vertical directions is calculated with the intention of accurately detecting the presence of optical information that has a similar number of points where the pixel values ​​between adjacent pixels change sharply in both the horizontal and vertical directions, such as a two-dimensional code. However, because the edge value E is calculated only for discrete sample pixels, it does not matter if the direction of the edge between black and white in the image does not coincide with the direction in which the pixel value difference is calculated between adjacent or distant pixels. There is no problem as long as the method of calculating the difference results in a large pixel value difference at positions where optical information is present, when viewed across the entire set of sample pixels.

[0054] In that sense, it is not necessary to take the difference in pixel values ​​between adjacent pixels. It is also possible to use the difference in pixel values ​​between pixels located several pixels apart in the horizontal or vertical direction, |P(x,y)-P(xm,yn)| (m and n are any natural numbers) It is also possible to use the difference in pixel values ​​between pixels spaced apart in any direction different from the pixel array direction, as shown above. In this case, it is advisable to calculate and add the differences in pixel values ​​between pixels spaced apart in two different directions (for combinations of m and n with different ratios in the above example), rather than just one direction. This is because there may be optical information, such as one-dimensional barcodes, where there is almost no boundary between white and black modules in a specific direction, and it may be difficult to detect edges in such optical information in only one direction.

[0055] Conversely, if you are considering detecting the position of optical information such as a two-dimensional code or character, where the boundaries between white modules (areas with high light reflectance) and black modules (areas with low light reflectance) exist in multiple or various directions, you can determine the edge value by calculating the difference in pixel values ​​between pixels separated in only one direction. This reduces the computational load required to calculate the edge value. Furthermore, other calculation methods may be used instead of the difference in pixel values, as long as the parameter can express the magnitude of the degree of variation in pixel values ​​between pixels. The inventors have found from experiments that, in order to accurately detect the position of fine optical information, it is preferable to use the difference in pixel values between adjacent pixels, and this is adopted in Equation (1).

[0056] In addition, FIG. 5 shows an example of the relationship between the position of a sample pixel in the image and the weight w. The weight w is a third parameter indicating how close the sample pixel is to the center of the image. Here, as shown in FIG. 5, for the pixel at the center 201 of the image 200, w = 1, and for the pixel at the diagonal end 202, w = 0, and the weight w is set to a value proportional to the position from the center 201 of the image 200. At the edges of the image other than the diagonal ends, w has a value of 0 < w < 1.

[0057] By weighting and summing the above-described edge value E with this weight w, a parameter can be obtained such that it becomes larger when the pixel value fluctuates rapidly in the vicinity of the sample pixel near the center. In this embodiment, this corresponds to the numerator on the right side of Equation (2). Then, the value of this parameter is divided by the number of samples N and the maximum value max(P) of the pixel values in the image to obtain the edge centrality ECC. Dividing by the maximum value max(P) of the pixel values in the image is to eliminate the influence of the brightness of the entire image on the edge value E. Dividing by the number of samples N is to obtain the average value for each sample pixel, but if the number of sample pixels is the same for each image, division can be omitted because it will always be divided by the same number.

[0058] Here, FIGS. 6A to 6C show the relationship between the positional relationship between the optical information to be read and the imaging range F at the time of imaging and the magnitude of the edge centrality obtained by Equation (2) when the optical information to be read is the two-dimensional code 106. Regardless of the type of optical information to be read, it is assumed that optical information formed on the premise of being read by the reading device 100 is formed so that at least the surrounding area has a background with a generally uniform light reflectance. If there are areas in the surrounding area where the light reflectance varies greatly, the reading device 100 will mistakenly recognize those areas as optical information, which will reduce the success rate of reading, and therefore it is considered rare to intentionally form the information in this way.

[0059] 6A to 6C, the two-dimensional code 106 is surrounded by a white background. For this reason, when a sample pixel is located at the position of the two-dimensional code 106 in the captured image, the edge value E calculated by Equation 1 will be a large value, and when the sample pixel is located in the surrounding background, the edge value E will be a small value close to 0. 6C shows an example in which a frame 107 is present at a position slightly away from the two-dimensional code 106. This frame 107 is, for example, a frame at the edge of a display or information processing device when the two-dimensional code 106 is displayed on the display of a mobile information terminal such as a smartphone and read by the reading device 100. When the two-dimensional code 106 is printed on a recording carrier, the frame may be formed by printing or the like around the two-dimensional code 106.

[0060] In any case, it is expected that the fluctuation in light reflectance is relatively small in the portion of frame 107. Therefore, if a sample pixel is located inside frame 107, the edge value E will be relatively small. If a sample pixel is located at the boundary between frame 107 and the background, the edge value E will be large, but it is expected that the number of sample pixels at this position will be small. 6A, when an image is captured with the two-dimensional code 106 positioned near the center of the image capture range F, sample pixels with large edge values ​​E will be concentrated near the center of the image with a large weight w. Therefore, the value of the edge centrality ECC will be large. 6B, when an image is captured with the two-dimensional code 106 near the edge of the imaging range F, sample pixels with a large edge value E are concentrated near the edge of the image where the weight w is relatively small. Therefore, the value of the edge centrality ECC is smaller than in the case of FIG. 6A, and is in the medium range.

[0061] As shown in Figure 6C, when an image is captured in a state where the two-dimensional code 106 is partially cut off at the edge of the imaging range F, the number of sample pixels with a large edge value E is smaller than in Figures 6A and 6B. Furthermore, sample pixels with a large edge value E are concentrated near the edge of the image, where the weight w is even smaller than in Figure 6B. Therefore, the edge centrality ECC value is even smaller than in Figure 6B. Even if the edge centrality ECC is slightly increased by the frame 107 being captured, the number of sample pixels with a large edge value E is expected to be small due to the frame 107, as described above, and they are also expected to be located near the edge of the image, so the impact on the edge centrality ECC is small.

[0062] For the above reasons, the edge centrality ECC is considered to be a suitable index for measuring the degree to which the optical information to be read is located near the center of the image. For example, if the image is 640 x 480 pixels, sufficient accuracy for this purpose can be obtained by sampling a fairly sparse number of sample pixels, approximately several hundred pixels, evenly distributed throughout the entire image. Note that the edge centrality ECC does not need to be a parameter that precisely indicates the position of the (estimated) optical information in the image, and in fact it does not necessarily do so. However, if it is a parameter that roughly indicates the degree to which the position of the optical information in the image is close to the center, it is sufficient as a criterion for judgment in step 2 above. This is because even if a new analysis process is started in step 3 above for an image in which the optical information is located slightly farther from the center than in the image currently being analyzed, the reading success rate will not decrease significantly compared to continuing the previous analysis process.

[0063] Similarly, the edge centrality ECC is a parameter that roughly indicates the degree to which areas where pixel values ​​fluctuate rapidly are concentrated in the center of the image (the larger the value, the greater the degree). However, whether or not something intuitively "appears to be concentrated in the center" does not necessarily have to coincide with the magnitude of the edge centrality ECC. For example, (A) an image in which a fine pattern is captured over a certain area in the periphery of the image and the center is solid white may have a larger edge centrality ECC than (B) an image in which a fine pattern is captured over a small area in the center and the rest of the image is solid white. However, even if an image like (A) is actually captured, it is unlikely that an image like (A) will be captured when attempting to read optical information. Therefore, there is no major problem if the reading device 100 is configured while ignoring such special cases, and the impact on the reading success rate in a general environment can be ignored.

[0064] More specifically, as described with reference to Figures 3 and 6A to 6C, if the edge centrality ECC functions as a parameter indicating the degree to which locations where pixel values ​​fluctuate rapidly are concentrated in the central part of an image among a plurality of image data obtained by periodic imaging in an environment assumed to be an actual optical information reading scene (especially when one or several of the images include an image in which optical information appears near the center), it does not matter if the edge centrality ECC has no practical meaning in other cases. As described above, the number of sample pixels does not need to be very large, so the processing load for calculating the edge centrality ECC is small, and there is no practical problem even if the calculation is wasted in a scene in which the edge centrality ECC does not function.

[0065] Even in this state, the edge centrality ECC is sufficiently significant as an index indicating how close the optical information to be read is to the center of the image (the degree to which it is close to the center of the image), and is sufficient as a criterion for judgment in the above step 2. This is because, outside of environments assumed as actual optical information reading scenes, it is believed that no substantial effect will be exerted on the success rate of reading optical information, regardless of what judgment is made based on the edge centrality ECC value in the above step 2. Furthermore, in reality, in an environment assumed as the above-mentioned reading scene, whether or not the image intuitively "appears to be concentrated in the center" generally coincides with the magnitude of the edge centrality ECC.

[0066] Furthermore, as described above, as long as the first parameter used as the basis for judgment in step 2 above is a parameter that can indicate the degree to which the areas where pixel values ​​fluctuate rapidly are concentrated in the center of the image with an accuracy that roughly maintains the relationship between the position of the optical information to be read in the image and the magnitude of the first parameter, as explained using Figures 6A to 6C, then even if it is obtained using a method other than edge centrality ECC, it is useful for obtaining the effect of improving the reading success rate using the algorithms of steps 1 to 4 above.

[0067] Furthermore, it is not necessary to consider the edge centrality ECC as a parameter indicating the degree to which locations where pixel values ​​rapidly fluctuate are concentrated in the center of an image. For example, it may be considered as a parameter indicating the degree to which the optical information to be read is located near the center of the image. As described above, the edge centrality ECC can sufficiently indicate this degree among multiple image data obtained by periodic image capture in an environment assumed to be an actual optical information reading scene.

[0068] Alternatively, the edge centrality ECC may not have any particular meaning, and may simply be regarded as the sum (and further standardized) of the edge value E, which is the second parameter indicating the degree of variation in pixel values ​​in the vicinity of each sample pixel, for a predetermined number of sample pixels, weighted by the value of the weight w, which is the third parameter indicating how close the sample pixel is to the center of the image. Regardless of how it is viewed, the effect of improving the reading success rate using the algorithm of steps 1 to 4 above can be obtained in the same way.

[0069] Furthermore, if the first parameter used as the basis for judgment in step 2 above is considered to be a parameter indicating the degree to which the optical information to be read is located close to the center of the image, then as long as the parameter can indicate the degree to which the optical information to be read is located close to the center of the image with an accuracy that roughly maintains the relationship between the position of the optical information to be read in the image and the magnitude of the first parameter as described using Figures 6A to 6C, then even if it is obtained using a method different from edge centrality ECC, it is useful for achieving the effect of improving the reading success rate using the algorithms of steps 1 to 4 above.

[0070] Next, the processing executed by the reading device 100 to realize the functions explained using Fig. 2 and the control algorithm of the above steps 1 to 4 will be explained in more detail using a flowchart. The processing explained here is processing relating to an embodiment of the optical information reading method of the present invention.

[0071] First, FIG. 7 shows a flowchart of the process executed by the CPU 121 when an instruction to start reading optical information is detected. In this process, the CPU 121 first instructs the optical unit 110 to start periodic image capture (S11). After this, the optical unit 110 continues to perform image capture according to the image capture conditions set at that time for each frame period until it is instructed to stop image capture. The image capture conditions may be changed during the process. The default image capture conditions may always remain the same, or may be automatically changed depending on the settings made by the user or the surrounding conditions detected by any sensor.

[0072] Thereafter, the CPU 121 waits until the next frame is captured (S12), and upon completion of the capture, acquires image data of the captured image (S13). This step S13 is the image acquisition procedure. Thereafter, the CPU 121 calculates the edge centrality ECC of the captured image based on the acquired image data (S14). This step S14 is the image analysis procedure. Next, the CPU 121 determines whether or not there is an analysis process being executed (S15). This analysis process is the process started in step S16 or step S18, and an example is the process shown in Fig. 8. If the result in step S15 is No, the CPU 121 starts the analysis process of the image captured this time without taking the edge centrality ECC into consideration (S16).

[0073] If the answer is Yes in step S15, the CPU 121 compares the edge centrality ECC of the image being analyzed with the edge centrality ECC of the image captured this time, and determines whether the latter is higher (S17). If the answer is Yes, the CPU 121 stops the analysis process being performed and starts a new analysis process of the image captured this time (S18). If the answer is No in step S17, the analysis process of the image captured this time is not performed, and the CPU 121 continues the analysis process being performed. Steps S17 and S18 correspond to the reading control procedure. In either case, if there is no instruction to end reading (No in S19), CPU 121 returns to step S12 and repeats the process. If there is an instruction to end reading (Yes in S19), CPU 121 instructs optical unit 110 to stop capturing images (S20), and ends the process in FIG.

[0074] Next, a flowchart of the analysis process is shown in Figure 8. Figure 8 shows the process when the optical information to be read is a code symbol, and is an example of processing in continuous reading mode, where even if reading of optical information is successful, reading of the next optical information is started immediately. The process in Figure 8 corresponds to the reading procedure. This analysis process is executed in parallel with the process of Fig. 7. The analysis process is a reading procedure process, and in this process, the CPU 121 functions as a reading unit.

[0075] 8, CPU 121 performs object extraction processing on the image data to be processed (S31), and performs decoding processing on the extracted object (S32). If the decoding is successful (Yes in S33), the decoded data is output as the reading result (S34), and the processing ends. If the decoding fails (No in S33), and if the time from the start of the analysis processing is within a predetermined valid reading time (No in S35), the processing returns to step S31 and is repeated. If the valid reading time has expired (Yes in S35), a reading error is output (S36), and the processing ends.

[0076] The analysis process shown in FIG. 8 may be any known process, and different processes may be performed depending on the intended reading target and reading mode. For example, when the optical information is successfully read, a reading end instruction may be issued to end the reading at that point. This mode can be considered a single reading mode as opposed to continuous reading. Furthermore, in order to prevent the same code symbol from being read repeatedly, the next analysis process may be suspended for a predetermined time after a successful reading. In any case, the reading device 100 executes the above-mentioned processing to execute the algorithm of steps 1 to 4, and can obtain the effect of improving the reading success rate described for this algorithm.

[0077] 7, the analysis process currently being performed is stopped in step S18, but this is not essential. If the control unit 120 does not have sufficient resources to perform analysis processes on two or more images in parallel, the analysis process currently being performed must be stopped in order to perform analysis process on a new image. However, if there are sufficient resources to perform the analysis process currently being performed and the analysis process on the new image in parallel, there is no need to stop the analysis process currently being performed. Even in such a case, by proceeding to step S18 only if step S17 returns Yes, image analysis can be performed that is expected to have a higher reading success rate without unnecessarily increasing the number of parallel analysis processes being performed, thereby achieving a high overall reading success rate through efficient processing.

[0078] Next, an experiment conducted by the inventor to demonstrate the effect of this embodiment will be described with reference to FIGS. FIG. 9 is a diagram showing the schematic configuration of the experimental device used in this experiment. In this experiment, a code symbol displayed on a display 221 of a smartphone 220 fixed on a turntable 210 that rotates around a central axis 211 as shown by an arrow R1 as shown in Fig. 9 was read by a reading device 100 fixed outside the turntable 210. As the turntable 210 rotates, the smartphone 220 passes through an imaging range F of the optical unit 110 as shown by an arrow R2, and the reading device 100 is made to read the code symbol during this passage in continuous reading mode. The rotation speed of the turntable 210 is changed in various ways, and the reading success rate at each rotation speed is evaluated.

[0079] The results shown in Figure 10 are from a case where a Sharp Aquos SHG07 was used as the smartphone 220, the display brightness was set to 100%, and the closest distance between the reader 100 and the smartphone 220 was 40 millimeters. The reading success rate was calculated based on the number of successful reading attempts out of 40 under each condition. The code symbol to be read was a QR Code (registered trademark) with a side length of 20 millimeters and 57 cells. In Fig. 10, the solid line shows the results when reading is performed by the reading device 100 of this embodiment performing the processing in Fig. 7. The dashed line shows the results, as a comparative example, when edge centrality ECC is not used, the valid reading time in the analysis processing in Fig. 8 is set to 100 milliseconds, and analysis processing of a new image is started if no analysis processing is being performed at the time of capturing the image.

[0080] The reader 100 used in this experiment can capture an image approximately once every 15 milliseconds, and if decoding is successful, the analysis process is generally completed within the 100 millisecond timeout. Furthermore, if the rotation speed of the turntable 210 is 300 / 300 rps (revolutions per second), the code symbol passes through the imaging range F of the optical unit 110 in approximately 90 milliseconds. If the rotation speed is 125 / 300 rps, the code symbol passes through the imaging range F of the optical unit 110 in approximately 216 milliseconds.

[0081] As can be seen from FIG. 10, the reading device 100 of this embodiment had a higher reading success rate than the reading device of the comparative example over the entire range of rotation speeds in which the experiment was conducted. At 125 / 300 rps, the slowest rotation speed tested, even the comparative reading device is capable of two analysis processes while the code symbol passes through the imaging range F. Therefore, if an image of the code symbol near the center can be captured at either of these times, successful reading can be expected, and in fact a reading success rate of just over 80% was achieved. However, at speeds above approximately 175 / 300 rpm, the code symbol can only be analyzed 1.5 times or less while passing through the imaging range F, and the reading device of the comparative example can essentially only analyze one image. For this reason, the reading success rate drops sharply at speeds of this magnitude.

[0082] On the other hand, the reading device 100 of this embodiment can be expected to perform analysis processing on the image in which the code symbol is located closest to the center of the captured image. Since imaging can be performed in a shorter time than analysis processing, even at 175 / 300 rpm, it is possible to capture 10 images while the code symbol passes through the imaging range F, and it can be expected that some of these images will show the code symbol located quite close to the center. Therefore, a high reading success rate is achieved even for code symbols moving at this speed.

[0083] Even at the fastest rotation speed of 300 / 300 rps, it is possible to capture about six images while passing through the imaging range F, but at this speed, image blur cannot be ignored and is thought to be the cause of a lower reading success rate. However, in reality, it is thought that there are few cases where it is necessary to read code symbols moving at such high speeds. The reading success rate was maintained at approximately 90% or more up to speeds of around 200 / 300 rps, and a 100% success rate was achieved at 125 / 300 rps, so it can be said that the device demonstrates sufficient performance.

[0084] [Modification] This concludes the description of the embodiment, but in this invention, the specific configuration of the device, the specific processing procedure, the type of optical information to be read, the calculation formulas for various parameters, the time required for each process, etc. are not limited to those described in the embodiment. First, it is not essential that the weight w used in calculating the edge centrality ECC be a value proportional to the distance from the center.

[0085] FIG. 11 shows a first modified example of the relationship between the position of a sample pixel in an image and the weight w. In this example, the weight w has a value of 1 at points on vertical line 231 at the center position when viewed horizontally in the image 200, and a value of 0 at points on vertical line 232 at the horizontal end. At points in between, the weight w has a value proportional to the distance from the center when viewed horizontally. 12A to 12C show the relationship between the positional relationship between the optical information and the imaging range F at the time of imaging, and the magnitude of the edge centrality calculated by Equation 2, when the weight w shown in Fig. 11 is used. In this example, the optical information to be read is a one-dimensional barcode 108.

[0086] In this example, as in the case of FIG. 6A, when imaging is performed with the barcode 108 located near the center of the imaging range F as in FIG. 12A, the value of the edge centrality ECC becomes large. Also, as shown in Figure 12B, when imaging is performed with the barcode 108 located horizontally near the edge of the imaging range F, the value of the edge centrality ECC is smaller than in the case of Figure 12A and is medium, which is the same as in the case of Figure 6B. However, as shown in FIG. 12C, even if the barcode 108 is near the edge of the imaging range F in the vertical direction, if it is near the center of the imaging range F in the horizontal direction, the value of the edge centrality ECC will be as large as in the case of FIG. 12A.

[0087] In the case of barcode 108, the accuracy of decoding the bars at the edges decreases as the horizontal position in the image approaches the edges, just as in the case of 2D code 106. However, even if the vertical position is close to the edges, particularly if the bar appears large in the image, part of the bar is often located near the center of the image, and decoding is not affected.

[0088] Therefore, when reading a one-dimensional barcode 108 and assuming that the longitudinal direction of the bar is vertical, it is effective to use a weight w as shown in FIG. 11 to select an image to be subjected to analysis processing without considering the vertical position. It should be noted that even in the vertical direction, the success rate of decoding may decrease if part of the barcode 108 falls outside the imaging range F. However, even if the weight w shown in Fig. 11 is used, the edge centrality ECC value of such an image will be small, making it less likely to be subject to analysis processing.

[0089] FIG. 13 shows a second modification of the relationship between the position of a sample pixel in an image and the weight w. This example uses a similar approach to that of Figure 11, but also takes into account the vertical position in the figure to some extent, in determining the value of the weight w. At the center 251 of the image 200, w = 1, and moving horizontally from there to end point 252 in the figure, w = 0, while moving vertically to end point 253, w = 0.8. In addition, w decreases at a constant rate as the distance from the center 251 increases in both the horizontal and vertical directions.

[0090] By defining the weight w in this way and appropriately setting the values ​​of w at the end points 252 and 253, it is possible to arbitrarily adjust the ratio between the degree to which the position of the sample pixel in the horizontal direction in the image contributes to the value of the weight w and the degree to which the position of the sample pixel in the vertical direction in the image contributes to the value of the weight w. It is advisable to adjust these degrees while taking into consideration the degree to which you want to attempt analysis processing on images where optical information is located at the edges in the vertical direction. It is also possible to adjust the ratio of the degree to which the position of the sample pixel as viewed in each direction in the image contributes to the weight w, not only in the horizontal and vertical directions but also in any first and second directions that are not parallel to each other.

[0091] The relationship between the position of the sample pixel in the image and the value of the weight w may be changed according to the setting of the type of optical information to be read, which is received by the reading condition setting receiving unit 148. When reading a one-dimensional barcode, the weight w is determined as explained using Fig. 11 or 13, and when reading other optical information, the weight w is determined as explained using Fig. 5. This change can be made by the reading control unit 145, which functions as a change unit, and this change processing corresponds to a change procedure. Furthermore, the relationship between the distance from the center and the value of w does not have to be a simple proportional relationship, but can be any other appropriate relationship, such as proportional to the square of the distance.

[0092] As another modification, if it is possible to predict in advance what the object to be read is (for example, a smartphone), it is possible to prevent the optical unit 110 from capturing an image under imaging conditions that enable the object to be captured well, thereby avoiding capturing an image of the background, which is not the object to be read, with high contrast, resulting in a high edge centrality ECC in the background image. This prevents a situation in which a high edge centrality ECC occurs in the image immediately before the optical information to be read enters the field of view F of the optical unit 110, resulting in a "No" in step S17 of Figure 7 and preventing the start of analysis processing when the optical information is near the edge.

[0093] In addition, by setting the effective reading time in the analysis process of Figure 8 to a short value, even if the background happens to be captured with high contrast and a high edge centrality ECC is obtained, the risk of continuing the analysis process for a long time and not being able to start analysis process for an image where the optical information is captured at the edge and the edge centrality ECC is not very high can be reduced.

[0094] Furthermore, as yet another variation, in the above-described embodiment, when a new image is captured, the criterion for determining whether the image is "an image that is considered to be more likely to be read successfully" than the image being analyzed is "whether the optical information in the new image is located closer to the center than in the image being analyzed" in step 2 above, and specifically, an example was described in which this determination is made using edge centrality ECC. However, it is not essential to determine whether the optical information is located near the center by referring to the degree of fluctuation in pixel values, as in the edge centrality ECC. This method is merely one example of a method that can determine whether the optical information is located near the center with a small amount of calculation.

[0095] For example, when a process for identifying the position of a code symbol in an image is performed as part of or before the process for decoding the code symbol in the image, the position of the code symbol identified by this process may be used as a parameter indicating the degree to which the optical information is located near the center of the image. In this case, it is not essential to refer to the degree of variation in pixel values ​​when identifying the position of the optical information.

[0096] Furthermore, it is not necessary to determine whether an image is "more likely to be successfully read" based on "whether the optical information is located closer to the center." Images may be compared based on other criteria, such as the brightness, contrast, or pixel value histogram of the entire image, or these may be used in combination with the position of the optical information in the image, to determine which is "more likely to be successfully read." It is also possible to determine the value of some parameter that indicates the degree to which each image is likely to be successfully read, and compare the parameter values ​​to make this determination. These modified examples also provide similar effects to those of the above-described embodiment, although the level of effect varies depending on the time required for the determination in the above-described procedure 2 and the processing load.

[0097] As yet another variant, it is not precluded to provide the functions of the reading device 100 of each of the above-described embodiments in a distributed manner across multiple devices, for example, by providing some of the functions shown in Figure 2, etc. in the connected data processing device. In addition, in the above-described embodiment, an example in which the reading device 100 is a stationary type has been described, but the present invention is not limited to this. In a case in which the reading target 101 moves relative to the reading device 100 and it is difficult to predict in advance when the reading target 101 will enter the imaging range F, the same effects as those of the above-described embodiment can be obtained even if the reading device 100 is a movable type.

[0098] Furthermore, an embodiment of the program of the present invention is a program for causing one computer, or multiple computers working together, to control the required hardware, realize the functions of the reading device 100 in the above-described embodiment, or execute the processing described in the above-described embodiment.

[0099] Such a program may be stored in a ROM or other non-volatile storage medium (flash memory, EEPROM, etc.) that is included in the computer from the beginning. It may also be provided by recording it on any non-volatile storage medium such as a memory card, CD, DVD, or Blu-ray disc. Furthermore, it may be downloaded from an external device connected to a network, installed on a computer, and executed.

[0100] Furthermore, it goes without saying that the configurations of the embodiments and modified examples described above can be implemented in any combination as long as they are not mutually contradictory, and that only some of them can be extracted and implemented. [Explanation of symbols]

[0101] 100...reading device, 101...reading object, 102a...code symbol, 102b...character string, 105...optical information, 106...two-dimensional code, 107...frame, 108...barcode, 110...optical unit, 120...control unit, 131...operation unit, 132...notification unit, 133...display unit, 141...imaging unit, 142...image acquisition unit, 143...information reading unit, 144...output unit, 145...reading control unit, 146...edge centrality calculation unit , 147...imaging control unit, 148...reading condition setting reception unit, 149...reading instruction reception unit, 200...image, 201, 251...center of image, 202...diagonal end of image, 210...rotating table, 211...center axis, 220...smartphone, 221...display, 231, 232...vertical line in image, 252, 253...end point of image, A...arrow indicating movement direction, F...imaging range, R1, R2...arrow indicating rotation direction

Claims

1. an image acquisition procedure for periodically acquiring images captured by the imaging unit; an image analysis step of determining a value of a first parameter that indicates the degree to which portions of the image acquired in the image acquisition step where pixel values ​​rapidly fluctuate are concentrated in a central portion of the image; a reading step of analyzing the image acquired in the image acquisition step and reading optical information contained in the image; an optical information reading method characterized by comprising a reading control procedure in which, when a second image is newly acquired in the image acquisition procedure while a first image is being analyzed in the reading procedure, the value of the first parameter for the second image is compared with the value of the first parameter for the first image, and if the degree indicated by the value of the first parameter for the second image is greater, a new analysis of the second image by the reading procedure is started.

2. 2. The optical information reading method according to claim 1, The optical information reading method, wherein the reading control procedure includes a procedure for halting analysis of the first image by the reading procedure when analysis of the second image by the reading procedure is newly started.

3. 2. The optical information reading method according to claim 1, In the image analysis procedure, the value of the first parameter is calculated for a predetermined number of sample pixels in the image based on the sum of the values ​​of a second parameter indicating the degree of variation in pixel values ​​in the vicinity of each sample pixel weighted by the value of a third parameter indicating how close the sample pixel is to the center of the image.

4. 4. The optical information reading method according to claim 3, A method for optically reading information, comprising determining the value of the second parameter for each sample pixel based on a difference in pixel value between the sample pixel and a pixel adjacent to the sample pixel.

5. 4. The optical information reading method according to claim 3, an optical information reading method, characterized in that the value of the second parameter for each sample pixel is determined based on a difference in pixel value between the sample pixel and a pixel horizontally adjacent to the sample pixel, and a difference in pixel value between the sample pixel and a pixel vertically adjacent to the sample pixel.

6. 4. The optical information reading method according to claim 3, a setting reception procedure for receiving a setting of the type of optical information to be read; a modification step of modifying the relationship between the positions of the sample pixels and the values ​​of the third parameters based on the settings received in the setting reception step.

7. 7. The optical information reading method according to claim 6, an optical information reading method characterized in that, in the change procedure, the ratio between the degree to which the position of the sample pixel in the image as viewed in a first direction contributes to the value of the third parameter and the degree to which the position of the sample pixel in the image as viewed in the second direction contributes to the value of the third parameter is changed for mutually different first and second directions, depending on the content of the setting received in the setting reception procedure.

8. an image acquisition procedure for periodically acquiring images captured by the imaging unit; an image analysis step of determining a value of a first parameter based on a sum of values ​​of a second parameter indicating a degree of variation in pixel values ​​in the vicinity of each sample pixel for a predetermined number of sample pixels in the image acquired in the image acquisition step, the second parameter being weighted by a value of a third parameter indicating how close the sample pixel is to the center of the image; a reading step of analyzing the image acquired in the image acquisition step and reading optical information contained in the image; an optical information reading method characterized by comprising a reading control procedure in which, when a second image is newly acquired in the image acquisition procedure while a first image is being analyzed in the reading procedure, the value of the first parameter for the second image is compared with the value of the first parameter for the first image, and if the degree of variation indicated by the value of the first parameter for the second image is greater, a new analysis of the second image by the reading procedure is started.

9. an image acquisition procedure for periodically acquiring images captured by the imaging unit; an image analysis step of determining a value of a first parameter that indicates the degree to which the optical information to be read is located near the center of the image acquired in the image acquisition step; a reading step of analyzing the image acquired in the image acquisition step and reading optical information contained in the image; an optical information reading method characterized by comprising a reading control procedure in which, when a second image is newly acquired in the image acquisition procedure while a first image is being analyzed in the reading procedure, the value of the first parameter for the second image is compared with the value of the first parameter for the first image, and if the degree indicated by the value of the first parameter for the second image is greater, a new analysis of the second image by the reading procedure is started.

10. an image acquisition procedure for periodically acquiring images captured by the imaging unit; a reading step of analyzing the image acquired in the image acquisition step and reading optical information contained in the image; an optical information reading method characterized by comprising a reading control procedure that, when a second image is newly acquired in the image acquisition procedure while a first image is being analyzed in the reading procedure, compares the first image and the second image based on the value of a specific parameter that indicates the characteristics of the images, and controls whether or not to start a new analysis of the second image in the reading procedure depending on the comparison result.

11. an image acquisition unit that periodically acquires images captured by the imaging unit; an image analysis unit that calculates a value of a first parameter that indicates the degree to which locations where pixel values ​​rapidly fluctuate are concentrated in a central portion of the image acquired by the image acquisition unit; a reading unit that analyzes the image acquired by the image acquisition unit and reads optical information included in the image; An optical information reading device characterized by comprising a reading control unit that, when the image acquisition unit newly acquires a second image while the reading unit is analyzing a first image, compares the value of the first parameter for the second image with the value of the first parameter for the first image, and if the degree indicated by the value of the first parameter for the second image is greater, causes the reading unit to start a new analysis of the second image.

12. 12. The optical information reading device according to claim 11, The optical information reading device according to claim 1, wherein the reading unit stops analyzing the first image when starting a new analysis of the second image.

13. 12. The optical information reading device according to claim 11, The image analysis unit determines the value of the first parameter for a predetermined number of sample pixels in the image based on the sum of the values ​​of a second parameter indicating the degree of variation in pixel values ​​in the vicinity of each sample pixel, weighted by the value of a third parameter indicating how close the sample pixel is to the center of the image.

14. 14. The optical information reading device according to claim 13, An optical information reading apparatus, wherein the value of the second parameter for each sample pixel is determined based on a difference in pixel value between the sample pixel and a pixel adjacent to the sample pixel.

15. 14. The optical information reading device according to claim 13, an optical information reading device, characterized in that the value of the second parameter for each sample pixel is determined based on a difference in pixel value between the sample pixel and a pixel horizontally adjacent to the sample pixel, and a difference in pixel value between the sample pixel and a pixel vertically adjacent to the sample pixel.

16. 14. The optical information reading device according to claim 13, a setting receiving unit that receives a setting of the type of optical information to be read; an alteration unit that alters the relationship between the positions of the sample pixels and the values ​​of the third parameters based on the settings received by the setting reception unit;

17. 17. An optical information reading device according to claim 16, An optical information reading device characterized in that, in accordance with the content of the setting accepted by the setting accepting unit, the change unit changes, for mutually different first and second directions, the ratio between the degree to which the position of the sample pixel in the image as viewed in the first direction contributes to the value of the third parameter and the degree to which the position of the sample pixel in the image as viewed in the second direction contributes to the value of the third parameter.

18. an image acquisition unit that periodically acquires images captured by the imaging unit; an image analysis unit that calculates a value of the first parameter based on a value obtained by weighting and summing values ​​of a second parameter that indicates a degree of variation in pixel values ​​in the vicinity of each sample pixel for a predetermined number of sample pixels in the image acquired by the image acquisition unit, using a value of a third parameter that indicates how close the sample pixel is to the center of the image; a reading unit that analyzes the image acquired by the image acquisition unit and reads optical information included in the image; An optical information reading device characterized by comprising a reading control unit that, when the image acquisition unit acquires a new second image while the reading unit is analyzing a first image, compares the value of the first parameter for the second image with the value of the first parameter for the first image, and if the degree of variation indicated by the value of the first parameter for the second image is greater, causes the reading unit to start a new analysis of the second image.

19. an image acquisition unit that periodically acquires images captured by the imaging unit; an image analysis unit that calculates a value of a first parameter that indicates the degree to which the optical information to be read is located near the center of the image acquired by the image acquisition unit; a reading unit that analyzes the image acquired by the image acquisition unit and reads optical information included in the image; An optical information reading device characterized by comprising a reading control unit that, when the image acquisition unit newly acquires a second image while the reading unit is analyzing a first image, compares the value of the first parameter for the second image with the value of the first parameter for the first image, and if the degree indicated by the value of the first parameter for the second image is greater, causes the reading unit to start a new analysis of the second image.

20. an image acquisition unit that periodically acquires images captured by the imaging unit; a reading unit that analyzes the image acquired by the image acquisition unit and reads optical information included in the image; An optical information reading device characterized by comprising a reading control unit that, when the image acquisition unit newly acquires a second image while the reading unit is analyzing a first image, compares the first image and the second image based on the value of a specific parameter that indicates the characteristics of the images, and controls whether or not to cause the reading unit to newly start analyzing the second image depending on the comparison result.

21. A program for causing a processor that controls the imaging unit to execute the optical information reading method according to claim 1 .

Citation Information

Patent Citations

  • Systems and methods for placing predetermined patterns in images

    JP2008547115A

  • JPP7674779B

  • JPP7684760B

  • Indicia location coprocessor

    US20240289578A1