Code reading device, program storage medium, code reading system and method

By setting a judgment unit in the code reading device, the image is sent to the image recognition server only when a price change label is attached to the product, which solves the problem of invalid data communication and realizes efficient use of the communication network and flexible response to label style changes.

CN116868242BActive Publication Date: 2026-05-01TOSHIBA TEC KK
View PDF 3 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
TOSHIBA TEC KK
Filing Date
2022-02-18
Publication Date
2026-05-01

AI Technical Summary

Technical Problem

In existing technologies, the amount of data communication between the code reading device and the image recognition server is too large, especially due to invalid data communication caused by the fact that most products are not labeled.

Method used

By setting a judgment unit in the code reading device, it can determine whether a price change label is attached to the product. Only when it is determined that a label is attached will the image be sent to the image recognition server to identify the price change information. When no label is attached, the barcode data will be directly output to the processing device.

Benefits of technology

It reduces invalid data communication, improves the efficiency of the communication network, and can flexibly respond to changes in price tag styles without frequently updating the image recognition algorithm of the code reading device.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116868242B_ABST
    Figure CN116868242B_ABST
Patent Text Reader

Abstract

A code reading apparatus, a program storage medium, a code reading system, and a code reading method capable of reducing data traffic of a network and easily coping with a style change of a price change label are disclosed. A code reading apparatus reads a code from an image of a product. The code reading apparatus determines whether a label showing price change information is attached to the product. In a case where the label is not attached to the product, the code reading apparatus outputs the code to a processing apparatus. In a case where the label is attached to the product, the code reading apparatus transmits the image of the product to an image recognition server. The code reading apparatus outputs the price change information recognized by the image recognition server together with the code to the processing apparatus.
Need to check novelty before this filing date? Find Prior Art

Description

Code reading device, program storage medium, code reading system and method Technical Field

[0001] The embodiments of the present invention relate to a code reading device, a program storage medium, a code reading system, and a code reading method. Background Technology

[0002] A barcode reading device exists that reads the barcode affixed to a product from an image captured by a camera and outputs the barcode data to a product sales data processing device. Another known barcode reading device, upon detecting a label displaying price change information affixed to a product image, identifies the price change information displayed on the label and outputs the price change information along with the barcode data to the processing device. With such a barcode reading device, the operator aligns the product with the camera's reading window to capture the barcode and label affixed to the product. Thus, in the processing device, the product sales data is processed with the changed price.

[0003] However, the code reader recognizes price change information displayed on labels made in a predetermined style, but it does not recognize price change information displayed on labels made in a style different from the predetermined style. Therefore, when the label style is changed, the image recognition algorithm of the code reader needs to be changed.

[0004] In recent years, with the advancement of image recognition technology, image recognition servers capable of processing various image information have been developed. Therefore, research is underway to connect such image recognition servers to barcode scanners, delegating tag image recognition to the image recognition server without altering the image recognition algorithm of the barcode scanner. However, in this method, regardless of whether the product is tagged, the image of the product captured by the camera must be sent from the barcode scanner to the image recognition server. Consequently, the data communication volume of the communication network connecting the barcode scanner and the image recognition server becomes enormous. Furthermore, since tagged products are considered a very small portion, there are concerns that a significant portion of the data communication will be wasted.

[0005] Existing technical documents

[0006] Patent documents

[0007] Patent Document 1: Japanese Patent Application Publication No. 2019-091501 Summary of the Invention

[0008] The problem to be solved by the embodiments of the present invention is to provide a code reading device, program storage medium, code reading system, and code reading method that suppress useless data communication between a code reading device connected to a communication network and an image recognition server, and reduce the data communication volume of the communication network.

[0009] An embodiment of the code reading apparatus of the present invention includes: an acquisition unit that acquires an image of a product captured by a camera device; a reading unit that reads a code for obtaining the price of the product from the image of the product acquired by the acquisition unit; a determination unit that determines whether a tag displaying price change information related to a price change obtained from the code is affixed to the product; a sending unit that, if the determination unit determines that the tag is affixed to the product, sends an image of the product to an image recognition server for recognizing the price change information displayed on the tag; a receiving unit that receives the price change information recognized by the image recognition server; and an output unit that, if the determination unit determines that the tag is not affixed to the product, outputs the code read by the reading unit to a processing device for processing sales data of the product, and if the determination unit determines that the tag is affixed to the product, outputs the code read by the reading unit and the price change information received by the receiving unit to the processing device.

[0010] The code reading system of an embodiment of the present invention includes multiple code reading devices and an image recognition server. Each of the multiple code reading devices includes: an acquisition unit that acquires an image of a product captured by a camera device; a reading unit that reads a code for obtaining the price of the product from the image of the product acquired by the acquisition unit; a determination unit that determines whether a tag displaying price change information related to the price change obtained from the code is affixed to the product; a device-side transmission unit that, if the determination unit determines that the tag is affixed to the product, transmits an image of the product to the image recognition server; a device-side receiving unit that receives the price change information identified by the image recognition server; and an output unit that, upon determination by the determination unit... If the unit determines that the tag is not attached to the product, it outputs the code read by the reading unit to the processing device that processes the sales data of the product. If the unit determines that the tag is attached to the product, it outputs the code read by the reading unit and the price change information received by the device-side receiving unit to the processing device. The image recognition server includes: a server-side receiving unit that receives an image of the product from the code reading device; a server-side recognition unit that recognizes the price change information from the image of the product received by the server-side receiving unit; and a server-side sending unit that sends the price change information recognized by the server-side recognition unit to the image sending source, i.e., the code reading device.

[0011] An embodiment of the present invention provides a program storage medium storing a program, characterized in that the program causes a computer of a code reading device to perform the following steps: acquiring an image of a product captured by a camera device; reading a code from the image of the product for obtaining the price of the product; determining whether a label displaying price change information related to a price change obtained from the code is affixed to the product; if it is determined that the label is affixed to the product, sending the image of the product to an image recognition server for recognizing the price change information displayed on the label; receiving the price change information recognized by the image recognition server; and if it is determined that the label is not affixed to the product, outputting the read code to a processing device for processing sales data of the product, and if it is determined that the label is affixed to the product, outputting the read code and the received price change information to the processing device.

[0012] The code reading method of an embodiment of the present invention includes the following steps: an acquisition unit acquires an image of a product captured by a camera device; a reading unit reads a code for obtaining the price of the product from the image of the product acquired by the acquisition unit; a determination unit determines whether a tag displaying price change information related to the price change obtained from the code is affixed to the product; if it is determined that the tag is not affixed to the product, an output unit outputs the code read by the reading unit to a processing device for processing sales data of the product; if it is determined that the tag is affixed to the product, a sending unit sends an image of the product to an image recognition server for recognizing the price change information displayed on the tag; and when a receiving unit receives the price change information recognized by the image recognition server, the output unit outputs the code read by the reading unit and the price change information received by the receiving unit to the processing device. Attached Figure Description

[0013] Figure 1 is an overall structural diagram of a code reading system according to an embodiment.

[0014] Figure 2 is a schematic diagram illustrating an example of a product involved in one embodiment.

[0015] Figure 3 is a block diagram showing the main circuit structure of the scanner and image recognition server in the first embodiment.

[0016] Figure 4 is a flowchart illustrating the main information processing steps performed by the scanner's processor according to the code reading program.

[0017] Figure 5 is a flowchart illustrating the specific steps of the sticker detection process in Figure 4 in the first embodiment.

[0018] Figure 6 is a block diagram showing the main circuit structure of the scanner and image recognition server in the second embodiment.

[0019] Figure 7 is a flowchart illustrating the specific steps of the sticker detection process in Figure 4 in the second embodiment.

[0020] Figure 8 is a flowchart illustrating the specific steps of the sticker detection process in Figure 4 in the third embodiment. Detailed Implementation

[0021] In one embodiment, the code reading device includes an acquisition unit, a reading unit, a determination unit, a sending unit, a receiving unit, and an output unit. The acquisition unit acquires an image of a product captured by a camera device. The reading unit reads a code from the image of the product acquired by the acquisition unit to obtain the price of the product. The determination unit determines whether a tag displaying price change information related to the price change obtained from the code is affixed to the product. If the sending unit determines that the tag is affixed to the product, it sends an image of the product to an image recognition server for recognizing the price change information displayed on the tag. The receiving unit receives the price change information recognized by the image recognition server. If the output unit determines that the tag is not affixed to the product, it outputs the code read by the reading unit to a processing device that processes sales data of the product. If the output unit determines that the tag is affixed to the product, it outputs the code read by the reading unit and the price change information received by the receiving unit to the processing device.

[0022] The following description uses the accompanying drawings to illustrate several embodiments.

[0023] [First Embodiment]

[0024] First, the first embodiment will be described using Figures 1 to 5.

[0025] Figure 1 is an overall structural diagram of the code reading system 100 involved in the embodiment. The code reading system 100 includes multiple scanners 10, multiple POS (Point of Sales) terminals 20, and an image recognition server 30. The multiple scanners 10 and multiple POS terminals 20 are connected in a one-to-one correspondence via communication cables. The multiple scanners 10 and the image recognition server 30 are connected to a communication network 40. The communication network 40 is typically a LAN (Local Area Network). The LAN can be a wired LAN or a wireless LAN. Alternatively, the communication network 40 can be, for example, the Internet, and the image recognition server 30 can be configured as a cloud computing server.

[0026] Scanner 10 is an example of a code reading device that reads barcodes from images of goods captured by a camera. A barcode is a unique product code assigned to each item for identification, and is typically affixed to the product's casing or packaging. Scanner 10 outputs the read barcode data to the POS terminal 20. Alternatively, scanner 10 can also read two-dimensional data codes or text codes instead of barcodes.

[0027] The POS terminal 20 obtains the product code from the barcode data read by the scanner 10. The POS terminal 20 obtains the price associated with the product code and sets it in the price master file, and processes the sales data for that product based on that price. That is, the barcode is a code used to obtain the product price. The POS terminal 20 is an example of a processing device for processing product sales data. Such a POS terminal 20 is well known, therefore a detailed description is omitted here.

[0028] Figure 2 is a schematic diagram illustrating an example of product 50 in this embodiment. Product 50 is a price-change product sold at 90% of its normal price. As shown in Figure 2, a barcode label 52 displaying the barcode 51 along with the product name and normal price is affixed to the casing or packaging of product 50. The barcode label 52 can be printed on the casing or packaging or affixed thereon as a sticker. Additionally, a price change label 53 and a sticker 54 are affixed to product 50 on the same surface as the barcode label 52. The price change label 53 is affixed to the casing or packaging as a sticker. The sticker 54 is similarly affixed.

[0029] Price Change Label 53 is a label that displays information about price changes. Figure 2 shows price change label 53 displaying information about a 10% discount. Price change information is not limited to discount rates. For example, it could also include information about the amount of the price reduction, the price change to a predetermined selling price, or the price increase rate.

[0030] The label 54 indicates that a price change label 53 is attached to product 50, and is affixed to product 50 in pair with the price change label 53. As shown in Figure 2, at least a portion of the label 54 overlaps with the barcode label 52. The label 54 may not necessarily overlap with the barcode label 52. For example, the label 54 may be affixed in contact with the edge of the barcode label 52. In short, the label 54 only needs to be affixed near the barcode label 52. On the other hand, the price change label 53 may not need to be affixed near the barcode label 52. Incidentally, the label 54 is not affixed to products not subject to price changes. Basically, only the barcode label 52 is affixed to products not subject to price changes.

[0031] Figure 3 is a block diagram showing the main circuit structure of the scanner 10 and the image recognition server 30. Note that only one scanner 10 is shown in Figure 3. Since other scanners 10 have the same structure, their descriptions are omitted here.

[0032] The scanner 10 includes a processor 11, main memory 12, auxiliary storage device 13, timer 14, communication interface 15, camera device 16, and terminal interface 17. The processor 11, main memory 12, auxiliary storage device 13, timer 14, communication interface 15, camera device 16, and terminal interface 17 are connected via a system transmission path 18. The system transmission path 18 includes an address bus, data bus, control signal lines, etc. The scanner 10 constitutes a computer by connecting the processor 11, main memory 12, auxiliary storage device 13, and timer 14 via the system transmission path 18. Furthermore, by connecting the communication interface 15, camera device 16, and terminal interface 17 to this computer, it fulfills its function as a scanner 10.

[0033] The processor 11 is equivalent to the central part of the computer. The processor 11 controls various components according to the operating system or application to implement various functions of the scanner 10. The processor 11 can be, for example, a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), an Application-Specific Integrated Circuit (ASIC), a programmable logic device (e.g., a Simple Programmable Logic Device (SPLD), a Complex Programmable Logic Device (CPLD), a Field Programmable Gate Array (FPGA), etc.). The processor 11 is not limited to being a single processing circuit; multiple processing circuits can be combined to form the processor 11. Furthermore, the other processors in this embodiment are similar.

[0034] The main memory 12 can be volatile memory (random access memory) or non-volatile memory (read-only memory, non-volatile random access memory). The main memory 12 stores information processing programs and data required for information processing. The processor 11 implements a predetermined function by reading and executing the program stored in the main memory 12. Alternatively, the processor 11 can be configured to directly assemble the program within the processor 11 instead of storing it in the main memory 12. In this case, the processor 11 implements the predetermined function by reading and executing the program built into it. Furthermore, the predetermined function can be implemented not only by the processor 11 executing the program, but also by a combination of logic circuits. The other main memories in this embodiment are similar.

[0035] The auxiliary storage device 13 corresponds to the auxiliary storage portion of the computer. As the auxiliary storage device 13, it can be, for example, used alone or in combination with multiple known storage devices such as SSDs (Solid State Drives), HDDs (Hard Disc Drives), or EEPROMs (Electric Erasable Programmable Read-Only Memory). The auxiliary storage device 13 stores data used by the processor 11 in performing various processes, or data generated by the processing in the processor 11. The auxiliary storage device 13 may also sometimes store the aforementioned information processing programs.

[0036] The information processing program stored in the main memory 12 or the secondary storage device 13 includes a code reading program. There are no particular limitations on the method of installing the code reading program in the main memory 12 or the secondary storage device 13. The control program can be recorded on a removable recording medium, or the code reading program can be distributed via network communication and installed in the main memory 12 or the secondary storage device 13. The form of the storage medium is not limited as long as it can store programs like an SD memory card or a USB memory and the device can read them.

[0037] Timer 14 is a device that counts based on the start time of the start signal and outputs a timeout signal when the count reaches a predetermined timeout period. In this embodiment, the timeout period is the action time required for the image recognition server 30 to retrieve the price change information displayed on the product's image recognition price change label 53.

[0038] Communication interface 15 is an interface with image recognition server 30. Communication interface 15 receives and transmits data signals with image recognition server 30 connected via communication network 40 according to a predetermined communication protocol.

[0039] The camera device 16 is a device that has a region image sensor, namely a CCD (Charge Coupled Device) camera element, a drive circuit for driving the CCD camera element, and a camera lens for imaging an image of the camera area passing through the reading window onto the CCD camera element, and outputs the image data imaged on the CCD camera element.

[0040] Terminal interface 17 is the interface with POS terminal 20. Terminal interface 17 transmits and receives data signals with POS terminal 20, which is connected via a communication cable.

[0041] The processor 11 functions as an acquisition unit 111, a reading unit 112, a determination unit 113, a sending unit 114, a receiving unit 115, and an output unit 116. The acquisition unit 111 is responsible for acquiring an image of the product captured by the imaging device 16. The acquisition unit 111 may be referred to as an acquisition unit.

[0042] The reading unit 112 reads a code, i.e., a barcode 51, from an image of a product acquired by the acquisition unit 111 to obtain the price of that product. The technique for reading the barcode 51 from an image utilizes existing technology. The reading unit 112 may be referred to as a reading unit.

[0043] The determination unit 113 is responsible for determining whether a price change label 53, which displays price change information related to the price change obtained from the barcode 51, is affixed to the product. If the determination unit 113 detects a label sticker 54 affixed near the barcode 51, it determines that a price change label 53 is affixed to the product. If the determination unit 113 does not detect a label sticker 54, it determines that a price change label 53 is not affixed to the product. The determination unit 113 may be referred to as a determination unit.

[0044] The sending unit 114 is a function that sends an image of the product captured by the camera device 16 to the image recognition server 30 when the determination unit 113 determines that a price change tag 53 has been affixed to the product. The sending unit 114 may be referred to as a terminal-side sending unit or a sending unit.

[0045] The receiving unit 115 is responsible for receiving price change information identified by the image recognition server 30. The receiving unit 115 may be referred to as a terminal-side receiving unit or a receiving unit.

[0046] The output unit 116 includes the following two functions. First, it outputs the data of the barcode 51 read by the reading unit 112 to the POS terminal 20 when the determination unit 113 determines that the price change label 53 is not affixed to the product. Second, it outputs the data of the barcode 51 read by the reading unit 112 and the price change information received by the receiving unit 115 to the POS terminal 20 when the determination unit 113 determines that the price change label 53 is affixed to the product. The output unit 116 may be referred to as an output unit.

[0047] The image recognition server 30 includes a processor 31, main memory 32, auxiliary storage device 33, and communication interface 34. The processor 31, main memory 32, auxiliary storage device 33, and communication interface 34 are connected via a system transmission path 35. The system transmission path 35 includes an address bus, a data bus, and control signal lines. The image recognition server 30 forms a computer by connecting the processor 31, main memory 32, and auxiliary storage device 33 via the system transmission path 35. Furthermore, by connecting the communication interface 34 to this computer, it performs the functions of an image recognition server 30.

[0048] The processor 31 is equivalent to the central part of the computer. The processor 31 controls various parts according to the information processing program to realize the various functions of the image recognition server 30. The processor 31 is, for example, a CPU.

[0049] The main memory 32 is volatile memory (random access memory) or non-volatile memory (read-only memory, non-volatile random access memory).

[0050] The auxiliary storage device 33 corresponds to the auxiliary storage portion of the computer. As the auxiliary storage device 33, multiple known storage devices such as SSDs, HDDs, or EEPROMs can be used individually or in combination. The auxiliary storage device 33 stores data used by the processor 31 in the course of various processes, or data generated by the processing within the processor 31. The auxiliary storage device 33 may also sometimes store the application programs.

[0051] Communication interface 34 is the interface with each scanner 10. Communication interface 34 receives and transmits data signals with each scanner 10 connected via communication network 40 according to a predetermined communication protocol.

[0052] In the image recognition server 30 of this structure, the processor 31 functions as a receiving unit 311, a recognition unit 312, and a transmitting unit 313. The receiving unit 311 has the function of receiving images of goods transmitted from the scanner 10 through the communication network 40. The receiving unit 311 can be referred to as a server-side receiving unit.

[0053] The identification unit 312 is a function that identifies the price change information displayed on the price change label 53 based on the image of the product received by the receiving unit 311. Existing technology is used as a technique for identifying price change information from an image. The identification unit 312 may be referred to as a server-side identification unit.

[0054] The sending unit 313 is responsible for sending the price change information identified by the identification unit 312 to the source of the identified image, namely the scanner 10. The sending unit 313 can be referred to as the server-side sending unit.

[0055] Figures 4 and 5 are flowcharts illustrating the main information processing steps performed by the processor 11 of the scanner 10 according to the code reading program. That is, the processor 11 enables the scanner 10 to function as a code reading device according to the code reading program. The main operations of the scanner 10 will be explained below with reference to the flowcharts. However, the information processing steps are not limited to those shown in the flowcharts. They can be appropriately modified as long as the same effect is achieved.

[0056] As ACT1, processor 11 waits to receive an input read start command. The read start command is provided by the corresponding POS terminal 20. For example, in POS terminal 20, when a business transaction with a previous customer is settled, a read start command is output from POS terminal 20 to scanner 10. When the read start command is input, processor 11 determines "yes" in ACT1 and proceeds to ACT2. As ACT2, processor 11 outputs a start signal to imaging device 16. In imaging device 16, where the start signal has been input, the CCD imaging element is powered on. Then, the data of the image image formed on the CCD imaging element through the read window is output to image memory. Image memory is part of the volatile memory area in main memory 12.

[0057] As ACT3, processor 11 acquires an image stored in the image memory using the function of acquisition unit 111. Then, as ACT4, processor 11 reads the barcode 51 from the image using the function of reading unit 112. As ACT5, processor 11 checks whether the barcode 51 has been read. If the barcode 51 is not read from the image, processor 11 determines no in ACT5 and returns to ACT3. That is, processor 11 sequentially acquires images from the image memory and repeatedly performs the process of reading the barcode 51 from the image. As a result, if the barcode 51 is read, processor 11 determines yes in ACT5 and proceeds to ACT6.

[0058] As ACT6, the processor 11 determines, through the function of the determination unit 113, whether a price change label 53 has been affixed to the product. Specifically, the processor 11 retrieves the label sticker 54 from the image of the barcode 51. As ACT7, the processor 11 confirms whether the label sticker 54 can be detected.

[0059] If no price change label 53 is attached to the product, the label sticker 54 is not detected. If the label sticker 54 cannot be detected, the processor 11 determines no in ACT7 and proceeds to ACT8. In ACT8, the processor 11 outputs the data of the barcode 51 to the POS terminal 20 via the terminal interface 17 through the function of the output unit 116.

[0060] If a price change label 53 is attached to the product, the sticker 54 should be detected in principle. If the sticker 54 can be detected, the processor 11 determines it as yes in ACT7 and proceeds to ACT9. In ACT9, the processor 11 performs sticker detection processing. The sticker detection processing will be described later.

[0061] Upon completion of ACT8 or ACT9, processor 11 proceeds to ACT10. In ACT10, processor 11 checks whether a read-end command has been input. This read-end command is provided by the corresponding POS terminal 20. For example, when a totaling operation indicating the completion of registration for purchased goods is performed in POS terminal 20, a read-end command is output from POS terminal 20 to scanner 10. If no read-end command has been input, processor 11 determines no in ACT10 and returns to ACT3. Processor 11 then performs the subsequent processing in the same manner as described above.

[0062] When a read-end command is input, processor 11 determines "yes" in ACT10 and proceeds to ACT11. In ACT11, processor 11 outputs a stop signal to the imaging device 16. In the imaging device 16, where the stop signal has been input, the CCD imaging element becomes de-energized. Processor 11 then completes the information processing steps shown in the flowchart of FIG4. Processor 11 then waits again for a read-start command.

[0063] Figure 5 is a flowchart illustrating the specific steps of the sticker detection process. When the sticker detection process begins, as ACT21, the processor 11 starts the timer 14. Additionally, as ACT22, the processor 11, through the function of the transmission unit 114, sends the data of the detected sticker 54 image to the image recognition server 30 via the communication interface 15.

[0064] When the processor 21 of the image recognition server 30 receives image data via the communication interface 34 through the function of the receiving unit 311, it uses the function of the recognition unit 312 to recognize the price change information displayed on the price change label 53 in the image data. Then, when the processor 21 recognizes the price change information, it sends a recognition success response command to the scanner 10, the image data sending source, via the communication interface 34 through the function of the sending unit 313. The recognition success response command includes the recognized price change information.

[0065] In ACT23, the processor 11 of the scanner 10, which has transmitted image data, checks whether a recognition success response command has been received from the image recognition server 30 using the function of the receiving unit 115. If no response command is received, the processor 11 determines no in ACT23 and proceeds to ACT24. In ACT24, the processor 11 checks whether the timer 14 has expired. If the timer 14 has not expired, the processor 11 determines no in ACT24 and proceeds to ACT25.

[0066] As in ACT25, processor 11 acquires the next image from the image memory. Then, processor 11 returns to ACT22, that is, processor 11 sends image data to image recognition server 30. Then, processor 11 checks whether it has received a recognition success response command. If no recognition success response command is received and timer 14 has not expired, processor 11 acquires the next image from the image memory. Then, processor 11 repeats the processing after ACT22 in the same way as described above.

[0067] When the processor 11 receives a successful recognition response command from the image recognition server 30 via the communication interface 15 after sending image data to the image recognition server 30 through the function of the receiving unit 115, it determines "yes" in ACT23 and proceeds to ACT26. In ACT26, the processor 11 outputs the barcode data read in ACT4 and the price change information included in the successful recognition response command to the POS terminal 20 via the terminal interface 17 through the function of the output unit 116.

[0068] In contrast, if the timer 14 times out without receiving a successful recognition response instruction from the image recognition server 30, the processor 11 determines this in ACT24 and proceeds to ACT27. In ACT27, the processor 11 outputs the barcode data read in the processing of ACT4 to the POS terminal 20 via the terminal interface 17 through the function of the output unit 116.

[0069] When processing ACT26 or ACT27 is completed, processor 11 terminates the sticker detection process. Processor 11 then proceeds to processing ACT10.

[0070] In the code reading system 100 equipped with such a scanner 10 and image recognition server 30, the following effects can be achieved. First, when a reading start command is provided from the POS terminal 20 to the scanner 10 before the registration of the first item purchased by the customer, the camera device 16 of the scanner 10 is activated. In this state, the operator picks up the items purchased by the customer one by one, aligning the side with the barcode label 52 with the reading window of the camera device 16. Furthermore, the operator can be a store clerk or a customer.

[0071] When the side with the barcode label 52 is aligned with the reading window, the scanner 10 reads the barcode 51 printed on the barcode label 52. Additionally, the scanner 10 determines whether a label sticker 54 is affixed near the barcode label 52. If no label sticker 54 is affixed, i.e., if the barcode 51 of a product not subject to price changes is read, the scanner 10 outputs the data of the barcode 51 to the POS terminal 20. As a result, the POS terminal 20 registers the sales data of the product based on the price obtained from the data of the barcode 51.

[0072] In contrast, when the label sticker 54 is affixed, i.e., when the barcode 51 of the product whose price has been changed is read, the image captured by the camera device 16 is sent from the scanner 10 to the image recognition server 30. The image recognition server 30 then recognizes the price change information displayed on the price change label 53 from this image. Upon recognition of the price change information, the scanner 10 outputs the data of the barcode 51 and the price change information of the price change label 53 to the POS terminal 20. As a result, the POS terminal 20 registers the sales data of the product at the price obtained from the data of the barcode 51, which has been changed through the price change information.

[0073] Thus, in the code reading system 100, when registering a product for which a price change object is attached along with a price change label 53 along with a barcode label 52, the processing of reading the barcode 51 from the image captured by the camera device 16 is performed by the scanner 10, and the processing of recognizing the price change information displayed on the price change label 53 is performed by the image recognition server 30. In this case, the image sent from the scanner 10 to the image recognition server 30 via the communication network 40 is an image captured by the camera device 16 during the period from the detection of the label sticker 54 to the recognition of the price change information. There is a high probability that the image detecting the label sticker 54 contains the image of the price change label 53. Therefore, it is possible to prevent the situation where useless images unrelated to the recognition of price change information are sent from the scanner 10 to the image recognition server 30. As a result, even when multiple scanners 10 are connected to the communication network 40, the data communication volume of the communication network 40 can be reduced.

[0074] Furthermore, even if the recognition of price change information fails in the image recognition server 30, the image transmission ends once the timeout period of timer 14 has elapsed since the detection of the sticker 54. Therefore, this also helps to suppress the transmission of useless images.

[0075] In the code reading system 100, the price change information displayed on the price change label 53 is recognized by the image recognition server 30. Therefore, even if the style of the price change label 53 is changed, only a new image recognition algorithm corresponding to the changed style needs to be added to the image recognition server 30. Therefore, it has the advantage of being able to easily handle style changes of the price change label 53 regardless of the number of scanners 10.

[0076] [Second Embodiment]

[0077] Next, the second embodiment will be described using Figures 6 and 7. Furthermore, Figures 1, 2, and 4, which were described in the first embodiment, are also used in the second embodiment. Therefore, their description is omitted.

[0078] Figure 6 is a block diagram showing the main circuit structure of the scanner 10 and image recognition server 30 in the second embodiment. In Figure 6, the same reference numerals are used for the parts that are common to the same block diagram in Figure 3, which shows the first embodiment. Comparing Figures 6 and 3, it can be seen that the difference between the second embodiment and the first embodiment is that the processor 11 of the scanner 10 has the function of recognizing unit 117.

[0079] The identification unit 117 is a function that identifies price change information displayed on the price change label 53 from an image of the product. Existing technology is used as the method for identifying price change information from an image. The identification unit 117 may be referred to as a device-side identification unit.

[0080] Figure 7 is a flowchart illustrating the specific steps of the sticker detection process. In the second embodiment, a portion of the sticker detection process shown in ACT9 of Figure 4 differs from that in the first embodiment.

[0081] In the second embodiment, when the sticker detection process is initiated, as ACT31, the processor 11 starts the timer 14. Then, as ACT32, the processor 11, through the function of the transmitting unit 114, sends the data of the detected sticker 54 image to the image recognition server 30 via the communication interface 15. Furthermore, as ACT33, the processor 11, through the function of the recognition unit 117, recognizes the price change information displayed on the price change label 53 from the image of the detected sticker 54.

[0082] In the second embodiment, when the processor 21 of the image recognition server 30 receives image data via the communication interface 34 through the function of the receiving unit 311, it uses the function of the recognition unit 312 to recognize the price change information displayed on the image change label 53 from the image data. Then, when the processor 21 recognizes the price change information, it uses the function of the sending unit 313 to send a recognition success response command to the scanner 10, the image data sending source, via the communication interface 34. The recognition success response command includes the recognized price change information.

[0083] As ACT34, processor 11, which concludes the processing of ACT32 and ACT33, confirms whether the recognition of the price change information was successful. If the recognition was unsuccessful, processor 11 determines no in ACT34 and proceeds to ACT35. As ACT35, processor 11 checks whether timer 14 has timed out. If timer 14 has not timed out, processor 11 determines no in ACT35 and proceeds to ACT36.

[0084] As in ACT36, processor 11 acquires the next image from the image memory. Then, processor 11 returns to ACT32. That is, processor 11 sends image data to image recognition server 30. In addition, processor 11 recognizes the price change information displayed on price change label 53 from the image. Then, processor 11 confirms whether the recognition of the price change information was successful. If the recognition of the price change information is unsuccessful and timer 14 has not expired, processor 11 acquires the next image from the image memory. Then, processor 11 repeats the processing after ACT32 in the same way as described above.

[0085] When the processor 11 successfully identifies the price change information through the function of the identification unit 117, or receives a successful identification response instruction from the image recognition server 30 through the function of the receiving unit 115, it determines "yes" in ACT34 and proceeds to ACT37. As in ACT37, the processor 11 outputs the barcode data read in the processing of ACT4 and the successfully identified price change information to the POS terminal 20 via the terminal interface 17 through the function of the output unit 116.

[0086] On the other hand, if the recognition unit 117 fails to recognize the price change information, and if the timer 14 times out because no successful recognition response instruction is received from the image recognition server 30, the processor 11 determines this in ACT35 and proceeds to ACT38. In ACT38, the processor 11 outputs the barcode data read in the processing of ACT4 to the POS terminal 20 via the terminal interface 17 through the function of the output unit 116.

[0087] When ACT37 or ACT38 finishes processing, processor 11 terminates the sticker detection process. Processor 11 then proceeds to ACT10 in Figure 4.

[0088] Thus, in the second embodiment, when the scanner 10 detects the label sticker 54 in the image of the product whose barcode 51 has been read by the reading unit 112, it sends the image to the image recognition server 30 via the sending unit 114. Furthermore, the scanner 10 uses the recognition unit 117 to recognize the price change information displayed on the price change label 53 from this image.

[0089] Here, if the price change information can be identified by the function of the identification unit 117, the scanner 10 outputs the data of the barcode 51 and the price change information to the POS terminal 20 through the function of the output unit 116. Furthermore, even if the identification unit 117 fails to identify the price change information, if the receiving unit 115 receives the price change information identified by the image recognition server 30, the output unit 116 outputs the data of the barcode 51 and the price change information to the POS terminal 20.

[0090] Therefore, in the POS terminal 20, not only when the recognition unit 312 of the image recognition server 30 recognizes the price change information, but also when the recognition unit 117 of the scanner 10 recognizes the price change information, the sales data of the goods are registered and processed based on the price obtained from the data of the barcode 51 that has changed through the price change information.

[0091] Typically, the image detected from the sticker 54 is highly likely to contain an image of the price change label 53. Therefore, if the style of the price change label 53 corresponds to the image recognition algorithm prepared by the scanner 10, the recognition unit 117 is highly likely to identify the price change information first. That is, there is no need to wait for the price change information to be identified in the image recognition server 30, thus improving the processing efficiency of product registration. Furthermore, if the recognition unit 117 identifies the price change information before the timer 14 expires, subsequent images are not sent to the image recognition server 30, thus reducing the data communication load on the communication network 40 compared to the first embodiment.

[0092] Furthermore, even if the style of the price change label 53 does not correspond to the image recognition algorithm prepared by the scanner 10, the price change information can still be reliably identified by the algorithm prepared by the image recognition server 30. Therefore, changes in the style of the price change label 53 can be addressed without altering the algorithm on the scanner 10 side.

[0093] [Third Embodiment]

[0094] Next, the third embodiment will be described using FIG8. Incidentally, FIG1, FIG2, and FIG4 described in the first embodiment and FIG6 described in the second embodiment are also used in the third embodiment. Therefore, their description is omitted.

[0095] Figure 8 is a flowchart illustrating the specific steps of the sticker detection process. In the third embodiment, a portion of the sticker detection process shown in ACT9 of Figure 4 differs from that in the first or second embodiment.

[0096] In the third embodiment, when the sticker detection process is initiated, as ACT41, the processor 11, through the function of the recognition unit 117, recognizes the price change information displayed by the price change label 53 from the image of the detected sticker 54. Generally, the image of the detected sticker 54 is highly likely to contain an image of the price change label 53. Therefore, if the style of the price change label 53 corresponds to the image recognition algorithm prepared by the scanner 10, the recognition unit 117 is highly likely to recognize the price change information from that image.

[0097] As ACT42, processor 11 confirms whether the price change information has been successfully identified. If the price change information has been successfully identified, processor 11 determines "yes" in ACT42 and proceeds to ACT48. As ACT48, processor 11 outputs the barcode data read in the processing of ACT4 and the successfully identified price change information to POS terminal 20 via terminal interface 17 through the function of output unit 116. Processor 11 ends the sticker detection processing and proceeds to the processing of ACT10 in Figure 4.

[0098] On the other hand, if the image of the sticker 54 does not contain the image of the price change label 53, or if the style of the price change label 53 does not correspond to the image recognition algorithm prepared by the scanner 10, the recognition unit 117 cannot recognize the price change information from the image. The processor 11 determines no in ACT42 and proceeds to ACT43. Thereafter, as ACT43 to ACT49, the processor 11 performs the same processing as ACT22 to ACT27 described in the first embodiment.

[0099] Thus, in the third embodiment, when the scanner 10 reads the image of the product with barcode 51 from the image via the reading unit 112 and detects the label sticker 54 via the determination unit 113, it identifies the price change information displayed on the price change label 53 from the image via the recognition unit 117. Furthermore, if the price change information can be identified, the scanner 10 outputs the data of barcode 51 and the price change information to the POS terminal 20 via the output unit 116.

[0100] In contrast, if price change information cannot be identified, the scanner 10 sends an image to the image recognition server 30 via the function of the transmitting unit 114. Then, when the price change information identified by the image recognition server 30 is received via the function of the receiving unit 115, the scanner 10 outputs the data of the barcode 51 and the price change information to the POS terminal 20 via the function of the output unit 116.

[0101] Therefore, not only when the recognition unit 117 of the scanner 10 recognizes the price change information, but also when it does not, as long as the recognition unit 312 of the image recognition server 30 recognizes the price change information, the POS terminal 20 will register the sales data of the goods at the price obtained from the data of the barcode 51 by changing the price change information.

[0102] Typically, the image detected for the sticker 54 is highly likely to contain an image of the price change label 53. Therefore, when the style of the price change label 53 corresponds to the image recognition algorithm prepared by the scanner 10, the frequency of sending images from the scanner 10 to the image recognition server 30 is significantly reduced compared to the first or second embodiment. As a result, compared to the first or second embodiment, it has the advantage of reducing the data communication volume of the communication network 40. Furthermore, changes in the style of the price change label 53 can be accommodated without altering the algorithm on the scanner 10 side.

[0103] The first to third embodiments have been described above, but the embodiments are not limited thereto.

[0104] For example, in the described embodiment, the scanner 10 and the POS terminal 20 are connected via a communication cable. Alternatively, the scanner 10 and the POS terminal 20 can be integrated into a single device, such as a self-service checkout terminal, as a form of code-reading device.

[0105] The scanner 10 is equipped with a keyboard, touch panel, display, and other devices, and can also be used to register goods such as fresh food without barcodes. In this case, for example, if the scanner 10 is instructed to affix a price change label 53 to a product via key operation, the image acquired by the acquisition unit 111 is sent to the image recognition server 30 via the function of the sending unit 114. Furthermore, if the price change information identified by the image recognition server 30 is received via the function of the receiving unit 115, the price change information along with the barcode of the product without barcodes is output to the POS terminal 20 via the function of the output unit 116. Even with this structure, the data communication volume of the communication network 40 can be reduced, and the style changes of the price change label 53 can be easily handled.

[0106] The image recognized by image recognition server 30 is not limited to the price change information displayed on price change label 53. For example, consider the following application: a label displaying an expiration date is attached to a product, and the discount rate is changed based on the length of time remaining until the expiration date. In this case, the image recognized by image recognition server 30 becomes the expiration date information displayed on the label. However, the expiration date information also becomes information that results in a price change, and therefore can be called price change information.

[0107] The program in this embodiment can be transferred either while stored in an electronic device or without being stored in an electronic device. In the latter case, the program can be transferred via a network or while recorded on a storage medium. The storage medium is a non-transitory tangible medium. The storage medium is a computer-readable medium. The storage medium is any medium capable of storing a program and being readable by a computer, such as a CD-ROM or memory card, and its form is not limited.

[0108] Furthermore, several embodiments of the present invention have been described, but these embodiments are provided as examples and are not intended to limit the scope of the invention. These new embodiments can be implemented in various other ways, and various omissions, substitutions, and modifications can be made without departing from the spirit of the invention. These embodiments and their variations are included within the scope of the invention, and are also included within the scope of the invention as described in the claims and its equivalents.

Claims

1. A code reading device, characterized in that, It includes: an acquisition unit that acquires an image of a product captured by a camera device; a reading unit that reads a code for obtaining the price of the product from the image of the product acquired by the acquisition unit; and a determination unit that determines whether a tag displaying price change information related to a change in the price obtained from the code is affixed to the product. The sending unit, when the determination unit determines that the label is affixed to the product, sends an image of the product to an image recognition server for recognizing the price change information displayed on the label; The receiving unit receives the price change information identified by the image recognition server; The output unit outputs the code read by the reading unit to the processing device for processing the sales data of the product when the determination unit determines that the tag is not attached to the product, and outputs the code read by the reading unit and the price change information received by the receiving unit to the processing device when the determination unit determines that the tag is attached to the product.

2. The code reading device according to claim 1, wherein, It also includes: an identification unit for identifying the price change information displayed on the label, wherein, if the determination unit determines that the label is attached to the product, and the output unit identifies the price change information by the identification unit before the receiving unit receives the price change information, the output unit outputs the code read by the reading unit and the price change information identified by the identification unit to the processing device; and if the receiving unit receives the price change information before the identification unit identifies the price change information, the output unit outputs the code read by the reading unit and the price change information received by the receiving unit to the processing device.

3. The code reading device according to claim 1, wherein, It also includes: an identification unit for identifying the price change information displayed on the label, wherein, if the determination unit determines that the label is attached to the product and the identification unit does not identify the price change information, the sending unit sends an image of the product to the image recognition server; if the determination unit determines that the label is attached to the product, the output unit outputs the code read by the reading unit and the price change information identified by the identification unit to the processing device if the identification unit identifies the price change information; and if the identification unit does not identify the price change information, the output unit outputs the code read by the reading unit and the price change information received by the receiving unit to the processing device.

4. A code reading system, characterized in that, The device is equipped with multiple code reading devices and an image recognition server. Each of the multiple code reading devices includes: an acquisition unit that acquires an image of a product captured by a camera device; and a reading unit that reads a code from the image of the product acquired by the acquisition unit to obtain the price of the product. The determination unit determines whether a tag displaying price change information related to the price change obtained from the code is affixed to the product; the device-side transmission unit sends an image of the product to the image recognition server if the determination unit determines that the tag is affixed to the product. The device-side receiving unit receives the price change information identified by the image recognition server. The image recognition server includes: an output unit that, when the determination unit determines that the tag is not attached to the product, outputs the code read by the reading unit to a processing device that processes the sales data of the product; and an output unit that, when the determination unit determines that the tag is attached to the product, outputs the code read by the reading unit and the price change information received by the device-side receiving unit to the processing device. The image recognition server comprises: a server-side receiving unit that receives an image of the product from the code reading device; a server-side recognition unit that recognizes the price change information from the image of the product received by the server-side receiving unit; and a server-side sending unit that sends the price change information recognized by the server-side recognition unit to the image sending source, i.e., the code reading device.

5. The code reading system according to claim 4, wherein, The code reading device further includes: a device-side identification unit that identifies the price change information displayed on the label; if the determination unit determines that the label is attached to the product, and the output unit outputs the code read by the reading unit and the price change information identified by the device-side identification unit to the processing device before the device-side receiving unit receives the price change information; and if the device-side receiving unit receives the price change information before the device-side identification unit identifies the price change information, the output unit outputs the code read by the reading unit and the price change information received by the device-side receiving unit to the processing device.

6. The code reading system according to claim 4, wherein, The code reading device further includes: a device-side identification unit that identifies the price change information displayed on the label; a device-side sending unit that sends an image of the product to the image recognition server when the determination unit determines that the label is attached to the product and the device-side identification unit does not identify the price change information; an output unit that outputs the code read by the reading unit and the price change information identified by the device-side identification unit to the processing device when the device-side identification unit identifies the price change information; and an output unit that outputs the code read by the reading unit and the price change information received by the device-side receiving unit to the processing device when the device-side identification unit does not identify the price change information.

7. A program storage medium storing a program, characterized in that, The program causes the computer of the code reading device to perform the following steps: acquire an image of the product captured by the camera device; read a code from the image of the product to obtain the price of the product; and determine whether a label displaying price change information related to the price change obtained from the code is affixed to the product. If it is determined that the label is affixed to the product, an image of the product is sent to an image recognition server for recognizing the price change information displayed on the label; the price change information recognized by the image recognition server is received. If it is determined that the label is not attached to the product, the read code is output to the processing device for processing the sales data of the product; if it is determined that the label is attached to the product, the read code and the received price change information are output to the processing device.

8. The program storage medium according to claim 7, storing a program that causes the computer to perform the following steps: having the identification unit identify the price change information displayed on the label; and, if it is determined that the label is affixed to the product and the price change information is identified by the identification unit before the price change information is received, outputting the read code and the price change information identified by the identification unit to the processing device; and, if it is determined that the label is affixed to the product and the price change information is received before the price change information is identified by the identification unit, outputting the read code and the received price change information to the processing device.

9. The program storage medium according to claim 7, storing a program that causes the computer to perform the following steps: the identification unit identifies the price change information displayed by the label; If it is determined that the label is attached to the product and the recognition unit does not recognize the price change information, the image of the product is sent to the image recognition server; If it is determined that the label is attached to the product and the price change information is recognized by the identification unit, the read code and the price change information recognized by the identification unit are output to the processing device. If the price change information is not recognized by the identification unit, the read code and the received price change information are output to the processing device.

10. A code reading method, characterized in that, The device comprises the following steps: an acquisition unit acquires an image of a product captured by a camera device; a reading unit reads a code from the image of the product acquired by the acquisition unit to obtain the price of the product; and a determination unit determines whether a tag displaying price change information related to the price change obtained from the code is affixed to the product. If it is determined that the label is not attached to the product, the output unit outputs the code read by the reading unit to the processing device that processes the sales data of the product; If it is determined that the label is attached to the product, the sending unit sends an image of the product to an image recognition server for recognizing the price change information displayed on the label. When the receiving unit receives the price change information recognized by the image recognition server, the output unit outputs the code read by the reading unit and the price change information received by the receiving unit to the processing device.

11. The code reading method according to claim 10, wherein, The system includes the following steps: when it is determined that the label is attached to the product, the recognition unit recognizes the price change information displayed on the label, and the sending unit sends an image of the product to the image recognition server; And if the price change information is identified by the identification unit before the receiving unit receives the price change information, the output unit outputs the code read by the reading unit and the price change information identified by the identification unit to the processing device; and if the price change information is received by the receiving unit before the identification unit identifies the price change information, the output unit outputs the code read by the reading unit and the price change information received by the receiving unit to the processing device.

12. The code reading method according to claim 10, wherein, The process includes the following steps: if it is determined that the label is attached to the product, the identification unit identifies the price change information displayed on the label; if the identification unit does not identify the price change information, the sending unit sends an image of the product to the image recognition server. If it is determined that the label is attached to the product, the output unit outputs the code read by the reading unit and the price change information identified by the identification unit to the processing device if the identification unit recognizes the price change information; otherwise, it outputs the code read by the reading unit and the price change information received by the receiving unit to the processing device if the identification unit does not recognize the price change information.

Citation Information

Patent Citations

  • Information detection apparatus and information detection program

    JP2019091501A

  • Information detection apparatus and information detection method

    US20130208946A1

  • POS terminal device, information processing device, information processing system, image recognition method, and image recognition program

    US20180181940A1