System

The system addresses inefficiencies in Bell Mark campaigns by digitizing point collection through code scanning, ensuring efficient, fair, and accurate management of points.

JP2026037406APending Publication Date: 2026-03-06SOFTBANK GROUP CORP
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-08-21
Publication Date
2026-03-06

AI Technical Summary

Technical Problem

Conventional Bell Mark campaigns require physical collection of codes, leading to inefficiencies, fraudulent entries, and high management costs, making it difficult to collect points efficiently and fairly.

Method used

A system where users scan product codes with a terminal, which extracts a unique identifier, transmits it to a server for verification and point retrieval, and notifies users, enabling efficient and fair point management with periodic reporting.

Benefits of technology

The system simplifies and speeds up point collection, reduces fraudulent risks, and provides accurate, fair management through digitalization.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026037406000001_ABST
    Figure 2026037406000001_ABST
Patent Text Reader

Abstract

A system is provided.SOLUTION: A system comprising means for a user to scan a code applied to a product, means for a terminal to analyze the scanned code to extract a unique identifier, means for the terminal to transmit the extracted identifier and user information to a server, means for the server to verify the received data and retrieve points corresponding to the identifier from a database, and means for the server to add the points to an account associated with the user.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The technology of the present disclosure relates to a system. [Background technology]

[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]

[0004] The conventional Bell Mark campaign required users to physically cut off Bell Marks from products and send them to schools or organizations, which required a lot of time and effort. There were also concerns about fraudulent Bell Marks and duplicate entries, and management costs were high. This made it difficult to efficiently collect points and to conduct a fair campaign. [Means for solving the problem]

[0005] The present invention provides a system in which a user scans a code attached to a product, a terminal analyzes the scanned code to extract a unique identifier, and the terminal transmits the extracted identifier and user information to a server. The server verifies the received data, retrieves points corresponding to the identifier from a database, and adds the points to an account associated with the user. The system also provides a system that enables efficient and fair operation of the Bell Mark Campaign by combining a means for the server to notify the user after adding the points and a means for generating tally results for specific periods and reporting them to each organization.

[0006] "User" refers to a person who uses the system to scan the code attached to a product and collect points.

[0007] "Code assigned to product" refers to unique identification information such as a QR code (registered trademark) or barcode printed or affixed to products participating in the Bell Mark Campaign.

[0008] "Terminal" refers to an electronic device used by a user, such as a smartphone or tablet, that scans and analyzes the code attached to the product.

[0009] "Means of scanning the code" refers to the process of reading the code using the device's camera function.

[0010] "Means for analyzing the code" refers to the process by which the device analyzes the data in the scanned code to extract a unique identifier.

[0011] A "unique identifier" refers to an ID number or string that is unique to a product and is extracted through code analysis.

[0012] "User information" refers to personal information and identification information related to a user, and is data sent to the server for point accumulation.

[0013] "Server" refers to a computer system that receives, verifies, and processes data sent from a terminal.

[0014] "Means for verifying received data" refers to the process by which the server verifies the validity and uniqueness of data sent from the terminal.

[0015] "Database" refers to a storage device connected to a server, which is a system that stores Bellmark IDs, corresponding points, user information, etc.

[0016] "Points" refer to the points awarded to users corresponding to their Bellmark ID, and are a numerical value added to a school or organization.

[0017] "Account" refers to an entity on the system that is associated with the identification information and point information of a user or the school or organization to which the user belongs.

[0018] "Means for notifying" refers to the function by which the server notifies the user of point additions and other information.

[0019] "Means for generating aggregated results for each specific period" refers to the process by which the server aggregates the points collected for each specified period and generates statistical data.

[0020] "Means of reporting to each organization" refers to the function for reporting the aggregated results generated by the server to schools and organizations.

[0021] "System" refers to the entire mechanism for code scanning, data transmission, data validation, points accumulation, and notification and reporting. [Brief explanation of the drawings]

[0022] [Figure 1] 1 is a conceptual diagram showing an example of the configuration of a data processing system according to a first embodiment. [Figure 2]1 is a conceptual diagram showing an example of main functions of a data processing device and a smart device according to a first embodiment. [Figure 3] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a second embodiment. [Figure 4] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and smart glasses according to a second embodiment. [Figure 5] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a third embodiment. [Figure 6] FIG. 11 is a conceptual diagram showing an example of main functions of a data processing device and a headset-type terminal according to a third embodiment. [Figure 7] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a fourth embodiment. [Figure 8] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and a robot according to a fourth embodiment. [Figure 9] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 10] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 11] FIG. 3 is a sequence diagram showing a processing flow of the data processing system according to the first embodiment. [Figure 12] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 1. [Figure 13] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system according to the second embodiment when an emotion engine is combined. [Figure 14] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 2 when an emotion engine is combined. DETAILED DESCRIPTION OF THE INVENTION

[0023] An example of an embodiment of a system according to the technology of the present disclosure will be described below with reference to the accompanying drawings.

[0024] First, the terms used in the following description will be explained.

[0025] In the following embodiments, a coded processor (hereinafter simply referred to as a "processor") may be a single arithmetic device or a combination of multiple arithmetic devices. Furthermore, a processor may be a single type of arithmetic device or a combination of multiple types of arithmetic devices. Examples of arithmetic devices include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), and an APU (Accelerated Processing Unit).

[0026] In the following embodiments, a coded RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a working memory by a processor.

[0027] In the following embodiments, the coded storage is one or more non-volatile storage devices that store various programs, various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), and magnetic tapes.

[0028] In the following embodiments, a communication I / F (Interface) with a symbol is an interface including a communication processor, an antenna, etc. The communication I / F controls communication between multiple computers. Examples of communication standards applied to the communication I / F include wireless communication standards including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), Bluetooth (registered trademark), etc.

[0029] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." In other words, "A and / or B" means that it may be only A, only B, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" is also applied when three or more things are expressed connected by "and / or."

[0030] [First embodiment]

[0031] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.

[0032] 1, a data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.

[0033] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[0034] The smart device 14 includes a computer 36, a reception device 38, an output device 40, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The reception device 38, the output device 40, and the camera 42 are also connected to the bus 52.

[0035] The reception device 38 includes a touch panel 38A, a microphone 38B, and the like, and receives user input. The touch panel 38A detects contact with an indicator (for example, a pen or a finger) to receive user input by the touch of the indicator. The microphone 38B detects the user's voice to receive user input by voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.

[0036] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form of expression that the user 20 can perceive (for example, audio and / or text). The display 40A displays visible information such as text and images in accordance with instructions from the processor 46. The speaker 40B outputs audio in accordance with instructions from the processor 46. The camera 42 is a compact digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.

[0037] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54.

[0038] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.

[0039] 2, in the data processing device 12, a specific process is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific process is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[0040] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[0041] In the smart device 14, the processor 46 performs the reception output process. The storage 50 stores a reception output program 60. The reception output program 60 is used in conjunction with the specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.

[0042] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."

[0043] The present invention relates to a system in which a user scans a code attached to a product, a terminal analyzes it to extract a unique identifier, the terminal then transmits the extracted identifier and user information to a server, the server verifies the received data, retrieves points corresponding to the identifier from a database, and adds the points to an account associated with the user, thereby enabling efficient and fair point collection.

[0044] System configuration

[0045] User: A user of the System who scans the codes attached to products to collect points.

[0046] Device: The user's smartphone, tablet, or computer that scans, analyzes, and transmits the code.

[0047] Server: A central computer system that validates received data, acquires and accumulates points, and handles notifications and tallying.

[0048] Database: A storage device connected to the server, which stores Bellmark IDs, corresponding points, user information, etc.

[0049] Program processing overview

[0050] 1. User Behavior

[0051] The user scans the QR code or barcode attached to the product with their smartphone camera.

[0052] The device analyzes the image data captured by the camera and extracts a unique identifier.

[0053] 2. Data Transmission

[0054] The terminal transmits the extracted unique identifier and the user's ID information to the server.

[0055] The terminal notifies the user that the transmission was successful.

[0056] 3. Data Receipt and Verification

[0057] The server verifies the received identifier and user ID data.

[0058] The server verifies that the identifier is not already in use and checks the validity of the identification data.

[0059] 4. Earning and adding points

[0060] The server retrieves the points corresponding to the identifier from the database.

[0061] The server adds points to an account associated with the user.

[0062] The server records in the database whether the points were added successfully.

[0063] 5. User Notices

[0064] The server notifies the user of the result of the addition.

[0065] Users can check the points they have earned on their account page.

[0066] 6. Monthly Reports and Aggregation

[0067] The server generates aggregated data monthly or for a specified period.

[0068] The server reports the generated aggregate data to each organization and provides detailed statistics on a web dashboard.

[0069] Specific examples

[0070] 1. Mr. Tanaka (user) notices that the newly purchased stationery has a Bell Mark on it and scans the QR code with his smartphone camera.

[0071] 2. The device reads the QR code "BM123456" and extracts the unique identifier.

[0072] 3. The device sends the extracted identifier "BM123456" and user ID "U78910" to the server.

[0073] 4. The server validates the received data and verifies that the identifier "BM123456" is not already in use.

[0074] 5. The server retrieves the 10 points corresponding to the identifier from the database and adds them to Tanaka's school (school ID "S54321")

[0075] 6. The server notifies Tanaka of the result of the addition, and Tanaka confirms that the points have been added on his account page.

[0076] 7. At the end of the month, the server will report to school ID "S54321" the total points collected that month and how they were used.

[0077] In this way, users, terminals, and servers can cooperate to realize the digitalization of the Bell Mark campaign and provide a system that enables more efficient point collection and management.

[0078] The processing flow will be explained below.

[0079] Step 1:

[0080] The user scans the QR code or barcode on the product with their smartphone camera.

[0081] Step 2:

[0082] The device parses the data from the scanned code and extracts the unique Bellmark ID.

[0083] Step 3:

[0084] The terminal generates a data packet including the extracted Bellmark ID and user ID.

[0085] Step 4:

[0086] The terminal transmits the generated data packet to the server.

[0087] Step 5:

[0088] The server receives the data packets and verifies the correctness of the format.

[0089] Step 6:

[0090] The server checks for duplicate Bellmark IDs and verifies that they are not already in use.

[0091] Step 7:

[0092] The server retrieves the number of points corresponding to the Bellmark ID from the database.

[0093] Step 8:

[0094] The server retrieves the account information associated with the user ID from the database.

[0095] Step 9:

[0096] The server adds the acquired points to the user's account.

[0097] Step 10:

[0098] The server records the successful addition of points in the database and updates the history.

[0099] Step 11:

[0100] The server notifies the user that the points have been added successfully.

[0101] Step 12:

[0102] The user can check the points added on their account page.

[0103] Step 13:

[0104] The server generates point tally results for each school or organization for each specific period.

[0105] Step 14:

[0106] The aggregated results generated by the server are sent to the school or organization's registered email address.

[0107] Step 15:

[0108] The server provides detailed statistics in a web dashboard that interested parties can access and review the results.

[0109] Example 1

[0110] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."

[0111] Conventional point collection systems often rely on paper or manual input for point management, resulting in problems such as a lack of efficiency and accuracy. Furthermore, the method for users to collect points is cumbersome and time-consuming, which can reduce motivation to collect points. Additionally, there is a risk of fraudulent point acquisition and duplicate registration. A system that solves these problems and enables efficient and fair point collection and management is needed.

[0112] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.

[0113] In this invention, the server includes: means for a user to scan a code attached to a product; means for a terminal to analyze the scanned code and extract a unique identifier; means for the terminal to transmit the extracted identifier and user information to the server; means for the server to verify the received data and obtain points corresponding to the identifier from a database; means for the server to add the points to an account associated with the user; means for the server to generate aggregate data monthly or at specified intervals and report it to each organization; and means for a user to scan the digital code using a smart device to achieve efficient and fair point collection, thereby simplifying and speeding up the point collection process and enabling accurate and fair point management.

[0114] A "user" is a consumer or individual who scans a code on a product and utilizes the points collection system.

[0115] "Device" means a device used by a User, such as a smartphone, tablet, or computer, that scans, analyzes, and transmits the Code.

[0116] A "code" is a code that contains information to uniquely identify a product, such as a QR code or barcode attached to a product.

[0117] A "unique identifier" is data obtained by analyzing a code that uniquely represents a particular product or point.

[0118] "User information" is information for identifying a user, and includes, for example, a user ID and account information.

[0119] The "server" is a central computer system that verifies received data, acquires and adds points, and notifies and tallies points.

[0120] A "database" is a storage device connected to a server, and is a system for storing codes, identifiers, corresponding points, user information, etc.

[0121] "Points" are a numerical value that can be earned as a reward or benefit by scanning a product code.

[0122] An "account" is a user's individual data area on the server that records points and is associated with the user.

[0123] "Aggregated Data" means data that compiles points and other statistical information obtained over a certain period of time.

[0124] "Organization" means the entity or institution for which points are collected and reported, such as an educational institution or business.

[0125] A "smart device" is an internet-enabled mobile device, such as a smartphone or tablet, that a user uses to scan a code on a product.

[0126] A "digital code" is information expressed in digital form, such as a QR code or barcode, and is used to identify products and earn points.

[0127] The present invention relates to a system in which a user scans a code attached to a product, a terminal analyzes it to extract a unique identifier, the terminal then transmits the extracted identifier and user information to a server, the server verifies the received data, retrieves points corresponding to the identifier from a database, and adds the points to an account associated with the user. To implement this system, the following hardware and software are required:

[0128] Hardware Configuration

[0129] User device: A smartphone, tablet, or computer equipped with a camera and internet connectivity.

[0130] Server: A high-performance computer equipped with a CPU, memory, and network interface for receiving, validating, and processing data.

[0131] Database: A storage device connected to a server that stores identifiers, points, user information, etc.

[0132] Software Configuration

[0133] Barcode scanner application: An application installed on a device to scan QR codes and barcodes using the device's camera.

[0134] Google® ML Kit: A library for parsing image data and extracting unique identifiers from scanned codes.

[0135] HTTPS protocol: A communication protocol for securely transmitting data from a device to a server.

[0136] Backend framework: A framework for receiving, validating, and processing data on the server side, such as Python's Django or Node.js.

[0137] Database management system: A database for managing points and user information, such as MySQL (registered trademark) or PostgreSQL.

[0138] Firebase Cloud Messaging: A push notification service for notifying users.

[0139] Data aggregation tools: Tools for generating aggregated data and reporting, such as Apache Kafka or Tableau.

[0140] Specific examples of processing

[0141] 1. A user purchases stationery and scans the QR code on the packaging with their smartphone camera.

[0142] 2. The device uses Google ML Kit to analyze the scanned QR code and extract a unique identifier, such as "BM123456."

[0143] 3. The device sends the identifier "BM123456" and user ID "U78910" to the server using the HTTPS protocol.

[0144] 4. The server validates the incoming data using the Python Django framework to ensure the identifier is not already in use.

[0145] 5. The server retrieves 10 points from the MySQL database and adds the points to the user ID "U78910".

[0146] 6. The server uses Firebase Cloud Messaging to notify the user that "10 points have been added."

[0147] 7. At the end of the month, the server generates aggregated data using Apache Kafka or Tableau and reports it to, for example, school ID "S54321."

[0148] Example prompts for generative AI models

[0149] Below are some example prompts to input to a generative AI model:

[0150] A user scans a code attached to a product. Describe the process of a system that extracts a unique identifier from the code the user scanned (e.g., QR code, barcode), and sends that identifier and user information to a server. The server validates the received data, retrieves the points corresponding to the identifier from a database, adds them to the user's account, and notifies the user of the result. The system also performs monthly reporting and aggregation. Please also describe what hardware and software is used.

[0151] This allows users, terminals, and servers to cooperate to achieve efficient and accurate point collection and management.The present invention contributes to the digitization of point systems, particularly in educational institutions and public organizations.

[0152] The flow of the identification process in the first embodiment will be described with reference to FIG.

[0153] Step 1:

[0154] The user scans the code attached to the product.

[0155] Specific behavior: The user launches the camera app or barcode scanner app on their smartphone and scans the QR code or barcode of a product.

[0156] Input: QR code or barcode printed on product packaging.

[0157] Output: QR code or barcode image data.

[0158] Step 2:

[0159] The device parses the scanned code to extract a unique identifier.

[0160] Specific operation: The device uses an image recognition library such as Google ML Kit to analyze the image data of the QR code or barcode and extract a unique identifier such as "BM123456."

[0161] Input: QR code or barcode image data.

[0162] Output: A unique identifier (e.g. "BM123456").

[0163] Step 3:

[0164] The terminal transmits the extracted identifier and user information to the server.

[0165] Specific operation: The terminal sends the identifier "BM123456" and the user ID "U78910" to the server using the HTTPS protocol.

[0166] Input: A unique identifier and user information.

[0167] Output: The result of sending data to the server.

[0168] Step 4:

[0169] The server validates the received data.

[0170] What happens: The server uses the Python Django framework to validate the unique identifier and user information, checking in the database to see if the identifier is already in use.

[0171] Input: Submitted identifier and user information.

[0172] Output: The validity of the identifier.

[0173] Step 5:

[0174] The server retrieves the points corresponding to the identifier from the database and adds them to the user's account.

[0175] Specific operation: The server retrieves 10 points corresponding to the identifier "BM123456" from the MySQL database and adds the points to the account associated with the user ID "U78910".

[0176] Input: Identifier and User ID.

[0177] Output: Points addition result.

[0178] Step 6:

[0179] The server will notify the user after adding the points.

[0180] Specific behavior: The server uses Firebase Cloud Messaging to send a notification to the user saying "10 points added."

[0181] Input: Point addition result.

[0182] Output: Notification sending result.

[0183] Step 7:

[0184] The server generates aggregated data monthly or for a specified period and reports it to each organization.

[0185] Specific operation: The server uses Apache Kafka or Tableau to generate aggregated data for specific periods and report it to the organization (e.g., school ID "S54321").

[0186] Input: Point data within a period.

[0187] Output: Aggregated data and reports.

[0188] In this way, through the specific operations performed at each step, the user, terminal, and server work together to achieve efficient and accurate point collection and management.

[0189] (Application example 1)

[0190] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."

[0191] Modern electronic payment services require a method for users to efficiently acquire and manage points when purchasing products. However, current systems have problems with adding points and checking balances, resulting in a poor user experience. In addition, tallying points and reporting them to various organizations is cumbersome, requiring significant effort from all parties involved. To solve these issues, a more efficient and user-friendly points management system is needed.

[0192] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.

[0193] In this invention, the server includes means for a user to scan a code attached to a product, means for a terminal to analyze the scanned code and extract a unique identifier, means for the terminal to transmit the extracted identifier and user information to the server, means for the server to verify the received data and obtain points corresponding to the identifier from a database, means for the server to add the points to an account associated with the user and notify the user of the result, means for the user to check the remaining points, means for the user to use the points for everyday shopping, and means for the server to generate a summary result for each specific period and report it to each organization, thereby enabling efficient and user-friendly point management and summary.

[0194] "User" refers to an individual or customer who uses this system.

[0195] "Product" refers to the goods and services that consumers purchase.

[0196] "Code" refers to anything that contains identification information, such as a QR code or barcode, attached to a product.

[0197] "Terminal" refers to the electronic device a user uses to scan a code, such as a smartphone, tablet, or computer.

[0198] "Unique Identifier" refers to unique identifying information extracted from a scanned code.

[0199] "User information" refers to a user's unique ID and account information.

[0200] "Server" refers to the central computer system that receives data, verifies data, manages points, etc.

[0201] "Database" refers to a centrally managed storage device for storing identifiers, user information, point information, and the like.

[0202] "Points" refers to a numerical reward that a user can receive when purchasing a product.

[0203] "Balance" refers to the total number of points currently held in a User's account.

[0204] "Account" refers to the personal digital space required for a User to manage their Points.

[0205] "Aggregated Results" refers to a summary of points data accumulated over a specified period of time.

[0206] "Reporting" refers to the act of communicating the results of the survey to relevant parties and organizations.

[0207] "Daily shopping" refers to general consumption activities that users frequently engage in in their daily lives.

[0208] This invention provides a system that allows users to scan codes attached to products and efficiently acquire and manage points. The program for realizing this system can be explained as follows.

[0209] System Program

[0210] The system has three main components: the user, the device, and the server. The user uses a device such as a smartphone or tablet to scan a code attached to a product. The device analyzes it and extracts a unique identifier. It then sends this identifier and user information to the server. The server verifies this data and retrieves the points corresponding to the identifier from a database. The points are added to the user's account and notified to the user.

[0211] The hardware used is a smartphone or tablet as the terminal, and a high-performance computer as the server. The terminal is equipped with a camera to scan QR codes and barcodes, and the software uses the Python qrcode library and the requests library to process HTTP requests.

[0212] Processing flow

[0213] When a user scans a product's QR code, the device uses the device's camera. The device analyzes the image data captured by the camera using the qrcode library to extract a unique identifier. This identifier and the user's ID information are sent to the server using the requests library. The server validates the received data and checks whether the identifier is already in use. It then retrieves the points corresponding to the identifier from the database and adds them to the user's account. Finally, it notifies the user of the addition result and allows them to check their point balance.

[0214] Specific examples

[0215] Consider the following example: A user scans the QR code of a newly purchased beverage product with their smartphone camera. The device extracts an identifier from the QR code and sends this identifier and the user ID to the server. The server validates the received data and verifies that the identifier is not already in use. The server then retrieves the points corresponding to the identifier from the database and adds them to the user's account. The server then notifies the user that "5 points have been added. Current balance: 100 points." The user can check their point balance through the app and use them for everyday shopping as needed.

[0216] Prompt Sentence Examples

[0217] "Please create an application program that allows the user to scan the QR code, obtain an identifier, and send it to the server to add points. Please also include a function to notify the user whether the points were added successfully based on the response from the server."

[0218] In this way, the entire system for carrying out the present invention can be specifically implemented. The operation of the entire system is simple and user-friendly, making daily point management more efficient and improving operability.

[0219] The flow of the specific processing in the application example 1 will be described with reference to FIG.

[0220] Step 1:

[0221] The user scans the product's QR code.

[0222] Input: The user scans the QR code with their smartphone camera.

[0223] Output: QR code image data

[0224] How it works: The user points their device's camera at the QR code on the product and scans it using a dedicated scanning app. The camera captures the image data of the QR code.

[0225] Step 2:

[0226] The device analyzes the QR code image data and extracts a unique identifier.

[0227] Input: QR code image data

[0228] Output: A unique identifier (e.g. "BM123456")

[0229] How it works: The device uses the qrcode library to parse the QR code data. From the results of the parsing, it extracts the unique identifier embedded in the QR code. The identifier is generated by image processing and decoding.

[0230] Step 3:

[0231] The terminal transmits the extracted identifier and user information to the server.

[0232] Input: Unique identifier, user ID (e.g. "U78910")

[0233] Output: Notification of completion of data transmission to the server

[0234] Operation: The device sends the extracted unique identifier and user information (user ID) to the server using the requests library. The server notifies the user whether the transmission was successful.

[0235] Step 4:

[0236] The server verifies the received data and retrieves the points corresponding to the identifier from the database.

[0237] Input: Unique identifier, user ID

[0238] Output: Points corresponding to the identifier (e.g. 10 points)

[0239] Operation: The server validates the received data to ensure the identifier is not already in use. It then retrieves the points corresponding to the identifier from the database. It pulls the points data based on the database query.

[0240] Step 5:

[0241] The server adds the points to an account associated with the user.

[0242] Input: User ID, acquired points

[0243] Output: Notification of successful point addition

[0244] Operation: The server adds the earned points to the user's account. After the addition process is complete, it records the result in the database and confirms that the addition was successful.

[0245] Step 6:

[0246] The server notifies the user of the result of the addition.

[0247] Input: Notification of successful point addition, user information

[0248] Output: A notification message to the user (e.g. "10 points added. Current balance: 150 points")

[0249] Operation: The server generates a message informing the user of the result of the addition and sends it to the user's terminal. The user can confirm that the points have been added on their account page.

[0250] Furthermore, an emotion engine that estimates the user's emotion may be combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion.

[0251] The present invention relates to a system in which a user scans a code attached to a product, the terminal analyzes it to extract a unique identifier, the terminal then transmits the extracted identifier and user information to a server, the server verifies the received data, retrieves points corresponding to the identifier from a database, and adds the points to an account associated with the user. The present invention also includes a function to increase user motivation by combining an emotion engine that recognizes the user's emotions.

[0252] System configuration

[0253] User: A user of the System who scans the codes attached to products to collect points.

[0254] Device: A user's smartphone, tablet, or computer that scans, analyzes, transmits, and recognizes emotions.

[0255] Server: A central computer system that verifies received data, acquires and adds points, and sends notifications and aggregates data. It also stores and analyzes emotional data.

[0256] Database: A storage device connected to the server, which stores Bell Mark IDs, corresponding points, user information, emotional data, etc.

[0257] Emotion engine: A system that analyzes a user's facial expressions to recognize their emotions and provides appropriate feedback based on the results.

[0258] Program processing overview

[0259] 1. User Behavior

[0260] The user scans the QR code or barcode attached to the product with their smartphone camera.

[0261] The device analyzes the image data captured by the camera and extracts a unique identifier.

[0262] 2. Emotion recognition

[0263] The device captures the user's facial expressions with a camera and recognizes their emotions using an emotion engine.

[0264] The terminal analyzes the recognized emotion data and includes it in a data packet to be sent to the server together with the identifier.

[0265] 3. Data Transmission

[0266] The device transmits the extracted unique identifier, user ID, and emotion data to the server.

[0267] The terminal notifies the user that the transmission was successful.

[0268] 4. Data Receipt and Verification

[0269] The server verifies the received data packet of identifier, user ID and emotion data.

[0270] The server verifies that the identifier is not already in use and checks the validity of the data.

[0271] 5. Earning and accumulating points

[0272] The server retrieves the points corresponding to the identifier from the database.

[0273] The server retrieves the account information associated with the user ID from the database.

[0274] The server will add the points earned to the user's account.

[0275] The server records in the database whether the points were added successfully.

[0276] 6. User Notices

[0277] The server transmits a customized point addition notification to the user based on the emotion data.

[0278] Users can view their accumulated points and feedback on their account page.

[0279] 7. Data accumulation and analysis

[0280] The server accumulates the user's emotional data and analyzes it to increase motivation to collect points.

[0281] The server generates point tally results for each school or organization for each specific period.

[0282] 8. Reporting and Feedback

[0283] The server reports the generated aggregate data to each organization and provides detailed statistics on a web dashboard.

[0284] Specific examples

[0285] 1. Mr. Tanaka (user) notices that the newly purchased stationery has a Bell Mark on it and scans the QR code with his smartphone camera.

[0286] 2. The device reads the QR code "BM123456" and extracts the unique identifier.

[0287] 3. The device captures Tanaka's facial expression with its camera, and the emotion engine recognizes that she is smiling.

[0288] 4. The device sends the extracted identifier "BM123456", user ID "U78910", and emotion data to the server.

[0289] 5. The server validates the received data and verifies that the identifier "BM123456" is not already in use.

[0290] 6. The server retrieves the 10 points corresponding to the identifier from the database and adds them to Tanaka's school (school ID "S54321")

[0291] 7. The server takes into account Tanaka's emotional data and sends a customized notification saying, "Smiling Tanaka, 10 points added to your school!"

[0292] 8. Tanaka checks her account page to see that points have been added and to see her feedback.

[0293] 9. At the end of the month, the server will report to school ID "S54321" the total points collected that month and how they were used.

[0294] In this way, users, terminals, and servers can cooperate to realize the digitalization of the Bell Mark campaign and provide a system that further increases user motivation through feedback based on emotion recognition.

[0295] The processing flow will be explained below.

[0296] Step 1:

[0297] The user scans the QR code or barcode on the product with their smartphone camera.

[0298] Step 2:

[0299] The device parses the data from the scanned code and extracts the unique Bellmark ID.

[0300] Step 3:

[0301] The device captures the user's facial expressions with a camera and recognizes their emotions using an emotion engine.

[0302] Step 4:

[0303] The terminal analyzes the recognized emotion data and generates a data packet including a Bellmark ID, a user ID, and the emotion data.

[0304] Step 5:

[0305] The terminal transmits the generated data packet to the server.

[0306] Step 6:

[0307] The server receives the data packets and verifies the correctness of the format.

[0308] Step 7:

[0309] The server checks for duplicate Bellmark IDs and verifies that they are not already in use.

[0310] Step 8:

[0311] The server retrieves the number of points corresponding to the Bellmark ID from the database.

[0312] Step 9:

[0313] The server retrieves the account information associated with the user ID from the database.

[0314] Step 10:

[0315] The server adds the acquired points to the user's account.

[0316] Step 11:

[0317] The server records the successful addition of points in the database and updates the history.

[0318] Step 12:

[0319] The server generates a customized point addition notification for the user based on the emotion data.

[0320] Step 13:

[0321] Sends server-generated notifications to users.

[0322] Step 14:

[0323] The user can check the points and notifications added on their account page.

[0324] Step 15:

[0325] The server accumulates the user's emotional data and analyzes it to increase motivation to collect points.

[0326] Step 16:

[0327] The server generates point tally results for each school or organization for each specific period.

[0328] Step 17:

[0329] The server will send the generated aggregated results to the registered email address of each organization.

[0330] Step 18:

[0331] The server provides detailed statistics in a web dashboard that interested parties can access and review the results.

[0332] Specific examples

[0333] 1. A user notices that a newly purchased stationery item has a Bell Mark on it and scans the QR code with their smartphone camera.

[0334] 2. The device reads the QR code "BM123456" and extracts the unique identifier.

[0335] 3. The device captures Tanaka (the user)'s facial expression with a camera, and the emotion engine recognizes that he is smiling.

[0336] 4. The device generates a data packet containing the extracted identifier "BM123456", user ID "U78910", and emotion data.

[0337] 5. The terminal sends the generated data packet to the server.

[0338] 6. The server verifies that the received data packet is in the correct format.

[0339] 7. The server confirms that the Bellmark ID "BM123456" is not already in use.

[0340] 8. The server retrieves the 10 points corresponding to the Bellmark ID "BM123456" from the database.

[0341] 9. The server retrieves the account information for the school ID "S54321" associated with the user ID "U78910" from the database.

[0342] 10. The server will add the 10 points acquired to the account of school ID "S54321".

[0343] 11. The server records the successful addition of points in the database and updates the history.

[0344] 12. The server generates special feedback based on Tanaka's emotional data in response to her smile.

[0345] 13. The server creates a notification saying "Smiling Tanaka, 10 points added to your school!" and sends it to Tanaka.

[0346] 14. Tanaka (user) checks the added points and notification details on his / her account page.

[0347] 15. The server accumulates Tanaka's emotional data and analyzes its use and motivation.

[0348] 16. At the end of the month, the server generates the points summary results for school ID "S54321".

[0349] 17. The server sends the generated summary results to the school's email address.

[0350] 18. The server will provide detailed statistics in a web dashboard that interested parties can access and review the results.

[0351] Example 2

[0352] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."

[0353] In conventional point collection systems, user input operations were cumbersome and users could only respond uniformly without considering their emotions or motivation. This led to a decline in users' motivation to use the system. Furthermore, there were problems with the system's insufficient point tallying and provision of appropriate feedback to users, making it difficult to implement effective point collection campaigns.

[0354] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for verifying received data and retrieving points corresponding to the identifier from a database, means for adding points to an account associated with the user, and means for accumulating and analyzing emotion data. This simplifies the user's input operation and enables the provision of emotion-based feedback. Furthermore, the aggregation and reporting of points is automated, enabling an effective point collection campaign.

[0355] "User" means a user of the System who scans the code attached to a product to collect points.

[0356] "Device" refers to the smartphone, tablet, or computer used by a User that scans, analyzes, transmits codes, and recognizes emotions.

[0357] The "server" is a central computer system that verifies received data, acquires and adds points, and sends notifications and tallies, and is also a device that stores and analyzes emotional data.

[0358] "Code" refers to a QR code, barcode, or other code attached to a product that can be scanned by a user.

[0359] "Unique Identifier" refers to a unique and individually identifiable identifier that is extracted by a device by scanning a code.

[0360] An "emotion engine" refers to software or hardware that has the ability to analyze a user's facial expressions, recognize their emotions, and provide appropriate feedback based on the results.

[0361] "Database" refers to a system in which identifiers, points, user information, emotion data, etc. are stored in a storage device connected to a server.

[0362] "Points" refers to rewards or values ​​recorded in a database corresponding to a particular identifier and credited to a user's account.

[0363] "Account" refers to a digital record, including profile information and points information, associated with a User.

[0364] A "data packet" refers to a collection of data that a terminal sends to a server in the form of an identifier, a user ID, and emotion data.

[0365] "Notification" refers to information sent from the server to the user, including messages such as points being added or feedback.

[0366] "Aggregated results" refers to data generated by the server for each specific period that compiles the total points and related information for each organization or group.

[0367] This invention is a system in which a user scans a code attached to a product, a terminal analyzes it to extract a unique identifier, the terminal then transmits the extracted identifier and user information to a server, the server verifies the received data, retrieves points corresponding to the identifier from a database, and adds the points to an account associated with the user.

[0368] This system configuration is specifically implemented as follows.

[0369] System configuration

[0370] User: A user of this system who collects points by scanning codes (QR codes, barcodes, etc.) attached to products.

[0371] Device: A smartphone, tablet, or computer used by a user that scans, analyzes, and transmits codes and performs emotion recognition. The device should preferably be equipped with a camera module and an image processing library (e.g., OpenCV).

[0372] Server: This is the central computer system that verifies the received data, acquires and adds points, notifies users, and aggregates them. It also stores and analyzes emotional data.

[0373] Database: A storage device connected to the server that stores identifiers, points, user information, emotion data, etc. For the database, MySQL or PostgreSQL is used, for example.

[0374] Emotion engine: A system that analyzes the user's facial expressions to recognize their emotions and provides appropriate feedback based on the results. Microsoft® Azure® Face API and other tools are used for emotion recognition.

[0375] Operational Overview

[0376] A user scans a QR code or barcode attached to a product with a smartphone camera. The device analyzes the image data acquired by the camera and uses an image processing library (e.g., OpenCV) to extract a unique identifier. The extracted identifier is temporarily stored in the device's memory.

[0377] Next, the device captures the user's facial expression with a camera. It analyzes the captured facial image data using an emotion engine (e.g., Microsoft Azure Face API) to recognize the user's emotion. The recognized emotion data is included in a data packet sent to the server along with an identifier. This data packet is sent to the server using the HTTPS protocol.

[0378] The server verifies the received data packet, checks the database to see if the identifier has already been used, and checks the validity of the data. It retrieves the points corresponding to the identifier from the database and adds them to the account associated with the user ID. If the points are successfully added, it records the information in the database.

[0379] Notifications and Analytics

[0380] The server generates a customized point-added notification for the user based on the emotion data. The message is created using a template engine (e.g., Jinja2) and sent to the user's device using a notification service such as Firebase Cloud Messaging (FCM). This notification is displayed on the user's device as a message such as "Your points have been added!"

[0381] The server also accumulates user emotional data and analyzes it to increase motivation to collect points. Point tally results are generated for each school or organization for a specific period and reported to each organization using a report generation tool such as JasperReports.

[0382] Specific examples

[0383] Specific operation examples of the system

[0384] 1. Mr. Tanaka (user) notices that the newly purchased product has a Bell Mark on it and scans the QR code with his smartphone camera.

[0385] 2. The device uses OpenCV to read the QR code "BM123456" and extract the unique identifier.

[0386] 3. Tanaka's facial expression is captured by the camera and the Microsoft Azure Face API is used to recognize that she is smiling.

[0387] 4. The extracted identifier "BM123456", user ID "U78910", and emotion data are sent to the server via the HTTPS protocol.

[0388] 5. The server validates the data received through Nginx and checks the database (MySQL) to ensure that the identifier "BM123456" is not already in use.

[0389] 6. Retrieve 10 points corresponding to the identifier from the database and add them to Tanaka's account.

[0390] 7. Use a template engine (Jinja2) to generate a customized notification that says, "Smiling Tanaka, you've earned 10 points!" and send it via Firebase Cloud Messaging.

[0391] 8. Tanaka checks the points added and the feedback on her smartphone screen.

[0392] 9. At the end of the month, use JasperReports to create a report for school ID "S54321" that shows the total points collected that month and how they were used.

[0393] Prompt Sentence Examples

[0394] "Please explain the process of the program, which allows a user to scan the QR code attached to a newly purchased stationery item with their smartphone, communicate with the server, and add points to the user's account. Please also clearly state the specific steps and processes, as well as the names of any hardware or software required for the process."

[0395] The flow of the identification process in the second embodiment will be described with reference to FIG.

[0396] Step 1:

[0397] The user scans the code attached to the product. The input is a QR code or barcode provided by the user to the smartphone camera. The output is image data captured by the camera and stored in the device's memory. Specifically, the camera app is launched and the QR code or barcode is captured on the screen. This image data is used in the next analysis process.

[0398] Step 2:

[0399] The device analyzes the scanned code and extracts a unique identifier. The input is image data captured by the camera. The output is a unique identifier extracted using an image processing library (e.g., OpenCV). Specifically, the QR code or barcode is analyzed to obtain the text information of the identifier. This identifier is used in the next data transmission process.

[0400] Step 3:

[0401] The device captures the user's facial expression and recognizes the emotion using an emotion engine. The input is an image of the user's facial expression captured by the camera. The output is emotion data analyzed by the emotion recognition engine (for example, Microsoft Azure Face API). Specifically, the camera captures an image of the user's face in real time and sends the data to the emotion engine for analysis. The emotion data is then sent to the server together with an identifier.

[0402] Step 4:

[0403] The device sends the extracted identifier, user ID, and emotion data to the server. The input is the above-mentioned identifier, user ID, and emotion data. The output is a data packet sent via the HTTPS protocol. Specifically, the device assembles this data into a single packet and sends it to the server via the Internet. If the transmission is successful, a notification is displayed to the user.

[0404] Step 5:

[0405] The server verifies the received data packet. The input is the data packet containing the identifier, user ID, and emotion data received by the server. The output is the result of verifying the validity of the data. Specifically, the server receives the data packet, queries a database (e.g., MySQL) to confirm that the identifier is not already in use, and checks the integrity of the data. If this verification is successful, it proceeds to the next step.

[0406] Step 6:

[0407] The server retrieves the points corresponding to the identifier from the database and adds them to the account associated with the user ID. The input is the identifier and the user ID. The output is the points added to the user account. Specifically, the server runs a query to the database to retrieve the points corresponding to the identifier, and then runs an update query to add those points to the user's account. The result of adding the points is recorded.

[0408] Step 7:

[0409] The server generates and sends a customized point addition notification to the user based on the emotion data. The input is the emotion data and the added point information. The output is a notification message sent to the user's device. Specifically, the server generates the notification message using a template engine (e.g., Jinja2) and sends the notification to the user's device via Firebase Cloud Messaging (FCM).

[0410] Step 8:

[0411] The server accumulates users' emotional data and performs analysis to increase motivation to collect points. The input is the accumulated emotional data and point data. The output is a report or aggregated data as the analysis results. Specifically, the server accumulates the emotional data in a time-series database (e.g., TimescaleDB) and analyzes the data using an analysis tool or machine learning library (e.g., scikit-learn). It generates aggregated results for specific periods and creates reports using tools such as JasperReports to report to each organization.

[0412] (Application example 2)

[0413] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."

[0414] In conventional point acquisition systems, users are only provided with uniform notifications and no individual feedback, making it difficult to motivate them. Furthermore, because the system does not take into account the user's emotional state, earning points becomes a mere chore, making it impossible to improve the user experience.

[0415] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.

[0416] In this invention, the server includes means for verifying the received data and retrieving points corresponding to the identifier from a database, means for adding the points to an account associated with the user, means for the terminal to analyze the user's facial expression and recognize emotions, means for transmitting a data packet including the emotion recognition data to the server, means for the server to generate a customized notification based on the emotion recognition data, and means for the server to transmit the notification to the user, thereby providing individualized feedback and increasing the user's motivation.

[0417] "User" means a person who uses the system to scan product codes and earn points.

[0418] "Code attached to product" refers to an identifier printed or affixed to a product, such as a QR code or barcode.

[0419] "Terminal" means a device that scans codes and processes and transmits data, such as a smartphone, tablet, or computer.

[0420] A "unique identifier" is a unique code used to individually identify a product or service.

[0421] "User information" refers to ID and profile information required for user identification and point management.

[0422] The "server" is a central computer system that validates incoming data, acquires and accumulates points, notifies users, and generates feedback.

[0423] A "database" is a storage device connected to the server that stores identifiers, points, user information, emotion data, and the like.

[0424] "Means for recognizing emotions" refers to the function of the terminal to analyze the user's facial expressions and identify emotions.

[0425] "Emotion recognition data" is information about emotions analyzed from the user's facial expressions.

[0426] "Customized notifications" are notifications that are individually created based on the user's emotions and point status.

[0427] A "data packet" is a unit of data that includes an identifier, user information, and emotion recognition data.

[0428] "Points" are points that users earn by scanning products and are added to their account.

[0429] The system allows a user to scan a code attached to a product, analyze it with a terminal, extract a unique identifier, and then transmit the extracted identifier and user information to a server. The server then verifies the received data, retrieves points corresponding to the identifier from a database, and adds the points to an account associated with the user. It also includes a function to increase user motivation by combining it with an emotion engine that recognizes the user's emotions.

[0430] Specifically, the system is implemented as follows.

[0431] 1. Hardware and software used

[0432] Device: Use a smartphone, tablet, or computer, which must have a camera.

[0433] Server: Receives and analyzes data, manages points, and generates feedback.

[0434] Camera: Used to capture the user's facial expressions and scan QR codes and barcodes.

[0435] software:

[0436] OpenCV: For QR code reading and image processing.

[0437] TENSORFLOW(R): A deep learning model for emotion recognition.

[0438] Requests: For sending data to the server.

[0439] 2. Overall system processing flow

[0440] Users scan the QR code or barcode attached to the product with their smartphone camera.

[0441] The device uses OpenCV to read the QR code and extract the unique identifier.

[0442] The device captures the user's facial expressions with a camera and inputs them into an emotion recognition model using TensorFlow to obtain emotional data.

[0443] The device sends the extracted identifier, user ID, and emotion data as a data packet to the server using Requests.

[0444] The server validates the received data, verifies that the identifier has not been used, retrieves the points from the database, and credits the user's account.

[0445] Based on the emotion recognition data, the server generates a customized notification for the user and sends it to the device, allowing the user to check their point status and feedback on their account page.

[0446] 3. Specific Examples

[0447] For example, a user scans a QR code attached to a newly purchased beverage with their smartphone camera. The QR code "D123456" is read and a unique identifier is extracted. The device then uses the camera to capture the user's face and recognizes that they are smiling using an emotion engine. The device then sends the extracted identifier "D123456," user ID "U1234," and emotion data of "smile" to the server. The server then verifies the received data and confirms that the identifier "D123456" is not already in use. 10 points are retrieved from the database and added to the user's account. A customized notification is sent to the user saying, "Smile and receive special points!", thereby increasing the user's motivation.

[0448] Prompt Sentence Examples

[0449] "Develop an app that allows users to scan a QR code attached to a product with their smartphone and recognizes emotions from the facial expression captured by the camera at the time. The app will send the extracted unique identifier, user ID, and emotion data to a server, add points, and send feedback."

[0450] In this way, the present invention realizes cooperation between the user, the terminal, and the server to provide a points acquisition system and further increase the user's motivation through feedback based on emotion recognition.

[0451] The flow of the specific processing in the application example 2 will be described with reference to FIG.

[0452] Step 1:

[0453] The user scans the QR code attached to the product with the smartphone camera. The input is the QR code attached to the product, and the code is photographed using a camera app. The output is an image of the photographed QR code.

[0454] Step 2:

[0455] The device parses the scanned QR code and extracts a unique identifier. The input is a photographed QR code image, and OpenCV is used to parse and decode the code. The output is a unique identifier.

[0456] Step 3:

[0457] The device captures the user's facial expression with a camera and recognizes the emotion. The input for this step is the user's face image, which is captured with a camera. The facial expression is analyzed using TensorFlow's emotion recognition model, and the recognized emotion data is obtained as the output.

[0458] Step 4:

[0459] The device sends the extracted identifier, user ID, and emotion data as a data packet to the server. The input of this step is the unique identifier, user ID, and emotion data, which are sent to the server using the Requests library. The output is the transmission result to the server.

[0460] Step 5:

[0461] The server validates the data received to ensure that the identifier is not already in use. The input is the received data packet, and the database is consulted to check the identifier's usage. The output is the result of the identifier validation.

[0462] Step 6:

[0463] The server retrieves points corresponding to the identifier from the database and adds them to the user's account. The input is the identifier and user ID, and the server retrieves the corresponding points from the database and reflects them in the user's account. The output is the added points information.

[0464] Step 7:

[0465] The server generates a customized notification based on the emotion recognition data and sends it to the user. The input is the emotion recognition data and point information, and the server generates a customized notification message based on the input. The output is the notification message.

[0466] Step 8:

[0467] The server generates notifications and sends them to the device, where the user can view them on their account page. The input is the notification message sent from the server to the device. The output is the notification message displayed to the user.

[0468] In this way, the entire system operates by processing input data at each step and generating output data required for the next step.

[0469] The specific processing unit 290 transmits the result of the specific processing to the smart device 14. In the smart device 14, the control unit 46A causes the output device 40 to output the result of the specific processing. The microphone 38B acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.

[0470] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (registered trademark) (Internet search engine).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[0471] In the above embodiment, an example in which the specific process is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific process may be performed by the smart device 14.

[0472] [Second embodiment]

[0473] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.

[0474] 3, the data processing system 210 includes the data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.

[0475] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[0476] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, and the camera 42 are also connected to the bus 52.

[0477] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.

[0478] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).

[0479] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.

[0480] Fig. 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Fig. 4, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.

[0481] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[0482] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[0483] In the smart glasses 214, the reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.

[0484] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal."

[0485] The present invention relates to a system in which a user scans a code attached to a product, a terminal analyzes it to extract a unique identifier, the terminal then transmits the extracted identifier and user information to a server, the server verifies the received data, retrieves points corresponding to the identifier from a database, and adds the points to an account associated with the user, thereby enabling efficient and fair point collection.

[0486] System configuration

[0487] User: A user of the System who scans the codes attached to products to collect points.

[0488] Device: The user's smartphone, tablet, or computer that scans, analyzes, and transmits the code.

[0489] Server: A central computer system that validates received data, acquires and accumulates points, and handles notifications and tallying.

[0490] Database: A storage device connected to the server, which stores Bellmark IDs, corresponding points, user information, etc.

[0491] Program processing overview

[0492] 1. User Behavior

[0493] The user scans the QR code or barcode attached to the product with their smartphone camera.

[0494] The device analyzes the image data captured by the camera and extracts a unique identifier.

[0495] 2. Data Transmission

[0496] The terminal transmits the extracted unique identifier and the user's ID information to the server.

[0497] The terminal notifies the user that the transmission was successful.

[0498] 3. Data Receipt and Verification

[0499] The server verifies the received identifier and user ID data.

[0500] The server verifies that the identifier is not already in use and checks the validity of the identification data.

[0501] 4. Earning and adding points

[0502] The server retrieves the points corresponding to the identifier from the database.

[0503] The server adds points to an account associated with the user.

[0504] The server records in the database whether the points were added successfully.

[0505] 5. User Notices

[0506] The server notifies the user of the result of the addition.

[0507] Users can check the points they have earned on their account page.

[0508] 6. Monthly Reports and Aggregation

[0509] The server generates aggregated data monthly or for a specified period.

[0510] The server reports the generated aggregate data to each organization and provides detailed statistics on a web dashboard.

[0511] Specific examples

[0512] 1. Mr. Tanaka (user) notices that the newly purchased stationery has a Bell Mark on it and scans the QR code with his smartphone camera.

[0513] 2. The device reads the QR code "BM123456" and extracts the unique identifier.

[0514] 3. The device sends the extracted identifier "BM123456" and user ID "U78910" to the server.

[0515] 4. The server validates the received data and verifies that the identifier "BM123456" is not already in use.

[0516] 5. The server retrieves the 10 points corresponding to the identifier from the database and adds them to Tanaka's school (school ID "S54321")

[0517] 6. The server notifies Tanaka of the result of the addition, and Tanaka confirms that the points have been added on his account page.

[0518] 7. At the end of the month, the server will report to school ID "S54321" the total points collected that month and how they were used.

[0519] In this way, users, terminals, and servers can cooperate to realize the digitalization of the Bell Mark campaign and provide a system that enables more efficient point collection and management.

[0520] The processing flow will be explained below.

[0521] Step 1:

[0522] The user scans the QR code or barcode on the product with their smartphone camera.

[0523] Step 2:

[0524] The device parses the data from the scanned code and extracts the unique Bellmark ID.

[0525] Step 3:

[0526] The terminal generates a data packet including the extracted Bellmark ID and user ID.

[0527] Step 4:

[0528] The terminal transmits the generated data packet to the server.

[0529] Step 5:

[0530] The server receives the data packets and verifies the correctness of the format.

[0531] Step 6:

[0532] The server checks for duplicate Bellmark IDs and verifies that they are not already in use.

[0533] Step 7:

[0534] The server retrieves the number of points corresponding to the Bellmark ID from the database.

[0535] Step 8:

[0536] The server retrieves the account information associated with the user ID from the database.

[0537] Step 9:

[0538] The server adds the acquired points to the user's account.

[0539] Step 10:

[0540] The server records the successful addition of points in the database and updates the history.

[0541] Step 11:

[0542] The server notifies the user that the points have been added successfully.

[0543] Step 12:

[0544] The user can check the points added on their account page.

[0545] Step 13:

[0546] The server generates point tally results for each school or organization for each specific period.

[0547] Step 14:

[0548] The aggregated results generated by the server are sent to the school or organization's registered email address.

[0549] Step 15:

[0550] The server provides detailed statistics in a web dashboard that interested parties can access and review the results.

[0551] Example 1

[0552] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."

[0553] Conventional point collection systems often rely on paper or manual input for point management, resulting in problems such as a lack of efficiency and accuracy. Furthermore, the method for users to collect points is cumbersome and time-consuming, which can reduce motivation to collect points. Additionally, there is a risk of fraudulent point acquisition and duplicate registration. A system that solves these problems and enables efficient and fair point collection and management is needed.

[0554] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.

[0555] In this invention, the server includes: means for a user to scan a code attached to a product; means for a terminal to analyze the scanned code and extract a unique identifier; means for the terminal to transmit the extracted identifier and user information to the server; means for the server to verify the received data and obtain points corresponding to the identifier from a database; means for the server to add the points to an account associated with the user; means for the server to generate aggregate data monthly or at specified intervals and report it to each organization; and means for a user to scan the digital code using a smart device to achieve efficient and fair point collection, thereby simplifying and speeding up the point collection process and enabling accurate and fair point management.

[0556] A "user" is a consumer or individual who scans a code on a product and utilizes the points collection system.

[0557] "Device" means a device used by a User, such as a smartphone, tablet, or computer, that scans, analyzes, and transmits the Code.

[0558] A "code" is a code that contains information to uniquely identify a product, such as a QR code or barcode attached to a product.

[0559] A "unique identifier" is data obtained by analyzing a code that uniquely represents a particular product or point.

[0560] "User information" is information for identifying a user, and includes, for example, a user ID and account information.

[0561] The "server" is a central computer system that verifies received data, acquires and adds points, and notifies and tallies points.

[0562] A "database" is a storage device connected to a server, and is a system for storing codes, identifiers, corresponding points, user information, etc.

[0563] "Points" are a numerical value that can be earned as a reward or benefit by scanning a product code.

[0564] An "account" is a user's individual data area on the server that records points and is associated with the user.

[0565] "Aggregated Data" means data that compiles points and other statistical information obtained over a certain period of time.

[0566] "Organization" means the entity or institution for which points are collected and reported, such as an educational institution or business.

[0567] A "smart device" is an internet-enabled mobile device, such as a smartphone or tablet, that a user uses to scan a code on a product.

[0568] A "digital code" is information expressed in digital form, such as a QR code or barcode, and is used to identify products and earn points.

[0569] The present invention relates to a system in which a user scans a code attached to a product, a terminal analyzes it to extract a unique identifier, the terminal then transmits the extracted identifier and user information to a server, the server verifies the received data, retrieves points corresponding to the identifier from a database, and adds the points to an account associated with the user. To implement this system, the following hardware and software are required:

[0570] Hardware Configuration

[0571] User device: A smartphone, tablet, or computer equipped with a camera and internet connectivity.

[0572] Server: A high-performance computer equipped with a CPU, memory, and network interface for receiving, validating, and processing data.

[0573] Database: A storage device connected to a server that stores identifiers, points, user information, etc.

[0574] Software Configuration

[0575] Barcode scanner application: An application installed on a device to scan QR codes and barcodes using the device's camera.

[0576] Google ML Kit: A library for parsing image data and extracting unique identifiers from scanned code.

[0577] HTTPS protocol: A communication protocol for securely transmitting data from a device to a server.

[0578] Backend framework: A framework for receiving, validating, and processing data on the server side, such as Python's Django or Node.js.

[0579] Database management system: A database for managing points and user information, such as MySQL or PostgreSQL.

[0580] Firebase Cloud Messaging: A push notification service for notifying users.

[0581] Data aggregation tools: Tools for generating aggregated data and reporting, such as Apache Kafka or Tableau.

[0582] Specific examples of processing

[0583] 1. A user purchases stationery and scans the QR code on the packaging with their smartphone camera.

[0584] 2. The device uses Google ML Kit to analyze the scanned QR code and extract a unique identifier, such as "BM123456."

[0585] 3. The device sends the identifier "BM123456" and user ID "U78910" to the server using the HTTPS protocol.

[0586] 4. The server validates the incoming data using the Python Django framework to ensure the identifier is not already in use.

[0587] 5. The server retrieves 10 points from the MySQL database and adds the points to the user ID "U78910".

[0588] 6. The server uses Firebase Cloud Messaging to notify the user that "10 points have been added."

[0589] 7. At the end of the month, the server generates aggregated data using Apache Kafka or Tableau and reports it to, for example, school ID "S54321."

[0590] Example prompts for generative AI models

[0591] Below are some example prompts to input to a generative AI model:

[0592] A user scans a code attached to a product. Describe the process of a system that extracts a unique identifier from the code the user scanned (e.g., QR code, barcode), and sends that identifier and user information to a server. The server validates the received data, retrieves the points corresponding to the identifier from a database, adds them to the user's account, and notifies the user of the result. The system also performs monthly reporting and aggregation. Please also describe what hardware and software is used.

[0593] This allows users, terminals, and servers to cooperate to achieve efficient and accurate point collection and management.The present invention contributes to the digitization of point systems, particularly in educational institutions and public organizations.

[0594] The flow of the identification process in the first embodiment will be described with reference to FIG.

[0595] Step 1:

[0596] The user scans the code attached to the product.

[0597] Specific behavior: The user launches the camera app or barcode scanner app on their smartphone and scans the QR code or barcode of a product.

[0598] Input: QR code or barcode printed on product packaging.

[0599] Output: QR code or barcode image data.

[0600] Step 2:

[0601] The device parses the scanned code to extract a unique identifier.

[0602] Specific operation: The device uses an image recognition library such as Google ML Kit to analyze the image data of the QR code or barcode and extract a unique identifier such as "BM123456."

[0603] Input: QR code or barcode image data.

[0604] Output: A unique identifier (e.g. "BM123456").

[0605] Step 3:

[0606] The terminal transmits the extracted identifier and user information to the server.

[0607] Specific operation: The terminal sends the identifier "BM123456" and the user ID "U78910" to the server using the HTTPS protocol.

[0608] Input: A unique identifier and user information.

[0609] Output: The result of sending data to the server.

[0610] Step 4:

[0611] The server validates the received data.

[0612] What happens: The server uses the Python Django framework to validate the unique identifier and user information, checking in the database to see if the identifier is already in use.

[0613] Input: Submitted identifier and user information.

[0614] Output: The validity of the identifier.

[0615] Step 5:

[0616] The server retrieves the points corresponding to the identifier from the database and adds them to the user's account.

[0617] Specific operation: The server retrieves 10 points corresponding to the identifier "BM123456" from the MySQL database and adds the points to the account associated with the user ID "U78910".

[0618] Input: Identifier and User ID.

[0619] Output: Points addition result.

[0620] Step 6:

[0621] The server will notify the user after adding the points.

[0622] Specific behavior: The server uses Firebase Cloud Messaging to send a notification to the user saying "10 points added."

[0623] Input: Point addition result.

[0624] Output: Notification sending result.

[0625] Step 7:

[0626] The server generates aggregated data monthly or for a specified period and reports it to each organization.

[0627] Specific operation: The server uses Apache Kafka or Tableau to generate aggregated data for specific periods and report it to the organization (e.g., school ID "S54321").

[0628] Input: Point data within a period.

[0629] Output: Aggregated data and reports.

[0630] In this way, through the specific operations performed at each step, the user, terminal, and server work together to achieve efficient and accurate point collection and management.

[0631] (Application example 1)

[0632] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."

[0633] Modern electronic payment services require a method for users to efficiently acquire and manage points when purchasing products. However, current systems have problems with adding points and checking balances, resulting in a poor user experience. In addition, tallying points and reporting them to various organizations is cumbersome, requiring significant effort from all parties involved. To solve these issues, a more efficient and user-friendly points management system is needed.

[0634] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.

[0635] In this invention, the server includes means for a user to scan a code attached to a product, means for a terminal to analyze the scanned code and extract a unique identifier, means for the terminal to transmit the extracted identifier and user information to the server, means for the server to verify the received data and obtain points corresponding to the identifier from a database, means for the server to add the points to an account associated with the user and notify the user of the result, means for the user to check the remaining points, means for the user to use the points for everyday shopping, and means for the server to generate a summary result for each specific period and report it to each organization, thereby enabling efficient and user-friendly point management and summary.

[0636] "User" refers to an individual or customer who uses this system.

[0637] "Product" refers to the goods and services that consumers purchase.

[0638] "Code" refers to anything that contains identification information, such as a QR code or barcode, attached to a product.

[0639] "Terminal" refers to the electronic device a user uses to scan a code, such as a smartphone, tablet, or computer.

[0640] "Unique Identifier" refers to unique identifying information extracted from a scanned code.

[0641] "User information" refers to a user's unique ID and account information.

[0642] "Server" refers to the central computer system that receives data, verifies data, manages points, etc.

[0643] "Database" refers to a centrally managed storage device for storing identifiers, user information, point information, and the like.

[0644] "Points" refers to a numerical reward that a user can receive when purchasing a product.

[0645] "Balance" refers to the total number of points currently held in a User's account.

[0646] "Account" refers to the personal digital space required for a User to manage their Points.

[0647] "Aggregated Results" refers to a summary of points data accumulated over a specified period of time.

[0648] "Reporting" refers to the act of communicating the results of the survey to relevant parties and organizations.

[0649] "Daily shopping" refers to general consumption activities that users frequently engage in in their daily lives.

[0650] This invention provides a system that allows users to scan codes attached to products and efficiently acquire and manage points. The program for realizing this system can be explained as follows.

[0651] System Program

[0652] The system has three main components: the user, the device, and the server. The user uses a device such as a smartphone or tablet to scan a code attached to a product. The device analyzes it and extracts a unique identifier. It then sends this identifier and user information to the server. The server verifies this data and retrieves the points corresponding to the identifier from a database. The points are added to the user's account and notified to the user.

[0653] The hardware used is a smartphone or tablet as the terminal, and a high-performance computer as the server. The terminal is equipped with a camera to scan QR codes and barcodes, and the software uses the Python qrcode library and the requests library to process HTTP requests.

[0654] Processing flow

[0655] When a user scans a product's QR code, the device uses the device's camera. The device analyzes the image data captured by the camera using the qrcode library to extract a unique identifier. This identifier and the user's ID information are sent to the server using the requests library. The server validates the received data and checks whether the identifier is already in use. It then retrieves the points corresponding to the identifier from the database and adds them to the user's account. Finally, it notifies the user of the addition result and allows them to check their point balance.

[0656] Specific examples

[0657] Consider the following example: A user scans the QR code of a newly purchased beverage product with their smartphone camera. The device extracts an identifier from the QR code and sends this identifier and the user ID to the server. The server validates the received data and verifies that the identifier is not already in use. The server then retrieves the points corresponding to the identifier from the database and adds them to the user's account. The server then notifies the user that "5 points have been added. Current balance: 100 points." The user can check their point balance through the app and use them for everyday shopping as needed.

[0658] Prompt Sentence Examples

[0659] "Please create an application program that allows the user to scan the QR code, obtain an identifier, and send it to the server to add points. Please also include a function to notify the user whether the points were added successfully based on the response from the server."

[0660] In this way, the entire system for carrying out the present invention can be specifically implemented. The operation of the entire system is simple and user-friendly, making daily point management more efficient and improving operability.

[0661] The flow of the specific processing in the application example 1 will be described with reference to FIG.

[0662] Step 1:

[0663] The user scans the product's QR code.

[0664] Input: The user scans the QR code with their smartphone camera.

[0665] Output: QR code image data

[0666] How it works: The user points their device's camera at the QR code on the product and scans it using a dedicated scanning app. The camera captures the image data of the QR code.

[0667] Step 2:

[0668] The device analyzes the QR code image data and extracts a unique identifier.

[0669] Input: QR code image data

[0670] Output: A unique identifier (e.g. "BM123456")

[0671] How it works: The device uses the qrcode library to parse the QR code data. From the results of the parsing, it extracts the unique identifier embedded in the QR code. The identifier is generated by image processing and decoding.

[0672] Step 3:

[0673] The terminal transmits the extracted identifier and user information to the server.

[0674] Input: Unique identifier, user ID (e.g. "U78910")

[0675] Output: Notification of completion of data transmission to the server

[0676] Operation: The device sends the extracted unique identifier and user information (user ID) to the server using the requests library. The server notifies the user whether the transmission was successful.

[0677] Step 4:

[0678] The server verifies the received data and retrieves the points corresponding to the identifier from the database.

[0679] Input: Unique identifier, user ID

[0680] Output: Points corresponding to the identifier (e.g. 10 points)

[0681] Operation: The server validates the received data to ensure the identifier is not already in use. It then retrieves the points corresponding to the identifier from the database. It pulls the points data based on the database query.

[0682] Step 5:

[0683] The server adds the points to an account associated with the user.

[0684] Input: User ID, acquired points

[0685] Output: Notification of successful point addition

[0686] Operation: The server adds the earned points to the user's account. After the addition process is complete, it records the result in the database and confirms that the addition was successful.

[0687] Step 6:

[0688] The server notifies the user of the result of the addition.

[0689] Input: Notification of successful point addition, user information

[0690] Output: A notification message to the user (e.g. "10 points added. Current balance: 150 points")

[0691] Operation: The server generates a message informing the user of the result of the addition and sends it to the user's terminal. The user can confirm that the points have been added on their account page.

[0692] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.

[0693] The present invention relates to a system in which a user scans a code attached to a product, the terminal analyzes it to extract a unique identifier, the terminal then transmits the extracted identifier and user information to a server, the server verifies the received data, retrieves points corresponding to the identifier from a database, and adds the points to an account associated with the user. The present invention also includes a function to increase user motivation by combining an emotion engine that recognizes the user's emotions.

[0694] System configuration

[0695] User: A user of the System who scans the codes attached to products to collect points.

[0696] Device: A user's smartphone, tablet, or computer that scans, analyzes, transmits, and recognizes emotions.

[0697] Server: A central computer system that verifies received data, acquires and adds points, and sends notifications and aggregates data. It also stores and analyzes emotional data.

[0698] Database: A storage device connected to the server, which stores Bell Mark IDs, corresponding points, user information, emotional data, etc.

[0699] Emotion engine: A system that analyzes a user's facial expressions to recognize their emotions and provides appropriate feedback based on the results.

[0700] Program processing overview

[0701] 1. User Behavior

[0702] The user scans the QR code or barcode attached to the product with their smartphone camera.

[0703] The device analyzes the image data captured by the camera and extracts a unique identifier.

[0704] 2. Emotion recognition

[0705] The device captures the user's facial expressions with a camera and recognizes their emotions using an emotion engine.

[0706] The terminal analyzes the recognized emotion data and includes it in a data packet to be sent to the server together with the identifier.

[0707] 3. Data Transmission

[0708] The device transmits the extracted unique identifier, user ID, and emotion data to the server.

[0709] The terminal notifies the user that the transmission was successful.

[0710] 4. Data Receipt and Verification

[0711] The server verifies the received data packet of identifier, user ID and emotion data.

[0712] The server verifies that the identifier is not already in use and checks the validity of the data.

[0713] 5. Earning and accumulating points

[0714] The server retrieves the points corresponding to the identifier from the database.

[0715] The server retrieves the account information associated with the user ID from the database.

[0716] The server will add the points earned to the user's account.

[0717] The server records in the database whether the points were added successfully.

[0718] 6. User Notices

[0719] The server transmits a customized point addition notification to the user based on the emotion data.

[0720] Users can view their accumulated points and feedback on their account page.

[0721] 7. Data accumulation and analysis

[0722] The server accumulates the user's emotional data and analyzes it to increase motivation to collect points.

[0723] The server generates point tally results for each school or organization for each specific period.

[0724] 8. Reporting and Feedback

[0725] The server reports the generated aggregate data to each organization and provides detailed statistics on a web dashboard.

[0726] Specific examples

[0727] 1. Mr. Tanaka (user) notices that the newly purchased stationery has a Bell Mark on it and scans the QR code with his smartphone camera.

[0728] 2. The device reads the QR code "BM123456" and extracts the unique identifier.

[0729] 3. The device captures Tanaka's facial expression with its camera, and the emotion engine recognizes that she is smiling.

[0730] 4. The device sends the extracted identifier "BM123456", user ID "U78910", and emotion data to the server.

[0731] 5. The server validates the received data and verifies that the identifier "BM123456" is not already in use.

[0732] 6. The server retrieves the 10 points corresponding to the identifier from the database and adds them to Tanaka's school (school ID "S54321")

[0733] 7. The server takes into account Tanaka's emotional data and sends a customized notification saying, "Smiling Tanaka, 10 points added to your school!"

[0734] 8. Tanaka checks her account page to see that points have been added and to see her feedback.

[0735] 9. At the end of the month, the server will report to school ID "S54321" the total points collected that month and how they were used.

[0736] In this way, users, terminals, and servers can cooperate to realize the digitalization of the Bell Mark campaign and provide a system that further increases user motivation through feedback based on emotion recognition.

[0737] The processing flow will be explained below.

[0738] Step 1:

[0739] The user scans the QR code or barcode on the product with their smartphone camera.

[0740] Step 2:

[0741] The device parses the data from the scanned code and extracts the unique Bellmark ID.

[0742] Step 3:

[0743] The device captures the user's facial expressions with a camera and recognizes their emotions using an emotion engine.

[0744] Step 4:

[0745] The terminal analyzes the recognized emotion data and generates a data packet including a Bellmark ID, a user ID, and the emotion data.

[0746] Step 5:

[0747] The terminal transmits the generated data packet to the server.

[0748] Step 6:

[0749] The server receives the data packets and verifies the correctness of the format.

[0750] Step 7:

[0751] The server checks for duplicate Bellmark IDs and verifies that they are not already in use.

[0752] Step 8:

[0753] The server retrieves the number of points corresponding to the Bellmark ID from the database.

[0754] Step 9:

[0755] The server retrieves the account information associated with the user ID from the database.

[0756] Step 10:

[0757] The server adds the acquired points to the user's account.

[0758] Step 11:

[0759] The server records the successful addition of points in the database and updates the history.

[0760] Step 12:

[0761] The server generates a customized point addition notification for the user based on the emotion data.

[0762] Step 13:

[0763] Sends server-generated notifications to users.

[0764] Step 14:

[0765] The user can check the points and notifications added on their account page.

[0766] Step 15:

[0767] The server accumulates the user's emotional data and analyzes it to increase motivation to collect points.

[0768] Step 16:

[0769] The server generates point tally results for each school or organization for each specific period.

[0770] Step 17:

[0771] The server will send the generated aggregated results to the registered email address of each organization.

[0772] Step 18:

[0773] The server provides detailed statistics in a web dashboard that interested parties can access and review the results.

[0774] Specific examples

[0775] 1. A user notices that a newly purchased stationery item has a Bell Mark on it and scans the QR code with their smartphone camera.

[0776] 2. The device reads the QR code "BM123456" and extracts the unique identifier.

[0777] 3. The device captures Tanaka (the user)'s facial expression with a camera, and the emotion engine recognizes that he is smiling.

[0778] 4. The device generates a data packet containing the extracted identifier "BM123456", user ID "U78910", and emotion data.

[0779] 5. The terminal sends the generated data packet to the server.

[0780] 6. The server verifies that the received data packet is in the correct format.

[0781] 7. The server confirms that the Bellmark ID "BM123456" is not already in use.

[0782] 8. The server retrieves the 10 points corresponding to the Bellmark ID "BM123456" from the database.

[0783] 9. The server retrieves the account information for the school ID "S54321" associated with the user ID "U78910" from the database.

[0784] 10. The server will add the 10 points acquired to the account of school ID "S54321".

[0785] 11. The server records the successful addition of points in the database and updates the history.

[0786] 12. The server generates special feedback based on Tanaka's emotional data in response to her smile.

[0787] 13. The server creates a notification saying "Smiling Tanaka, 10 points added to your school!" and sends it to Tanaka.

[0788] 14. Tanaka (user) checks the added points and notification details on his / her account page.

[0789] 15. The server accumulates Tanaka's emotional data and analyzes its use and motivation.

[0790] 16. At the end of the month, the server generates the points summary results for school ID "S54321".

[0791] 17. The server sends the generated summary results to the school's email address.

[0792] 18. The server will provide detailed statistics in a web dashboard that interested parties can access and review the results.

[0793] Example 2

[0794] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."

[0795] In conventional point collection systems, user input operations were cumbersome and users could only respond uniformly without considering their emotions or motivation. This led to a decline in users' motivation to use the system. Furthermore, there were problems with the system's insufficient point tallying and provision of appropriate feedback to users, making it difficult to implement effective point collection campaigns.

[0796] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for verifying received data and retrieving points corresponding to the identifier from a database, means for adding points to an account associated with the user, and means for accumulating and analyzing emotion data. This simplifies the user's input operation and enables the provision of emotion-based feedback. Furthermore, the aggregation and reporting of points is automated, enabling an effective point collection campaign.

[0797] "User" means a user of the System who scans the code attached to a product to collect points.

[0798] "Device" refers to the smartphone, tablet, or computer used by a User that scans, analyzes, transmits codes, and recognizes emotions.

[0799] The "server" is a central computer system that verifies received data, acquires and adds points, and sends notifications and tallies, and is also a device that stores and analyzes emotional data.

[0800] "Code" refers to a QR code, barcode, or other code attached to a product that can be scanned by a user.

[0801] "Unique Identifier" refers to a unique and individually identifiable identifier that is extracted by a device by scanning a code.

[0802] An "emotion engine" refers to software or hardware that has the ability to analyze a user's facial expressions, recognize their emotions, and provide appropriate feedback based on the results.

[0803] "Database" refers to a system in which identifiers, points, user information, emotion data, etc. are stored in a storage device connected to a server.

[0804] "Points" refers to rewards or values ​​recorded in a database corresponding to a particular identifier and credited to a user's account.

[0805] "Account" refers to a digital record, including profile information and points information, associated with a User.

[0806] A "data packet" refers to a collection of data that a terminal sends to a server in the form of an identifier, a user ID, and emotion data.

[0807] "Notification" refers to information sent from the server to the user, including messages such as points being added or feedback.

[0808] "Aggregated results" refers to data generated by the server for each specific period that compiles the total points and related information for each organization or group.

[0809] This invention is a system in which a user scans a code attached to a product, a terminal analyzes it to extract a unique identifier, the terminal then transmits the extracted identifier and user information to a server, the server verifies the received data, retrieves points corresponding to the identifier from a database, and adds the points to an account associated with the user.

[0810] This system configuration is specifically implemented as follows.

[0811] System configuration

[0812] User: A user of this system who collects points by scanning codes (QR codes, barcodes, etc.) attached to products.

[0813] Device: A smartphone, tablet, or computer used by a user that scans, analyzes, and transmits codes and performs emotion recognition. The device should preferably be equipped with a camera module and an image processing library (e.g., OpenCV).

[0814] Server: This is the central computer system that verifies the received data, acquires and adds points, notifies users, and aggregates them. It also stores and analyzes emotional data.

[0815] Database: A storage device connected to the server that stores identifiers, points, user information, emotion data, etc. For the database, MySQL or PostgreSQL is used, for example.

[0816] Emotion engine: A system that analyzes the user's facial expressions to recognize emotions and provides appropriate feedback based on the results. Microsoft Azure Face API and other tools are used for emotion recognition.

[0817] Operational Overview

[0818] A user scans a QR code or barcode attached to a product with a smartphone camera. The device analyzes the image data acquired by the camera and uses an image processing library (e.g., OpenCV) to extract a unique identifier. The extracted identifier is temporarily stored in the device's memory.

[0819] Next, the device captures the user's facial expression with a camera. It analyzes the captured facial image data using an emotion engine (e.g., Microsoft Azure Face API) to recognize the user's emotion. The recognized emotion data is included in a data packet sent to the server along with an identifier. This data packet is sent to the server using the HTTPS protocol.

[0820] The server verifies the received data packet, checks the database to see if the identifier has already been used, and checks the validity of the data. It retrieves the points corresponding to the identifier from the database and adds them to the account associated with the user ID. If the points are successfully added, it records the information in the database.

[0821] Notifications and Analytics

[0822] The server generates a customized point-added notification for the user based on the emotion data. The message is created using a template engine (e.g., Jinja2) and sent to the user's device using a notification service such as Firebase Cloud Messaging (FCM). This notification is displayed on the user's device as a message such as "Your points have been added!"

[0823] The server also accumulates user emotional data and analyzes it to increase motivation to collect points. Point tally results are generated for each school or organization for a specific period and reported to each organization using a report generation tool such as JasperReports.

[0824] Specific examples

[0825] Specific operation examples of the system

[0826] 1. Mr. Tanaka (user) notices that the newly purchased product has a Bell Mark on it and scans the QR code with his smartphone camera.

[0827] 2. The device uses OpenCV to read the QR code "BM123456" and extract the unique identifier.

[0828] 3. Tanaka's facial expression is captured by the camera and the Microsoft Azure Face API is used to recognize that she is smiling.

[0829] 4. The extracted identifier "BM123456", user ID "U78910", and emotion data are sent to the server via the HTTPS protocol.

[0830] 5. The server validates the data received through Nginx and checks the database (MySQL) to ensure that the identifier "BM123456" is not already in use.

[0831] 6. Retrieve 10 points corresponding to the identifier from the database and add them to Tanaka's account.

[0832] 7. Use a template engine (Jinja2) to generate a customized notification that says, "Smiling Tanaka, you've earned 10 points!" and send it via Firebase Cloud Messaging.

[0833] 8. Tanaka checks the points added and the feedback on her smartphone screen.

[0834] 9. At the end of the month, use JasperReports to create a report for school ID "S54321" that shows the total points collected that month and how they were used.

[0835] Prompt Sentence Examples

[0836] "Please explain the process of the program, which allows a user to scan the QR code attached to a newly purchased stationery item with their smartphone, communicate with the server, and add points to the user's account. Please also clearly state the specific steps and processes, as well as the names of any hardware or software required for the process."

[0837] The flow of the identification process in the second embodiment will be described with reference to FIG.

[0838] Step 1:

[0839] The user scans the code attached to the product. The input is a QR code or barcode provided by the user to the smartphone camera. The output is image data captured by the camera and stored in the device's memory. Specifically, the camera app is launched and the QR code or barcode is captured on the screen. This image data is used in the next analysis process.

[0840] Step 2:

[0841] The device analyzes the scanned code and extracts a unique identifier. The input is image data captured by the camera. The output is a unique identifier extracted using an image processing library (e.g., OpenCV). Specifically, the QR code or barcode is analyzed to obtain the text information of the identifier. This identifier is used in the next data transmission process.

[0842] Step 3:

[0843] The device captures the user's facial expression and recognizes the emotion using an emotion engine. The input is an image of the user's facial expression captured by the camera. The output is emotion data analyzed by the emotion recognition engine (for example, Microsoft Azure Face API). Specifically, the camera captures an image of the user's face in real time and sends the data to the emotion engine for analysis. The emotion data is then sent to the server together with an identifier.

[0844] Step 4:

[0845] The device sends the extracted identifier, user ID, and emotion data to the server. The input is the above-mentioned identifier, user ID, and emotion data. The output is a data packet sent via the HTTPS protocol. Specifically, the device assembles this data into a single packet and sends it to the server via the Internet. If the transmission is successful, a notification is displayed to the user.

[0846] Step 5:

[0847] The server verifies the received data packet. The input is the data packet containing the identifier, user ID, and emotion data received by the server. The output is the result of verifying the validity of the data. Specifically, the server receives the data packet, queries a database (e.g., MySQL) to confirm that the identifier is not already in use, and checks the integrity of the data. If this verification is successful, it proceeds to the next step.

[0848] Step 6:

[0849] The server retrieves the points corresponding to the identifier from the database and adds them to the account associated with the user ID. The input is the identifier and the user ID. The output is the points added to the user account. Specifically, the server runs a query to the database to retrieve the points corresponding to the identifier, and then runs an update query to add those points to the user's account. The result of adding the points is recorded.

[0850] Step 7:

[0851] The server generates and sends a customized point addition notification to the user based on the emotion data. The input is the emotion data and the added point information. The output is a notification message sent to the user's device. Specifically, the server generates the notification message using a template engine (e.g., Jinja2) and sends the notification to the user's device via Firebase Cloud Messaging (FCM).

[0852] Step 8:

[0853] The server accumulates users' emotional data and performs analysis to increase motivation to collect points. The input is the accumulated emotional data and point data. The output is a report or aggregated data as the analysis results. Specifically, the server accumulates the emotional data in a time-series database (e.g., TimescaleDB) and analyzes the data using an analysis tool or machine learning library (e.g., scikit-learn). It generates aggregated results for specific periods and creates reports using tools such as JasperReports to report to each organization.

[0854] (Application example 2)

[0855] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."

[0856] In conventional point acquisition systems, users are only provided with uniform notifications and no individual feedback, making it difficult to motivate them. Furthermore, because the system does not take into account the user's emotional state, earning points becomes a mere chore, making it impossible to improve the user experience.

[0857] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.

[0858] In this invention, the server includes means for verifying the received data and retrieving points corresponding to the identifier from a database, means for adding the points to an account associated with the user, means for the terminal to analyze the user's facial expression and recognize emotions, means for transmitting a data packet including the emotion recognition data to the server, means for the server to generate a customized notification based on the emotion recognition data, and means for the server to transmit the notification to the user, thereby providing individualized feedback and increasing the user's motivation.

[0859] "User" means a person who uses the system to scan product codes and earn points.

[0860] "Code attached to product" refers to an identifier printed or affixed to a product, such as a QR code or barcode.

[0861] "Terminal" means a device that scans codes and processes and transmits data, such as a smartphone, tablet, or computer.

[0862] A "unique identifier" is a unique code used to individually identify a product or service.

[0863] "User information" refers to ID and profile information required for user identification and point management.

[0864] The "server" is a central computer system that validates incoming data, acquires and accumulates points, notifies users, and generates feedback.

[0865] A "database" is a storage device connected to the server that stores identifiers, points, user information, emotion data, and the like.

[0866] "Means for recognizing emotions" refers to the function of the terminal to analyze the user's facial expressions and identify emotions.

[0867] "Emotion recognition data" is information about emotions analyzed from the user's facial expressions.

[0868] "Customized notifications" are notifications that are individually created based on the user's emotions and point status.

[0869] A "data packet" is a unit of data that includes an identifier, user information, and emotion recognition data.

[0870] "Points" are points that users earn by scanning products and are added to their account.

[0871] The system allows a user to scan a code attached to a product, analyze it with a terminal, extract a unique identifier, and then transmit the extracted identifier and user information to a server. The server then verifies the received data, retrieves points corresponding to the identifier from a database, and adds the points to an account associated with the user. It also includes a function to increase user motivation by combining it with an emotion engine that recognizes the user's emotions.

[0872] Specifically, the system is implemented as follows.

[0873] 1. Hardware and software used

[0874] Device: Use a smartphone, tablet, or computer, which must have a camera.

[0875] Server: Receives and analyzes data, manages points, and generates feedback.

[0876] Camera: Used to capture the user's facial expressions and scan QR codes and barcodes.

[0877] software:

[0878] OpenCV: For QR code reading and image processing.

[0879] TensorFlow: A deep learning model for emotion recognition.

[0880] Requests: For sending data to the server.

[0881] 2. Overall system processing flow

[0882] Users scan the QR code or barcode attached to the product with their smartphone camera.

[0883] The device uses OpenCV to read the QR code and extract the unique identifier.

[0884] The device captures the user's facial expressions with a camera and inputs them into an emotion recognition model using TensorFlow to obtain emotional data.

[0885] The device sends the extracted identifier, user ID, and emotion data as a data packet to the server using Requests.

[0886] The server validates the received data, verifies that the identifier has not been used, retrieves the points from the database, and credits the user's account.

[0887] Based on the emotion recognition data, the server generates a customized notification for the user and sends it to the device, allowing the user to check their point status and feedback on their account page.

[0888] 3. Specific Examples

[0889] For example, a user scans a QR code attached to a newly purchased beverage with their smartphone camera. The QR code "D123456" is read and a unique identifier is extracted. The device then uses the camera to capture the user's face and recognizes that they are smiling using an emotion engine. The device then sends the extracted identifier "D123456," user ID "U1234," and emotion data of "smile" to the server. The server then verifies the received data and confirms that the identifier "D123456" is not already in use. 10 points are retrieved from the database and added to the user's account. A customized notification is sent to the user saying, "Smile and receive special points!", thereby increasing the user's motivation.

[0890] Prompt Sentence Examples

[0891] "Develop an app that allows users to scan a QR code attached to a product with their smartphone and recognizes emotions from the facial expression captured by the camera at the time. The app will send the extracted unique identifier, user ID, and emotion data to a server, add points, and send feedback."

[0892] In this way, the present invention realizes cooperation between the user, the terminal, and the server to provide a points acquisition system and further increase the user's motivation through feedback based on emotion recognition.

[0893] The flow of the specific processing in the application example 2 will be described with reference to FIG.

[0894] Step 1:

[0895] The user scans the QR code attached to the product with the smartphone camera. The input is the QR code attached to the product, and the code is photographed using a camera app. The output is an image of the photographed QR code.

[0896] Step 2:

[0897] The device parses the scanned QR code and extracts a unique identifier. The input is a photographed QR code image, and OpenCV is used to parse and decode the code. The output is a unique identifier.

[0898] Step 3:

[0899] The device captures the user's facial expression with a camera and recognizes the emotion. The input for this step is the user's face image, which is captured with a camera. The facial expression is analyzed using TensorFlow's emotion recognition model, and the recognized emotion data is obtained as the output.

[0900] Step 4:

[0901] The device sends the extracted identifier, user ID, and emotion data as a data packet to the server. The input of this step is the unique identifier, user ID, and emotion data, which are sent to the server using the Requests library. The output is the transmission result to the server.

[0902] Step 5:

[0903] The server validates the data received to ensure that the identifier is not already in use. The input is the received data packet, and the database is consulted to check the identifier's usage. The output is the result of the identifier validation.

[0904] Step 6:

[0905] The server retrieves points corresponding to the identifier from the database and adds them to the user's account. The input is the identifier and user ID, and the server retrieves the corresponding points from the database and reflects them in the user's account. The output is the added points information.

[0906] Step 7:

[0907] The server generates a customized notification based on the emotion recognition data and sends it to the user. The input is the emotion recognition data and point information, and the server generates a customized notification message based on the input. The output is the notification message.

[0908] Step 8:

[0909] The server generates notifications and sends them to the device, where the user can view them on their account page. The input is the notification message sent from the server to the device. The output is the notification message displayed to the user.

[0910] In this way, the entire system operates by processing input data at each step and generating output data required for the next step.

[0911] The specific processing unit 290 transmits the result of the specific processing to the smart glasses 214. In the smart glasses 214, the control unit 46A causes the speaker 240 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.

[0912] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[0913] In the above embodiment, an example in which the specific processing is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the smart glasses 214.

[0914] [Third embodiment]

[0915] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.

[0916] 5, the data processing system 310 includes the data processing device 12 and a headset type terminal 314. An example of the data processing device 12 is a server.

[0917] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[0918] The headset type terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a display 343. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the display 343 are also connected to the bus 52.

[0919] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.

[0920] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).

[0921] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.

[0922] Fig. 6 shows an example of the main functions of the data processing device 12 and the headset type terminal 314. As shown in Fig. 6, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.

[0923] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[0924] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[0925] In the headset type terminal 314, a reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.

[0926] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the headset type terminal 314 will be referred to as the "terminal."

[0927] The present invention relates to a system in which a user scans a code attached to a product, a terminal analyzes it to extract a unique identifier, the terminal then transmits the extracted identifier and user information to a server, the server verifies the received data, retrieves points corresponding to the identifier from a database, and adds the points to an account associated with the user, thereby enabling efficient and fair point collection.

[0928] System configuration

[0929] User: A user of the System who scans the codes attached to products to collect points.

[0930] Device: The user's smartphone, tablet, or computer that scans, analyzes, and transmits the code.

[0931] Server: A central computer system that validates received data, acquires and accumulates points, and handles notifications and tallying.

[0932] Database: A storage device connected to the server, which stores Bellmark IDs, corresponding points, user information, etc.

[0933] Program processing overview

[0934] 1. User Behavior

[0935] The user scans the QR code or barcode attached to the product with their smartphone camera.

[0936] The device analyzes the image data captured by the camera and extracts a unique identifier.

[0937] 2. Data Transmission

[0938] The terminal transmits the extracted unique identifier and the user's ID information to the server.

[0939] The terminal notifies the user that the transmission was successful.

[0940] 3. Data Receipt and Verification

[0941] The server verifies the received identifier and user ID data.

[0942] The server verifies that the identifier is not already in use and checks the validity of the identification data.

[0943] 4. Earning and adding points

[0944] The server retrieves the points corresponding to the identifier from the database.

[0945] The server adds points to an account associated with the user.

[0946] The server records in the database whether the points were added successfully.

[0947] 5. User Notices

[0948] The server notifies the user of the result of the addition.

[0949] Users can check the points they have earned on their account page.

[0950] 6. Monthly Reports and Aggregation

[0951] The server generates aggregated data monthly or for a specified period.

[0952] The server reports the generated aggregate data to each organization and provides detailed statistics on a web dashboard.

[0953] Specific examples

[0954] 1. Mr. Tanaka (user) notices that the newly purchased stationery has a Bell Mark on it and scans the QR code with his smartphone camera.

[0955] 2. The device reads the QR code "BM123456" and extracts the unique identifier.

[0956] 3. The device sends the extracted identifier "BM123456" and user ID "U78910" to the server.

[0957] 4. The server validates the received data and verifies that the identifier "BM123456" is not already in use.

[0958] 5. The server retrieves the 10 points corresponding to the identifier from the database and adds them to Tanaka's school (school ID "S54321")

[0959] 6. The server notifies Tanaka of the result of the addition, and Tanaka confirms that the points have been added on his account page.

[0960] 7. At the end of the month, the server will report to school ID "S54321" the total points collected that month and how they were used.

[0961] In this way, users, terminals, and servers can cooperate to realize the digitalization of the Bell Mark campaign and provide a system that enables more efficient point collection and management.

[0962] The processing flow will be explained below.

[0963] Step 1:

[0964] The user scans the QR code or barcode on the product with their smartphone camera.

[0965] Step 2:

[0966] The device parses the data from the scanned code and extracts the unique Bellmark ID.

[0967] Step 3:

[0968] The terminal generates a data packet including the extracted Bellmark ID and user ID.

[0969] Step 4:

[0970] The terminal transmits the generated data packet to the server.

[0971] Step 5:

[0972] The server receives the data packets and verifies the correctness of the format.

[0973] Step 6:

[0974] The server checks for duplicate Bellmark IDs and verifies that they are not already in use.

[0975] Step 7:

[0976] The server retrieves the number of points corresponding to the Bellmark ID from the database.

[0977] Step 8:

[0978] The server retrieves the account information associated with the user ID from the database.

[0979] Step 9:

[0980] The server adds the acquired points to the user's account.

[0981] Step 10:

[0982] The server records the successful addition of points in the database and updates the history.

[0983] Step 11:

[0984] The server notifies the user that the points have been added successfully.

[0985] Step 12:

[0986] The user can check the points added on their account page.

[0987] Step 13:

[0988] The server generates point tally results for each school or organization for each specific period.

[0989] Step 14:

[0990] The aggregated results generated by the server are sent to the school or organization's registered email address.

[0991] Step 15:

[0992] The server provides detailed statistics in a web dashboard that interested parties can access and review the results.

[0993] Example 1

[0994] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."

[0995] Conventional point collection systems often rely on paper or manual input for point management, resulting in problems such as a lack of efficiency and accuracy. Furthermore, the method for users to collect points is cumbersome and time-consuming, which can reduce motivation to collect points. Additionally, there is a risk of fraudulent point acquisition and duplicate registration. A system that solves these problems and enables efficient and fair point collection and management is needed.

[0996] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.

[0997] In this invention, the server includes: means for a user to scan a code attached to a product; means for a terminal to analyze the scanned code and extract a unique identifier; means for the terminal to transmit the extracted identifier and user information to the server; means for the server to verify the received data and obtain points corresponding to the identifier from a database; means for the server to add the points to an account associated with the user; means for the server to generate aggregate data monthly or at specified intervals and report it to each organization; and means for a user to scan the digital code using a smart device to achieve efficient and fair point collection, thereby simplifying and speeding up the point collection process and enabling accurate and fair point management.

[0998] A "user" is a consumer or individual who scans a code on a product and utilizes the points collection system.

[0999] "Device" means a device used by a User, such as a smartphone, tablet, or computer, that scans, analyzes, and transmits the Code.

[1000] A "code" is a code that contains information to uniquely identify a product, such as a QR code or barcode attached to a product.

[1001] A "unique identifier" is data obtained by analyzing a code that uniquely represents a particular product or point.

[1002] "User information" is information for identifying a user, and includes, for example, a user ID and account information.

[1003] The "server" is a central computer system that verifies received data, acquires and adds points, and notifies and tallies points.

[1004] A "database" is a storage device connected to a server, and is a system for storing codes, identifiers, corresponding points, user information, etc.

[1005] "Points" are a numerical value that can be earned as a reward or benefit by scanning a product code.

[1006] An "account" is a user's individual data area on the server that records points and is associated with the user.

[1007] "Aggregated Data" means data that compiles points and other statistical information obtained over a certain period of time.

[1008] "Organization" means the entity or institution for which points are collected and reported, such as an educational institution or business.

[1009] A "smart device" is an internet-enabled mobile device, such as a smartphone or tablet, that a user uses to scan a code on a product.

[1010] A "digital code" is information expressed in digital form, such as a QR code or barcode, and is used to identify products and earn points.

[1011] The present invention relates to a system in which a user scans a code attached to a product, a terminal analyzes it to extract a unique identifier, the terminal then transmits the extracted identifier and user information to a server, the server verifies the received data, retrieves points corresponding to the identifier from a database, and adds the points to an account associated with the user. To implement this system, the following hardware and software are required:

[1012] Hardware Configuration

[1013] User device: A smartphone, tablet, or computer equipped with a camera and internet connectivity.

[1014] Server: A high-performance computer equipped with a CPU, memory, and network interface for receiving, validating, and processing data.

[1015] Database: A storage device connected to a server that stores identifiers, points, user information, etc.

[1016] Software Configuration

[1017] Barcode scanner application: An application installed on a device to scan QR codes and barcodes using the device's camera.

[1018] Google ML Kit: A library for parsing image data and extracting unique identifiers from scanned code.

[1019] HTTPS protocol: A communication protocol for securely transmitting data from a device to a server.

[1020] Backend framework: A framework for receiving, validating, and processing data on the server side, such as Python's Django or Node.js.

[1021] Database management system: A database for managing points and user information, such as MySQL or PostgreSQL.

[1022] Firebase Cloud Messaging: A push notification service for notifying users.

[1023] Data aggregation tools: Tools for generating aggregated data and reporting, such as Apache Kafka or Tableau.

[1024] Specific examples of processing

[1025] 1. A user purchases stationery and scans the QR code on the packaging with their smartphone camera.

[1026] 2. The device uses Google ML Kit to analyze the scanned QR code and extract a unique identifier, such as "BM123456."

[1027] 3. The device sends the identifier "BM123456" and user ID "U78910" to the server using the HTTPS protocol.

[1028] 4. The server validates the incoming data using the Python Django framework to ensure the identifier is not already in use.

[1029] 5. The server retrieves 10 points from the MySQL database and adds the points to the user ID "U78910".

[1030] 6. The server uses Firebase Cloud Messaging to notify the user that "10 points have been added."

[1031] 7. At the end of the month, the server generates aggregated data using Apache Kafka or Tableau and reports it to, for example, school ID "S54321."

[1032] Example prompts for generative AI models

[1033] Below are some example prompts to input to a generative AI model:

[1034] A user scans a code attached to a product. Describe the process of a system that extracts a unique identifier from the code the user scanned (e.g., QR code, barcode), and sends that identifier and user information to a server. The server validates the received data, retrieves the points corresponding to the identifier from a database, adds them to the user's account, and notifies the user of the result. The system also performs monthly reporting and aggregation. Please also describe what hardware and software is used.

[1035] This allows users, terminals, and servers to cooperate to achieve efficient and accurate point collection and management.The present invention contributes to the digitization of point systems, particularly in educational institutions and public organizations.

[1036] The flow of the identification process in the first embodiment will be described with reference to FIG.

[1037] Step 1:

[1038] The user scans the code attached to the product.

[1039] Specific behavior: The user launches the camera app or barcode scanner app on their smartphone and scans the QR code or barcode of a product.

[1040] Input: QR code or barcode printed on product packaging.

[1041] Output: QR code or barcode image data.

[1042] Step 2:

[1043] The device parses the scanned code to extract a unique identifier.

[1044] Specific operation: The device uses an image recognition library such as Google ML Kit to analyze the image data of the QR code or barcode and extract a unique identifier such as "BM123456."

[1045] Input: QR code or barcode image data.

[1046] Output: A unique identifier (e.g. "BM123456").

[1047] Step 3:

[1048] The terminal transmits the extracted identifier and user information to the server.

[1049] Specific operation: The terminal sends the identifier "BM123456" and the user ID "U78910" to the server using the HTTPS protocol.

[1050] Input: A unique identifier and user information.

[1051] Output: The result of sending data to the server.

[1052] Step 4:

[1053] The server validates the received data.

[1054] What happens: The server uses the Python Django framework to validate the unique identifier and user information, checking in the database to see if the identifier is already in use.

[1055] Input: Submitted identifier and user information.

[1056] Output: The validity of the identifier.

[1057] Step 5:

[1058] The server retrieves the points corresponding to the identifier from the database and adds them to the user's account.

[1059] Specific operation: The server retrieves 10 points corresponding to the identifier "BM123456" from the MySQL database and adds the points to the account associated with the user ID "U78910".

[1060] Input: Identifier and User ID.

[1061] Output: Points addition result.

[1062] Step 6:

[1063] The server will notify the user after adding the points.

[1064] Specific behavior: The server uses Firebase Cloud Messaging to send a notification to the user saying "10 points added."

[1065] Input: Point addition result.

[1066] Output: Notification sending result.

[1067] Step 7:

[1068] The server generates aggregated data monthly or for a specified period and reports it to each organization.

[1069] Specific operation: The server uses Apache Kafka or Tableau to generate aggregated data for specific periods and report it to the organization (e.g., school ID "S54321").

[1070] Input: Point data within a period.

[1071] Output: Aggregated data and reports.

[1072] In this way, through the specific operations performed at each step, the user, terminal, and server work together to achieve efficient and accurate point collection and management.

[1073] (Application example 1)

[1074] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."

[1075] Modern electronic payment services require a method for users to efficiently acquire and manage points when purchasing products. However, current systems have problems with adding points and checking balances, resulting in a poor user experience. In addition, tallying points and reporting them to various organizations is cumbersome, requiring significant effort from all parties involved. To solve these issues, a more efficient and user-friendly points management system is needed.

[1076] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.

[1077] In this invention, the server includes means for a user to scan a code attached to a product, means for a terminal to analyze the scanned code and extract a unique identifier, means for the terminal to transmit the extracted identifier and user information to the server, means for the server to verify the received data and obtain points corresponding to the identifier from a database, means for the server to add the points to an account associated with the user and notify the user of the result, means for the user to check the remaining points, means for the user to use the points for everyday shopping, and means for the server to generate a summary result for each specific period and report it to each organization, thereby enabling efficient and user-friendly point management and summary.

[1078] "User" refers to an individual or customer who uses this system.

[1079] "Product" refers to the goods and services that consumers purchase.

[1080] "Code" refers to anything that contains identification information, such as a QR code or barcode, attached to a product.

[1081] "Terminal" refers to the electronic device a user uses to scan a code, such as a smartphone, tablet, or computer.

[1082] "Unique Identifier" refers to unique identifying information extracted from a scanned code.

[1083] "User information" refers to a user's unique ID and account information.

[1084] "Server" refers to the central computer system that receives data, verifies data, manages points, etc.

[1085] "Database" refers to a centrally managed storage device for storing identifiers, user information, point information, and the like.

[1086] "Points" refers to a numerical reward that a user can receive when purchasing a product.

[1087] "Balance" refers to the total number of points currently held in a User's account.

[1088] "Account" refers to the personal digital space required for a User to manage their Points.

[1089] "Aggregated Results" refers to a summary of points data accumulated over a specified period of time.

[1090] "Reporting" refers to the act of communicating the results of the survey to relevant parties and organizations.

[1091] "Daily shopping" refers to general consumption activities that users frequently engage in in their daily lives.

[1092] This invention provides a system that allows users to scan codes attached to products and efficiently acquire and manage points. The program for realizing this system can be explained as follows.

[1093] System Program

[1094] The system has three main components: the user, the device, and the server. The user uses a device such as a smartphone or tablet to scan a code attached to a product. The device analyzes it and extracts a unique identifier. It then sends this identifier and user information to the server. The server verifies this data and retrieves the points corresponding to the identifier from a database. The points are added to the user's account and notified to the user.

[1095] The hardware used is a smartphone or tablet as the terminal, and a high-performance computer as the server. The terminal is equipped with a camera to scan QR codes and barcodes, and the software uses the Python qrcode library and the requests library to process HTTP requests.

[1096] Processing flow

[1097] When a user scans a product's QR code, the device uses the device's camera. The device analyzes the image data captured by the camera using the qrcode library to extract a unique identifier. This identifier and the user's ID information are sent to the server using the requests library. The server validates the received data and checks whether the identifier is already in use. It then retrieves the points corresponding to the identifier from the database and adds them to the user's account. Finally, it notifies the user of the addition result and allows them to check their point balance.

[1098] Specific examples

[1099] Consider the following example: A user scans the QR code of a newly purchased beverage product with their smartphone camera. The device extracts an identifier from the QR code and sends this identifier and the user ID to the server. The server validates the received data and verifies that the identifier is not already in use. The server then retrieves the points corresponding to the identifier from the database and adds them to the user's account. The server then notifies the user that "5 points have been added. Current balance: 100 points." The user can check their point balance through the app and use them for everyday shopping as needed.

[1100] Prompt Sentence Examples

[1101] "Please create an application program that allows the user to scan the QR code, obtain an identifier, and send it to the server to add points. Please also include a function to notify the user whether the points were added successfully based on the response from the server."

[1102] In this way, the entire system for carrying out the present invention can be specifically implemented. The operation of the entire system is simple and user-friendly, making daily point management more efficient and improving operability.

[1103] The flow of the specific processing in the application example 1 will be described with reference to FIG.

[1104] Step 1:

[1105] The user scans the product's QR code.

[1106] Input: The user scans the QR code with their smartphone camera.

[1107] Output: QR code image data

[1108] How it works: The user points their device's camera at the QR code on the product and scans it using a dedicated scanning app. The camera captures the image data of the QR code.

[1109] Step 2:

[1110] The device analyzes the QR code image data and extracts a unique identifier.

[1111] Input: QR code image data

[1112] Output: A unique identifier (e.g. "BM123456")

[1113] How it works: The device uses the qrcode library to parse the QR code data. From the results of the parsing, it extracts the unique identifier embedded in the QR code. The identifier is generated by image processing and decoding.

[1114] Step 3:

[1115] The terminal transmits the extracted identifier and user information to the server.

[1116] Input: Unique identifier, user ID (e.g. "U78910")

[1117] Output: Notification of completion of data transmission to the server

[1118] Operation: The device sends the extracted unique identifier and user information (user ID) to the server using the requests library. The server notifies the user whether the transmission was successful.

[1119] Step 4:

[1120] The server verifies the received data and retrieves the points corresponding to the identifier from the database.

[1121] Input: Unique identifier, user ID

[1122] Output: Points corresponding to the identifier (e.g. 10 points)

[1123] Operation: The server validates the received data to ensure the identifier is not already in use. It then retrieves the points corresponding to the identifier from the database. It pulls the points data based on the database query.

[1124] Step 5:

[1125] The server adds the points to an account associated with the user.

[1126] Input: User ID, acquired points

[1127] Output: Notification of successful point addition

[1128] Operation: The server adds the earned points to the user's account. After the addition process is complete, it records the result in the database and confirms that the addition was successful.

[1129] Step 6:

[1130] The server notifies the user of the result of the addition.

[1131] Input: Notification of successful point addition, user information

[1132] Output: A notification message to the user (e.g. "10 points added. Current balance: 150 points")

[1133] Operation: The server generates a message informing the user of the result of the addition and sends it to the user's terminal. The user can confirm that the points have been added on their account page.

[1134] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.

[1135] The present invention relates to a system in which a user scans a code attached to a product, the terminal analyzes it to extract a unique identifier, the terminal then transmits the extracted identifier and user information to a server, the server verifies the received data, retrieves points corresponding to the identifier from a database, and adds the points to an account associated with the user. The present invention also includes a function to increase user motivation by combining an emotion engine that recognizes the user's emotions.

[1136] System configuration

[1137] User: A user of the System who scans the codes attached to products to collect points.

[1138] Device: A user's smartphone, tablet, or computer that scans, analyzes, transmits, and recognizes emotions.

[1139] Server: A central computer system that verifies received data, acquires and adds points, and sends notifications and aggregates data. It also stores and analyzes emotional data.

[1140] Database: A storage device connected to the server, which stores Bell Mark IDs, corresponding points, user information, emotional data, etc.

[1141] Emotion engine: A system that analyzes a user's facial expressions to recognize their emotions and provides appropriate feedback based on the results.

[1142] Program processing overview

[1143] 1. User Behavior

[1144] The user scans the QR code or barcode attached to the product with their smartphone camera.

[1145] The device analyzes the image data captured by the camera and extracts a unique identifier.

[1146] 2. Emotion recognition

[1147] The device captures the user's facial expressions with a camera and recognizes their emotions using an emotion engine.

[1148] The terminal analyzes the recognized emotion data and includes it in a data packet to be sent to the server together with the identifier.

[1149] 3. Data Transmission

[1150] The device transmits the extracted unique identifier, user ID, and emotion data to the server.

[1151] The terminal notifies the user that the transmission was successful.

[1152] 4. Data Receipt and Verification

[1153] The server verifies the received data packet of identifier, user ID and emotion data.

[1154] The server verifies that the identifier is not already in use and checks the validity of the data.

[1155] 5. Earning and accumulating points

[1156] The server retrieves the points corresponding to the identifier from the database.

[1157] The server retrieves the account information associated with the user ID from the database.

[1158] The server will add the points earned to the user's account.

[1159] The server records in the database whether the points were added successfully.

[1160] 6. User Notices

[1161] The server transmits a customized point addition notification to the user based on the emotion data.

[1162] Users can view their accumulated points and feedback on their account page.

[1163] 7. Data accumulation and analysis

[1164] The server accumulates the user's emotional data and analyzes it to increase motivation to collect points.

[1165] The server generates point tally results for each school or organization for each specific period.

[1166] 8. Reporting and Feedback

[1167] The server reports the generated aggregate data to each organization and provides detailed statistics on a web dashboard.

[1168] Specific examples

[1169] 1. Mr. Tanaka (user) notices that the newly purchased stationery has a Bell Mark on it and scans the QR code with his smartphone camera.

[1170] 2. The device reads the QR code "BM123456" and extracts the unique identifier.

[1171] 3. The device captures Tanaka's facial expression with its camera, and the emotion engine recognizes that she is smiling.

[1172] 4. The device sends the extracted identifier "BM123456", user ID "U78910", and emotion data to the server.

[1173] 5. The server validates the received data and verifies that the identifier "BM123456" is not already in use.

[1174] 6. The server retrieves the 10 points corresponding to the identifier from the database and adds them to Tanaka's school (school ID "S54321")

[1175] 7. The server takes into account Tanaka's emotional data and sends a customized notification saying, "Smiling Tanaka, 10 points added to your school!"

[1176] 8. Tanaka checks her account page to see that points have been added and to see her feedback.

[1177] 9. At the end of the month, the server will report to school ID "S54321" the total points collected that month and how they were used.

[1178] In this way, users, terminals, and servers can cooperate to realize the digitalization of the Bell Mark campaign and provide a system that further increases user motivation through feedback based on emotion recognition.

[1179] The processing flow will be explained below.

[1180] Step 1:

[1181] The user scans the QR code or barcode on the product with their smartphone camera.

[1182] Step 2:

[1183] The device parses the data from the scanned code and extracts the unique Bellmark ID.

[1184] Step 3:

[1185] The device captures the user's facial expressions with a camera and recognizes their emotions using an emotion engine.

[1186] Step 4:

[1187] The terminal analyzes the recognized emotion data and generates a data packet including a Bellmark ID, a user ID, and the emotion data.

[1188] Step 5:

[1189] The terminal transmits the generated data packet to the server.

[1190] Step 6:

[1191] The server receives the data packets and verifies the correctness of the format.

[1192] Step 7:

[1193] The server checks for duplicate Bellmark IDs and verifies that they are not already in use.

[1194] Step 8:

[1195] The server retrieves the number of points corresponding to the Bellmark ID from the database.

[1196] Step 9:

[1197] The server retrieves the account information associated with the user ID from the database.

[1198] Step 10:

[1199] The server adds the acquired points to the user's account.

[1200] Step 11:

[1201] The server records the successful addition of points in the database and updates the history.

[1202] Step 12:

[1203] The server generates a customized point addition notification for the user based on the emotion data.

[1204] Step 13:

[1205] Sends server-generated notifications to users.

[1206] Step 14:

[1207] The user can check the points and notifications added on their account page.

[1208] Step 15:

[1209] The server accumulates the user's emotional data and analyzes it to increase motivation to collect points.

[1210] Step 16:

[1211] The server generates point tally results for each school or organization for each specific period.

[1212] Step 17:

[1213] The server will send the generated aggregated results to the registered email address of each organization.

[1214] Step 18:

[1215] The server provides detailed statistics in a web dashboard that interested parties can access and review the results.

[1216] Specific examples

[1217] 1. A user notices that a newly purchased stationery item has a Bell Mark on it and scans the QR code with their smartphone camera.

[1218] 2. The device reads the QR code "BM123456" and extracts the unique identifier.

[1219] 3. The device captures Tanaka (the user)'s facial expression with a camera, and the emotion engine recognizes that he is smiling.

[1220] 4. The device generates a data packet containing the extracted identifier "BM123456", user ID "U78910", and emotion data.

[1221] 5. The terminal sends the generated data packet to the server.

[1222] 6. The server verifies that the received data packet is in the correct format.

[1223] 7. The server confirms that the Bellmark ID "BM123456" is not already in use.

[1224] 8. The server retrieves the 10 points corresponding to the Bellmark ID "BM123456" from the database.

[1225] 9. The server retrieves the account information for the school ID "S54321" associated with the user ID "U78910" from the database.

[1226] 10. The server will add the 10 points acquired to the account of school ID "S54321".

[1227] 11. The server records the successful addition of points in the database and updates the history.

[1228] 12. The server generates special feedback based on Tanaka's emotional data in response to her smile.

[1229] 13. The server creates a notification saying "Smiling Tanaka, 10 points added to your school!" and sends it to Tanaka.

[1230] 14. Tanaka (user) checks the added points and notification details on his / her account page.

[1231] 15. The server accumulates Tanaka's emotional data and analyzes its use and motivation.

[1232] 16. At the end of the month, the server generates the points summary results for school ID "S54321".

[1233] 17. The server sends the generated summary results to the school's email address.

[1234] 18. The server will provide detailed statistics in a web dashboard that interested parties can access and review the results.

[1235] Example 2

[1236] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."

[1237] In conventional point collection systems, user input operations were cumbersome and users could only respond uniformly without considering their emotions or motivation. This led to a decline in users' motivation to use the system. Furthermore, there were problems with the system's insufficient point tallying and provision of appropriate feedback to users, making it difficult to implement effective point collection campaigns.

[1238] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for verifying received data and retrieving points corresponding to the identifier from a database, means for adding points to an account associated with the user, and means for accumulating and analyzing emotion data. This simplifies the user's input operation and enables the provision of emotion-based feedback. Furthermore, the aggregation and reporting of points is automated, enabling an effective point collection campaign.

[1239] "User" means a user of the System who scans the code attached to a product to collect points.

[1240] "Device" refers to the smartphone, tablet, or computer used by a User that scans, analyzes, transmits codes, and recognizes emotions.

[1241] The "server" is a central computer system that verifies received data, acquires and adds points, and sends notifications and tallies, and is also a device that stores and analyzes emotional data.

[1242] "Code" refers to a QR code, barcode, or other code attached to a product that can be scanned by a user.

[1243] "Unique Identifier" refers to a unique and individually identifiable identifier that is extracted by a device by scanning a code.

[1244] An "emotion engine" refers to software or hardware that has the ability to analyze a user's facial expressions, recognize their emotions, and provide appropriate feedback based on the results.

[1245] "Database" refers to a system in which identifiers, points, user information, emotion data, etc. are stored in a storage device connected to a server.

[1246] "Points" refers to rewards or values ​​recorded in a database corresponding to a particular identifier and credited to a user's account.

[1247] "Account" refers to a digital record, including profile information and points information, associated with a User.

[1248] A "data packet" refers to a collection of data that a terminal sends to a server in the form of an identifier, a user ID, and emotion data.

[1249] "Notification" refers to information sent from the server to the user, including messages such as points being added or feedback.

[1250] "Aggregated results" refers to data generated by the server for each specific period that compiles the total points and related information for each organization or group.

[1251] This invention is a system in which a user scans a code attached to a product, a terminal analyzes it to extract a unique identifier, the terminal then transmits the extracted identifier and user information to a server, the server verifies the received data, retrieves points corresponding to the identifier from a database, and adds the points to an account associated with the user.

[1252] This system configuration is specifically implemented as follows.

[1253] System configuration

[1254] User: A user of this system who collects points by scanning codes (QR codes, barcodes, etc.) attached to products.

[1255] Device: A smartphone, tablet, or computer used by a user that scans, analyzes, and transmits codes and performs emotion recognition. The device should preferably be equipped with a camera module and an image processing library (e.g., OpenCV).

[1256] Server: This is the central computer system that verifies the received data, acquires and adds points, notifies users, and aggregates them. It also stores and analyzes emotional data.

[1257] Database: A storage device connected to the server that stores identifiers, points, user information, emotion data, etc. For the database, MySQL or PostgreSQL is used, for example.

[1258] Emotion engine: A system that analyzes the user's facial expressions to recognize emotions and provides appropriate feedback based on the results. Microsoft Azure Face API and other tools are used for emotion recognition.

[1259] Operational Overview

[1260] A user scans a QR code or barcode attached to a product with a smartphone camera. The device analyzes the image data acquired by the camera and uses an image processing library (e.g., OpenCV) to extract a unique identifier. The extracted identifier is temporarily stored in the device's memory.

[1261] Next, the device captures the user's facial expression with a camera. It analyzes the captured facial image data using an emotion engine (e.g., Microsoft Azure Face API) to recognize the user's emotion. The recognized emotion data is included in a data packet sent to the server along with an identifier. This data packet is sent to the server using the HTTPS protocol.

[1262] The server verifies the received data packet, checks the database to see if the identifier has already been used, and checks the validity of the data. It retrieves the points corresponding to the identifier from the database and adds them to the account associated with the user ID. If the points are successfully added, it records the information in the database.

[1263] Notifications and Analytics

[1264] The server generates a customized point-added notification for the user based on the emotion data. The message is created using a template engine (e.g., Jinja2) and sent to the user's device using a notification service such as Firebase Cloud Messaging (FCM). This notification is displayed on the user's device as a message such as "Your points have been added!"

[1265] The server also accumulates user emotional data and analyzes it to increase motivation to collect points. Point tally results are generated for each school or organization for a specific period and reported to each organization using a report generation tool such as JasperReports.

[1266] Specific examples

[1267] Specific operation examples of the system

[1268] 1. Mr. Tanaka (user) notices that the newly purchased product has a Bell Mark on it and scans the QR code with his smartphone camera.

[1269] 2. The device uses OpenCV to read the QR code "BM123456" and extract the unique identifier.

[1270] 3. Tanaka's facial expression is captured by the camera and the Microsoft Azure Face API is used to recognize that she is smiling.

[1271] 4. The extracted identifier "BM123456", user ID "U78910", and emotion data are sent to the server via the HTTPS protocol.

[1272] 5. The server validates the data received through Nginx and checks the database (MySQL) to ensure that the identifier "BM123456" is not already in use.

[1273] 6. Retrieve 10 points corresponding to the identifier from the database and add them to Tanaka's account.

[1274] 7. Use a template engine (Jinja2) to generate a customized notification that says, "Smiling Tanaka, you've earned 10 points!" and send it via Firebase Cloud Messaging.

[1275] 8. Tanaka checks the points added and the feedback on her smartphone screen.

[1276] 9. At the end of the month, use JasperReports to create a report for school ID "S54321" that shows the total points collected that month and how they were used.

[1277] Prompt Sentence Examples

[1278] "Please explain the process of the program, which allows a user to scan the QR code attached to a newly purchased stationery item with their smartphone, communicate with the server, and add points to the user's account. Please also clearly state the specific steps and processes, as well as the names of any hardware or software required for the process."

[1279] The flow of the identification process in the second embodiment will be described with reference to FIG.

[1280] Step 1:

[1281] The user scans the code attached to the product. The input is a QR code or barcode provided by the user to the smartphone camera. The output is image data captured by the camera and stored in the device's memory. Specifically, the camera app is launched and the QR code or barcode is captured on the screen. This image data is used in the next analysis process.

[1282] Step 2:

[1283] The device analyzes the scanned code and extracts a unique identifier. The input is image data captured by the camera. The output is a unique identifier extracted using an image processing library (e.g., OpenCV). Specifically, the QR code or barcode is analyzed to obtain the text information of the identifier. This identifier is used in the next data transmission process.

[1284] Step 3:

[1285] The device captures the user's facial expression and recognizes the emotion using an emotion engine. The input is an image of the user's facial expression captured by the camera. The output is emotion data analyzed by the emotion recognition engine (for example, Microsoft Azure Face API). Specifically, the camera captures an image of the user's face in real time and sends the data to the emotion engine for analysis. The emotion data is then sent to the server together with an identifier.

[1286] Step 4:

[1287] The device sends the extracted identifier, user ID, and emotion data to the server. The input is the above-mentioned identifier, user ID, and emotion data. The output is a data packet sent via the HTTPS protocol. Specifically, the device assembles this data into a single packet and sends it to the server via the Internet. If the transmission is successful, a notification is displayed to the user.

[1288] Step 5:

[1289] The server verifies the received data packet. The input is the data packet containing the identifier, user ID, and emotion data received by the server. The output is the result of verifying the validity of the data. Specifically, the server receives the data packet, queries a database (e.g., MySQL) to confirm that the identifier is not already in use, and checks the integrity of the data. If this verification is successful, it proceeds to the next step.

[1290] Step 6:

[1291] The server retrieves the points corresponding to the identifier from the database and adds them to the account associated with the user ID. The input is the identifier and the user ID. The output is the points added to the user account. Specifically, the server runs a query to the database to retrieve the points corresponding to the identifier, and then runs an update query to add those points to the user's account. The result of adding the points is recorded.

[1292] Step 7:

[1293] The server generates and sends a customized point addition notification to the user based on the emotion data. The input is the emotion data and the added point information. The output is a notification message sent to the user's device. Specifically, the server generates the notification message using a template engine (e.g., Jinja2) and sends the notification to the user's device via Firebase Cloud Messaging (FCM).

[1294] Step 8:

[1295] The server accumulates users' emotional data and performs analysis to increase motivation to collect points. The input is the accumulated emotional data and point data. The output is a report or aggregated data as the analysis results. Specifically, the server accumulates the emotional data in a time-series database (e.g., TimescaleDB) and analyzes the data using an analysis tool or machine learning library (e.g., scikit-learn). It generates aggregated results for specific periods and creates reports using tools such as JasperReports to report to each organization.

[1296] (Application example 2)

[1297] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."

[1298] In conventional point acquisition systems, users are only provided with uniform notifications and no individual feedback, making it difficult to motivate them. Furthermore, because the system does not take into account the user's emotional state, earning points becomes a mere chore, making it impossible to improve the user experience.

[1299] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.

[1300] In this invention, the server includes means for verifying the received data and retrieving points corresponding to the identifier from a database, means for adding the points to an account associated with the user, means for the terminal to analyze the user's facial expression and recognize emotions, means for transmitting a data packet including the emotion recognition data to the server, means for the server to generate a customized notification based on the emotion recognition data, and means for the server to transmit the notification to the user, thereby providing individualized feedback and increasing the user's motivation.

[1301] "User" means a person who uses the system to scan product codes and earn points.

[1302] "Code attached to product" refers to an identifier printed or affixed to a product, such as a QR code or barcode.

[1303] "Terminal" means a device that scans codes and processes and transmits data, such as a smartphone, tablet, or computer.

[1304] A "unique identifier" is a unique code used to individually identify a product or service.

[1305] "User information" refers to ID and profile information required for user identification and point management.

[1306] The "server" is a central computer system that validates incoming data, acquires and accumulates points, notifies users, and generates feedback.

[1307] A "database" is a storage device connected to the server that stores identifiers, points, user information, emotion data, and the like.

[1308] "Means for recognizing emotions" refers to the function of the terminal to analyze the user's facial expressions and identify emotions.

[1309] "Emotion recognition data" is information about emotions analyzed from the user's facial expressions.

[1310] "Customized notifications" are notifications that are individually created based on the user's emotions and point status.

[1311] A "data packet" is a unit of data that includes an identifier, user information, and emotion recognition data.

[1312] "Points" are points that users earn by scanning products and are added to their account.

[1313] The system allows a user to scan a code attached to a product, analyze it with a terminal, extract a unique identifier, and then transmit the extracted identifier and user information to a server. The server then verifies the received data, retrieves points corresponding to the identifier from a database, and adds the points to an account associated with the user. It also includes a function to increase user motivation by combining it with an emotion engine that recognizes the user's emotions.

[1314] Specifically, the system is implemented as follows.

[1315] 1. Hardware and software used

[1316] Device: Use a smartphone, tablet, or computer, which must have a camera.

[1317] Server: Receives and analyzes data, manages points, and generates feedback.

[1318] Camera: Used to capture the user's facial expressions and scan QR codes and barcodes.

[1319] software:

[1320] OpenCV: For QR code reading and image processing.

[1321] TensorFlow: A deep learning model for emotion recognition.

[1322] Requests: For sending data to the server.

[1323] 2. Overall system processing flow

[1324] Users scan the QR code or barcode attached to the product with their smartphone camera.

[1325] The device uses OpenCV to read the QR code and extract the unique identifier.

[1326] The device captures the user's facial expressions with a camera and inputs them into an emotion recognition model using TensorFlow to obtain emotional data.

[1327] The device sends the extracted identifier, user ID, and emotion data as a data packet to the server using Requests.

[1328] The server validates the received data, verifies that the identifier has not been used, retrieves the points from the database, and credits the user's account.

[1329] Based on the emotion recognition data, the server generates a customized notification for the user and sends it to the device, allowing the user to check their point status and feedback on their account page.

[1330] 3. Specific Examples

[1331] For example, a user scans a QR code attached to a newly purchased beverage with their smartphone camera. The QR code "D123456" is read and a unique identifier is extracted. The device then uses the camera to capture the user's face and recognizes that they are smiling using an emotion engine. The device then sends the extracted identifier "D123456," user ID "U1234," and emotion data of "smile" to the server. The server then verifies the received data and confirms that the identifier "D123456" is not already in use. 10 points are retrieved from the database and added to the user's account. A customized notification is sent to the user saying, "Smile and receive special points!", thereby increasing the user's motivation.

[1332] Prompt Sentence Examples

[1333] "Develop an app that allows users to scan a QR code attached to a product with their smartphone and recognizes emotions from the facial expression captured by the camera at the time. The app will send the extracted unique identifier, user ID, and emotion data to a server, add points, and send feedback."

[1334] In this way, the present invention realizes cooperation between the user, the terminal, and the server to provide a points acquisition system and further increase the user's motivation through feedback based on emotion recognition.

[1335] The flow of the specific processing in the application example 2 will be described with reference to FIG.

[1336] Step 1:

[1337] The user scans the QR code attached to the product with the smartphone camera. The input is the QR code attached to the product, and the code is photographed using a camera app. The output is an image of the photographed QR code.

[1338] Step 2:

[1339] The device parses the scanned QR code and extracts a unique identifier. The input is a photographed QR code image, and OpenCV is used to parse and decode the code. The output is a unique identifier.

[1340] Step 3:

[1341] The device captures the user's facial expression with a camera and recognizes the emotion. The input for this step is the user's face image, which is captured with a camera. The facial expression is analyzed using TensorFlow's emotion recognition model, and the recognized emotion data is obtained as the output.

[1342] Step 4:

[1343] The device sends the extracted identifier, user ID, and emotion data as a data packet to the server. The input of this step is the unique identifier, user ID, and emotion data, which are sent to the server using the Requests library. The output is the transmission result to the server.

[1344] Step 5:

[1345] The server validates the data received to ensure that the identifier is not already in use. The input is the received data packet, and the database is consulted to check the identifier's usage. The output is the result of the identifier validation.

[1346] Step 6:

[1347] The server retrieves points corresponding to the identifier from the database and adds them to the user's account. The input is the identifier and user ID, and the server retrieves the corresponding points from the database and reflects them in the user's account. The output is the added points information.

[1348] Step 7:

[1349] The server generates a customized notification based on the emotion recognition data and sends it to the user. The input is the emotion recognition data and point information, and the server generates a customized notification message based on the input. The output is the notification message.

[1350] Step 8:

[1351] The server generates notifications and sends them to the device, where the user can view them on their account page. The input is the notification message sent from the server to the device. The output is the notification message displayed to the user.

[1352] In this way, the entire system operates by processing input data at each step and generating output data required for the next step.

[1353] The specific processing unit 290 transmits the result of the specific processing to the headset type terminal 314. In the headset type terminal 314, the control unit 46A causes the speaker 240 and the display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.

[1354] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[1355] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the headset type terminal 314.

[1356] [Fourth embodiment]

[1357] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.

[1358] 7, a data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.

[1359] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[1360] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a control target 443. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the control target 443 are also connected to the bus 52.

[1361] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.

[1362] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).

[1363] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.

[1364] The control object 443 includes a display device, LEDs in the eyes, and motors for driving the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the emotions of the robot 414 can be expressed by controlling these motors. In addition, the facial expressions of the robot 414 can also be expressed by controlling the light emission state of the LEDs in the eyes of the robot 414.

[1365] Fig. 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Fig. 8, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.

[1366] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[1367] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[1368] In the robot 414, the processor 46 performs the reception output process. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.

[1369] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."

[1370] The present invention relates to a system in which a user scans a code attached to a product, a terminal analyzes it to extract a unique identifier, the terminal then transmits the extracted identifier and user information to a server, the server verifies the received data, retrieves points corresponding to the identifier from a database, and adds the points to an account associated with the user, thereby enabling efficient and fair point collection.

[1371] System configuration

[1372] User: A user of the System who scans the codes attached to products to collect points.

[1373] Device: The user's smartphone, tablet, or computer that scans, analyzes, and transmits the code.

[1374] Server: A central computer system that validates received data, acquires and accumulates points, and handles notifications and tallying.

[1375] Database: A storage device connected to the server, which stores Bellmark IDs, corresponding points, user information, etc.

[1376] Program processing overview

[1377] 1. User Behavior

[1378] The user scans the QR code or barcode attached to the product with their smartphone camera.

[1379] The device analyzes the image data captured by the camera and extracts a unique identifier.

[1380] 2. Data Transmission

[1381] The terminal transmits the extracted unique identifier and the user's ID information to the server.

[1382] The terminal notifies the user that the transmission was successful.

[1383] 3. Data Receipt and Verification

[1384] The server verifies the received identifier and user ID data.

[1385] The server verifies that the identifier is not already in use and checks the validity of the identification data.

[1386] 4. Earning and adding points

[1387] The server retrieves the points corresponding to the identifier from the database.

[1388] The server adds points to an account associated with the user.

[1389] The server records in the database whether the points were added successfully.

[1390] 5. User Notices

[1391] The server notifies the user of the result of the addition.

[1392] Users can check the points they have earned on their account page.

[1393] 6. Monthly Reports and Aggregation

[1394] The server generates aggregated data monthly or for a specified period.

[1395] The server reports the generated aggregate data to each organization and provides detailed statistics on a web dashboard.

[1396] Specific examples

[1397] 1. Mr. Tanaka (user) notices that the newly purchased stationery has a Bell Mark on it and scans the QR code with his smartphone camera.

[1398] 2. The device reads the QR code "BM123456" and extracts the unique identifier.

[1399] 3. The device sends the extracted identifier "BM123456" and user ID "U78910" to the server.

[1400] 4. The server validates the received data and verifies that the identifier "BM123456" is not already in use.

[1401] 5. The server retrieves the 10 points corresponding to the identifier from the database and adds them to Tanaka's school (school ID "S54321")

[1402] 6. The server notifies Tanaka of the result of the addition, and Tanaka confirms that the points have been added on his account page.

[1403] 7. At the end of the month, the server will report to school ID "S54321" the total points collected that month and how they were used.

[1404] In this way, users, terminals, and servers can cooperate to realize the digitalization of the Bell Mark campaign and provide a system that enables more efficient point collection and management.

[1405] The processing flow will be explained below.

[1406] Step 1:

[1407] The user scans the QR code or barcode on the product with their smartphone camera.

[1408] Step 2:

[1409] The device parses the data from the scanned code and extracts the unique Bellmark ID.

[1410] Step 3:

[1411] The terminal generates a data packet including the extracted Bellmark ID and user ID.

[1412] Step 4:

[1413] The terminal transmits the generated data packet to the server.

[1414] Step 5:

[1415] The server receives the data packets and verifies the correctness of the format.

[1416] Step 6:

[1417] The server checks for duplicate Bellmark IDs and verifies that they are not already in use.

[1418] Step 7:

[1419] The server retrieves the number of points corresponding to the Bellmark ID from the database.

[1420] Step 8:

[1421] The server retrieves the account information associated with the user ID from the database.

[1422] Step 9:

[1423] The server adds the acquired points to the user's account.

[1424] Step 10:

[1425] The server records the successful addition of points in the database and updates the history.

[1426] Step 11:

[1427] The server notifies the user that the points have been added successfully.

[1428] Step 12:

[1429] The user can check the points added on their account page.

[1430] Step 13:

[1431] The server generates point tally results for each school or organization for each specific period.

[1432] Step 14:

[1433] The aggregated results generated by the server are sent to the school or organization's registered email address.

[1434] Step 15:

[1435] The server provides detailed statistics in a web dashboard that interested parties can access and review the results.

[1436] Example 1

[1437] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."

[1438] Conventional point collection systems often rely on paper or manual input for point management, resulting in problems such as a lack of efficiency and accuracy. Furthermore, the method for users to collect points is cumbersome and time-consuming, which can reduce motivation to collect points. Additionally, there is a risk of fraudulent point acquisition and duplicate registration. A system that solves these problems and enables efficient and fair point collection and management is needed.

[1439] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.

[1440] In this invention, the server includes: means for a user to scan a code attached to a product; means for a terminal to analyze the scanned code and extract a unique identifier; means for the terminal to transmit the extracted identifier and user information to the server; means for the server to verify the received data and obtain points corresponding to the identifier from a database; means for the server to add the points to an account associated with the user; means for the server to generate aggregate data monthly or at specified intervals and report it to each organization; and means for a user to scan the digital code using a smart device to achieve efficient and fair point collection, thereby simplifying and speeding up the point collection process and enabling accurate and fair point management.

[1441] A "user" is a consumer or individual who scans a code on a product and utilizes the points collection system.

[1442] "Device" means a device used by a User, such as a smartphone, tablet, or computer, that scans, analyzes, and transmits the Code.

[1443] A "code" is a code that contains information to uniquely identify a product, such as a QR code or barcode attached to a product.

[1444] A "unique identifier" is data obtained by analyzing a code that uniquely represents a particular product or point.

[1445] "User information" is information for identifying a user, and includes, for example, a user ID and account information.

[1446] The "server" is a central computer system that verifies received data, acquires and adds points, and notifies and tallies points.

[1447] A "database" is a storage device connected to a server, and is a system for storing codes, identifiers, corresponding points, user information, etc.

[1448] "Points" are a numerical value that can be earned as a reward or benefit by scanning a product code.

[1449] An "account" is a user's individual data area on the server that records points and is associated with the user.

[1450] "Aggregated Data" means data that compiles points and other statistical information obtained over a certain period of time.

[1451] "Organization" means the entity or institution for which points are collected and reported, such as an educational institution or business.

[1452] A "smart device" is an internet-enabled mobile device, such as a smartphone or tablet, that a user uses to scan a code on a product.

[1453] A "digital code" is information expressed in digital form, such as a QR code or barcode, and is used to identify products and earn points.

[1454] The present invention relates to a system in which a user scans a code attached to a product, a terminal analyzes it to extract a unique identifier, the terminal then transmits the extracted identifier and user information to a server, the server verifies the received data, retrieves points corresponding to the identifier from a database, and adds the points to an account associated with the user. To implement this system, the following hardware and software are required:

[1455] Hardware Configuration

[1456] User device: A smartphone, tablet, or computer equipped with a camera and internet connectivity.

[1457] Server: A high-performance computer equipped with a CPU, memory, and network interface for receiving, validating, and processing data.

[1458] Database: A storage device connected to a server that stores identifiers, points, user information, etc.

[1459] Software Configuration

[1460] Barcode scanner application: An application installed on a device to scan QR codes and barcodes using the device's camera.

[1461] Google ML Kit: A library for parsing image data and extracting unique identifiers from scanned code.

[1462] HTTPS protocol: A communication protocol for securely transmitting data from a device to a server.

[1463] Backend framework: A framework for receiving, validating, and processing data on the server side, such as Python's Django or Node.js.

[1464] Database management system: A database for managing points and user information, such as MySQL or PostgreSQL.

[1465] Firebase Cloud Messaging: A push notification service for notifying users.

[1466] Data aggregation tools: Tools for generating aggregated data and reporting, such as Apache Kafka or Tableau.

[1467] Specific examples of processing

[1468] 1. A user purchases stationery and scans the QR code on the packaging with their smartphone camera.

[1469] 2. The device uses Google ML Kit to analyze the scanned QR code and extract a unique identifier, such as "BM123456."

[1470] 3. The device sends the identifier "BM123456" and user ID "U78910" to the server using the HTTPS protocol.

[1471] 4. The server validates the incoming data using the Python Django framework to ensure the identifier is not already in use.

[1472] 5. The server retrieves 10 points from the MySQL database and adds the points to the user ID "U78910".

[1473] 6. The server uses Firebase Cloud Messaging to notify the user that "10 points have been added."

[1474] 7. At the end of the month, the server generates aggregated data using Apache Kafka or Tableau and reports it to, for example, school ID "S54321."

[1475] Example prompts for generative AI models

[1476] Below are some example prompts to input to a generative AI model:

[1477] A user scans a code attached to a product. Describe the process of a system that extracts a unique identifier from the code the user scanned (e.g., QR code, barcode), and sends that identifier and user information to a server. The server validates the received data, retrieves the points corresponding to the identifier from a database, adds them to the user's account, and notifies the user of the result. The system also performs monthly reporting and aggregation. Please also describe what hardware and software is used.

[1478] This allows users, terminals, and servers to cooperate to achieve efficient and accurate point collection and management.The present invention contributes to the digitization of point systems, particularly in educational institutions and public organizations.

[1479] The flow of the identification process in the first embodiment will be described with reference to FIG.

[1480] Step 1:

[1481] The user scans the code attached to the product.

[1482] Specific behavior: The user launches the camera app or barcode scanner app on their smartphone and scans the QR code or barcode of a product.

[1483] Input: QR code or barcode printed on product packaging.

[1484] Output: QR code or barcode image data.

[1485] Step 2:

[1486] The device parses the scanned code to extract a unique identifier.

[1487] Specific operation: The device uses an image recognition library such as Google ML Kit to analyze the image data of the QR code or barcode and extract a unique identifier such as "BM123456."

[1488] Input: QR code or barcode image data.

[1489] Output: A unique identifier (e.g. "BM123456").

[1490] Step 3:

[1491] The terminal transmits the extracted identifier and user information to the server.

[1492] Specific operation: The terminal sends the identifier "BM123456" and the user ID "U78910" to the server using the HTTPS protocol.

[1493] Input: A unique identifier and user information.

[1494] Output: The result of sending data to the server.

[1495] Step 4:

[1496] The server validates the received data.

[1497] What happens: The server uses the Python Django framework to validate the unique identifier and user information, checking in the database to see if the identifier is already in use.

[1498] Input: Submitted identifier and user information.

[1499] Output: The validity of the identifier.

[1500] Step 5:

[1501] The server retrieves the points corresponding to the identifier from the database and adds them to the user's account.

[1502] Specific operation: The server retrieves 10 points corresponding to the identifier "BM123456" from the MySQL database and adds the points to the account associated with the user ID "U78910".

[1503] Input: Identifier and User ID.

[1504] Output: Points addition result.

[1505] Step 6:

[1506] The server will notify the user after adding the points.

[1507] Specific behavior: The server uses Firebase Cloud Messaging to send a notification to the user saying "10 points added."

[1508] Input: Point addition result.

[1509] Output: Notification sending result.

[1510] Step 7:

[1511] The server generates aggregated data monthly or for a specified period and reports it to each organization.

[1512] Specific operation: The server uses Apache Kafka or Tableau to generate aggregated data for specific periods and report it to the organization (e.g., school ID "S54321").

[1513] Input: Point data within a period.

[1514] Output: Aggregated data and reports.

[1515] In this way, through the specific operations performed at each step, the user, terminal, and server work together to achieve efficient and accurate point collection and management.

[1516] (Application example 1)

[1517] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."

[1518] Modern electronic payment services require a method for users to efficiently acquire and manage points when purchasing products. However, current systems have problems with adding points and checking balances, resulting in a poor user experience. In addition, tallying points and reporting them to various organizations is cumbersome, requiring significant effort from all parties involved. To solve these issues, a more efficient and user-friendly points management system is needed.

[1519] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.

[1520] In this invention, the server includes means for a user to scan a code attached to a product, means for a terminal to analyze the scanned code and extract a unique identifier, means for the terminal to transmit the extracted identifier and user information to the server, means for the server to verify the received data and obtain points corresponding to the identifier from a database, means for the server to add the points to an account associated with the user and notify the user of the result, means for the user to check the remaining points, means for the user to use the points for everyday shopping, and means for the server to generate a summary result for each specific period and report it to each organization, thereby enabling efficient and user-friendly point management and summary.

[1521] "User" refers to an individual or customer who uses this system.

[1522] "Product" refers to the goods and services that consumers purchase.

[1523] "Code" refers to anything that contains identification information, such as a QR code or barcode, attached to a product.

[1524] "Terminal" refers to the electronic device a user uses to scan a code, such as a smartphone, tablet, or computer.

[1525] "Unique Identifier" refers to unique identifying information extracted from a scanned code.

[1526] "User information" refers to a user's unique ID and account information.

[1527] "Server" refers to the central computer system that receives data, verifies data, manages points, etc.

[1528] "Database" refers to a centrally managed storage device for storing identifiers, user information, point information, and the like.

[1529] "Points" refers to a numerical reward that a user can receive when purchasing a product.

[1530] "Balance" refers to the total number of points currently held in a User's account.

[1531] "Account" refers to the personal digital space required for a User to manage their Points.

[1532] "Aggregated Results" refers to a summary of points data accumulated over a specified period of time.

[1533] "Reporting" refers to the act of communicating the results of the survey to relevant parties and organizations.

[1534] "Daily shopping" refers to general consumption activities that users frequently engage in in their daily lives.

[1535] This invention provides a system that allows users to scan codes attached to products and efficiently acquire and manage points. The program for realizing this system can be explained as follows.

[1536] System Program

[1537] The system has three main components: the user, the device, and the server. The user uses a device such as a smartphone or tablet to scan a code attached to a product. The device analyzes it and extracts a unique identifier. It then sends this identifier and user information to the server. The server verifies this data and retrieves the points corresponding to the identifier from a database. The points are added to the user's account and notified to the user.

[1538] The hardware used is a smartphone or tablet as the terminal, and a high-performance computer as the server. The terminal is equipped with a camera to scan QR codes and barcodes, and the software uses the Python qrcode library and the requests library to process HTTP requests.

[1539] Processing flow

[1540] When a user scans a product's QR code, the device uses the device's camera. The device analyzes the image data captured by the camera using the qrcode library to extract a unique identifier. This identifier and the user's ID information are sent to the server using the requests library. The server validates the received data and checks whether the identifier is already in use. It then retrieves the points corresponding to the identifier from the database and adds them to the user's account. Finally, it notifies the user of the addition result and allows them to check their point balance.

[1541] Specific examples

[1542] Consider the following example: A user scans the QR code of a newly purchased beverage product with their smartphone camera. The device extracts an identifier from the QR code and sends this identifier and the user ID to the server. The server validates the received data and verifies that the identifier is not already in use. The server then retrieves the points corresponding to the identifier from the database and adds them to the user's account. The server then notifies the user that "5 points have been added. Current balance: 100 points." The user can check their point balance through the app and use them for everyday shopping as needed.

[1543] Prompt Sentence Examples

[1544] "Please create an application program that allows the user to scan the QR code, obtain an identifier, and send it to the server to add points. Please also include a function to notify the user whether the points were added successfully based on the response from the server."

[1545] In this way, the entire system for carrying out the present invention can be specifically implemented. The operation of the entire system is simple and user-friendly, making daily point management more efficient and improving operability.

[1546] The flow of the specific processing in the application example 1 will be described with reference to FIG.

[1547] Step 1:

[1548] The user scans the product's QR code.

[1549] Input: The user scans the QR code with their smartphone camera.

[1550] Output: QR code image data

[1551] How it works: The user points their device's camera at the QR code on the product and scans it using a dedicated scanning app. The camera captures the image data of the QR code.

[1552] Step 2:

[1553] The device analyzes the QR code image data and extracts a unique identifier.

[1554] Input: QR code image data

[1555] Output: A unique identifier (e.g. "BM123456")

[1556] How it works: The device uses the qrcode library to parse the QR code data. From the results of the parsing, it extracts the unique identifier embedded in the QR code. The identifier is generated by image processing and decoding.

[1557] Step 3:

[1558] The terminal transmits the extracted identifier and user information to the server.

[1559] Input: Unique identifier, user ID (e.g. "U78910")

[1560] Output: Notification of completion of data transmission to the server

[1561] Operation: The device sends the extracted unique identifier and user information (user ID) to the server using the requests library. The server notifies the user whether the transmission was successful.

[1562] Step 4:

[1563] The server verifies the received data and retrieves the points corresponding to the identifier from the database.

[1564] Input: Unique identifier, user ID

[1565] Output: Points corresponding to the identifier (e.g. 10 points)

[1566] Operation: The server validates the received data to ensure the identifier is not already in use. It then retrieves the points corresponding to the identifier from the database. It pulls the points data based on the database query.

[1567] Step 5:

[1568] The server adds the points to an account associated with the user.

[1569] Input: User ID, acquired points

[1570] Output: Notification of successful point addition

[1571] Operation: The server adds the earned points to the user's account. After the addition process is complete, it records the result in the database and confirms that the addition was successful.

[1572] Step 6:

[1573] The server notifies the user of the result of the addition.

[1574] Input: Notification of successful point addition, user information

[1575] Output: A notification message to the user (e.g. "10 points added. Current balance: 150 points")

[1576] Operation: The server generates a message informing the user of the result of the addition and sends it to the user's terminal. The user can confirm that the points have been added on their account page.

[1577] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.

[1578] The present invention relates to a system in which a user scans a code attached to a product, the terminal analyzes it to extract a unique identifier, the terminal then transmits the extracted identifier and user information to a server, the server verifies the received data, retrieves points corresponding to the identifier from a database, and adds the points to an account associated with the user. The present invention also includes a function to increase user motivation by combining an emotion engine that recognizes the user's emotions.

[1579] System configuration

[1580] User: A user of the System who scans the codes attached to products to collect points.

[1581] Device: A user's smartphone, tablet, or computer that scans, analyzes, transmits, and recognizes emotions.

[1582] Server: A central computer system that verifies received data, acquires and adds points, and sends notifications and aggregates data. It also stores and analyzes emotional data.

[1583] Database: A storage device connected to the server, which stores Bell Mark IDs, corresponding points, user information, emotional data, etc.

[1584] Emotion engine: A system that analyzes a user's facial expressions to recognize their emotions and provides appropriate feedback based on the results.

[1585] Program processing overview

[1586] 1. User Behavior

[1587] The user scans the QR code or barcode attached to the product with their smartphone camera.

[1588] The device analyzes the image data captured by the camera and extracts a unique identifier.

[1589] 2. Emotion recognition

[1590] The device captures the user's facial expressions with a camera and recognizes their emotions using an emotion engine.

[1591] The terminal analyzes the recognized emotion data and includes it in a data packet to be sent to the server together with the identifier.

[1592] 3. Data Transmission

[1593] The device transmits the extracted unique identifier, user ID, and emotion data to the server.

[1594] The terminal notifies the user that the transmission was successful.

[1595] 4. Data Receipt and Verification

[1596] The server verifies the received data packet of identifier, user ID and emotion data.

[1597] The server verifies that the identifier is not already in use and checks the validity of the data.

[1598] 5. Earning and accumulating points

[1599] The server retrieves the points corresponding to the identifier from the database.

[1600] The server retrieves the account information associated with the user ID from the database.

[1601] The server will add the points earned to the user's account.

[1602] The server records in the database whether the points were added successfully.

[1603] 6. User Notices

[1604] The server transmits a customized point addition notification to the user based on the emotion data.

[1605] Users can view their accumulated points and feedback on their account page.

[1606] 7. Data accumulation and analysis

[1607] The server accumulates the user's emotional data and analyzes it to increase motivation to collect points.

[1608] The server generates point tally results for each school or organization for each specific period.

[1609] 8. Reporting and Feedback

[1610] The server reports the generated aggregate data to each organization and provides detailed statistics on a web dashboard.

[1611] Specific examples

[1612] 1. Mr. Tanaka (user) notices that the newly purchased stationery has a Bell Mark on it and scans the QR code with his smartphone camera.

[1613] 2. The device reads the QR code "BM123456" and extracts the unique identifier.

[1614] 3. The device captures Tanaka's facial expression with its camera, and the emotion engine recognizes that she is smiling.

[1615] 4. The device sends the extracted identifier "BM123456", user ID "U78910", and emotion data to the server.

[1616] 5. The server validates the received data and verifies that the identifier "BM123456" is not already in use.

[1617] 6. The server retrieves the 10 points corresponding to the identifier from the database and adds them to Tanaka's school (school ID "S54321")

[1618] 7. The server takes into account Tanaka's emotional data and sends a customized notification saying, "Smiling Tanaka, 10 points added to your school!"

[1619] 8. Tanaka checks her account page to see that points have been added and to see her feedback.

[1620] 9. At the end of the month, the server will report to school ID "S54321" the total points collected that month and how they were used.

[1621] In this way, users, terminals, and servers can cooperate to realize the digitalization of the Bell Mark campaign and provide a system that further increases user motivation through feedback based on emotion recognition.

[1622] The processing flow will be explained below.

[1623] Step 1:

[1624] The user scans the QR code or barcode on the product with their smartphone camera.

[1625] Step 2:

[1626] The device parses the data from the scanned code and extracts the unique Bellmark ID.

[1627] Step 3:

[1628] The device captures the user's facial expressions with a camera and recognizes their emotions using an emotion engine.

[1629] Step 4:

[1630] The terminal analyzes the recognized emotion data and generates a data packet including a Bellmark ID, a user ID, and the emotion data.

[1631] Step 5:

[1632] The terminal transmits the generated data packet to the server.

[1633] Step 6:

[1634] The server receives the data packets and verifies the correctness of the format.

[1635] Step 7:

[1636] The server checks for duplicate Bellmark IDs and verifies that they are not already in use.

[1637] Step 8:

[1638] The server retrieves the number of points corresponding to the Bellmark ID from the database.

[1639] Step 9:

[1640] The server retrieves the account information associated with the user ID from the database.

[1641] Step 10:

[1642] The server adds the acquired points to the user's account.

[1643] Step 11:

[1644] The server records the successful addition of points in the database and updates the history.

[1645] Step 12:

[1646] The server generates a customized point addition notification for the user based on the emotion data.

[1647] Step 13:

[1648] Sends server-generated notifications to users.

[1649] Step 14:

[1650] The user can check the points and notifications added on their account page.

[1651] Step 15:

[1652] The server accumulates the user's emotional data and analyzes it to increase motivation to collect points.

[1653] Step 16:

[1654] The server generates point tally results for each school or organization for each specific period.

[1655] Step 17:

[1656] The server will send the generated aggregated results to the registered email address of each organization.

[1657] Step 18:

[1658] The server provides detailed statistics in a web dashboard that interested parties can access and review the results.

[1659] Specific examples

[1660] 1. A user notices that a newly purchased stationery item has a Bell Mark on it and scans the QR code with their smartphone camera.

[1661] 2. The device reads the QR code "BM123456" and extracts the unique identifier.

[1662] 3. The device captures Tanaka (the user)'s facial expression with a camera, and the emotion engine recognizes that he is smiling.

[1663] 4. The device generates a data packet containing the extracted identifier "BM123456", user ID "U78910", and emotion data.

[1664] 5. The terminal sends the generated data packet to the server.

[1665] 6. The server verifies that the received data packet is in the correct format.

[1666] 7. The server confirms that the Bellmark ID "BM123456" is not already in use.

[1667] 8. The server retrieves the 10 points corresponding to the Bellmark ID "BM123456" from the database.

[1668] 9. The server retrieves the account information for the school ID "S54321" associated with the user ID "U78910" from the database.

[1669] 10. The server will add the 10 points acquired to the account of school ID "S54321".

[1670] 11. The server records the successful addition of points in the database and updates the history.

[1671] 12. The server generates special feedback based on Tanaka's emotional data in response to her smile.

[1672] 13. The server creates a notification saying "Smiling Tanaka, 10 points added to your school!" and sends it to Tanaka.

[1673] 14. Tanaka (user) checks the added points and notification details on his / her account page.

[1674] 15. The server accumulates Tanaka's emotional data and analyzes its use and motivation.

[1675] 16. At the end of the month, the server generates the points summary results for school ID "S54321".

[1676] 17. The server sends the generated summary results to the school's email address.

[1677] 18. The server will provide detailed statistics in a web dashboard that interested parties can access and review the results.

[1678] Example 2

[1679] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."

[1680] In conventional point collection systems, user input operations were cumbersome and users could only respond uniformly without considering their emotions or motivation. This led to a decline in users' motivation to use the system. Furthermore, there were problems with the system's insufficient point tallying and provision of appropriate feedback to users, making it difficult to implement effective point collection campaigns.

[1681] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for verifying received data and retrieving points corresponding to the identifier from a database, means for adding points to an account associated with the user, and means for accumulating and analyzing emotion data. This simplifies the user's input operation and enables the provision of emotion-based feedback. Furthermore, the aggregation and reporting of points is automated, enabling an effective point collection campaign.

[1682] "User" means a user of the System who scans the code attached to a product to collect points.

[1683] "Device" refers to the smartphone, tablet, or computer used by a User that scans, analyzes, transmits codes, and recognizes emotions.

[1684] The "server" is a central computer system that verifies received data, acquires and adds points, and sends notifications and tallies, and is also a device that stores and analyzes emotional data.

[1685] "Code" refers to a QR code, barcode, or other code attached to a product that can be scanned by a user.

[1686] "Unique Identifier" refers to a unique and individually identifiable identifier that is extracted by a device by scanning a code.

[1687] An "emotion engine" refers to software or hardware that has the ability to analyze a user's facial expressions, recognize their emotions, and provide appropriate feedback based on the results.

[1688] "Database" refers to a system in which identifiers, points, user information, emotion data, etc. are stored in a storage device connected to a server.

[1689] "Points" refers to rewards or values ​​recorded in a database corresponding to a particular identifier and credited to a user's account.

[1690] "Account" refers to a digital record, including profile information and points information, associated with a User.

[1691] A "data packet" refers to a collection of data that a terminal sends to a server in the form of an identifier, a user ID, and emotion data.

[1692] "Notification" refers to information sent from the server to the user, including messages such as points being added or feedback.

[1693] "Aggregated results" refers to data generated by the server for each specific period that compiles the total points and related information for each organization or group.

[1694] This invention is a system in which a user scans a code attached to a product, a terminal analyzes it to extract a unique identifier, the terminal then transmits the extracted identifier and user information to a server, the server verifies the received data, retrieves points corresponding to the identifier from a database, and adds the points to an account associated with the user.

[1695] This system configuration is specifically implemented as follows.

[1696] System configuration

[1697] User: A user of this system who collects points by scanning codes (QR codes, barcodes, etc.) attached to products.

[1698] Device: A smartphone, tablet, or computer used by a user that scans, analyzes, and transmits codes and performs emotion recognition. The device should preferably be equipped with a camera module and an image processing library (e.g., OpenCV).

[1699] Server: This is the central computer system that verifies the received data, acquires and adds points, notifies users, and aggregates them. It also stores and analyzes emotional data.

[1700] Database: A storage device connected to the server that stores identifiers, points, user information, emotion data, etc. For the database, MySQL or PostgreSQL is used, for example.

[1701] Emotion engine: A system that analyzes the user's facial expressions to recognize emotions and provides appropriate feedback based on the results. Microsoft Azure Face API and other tools are used for emotion recognition.

[1702] Operational Overview

[1703] A user scans a QR code or barcode attached to a product with a smartphone camera. The device analyzes the image data acquired by the camera and uses an image processing library (e.g., OpenCV) to extract a unique identifier. The extracted identifier is temporarily stored in the device's memory.

[1704] Next, the device captures the user's facial expression with a camera. It analyzes the captured facial image data using an emotion engine (e.g., Microsoft Azure Face API) to recognize the user's emotion. The recognized emotion data is included in a data packet sent to the server along with an identifier. This data packet is sent to the server using the HTTPS protocol.

[1705] The server verifies the received data packet, checks the database to see if the identifier has already been used, and checks the validity of the data. It retrieves the points corresponding to the identifier from the database and adds them to the account associated with the user ID. If the points are successfully added, it records the information in the database.

[1706] Notifications and Analytics

[1707] The server generates a customized point-added notification for the user based on the emotion data. The message is created using a template engine (e.g., Jinja2) and sent to the user's device using a notification service such as Firebase Cloud Messaging (FCM). This notification is displayed on the user's device as a message such as "Your points have been added!"

[1708] The server also accumulates user emotional data and analyzes it to increase motivation to collect points. Point tally results are generated for each school or organization for a specific period and reported to each organization using a report generation tool such as JasperReports.

[1709] Specific examples

[1710] Specific operation examples of the system

[1711] 1. Mr. Tanaka (user) notices that the newly purchased product has a Bell Mark on it and scans the QR code with his smartphone camera.

[1712] 2. The device uses OpenCV to read the QR code "BM123456" and extract the unique identifier.

[1713] 3. Tanaka's facial expression is captured by the camera and the Microsoft Azure Face API is used to recognize that she is smiling.

[1714] 4. The extracted identifier "BM123456", user ID "U78910", and emotion data are sent to the server via the HTTPS protocol.

[1715] 5. The server validates the data received through Nginx and checks the database (MySQL) to ensure that the identifier "BM123456" is not already in use.

[1716] 6. Retrieve 10 points corresponding to the identifier from the database and add them to Tanaka's account.

[1717] 7. Use a template engine (Jinja2) to generate a customized notification that says, "Smiling Tanaka, you've earned 10 points!" and send it via Firebase Cloud Messaging.

[1718] 8. Tanaka checks the points added and the feedback on her smartphone screen.

[1719] 9. At the end of the month, use JasperReports to create a report for school ID "S54321" that shows the total points collected that month and how they were used.

[1720] Prompt Sentence Examples

[1721] "Please explain the process of the program, which allows a user to scan the QR code attached to a newly purchased stationery item with their smartphone, communicate with the server, and add points to the user's account. Please also clearly state the specific steps and processes, as well as the names of any hardware or software required for the process."

[1722] The flow of the identification process in the second embodiment will be described with reference to FIG.

[1723] Step 1:

[1724] The user scans the code attached to the product. The input is a QR code or barcode provided by the user to the smartphone camera. The output is image data captured by the camera and stored in the device's memory. Specifically, the camera app is launched and the QR code or barcode is captured on the screen. This image data is used in the next analysis process.

[1725] Step 2:

[1726] The device analyzes the scanned code and extracts a unique identifier. The input is image data captured by the camera. The output is a unique identifier extracted using an image processing library (e.g., OpenCV). Specifically, the QR code or barcode is analyzed to obtain the text information of the identifier. This identifier is used in the next data transmission process.

[1727] Step 3:

[1728] The device captures the user's facial expression and recognizes the emotion using an emotion engine. The input is an image of the user's facial expression captured by the camera. The output is emotion data analyzed by the emotion recognition engine (for example, Microsoft Azure Face API). Specifically, the camera captures an image of the user's face in real time and sends the data to the emotion engine for analysis. The emotion data is then sent to the server together with an identifier.

[1729] Step 4:

[1730] The device sends the extracted identifier, user ID, and emotion data to the server. The input is the above-mentioned identifier, user ID, and emotion data. The output is a data packet sent via the HTTPS protocol. Specifically, the device assembles this data into a single packet and sends it to the server via the Internet. If the transmission is successful, a notification is displayed to the user.

[1731] Step 5:

[1732] The server verifies the received data packet. The input is the data packet containing the identifier, user ID, and emotion data received by the server. The output is the result of verifying the validity of the data. Specifically, the server receives the data packet, queries a database (e.g., MySQL) to confirm that the identifier is not already in use, and checks the integrity of the data. If this verification is successful, it proceeds to the next step.

[1733] Step 6:

[1734] The server retrieves the points corresponding to the identifier from the database and adds them to the account associated with the user ID. The input is the identifier and the user ID. The output is the points added to the user account. Specifically, the server runs a query to the database to retrieve the points corresponding to the identifier, and then runs an update query to add those points to the user's account. The result of adding the points is recorded.

[1735] Step 7:

[1736] The server generates and sends a customized point addition notification to the user based on the emotion data. The input is the emotion data and the added point information. The output is a notification message sent to the user's device. Specifically, the server generates the notification message using a template engine (e.g., Jinja2) and sends the notification to the user's device via Firebase Cloud Messaging (FCM).

[1737] Step 8:

[1738] The server accumulates users' emotional data and performs analysis to increase motivation to collect points. The input is the accumulated emotional data and point data. The output is a report or aggregated data as the analysis results. Specifically, the server accumulates the emotional data in a time-series database (e.g., TimescaleDB) and analyzes the data using an analysis tool or machine learning library (e.g., scikit-learn). It generates aggregated results for specific periods and creates reports using tools such as JasperReports to report to each organization.

[1739] (Application example 2)

[1740] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."

[1741] In conventional point acquisition systems, users are only provided with uniform notifications and no individual feedback, making it difficult to motivate them. Furthermore, because the system does not take into account the user's emotional state, earning points becomes a mere chore, making it impossible to improve the user experience.

[1742] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.

[1743] In this invention, the server includes means for verifying the received data and retrieving points corresponding to the identifier from a database, means for adding the points to an account associated with the user, means for the terminal to analyze the user's facial expression and recognize emotions, means for transmitting a data packet including the emotion recognition data to the server, means for the server to generate a customized notification based on the emotion recognition data, and means for the server to transmit the notification to the user, thereby providing individualized feedback and increasing the user's motivation.

[1744] "User" means a person who uses the system to scan product codes and earn points.

[1745] "Code attached to product" refers to an identifier printed or affixed to a product, such as a QR code or barcode.

[1746] "Terminal" means a device that scans codes and processes and transmits data, such as a smartphone, tablet, or computer.

[1747] A "unique identifier" is a unique code used to individually identify a product or service.

[1748] "User information" refers to ID and profile information required for user identification and point management.

[1749] The "server" is a central computer system that validates incoming data, acquires and accumulates points, notifies users, and generates feedback.

[1750] A "database" is a storage device connected to the server that stores identifiers, points, user information, emotion data, and the like.

[1751] "Means for recognizing emotions" refers to the function of the terminal to analyze the user's facial expressions and identify emotions.

[1752] "Emotion recognition data" is information about emotions analyzed from the user's facial expressions.

[1753] "Customized notifications" are notifications that are individually created based on the user's emotions and point status.

[1754] A "data packet" is a unit of data that includes an identifier, user information, and emotion recognition data.

[1755] "Points" are points that users earn by scanning products and are added to their account.

[1756] The system allows a user to scan a code attached to a product, analyze it with a terminal, extract a unique identifier, and then transmit the extracted identifier and user information to a server. The server then verifies the received data, retrieves points corresponding to the identifier from a database, and adds the points to an account associated with the user. It also includes a function to increase user motivation by combining it with an emotion engine that recognizes the user's emotions.

[1757] Specifically, the system is implemented as follows.

[1758] 1. Hardware and software used

[1759] Device: Use a smartphone, tablet, or computer, which must have a camera.

[1760] Server: Receives and analyzes data, manages points, and generates feedback.

[1761] Camera: Used to capture the user's facial expressions and scan QR codes and barcodes.

[1762] software:

[1763] OpenCV: For QR code reading and image processing.

[1764] TensorFlow: A deep learning model for emotion recognition.

[1765] Requests: For sending data to the server.

[1766] 2. Overall system processing flow

[1767] Users scan the QR code or barcode attached to the product with their smartphone camera.

[1768] The device uses OpenCV to read the QR code and extract the unique identifier.

[1769] The device captures the user's facial expressions with a camera and inputs them into an emotion recognition model using TensorFlow to obtain emotional data.

[1770] The device sends the extracted identifier, user ID, and emotion data as a data packet to the server using Requests.

[1771] The server validates the received data, verifies that the identifier has not been used, retrieves the points from the database, and credits the user's account.

[1772] Based on the emotion recognition data, the server generates a customized notification for the user and sends it to the device, allowing the user to check their point status and feedback on their account page.

[1773] 3. Specific Examples

[1774] For example, a user scans a QR code attached to a newly purchased beverage with their smartphone camera. The QR code "D123456" is read and a unique identifier is extracted. The device then uses the camera to capture the user's face and recognizes that they are smiling using an emotion engine. The device then sends the extracted identifier "D123456," user ID "U1234," and emotion data of "smile" to the server. The server then verifies the received data and confirms that the identifier "D123456" is not already in use. 10 points are retrieved from the database and added to the user's account. A customized notification is sent to the user saying, "Smile and receive special points!", thereby increasing the user's motivation.

[1775] Prompt Sentence Examples

[1776] "Develop an app that allows users to scan a QR code attached to a product with their smartphone and recognizes emotions from the facial expression captured by the camera at the time. The app will send the extracted unique identifier, user ID, and emotion data to a server, add points, and send feedback."

[1777] In this way, the present invention realizes cooperation between the user, the terminal, and the server to provide a points acquisition system and further increase the user's motivation through feedback based on emotion recognition.

[1778] The flow of the specific processing in the application example 2 will be described with reference to FIG.

[1779] Step 1:

[1780] The user scans the QR code attached to the product with the smartphone camera. The input is the QR code attached to the product, and the code is photographed using a camera app. The output is an image of the photographed QR code.

[1781] Step 2:

[1782] The device parses the scanned QR code and extracts a unique identifier. The input is a photographed QR code image, and OpenCV is used to parse and decode the code. The output is a unique identifier.

[1783] Step 3:

[1784] The device captures the user's facial expression with a camera and recognizes the emotion. The input for this step is the user's face image, which is captured with a camera. The facial expression is analyzed using TensorFlow's emotion recognition model, and the recognized emotion data is obtained as the output.

[1785] Step 4:

[1786] The device sends the extracted identifier, user ID, and emotion data as a data packet to the server. The input of this step is the unique identifier, user ID, and emotion data, which are sent to the server using the Requests library. The output is the transmission result to the server.

[1787] Step 5:

[1788] The server validates the data received to ensure that the identifier is not already in use. The input is the received data packet, and the database is consulted to check the identifier's usage. The output is the result of the identifier validation.

[1789] Step 6:

[1790] The server retrieves points corresponding to the identifier from the database and adds them to the user's account. The input is the identifier and user ID, and the server retrieves the corresponding points from the database and reflects them in the user's account. The output is the added points information.

[1791] Step 7:

[1792] The server generates a customized notification based on the emotion recognition data and sends it to the user. The input is the emotion recognition data and point information, and the server generates a customized notification message based on the input. The output is the notification message.

[1793] Step 8:

[1794] The server generates notifications and sends them to the device, where the user can view them on their account page. The input is the notification message sent from the server to the device. The output is the notification message displayed to the user.

[1795] In this way, the entire system operates by processing input data at each step and generating output data required for the next step.

[1796] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the control target 443 to output the result of the specific processing. The microphone 238 acquires voice indicating a user input regarding the result of the specific processing. The control unit 46A transmits voice data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the voice data.

[1797] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[1798] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the robot 414.

[1799] The emotion identification model 59 as an emotion engine may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to an emotion map (see FIG. 9), which is a specific mapping. Similarly, the emotion identification model 59 may determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.

[1800] FIG. 9 is a diagram illustrating an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and actions arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion includes both affect and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.

[1801] These emotions are distributed in the 3 o'clock direction on emotion map 400, and typically fluctuate between relief and anxiety. In the right half of emotion map 400, situational awareness dominates over internal sensations, resulting in a sense of calm.

[1802] The inside of emotion map 400 represents what is going on in the mind, and the outside of emotion map 400 represents behavior, so the further you go outside emotion map 400, the more visible the emotions become (the more they are expressed in behavior).

[1803] Human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. Emotions can also be created for robots, automobiles, and motorcycles, based on various balances, such as posture and remaining battery life. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. An emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on Voice Emotion Recognition and Emotional Brain Physiological Signal Analysis Systems, Tokushima University, Doctoral Dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map lists emotions belonging to the "reaction" domain, where sensation is dominant. The right half of the emotion map lists emotions belonging to the "situation" domain, where situational awareness is dominant.

[1804] The emotion map defines two emotions that promote learning. One is a negative emotion on the situation side, around the middle of "repentance" or "reflection." In other words, this occurs when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is a positive emotion on the response side, around "desire." In other words, this occurs when the robot experiences positive feelings such as "I want more" or "I want to know more."

[1805] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values ​​indicating each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple pieces of training data that are combinations of user input and emotion values ​​indicating each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions that are located close to each other have similar values, as in the emotion map 900 shown in FIG. 10. FIG. 10 shows an example in which multiple emotions, "relieved," "calm," and "reassuring," have similar emotion values.

[1806] The system according to the present disclosure has been described above mainly with respect to the functions of the data processing device 12, but the system according to the present disclosure is not necessarily implemented on a server. The system according to the present disclosure may be implemented as a general information processing system. The present disclosure may be implemented, for example, as a software program running on a personal computer or an application running on a smartphone, etc. The method according to the present disclosure may be provided to users in the form of SaaS (Software as a Service).

[1807] In the above embodiment, an example was given in which the specific processing is performed by one computer 22, but the technology of the present disclosure is not limited to this, and the specific processing may be distributed and performed by a plurality of computers including the computer 22. For example, the data generation model 58 may be provided in an external device of the data processing device 12, and data may be generated in the external device in accordance with input data.

[1808] In the above embodiment, an example in which the specific processing program 56 is stored in the storage 32 has been described, but the technology of the present disclosure is not limited to this. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-transitory storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-transitory storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes the specific processing in accordance with the specific processing program 56.

[1809] Alternatively, the specific processing program 56 may be stored in a storage device such as a server connected to the data processing device 12 via the network 54, and the specific processing program 56 may be downloaded and installed on the computer 22 in response to a request from the data processing device 12.

[1810] It is not necessary to store all of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store all of the specific processing program 56 in the storage 32; only a portion of the specific processing program 56 may be stored.

[1811] The hardware resource for executing a specific process can be any of the following processors: An example of a processor is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. Another example of a processor is a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.

[1812] The hardware resource that executes the specific processing may be configured with one of these various processors, or may be configured with a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, the hardware resource that executes the specific processing may be a single processor.

[1813] As an example of a system configured with a single processor, first, one processor is configured by combining one or more CPUs and software, and this processor functions as a hardware resource that executes a specific process. Second, there is a system that uses a processor that realizes the functions of an entire system including multiple hardware resources that execute a specific process on a single IC chip, as typified by SoC (System-on-a-chip). In this way, a specific process is realized using one or more of the above-mentioned various processors as hardware resources.

[1814] Furthermore, the hardware structure of these various processors can be, more specifically, an electric circuit that combines circuit elements such as semiconductor devices. The specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps may be deleted, new steps may be added, or the processing order may be rearranged, without departing from the spirit of the invention.

[1815] The above-described description and illustrations are a detailed explanation of the parts related to the technology of the present disclosure and are merely an example of the technology of the present disclosure. For example, the above description of the configuration, functions, actions, and effects is an explanation of an example of the configuration, functions, actions, and effects of the parts related to the technology of the present disclosure. Therefore, it goes without saying that unnecessary parts may be deleted, new elements may be added, or replacements may be made to the above-described description and illustrations within the scope of the gist of the technology of the present disclosure. Furthermore, to avoid confusion and facilitate understanding of the parts related to the technology of the present disclosure, the above-described description and illustrations omit explanations of common technical knowledge that do not require particular explanation to enable the implementation of the technology of the present disclosure.

[1816] All publications, patent applications, and technical standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or technical standard was specifically and individually indicated to be incorporated by reference.

[1817] The following is further disclosed regarding the above embodiment.

[1818] (Claim 1)

[1819] a means for a user to scan a code attached to the product;

[1820] a means for the device to parse the scanned code to extract a unique identifier;

[1821] a means for the terminal to transmit the extracted identifier and user information to a server;

[1822] means for the server to verify the received data and retrieve the points corresponding to the identifier from the database;

[1823] The system includes a means for the server to credit points to an account associated with the user.

[1824] (Claim 2)

[1825] 2. The system according to claim 1, further comprising means for the server to notify the user after adding points.

[1826] (Claim 3)

[1827] 2. The system according to claim 1, further comprising means for the server to generate a summary result for each specific period and report it to each organization.

[1828] "Example 1"

[1829] (Claim 1)

[1830] a means for a user to scan a code attached to the product;

[1831] a means for the device to parse the scanned code to extract a unique identifier;

[1832] a means for the terminal to transmit the extracted identifier and user information to a server;

[1833] means for the server to verify the received data and retrieve the points corresponding to the identifier from the database;

[1834] a means by which the server credits points to an account associated with the user;

[1835] A means for the server to generate and report aggregate data to each organization monthly or at a specified interval;

[1836] The system includes a means for users to scan a digital code using a smart device, enabling efficient and fair point collection.

[1837] (Claim 2)

[1838] 2. The system according to claim 1, further comprising means for the server to notify the user after adding points.

[1839] (Claim 3)

[1840] 2. The system according to claim 1, further comprising means for the server to generate a summary result for each specific period and report it to each organization.

[1841] "Application Example 1"

[1842] (Claim 1)

[1843] a means for a user to scan a code attached to the product;

[1844] a means for the device to parse the scanned code to extract a unique identifier;

[1845] a means for the terminal to transmit the extracted identifier and user information to a server;

[1846] means for the server to verify the received data and retrieve the points corresponding to the identifier from the database;

[1847] means for the server to add the points to an account associated with the user and notify the user of the result;

[1848] A means for users to check their points balance;

[1849] A system including:

[1850] (Claim 2)

[1851] 2. The system according to claim 1, wherein the server generates aggregated results for each specific period and reports them to each organization.

[1852] (Claim 3)

[1853] 2. The system according to claim 1, further comprising means for allowing a user to use points in everyday shopping.

[1854] "Example 2: Combining Emotion Engines"

[1855] (Claim 1)

[1856] a device that allows a user to scan a code attached to a product;

[1857] a device for analyzing the scanned code by the terminal to extract a unique identifier;

[1858] a device for transmitting the extracted identifier and user information from the terminal to a server;

[1859] A device that captures a user's facial expression and recognizes the emotion using an emotion engine;

[1860] A device for the server to verify the received data and retrieve points corresponding to the identifier from the database;

[1861] a device whereby the server credits the points to an account associated with the user;

[1862] A system including a server that stores and analyzes emotion data.

[1863] (Claim 2)

[1864] 2. The system according to claim 1, further comprising a device for notifying the user after the server has added the points.

[1865] (Claim 3)

[1866] 2. The system according to claim 1, further comprising a device for the server to generate a summary result for each specific period and report it to each organization.

[1867] "Application example 2 when combining emotion engines"

[1868] (Claim 1)

[1869] a means for a user to scan a code attached to the product;

[1870] a means for the device to parse the scanned code to extract a unique identifier;

[1871] a means for the terminal to transmit the extracted identifier and user information to a server;

[1872] means for the server to verify the received data and retrieve the points corresponding to the identifier from the database;

[1873] a means by which the server credits points to an account associated with the user;

[1874] A means for the device to analyze the user's facial expression and recognize emotions;

[1875] means for transmitting a data packet including emotion recognition data to a server;

[1876] means for the server to generate a customized notification based on the emotion recognition data;

[1877] A system including a means by which a server sends notifications to a user.

[1878] (Claim 2)

[1879] 2. The system of claim 1, wherein the server sends a customized notification to the user after adding the points.

[1880] (Claim 3)

[1881] 2. The system according to claim 1, further comprising means for the server to generate a summary result for each specific period and report it to each organization. [Explanation of symbols]

[1882] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Device 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robot< / url:> < / url:> < / url:> < / url:>

Claims

1. a means for a user to scan a code attached to the product; a means for the device to parse the scanned code to extract a unique identifier; a means for the terminal to transmit the extracted identifier and user information to a server; means for the server to verify the received data and retrieve the points corresponding to the identifier from the database; The system includes a means for the server to credit points to an account associated with the user.

2. 2. The system according to claim 1, further comprising means for the server to notify the user after adding the points.

3. 2. The system according to claim 1, further comprising means for the server to generate a summary result for each specific period and report it to each organization.

Citation Information

Patent Citations

  • Persona chatbot control method and system

    JP2022180282A