Information processing device and program
The information processing apparatus and program address the issue of duplicate product registrations by using an acquisition and recognition system with a control unit to manage recognition results, ensuring accurate and efficient product identification.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- TOSHIBA TEC KK
- Filing Date
- 2023-09-26
- Publication Date
- 2026-06-11
AI Technical Summary
Existing systems face the issue of registering the same product multiple times during recognition processing, leading to inefficiencies and potential errors in product identification.
An information processing apparatus and program that includes an acquisition unit for capturing images, a recognition unit for identifying products, and a control unit that manages recognition results to prevent duplicate registrations by storing information on previously recognized products.
Prevents multiple registrations of the same product, enhancing the accuracy and efficiency of product identification and registration processes.
Smart Images

Figure 0007873217000001 
Figure 0007873217000002 
Figure 0007873217000003
Abstract
Description
【Field of Technology】 【0001】 Embodiments of the present invention relate to an information processing apparatus and a program. 【Background Art】 【0002】 When registering a product, a plurality of images are obtained by blocking the product with the imaging unit of a scanner, and the appearance of the product and the code attached to the product are read from the plurality of obtained images using one or more of object recognition technology and code recognition technology, and the product is identified and registered from the read code. There is a system. 【0003】 When using a plurality of authentication technologies, even if the recognition processing by a certain recognition technology is in progress, the recognition processing by other recognition technologies may be completed and the product may already be identified. In this case, when the authentication processing by the recognition technology that was in progress is completed after a while and the product is identified, although the product has been blocked by the imaging unit only once, there is a possibility that the product will be registered multiple times. 【Prior Art Documents】 【Patent Documents】 【0004】 【Patent Document 1】 Japanese Patent Application Laid-Open No. 2014-095983 【Summary of the Invention】 【Problems to be Solved by the Invention】 【0005】 The problem to be solved by the present invention is to provide an information processing apparatus and a program capable of preventing the same product from being registered multiple times. 【Means for Solving the Problems】 【0006】 The information processing apparatus according to the embodiment includes an acquisition unit that acquires an imaging image captured by an imaging unit, and a recognition unit that recognizes a product reflected in the imaging image, A receiving means that receives the decoding result of a decoding means that decodes the product barcode contained in the captured image to obtain the product code of the product, the product has already The decoding means The system includes a control means that controls the recognition result of the product to not be output from the recognition means when the product is recognized by the recognition means. The control means stores information in memory indicating whether the product has already been recognized, and does not reset the information while an object is visible in the captured image, and resets the information when no object is visible in the captured image. . [Brief explanation of the drawing] 【0007】 [Figure 1] Figure 1 shows the overall configuration of the product information management system according to the embodiment. [Figure 2] Figure 2 is a perspective view showing the external appearance of the self-service POS system according to the embodiment. [Figure 3] Figure 3 is a block diagram showing the hardware configuration of the POS terminal in the embodiment. [Figure 4] Figure 4 is a block diagram showing the hardware configuration of the scanner in the embodiment. [Figure 5] Figure 5 is a block diagram showing the hardware configuration of the image recognition device according to the embodiment. [Figure 6] Figure 6 is a block diagram showing the hardware configuration of the server in the embodiment. [Figure 7] Figure 7 shows the data structure of the product master stored in the memory unit of the POS terminal of this embodiment. [Figure 8] Figure 8 shows the data structure of the matching dictionary stored in the memory unit of the image recognition device according to the embodiment. [Figure 9] Figure 9 shows an example of duplicate check information indicating whether or not individual products have already been recognized. [Figure 10] Figure 10 is a block diagram showing the functional configuration of the control unit of the POS terminal according to the embodiment. [Figure 11] Figure 11 is a block diagram showing the functional configuration of the control unit of the scanner according to the embodiment. [Figure 12] Figure 12 is a block diagram showing the functional configuration of the control unit of the image recognition device according to the embodiment. [Figure 13] Figure 13 is a block diagram showing the functional configuration of the control unit of the server according to the embodiment. [Figure 14]FIG. 14 is a flowchart showing the operation flow of the scanner according to the embodiment. [Figure 15] FIG. 15 is a flowchart showing the operation flow of the image recognition device according to the embodiment. 【Embodiments for Carrying Out the Invention】 【0008】 Hereinafter, embodiments of an information processing apparatus and a program will be described with reference to the drawings. Note that the present invention is not limited to the embodiments described below. 【0009】 (Product Information Management System) First, referring to FIG. 1, a product information management system MS according to the embodiment will be described. FIG. 1 is a diagram showing the overall configuration of the product information management system MS according to the embodiment. The product information management system MS includes a product information registration system RS and a server 40. 【0010】 The product information registration system RS includes a POS (Point Of Sales) terminal 10, a scanner 20 (information processing apparatus), and an image recognition device 30 (information processing apparatus). The POS terminal 10 and the scanner 20 are communicably connected via a LAN (Local Area Network) or a USB (Universal Serial Bus). The scanner 20 (information processing apparatus) and the image recognition device 30 are communicably connected via a LAN. 【0011】 In the embodiment, Ethernet (registered trademark) and TCP (Transmission Control Protocol) are used together for LAN communication, but the communication protocol is not limited. 【0012】 The POS terminal 10 and the image recognition device 30 are communicably connected to a LAN hub LH via a LAN. The LAN hub LH is communicably connected to a wireless router WR via a LAN. The wireless router WR can wirelessly communicate with the server 40 via a network NW. 【0013】 Scanner 20 captures an image of a product to obtain a product image which is the captured image. Scanner 20 transmits the obtained product image to image recognition device 30 via the LAN. Further, Scanner 20 detects and decodes a product barcode (1D barcode and 2D barcode) included in the obtained product image. That is, Scanner 20 reads the information held by the product barcode. The decoding result of the product barcode includes the product code held by the product barcode. Scanner 20 transmits the decoding result to image recognition device 30 via the LAN. 【0014】 Image recognition device 30 receives, via the LAN, the product image which is the captured image from Scanner 20. Image recognition device 30 has, for example, an image recognition function using a learned model by machine learning, and performs image recognition (also referred to as "package recognition") on the product image by the image recognition function. Specifically, image recognition device 30 obtains, by the image recognition function, feature amounts included in the product image, compares the obtained feature amounts with a reference dictionary associating a plurality of feature amounts with product codes, and obtains the product code associated with the feature amount closest to the obtained feature amounts. That is, the image recognition result includes the product code of the product shown in the product image. Image recognition device 30 may perform image recognition on the product image using a method such as deep learning. Image recognition device 30 transmits the image recognition result to Scanner 20 via the LAN. 【0015】 Scanner 20 receives, via the LAN, the image recognition result from image recognition device 30. Scanner 20 merges the decoding result and the image recognition result. Here, merging means obtaining one product code from the decoding result and the image recognition result. Therefore, the merge result includes the product barcode included in the product image or the product code of the product shown in the product image. Scanner 20 transmits the merge result to POS terminal 10 via the LAN or via USB. POS terminal 10 performs product registration based on the product code of the merge result received from Scanner 20. 【0016】 Furthermore, the image recognition device 30 determines whether to use the product images received from the scanner 20 for additional training. For example, if the difference between the acquired feature and the feature closest to the acquired feature is greater than or equal to a predetermined amount, the image recognition device 30 determines that the product images received from the scanner 20 are product images to be used for additional training. The image recognition device 30 sends the product images determined to be used for additional training, along with the product codes of the decoded results received from the scanner 20, to the server 40 via LAN. 【0017】 Server 40 receives product images and product codes from the image recognition device 30 via LAN. Server 40 stores the received product images and product codes in association with each other. Server 40 uses the stored product images and product codes to perform additional training on the pre-trained model for product image recognition. Server 40 updates the pre-trained model through this additional training. In addition, Server 40 updates the matching dictionary in conjunction with the additional training. Updating the matching dictionary includes modifying existing records and adding new records. Server 40 transmits the updated pre-trained model and the updated matching dictionary to the image recognition device 30 via LAN. 【0018】 The image recognition device 30 receives the updated trained model and the updated matching dictionary from the server 40 via LAN. The image recognition device 30 updates its currently held trained model with the received updated trained model. The image recognition device 30 also updates its currently held matching dictionary with the received updated matching dictionary. 【0019】 In this product information management system (MS), when a product's packaging changes, the effort required to re-collect product images for additional training of the pre-trained model used for product image recognition is eliminated. 【0020】 Furthermore, server 40 manages the product master. POS terminals 10 transmit accounting information (information related to accounting transactions) to wireless router WR via LAN through LAN hub LH. Wireless router WR transmits the received accounting information to server 40 via network NW. Server 40 manages the product master based on the received accounting information. For example, server 40 receives accounting information from multiple POS terminals 10 and manages a product master for each of the multiple POS terminals 10. Product master management includes modifying existing records and adding new records. Server 40 also transmits a product master appropriate for each POS terminal 10 to that terminal 10 via network NW, wireless router WR, and LAN hub LH. 【0021】 The image recognition device 30 may also transmit the product images received from the scanner 20 to the server 40 regardless of whether or not they are to be used for additional training. In this case, the product images stored in the server 40 may be used, for example, to analyze the state (events) of image recognition by the image recognition device 30. 【0022】 (Product Information Registration System) The following describes a self-service POS system, operated by the customer purchasing the product, as an example of a product information registration system. However, product information registration systems are not limited to self-service POS systems. A product information registration system may also be a POS system operated by the store staff selling the product. 【0023】 Figure 2 is a perspective view showing the external appearance of the self-service POS system 1. The self-service POS system 1 comprises a POS terminal 10, a scanner 20 built into the POS terminal 10, and an image recognition device 30 built into the POS terminal 10. Here, the self-service POS system 1 is an example of a product information registration system, the POS terminal 10 is an example of a registration device, and the scanner 20 and image recognition device 30 are examples of information processing devices. 【0024】 The scanner 20 identifies the product the customer is purchasing and transmits the product code of the identified product to the POS terminal 10. The product code is an example of product identification information that identifies a product. The POS terminal 10 registers the product based on the product code entered from the scanner 20 and also performs accounting processing related to the registered product. Accounting processing is the process that the POS terminal 10 performs in order for the customer to pay for the purchased product. 【0025】 As shown in Figure 2, the POS terminal 10 comprises a main unit 50, a first basket stand 70, and a second basket stand 80. The main unit 50 has a display 51 and a touch panel 52 on its top, and houses a printer 53, a card reader 54, and a change dispenser 55 (see Figure 3 for each) inside. 【0026】 Display 51 is a display device such as an LCD (Liquid Crystal Display) that displays various information. For example, display 51 displays product information such as the product name and price of products registered by the customer during the customer registration operation. Display 51 also displays accounting information such as the total transaction amount and change amount in conjunction with the customer's accounting operation. 【0027】 The touch panel 52 is located on the surface of the display 51 and inputs information corresponding to the touch location to the control unit 100 (see Figure 3) of the POS terminal 10. Customers or administrators (both operators who are users) using the POS terminal 10 can operate the touch panel 52 by touching various buttons and operation keys displayed on the display 51. 【0028】 As shown in Figure 2, below the display 51, facing the direction of the customer, are the reading window 230 for the scanner 20, the receipt printing slot 531 for the printer 53, and the card insertion slot 541 for the card reader 54. 【0029】 The reading window 230 is a window through which the scanner 20 captures an image of the product's appearance. The customer, who is the operator of the self-service POS system 1, performs the product registration operation by holding the product they wish to purchase over the reading window 230. The customer holds the product over the reading window 230, changing its orientation, until the self-service POS system 1 completes the product registration and a registration completion sound is emitted. 【0030】 The issuing slot 531 is an opening for ejecting receipts printed by the printer 53. The receipts have information (accounting information) related to the transactions processed by the POS terminal 10 printed on them. The POS terminal 10 may also be configured to issue electronic receipts instead of paper receipts printed by the printer 53. 【0031】 The card slot 541 is an opening for inserting credit cards or other cards to be read by the card reader 54. When a customer makes a payment with a credit card, or when a customer has a store membership card or similar card read, a card is inserted through the card slot 541. 【0032】 Furthermore, the main body 50 has a coin slot 551, a coin outlet 552, a coin tray 553, a banknote slot 554, and a banknote outlet 555, which correspond to the position of the change machine 55 housed inside. 【0033】 The coin slot 551 is an opening into which customers insert coins to pay. Coins inserted into the coin slot 551 are stored in the change machine 55. The coin outlet 552 is an opening that discharges coins dispensed from the change machine 55. The coin outlet 552 discharges change or coins that were inserted into the coin slot 551 but not accepted by the change machine 55. The coin tray 553 is a tray that receives coins discharged from the coin outlet 552. The banknote slot 554 is an opening into which customers insert banknotes to pay. Banknotes inserted into the banknote slot 554 are stored in the change machine 55. The banknote outlet 555 is an opening that discharges banknotes, which are the change dispensed from the change machine 55. 【0034】 The first basket rest 70 is a rest on which a shopping basket (not shown) containing the goods that a customer intends to purchase is placed. The first basket rest 70 is equipped with a first weighing unit 71. The first weighing unit 71 weighs the total weight of the shopping basket placed on the first basket rest 70 and the goods contained in the shopping basket. 【0035】 The second basket placement platform 80 is a platform on which a shopping basket (not shown) containing goods that have been removed from a shopping basket placed on the first basket placement platform 70 and whose product code has been read, i.e., registered goods, is placed. The second basket placement platform 80 comprises a second weighing unit 81, a pair of support rods 82, and a temporary placement platform 83. 【0036】 The second weighing unit 81 weighs the total weight of a shopping basket placed on the second basket placement platform 80 and the goods contained in the shopping basket, or the total weight of a shopping bag (not shown) supported by a pair of support rods 82 and the goods contained in the shopping bag. The support rods 82 are rods for hooking and supporting a shopping bag that contains registered goods. The support rods 82 make it easier to put goods into the shopping bag by supporting the shopping bag in an open state. The temporary placement platform 83 is a platform for temporarily placing easily damaged or deformable goods among the registered goods, such as tofu and eggs. The customer can then place the goods placed on the temporary placement platform 83 into the shopping basket or shopping bag at the end. 【0037】 The customer registers the items by holding the items they have taken out of the shopping basket placed on the first basket stand 70 up to the reading window 230. The customer then places the registered items into a shopping basket placed on the second basket stand 80 or into a shopping bag supported by the support rod 82. 【0038】 The first weighing unit 71 measures the weight before and after removing items from a shopping basket placed on the first basket stand 70, allowing the control unit 100 (see Figure 3) to recognize the weight change. The second weighing unit 81 measures the weight before and after placing items in a shopping basket placed on the second basket stand 80 or in a shopping bag supported by a support rod 82, allowing the control unit 100 to recognize the weight change. By determining whether these two weight changes are equal, the control unit 100 can determine whether all the items the customer intends to purchase have been registered. 【0039】 Furthermore, the main body 50 is equipped with a cylindrical pole 57 that extends upward. The upper tip of the pole 57 is provided with a light-emitting part 571 that lights up when calling a store employee (also known as the manager of the POS terminal 10). 【0040】 (POS terminal hardware configuration) Next, the hardware configuration of the POS terminal 10 will be described with reference to Figure 3. Figure 3 is a block diagram showing the hardware configuration of the POS terminal 10. 【0041】 The POS terminal 10 includes a control unit 100, a storage unit 110, a display 51, a touch panel 52, a printer 53, a card reader 54, a change dispenser 55, a first weighing unit 71, a second weighing unit 81, a light-emitting unit 571, an audio output unit 120, a connection interface 121, and a LAN interface 122. These components—the control unit 100, the storage unit 110, the display 51, the touch panel 52, the printer 53, the card reader 54, the change dispenser 55, the first weighing unit 71, the second weighing unit 81, the light-emitting unit 571, the audio output unit 120, the connection interface 121, and the LAN interface 122—are connected to each other via a bus 123 or the like. 【0042】 The control unit 100 consists of a computer equipped with a CPU (Central Processing Unit) 101, ROM (Read Only Memory) 102, and RAM (Random Access Memory) 103. The CPU 101, ROM 102, and RAM 103 are connected to each other via a bus 123. 【0043】 The CPU 101 controls the entire POS terminal 10. The ROM 102 stores various programs and data, such as the program used to drive the CPU 101. The RAM 103 is used as the work area for the CPU 101 and loads the various programs and data stored in the ROM 102 and the memory unit 110. The control unit 100 executes various control processes of the POS terminal 10, for example, by having the CPU 101 operate according to the control program 111 stored in the memory unit 110 and loaded into the RAM 103. 【0044】 RAM103 has a product information unit 1031. The product information unit 1031 stores product information read from the product master 112 (described later) based on the product code acquired from the scanner 20. Product registration is performed when product information is stored (registered) in the product information unit 1031. The product information stored in the product information unit 1031 includes the product code, product name, price, etc. The product information unit 1031 stores product information related to one transaction and is cleared when the accounting processing for that transaction is completed. 【0045】 The storage unit 110 is composed of a storage medium such as an HDD (Hard Disk Drive) or flash memory, and retains its contents even when the power is cut off. The storage unit 110 stores the control program 111 and the product master 112. 【0046】 The control program 111 is a program that implements functions such as receiving product codes from the scanner 20, registering products based on the received product codes, performing accounting processing for registered products, and setting various operating modes within the product information registration system RS according to the administrator's operation. The control program 111 may be stored in the ROM 102 instead of being stored in the storage unit 110. 【0047】 The product master 112 is a master file that stores product information for the products handled by the store. Since the products handled by the store change daily, the product master 112 is updated as needed by a store server (not shown) connected via the LAN interface 122. Figure 7 shows the data structure of the product master 112. The product master 112 includes product codes, product categories associated with the product codes, product names, and prices. 【0048】 The product code is information that identifies a product. The product classification is information that categorizes products sold in stores. The product name is information that indicates the name of the product. The price is information that indicates the price (unit price) of the product. Note that product master 112 may also include other information associated with the product code. 【0049】 Returning to Figure 3, we will continue the explanation of the hardware configuration of the POS terminal 10. The configuration and functions of the display 51 and touch panel 52 are as described above. 【0050】 The printer 53 is configured, for example, as a thermal printer. The printer 53 prints transaction information on roll-shaped receipt paper and issues it as a receipt from the issuing slot 531. 【0051】 The card reader 54 reads the credit information necessary for payment from the credit card inserted through the card slot 541. The card reader 54 also reads member information that identifies the member from a membership card or point card or other medium inserted through the card slot 541. The card reader 54 may read information magnetically from the card, or it may be an IC card reader that reads information from an IC card with a built-in IC (Integrated Circuit) chip. 【0052】 The change dispenser 55 accepts the banknotes and coins paid by the customer when they pay for the goods in cash, and dispenses change as needed. Banknotes are inserted through the banknote slot 554, and coins are inserted through the coin slot 551. The banknotes of the change are discharged through the banknote discharge slot 555, and the coins of the change are discharged through the coin discharge slot 552. 【0053】 The configuration and functions of the first weighing unit 71, the second weighing unit 81, and the light-emitting unit 571 are as described above. The voice output unit 120 generates voice as needed to notify the customer of information. For example, the voice output unit 120 outputs a notification sound to indicate that product registration is complete. The voice output unit is an example of a notification unit. 【0054】 The connection interface 121 is an interface for communicating with the scanner 20 via LAN or USB. The control unit 100 sends and receives information (data) to and from the scanner 20 via the connection interface 121, via LAN or USB. For example, the control unit 100 receives product codes from the scanner 20 via the connection interface 121, via LAN or USB. Also, for example, the control unit 100 sends data for an operating mode selected according to the administrator's operation to the scanner 20 via the connection interface 121, via LAN or USB. 【0055】 The LAN interface 122 is an interface for communicating with the LAN hub LH via the LAN. The control unit 100 sends and receives information (data) to and from the LAN hub LH via the LAN interface 122. For example, the control unit 100 sends and receives information between the server 40 and the product master 112 via the LAN through the LAN hub LH and the wireless router WR. 【0056】 The LAN interface 122 also serves as an interface for communicating with external devices such as a store server (not shown) managed by the store. The control unit 100 sends and receives information to and from external devices via the LAN interface 122. 【0057】 (Scanner hardware configuration) Next, the hardware configuration of the scanner 20 will be described with reference to Figure 4. Figure 4 is a diagram showing the hardware configuration of the scanner 20. 【0058】 Scanner 20 captures an image of the product purchased by the customer and obtains a product image. Next, scanner 20 detects the product barcode contained in the product image, i.e., the barcode attached to the captured product, and decodes the detected product barcode. The decoding result of the product barcode includes the product code held by the product barcode. Scanner 20 also transmits the product image to image recognition device 30 via LAN. 【0059】 The scanner 20 comprises a control unit 200, a storage unit 210, an imaging unit 220, a connection interface 221, and a LAN interface 222. These control unit 200, storage unit 210, imaging unit 220, connection interface 221, and LAN interface 222 are connected to each other via a bus 223 or the like. 【0060】 The control unit 200 consists of a computer equipped with a CPU 201, ROM 202, and RAM 203. The CPU 201, ROM 202, and RAM 203 are connected to each other via a bus 223. 【0061】 The CPU 201 controls the entire scanner 20. The ROM 202 stores various programs and data, such as the program used to drive the CPU 201. The RAM 203 is used as the work area for the CPU 201 and loads the various programs and data stored in the ROM 202 and the storage unit 210. The control unit 200 executes various control processes for the scanner 20, for example, by having the CPU 201 operate according to the control program 211 stored in the storage unit 210 and loaded into the RAM 203. 【0062】 The storage unit 210 is composed of a storage medium such as an HDD or flash memory, and retains its contents even when the power is cut off. The storage unit 210 stores the control program 211 and the processing results 212. 【0063】 The control program 211 is a program that implements functions such as: starting imaging with the imaging unit 220 in response to receiving a transaction start signal from the POS terminal 10; saving frame images (images captured) of products captured by the imaging unit 220 to the RAM 203; acquiring frame images (product images, which are the captured images) held by the RAM 203; detecting product barcodes included in the product images; decoding product barcodes; transmitting product images to the image recognition device 30; receiving image recognition results from the image recognition device 30; merging the decoding results and image recognition results; transmitting the product code of the merged results to the POS terminal 10; and stopping imaging with the imaging unit 220 in response to receiving a registration completion signal from the POS terminal 10. The control program 211 may be stored in the ROM 202 instead of the storage unit 210. 【0064】 The processing result 212 includes the decoding result obtained by decoding the product barcode, the image recognition result by the image recognition device 30, and the merged result obtained by merging the decoding result and the image recognition result. The merged result includes the product barcode included in the product image or the product code of the product shown in the product image. 【0065】 The imaging unit 220 is composed of, for example, a color CCD image sensor or a color CMOS image sensor. The imaging unit 220, in accordance with the control of the control unit 200, captures images of products through the reading window 230 and outputs product images, which are the captured images. For example, the imaging unit 220 captures moving images at a predetermined frame rate (for example, 30fps). The imaging unit 220 sequentially stores the captured frame images in the RAM 203. The frame images (product images) held in the RAM 203 are used to identify the product codes of the products depicted in the frame images. 【0066】 The connection interface 221 is an interface for communicating with the POS terminal 10 via LAN or USB. The control unit 200 sends and receives information (data) to and from the POS terminal 10 via the connection interface 221, either via LAN or USB. 【0067】 The LAN interface 222 is an interface for communicating with the image recognition device 30 via the LAN. The control unit 200 sends and receives information (data) to and from the image recognition device 30 via the LAN interface 222. 【0068】 The control unit 200 detects the product barcode contained in the frame image (product image) held by the RAM 203, decodes the product barcode, and obtains the product code held by the product barcode. The control unit 200 also transmits the frame image (product image) held by the RAM 203 to the image recognition device 30 via the LAN interface 222 and receives the image recognition result (product code) from the image recognition device 30. Furthermore, the control unit 200 merges the decoding result and the image recognition result to identify the product barcode contained in the product image or the product code of the product shown in the product image, and transmits the identified product code to the POS terminal 10 via the connection interface 221. 【0069】 (Image recognition device hardware configuration) Next, the hardware configuration of the image recognition device 30 will be described with reference to Figure 5. Figure 5 is a diagram showing the hardware configuration of the image recognition device 30. 【0070】 The image recognition device 30 receives product images, which are captured images from the scanner 20, via the LAN. The image recognition device 30 starts image recognition upon receiving the captured images from the scanner 20 and stops image recognition when it stops receiving captured images from the scanner 20. The image recognition device 30 performs image recognition on the product images contained in the received captured images. That is, the image recognition device 30 obtains the product codes of the products shown in the product images based on the features of the product images. The image recognition device 30 transmits the image recognition results to the scanner 20 via the LAN. The image recognition device 30 also transmits the product images or the product images and product codes to the server 40 via the LAN as needed. Furthermore, the image recognition device 30 receives the updated trained model and matching dictionary from the server 40 via the LAN and updates the currently held trained model and matching dictionary. 【0071】 The image recognition device 30 comprises a control unit 300, a storage unit 310, and a LAN interface 321. These control unit 300, storage unit 310, and LAN interface 321 are connected to each other via a bus 322 or the like. 【0072】 The control unit 300 consists of a computer equipped with a CPU 301, ROM 302, and RAM 303. The CPU 301, ROM 302, and RAM 303 are connected to each other via a bus 322. 【0073】 The CPU 301 controls the entire image recognition device 30. The ROM 302 stores various programs and data, such as the program used to drive the CPU 301. The RAM 303 is used as the work area for the CPU 301 and loads the various programs and data stored in the ROM 302 and the storage unit 310. The control unit 300 executes various control processes of the image recognition device 30, for example, by having the CPU 301 operate according to the control program 311 stored in the storage unit 310 and loaded into the RAM 303. 【0074】 The storage unit 310 is composed of a storage medium such as an HDD or flash memory, and retains its contents even when the power is cut off. The storage unit 310 stores a control program 311, a learned model 312, a matching dictionary 313, and duplicate confirmation information 314. 【0075】 The control program 311 is a program that implements functions such as receiving product images, which are captured images, from the scanner 20; performing image recognition on the product images; determining whether the image recognition was successful; sending the image recognition results to the scanner 20; receiving the decoded product code from the scanner 20; determining whether to use the product images for additional training; sending the product images or the product images and product codes to the server 40; receiving the updated trained model and updated matching dictionary from the server 40; updating the currently held trained model with the updated trained model; and updating the currently held matching dictionary with the updated matching dictionary. The control program 311 may be stored in the ROM 302 instead of the storage unit 310. 【0076】 The pre-trained model 312 is an image recognition model for performing image recognition on product images. The pre-trained model 312 has been trained using machine learning and can be further trained using machine learning. 【0077】 The matching dictionary 313 is a data table that manages the correspondence between products and the characteristic features of the appearance of those products. Figure 8 shows the data structure of the matching dictionary 313. The matching dictionary 313 includes product codes and the characteristic features associated with the product codes. The matching dictionary 313 may have multiple characteristic features for a single product code. The product codes in the matching dictionary 313 are the same as the product codes in the product master 112 held by the storage unit 110 of the POS terminal 10. 【0078】 As described above, the product code is information that identifies a product. Feature quantities are parameterized representations of the product's appearance, such as its standard shape, surface color, pattern, and texture. The control unit 300 acquires the feature quantities contained in the product image, compares the acquired feature quantities with a matching dictionary, and obtains the product code associated with the acquired feature quantities. In other words, based on the feature quantities acquired from the product image, the control unit 300 obtains the product code of the product shown in the product image from among the products pre-recorded in the matching dictionary 313. 【0079】 Duplicate verification information 314 is information that indicates, using a flag, whether or not a product has already been recognized for each product code. The details will be explained later. 【0080】 Returning to Figure 5, we will continue the explanation of the hardware configuration of the image recognition device 30. 【0081】 The LAN interface 321 is an interface for communicating with the scanner 20 and the LAN hub LH. The control unit 300 sends and receives information (data) with the scanner 20 and the LAN hub LH via the LAN interface 321. 【0082】 For example, the control unit 300 receives a frame image (product image) from the scanner 20 via the LAN interface 321. The control unit 300 also obtains the product code of the product shown in the product image, as described above, and transmits the obtained product code to the scanner 20 via the LAN interface 321. 【0083】 Furthermore, the control unit 300 transmits the product image that has undergone image recognition, or the product image that has undergone image recognition and the product code received from the scanner 20 via the LAN interface 321 as needed, to the server 40. The control unit 300 also receives the updated trained model 412 (see Figure 6) and the updated matching dictionary 413 (see Figure 6) from the server 40 via the LAN interface 321. The control unit 300 updates the currently held trained model 312 with the updated trained model 412. The control unit 300 also updates the currently held matching dictionary 313 with the updated matching dictionary 413. 【0084】 (Server hardware configuration) Next, the hardware configuration of server 40 will be described with reference to Figure 6. Figure 6 is a diagram showing the hardware configuration of server 40. 【0085】 Server 40 receives and stores product images and product codes from the image recognition device 30. Using the stored product images and product codes, Server 40 performs additional training on the pre-trained model for product image recognition and updates the pre-trained model and the matching dictionary. Server 40 sends the updated pre-trained model and the updated matching dictionary to the image recognition device 30. Server 40 also manages the product master. Server 40 receives accounting processing information from the POS terminal 10 and manages the product master based on the received accounting processing information. Server 40 sends the product master appropriate for each POS terminal 10 to that POS terminal 10. 【0086】 Server 40 comprises a control unit 400, a storage unit 410, and a communication unit 421. These control unit 400, storage unit 410, and communication unit 421 are connected to each other via a bus 422 or the like. 【0087】 The control unit 400 consists of a computer equipped with a CPU 401, ROM 402, and RAM 403. The CPU 401, ROM 402, and RAM 403 are connected to each other via a bus 422. 【0088】 The CPU 401 controls the entire server 40. The ROM 402 stores various programs and data, such as the program used to drive the CPU 401. The RAM 403 is used as the work area for the CPU 401 and loads the various programs and data stored in the ROM 402 and the storage unit 410. The control unit 400 executes various control processes of the server 40, for example, by having the CPU 401 operate according to the control program 411 stored in the storage unit 410 and loaded into the RAM 403. 【0089】 The storage unit 410 is composed of a storage medium such as an HDD or flash memory, and retains its contents even when the power is cut off. The storage unit 410 stores the control program 411, the learned model 412, the comparison dictionary 413, and the product master 414. 【0090】 The control program 411 is a program that implements functions such as receiving product images and product codes from the image recognition device 30, storing product images and product codes, further learning and updating the trained model 412, updating the matching dictionary 413, sending the updated trained model 412 and the updated matching dictionary 413 to the image recognition device 30, receiving accounting processing information from the POS terminal 10, managing the product master 414, sending the product master 414 to the POS terminal 10, and sending the stored product images to an external device as needed. The control program 411 may be stored in the ROM 402 instead of the storage unit 410. 【0091】 The pre-trained model 412 is a machine learning model trained to perform image recognition on product images. More specifically, the pre-trained model 412 is an image recognition model that obtains the product code of the product shown in the product image by acquiring features contained in the product image and comparing the acquired features with the matching dictionary 413. 【0092】 The matching dictionary 413 is a data table that manages the correspondence between the product code of a product and the visual features of that product, similar to the matching dictionary 313 held by the image recognition device 30. The matching dictionary 413 includes the matching dictionaries 313 held by multiple image recognition devices 30. The server 40 transmits the matching dictionary 313 appropriate for each image recognition device 30 to that device 30. 【0093】 The product master 414, like the product master 112 held by the POS terminal 10, includes a product code, the product category associated with the product code, the product name, and the price. The product master 414 includes the product masters 112 held by multiple POS terminals 10. The server 40 manages the product master 414 based on accounting processing information received from the POS terminals 10. For example, the server 40 updates the product master 414 based on accounting processing information. The server 40 sends the product master 112 appropriate for each POS terminal 10 to that POS terminal 10. 【0094】 The communication unit 421 is an interface for communicating with the wireless router WR. The control unit 400 sends and receives information (data) with the wireless router WR via the communication unit 421. 【0095】 For example, the control unit 400 receives and stores product images and image recognition results from the image recognition device 30 via the communication unit 421. The control unit 400 uses the stored product images and image recognition results to further train the trained model 412 and update the trained model 412 and the matching dictionary 413. The control unit 400 transmits the updated trained model and the updated matching dictionary to the image recognition device 30 via the communication unit 421. The control unit 400 transmits the stored product images to external devices as needed. 【0096】 Furthermore, the server 40 receives accounting processing information from the POS terminal 10 via the communication unit 421. Based on the received accounting processing information, the server 40 manages the product master. The server 40 transmits the product master appropriate for each POS terminal 10 to each POS terminal 10 via the communication unit 421. 【0097】 (POS terminal function configuration) Next, the functional configuration of the POS terminal 10 will be described with reference to Figure 10. Figure 10 is a block diagram showing the functional configuration of the control unit 100 of the POS terminal 10. 【0098】 The control unit 100 includes an input means 1001, a registration means 1002, an accounting processing means 1003, and an output means 1004. The control unit 100 functions as the input means 1001, registration means 1002, accounting processing means 1003, and output means 1004 when the CPU 101 operates according to a control program stored in the ROM 102 or the storage unit 110. These functions may also be configured using hardware such as dedicated circuits. 【0099】 Various information is input to the input means 1001 from the scanner 20, touch panel 52, card reader 54, first weighing unit 71, second weighing unit 81, etc. For example, the product code is input to the input means 1001 from the scanner 20. 【0100】 Furthermore, information based on the operation of the touch panel 52 is input to the input means 1001. For example, transaction start information declaring the start of a transaction is input to the input means 1001. Also, registration completion information indicating that the product registration for the goods related to a transaction has been completed is input to the input means 1001. 【0101】 The registration means 1002 performs product registration of the product that the customer intends to purchase based on the customer's operation. In other words, the registration means 1002 registers product information identified by the product identification information entered into the input means 1001. Specifically, the registration means 1002 reads product information from the product master 112 based on the product code entered into the input means 1001. The registration means 1002 then stores the read product information in the product information unit 1031. The product information includes information such as the product code, product name, and price. 【0102】 The accounting processing device 1003 performs accounting processing related to the payment of goods registered by the registration device 1002. Specifically, the accounting processing device 1003 performs processing such as calculating the total amount (transaction amount) of the registered goods, calculating the amount of change, displaying various information, and issuing a receipt. In addition, if the customer wishes to make a cashless payment such as credit card payment or QR code payment, the accounting processing device 1003 can perform the accounting processing necessary for the payment. 【0103】 The output means 1004 outputs various information to the scanner 20, printer 53, change machine 55, light-emitting unit 571, audio output unit 120, etc. For example, when transaction start information is input to the input means 1001, the output means 1004 outputs an imaging start signal to instruct the scanner 20 to start imaging. Also, when registration completion information is input to the input means 1001, the output means 1004 outputs an imaging stop signal to instruct the scanner 20 to stop imaging. 【0104】 The output means 1004 outputs a control signal to the audio output unit 120 to emit a notification sound when the registration means 1002 completes the registration of a product for that product. The output means 1004 functions as a notification means to notify the notification unit (audio output unit 120) that the registration of product information by the registration means 1002 has been completed. It is also possible to provide the audio output unit 120 on the scanner 20. In this case, the audio output unit 120 may emit a notification sound when the scanner 20 identifies the product code. 【0105】 (Scanner Functional Configuration) Next, the functional configuration of the scanner 20 will be described with reference to Figure 11. Figure 11 is a block diagram showing the functional configuration of the control unit 200 of the scanner 20. 【0106】 The control unit 200 includes an acquisition means 2001, a decoding means 2002, a transmitting and receiving means 2003, a merging means 2004, and a transmitting means 2005. The control unit 200 functions as the acquisition means 2001, decoding means 2002, transmitting and receiving means 2003, merging means 2004, and transmitting means 2005 when the CPU 201 operates according to a control program stored in the ROM 202 or the storage unit 210. Note that each of these functions may be configured with hardware such as dedicated circuits. 【0107】 The acquisition means 2001 acquires one frame image (captured image) as a product image from the moving image captured by the imaging unit 220. The acquisition means 2001 stores the acquired product image in the RAM 203. For example, the acquisition means 2001 acquires all or some of the multiple frame images sequentially captured by the imaging unit 220 as candidate product images, stores all or some of the acquired frame images in the RAM 203, and selects a product image from all or some of the stored frame images. 【0108】 Furthermore, the acquisition means 2001 acquires various other information. For example, the acquisition means 2001 acquires an image capture start signal and an image capture stop signal from the POS terminal 10. The acquisition means 2001 detects that a customer operation has started (i.e., there is customer use) by acquiring the image capture start signal from the POS terminal 10, and detects that the customer operation has been completed (i.e., there is no customer use) by acquiring the image capture stop signal from the POS terminal 10. When the acquisition means 2001 acquires the image capture start signal from the POS terminal 10, the imaging unit 220 starts capturing, and the acquisition means 2001 acquires the captured image taken by the imaging unit 220. When the acquisition means 2001 acquires the image capture stop signal from the POS terminal 10, the imaging unit 220 stops capturing, and the acquisition means 2001 stops acquiring the captured image. 【0109】 The decoding means 2002 detects the product barcode contained in the product image, which is the captured image acquired by the acquisition means 2001, and extracts the product barcode from the product image. The decoding means 2002 decodes the extracted product barcode. As a decoding result of decoding the product barcode, the decoding means 2002 obtains the product code held by the product barcode. 【0110】 The transmitting / receiving means 2003 transmits the product image acquired by the acquisition means 2001 to the image recognition device 30. The image recognition device 30 performs image recognition on the received product image and transmits the image recognition result (the product code of the product shown in the product image) to the scanner 20. The transmitting / receiving means 2003 receives the image recognition result transmitted by the image recognition device 30. The transmitting / receiving means 2003 also transmits the decoding result (the product code held by the product barcode) from the decoding means 2002 to the image recognition device 30. 【0111】 The merging means 2004 merges the decoding result (the product code held by the product barcode) and the recognition result (the product code of the product shown in the product image). That is, the merging means 2004 obtains a single product code from the decoding result and the image recognition result. The merged result includes the product code held by the product barcode included in the product image or the product code of the product shown in the product image. 【0112】 The merging means 2004 uses the product code from the image recognition result as the merged result if a decoding result cannot be obtained. Situations in which a decoding result cannot be obtained include when the consumer does not correctly hold the product barcode over the imaging unit 220 of the scanner 20, or when the product barcode is bent or folded in an unnatural way. 【0113】 If both the decoded result and the image recognition result are obtained and they match, the merging means 2004 will naturally use the matching product code as the merged result. If both the decoded result and the image recognition result are obtained but they do not match, the product code from the more reliable decoded result will be used as the merged result. 【0114】 The transmission means 2005 transmits the product code resulting from the merge by the merge means 2004 to the POS terminal 10 via the connection interface 221. 【0115】 (Functional configuration of the image recognition device) Next, the functional configuration of the image recognition device 30 will be described with reference to Figure 12. Figure 12 is a block diagram showing the functional configuration of the control unit 300 of the image recognition device 30. 【0116】 The control unit 300 includes a receiving means (acquisition means) 3001, an image recognition means 3002, a determination means 3003, an update means 3004, a transmission means 3005, and a control means 3006. The control unit 300 functions as the receiving means 3001, image recognition means 3002, determination means 3003, update means 3004, transmission means 3005, and control means 3006 when the CPU 301 operates according to a control program stored in the ROM 302 or the storage unit 310. Note that each of these functions may be configured with hardware such as dedicated circuits. 【0117】 The receiving means 3001 receives product images, which are captured images from the scanner 20, via the LAN interface 321. Specifically, the receiving means 3001 acquires captured images (for example, 30 frames of images for each act of holding the product over the aforementioned imaging unit 220) performed by the user. The receiving means 3001 stores the received captured product images in the RAM 303. 【0118】 The image recognition means 3002 performs image recognition on product images using an image recognition function based on a trained model 312. That is, it recognizes products that appear in the captured image acquired by the receiving means 3001. Specifically, the image recognition means 3002 acquires feature quantities contained in the product image, compares the acquired feature quantities with the matching dictionary 313, and obtains a product code associated with the feature quantity that is closest to the acquired feature quantity. The image recognition means 3002 stores the acquired product code in RAM 303. 【0119】 Furthermore, the image recognition means 3002 also has a function to detect objects when they are present in the captured image (object detection function). This object detection function may be provided separately and independently of the image recognition means 3002. 【0120】 Furthermore, while the image recognition means 3002 is a recognition means that recognizes products appearing in the captured image, the decoding means 2002 within the scanner 20, as mentioned above, also recognizes products appearing in the captured image. Therefore, the decoding means 2002 can be considered another recognition means (another recognition means). 【0121】 The transmission means 3005 transmits the product code obtained from the image recognition result by the image recognition means 3002 to the transmission / reception means 2003 of the scanner 20 via the LAN interface 321. 【0122】 The determination means 3003 determines whether the image recognition by the image recognition means 3002 was successful. For example, if the difference between the acquired feature and the feature closest to the acquired feature is less than a predetermined amount, the determination means 3003 determines that the image recognition was successful. Conversely, if the difference is greater than or equal to the predetermined amount, the determination means 3003 determines that the image recognition was unsuccessful. Furthermore, if the determination means 3003 determines that the image recognition was unsuccessful, it determines that the product image on which the image recognition was performed will be used for additional training. 【0123】 Furthermore, the receiving means 3001 receives the decoded product code from the scanner 20 via the LAN interface 321. The receiving means 3001 stores the received product code in the RAM 303. 【0124】 If the determination means 3003 determines that the product image it has performed image recognition on is a product image to be used for additional training, the transmission means 3005 transmits that product image and its product code to the server 40 via the LAN interface 321. 【0125】 The control means 3006 is a function that controls product registration and dictionary creation, and has the following various functions. 【0126】 For example, the control means 3006 has a function to prevent the recognition result of an item from being output from the image recognition means 3002 if the item in the image captured by the receiving means (acquisition means) 3001 has already been recognized by another recognition means other than the image recognition means 3002 (i.e., the decoding means 2002 in the scanner 20). This function prevents the same item from being registered multiple times (duplicate registration). 【0127】 Furthermore, the control means 3006 has a function to control the image recognition means 3002 so as not to perform recognition of an item if that item has already been recognized by another recognition means. This function prevents the image recognition means 3002 from performing unnecessary item recognition, thereby reducing the load on the computer and power consumption. 【0128】 Furthermore, the control means 3006 has a function to store duplicate confirmation information in memory indicating whether or not an individual product has already been recognized. Figure 9 shows an example of duplicate confirmation information indicating whether or not an individual product has already been recognized. As shown in Figure 9, for example, for each product code, duplicate confirmation information 314 is created, which is represented by a flag indicating whether or not the product has already been recognized, and stored in the storage unit 310 in Figure 5. For example, if a product with a certain product code has already been recognized, the flag is set to a value of "1", and if the product has not yet been recognized, the value of the flag is set to "0". In this way, even if the number of products to be handled increases, it is possible to reliably confirm whether or not the target product has already been recognized. 【0129】 Furthermore, the control means 3006 can confirm whether or not an object is present in the captured image based on the result indicating whether or not an object has been detected by the object detection function provided in the image recognition means 3002. The control means 3006 does not reset the duplicate confirmation information while an object is present in the captured image, and resets the duplicate confirmation information when no object is present in the captured image. This function ensures that the duplicate confirmation information is appropriately updated with each identical operation (i.e., one scan), thereby increasing the reliability of the duplicate confirmation information. 【0130】 Furthermore, the control means 3006 has a function to control the image recognition means 3002 so that it outputs a product recognition result only once while an object is visible in the captured image (it does not output recognition results a second time or later). This function prevents multiple recognition results from being output for the same product. 【0131】 Server 40 uses the received product image and product code to further train the pre-trained model 412 for product image recognition and updates the pre-trained model 412 and the matching dictionary 413. Server 40 transmits the updated pre-trained model 412 and the updated matching dictionary 413 to the receiving means 3001 of the image recognition device 30 via the LAN interface 321. 【0132】 The receiving means 3001 receives the updated trained model 412 and the updated matching dictionary 413 from the server 40 via the LAN interface 321. The receiving means 3001 stores the received updated trained model 412 and the updated matching dictionary 413 in the RAM 303. 【0133】 The update means 3004 updates the learned model 312 currently held by the storage unit 310 with the received updated learned model 412. The image recognition device 30 also updates the matching dictionary 313 currently held by the storage unit 310 with the received updated matching dictionary 413. 【0134】 (Server Functional Configuration) Next, the functional configuration of the server 40 will be described with reference to Figure 13. Figure 13 is a block diagram showing the functional configuration of the control unit 400 of the server 40. 【0135】 The control unit 400 includes a receiving means 4001, an additional learning means 4002, a master management means 4003, and a transmitting means 4004. The control unit 400 functions as the receiving means 4001, the additional learning means 4002, the master management means 4003, and the transmitting means 4004 when the CPU 401 operates according to a control program stored in the ROM 402 or the storage unit 410. These functions may also be configured using dedicated circuits or other hardware. 【0136】 The receiving means 4001 receives product images for additional learning and the product codes of those product images from the image recognition device 30 via the communication unit 421. The receiving means 4001 stores the received product images and product codes in the RAM 403. The receiving means 4001 may also store and accumulate the received product images in the RAM 403 or storage unit 410, for example, as product images for analyzing the state (event) of image recognition by the image recognition device 30. 【0137】 The additional learning means 4002 performs additional learning on the trained model 412 held by the memory unit 410 at an appropriate time, for example, when a certain amount of product images and product codes for additional learning have been accumulated, and updates the trained model 412. In addition, the additional learning means 4002 updates the matching dictionary 413 held by the memory unit 410 in conjunction with the additional learning of the trained model 412. 【0138】 The transmission means 4004 transmits the updated trained model 412, updated by the additional learning means 4002, and the matching dictionary 413 to the receiving means 3001 of the image recognition device 30 via the communication unit 421, for example, as an image file or a compressed file. 【0139】 Furthermore, the receiving means 4001 receives accounting processing information from the POS terminal 10 via the communication unit 421. The receiving means 4001 stores the received accounting processing information in the RAM 403. 【0140】 The master management means 4003 manages the product master 414 held by the storage unit 410 based on the received accounting processing information. For example, the product master 414 includes a store code that identifies a store, a product master 112 for each store code, and information such as whether or not the product for each product code is handled and the remaining quantity. Based on the received accounting processing information, the master management means 4003 updates the product master 414, for example, the information such as the remaining quantity of the product for each product code. 【0141】 The transmission means 4004 transmits a product master 112 suitable for each store to the POS terminal 10 of the store via the communication unit 421, based on the product master 414 updated by the master management means 4003. 【0142】 (Scanner operation) Next, the operation of the scanner 20 will be described with reference to Figure 14. Figure 14 is a flowchart showing the operation flow of the scanner 20 in this embodiment. The operation of the scanner 20 is performed by each part of the scanner 20 under the control of the control unit 200 which executes the control program 211. 【0143】 In ACT11, the scanner 20 acquires a single captured image, which is a product image, from the moving image captured by the imaging unit 220. For example, first, the scanner 20 stores all or some of the multiple frame images sequentially captured by the imaging unit 220 in the RAM 203 as candidate product images. Next, the scanner 20 selects one frame image from the multiple frame images held in the RAM 203 and uses the selected frame image as the product image. The scanner 20 also assigns an identification code to the product image to identify it. For convenience, the product image will be assumed to include the identification code below. 【0144】 In ACT12, the scanner 20 transmits the product image to the image recognition device 30 via LAN, for example, using TCP communication. 【0145】 In ACT13, the scanner 20 detects the product barcode in the product image. In other words, the scanner 20 determines whether or not a product barcode is captured in the product image. 【0146】 If a product barcode is detected in ACT13 (Yes in ACT13), then in ACT14, the scanner 20 extracts and decodes the detected product barcode, and obtains the product code held by the product barcode as a result of the decoding. The scanner 20 stores the obtained product code in RAM 203. 【0147】 Next, in ACT15, the scanner 20 transmits the decoded product code (the product code held by the product barcode) to the image recognition device 30. Since the operations of ACT14 and ACT15 are performed when the product barcode is detected in ACT13, the scanner 20 may not transmit the decoded product code in ACT15. 【0148】 In ACT16, the scanner 20 checks whether it has received the image recognition result (product code of the product shown in the product image) from the image recognition device 30. If it has received the image recognition result (Yes in ACT16), the scanner 20 stores the received image recognition result in RAM 203. The scanner 20 may also identify the product image corresponding to the image recognition result based on the identification code received along with the image recognition result. After that, the process moves to the merging operation in ACT17. 【0149】 If the product barcode cannot be detected in ACT13 (in the case of No in ACT13), the actions in ACT14 and ACT15 are skipped, and the process moves on to the action of confirming receipt of the image recognition result in ACT16. 【0150】 In ACT16, if no image recognition result has been received (in the case of No in ACT16), the scanner 20 repeats the operations of ACT11 and ACT13-ACT15. At this time, since the image recognition device 30 does not require a new product image, the transmission of the product image in ACT12 is omitted. In other words, until the scanner 20 receives an image recognition result from the image recognition device 30, it continues a series of steady operations, such as acquiring the product image in ACT11, detecting the product barcode in ACT13, decoding in ACT14, and transmitting the product code of the decoding result in ACT15. 【0151】 In ACT17, the scanner 20 merges the decoded result (the product code held by the product barcode) and the image recognition result (the product code of the product shown in the product image). In other words, the scanner 20 obtains the single product code that it deems to be the most correct from the decoded result and the image recognition result. 【0152】 If a decoding result cannot be obtained, the product code from the image recognition result will be used as the merged result. Situations in which a decoding result cannot be obtained include when the consumer does not correctly hold the product barcode over the imaging unit 220 of the scanner 20, or when the product barcode is bent or folded in an unnatural way. 【0153】 If both the decoded result and the image recognition result are obtained, the scanner 20 compares the decoded result and the image recognition result. If the decoded result and the image recognition result match, the scanner 20 merges the product codes of the matching decoded result and the image recognition result. If the decoded result and the image recognition result do not match, the scanner 20 merges the product code of the more reliable decoded result. 【0154】 In ACT18, the scanner 20 transmits the merged product code (the single product code considered to be the most correct) to the POS terminal 10. 【0155】 (Operation of the image recognition device) Next, the operation of the image recognition device 30 will be described with reference to Figure 15. Figure 15 is a flowchart showing the operation flow of the image recognition device 30 in this embodiment. The operation of the image recognition device 30 is performed by each part of the image recognition device 30 under the control of the control unit 300 which executes the control program 311. Here, the duplicate confirmation information 314 described in Figure 9 is used. Hereafter, the flags indicated for each product code in the duplicate confirmation information 314 will be referred to as confirmation flags. 【0156】 First, the image recognition device 30 resets all confirmation flags in ACT21 (setting their values to "0"). 【0157】 Next, the image recognition device 30 acquires the captured image in ACT22, and in ACT23, it determines whether or not there is an object in the captured image (i.e., whether an object has been detected) using the object detection function. 【0158】 If no object is detected (No in ACT24), the image recognition device 30 resets all confirmation flags in ACT26, returns to ACT22, and acquires the next image. If an object is detected (Yes in ACT24), the image recognition device 30 determines in ACT25 whether or not a product has been identified based on the code recognition result, i.e., the product barcode decoding result. 【0159】 If a product is identified by code recognition (Yes in ACT27), the image recognition device 30 sets a flag for the corresponding product code in ACT28 (setting the value to "1") and proceeds to ACT29. If a product is not identified (No in ACT27), the process proceeds directly to ACT29. 【0160】 Next, in ACT29, the image recognition device 30 performs object (product) recognition processing, i.e., image recognition processing, and in ACT30, it determines whether the product has been identified. If the product has not been identified (in the case of No in ACT30), it returns to ACT22 and acquires the next image. 【0161】 If a product is identified (Yes in ACT30), the image recognition device 30 determines in ACT31 whether the confirmation flag for the corresponding product code is set. If the confirmation flag is set (Yes in ACT31), the device returns to ACT22 and acquires the next image. 【0162】 If the confirmation flag is not set (in the case of No in ACT31), the image recognition device 30 outputs the result for the identified product in ACT32. 【0163】 Next, the image recognition device 30 performs a process to set a confirmation flag in ACT 33. 【0164】 Next, the image recognition device 30 determines in ACT34 whether to continue or terminate the process. If the process is to continue (No in ACT34), the process from ACT22 is repeated. If the process is to terminate (Yes in ACT34), the process proceeds to ACT35. 【0165】 Finally, the image recognition device 30 transmits the output results from ACT 35 to the scanner 20 and server 40. 【0166】 This completes the series of processes. 【0167】 According to the above operation, for example, if a product is not identified by code recognition between the time an object is detected in ACT23 and the product is identified by object recognition in ACT29, the product identified by object recognition will be output as the result. Also, since the confirmation flag is not reset while an object continues to be detected, the result will only be output once while the product is held up to the imaging unit 220. 【0168】 Furthermore, for example, if the product is identified by code recognition between the time an object is detected in ACT23 and the time the product is identified by object recognition in ACT29, then even if the product is identified by object recognition afterward, ConfirmedSince the flag is already set, no result is output. Also, as long as the object continues to be detected, the confirmation flag is not reset, so as long as the product is held up to the imaging unit 220, the result for the product identified by object recognition will not be output. 【0169】 The above operation is just one example and is not limited to it. For example, if a flag for a certain product is set in ACT28, the object recognition process for that product may be prevented. 【0170】 (Summary of the embodiments) According to the embodiment, the control means 3006 can control the system so that if an item captured in an image acquired by the receiving means (acquisition means) 3001 has already been recognized by another recognition means other than the image recognition means 3002 (i.e., the decoding means 2002 in the scanner 20), the recognition result of that item is not output from the image recognition means 3002. This prevents the same item from being registered multiple times (duplicate registration). 【0171】 Furthermore, according to the embodiment, the control means 3006 can control the system so that if an item captured in an image acquired by the receiving means (acquisition means) 3001 has already been recognized by another recognition means other than the image recognition means 3002 (i.e., the decoding means 2002 in the scanner 20), the recognition result of that item is not output from the image recognition means 3002. This prevents the same item from being registered multiple times (duplicate registration). 【0172】 Furthermore, according to the embodiment, the control means 3006 can control the image recognition means 3002 not to perform recognition of an item if the item has already been recognized by another recognition means. This prevents the image recognition means 3002 from performing unnecessary item recognition, thereby reducing the load on the computer and power consumption. 【0173】 Furthermore, according to the embodiment, the control means 3006 can store duplicate confirmation information in memory indicating whether or not each product has already been recognized. This ensures that even when the number of products to be handled increases, it is possible to reliably confirm whether or not the target product has already been recognized. 【0174】 Furthermore, according to the embodiment, the control means 3006 can confirm whether or not an object is present in the captured image based on the result indicating whether or not an object has been detected by the object detection function provided in the image recognition means 3002. As long as an object is present in the captured image, the duplicate confirmation information is not reset, and when no object is present in the captured image, the duplicate confirmation information is reset. This ensures that the duplicate confirmation information is appropriately updated for each identical operation (i.e., one scan), thereby increasing the reliability of the duplicate confirmation information. 【0175】 Furthermore, according to this embodiment, the control means 3006 can control the image recognition means 3002 to output a product recognition result only once while an object is visible in the captured image (it does not output recognition results a second time or later). This prevents multiple recognition results from being output for the same product. 【0176】 (others) In the above embodiment, the control programs executed by the POS terminal 10, scanner 20, image recognition device 30, and server 40 may be provided by recording them on a computer-readable recording medium such as a CD-ROM. Alternatively, the control programs executed by the POS terminal 10, scanner 20, image recognition device 30, and server 40 in the above embodiment may be stored on a computer connected to a network such as the Internet and provided by allowing downloads via the network, or even provided via a network such as the Internet. 【0177】 Although embodiments of the present invention have been described above, these embodiments are presented as examples and are not intended to limit the scope of the invention. These embodiments can be implemented in various other forms, and various omissions, substitutions, and modifications can be made without departing from the spirit of the invention. These embodiments and their variations are included in the scope and spirit of the invention, as well as in the claims of the invention and its equivalents. [Explanation of symbols] 【0178】 1...Self-service POS system, 10...POS terminal, 100...Control unit, 1001...Input means, 1002...Registration means, 1003...Accounting processing means, 1004...Output means, 101...CPU, 102...ROM, 103...RAM, 1031...Product information unit, 110...Storage unit, 111...Control program, 112...Product master, 120...Audio output unit, 121...Connection interface, 122...LAN interface, 123...Bus, 50...Main unit, 51...Display, 52...Touch panel, 53...Printer, 531...Issuing slot, 5 4…Card reader, 541…Card slot, 55…Change dispenser, 551…Coin slot, 552…Coin outlet, 553…Coin tray, 554…Banknote slot, 555…Banknote outlet, 57…Pole, 571…Light-emitting unit, 70…First basket stand, 71…First weighing unit, 80…Second basket stand, 81…Second weighing unit, 82…Support rod, 83…Temporary stand, 20…Scanner, 200…Control unit, 2001…Acquisition means, 2002…Decoding means, 2003…Transmission / reception means, 2004…Merge means, 2005…Transmission means, 201…CPU, 202… ROM, 203...RAM, 210...Storage unit, 211...Control program, 212...Processing result, 220...Imaging unit, 221...Connection interface, 222...LAN interface, 223...Bus, 230...Reading window, 30...Image recognition device, 300...Control unit, 3001...Receiving means (acquisition means), 3002...Image recognition means, 3003...Determination means, 3004...Update means, 3005...Transmission means, 3006...Control means, 301...CPU, 302...ROM, 303...RAM, 310...Storage unit, 311...Control program, 312...Study Learned model, 313... Matching dictionary, 314... Duplicate confirmation information, 321... LAN interface, 322... Bus, 40... Server, 400... Control unit, 4001... Receiving means, 4002... Additional learning means, 4003... Master management means, 4004... Transmission means, 401... CPU, 402... ROM, 403... RAM, 410... Storage unit, 411... Control program, 412... Learned model, 413... Matching dictionary, 414... Product master, 421... Communication unit, 422... Bus, LH... LAN hub, NW... Network, WR... Wireless router.
Claims
[Claim 1] An acquisition means for acquiring the captured image captured by the imaging unit, Recognition means for recognizing products shown in the captured image, A receiving means that receives the decoding result of a decoding means that decodes the product barcode contained in the captured image to obtain the product code of the product, If the aforementioned product has already been recognized by the decoding means, a control means controls the recognition result of the said product so that it is not output from the recognition means. Equipped with, The control means is Information indicating whether the aforementioned product has already been recognized is stored in memory. The information is not reset while an object is visible in the captured image, and the information is reset when no object is visible in the captured image. Information processing device. [Claim 2] The control means is The information processing apparatus according to claim 1, wherein if the product has already been recognized by the decoding means, the recognition means is controlled not to perform recognition of the product. [Claim 3] The control means is The information processing apparatus according to claim 1, wherein the recognition means is controlled to output a product recognition result only once while an object is visible in the captured image. [Claim 4] Computers, Acquisition means for acquiring captured images captured by the imaging unit, Recognition means for recognizing products shown in the captured image, A receiving means that receives the decoding result of a decoding means that decodes the product barcode contained in the captured image to obtain the product code of the product. If the aforementioned product has already been recognized by the decoding means, a control means controls the recognition result of the said product so that it is not output from the recognition means. It is a program designed to function as such. The control means is Information indicating whether the aforementioned product has already been recognized is stored in memory. The information is not reset while an object is visible in the captured image, and the information is reset when no object is visible in the captured image. program.