The present application claims foreign priority based on Japanese Patent Application No. 2010-210245, filed Sep. 17, 2010, the contents of which is incorporated herein by reference.
1. Field of the Invention
The present invention relates to a code quality evaluating apparatus that evaluates quality of a code such as a bar code, a QR code, or the like.
2. Description of the Related Art
Now that traceability is widespread, many industries have employed a system in which an optical information reading apparatus called a bar code reader or a code reader is installed in a factory, a physical distribution complex and the like. A code such as a bar code is processed or inscribed to a product or a commodity, and information of the code is read by the optical information reading apparatus.
Japanese Unexamined Patent Publication No. H11-28586 discloses a laser marker that inscribes a code to a work using laser light. Japanese Unexamined Patent Publication No. 2008-33465 discloses a bar code reader that irradiates optical information with laser light, visible light or infrared light, and takes in reflected light in an optical reading element (an imaging element) to read the code, that is, the optical information. There has been known a bar code reader that has illumination LEDs incorporated therein in order to execute imaging of the optical information while irradiating the optical information with the light of the illumination LEDs (Japanese Unexamined Patent Publication No. 2008-33465). However, in case of a shortage in an amount of light of these internal illumination LEDs, an external illumination unit separate from the bar code reader has been marketed (Japanese Unexamined Patent Publication No. H04-241476).
For the laser marker, a processing condition is set by a user in advance, and in accordance with the setting values, processing is executed by the laser marker. Although it is not specific to the laser marker, a conventional method relating to the setting of the processing condition will be described taking the laser marker as one example. A code processing is actually inscribed on a test piece of a work, using the laser marker, and a user determines good or poor by viewing this inscribed code. The processing test using the test piece is conducted using a sample processing function of the laser marker. The sample function is a function of executing the processing by changing parameters such as a laser output and a scanning speed, that is, by changing the processing condition. By viewing many codes, the user decides, as the setting values of the laser marker, the processing condition of the code under which he or she determines that processing quality thereof enables the reading by the bar code reader without any problem.
However, it is not easy to determine whether the code provided in the sample piece of the work is good or poor, using the sample processing function. Particularly, it is known that in a code directly inscribed to a work, which is called direct part marking, and in a code given to a work with a fine grinding trace on a surface, which is called hairline work, a way to throw the light is a factor that affects the reading of the bar code reader.
Accordingly, in some cases, even the code that the user determines that there is no problem by viewing may be difficult for the bar code reader to read. When there are a plurality of codes, which are similar enough when viewed by the user that there is no problem even if any one is selected, one of the codes may be read more stably in view of determination on the bar code reader side.
Since it is not a person but the bar code reader that reads the code, it gives the user benefits to suggest an optimal code from a number of codes of the sample pieces under an illumination condition and a reading condition of the bar code reader, and it is also rational.
An object of the present invention is to provide a code quality evaluating apparatus capable of evaluating quality of a code from an optical information reading apparatus side, and presenting suggestion of setting of a processing condition to a user.
Another object of the present invention is to provide a code quality evaluating apparatus capable of evaluating quality of a code provided on a test piece of a work, using a sample processing function included in a marker that gives the code to the work, and presenting suggestion of setting of a processing condition to a user.
According to the present invention, the above-described technical objects are achieved by providing a code quality evaluating apparatus that is connected to an optical information reading apparatus, and acquires images picked up by the optical information reading apparatus to evaluate quality of codes included in the picked-up images, the code quality evaluating apparatus including:
an image taking-in device that takes in the picked-up images obtained by the optical information reading apparatus imaging the codes given to a work;
a code extracting device that extracts the readable codes from the picked-up images;
a score calculating device that performs reading trial to the codes extracted by the code extracting device while changing an imaging parameter, and calculates scores of reading stability of the extracted codes with respect to the change of the imaging parameter, based on results of the reading trial; and
a display device that displays the images of the codes together with the scores calculated by the score calculating device.
That is, according to the present invention, the code is imaged by the optical information reading apparatus, and the scores of the reading stability of the codes in the picked-up images are displayed, the scores being obtained by the results from the reading trial to the codes while changing the imaging parameter with respect to the codes in the picked-up images, by which suggestion of the processing condition setting can be presented to the user. The imaging parameter may include the brightness, filtering, a lighting pattern, and the like, and a barometer of the readability may be found by changing only one of the parameters or by changing the plurality of parameters.
According to a preferred embodiment of the present invention, the code extracting device extracts the readable codes by performing the reading trial while changing brightness for the codes. In this manner, in this process of extracting the codes, the reading trial is performed by changing the brightness for the codes, which enables the readable codes to be widely extracted.
According to a preferred embodiment of the present invention, the score calculating device performs the reading trial while narrowing down a reading region to each of the codes extracted by the code extracting device and changing the brightness. By limiting a size of the reading region to the code, the reading trial that is less affected by the way to throw light can be executed.
Moreover, according to a preferred embodiment of the present invention, the score is calculated based on a barometer of readability by the reading trial. Not a peak of the readability (easiness of decoding) but a value of integral of each of the barometers in the reading trial is employed to calculate the score, by which a rough indication of a level of the reading stability of the code can be presented to the user, using the level of the score.
Other objects, and operation and effects of the present invention will be clear from the detailed description of the preferred embodiments of the present invention given below.
Hereinafter, a preferred embodiment of the present invention will be described based on the accompanying drawings.
The ring-type external illumination unit 4 is a dedicated member for the bar code reader system 1. It is preferable to prepare a plurality of different types of external illumination units 4. Obviously, an illumination unit other than the dedicated member can be incorporated as the external illumination unit 4. The “optical information reading apparatus” is generally called a “bar code reader” or a “code reader”, and herein, an industry term, the “bar code reader” is used.
The bar code reader system 1 is installed in a conveyance path of products or goods in a factory where the products or goods on which optical information or an optical code such as barcode or QR code is processed are manufactured, so that information recorded in the optical information processed or inscribed on the products or goods is read by the bar code reader 2, and this information is transferred to the personal computer 3 to analyze the information. An “optical information reading apparatus” is generally called a “bar code reader” or a “code reader”, and herein, an industry term, “bar code reader” is used.
In an example shown in the figure, as disclosed in
A plurality of substrates independent from one another are incorporated in the bar code reader 2. Referring to
In a main substrate 10, a CPU and a memory M are mounted to transfer an image to the memory M and process the image in a DSP (Digital Signal Processor). The bar code reader 2 including the internal illumination unit 5 is controlled by the CPU of the main substrate 10, and communication with the external illumination unit 4 is executed.
A power supply of the bar code reader 2 is generated. An insulated input and output circuit is installed.
A large-capacity memory is mounted and an acquired image and various settings are stored in this large-capacity memory. On this substrate, elements that cannot be mounted on the main substrate 10 with a limited size and shape are mounted.
A CMOS image sensor (optical reading element) is installed, so that the image is acquired and transferred to the main substrate 10. LEDs 40 for pointer (
An LED substrate 14 is a disc-like substrate with a circular opening 14a making up the internal illumination unit 5. A plurality of illumination LEDs 80 are installed on the LED substrate 14 (
A connector substrate 15 is a substrate making up an interface of input and output with respect to an external power supply, an IO, an RS232C, Ethernet (registered trademark), and the external illumination unit 4. Power is supplied to the external illumination unit 4 from the power supply substrate 11.
Referring to
Referring again to
Referring to
Referring to
For positioning of the main substrate 10 and the power supply substrate 11, six claws 38 are integrally formed in the chassis 30 (
The camera module 32 has the cylindrical lens assembly 36, and the lens assembly 36 is disposed between the pair of arms 35b, 35b of the camera holder 35. Referring to
The LEDs 40 for pointer are incorporated in the camera module 32, which makes it easy to keep a relational position between the optical reading element 43 and the LEDs 40 for pointer constant, and to downsize the bar code reader 2. Particularly, the LEDs 40 for pointer share the lens assembly body 36 of the bar code reader 2 with the optical reading element 43, which makes it easy to downsize the bar code reader 2 because dedicated lenses for the LEDs 40 for pointer become unnecessary.
The camera module 32 is characterized in that a distance between the optical reading element (image pickup element) 43 and the lens assembly 36 is very large as compared with a case in the related art, and that in the optical information such as the bar code and the QR code, even an ultramicro region thereof can be read with a high resolution. When the camera module 32 larger in length dimension as compared with the related art is contained in the bar code reader 2, the above-described substrate arrangement should be noted. That is, introducing the technical idea of surrounding the camera module 32 by the main substrate 10, the power supply substrate 11 and the sub substrate 12 enables the long camera module 32 to be contained in the outer case while downsizing the bar code reader 2.
Specifications of the camera module 32 are as follows.
The main substrate 10 and the power supply substrate 11 are arranged adjacent to, and along the different side surfaces of the main case 6 having the polygonal cross section and made of a metal material excellent in thermal conductivity, which makes it easy to release heat of the main substrate 10 and the power supply substrate 11 outside, and enables the camera modules 32 to be contained in the space surrounded by the main substrate 10 and the power source substrate 11, thereby enabling the further downsizing of the bar code reader 2. Particularly, interposing the heat releasing members such as the thermally conductive rubbers 45 between the main substrate 10 and the main case 6, and between the power substrate 11 and the main case 6, can increase heat release efficiency, and can further downsize the bar code reader 2 from this view point.
Reference numeral 46 in
Referring to
Referring to
Fixing the camera module 32 to the main case 6, which is a metal molded article, can increase positioning accuracy of the camera module 32, thereby increasing positioning accuracy of the visual field range, as compared with a case where the camera module 32 is fixed to the chassis 30.
Since there is employed a configuration in which the assembly in which the major substrates incorporated in the bar code reader 2, that is, the power supply substrate 11, the main substrate 10, and the like, and the camera module 32 including the lens assembly 36 are assembled to the chassis is incorporated in the outer case (main case 6), preparing a plurality of types of camera modules 32 enables a plurality of types of bar code readers 2 to be provided to a user, using the same outer case. For the different types of camera modules 32, the same power supply substrate 11, the main substrate 10, and the like are employed, and the same outer case is used to manufacture the bar code reader 2.
The pair of right and left attachment portions 35c of the camera module 32 are seated on the pair of right and left attachment seats 62 of the main case 6, and the respective attachment portions 35c are fixed to the corresponding attachment seats 62, using four screws 63 (
Referring to
First and second CPUs 101, 102 are processors that access the shared memory 104 through the shared bus 103, and are each made of a predetermined arithmetic operation circuit. The shared bus 103 is a common data bus to the first and second CPUs 101, 102. The shared memory 104 is made of a volatile semiconductor storage element to retain imaging parameters, decoding parameters, a read image, and a decoding result, and is typically a RAM (Random Access Memory).
The optical reading element 43 is made of, for example, a CMOS image sensor, which receives reflected light from the work to generate a read image. The image control circuit 105 is made up of an amplifier that amplifies an image signal from the optical reading element 43, an A/D converter that converts the image signal after the amplification to a digital signal, and the like, and controls the optical reading element 43, based on the imaging parameters inside the shared memory 104 such as, for example, exposure time, a gain, and the presence or absence of filter processing.
The DMAC (Direct Memory Access Controller: DMA controller) 111 transfers the read image generated by the optical reading element 43 from the imaging control circuit 105 to the shared memory 104 through the shared bus 103.
The network controller 106 is a communication circuit that communicates with external equipment such as the personal computer 3 through a LAN 112 (
The flash memory 108 is made of a nonvolatile semiconductor storage element to retain an image file, and for example, a detachable memory card such as an SD (Secure Digital, registered trademark) card is used. The input/output controller 110 controls writing and reading with respect to the image file in the flash memory 108.
When the network controller 106 or the serial communication controller 107 receives a reading start command to start the reading, the first CPU 101 instructs reading start to the imaging control circuit 105. The first CPU 101 also transfers the read image received from the optical reading element 43 to the shared memory 104.
The second CPU 102 makes up a decoding unit that reads the read image from the shared memory 104 to perform decoding processing, based on a decoding processing request from the first CPU 101. When the decoding processing ends in the second CPU 102, the decoding result is written in the shared memory 104.
The read image is stored in the image storage region 117. The setting banks 116 each retain various settings such as the imaging parameters, the decoding parameters and the like. These imaging parameters and decoding parameters are set using the personal computer 3. The setting banks 116 each include the imaging parameters and the decoding parameters, as described above.
The plurality of setting banks 116 are stored in the shared memory 104 (
A representative example of the setting parameters of an imaging system is as follows:
A representative example of the setting parameters (decoding setting) of a reading system is as follows:
The external illumination unit 4 in a ring outer shape has a circular outline, and has a circular opening 4a in its center. The bar code reader 2 is positioned so that the center of the circular opening 4a matches the optical axis of the lens assembly 36 of the bar code reader 2. A stand 71 is prepared to position the bar code reader 2. As will be described in detail later, the stand 71 is made up of a pair of plate members 72 fixed to a back surface of the external illumination unit 4 by bolts, and attachment fittings 73 to fixedly set the bar code reader 2 at an arbitrary height position of the plate members 72.
First, a structure of the external illumination unit 4 will be described with reference to
The plurality of illumination LEDs 80 are installed in the ring-shaped LED substrate 77 having almost the same size as that of a ring cross-sectional shape of the ring-shaped, cylindrical front case 75. In the ring-shaped circuit substrate 78 preferably having almost the same size as the ring-shaped LED substrate 77, a CPU that controls the lighting of the plurality of LEDs 80 mounted on the external illumination unit 4, and controls communication with the bar code reader 2, and a memory M (
For example, when a Fresnel lens (not shown) described later is employed in the front case 75, relative positioning between the illumination LEDs 80 of the LED substrate 77 and the front case 75 is important. In the example of
As a first modification, regarding a setting structure of the LED substrate 77 and the circuit substrate 78, instead of interposing the LED substrate 77, the circuit substrate 78 may be directly fixed to the rear case 76 via spacers. As a second modification, the circuit substrate 78 may be fixed to the rear case 76 via spacers, and the LED substrate 77 may be fixed to the circuit substrate 78 via other spacers.
Two models of dedicated external illumination units 4 are prepared.
In the ring-shaped LED substrate 14, partial illumination is performed, using, as a unit, each of a total of eight areas that are formed by dividing an entire area into four blocks at even intervals in a circumferential direction, and further dividing each of the blocks into two in the radial direction. Specifically, one row in an outermost circumference is divided into four areas at an interval of 90°. These areas are illustrated as an outer circumference first area AEout 1, an outer circumference second area AEout 2, an outer circumference third area AEout 3, and an outer circumference fourth area AEout 4. Two innermost and intermediate rows are divided into four areas at an interval of 90°. These areas are illustrated as an inner circumference first area AEin 1, an inner circumference second area AEin 2, an inner circumference third area AEin 3, and an inner circumference fourth area AEin 4. The LEDs 80 belonging to the respective areas of AEout 1 to AEout 4, and AEin 1 to AEin 4 are positioned so as to be distributed uniformly in the respective areas.
The illumination can be controlled, using each of the areas of the divided areas AEout 1 to AEout 4, and AEin 1 to AEin 4 of the internal illumination unit 5 as a unit. The lighting control by the division into these areas may include control of an amount of luminescence of the LEDs 80.
On the ring-shaped LED substrate 77 of the external illumination unit 4B having the large diameter, a large number of illumination LEDs 80 are arrayed almost uniformly in an entire circumference. The illumination LEDs 80 are arranged at almost the same interval on four concentric circles at a distance from one another in a radial direction. More specifically, the plurality of illumination LEDs 80 are arrayed on the four concentric circles different in diameter centering on the optical axis of the lens assembly 36 of the bar code reader 2.
In the external illumination unit 4B having the large diameter, partial illumination is performed, using, as a unit, each of a total of 32 areas that are formed by dividing an entire area into eight blocks at even intervals in a circumferential direction, and further dividing each of the blocks into four in the radial direction. Specifically, in the ring-shaped LED substrate 77, a row in an outermost circumference is divided into eight areas at an interval of 45°. These areas are illustrated as an outer circumference first area AEout 1 to an outer circumference eighth area AEout 8. The next row is also divided into eight areas at an interval of 45°. These areas are illustrated as an outer intermediate first area AEmid 1 to an outer intermediate eighth area AEmid 8. The next row is also divided into eight areas at an interval of 45°. These areas are illustrated as an outer intermediate ninth area AEmid 9 to an outer intermediate 16th area AEmid 16. A row in an innermost circumference is divided into eight areas at an interval of 45°. These areas are illustrated as the inner circumference first area AEin 1 to an inner circumference eighth area AEin 8. The external illumination unit 4B having the large diameter can also be controlled, using each of a total of 32 areas as a unit. In the external illumination unit 4B as well, the control of the amount of luminescence of the LEDs 80 can be executed on the area basis.
Referring to
In the ring-shaped LED substrate 77, a row in an outermost circumference is divided into eight areas at an interval of 45°. These areas are illustrated as the outer circumference first area AEout 1 to the outer circumference eighth area AEout 8. An intermediate row is also divided into eight areas at an interval of 45°. These areas are illustrated as the outer intermediate first area AEmid 1 to the outer intermediate eighth area AEmid 8. A row in an inner circumference is also divided into eight areas at an interval of 45°. These areas are illustrated as the inner circumference first area AEin 1 to the inner circumference eighth area AEin 8. In the external illumination unit 4A having the small diameter, the partial illumination can also be set by dividing the entire area into a total of 24 areas. The lighting control by dividing the entire area into these areas may include the control of an amount of luminescence of the illumination LEDs 80. A color of the illumination by the illumination LEDs 80 may be varied, using each of the areas set for the partial illumination as a unit.
For example, with the small-diameter external illumination unit 4A in
The LEDs in each of the rows belonging to each of the blocks are connected in series, and in each of the rows, the row switch 122 is connected in parallel. Accordingly, turning OFF the arbitrary row switch 122 allows the constant current to be supplied to the plurality of LEDs 80 belonging to the relevant block and the relevant row. The external illumination unit 4A includes this LED drive circuit, by which the area of the partial illumination can be arbitrarily set, using each of the rows in each of the blocks as a unit. Moreover, by providing the constant current circuit 121 in each of the blocks, for example, a current flowing in the illumination LEDs 80 in the first to third circumferential rows in the same block can be maintained constant.
In other words, without the constant current circuit 121, for example, if the illumination LEDs 80 in the first circumferential row are switched from OFF to ON when the illumination LEDs 80 in the second and third circumferential rows are lighted, the voltage applied to the illumination LEDs 80 in the second and third circumferential rows will change, thereby changing the current flowing the illumination LEDs 80 in the second and third rows, and thus changing brightness.
In other words, even when the block switch 120 is turned ON/OFF, the amount of luminescence of the illumination LEDs 80 belonging to the other blocks does not change. This is because the respective blocks are connected to the power source in parallel. However, when the row switch 122 is turned ON/OFF, the number of the LEDs 80 lighted in the relevant block changes, so that the brightness of the LEDs 80 changes with this.
When the lighting pattern of the partial illumination is set, fluctuation factors of the brightness of the LEDs 80 are desirably eliminated as much as possible in view of searching an optimal way to throw the light to the work. For this reason, the constant current circuit 121 is provided in each of the blocks. Thereby, when setting work of the lighting pattern is performed, it becomes easier to find the optimal lighting pattern by assuring uniformity and constancy of the luminance of the LEDs 80 in the lighted area to perform the partial illumination when the lighting pattern is changed. For the external illumination unit 4B having the large diameter, and the internal illumination unit 5, the LED drive circuit in
The internal illumination unit 5 and the external illumination unit 4 are both surface light sources with the plurality of LEDs arrayed two-dimensionally, and these surface light sources can be each divided into several areas circumferentially and radially to perform partial illumination, using each of the areas as a unit, and the lighting pattern indicating which area is to be lighted and which area is not to be lighted can be arbitrarily set by the user. The lighting pattern including the lighting in all the areas can be registered by the user using the PC 3, and the lighting pattern set by the user is stored in the memory M of the bar code reader 2, and in the memory M of the external illumination unit 4 when the external illumination unit 4 is connected. This lighting control includes the control of the amount of luminescence of the illumination LEDs 80. In
As described with reference to
As the imaging parameters included in each of the banks, the ON/OFF of the illumination, the illumination intensity, the lighting pattern of the illumination, the exposure time, the gain, the taking-in range of the picked-up image and the like are included, and as the decoding parameters, the type of the optical information (bar code, QR code, or the like), the type of filtering, the number of times of filtering processing, the decoding timeout time, the taking-in range, and the like are included.
First, the connection setting between the personal computer (PC) 3 and the bar code reader 2 is performed. At this time, the connection setting can be easy and conveniently performed by assigning a tentative IP address. When the dedicated external illumination unit 4 is connected to the bar code reader 2, the model information of the relevant external illumination unit 4 stored in the memory M (
Next, the pair of LEDs for pointer 40 incorporated in the bar code reader 2 is lighted and the work is placed within the visual field range of the bar code reader 2. The user positions the work while viewing the picked-up image displayed in the display screen (in the user interface screen) in
Referring to
The setting of the lighting pattern can be performed by calling a lighting pattern setting screen in
The schematic diagram displayed in the setting screen of
Regarding the setting of the partial illumination, in place of selecting the lighting area using the diagram display imitating the illumination units as described above, the plurality of lighting patterns registered in advance by the user may be displayed in a list, and the user may select the lighting pattern from these plurality of lighting patterns.
First, the bank whose setting the user wants to change by the tuning is selected, and the tuning processing is executed. Referring to
The optical information is extracted from the tuning target region set by the user. For the change in brightness made by the tuning processing, the brightness set in the processes of the setting of the optical information reading region and the adjustment of the brightness (
When the decoding of the optical information extracted from the tuning target region succeeds, a profile of the optical information is brought into a display state surrounded by a green frame. The appearance of this green frame allows the success of the decoding to be recognized at a glance. If the decoding never succeeds even when the various values of the parameters of the brightness, the decoding condition, the lighting pattern, and the like are changed with the tuning, it is processed as “tuning failure”.
The user interface screen includes display of a tuning score at the bottom right in
The bank that the user wants to use to try the reading of the optical information is selected, and a “reading percentage” button is pushed down, which allows a reading test to be executed. A result of the trial of the reading is displayed at the bottom right of the user interface screen in
When precise operation of the bar code reader system 1 is difficult with the plurality of banks already set, for example, in situations where the setting condition is not even, the reading is not stable, and so on, bank addition is performed. In an example in
An image that cannot be read is read again from the bar code reader 2, and the decoding condition is optimized (tuned). If the reading succeeds by the tuning of the decoding condition, a color of a success display field in
The tuning processing (
In the next step S101, the setting of the initial value of the brightness of the picked-up image displayed in the user interface screen is performed. As the initial value, the brightness obtained by the adjustment of the brightness of the optical information reading region (
In the next step S102, the reading of the tuning target region is started with the brightness of the initial value, and if the reading has succeeded, the type, the size, and the display position of the optical information are acquired, and the processing proceeds from step S104 to step S105. In step S105, most preferably, the brightness with which the reading has succeeded is set as the initial value, and the decoding of the optical information is executed while changing the values of the brightness and the other parameters, centering on the brightness of the initial value. Obviously, brightness within a predetermined range including the brightness with which the reading has succeeded may be set as the initial value, or the decoding may be executed while changing the brightness in the predetermined range including the brightness of the initial value, and the other parameters. The parameters to be changed in the tuning processing are exemplified as follows.
The above-mentioned (4) curved surface setting means the setting of the parameter suitable for the reading of the optical information given to a curved surface, for example, when the work is a columnar body.
In many cases, since the initial value of the brightness is the brightness set as the optimal value in the preceding processing, a percentage of the determination of the reading success in step S104 should be very high. Moreover, reading success on the first trial using the initial value of the brightness enables the information of the type, size, and position of the optical information such as the bar code and the QR code to be acquired at the initial stage of the tuning processing, and the information directly related to the optical information is reflected on the decoding processing in the next step S105. This allows the decoding to be ended with ease and in a short time. That is, when the reading succeeds for the first time, the information of the type, size, and position of the optical information is acquired, and this acquired information is reflected on the decoding processing.
The result (score) of the decoding executed in step S105 is calculated in the next step S106. Referring to this score, a rough indication of the value of the parameter suitable for the setting can be obtained.
In the next step S107, the highest score is detected from the plurality of decoding scores, and subsequently in step S108, the decoding is executed while sequentially changing the value of the parameter by narrowing down an interval of the change of the value of the parameter, in a range near the value of the parameter when the decode score is the highest, so that the results (scores) are created.
The results with the higher scores are detected from the decoding results (scores) as a plurality of candidates (S109), and the reading is executed with the candidate with the highest score of the plurality of candidates (S110), and if the reading has succeeded, the “tuning success” is determined, and the value of the parameter corresponding to this best candidate is decided as the value of the optimal parameter (S111, S112).
In many cases, it is considered that the tuning succeeds with the brightness of the initial value, that is, the optimal brightness set in the work before the tuning. Moreover, the reading is started by narrowing down a range to the tuning target region, which is a partial region of the picked-up image (S103). The percentage of the success of the reading is generally high, and the information of the position, size, and type of the optical information is acquired by the reading, which enables the subsequent tuning processing to be executed quickly, thereby largely shortening time required for the tuning.
The processing returns to step S104 in
Moreover, if the reading has failed in step S111 in
If the reading with the second candidate has failed, the reading with the third candidate is executed, and similar processing is executed with all the candidates until the reading succeeds (S115), and the value of the parameter corresponding to the candidate with which the reading has succeed is decided as the value of the optimal parameter (S116).
As described above, referring to
(Brightness)=(exposure time)×(gain setting)
In view of the foregoing, in the tuning setting screen, the user is enabled to select between “image quality priority” and “speed priority” (
In the “image quality priority” mode, for the exposure time, an upper limit value is set to 5 ms, and the maximum gain is limited up to 2 fold. In the “speed priority” mode, for the exposure time, the upper limit is the time set in advance, and the maximum gain is 5.4 fold.
Regarding the lighting pattern, it is preferable to enable the plurality of lighting patterns to be registered, and the initial value of the brightness setting is preferably prepared for each of the registered lighting patterns.
If determined as NO, that is, “reading failure” in steps S104 and S111, and the reading is disabled even though the reading trial is executed several times, the tuning of the parameters of the reading system (decoding setting) may be performed. The same is true when the reading becomes unstable during operation of the bar code reader 2. That is, when a “reading error” occurs during the operation of the bar code reader 2, the picked-up image when the reading error occurs is transferred to the personal computer 3, and by using this picked-up image, the parameters of the reading system are optimized by the personal computer 3 to reflect the optimized parameters on the operation of the bar code reader 2.
In the personal computer 3, a code quality evaluating program is installed. In the following, an outline of the code quality evaluating program will be described. First, a conventional way will be described. The optical information is processed or inscribed on the work by the marker. Taking as an example a laser marker that inscribes the code, that is, the optical information on the work, using laser light, good or poor (readability) of the code by the laser marker is decided by the eyes of the user. That is, when the processing condition of the laser marker is set, the plurality of codes are inscribed on a test piece of the work while changing the processing condition, using a sample processing function included by the laser marker, and the plurality of codes on this test piece are evaluated to set the processing condition of the code considered to be optimal in the laser marker. Conventionally, this evaluation has been left to the visual check by the user.
In general terms, it is known that with the code (the optical information such as the bar code and the QR code) inscribed directly to the work, called the direct part marking, and the code of the work including a fine grinding trace on a surface, called hairline work, that is, the optical information, a success percentage of the reading of the bar code reader varies depending on the way to throw the light and the like.
Accordingly, even if the user determines that the code is optimal by viewing, it is not necessarily optimal for the reading of the bar code reader in connection with the illumination. Moreover, even if the user considers that it makes no difference which any one of two prints is to be selected, there may be a difference in the reading of these two codes in terms of the reading of the bar code reader, particularly in the stability of the reading. On the operation of the bar code reader, it is generally rational to select the code with high reading stability of the bar code reader. As setting parameters of the laser marker, there are typically (1) a scanning speed of the marker and (2) laser output, and an increase in scanning speed will increase a processing speed of the work.
The personal computer 3, which has the code quality evaluating program installed, functions as a code quality evaluating apparatus. The code quality evaluating apparatus takes in picked-up images from the bar code reader 2, in which the codes inscribed on the test piece of the work by the laser marker are imaged under a common imaging condition. The readable codes are extracted from the picked-up images to evaluate the extracted codes.
When the plurality of codes are inscribed on one test piece, positions of the respective codes are specified from the picked-up images, and the reading trial is performed while changing the brightness in each of the codes. Moreover, when one code is inscribed on one test piece, a position of this one code is specified, and the reading trial is performed while changing the brightness.
The evaluation of the code is intended to present a level of the reading stability from the standpoint of the bar code reader 2 to the user as the score, which is easy for the user to understand. The code quality evaluating program compares the plurality of codes that the laser marker inscribes while changing the processing condition by the sample processing function, after the reading trial is performed under the setting condition on the bar code reader 2 side, and presents the evaluation to the user in the score, which is objective and easy for the user to understand. For the score, the highest value of a barometer of the “readability” is not employed, but the form of the score indicating the reading stability obtained by trying the reading in the plurality of setting conditions is preferably employed. As the score, a value of integral (an area) of the barometer of the readability is preferably employed, by which information of whether or not the code is unreceptive to the change in illumination condition, that is, can be stably read even if an illumination condition changes, can be presented to the user. The barometer of the “readability” is comprehensively calculated by combining contrast of the image, an error correction percentage (a rate of correction when codes partially blurred and codes partially contaminated are read), whiteness and blackness levels of cells, and the like.
Referring to a flowchart in
In the next step S203, whether or not the list is empty is determined. In this case, it is determined as NO since the plurality of codes are present in the list, and the processing proceeds to step S204, in which, after limiting the reading region to a size of the relevant code, the tuning processing is executed from the leading code in the list. In this tuning processing, the trial of the reading is performed while changing the brightness, and the barometer of the readability is found in each of the reading trials to calculate the score indicating the reading stability, based on the value of integral of this barometer. In accordance with a print order of the codes corresponding to the relevant code, that is, the print order of the sample prints, the above-described scores are displayed in the user interface screen in
The code for which the tuning has been completed in step S205 is excluded from the list, the processing in steps S204, S205 is sequentially executed for the subsequent codes until the processing for all the listed codes has been completed.
On the right side of the user interface screen in
Moreover, as can be understood from the user interface screen in
For evaluation of the code, while in the above embodiment, the barometer of the readability is calculated by changing the “brightness”, the barometer of the readability may be found by changing the lighting pattern, and further, from this barometer, the score indicating the reading stability may be found. Similarly, for example, the barometer of the readability may be found by changing the filtering, and further, from this barometer, the score indicating the reading stability may be found. Obviously, the barometer of the readability may be found by changing the brightness and the lighting pattern, and further, from this barometer, the score indicating the reading stability may be found. In this manner, the barometer of the readability is found by changing one or a plurality of imaging parameters, and further, the score indicating the reading stability is found from this barometer, by which the objective, appropriate evaluation of the code can be provided to the user.
According to the present invention, the code such as the bar code and the QR code is evaluated, and the result is applied to the processing condition setting of the user.
Number | Date | Country | Kind |
---|---|---|---|
2010-210245 | Sep 2010 | JP | national |