system
A system for managing food expiration dates using image capture, OCR, and database storage with notifications and recipe suggestions addresses the challenge of food waste by effectively tracking and utilizing expiring food items.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-26
- Publication Date
- 2026-03-10
AI Technical Summary
Managing food expiration dates effectively is challenging, leading to food waste due to inefficient tracking and utilization of food items nearing their expiration dates.
A system that includes image acquisition, analysis, storage, notification, and suggestion means to manage food expiration dates by capturing images of food items, extracting expiration dates and names using OCR, storing this data in a database, sending notifications, and suggesting recipes to utilize expiring food items.
Enables users to efficiently manage food expiration dates, reduce waste, and utilize food items nearing expiration through timely notifications and recipe suggestions.
Smart Images

Figure 2026041559000001_ABST
Abstract
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] In modern life, many people purchase and consume food on a daily basis, but keeping track of food expiration dates is not easy. As a result, expired food is often discarded. Furthermore, it is time-consuming to come up with recipes that efficiently utilize food that is approaching its expiration date. Given these circumstances, there is a need for a solution to effectively manage food expiration dates and reduce food waste. [Means for solving the problem]
[0005] To solve this problem, the present invention provides the following means. First, an image acquisition means is provided for acquiring information about food items that have expiration dates printed on them. Next, an analysis means is provided for analyzing the expiration date and food name from the acquired image. A storage means is also provided for saving the analyzed expiration date and food name in a database. Furthermore, a notification means is provided for notifying the user that the expiration date is approaching. Finally, a system is provided that includes a suggestion means for suggesting recipes that use food items that are about to expire. This is expected to enable users to easily manage expiration dates and use food items that are about to expire without waste.
[0006] "Image acquisition means" refers to a device or method for acquiring information about food products that have expiration dates printed on them.
[0007] "Analysis means" refers to a device or method for analyzing the expiration date and food name from the acquired image.
[0008] "Storage means" refers to a device or method for storing the analyzed expiration date and food name in a database.
[0009] "Notification means" refers to a device or method for notifying the user that the expiration date is approaching.
[0010] "Proposal means" refers to a device or method for providing recipes using food that is close to its expiration date. [Brief explanation of the drawings]
[0011] [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 illustrating 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
[0012] 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.
[0013] First, the terms used in the following description will be explained.
[0014] 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).
[0015] 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.
[0016] 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.
[0017] 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.
[0018] 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."
[0019] [First embodiment]
[0020] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0021] 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.
[0022] 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).
[0023] 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.
[0024] 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.
[0025] 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.
[0026] 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.
[0027] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0028] 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.
[0029] 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.
[0030] 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.
[0031] 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."
[0032] The system of the present invention is designed to effectively manage information on food products that have expiration dates and to reduce waste caused by expiration dates. The various means of this system are as follows.
[0033] 1. Image acquisition method:
[0034] A user takes a picture of the expiration date of a purchased food product using a smartphone or other camera device, and information about the food product with the expiration date is acquired as image data.
[0035] 2. Analysis method:
[0036] The device analyzes the image data acquired by the image acquisition means. Specifically, it uses OCR (Optical Character Recognition) technology to extract the expiration date and food name from the image. This process may involve using an OCR library (e.g., Tesseract).
[0037] 3. Preservation means:
[0038] The terminal converts the parsed expiration date and food name into a digital format (e.g., JSON format) and sends the data to the server via the network. The server stores the received data in a database. The database structure is as follows:
[0039] TABLE Food Data (
[0040] id INT PRIMARY KEY AUTO_INCREMENT,
[0041] Food name VARCHAR(255),
[0042] Best before date
[0043] Notification date DATE
[0044] )
[0045] The expiration date and notification date are stored and managed in the database.
[0046] 4. Means of notification:
[0047] The server periodically checks the database to see if any food is nearing its expiration date. If it is within a certain period of time (e.g., seven days) of the expiration date, the server sends a notification to the user. This notification is sent via a smartphone, email, or other means.
[0048] 5. Proposal method:
[0049] The server searches the database for suitable recipes based on the list of foods that are about to expire. The searched recipes are those that can efficiently use the foods that are about to expire. The server then sends the appropriate recipe information to the terminal, which then displays it to the user.
[0050] Example explanation:
[0051] For example, if a user purchases "milk" and "eggs" with expiration dates of "2023-10-15" and "2023-10-10", respectively, the system will operate as follows:
[0052] 1. The user takes a photo of the expiration dates of "milk" and "eggs" with their smartphone.
[0053] 2. The device uses OCR technology to analyze the expiration dates and food names of "2023-10-15" (milk) and "2023-10-10" (eggs).
[0054] 3. The device converts the analysis data into JSON format and sends it to the server.
[0055] 4. The server saves the received data in the database and sets the notification date for "Milk" to "2023-10-08" and the notification date for "Eggs" to "2023-10-03".
[0056] 5. When a specific date and time approaches, the server checks the database, schedules notifications for the relevant foods, and sends notifications to the device, for example, "Your eggs are nearing their expiration date."
[0057] 6. At the same time, the server searches for recipes (e.g., "omelette") that use food that is close to its expiration date, and provides the recipe information to the terminal.
[0058] 7. The user receives a notification, checks the recipe for the "Omelette" in the application, and can use the "Eggs" within the deadline.
[0059] This allows users to properly manage expiration dates and reduce food waste.
[0060] The processing flow will be explained below.
[0061] Step 1:
[0062] Users take a photo of the expiration date of a purchased food item with their smartphone camera, which generates an image showing the expiration date and the name of the food.
[0063] Step 2:
[0064] The device takes the captured image and uses OCR (optical character recognition) technology to analyze the text in the image, in this case extracting the expiration date and food name.
[0065] Step 3:
[0066] The terminal converts the analyzed expiration date and food name into JSON format and sends it to the server via the Internet as an API request.
[0067] Step 4:
[0068] The server parses the received API request and extracts the expiration date and food name from the JSON data.
[0069] Step 5:
[0070] The server stores the extracted data in a database, whose tables include the food product name, expiration date, and notification date.
[0071] Step 6:
[0072] The server calculates the notification date based on a predetermined period (e.g., 7 days) before the expiration date and saves it in the database.
[0073] Step 7:
[0074] The server runs a cron job every day to check all records in the database, compare the current date with the notification date, and find records with a matching notification date.
[0075] Step 8:
[0076] If the notification dates match, the server adds a notification for the food item to the notification queue and prepares to send the notification to the user.
[0077] Step 9:
[0078] The device sends a push notification to the user based on the notification received from the server, which includes information about the name of the food and its expiration date.
[0079] Step 10:
[0080] The server searches the recipe database based on the list of foods with upcoming expiration dates, and similarly searches for recipes that use foods with upcoming expiration dates.
[0081] Step 11:
[0082] The server sends the found recipe information to the terminal and suggests it to the user.
[0083] Step 12:
[0084] The device displays the received recipe information within the application and provides it to the user, who can use this information to prepare meals using food items that are nearing their expiration date.
[0085] Through these steps, the system helps users properly manage food expiration dates and use food without waste.
[0086] Example 1
[0087] 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."
[0088] The goal is to efficiently manage food expiration dates, reduce food waste due to expiration dates, and promote effective food utilization. The goal is also to enable users to consume food smoothly by suggesting recipes using food that is close to its expiration date.
[0089] 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.
[0090] In this invention, the server includes an image acquisition means for a user to photograph the expiration date of a food product, an analysis means for analyzing the acquired image data using OCR technology to analyze the expiration date and food name, a storage means for converting the analyzed expiration date and food name into JSON format and transmitting the converted data to the server via a network, a storage means for storing the data received by the server in a database, a notification means for periodically checking the database and notifying the user of foods whose expiration date is approaching, and a suggestion means for searching the database for recipes using foods whose expiration date is approaching and providing the recipes to the user. This allows users to effectively manage food expiration dates, reduce waste, and use food efficiently.
[0091] A "user" is an individual or organization that photographs expiration date information on food products and uses the system to manage expiration dates.
[0092] "Image acquisition means" refers to a function that allows a user to take a photo of the expiration date of food purchased using a smartphone or camera device.
[0093] "OCR technology" stands for optical character recognition technology, which is a technology that extracts character information from image data.
[0094] "Analysis means" refers to the function of extracting expiration dates and food names from image data obtained using OCR technology.
[0095] "Storage means" refers to the function that converts the analyzed expiration date and food name into JSON format and sends it to a server via a network.
[0096] "Server" refers to a central management system that stores received data in a database and provides notifications and suggestions.
[0097] The "database" is a data management system for storing data such as food names, expiration dates, and notification dates.
[0098] "Notification means" refers to a function that periodically checks the database and notifies the user about food items that are approaching their expiration date.
[0099] "Suggestion means" refers to a function that searches the database for recipes that use food items that are close to their expiration date and provides them to the user.
[0100] "JSON format" is an abbreviation for JavaScript (registered trademark) Object Notation format, which is a method of representing data as lightweight, structured text.
[0101] The system of the present invention is intended to enable users to effectively manage expiration date information for food products and reduce food waste due to expiration dates.
[0102] Image Acquisition Method
[0103] The user takes a picture of the expiration date of the purchased food using a smartphone or other camera device. Through this step, information about the food with the expiration date is acquired as image data.
[0104] Analysis means
[0105] The device analyzes the image data captured by the image capture means. Specifically, it uses OCR (Optical Character Recognition) technology to extract the expiration date and food name from the image. This process uses the widely used Tesseract OCR library.
[0106] Preservation means
[0107] The terminal converts the analyzed expiration date and food name into a digital format (e.g., JSON format) and sends it to the server via the network. The server stores the received data in a database. The database structure is as follows:
[0108] TABLE Food Data (
[0109] id INT PRIMARY KEY AUTO_INCREMENT,
[0110] Food name VARCHAR(255),
[0111] Best before date
[0112] Notification date DATE
[0113] )
[0114] The expiration date and notification date are stored and managed in the database.
[0115] Notification means
[0116] The server periodically checks the database to see if any food is nearing its expiration date. If it is within a certain period of time (e.g., seven days) of the expiration date, the server sends a notification to the user. This notification can be sent via smartphone push notification, email, or other means.
[0117] Proposal means
[0118] The server searches the database for suitable recipes based on the list of foods that are about to expire. The searched recipes are those that can efficiently use the foods that are about to expire. The server then sends the appropriate recipe information to the terminal, which then displays it to the user.
[0119] Specific example explanation
[0120] For example, if a user purchases "Milk" and "Eggs" with expiration dates "2023-10-15" and "2023-10-10" respectively, the system will behave as follows:
[0121] 1. The user takes a photo of the expiration dates of "milk" and "eggs" with their smartphone.
[0122] 2. The device uses OCR technology to analyze the expiration dates and food names of "2023-10-15" (milk) and "2023-10-10" (eggs).
[0123] 3. The device converts the analysis data into JSON format and sends it to the server.
[0124] 4. The server saves the received data in the database and sets the notification date for "Milk" to "2023-10-08" and the notification date for "Eggs" to "2023-10-03".
[0125] 5. When a specific date and time approaches, the server checks the database, schedules notifications for the relevant foods, and sends notifications to the device, for example, "Your eggs are nearing their expiration date."
[0126] 6. At the same time, the server searches for recipes (e.g., "omelette") that use food that is close to its expiration date, and provides the recipe information to the terminal.
[0127] 7. The user receives a notification, checks the recipe for the "Omelette" in the application, and can use the "Eggs" within the deadline.
[0128] This allows users to properly manage expiration dates and reduce food waste.
[0129] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0130] Step 1:
[0131] The user takes a photo of the expiration date of purchased food using a smartphone or camera device. The input data is image data of the food. Specifically, the user launches the camera app on their smartphone and takes a photo of the part of the food where the expiration date is clearly written. The output of this step is image data of the food with the expiration date written on it.
[0132] Step 2:
[0133] The device analyzes the image data acquired in step 1 using OCR technology. The input data is an image of food with a best-before date. Specifically, the device uses the Tesseract OCR library to extract text information from the image data. The OCR library recognizes character strings such as "2023-10-15" and "milk" and generates text data as output.
[0134] Step 3:
[0135] The terminal converts the text data extracted in step 2 into JSON format. The input data is text data obtained by OCR analysis (e.g., "Food name: Milk", "Best before date: 2023-10-15"). Specifically, the terminal converts the text data into a digital format (JSON format). The output is JSON data such as the following:
[0136] json
[0137] {
[0138] "Food Name": "Milk",
[0139] "Best Before Date": "2023-10-15"
[0140] }
[0141] Step 4:
[0142] The terminal sends the JSON data generated in step 3 to the server via the network. The input data is text data in JSON format. Specifically, the terminal sends an HTTP POST request to send the data to the server. The output is a notification to the server that the data has been sent.
[0143] Step 5:
[0144] The server stores the JSON data received in step 4 in the database. The input data is the JSON data received from the terminal. Specifically, the server parses the JSON data and executes an INSERT statement to store the data in the database. The output is the food information stored in the database. For example:
[0145] INSERT INTO Food Data (Food Name, Best Before Date, Notification Date) VALUES ("Milk", "2023-10-15", "2023-10-08")
[0146] Step 6:
[0147] The server periodically checks the database to see which foods are approaching their expiration date. The input data is the food data in the database. Specifically, the server runs a query to extract foods that require notifications based on today's date. The output is a list of foods that need notifications. For example:
[0148] sql
[0149] SELECT FROM FoodData WHERE NotificationDate = CURRENT_DATE
[0150] Step 7:
[0151] The server sends a notification to the user about the foods extracted in step 6. The input data is a list of foods to be notified. Specifically, the server creates a push notification or email and sends it to the user. The output is a notification to the user. For example, "The expiration date of the milk is approaching."
[0152] Step 8:
[0153] The server searches the database for recipes that use foods that are about to expire. The input data is the list of foods that are the target of notifications. Specifically, the server queries the recipe database to find suitable recipes. The output is the recipe information. For example:
[0154] sql
[0155] SELECT recipe_name, details FROM recipe_data WHERE ingredients LIKE "%milk%"
[0156] Step 9:
[0157] The server sends the recipe information found in step 8 to the terminal. The input data is the found recipe information. Specifically, the server converts the recipe information into JSON format and sends it to the terminal. The output is a notification to the terminal that the recipe information has been sent.
[0158] Step 10:
[0159] The terminal displays the recipe information received in step 9 to the user. The input data is the recipe information received from the server. In specific operations, the terminal displays the recipe information as text or images on the application screen. The output is the recipe information displayed to the user. The user can use foods that are close to their expiration date based on the displayed recipe.
[0160] (Application example 1)
[0161] 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."
[0162] The problem that the present invention aims to solve is to efficiently manage the expiration dates of food products, reduce waste due to expiration, and enable quick inventory checks and sales promotion of products with approaching expiration dates in physical stores. Currently, manually checking the expiration dates of food products in stores is labor-intensive and does not allow for efficient management. In addition, there is a lack of effective means to notify consumers of products with approaching expiration dates, which leads to the problem of food waste. Furthermore, it is difficult to appropriately promote products with approaching expiration dates, which can result in lost sales opportunities.
[0163] 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.
[0164] In this invention, the server includes an image acquisition means, an analysis means, a storage means, a notification means, a proposal means, and a sales promotion means, thereby enabling real-time promotion of food products approaching their expiration dates.
[0165] The "image acquisition means" is a means for capturing an image of food information containing the expiration date using a camera device or the like and acquiring the image data.
[0166] The "analysis means" is a means for extracting and analyzing the expiration date and food name from the acquired image data using OCR technology.
[0167] The "storage means" is a means for converting the analyzed expiration date and food name into a digital format and storing the data in a database.
[0168] The "notification means" is a means for notifying the user that the expiration date is approaching, and is done by notifying the user via email or the notification function of a smartphone.
[0169] The "suggestion means" is a means for searching for recipes that use food items that are close to their expiration date and suggesting them to the user.
[0170] "Sales promotions" are methods for promoting food products that are nearing their expiration date, such as offering special prices or special offers when the product is nearing its expiration date.
[0171] The system of the present invention is designed to effectively manage information on food products that have expiration dates and to reduce waste caused by expiration dates. The various means of this system are as follows.
[0172] As an image acquisition means, a user takes a picture of the expiration date of the purchased food using a smartphone or other camera device, thereby acquiring information about the food with the expiration date as image data.
[0173] As an analysis means, the terminal analyzes the image data acquired by the image acquisition means. Specifically, it uses OCR (Optical Character Recognition) technology to extract the expiration date and food name from the image. In this process, an OCR library (e.g., Tesseract) is used.
[0174] As a storage means, the terminal converts the analyzed expiration date and food name into a digital format (e.g., JSON format) and sends the data to the server via the network. The server stores the received data in a database. The database structure is as follows:
[0175] TABLE Food Data (
[0176] id INT PRIMARY KEY AUTO_INCREMENT,
[0177] Food name VARCHAR(255),
[0178] Best before date
[0179] Notification date DATE
[0180] )
[0181] The expiration date and notification date are stored and managed in the database.
[0182] As a notification method, the server periodically checks the database to see if any food is approaching its expiration date. If it is within a certain period of time (e.g., seven days) of the expiration date, the server sends a notification to the user. This notification is sent via a smartphone, email, or other means.
[0183] As a suggestion method, the server searches the database for suitable recipes based on the list of foods that are about to expire. The searched recipes are those that can efficiently use the foods that are about to expire. The server then sends the appropriate recipe information to the terminal, which then displays it to the user.
[0184] As a sales promotion measure, the system will use smartphones or smart glasses in physical stores to manage the expiration dates of inventory items in real time for store staff and customers, and promote products that are approaching their expiration date. This function will reduce food waste in stores and boost sales.
[0185] As a concrete example, if a user purchases "milk" and "eggs" with expiration dates of "2023-10-15" and "2023-10-10," respectively, the system operates as follows: The user takes a photo of the expiration dates of the "milk" and "eggs" with their smartphone, and OCR technology is used to analyze the expiration dates and food names: "2023-10-15" (milk) and "2023-10-10" (eggs). The data is converted into a digital format and sent to the server. The server stores the received data in a database and sends notifications to the user when the specified date and time approaches. At the same time, the system suggests recipes (e.g., "omelets") using the food items that are about to expire, and stores can promote products with special prices when the expiration date is approaching.
[0186] Examples of prompts include:
[0187] "I have invented an invention for a system to manage food that is approaching its expiration date. This system uses OCR technology to analyze expiration date information taken from food photographs, stores it in a database, and notifies users when the expiration date is approaching. What technology can be used to extract the food name and expiration date?"
[0188] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0189] Step 1:
[0190] The terminal uses a camera device to take a picture of the expiration date of food purchased by the user. The input is image data taken by the camera, which is acquired by the image acquisition means. The output is image data containing the expiration date information.
[0191] Step 2:
[0192] The device uses OCR technology to extract the expiration date and food name from the image data acquired in step 1. The input is image data, which is converted into text data using an OCR library (e.g., Tesseract). The output is the extracted text data of the expiration date and food name.
[0193] Step 3:
[0194] The terminal converts the expiration date and food name extracted in step 2 into a digital format (e.g., JSON format) and sends the data to the server via the network. The input is text data, and data processing and network communication are performed. The output is the data converted into a digital format and sent to the server.
[0195] Step 4:
[0196] The server stores the data received in step 3 in a database. The input is JSON formatted data, and it performs SQL operations to insert it into the database. The output is a record of the expiration date and food name stored in the database.
[0197] Step 5:
[0198] The server periodically checks the database for foods that are nearing their expiration date. The input is all records in the database, and it checks whether their notification date matches the current date. The output is a list of foods that are nearing their expiration date.
[0199] Step 6:
[0200] The server sends a notification to the user about the foods that are close to their expiration date, as confirmed in step 5. The input is a list of foods that are close to their expiration date, which is sent to the user via email or the notification function of their smartphone. The output is the notification message sent to the user.
[0201] Step 7:
[0202] The server searches the database for suitable recipes based on the foods with upcoming expiration dates identified in step 5. The input is the list of foods with upcoming expiration dates and recipe information in the database, and performs data calculations. The output is the searched recipe information.
[0203] Step 8:
[0204] The server sends the recipe information retrieved in step 7 to the user's terminal, which displays it to the user. The input is the retrieved recipe information, which is transmitted to the user's terminal. The output is the recipe information displayed to the user.
[0205] Step 9:
[0206] Using smartphones or smart glasses in brick-and-mortar stores, the system manages the inventory status of food products approaching their expiration date in real time and implements promotions. The input is expiration date information in the database and stock information at the brick-and-mortar store, and promotions are carried out based on this. The output is product information to be promoted with special prices, etc.
[0207] 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.
[0208] The system of the present invention provides a series of means for strengthening food expiration date management and reducing food waste. In particular, by incorporating an emotion engine that recognizes and responds to user emotions, it is possible to improve the user experience. The various means that make up this system are as follows:
[0209] 1. Image acquisition method:
[0210] Users take a photo of the expiration date of a purchased food item with their smartphone camera, which generates an image showing the expiration date and the name of the food.
[0211] 2. Analysis method:
[0212] The device analyzes the image captured by the image capture means. Specifically, it uses OCR (Optical Character Recognition) technology to extract the expiration date and food name from the image. This analysis is performed using an OCR library (e.g., Tesseract).
[0213] 3. Preservation means:
[0214] The terminal converts the parsed expiration date and food name into a digital format and sends the data to a server via the internet as an API request.
[0215] The server stores the received data in a database and manages the expiration date and notification date.
[0216] 4. Means of notification:
[0217] The server periodically checks the database to see if any food is nearing its expiration date. If the expiration date is within a certain period (e.g., seven days), the server sends a notification to the user. The notification is sent via a smartphone app or email.
[0218] 5. Proposal method:
[0219] The server lists foods that are close to expiry date and searches the recipe database for recipes that use the corresponding foods. The found recipe information is sent to the terminal and suggested to the user.
[0220] 6. Emotion Engine:
[0221] The terminal is equipped with an emotion engine for recognizing the user's emotions, which analyzes the user's emotions based on the user's voice tone, facial expressions, and other biometric data.
[0222] The server adjusts the timing and content of notifications based on the user's emotional information obtained from the emotion engine. For example, if the user is feeling stressed, it can postpone less urgent notifications.
[0223] The server can also tailor the recipes it provides to the user based on their emotional state, for example suggesting easy-to-cook recipes to a user who is feeling tired.
[0224] Example explanation:
[0225] For example, if a user purchases "milk" and "eggs" with expiration dates of "2023-10-15" and "2023-10-10", respectively, the system will operate as follows:
[0226] 1. The user takes a photo of the expiration dates of "milk" and "eggs" with their smartphone.
[0227] 2. The device uses OCR technology to analyze the expiration dates and food names of "2023-10-15" (milk) and "2023-10-10" (eggs).
[0228] 3. The device converts the analysis data into JSON format and sends it to the server.
[0229] 4. The server saves the received data in the database and calculates the notification date. For example, the notification date for "Milk" is set to "2023-10-08" and the notification date for "Eggs" is set to "2023-10-03".
[0230] 5. When the specified date and time approaches, the server checks the database, schedules notifications for the relevant foods, and sends the notifications to the device.
[0231] 6. At the same time, the server searches for recipes (e.g., "omelette") that use food that is close to its expiration date, and provides the recipe information to the terminal.
[0232] 7. The device checks the user's emotional state, and if the emotion engine detects stress or fatigue, it will prioritize suggesting simple recipes.
[0233] 8. The user will receive a notification, can check the recipe details on the application and can consume the food within the deadline.
[0234] This allows users to properly manage expiration dates, reduce food waste, and receive support tailored to their emotional state.
[0235] The processing flow will be explained below.
[0236] Step 1:
[0237] The user takes a photo of the expiration date of the food they have purchased with the camera on their smartphone, thereby obtaining image data of the food with the expiration date printed on it.
[0238] Step 2:
[0239] The device uses OCR (Optical Character Recognition) technology to analyze the captured image data, extracting the expiration date and food name from the image.
[0240] Step 3:
[0241] The terminal converts the extracted expiration date and food name into JSON format and sends it to a server via the Internet.
[0242] Step 4:
[0243] The server parses the received JSON data and extracts the expiration date and food name.
[0244] Step 5:
[0245] The server stores the extracted data in a database. Specifically, it stores the food name, expiration date, and notification date in a table.
[0246] Step 6:
[0247] The server calculates the notification date based on a predetermined period (e.g., 7 days) before the expiration date and saves the notification date in the database.
[0248] Step 7:
[0249] The server runs a cron job every day to check the records in the database, comparing the current date with the notification date and finding any matching records.
[0250] Step 8:
[0251] If the notification dates match, the server adds a notification for the food item to the notification queue and prepares to send the notification to the user.
[0252] Step 9:
[0253] The device sends a push notification to the user based on the notification received from the server, which includes information about the name of the food and its expiration date.
[0254] Step 10:
[0255] The server searches the recipe database based on the list of foods that are about to expire, searches for recipes that can efficiently use the foods that are about to expire, and sends the found recipes to the terminal.
[0256] Step 11:
[0257] The device displays the recipe information it finds to the user, who can then use the suggested recipes to use food that is close to its expiration date.
[0258] Step 12:
[0259] The device uses an emotion engine to recognize the user's emotional state, analyzing the user's voice tone, facial expressions, and biometric data to understand the user's current emotional state.
[0260] Step 13:
[0261] The server adjusts the timing and content of notifications based on the user's emotional information obtained from the emotion engine. For example, if the user is feeling stressed, it delays less urgent notifications.
[0262] Step 14:
[0263] The server adjusts the recipe suggestions based on the emotion engine data. For example, if the user is tired, it will prioritize easy-to-cook recipes.
[0264] Step 15:
[0265] The device displays recipe information that matches the user's emotional state and suggests it to the user, allowing the user to refer to and cook recipes that correspond to their emotions.
[0266] Through the above steps, this system allows users to easily manage food expiration dates, helps them use food without waste, and also provides flexible responses according to the user's emotional state.
[0267] Example 2
[0268] 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."
[0269] Conventional food expiration date management systems rely on users to consciously manage expiration dates, which results in food waste. Furthermore, they lack the ability to provide appropriate notifications and suggestions based on the user's emotional state, resulting in a poor user experience.
[0270] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[0271] In this invention, the server includes an image acquisition means for acquiring information about food items bearing expiration dates, an optical character recognition means for analyzing the expiration dates and food item names from the acquired images, a storage means for converting the analyzed expiration dates and food item names into a digital format and storing them in a database, a notification means for notifying the user that the expiration date is approaching, a recipe suggestion means for suggesting recipes using food items that are close to their expiration date, an emotion recognition means for recognizing the user's emotion, and an adjustment means for adjusting the timing and content of the notification based on the user's emotion information obtained from the emotion recognition means. This strengthens expiration date management, reduces food waste, and enables appropriate notifications and suggestions based on the user's emotional state.
[0272] An "image acquisition means" is a device or method that allows a user to use a smartphone camera or other device to take a photo of the food packaging or the part of the food product that lists the expiration date, and acquire that information as a digital image.
[0273] "Optical character recognition means" refers to a technology used to extract text information from acquired digital images, specifically analyzing expiration dates and food names using OCR (optical character recognition) technology.
[0274] The "storage means" refers to the technology or device that converts the analyzed expiration date and food name into a digital format and stores it in a database via the Internet.
[0275] The "notification means" refers to a method or device for notifying users about food products that are approaching their expiration date, and sends notifications via a smartphone app or email.
[0276] The "recipe suggestion means" refers to a system or method for searching a database for relevant recipes and suggesting them to a user in order to provide recipes that can be made using food items that are close to their expiration date.
[0277] "Emotion recognition means" refers to technology or devices for analyzing a user's emotions based on the user's tone of voice, facial expressions, and other biometric data.
[0278] The "adjustment means" refers to a method or technology for adjusting the timing and content of notifications based on the user's emotional information obtained from the emotion recognition means.
[0279] The system of the present invention aims to reduce food waste by streamlining food expiration date management and providing appropriate notifications and suggestions based on the user's emotional state. This system is realized mainly using the following hardware and software.
[0280] The system includes an image acquisition means, an optical character recognition means, a storage means, a notification means, a recipe suggestion means, an emotion recognition means, and an adjustment means to allow users to manage the expiration dates of food products.
[0281] First, the user uses the smartphone camera to take a picture of the package of the purchased food or the part of the package that has the expiration date written on it, thereby generating a smartphone camera as an image acquisition means.
[0282] Next, the device analyzes the acquired image using the Tesseract OCR library. The Tesseract OCR library, an optical character recognition method, extracts the expiration date and food name from the image. For example, if a user purchases "milk" and "eggs" and their respective expiration dates are "2023-10-15" and "2023-10-10," this information is analyzed.
[0283] The analyzed data is converted to JSON format and sent as an API request from the device that acts as the storage means to the server. The server stores the received data in a database and calculates the expiration date and notification date. For example, if the expiration date of "Milk" is "2023-10-15", the notification date is set to "2023-10-08".
[0284] The server periodically checks the database to identify foods that are approaching their expiration date. As a notification method, the server sends a notification to the user a specified period of time in advance. Notifications are sent via a smartphone app or email. For example, the notification date for "Milk" is "2023-10-08," so the notification will arrive on the user's smartphone on that day.
[0285] In addition, the server lists recipes that use food items that are close to expiry date as a recipe suggestion means. For example, it searches the recipe database for an "omelette" recipe that uses "milk and eggs" and suggests it to the user.
[0286] Additionally, the device captures voice tones and facial expressions to recognize the user's emotions. This emotion recognition function analyzes the user's emotional state and transmits it to the server as needed.
[0287] The server has an adjustment means for adjusting the timing and content of notifications based on the user's emotional information obtained from the emotion recognition means. For example, if the user is feeling stressed, notifications with low urgency will be postponed and easy-to-cook recipes (e.g., "easy omelet") will be suggested first.
[0288] Example prompt sentence:
[0289] "The expiration dates for milk and eggs are 2023-10-15 and 2023-10-10, respectively. Please notify me when their expiration dates are approaching and also suggest some easy recipes."
[0290] This allows users to properly manage expiration dates, reduce food waste, and receive support tailored to their emotional state.
[0291] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0292] Step 1:
[0293] The user uses the smartphone camera to take a picture of the packaging of the purchased food or the part of the food that has the expiration date written on it. Specifically, the user opens the camera app and takes a picture so that the expiration date and the name of the food can be confirmed. The smartphone camera, which acts as an image capture means, then captures the image and saves it on the device.
[0294] Input: A user-taken image of a food package
[0295] Output: Image file (food packaging image)
[0296] Step 2:
[0297] The device analyzes the acquired image file using the Tesseract OCR library. Specifically, it uses OCR (Optical Character Recognition) technology to extract the expiration date and food name from the image. This process converts the image into text data.
[0298] Input: Image file (food packaging image)
[0299] Output: Text data (best before date and food name)
[0300] Step 3:
[0301] The device converts the extracted expiration date and food name data into JSON format. Specifically, it embeds the text data into a JSON object and converts it to this data format. This conversion makes the data available to send to the server as an API request.
[0302] Input: Text data (best before date and food name)
[0303] Output: JSON data (best before date and food name)
[0304] Step 4:
[0305] The device sends JSON data as an API request to the server via the Internet. Specifically, it generates an HTTP request and sends it to the server. This process sends the expiration date and food name data to the server.
[0306] Input: JSON data (best before date and food name)
[0307] Output: API request sent to the server
[0308] Step 5:
[0309] The server parses the received JSON data and saves it in the database. Specifically, it parses the JSON data, extracts the expiration date and food name, and saves them in the database. This process stores the expiration date and food name in the database.
[0310] Input: JSON data (best before date and food name)
[0311] Output: Save to database (expiration date and food name)
[0312] Step 6:
[0313] The server calculates the notification date from the expiration date and saves it in the database. Specifically, it calculates the date a specified period before the expiration date and saves this as the notification date in the database. For example, for "2023-10-15" (milk), the notification date would be "2023-10-08".
[0314] Input: Best Before Date
[0315] Output: Notification date (calculate and store notification date)
[0316] Step 7:
[0317] The server periodically checks the database to identify foods whose expiration date is approaching. Specifically, it periodically scans the data in the database every day and extracts foods whose expiration date is approaching. This extraction identifies foods that are subject to notification.
[0318] Input: Best before and notification dates in the database
[0319] Output: List of foods to be notified
[0320] Step 8:
[0321] If a notification is required, the server sends the notification to the user. Specifically, the server sends the notification to the user using a smartphone app or email. This process allows the user to receive the notification.
[0322] Input: List of foods to be notified
[0323] Output: User notification
[0324] Step 9:
[0325] The server lists recipes that use food items that are close to expiry date and searches for the corresponding recipes in the recipe database. Specifically, it queries the recipe database and extracts the corresponding recipes. This extraction identifies the recipe information.
[0326] Input: List of foods to be notified
[0327] Output: Recipe information
[0328] Step 10:
[0329] The server then sends the found recipe information to the device. Specifically, it converts the recipe information into JSON format and sends it to the device as an HTTP response. This process provides the recipe information to the user.
[0330] Input: Recipe information
[0331] Output: Send recipe information to the device
[0332] Step 11:
[0333] The device captures the user's voice tone, facial expressions, and other biometric data and analyzes them with an emotion engine. Specifically, the device uses a camera and microphone to capture the user's voice and face, and then analyzes this data with an emotion engine. This analysis identifies the user's emotional state.
[0334] Input: User's tone of voice, facial expressions, and other biometric data
[0335] Output: User's emotional state
[0336] Step 12:
[0337] The device sends the user's emotional state to the server. Specifically, it converts the emotional state data into JSON format, generates an HTTP request, and sends it to the server. Through this process, the server obtains the user's emotional information.
[0338] Input: User's emotional state
[0339] Output: Emotional state sent to the server
[0340] Step 13:
[0341] The server adjusts the timing and content of notifications based on the user's emotional state. Specifically, it analyzes the user's emotional state and adjusts the timing of notifications and recipe information as necessary. This adjustment enables the provision of services that take the user's emotions into consideration.
[0342] Input: User's emotional state
[0343] Output: Adjusted notifications and recipe information
[0344] Step 14:
[0345] The user checks the notification and recipe information provided by the smartphone app and uses the food within the deadline. Specifically, the user receives a notification and views detailed recipe information in the app. This process allows the user to properly manage food and reduce waste.
[0346] Input: Adjusted notifications and recipe information
[0347] Output: User action (food usage)
[0348] (Application example 2)
[0349] 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."
[0350] Today, many users expend a lot of time and effort managing food expiration dates, resulting in unnecessary food waste. Furthermore, the lack of personalized support tailored to users' lifestyles and emotional states often leads to a dissatisfied user experience. This can lead to food waste and a decline in quality of life. Given this current situation, there is a need for a system that can reduce food waste and improve the user experience by providing notifications and recipe suggestions based on the user's emotional state.
[0351] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes an image acquisition means for acquiring information about food items with expiration dates, an analysis means for analyzing the expiration dates and food item names from the acquired images, a storage means for saving the analyzed expiration dates and food item names in a database, a notification means for notifying the user that the expiration date is approaching, a suggestion means for suggesting recipes using the food items with an approaching expiration date, an emotion analysis means for analyzing the user's emotions, and an adjustment means for adjusting the timing and content of notifications based on the emotion analysis results. This not only enables the user to efficiently manage expiration dates but also enables the user to receive optimal notifications and recipe suggestions based on their emotional state.
[0352] The "image acquisition means" is a means for acquiring information about food products that have expiration dates printed on them, and is a system in which a user photographs the expiration date of a food product and acquires image data of the photograph.
[0353] The "analysis means" is a means for analyzing the expiration date and food name from the acquired image, and is a system that extracts the necessary information from the image data using optical character recognition technology.
[0354] The "storage means" is a means for storing the analyzed expiration dates and food names in a database, and is a system that converts the extracted data into a digital format and stores it on a server.
[0355] The "notification means" is a means for notifying the user that the expiration date is approaching, and is a system that conveys the timing and content of the notification to the user.
[0356] The "suggestion means" is a means for suggesting recipes using food items that are close to their expiration date, and is a system that searches for appropriate recipes from a database and provides them to the user.
[0357] The "emotion analysis means" is a means for analyzing the user's emotions, and is a system that recognizes the user's emotional state using biometric data such as voice tone and facial expressions.
[0358] The "adjustment means" is a means for adjusting the timing and content of notifications based on the results of emotion analysis, and is a system that dynamically changes the priority and content of notifications according to the user's emotional state.
[0359] The present invention is a system for strengthening food expiration date management and reducing food waste, and in particular, improves the user experience by incorporating an emotion engine that recognizes and responds to user emotions. To realize this system, the following various means are required.
[0360] 1. Image acquisition method
[0361] Users take a photo of the expiration date of a purchased food item with their smartphone camera, which generates an image showing the expiration date and the name of the food.
[0362] 2. Analysis method
[0363] The device analyzes the captured image to determine the expiration date and food name. Specifically, it uses optical character recognition (OCR) technology to extract the date and food name from the image. For example, the Tesseract library can be used.
[0364] 3. Preservation means
[0365] The device converts the analyzed expiration date and food name into a digital format and sends the data as an API request to a server via the internet. The server stores the received data in a database and manages expiration dates and notification dates.
[0366] 4. Means of notification
[0367] The server periodically checks the database to see if any food is nearing its expiration date. If the expiration date is within a certain period (e.g., seven days), the server sends a notification to the user. The notification is sent via a smartphone app or email.
[0368] 5. Proposal method
[0369] The server lists foods that are close to expiry date and searches the recipe database for recipes that use the corresponding foods. The found recipe information is sent to the terminal and suggested to the user.
[0370] 6. Emotion analysis method
[0371] The terminal is equipped with an emotion analysis means for analyzing the user's emotions. This means analyzes the user's emotions based on the user's voice tone, facial expressions, and other biometric data. For example, the DeepFace library can be used to analyze facial expressions, and a TENSORFLOW®-based voice recognition library can be used for voice analysis.
[0372] 7. Adjustment means
[0373] The server adjusts the timing and content of notifications based on the results of emotion analysis. For example, if the user is feeling stressed, it postpones less urgent notifications. It also selects recipe suggestions based on the user's emotional state. For example, if the user is feeling tired, it prioritizes easy-to-cook recipes.
[0374] Specific example explanation
[0375] If a user purchases "milk" and "eggs" with expiration dates of "2023-10-15" and "2023-10-10", respectively, the system will operate as follows:
[0376] 1. The user takes a photo of the expiration dates of "milk" and "eggs" with their smartphone.
[0377] 2. The device uses OCR technology to analyze the expiration dates and food names of "2023-10-15" (milk) and "2023-10-10" (eggs).
[0378] 3. The device converts the analysis data into JSON format and sends it to the server.
[0379] 4. The server saves the received data in the database and calculates the notification date. For example, the notification date for "Milk" is set to "2023-10-08" and the notification date for "Eggs" is set to "2023-10-03".
[0380] 5. When the specified date and time approaches, the server checks the database, schedules notifications for the relevant foods, and sends the notifications to the device.
[0381] 6. At the same time, the server searches for recipes (e.g., "omelette") that use food that is close to its expiration date, and provides the recipe information to the terminal.
[0382] 7. The device checks the user's emotional state, and if the emotion analysis means detects stress or fatigue, it will prioritize suggesting simple recipes.
[0383] 8. The user will receive a notification, can check the recipe details on the application and can consume the food within the deadline.
[0384] Prompt Sentence Examples
[0385] "Please provide a Python program that captures images that make users feel tired, performs sentiment analysis, and suggests optimal content. The DeepFace library will be used for sentiment analysis, and the suggested content will be obtained from an API. Please also include a function to display the suggested content to the user."
[0386] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0387] Step 1:
[0388] A user takes a photo of the expiration date of a food product they have purchased using their smartphone camera. Optical data (image) is obtained as input. The image contains the expiration date and the name of the food product.
[0389] Step 2:
[0390] The device analyzes the captured image. It receives image data as input and uses OCR (optical character recognition) technology to extract the expiration date and food name from the image. This outputs text data of the expiration date (e.g., "2023-10-15") and the food name (e.g., "Milk").
[0391] Step 3:
[0392] The device converts the analyzed expiration date and food name into JSON format and sends it to the server via the internet as an API request. It receives text data as input and outputs the data converted into JSON format.
[0393] Step 4:
[0394] The server stores the received JSON data in the database. It takes JSON data as input and outputs the database entries required to store the expiration date and food name in the database.
[0395] Step 5:
[0396] The server periodically checks the database to see which foods are approaching their expiration date. It takes as input all entries in the database, compares them with the current date, and outputs any data that requires notification.
[0397] Step 6:
[0398] If the server detects a specific period (e.g., 7 days before), it sends a notification to the user. The expiration date data that requires notification is acquired as input, and a notification message is output via a smartphone app or email.
[0399] Step 7:
[0400] The server searches the recipe database for recipes that use food items that are close to expiry. It receives the name of a food item as input and outputs a list of related recipes.
[0401] Step 8:
[0402] The server sends the recipe information it finds to the terminal. It receives recipe data as input and outputs the data to be sent to the terminal in JSON format.
[0403] Step 9:
[0404] The terminal receives the recipe information and displays it to the user. It takes the received recipe data as input and outputs data for display on the user interface.
[0405] Step 10:
[0406] The device acquires data on the user's voice tone and facial expressions to analyze the user's emotions. It receives voice and image data as input and uses an emotion analysis engine to output data that identifies the user's emotional state.
[0407] Step 11:
[0408] The device selects recipe suggestions based on the results of sentiment analysis, receives sentiment analysis results and recipe data as input, and outputs the optimal recipe.
[0409] Step 12:
[0410] The device notifies the user of the best recipe and provides emotionally appropriate actions. It receives the selected recipe and the user's emotional state as input, and outputs data for displaying notifications and recipe details.
[0411] 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.
[0412] 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.
[0413] 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.
[0414] [Second embodiment]
[0415] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0416] 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.
[0417] 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).
[0418] 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.
[0419] 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.
[0420] 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).
[0421] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for 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.
[0422] 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.
[0423] 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.
[0424] 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.
[0425] 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.
[0426] 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."
[0427] The system of the present invention is designed to effectively manage information on food products that have expiration dates and to reduce waste caused by expiration dates. The various means of this system are as follows.
[0428] 1. Image acquisition method:
[0429] A user takes a picture of the expiration date of a purchased food product using a smartphone or other camera device, and information about the food product with the expiration date is acquired as image data.
[0430] 2. Analysis method:
[0431] The device analyzes the image data acquired by the image acquisition means. Specifically, it uses OCR (Optical Character Recognition) technology to extract the expiration date and food name from the image. This process may involve using an OCR library (e.g., Tesseract).
[0432] 3. Preservation means:
[0433] The terminal converts the parsed expiration date and food name into a digital format (e.g., JSON format) and sends the data to the server via the network. The server stores the received data in a database. The database structure is as follows:
[0434] TABLE Food Data (
[0435] id INT PRIMARY KEY AUTO_INCREMENT,
[0436] Food name VARCHAR(255),
[0437] Best before date
[0438] Notification date DATE
[0439] )
[0440] The expiration date and notification date are stored and managed in the database.
[0441] 4. Means of notification:
[0442] The server periodically checks the database to see if any food is nearing its expiration date. If it is within a certain period of time (e.g., seven days) of the expiration date, the server sends a notification to the user. This notification is sent via a smartphone, email, or other means.
[0443] 5. Proposal method:
[0444] The server searches the database for suitable recipes based on the list of foods that are about to expire. The searched recipes are those that can efficiently use the foods that are about to expire. The server then sends the appropriate recipe information to the terminal, which then displays it to the user.
[0445] Example explanation:
[0446] For example, if a user purchases "milk" and "eggs" with expiration dates of "2023-10-15" and "2023-10-10", respectively, the system will operate as follows:
[0447] 1. The user takes a photo of the expiration dates of "milk" and "eggs" with their smartphone.
[0448] 2. The device uses OCR technology to analyze the expiration dates and food names of "2023-10-15" (milk) and "2023-10-10" (eggs).
[0449] 3. The device converts the analysis data into JSON format and sends it to the server.
[0450] 4. The server saves the received data in the database and sets the notification date for "Milk" to "2023-10-08" and the notification date for "Eggs" to "2023-10-03".
[0451] 5. When a specific date and time approaches, the server checks the database, schedules notifications for the relevant foods, and sends notifications to the device, for example, "Your eggs are nearing their expiration date."
[0452] 6. At the same time, the server searches for recipes (e.g., "omelette") that use food that is close to its expiration date, and provides the recipe information to the terminal.
[0453] 7. The user receives a notification, checks the recipe for the "Omelette" in the application, and can use the "Eggs" within the deadline.
[0454] This allows users to properly manage expiration dates and reduce food waste.
[0455] The processing flow will be explained below.
[0456] Step 1:
[0457] Users take a photo of the expiration date of a purchased food item with their smartphone camera, which generates an image showing the expiration date and the name of the food.
[0458] Step 2:
[0459] The device takes the captured image and uses OCR (optical character recognition) technology to analyze the text in the image, in this case extracting the expiration date and food name.
[0460] Step 3:
[0461] The terminal converts the analyzed expiration date and food name into JSON format and sends it to the server via the Internet as an API request.
[0462] Step 4:
[0463] The server parses the received API request and extracts the expiration date and food name from the JSON data.
[0464] Step 5:
[0465] The server stores the extracted data in a database, whose tables include the food product name, expiration date, and notification date.
[0466] Step 6:
[0467] The server calculates the notification date based on a predetermined period (e.g., 7 days) before the expiration date and saves it in the database.
[0468] Step 7:
[0469] The server runs a cron job every day to check all records in the database, compare the current date with the notification date, and find records with a matching notification date.
[0470] Step 8:
[0471] If the notification dates match, the server adds a notification for the food item to the notification queue and prepares to send the notification to the user.
[0472] Step 9:
[0473] The device sends a push notification to the user based on the notification received from the server, which includes information about the name of the food and its expiration date.
[0474] Step 10:
[0475] The server searches the recipe database based on the list of foods with upcoming expiration dates, and similarly searches for recipes that use foods with upcoming expiration dates.
[0476] Step 11:
[0477] The server sends the found recipe information to the terminal and suggests it to the user.
[0478] Step 12:
[0479] The device displays the received recipe information within the application and provides it to the user, who can use this information to prepare meals using food items that are nearing their expiration date.
[0480] Through these steps, the system helps users properly manage food expiration dates and use food without waste.
[0481] Example 1
[0482] 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."
[0483] The goal is to efficiently manage food expiration dates, reduce food waste due to expiration dates, and promote effective food utilization. The goal is also to enable users to consume food smoothly by suggesting recipes using food that is close to its expiration date.
[0484] 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.
[0485] In this invention, the server includes an image acquisition means for a user to photograph the expiration date of a food product, an analysis means for analyzing the acquired image data using OCR technology to analyze the expiration date and food name, a storage means for converting the analyzed expiration date and food name into JSON format and transmitting the converted data to the server via a network, a storage means for storing the data received by the server in a database, a notification means for periodically checking the database and notifying the user of foods whose expiration date is approaching, and a suggestion means for searching the database for recipes using foods whose expiration date is approaching and providing the recipes to the user. This allows users to effectively manage food expiration dates, reduce waste, and use food efficiently.
[0486] A "user" is an individual or organization that photographs expiration date information on food products and uses the system to manage expiration dates.
[0487] "Image acquisition means" refers to a function that allows a user to take a photo of the expiration date of food purchased using a smartphone or camera device.
[0488] "OCR technology" stands for optical character recognition technology, which is a technology that extracts character information from image data.
[0489] "Analysis means" refers to the function of extracting expiration dates and food names from image data obtained using OCR technology.
[0490] "Storage means" refers to the function that converts the analyzed expiration date and food name into JSON format and sends it to a server via a network.
[0491] "Server" refers to a central management system that stores received data in a database and provides notifications and suggestions.
[0492] The "database" is a data management system for storing data such as food names, expiration dates, and notification dates.
[0493] "Notification means" refers to a function that periodically checks the database and notifies the user about food items that are approaching their expiration date.
[0494] "Suggestion means" refers to a function that searches the database for recipes that use food items that are close to their expiration date and provides them to the user.
[0495] "JSON format" stands for JavaScript Object Notation, a way to represent data as lightweight, structured text.
[0496] The system of the present invention is intended to enable users to effectively manage expiration date information for food products and reduce food waste due to expiration dates.
[0497] Image Acquisition Method
[0498] The user takes a picture of the expiration date of the purchased food using a smartphone or other camera device. Through this step, information about the food with the expiration date is acquired as image data.
[0499] Analysis means
[0500] The device analyzes the image data captured by the image capture means. Specifically, it uses OCR (Optical Character Recognition) technology to extract the expiration date and food name from the image. This process uses the widely used Tesseract OCR library.
[0501] Preservation means
[0502] The terminal converts the analyzed expiration date and food name into a digital format (e.g., JSON format) and sends it to the server via the network. The server stores the received data in a database. The database structure is as follows:
[0503] TABLE Food Data (
[0504] id INT PRIMARY KEY AUTO_INCREMENT,
[0505] Food name VARCHAR(255),
[0506] Best before date
[0507] Notification date DATE
[0508] )
[0509] The expiration date and notification date are stored and managed in the database.
[0510] Notification means
[0511] The server periodically checks the database to see if any food is nearing its expiration date. If it is within a certain period of time (e.g., seven days) of the expiration date, the server sends a notification to the user. This notification can be sent via smartphone push notification, email, or other means.
[0512] Proposal means
[0513] The server searches the database for suitable recipes based on the list of foods that are about to expire. The searched recipes are those that can efficiently use the foods that are about to expire. The server then sends the appropriate recipe information to the terminal, which then displays it to the user.
[0514] Specific example explanation
[0515] For example, if a user purchases "Milk" and "Eggs" with expiration dates "2023-10-15" and "2023-10-10" respectively, the system will behave as follows:
[0516] 1. The user takes a photo of the expiration dates of "milk" and "eggs" with their smartphone.
[0517] 2. The device uses OCR technology to analyze the expiration dates and food names of "2023-10-15" (milk) and "2023-10-10" (eggs).
[0518] 3. The device converts the analysis data into JSON format and sends it to the server.
[0519] 4. The server saves the received data in the database and sets the notification date for "Milk" to "2023-10-08" and the notification date for "Eggs" to "2023-10-03".
[0520] 5. When a specific date and time approaches, the server checks the database, schedules notifications for the relevant foods, and sends notifications to the device, for example, "Your eggs are nearing their expiration date."
[0521] 6. At the same time, the server searches for recipes (e.g., "omelette") that use food that is close to its expiration date, and provides the recipe information to the terminal.
[0522] 7. The user receives a notification, checks the recipe for the "Omelette" in the application, and can use the "Eggs" within the deadline.
[0523] This allows users to properly manage expiration dates and reduce food waste.
[0524] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0525] Step 1:
[0526] The user takes a photo of the expiration date of purchased food using a smartphone or camera device. The input data is image data of the food. Specifically, the user launches the camera app on their smartphone and takes a photo of the part of the food where the expiration date is clearly written. The output of this step is image data of the food with the expiration date written on it.
[0527] Step 2:
[0528] The device analyzes the image data acquired in step 1 using OCR technology. The input data is an image of food with a best-before date. Specifically, the device uses the Tesseract OCR library to extract text information from the image data. The OCR library recognizes character strings such as "2023-10-15" and "milk" and generates text data as output.
[0529] Step 3:
[0530] The terminal converts the text data extracted in step 2 into JSON format. The input data is text data obtained by OCR analysis (e.g., "Food name: Milk", "Best before date: 2023-10-15"). Specifically, the terminal converts the text data into a digital format (JSON format). The output is JSON data such as the following:
[0531] json
[0532] {
[0533] "Food Name": "Milk",
[0534] "Best Before Date": "2023-10-15"
[0535] }
[0536] Step 4:
[0537] The terminal sends the JSON data generated in step 3 to the server via the network. The input data is text data in JSON format. Specifically, the terminal sends an HTTP POST request to send the data to the server. The output is a notification to the server that the data has been sent.
[0538] Step 5:
[0539] The server stores the JSON data received in step 4 in the database. The input data is the JSON data received from the terminal. Specifically, the server parses the JSON data and executes an INSERT statement to store the data in the database. The output is the food information stored in the database. For example:
[0540] INSERT INTO Food Data (Food Name, Best Before Date, Notification Date) VALUES ("Milk", "2023-10-15", "2023-10-08")
[0541] Step 6:
[0542] The server periodically checks the database to see which foods are approaching their expiration date. The input data is the food data in the database. Specifically, the server runs a query to extract foods that require notifications based on today's date. The output is a list of foods that need notifications. For example:
[0543] sql
[0544] SELECT FROM FoodData WHERE NotificationDate = CURRENT_DATE
[0545] Step 7:
[0546] The server sends a notification to the user about the foods extracted in step 6. The input data is a list of foods to be notified. Specifically, the server creates a push notification or email and sends it to the user. The output is a notification to the user. For example, "The expiration date of the milk is approaching."
[0547] Step 8:
[0548] The server searches the database for recipes that use foods that are about to expire. The input data is the list of foods that are the target of notifications. Specifically, the server queries the recipe database to find suitable recipes. The output is the recipe information. For example:
[0549] sql
[0550] SELECT recipe_name, details FROM recipe_data WHERE ingredients LIKE "%milk%"
[0551] Step 9:
[0552] The server sends the recipe information found in step 8 to the terminal. The input data is the found recipe information. Specifically, the server converts the recipe information into JSON format and sends it to the terminal. The output is a notification to the terminal that the recipe information has been sent.
[0553] Step 10:
[0554] The terminal displays the recipe information received in step 9 to the user. The input data is the recipe information received from the server. In specific operations, the terminal displays the recipe information as text or images on the application screen. The output is the recipe information displayed to the user. The user can use foods that are close to their expiration date based on the displayed recipe.
[0555] (Application example 1)
[0556] 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."
[0557] The problem that the present invention aims to solve is to efficiently manage the expiration dates of food products, reduce waste due to expiration, and enable quick inventory checks and sales promotion of products with approaching expiration dates in physical stores. Currently, manually checking the expiration dates of food products in stores is labor-intensive and does not allow for efficient management. In addition, there is a lack of effective means to notify consumers of products with approaching expiration dates, which leads to the problem of food waste. Furthermore, it is difficult to appropriately promote products with approaching expiration dates, which can result in lost sales opportunities.
[0558] 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.
[0559] In this invention, the server includes an image acquisition means, an analysis means, a storage means, a notification means, a proposal means, and a sales promotion means, thereby enabling real-time promotion of food products approaching their expiration dates.
[0560] The "image acquisition means" is a means for capturing an image of food information containing the expiration date using a camera device or the like and acquiring the image data.
[0561] The "analysis means" is a means for extracting and analyzing the expiration date and food name from the acquired image data using OCR technology.
[0562] The "storage means" is a means for converting the analyzed expiration date and food name into a digital format and storing the data in a database.
[0563] The "notification means" is a means for notifying the user that the expiration date is approaching, and is done by notifying the user via email or the notification function of a smartphone.
[0564] The "suggestion means" is a means for searching for recipes that use food items that are close to their expiration date and suggesting them to the user.
[0565] "Sales promotions" are methods for promoting food products that are nearing their expiration date, such as offering special prices or special offers when the product is nearing its expiration date.
[0566] The system of the present invention is designed to effectively manage information on food products that have expiration dates and to reduce waste caused by expiration dates. The various means of this system are as follows.
[0567] As an image acquisition means, a user takes a picture of the expiration date of the purchased food using a smartphone or other camera device, thereby acquiring information about the food with the expiration date as image data.
[0568] As an analysis means, the terminal analyzes the image data acquired by the image acquisition means. Specifically, it uses OCR (Optical Character Recognition) technology to extract the expiration date and food name from the image. In this process, an OCR library (e.g., Tesseract) is used.
[0569] As a storage means, the terminal converts the analyzed expiration date and food name into a digital format (e.g., JSON format) and sends the data to the server via the network. The server stores the received data in a database. The database structure is as follows:
[0570] TABLE Food Data (
[0571] id INT PRIMARY KEY AUTO_INCREMENT,
[0572] Food name VARCHAR(255),
[0573] Best before date
[0574] Notification date DATE
[0575] )
[0576] The expiration date and notification date are stored and managed in the database.
[0577] As a notification method, the server periodically checks the database to see if any food is approaching its expiration date. If it is within a certain period of time (e.g., seven days) of the expiration date, the server sends a notification to the user. This notification is sent via a smartphone, email, or other means.
[0578] As a suggestion method, the server searches the database for suitable recipes based on the list of foods that are about to expire. The searched recipes are those that can efficiently use the foods that are about to expire. The server then sends the appropriate recipe information to the terminal, which then displays it to the user.
[0579] As a sales promotion measure, the system will use smartphones or smart glasses in physical stores to manage the expiration dates of inventory items in real time for store staff and customers, and promote products that are approaching their expiration date. This function will reduce food waste in stores and boost sales.
[0580] As a concrete example, if a user purchases "milk" and "eggs" with expiration dates of "2023-10-15" and "2023-10-10," respectively, the system operates as follows: The user takes a photo of the expiration dates of the "milk" and "eggs" with their smartphone, and OCR technology is used to analyze the expiration dates and food names: "2023-10-15" (milk) and "2023-10-10" (eggs). The data is converted into a digital format and sent to the server. The server stores the received data in a database and sends notifications to the user when the specified date and time approaches. At the same time, the system suggests recipes (e.g., "omelets") using the food items that are about to expire, and stores can promote products with special prices when the expiration date is approaching.
[0581] Examples of prompts include:
[0582] "I have invented an invention for a system to manage food that is approaching its expiration date. This system uses OCR technology to analyze expiration date information taken from food photographs, stores it in a database, and notifies users when the expiration date is approaching. What technology can be used to extract the food name and expiration date?"
[0583] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0584] Step 1:
[0585] The terminal uses a camera device to take a picture of the expiration date of food purchased by the user. The input is image data taken by the camera, which is acquired by the image acquisition means. The output is image data containing the expiration date information.
[0586] Step 2:
[0587] The device uses OCR technology to extract the expiration date and food name from the image data acquired in step 1. The input is image data, which is converted into text data using an OCR library (e.g., Tesseract). The output is the extracted text data of the expiration date and food name.
[0588] Step 3:
[0589] The terminal converts the expiration date and food name extracted in step 2 into a digital format (e.g., JSON format) and sends the data to the server via the network. The input is text data, and data processing and network communication are performed. The output is the data converted into a digital format and sent to the server.
[0590] Step 4:
[0591] The server stores the data received in step 3 in a database. The input is JSON formatted data, and it performs SQL operations to insert it into the database. The output is a record of the expiration date and food name stored in the database.
[0592] Step 5:
[0593] The server periodically checks the database for foods that are nearing their expiration date. The input is all records in the database, and it checks whether their notification date matches the current date. The output is a list of foods that are nearing their expiration date.
[0594] Step 6:
[0595] The server sends a notification to the user about the foods that are close to their expiration date, as confirmed in step 5. The input is a list of foods that are close to their expiration date, which is sent to the user via email or the notification function of their smartphone. The output is the notification message sent to the user.
[0596] Step 7:
[0597] The server searches the database for suitable recipes based on the foods with upcoming expiration dates identified in step 5. The input is the list of foods with upcoming expiration dates and recipe information in the database, and performs data calculations. The output is the searched recipe information.
[0598] Step 8:
[0599] The server sends the recipe information retrieved in step 7 to the user's terminal, which displays it to the user. The input is the retrieved recipe information, which is transmitted to the user's terminal. The output is the recipe information displayed to the user.
[0600] Step 9:
[0601] Using smartphones or smart glasses in brick-and-mortar stores, the system manages the inventory status of food products approaching their expiration date in real time and implements promotions. The input is expiration date information in the database and stock information at the brick-and-mortar store, and promotions are carried out based on this. The output is product information to be promoted with special prices, etc.
[0602] 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.
[0603] The system of the present invention provides a series of means for strengthening food expiration date management and reducing food waste. In particular, by incorporating an emotion engine that recognizes and responds to user emotions, it is possible to improve the user experience. The various means that make up this system are as follows:
[0604] 1. Image acquisition method:
[0605] Users take a photo of the expiration date of a purchased food item with their smartphone camera, which generates an image showing the expiration date and the name of the food.
[0606] 2. Analysis method:
[0607] The device analyzes the image captured by the image capture means. Specifically, it uses OCR (Optical Character Recognition) technology to extract the expiration date and food name from the image. This analysis is performed using an OCR library (e.g., Tesseract).
[0608] 3. Preservation means:
[0609] The terminal converts the parsed expiration date and food name into a digital format and sends the data to a server via the internet as an API request.
[0610] The server stores the received data in a database and manages the expiration date and notification date.
[0611] 4. Means of notification:
[0612] The server periodically checks the database to see if any food is nearing its expiration date. If the expiration date is within a certain period (e.g., seven days), the server sends a notification to the user. The notification is sent via a smartphone app or email.
[0613] 5. Proposal method:
[0614] The server lists foods that are close to expiry date and searches the recipe database for recipes that use the corresponding foods. The found recipe information is sent to the terminal and suggested to the user.
[0615] 6. Emotion Engine:
[0616] The terminal is equipped with an emotion engine for recognizing the user's emotions, which analyzes the user's emotions based on the user's voice tone, facial expressions, and other biometric data.
[0617] The server adjusts the timing and content of notifications based on the user's emotional information obtained from the emotion engine. For example, if the user is feeling stressed, it can postpone less urgent notifications.
[0618] The server can also tailor the recipes it provides to the user based on their emotional state, for example suggesting easy-to-cook recipes to a user who is feeling tired.
[0619] Example explanation:
[0620] For example, if a user purchases "milk" and "eggs" with expiration dates of "2023-10-15" and "2023-10-10", respectively, the system will operate as follows:
[0621] 1. The user takes a photo of the expiration dates of "milk" and "eggs" with their smartphone.
[0622] 2. The device uses OCR technology to analyze the expiration dates and food names of "2023-10-15" (milk) and "2023-10-10" (eggs).
[0623] 3. The device converts the analysis data into JSON format and sends it to the server.
[0624] 4. The server saves the received data in the database and calculates the notification date. For example, the notification date for "Milk" is set to "2023-10-08" and the notification date for "Eggs" is set to "2023-10-03".
[0625] 5. When the specified date and time approaches, the server checks the database, schedules notifications for the relevant foods, and sends the notifications to the device.
[0626] 6. At the same time, the server searches for recipes (e.g., "omelette") that use food that is close to its expiration date, and provides the recipe information to the terminal.
[0627] 7. The device checks the user's emotional state, and if the emotion engine detects stress or fatigue, it will prioritize suggesting simple recipes.
[0628] 8. The user will receive a notification, can check the recipe details on the application and can consume the food within the deadline.
[0629] This allows users to properly manage expiration dates, reduce food waste, and receive support tailored to their emotional state.
[0630] The processing flow will be explained below.
[0631] Step 1:
[0632] The user takes a photo of the expiration date of the food they have purchased with the camera on their smartphone, thereby obtaining image data of the food with the expiration date printed on it.
[0633] Step 2:
[0634] The device uses OCR (Optical Character Recognition) technology to analyze the captured image data, extracting the expiration date and food name from the image.
[0635] Step 3:
[0636] The terminal converts the extracted expiration date and food name into JSON format and sends it to a server via the Internet.
[0637] Step 4:
[0638] The server parses the received JSON data and extracts the expiration date and food name.
[0639] Step 5:
[0640] The server stores the extracted data in a database. Specifically, it stores the food name, expiration date, and notification date in a table.
[0641] Step 6:
[0642] The server calculates the notification date based on a predetermined period (e.g., 7 days) before the expiration date and saves the notification date in the database.
[0643] Step 7:
[0644] The server runs a cron job every day to check the records in the database, comparing the current date with the notification date and finding any matching records.
[0645] Step 8:
[0646] If the notification dates match, the server adds a notification for the food item to the notification queue and prepares to send the notification to the user.
[0647] Step 9:
[0648] The device sends a push notification to the user based on the notification received from the server, which includes information about the name of the food and its expiration date.
[0649] Step 10:
[0650] The server searches the recipe database based on the list of foods that are about to expire, searches for recipes that can efficiently use the foods that are about to expire, and sends the found recipes to the terminal.
[0651] Step 11:
[0652] The device displays the recipe information it finds to the user, who can then use the suggested recipes to use food that is close to its expiration date.
[0653] Step 12:
[0654] The device uses an emotion engine to recognize the user's emotional state, analyzing the user's voice tone, facial expressions, and biometric data to understand the user's current emotional state.
[0655] Step 13:
[0656] The server adjusts the timing and content of notifications based on the user's emotional information obtained from the emotion engine. For example, if the user is feeling stressed, it delays less urgent notifications.
[0657] Step 14:
[0658] The server adjusts the recipe suggestions based on the emotion engine data. For example, if the user is tired, it will prioritize easy-to-cook recipes.
[0659] Step 15:
[0660] The device displays recipe information that matches the user's emotional state and suggests it to the user, allowing the user to refer to and cook recipes that correspond to their emotions.
[0661] Through the above steps, this system allows users to easily manage food expiration dates, helps them use food without waste, and also provides flexible responses according to the user's emotional state.
[0662] Example 2
[0663] 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."
[0664] Conventional food expiration date management systems rely on users to consciously manage expiration dates, which results in food waste. Furthermore, they lack the ability to provide appropriate notifications and suggestions based on the user's emotional state, resulting in a poor user experience.
[0665] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[0666] In this invention, the server includes an image acquisition means for acquiring information about food items bearing expiration dates, an optical character recognition means for analyzing the expiration dates and food item names from the acquired images, a storage means for converting the analyzed expiration dates and food item names into a digital format and storing them in a database, a notification means for notifying the user that the expiration date is approaching, a recipe suggestion means for suggesting recipes using food items that are close to their expiration date, an emotion recognition means for recognizing the user's emotion, and an adjustment means for adjusting the timing and content of the notification based on the user's emotion information obtained from the emotion recognition means. This strengthens expiration date management, reduces food waste, and enables appropriate notifications and suggestions based on the user's emotional state.
[0667] An "image acquisition means" is a device or method that allows a user to use a smartphone camera or other device to take a photo of the food packaging or the part of the food product that lists the expiration date, and acquire that information as a digital image.
[0668] "Optical character recognition means" refers to a technology used to extract text information from acquired digital images, specifically analyzing expiration dates and food names using OCR (optical character recognition) technology.
[0669] The "storage means" refers to the technology or device that converts the analyzed expiration date and food name into a digital format and stores it in a database via the Internet.
[0670] The "notification means" refers to a method or device for notifying users about food products that are approaching their expiration date, and sends notifications via a smartphone app or email.
[0671] The "recipe suggestion means" refers to a system or method for searching a database for relevant recipes and suggesting them to a user in order to provide recipes that can be made using food items that are close to their expiration date.
[0672] "Emotion recognition means" refers to technology or devices for analyzing a user's emotions based on the user's tone of voice, facial expressions, and other biometric data.
[0673] The "adjustment means" refers to a method or technology for adjusting the timing and content of notifications based on the user's emotional information obtained from the emotion recognition means.
[0674] The system of the present invention aims to reduce food waste by streamlining food expiration date management and providing appropriate notifications and suggestions based on the user's emotional state. This system is realized mainly using the following hardware and software.
[0675] The system includes an image acquisition means, an optical character recognition means, a storage means, a notification means, a recipe suggestion means, an emotion recognition means, and an adjustment means to allow users to manage the expiration dates of food products.
[0676] First, the user uses the smartphone camera to take a picture of the package of the purchased food or the part of the package that has the expiration date written on it, thereby generating a smartphone camera as an image acquisition means.
[0677] Next, the device analyzes the acquired image using the Tesseract OCR library. The Tesseract OCR library, an optical character recognition method, extracts the expiration date and food name from the image. For example, if a user purchases "milk" and "eggs" and their respective expiration dates are "2023-10-15" and "2023-10-10," this information is analyzed.
[0678] The analyzed data is converted to JSON format and sent as an API request from the device that acts as the storage means to the server. The server stores the received data in a database and calculates the expiration date and notification date. For example, if the expiration date of "Milk" is "2023-10-15", the notification date is set to "2023-10-08".
[0679] The server periodically checks the database to identify foods that are approaching their expiration date. As a notification method, the server sends a notification to the user a specified period of time in advance. Notifications are sent via a smartphone app or email. For example, the notification date for "Milk" is "2023-10-08," so the notification will arrive on the user's smartphone on that day.
[0680] In addition, the server lists recipes that use food items that are close to expiry date as a recipe suggestion means. For example, it searches the recipe database for an "omelette" recipe that uses "milk and eggs" and suggests it to the user.
[0681] Additionally, the device captures voice tones and facial expressions to recognize the user's emotions. This emotion recognition function analyzes the user's emotional state and transmits it to the server as needed.
[0682] The server has an adjustment means for adjusting the timing and content of notifications based on the user's emotional information obtained from the emotion recognition means. For example, if the user is feeling stressed, notifications with low urgency will be postponed and easy-to-cook recipes (e.g., "easy omelet") will be suggested first.
[0683] Example prompt sentence:
[0684] "The expiration dates for milk and eggs are 2023-10-15 and 2023-10-10, respectively. Please notify me when their expiration dates are approaching and also suggest some easy recipes."
[0685] This allows users to properly manage expiration dates, reduce food waste, and receive support tailored to their emotional state.
[0686] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0687] Step 1:
[0688] The user uses the smartphone camera to take a picture of the packaging of the purchased food or the part of the food that has the expiration date written on it. Specifically, the user opens the camera app and takes a picture so that the expiration date and the name of the food can be confirmed. The smartphone camera, which acts as an image capture means, then captures the image and saves it on the device.
[0689] Input: A user-taken image of a food package
[0690] Output: Image file (food packaging image)
[0691] Step 2:
[0692] The device analyzes the acquired image file using the Tesseract OCR library. Specifically, it uses OCR (Optical Character Recognition) technology to extract the expiration date and food name from the image. This process converts the image into text data.
[0693] Input: Image file (food packaging image)
[0694] Output: Text data (best before date and food name)
[0695] Step 3:
[0696] The device converts the extracted expiration date and food name data into JSON format. Specifically, it embeds the text data into a JSON object and converts it to this data format. This conversion makes the data available to send to the server as an API request.
[0697] Input: Text data (best before date and food name)
[0698] Output: JSON data (best before date and food name)
[0699] Step 4:
[0700] The device sends JSON data as an API request to the server via the Internet. Specifically, it generates an HTTP request and sends it to the server. This process sends the expiration date and food name data to the server.
[0701] Input: JSON data (best before date and food name)
[0702] Output: API request sent to the server
[0703] Step 5:
[0704] The server parses the received JSON data and saves it in the database. Specifically, it parses the JSON data, extracts the expiration date and food name, and saves them in the database. This process stores the expiration date and food name in the database.
[0705] Input: JSON data (best before date and food name)
[0706] Output: Save to database (expiration date and food name)
[0707] Step 6:
[0708] The server calculates the notification date from the expiration date and saves it in the database. Specifically, it calculates the date a specified period before the expiration date and saves this as the notification date in the database. For example, for "2023-10-15" (milk), the notification date would be "2023-10-08".
[0709] Input: Best Before Date
[0710] Output: Notification date (calculate and store notification date)
[0711] Step 7:
[0712] The server periodically checks the database to identify foods whose expiration date is approaching. Specifically, it periodically scans the data in the database every day and extracts foods whose expiration date is approaching. This extraction identifies foods that are subject to notification.
[0713] Input: Best before and notification dates in the database
[0714] Output: List of foods to be notified
[0715] Step 8:
[0716] If a notification is required, the server sends the notification to the user. Specifically, the server sends the notification to the user using a smartphone app or email. This process allows the user to receive the notification.
[0717] Input: List of foods to be notified
[0718] Output: User notification
[0719] Step 9:
[0720] The server lists recipes that use food items that are close to expiry date and searches for the corresponding recipes in the recipe database. Specifically, it queries the recipe database and extracts the corresponding recipes. This extraction identifies the recipe information.
[0721] Input: List of foods to be notified
[0722] Output: Recipe information
[0723] Step 10:
[0724] The server then sends the found recipe information to the device. Specifically, it converts the recipe information into JSON format and sends it to the device as an HTTP response. This process provides the recipe information to the user.
[0725] Input: Recipe information
[0726] Output: Send recipe information to the device
[0727] Step 11:
[0728] The device captures the user's voice tone, facial expressions, and other biometric data and analyzes them with an emotion engine. Specifically, the device uses a camera and microphone to capture the user's voice and face, and then analyzes this data with an emotion engine. This analysis identifies the user's emotional state.
[0729] Input: User's tone of voice, facial expressions, and other biometric data
[0730] Output: User's emotional state
[0731] Step 12:
[0732] The device sends the user's emotional state to the server. Specifically, it converts the emotional state data into JSON format, generates an HTTP request, and sends it to the server. Through this process, the server obtains the user's emotional information.
[0733] Input: User's emotional state
[0734] Output: Emotional state sent to the server
[0735] Step 13:
[0736] The server adjusts the timing and content of notifications based on the user's emotional state. Specifically, it analyzes the user's emotional state and adjusts the timing of notifications and recipe information as necessary. This adjustment enables the provision of services that take the user's emotions into consideration.
[0737] Input: User's emotional state
[0738] Output: Adjusted notifications and recipe information
[0739] Step 14:
[0740] The user checks the notification and recipe information provided by the smartphone app and uses the food within the deadline. Specifically, the user receives a notification and views detailed recipe information in the app. This process allows the user to properly manage food and reduce waste.
[0741] Input: Adjusted notifications and recipe information
[0742] Output: User action (food usage)
[0743] (Application example 2)
[0744] 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."
[0745] Today, many users expend a lot of time and effort managing food expiration dates, resulting in unnecessary food waste. Furthermore, the lack of personalized support tailored to users' lifestyles and emotional states often leads to a dissatisfied user experience. This can lead to food waste and a decline in quality of life. Given this current situation, there is a need for a system that can reduce food waste and improve the user experience by providing notifications and recipe suggestions based on the user's emotional state.
[0746] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes an image acquisition means for acquiring information about food items with expiration dates, an analysis means for analyzing the expiration dates and food item names from the acquired images, a storage means for saving the analyzed expiration dates and food item names in a database, a notification means for notifying the user that the expiration date is approaching, a suggestion means for suggesting recipes using the food items with an approaching expiration date, an emotion analysis means for analyzing the user's emotions, and an adjustment means for adjusting the timing and content of notifications based on the emotion analysis results. This not only enables the user to efficiently manage expiration dates but also enables the user to receive optimal notifications and recipe suggestions based on their emotional state.
[0747] The "image acquisition means" is a means for acquiring information about food products that have expiration dates printed on them, and is a system in which a user photographs the expiration date of a food product and acquires image data of the photograph.
[0748] The "analysis means" is a means for analyzing the expiration date and food name from the acquired image, and is a system that extracts the necessary information from the image data using optical character recognition technology.
[0749] The "storage means" is a means for storing the analyzed expiration dates and food names in a database, and is a system that converts the extracted data into a digital format and stores it on a server.
[0750] The "notification means" is a means for notifying the user that the expiration date is approaching, and is a system that conveys the timing and content of the notification to the user.
[0751] The "suggestion means" is a means for suggesting recipes using food items that are close to their expiration date, and is a system that searches for appropriate recipes from a database and provides them to the user.
[0752] The "emotion analysis means" is a means for analyzing the user's emotions, and is a system that recognizes the user's emotional state using biometric data such as voice tone and facial expressions.
[0753] The "adjustment means" is a means for adjusting the timing and content of notifications based on the results of emotion analysis, and is a system that dynamically changes the priority and content of notifications according to the user's emotional state.
[0754] The present invention is a system for strengthening food expiration date management and reducing food waste, and in particular, improves the user experience by incorporating an emotion engine that recognizes and responds to user emotions. To realize this system, the following various means are required.
[0755] 1. Image acquisition method
[0756] Users take a photo of the expiration date of a purchased food item with their smartphone camera, which generates an image showing the expiration date and the name of the food.
[0757] 2. Analysis method
[0758] The device analyzes the captured image to determine the expiration date and food name. Specifically, it uses optical character recognition (OCR) technology to extract the date and food name from the image. For example, the Tesseract library can be used.
[0759] 3. Preservation means
[0760] The device converts the analyzed expiration date and food name into a digital format and sends the data as an API request to a server via the internet. The server stores the received data in a database and manages expiration dates and notification dates.
[0761] 4. Means of notification
[0762] The server periodically checks the database to see if any food is nearing its expiration date. If the expiration date is within a certain period (e.g., seven days), the server sends a notification to the user. The notification is sent via a smartphone app or email.
[0763] 5. Proposal method
[0764] The server lists foods that are close to expiry date and searches the recipe database for recipes that use the corresponding foods. The found recipe information is sent to the terminal and suggested to the user.
[0765] 6. Emotion analysis method
[0766] The device is equipped with an emotion analysis means for analyzing the user's emotions. This means analyzes the user's emotions based on the user's voice tone, facial expressions, and other biometric data. For example, it can use the DeepFace library to analyze facial expressions, and a TensorFlow-based speech recognition library for voice analysis.
[0767] 7. Adjustment means
[0768] The server adjusts the timing and content of notifications based on the results of emotion analysis. For example, if the user is feeling stressed, it postpones less urgent notifications. It also selects recipe suggestions based on the user's emotional state. For example, if the user is feeling tired, it prioritizes easy-to-cook recipes.
[0769] Specific example explanation
[0770] If a user purchases "milk" and "eggs" with expiration dates of "2023-10-15" and "2023-10-10", respectively, the system will operate as follows:
[0771] 1. The user takes a photo of the expiration dates of "milk" and "eggs" with their smartphone.
[0772] 2. The device uses OCR technology to analyze the expiration dates and food names of "2023-10-15" (milk) and "2023-10-10" (eggs).
[0773] 3. The device converts the analysis data into JSON format and sends it to the server.
[0774] 4. The server saves the received data in the database and calculates the notification date. For example, the notification date for "Milk" is set to "2023-10-08" and the notification date for "Eggs" is set to "2023-10-03".
[0775] 5. When the specified date and time approaches, the server checks the database, schedules notifications for the relevant foods, and sends the notifications to the device.
[0776] 6. At the same time, the server searches for recipes (e.g., "omelette") that use food that is close to its expiration date, and provides the recipe information to the terminal.
[0777] 7. The device checks the user's emotional state, and if the emotion analysis means detects stress or fatigue, it will prioritize suggesting simple recipes.
[0778] 8. The user will receive a notification, can check the recipe details on the application and can consume the food within the deadline.
[0779] Prompt Sentence Examples
[0780] "Please provide a Python program that captures images that make users feel tired, performs sentiment analysis, and suggests optimal content. The DeepFace library will be used for sentiment analysis, and the suggested content will be obtained from an API. Please also include a function to display the suggested content to the user."
[0781] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0782] Step 1:
[0783] A user takes a photo of the expiration date of a food product they have purchased using their smartphone camera. Optical data (image) is obtained as input. The image contains the expiration date and the name of the food product.
[0784] Step 2:
[0785] The device analyzes the captured image. It receives image data as input and uses OCR (optical character recognition) technology to extract the expiration date and food name from the image. This outputs text data of the expiration date (e.g., "2023-10-15") and the food name (e.g., "Milk").
[0786] Step 3:
[0787] The device converts the analyzed expiration date and food name into JSON format and sends it to the server via the internet as an API request. It receives text data as input and outputs the data converted into JSON format.
[0788] Step 4:
[0789] The server stores the received JSON data in the database. It takes JSON data as input and outputs the database entries required to store the expiration date and food name in the database.
[0790] Step 5:
[0791] The server periodically checks the database to see which foods are approaching their expiration date. It takes as input all entries in the database, compares them with the current date, and outputs any data that requires notification.
[0792] Step 6:
[0793] If the server detects a specific period (e.g., 7 days before), it sends a notification to the user. The expiration date data that requires notification is acquired as input, and a notification message is output via a smartphone app or email.
[0794] Step 7:
[0795] The server searches the recipe database for recipes that use food items that are close to expiry. It receives the name of a food item as input and outputs a list of related recipes.
[0796] Step 8:
[0797] The server sends the recipe information it finds to the terminal. It receives recipe data as input and outputs the data to be sent to the terminal in JSON format.
[0798] Step 9:
[0799] The terminal receives the recipe information and displays it to the user. It takes the received recipe data as input and outputs data for display on the user interface.
[0800] Step 10:
[0801] The device acquires data on the user's voice tone and facial expressions to analyze the user's emotions. It receives voice and image data as input and uses an emotion analysis engine to output data that identifies the user's emotional state.
[0802] Step 11:
[0803] The device selects recipe suggestions based on the results of sentiment analysis, receives sentiment analysis results and recipe data as input, and outputs the optimal recipe.
[0804] Step 12:
[0805] The device notifies the user of the best recipe and provides emotionally appropriate actions. It receives the selected recipe and the user's emotional state as input, and outputs data for displaying notifications and recipe details.
[0806] 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.
[0807] 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.
[0808] 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.
[0809] [Third embodiment]
[0810] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0811] 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.
[0812] 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).
[0813] 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.
[0814] 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.
[0815] 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).
[0816] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for 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.
[0817] 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.
[0818] 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.
[0819] 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.
[0820] 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.
[0821] 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."
[0822] The system of the present invention is designed to effectively manage information on food products that have expiration dates and to reduce waste caused by expiration dates. The various means of this system are as follows.
[0823] 1. Image acquisition method:
[0824] A user takes a picture of the expiration date of a purchased food product using a smartphone or other camera device, and information about the food product with the expiration date is acquired as image data.
[0825] 2. Analysis method:
[0826] The device analyzes the image data acquired by the image acquisition means. Specifically, it uses OCR (Optical Character Recognition) technology to extract the expiration date and food name from the image. This process may involve using an OCR library (e.g., Tesseract).
[0827] 3. Preservation means:
[0828] The terminal converts the parsed expiration date and food name into a digital format (e.g., JSON format) and sends the data to the server via the network. The server stores the received data in a database. The database structure is as follows:
[0829] TABLE Food Data (
[0830] id INT PRIMARY KEY AUTO_INCREMENT,
[0831] Food name VARCHAR(255),
[0832] Best before date
[0833] Notification date DATE
[0834] )
[0835] The expiration date and notification date are stored and managed in the database.
[0836] 4. Means of notification:
[0837] The server periodically checks the database to see if any food is nearing its expiration date. If it is within a certain period of time (e.g., seven days) of the expiration date, the server sends a notification to the user. This notification is sent via a smartphone, email, or other means.
[0838] 5. Proposal method:
[0839] The server searches the database for suitable recipes based on the list of foods that are about to expire. The searched recipes are those that can efficiently use the foods that are about to expire. The server then sends the appropriate recipe information to the terminal, which then displays it to the user.
[0840] Example explanation:
[0841] For example, if a user purchases "milk" and "eggs" with expiration dates of "2023-10-15" and "2023-10-10", respectively, the system will operate as follows:
[0842] 1. The user takes a photo of the expiration dates of "milk" and "eggs" with their smartphone.
[0843] 2. The device uses OCR technology to analyze the expiration dates and food names of "2023-10-15" (milk) and "2023-10-10" (eggs).
[0844] 3. The device converts the analysis data into JSON format and sends it to the server.
[0845] 4. The server saves the received data in the database and sets the notification date for "Milk" to "2023-10-08" and the notification date for "Eggs" to "2023-10-03".
[0846] 5. When a specific date and time approaches, the server checks the database, schedules notifications for the relevant foods, and sends notifications to the device, for example, "Your eggs are nearing their expiration date."
[0847] 6. At the same time, the server searches for recipes (e.g., "omelette") that use food that is close to its expiration date, and provides the recipe information to the terminal.
[0848] 7. The user receives a notification, checks the recipe for the "Omelette" in the application, and can use the "Eggs" within the deadline.
[0849] This allows users to properly manage expiration dates and reduce food waste.
[0850] The processing flow will be explained below.
[0851] Step 1:
[0852] Users take a photo of the expiration date of a purchased food item with their smartphone camera, which generates an image showing the expiration date and the name of the food.
[0853] Step 2:
[0854] The device takes the captured image and uses OCR (optical character recognition) technology to analyze the text in the image, in this case extracting the expiration date and food name.
[0855] Step 3:
[0856] The terminal converts the analyzed expiration date and food name into JSON format and sends it to the server via the Internet as an API request.
[0857] Step 4:
[0858] The server parses the received API request and extracts the expiration date and food name from the JSON data.
[0859] Step 5:
[0860] The server stores the extracted data in a database, whose tables include the food product name, expiration date, and notification date.
[0861] Step 6:
[0862] The server calculates the notification date based on a predetermined period (e.g., 7 days) before the expiration date and saves it in the database.
[0863] Step 7:
[0864] The server runs a cron job every day to check all records in the database, compare the current date with the notification date, and find records with a matching notification date.
[0865] Step 8:
[0866] If the notification dates match, the server adds a notification for the food item to the notification queue and prepares to send the notification to the user.
[0867] Step 9:
[0868] The device sends a push notification to the user based on the notification received from the server, which includes information about the name of the food and its expiration date.
[0869] Step 10:
[0870] The server searches the recipe database based on the list of foods with upcoming expiration dates, and similarly searches for recipes that use foods with upcoming expiration dates.
[0871] Step 11:
[0872] The server sends the found recipe information to the terminal and suggests it to the user.
[0873] Step 12:
[0874] The device displays the received recipe information within the application and provides it to the user, who can use this information to prepare meals using food items that are nearing their expiration date.
[0875] Through these steps, the system helps users properly manage food expiration dates and use food without waste.
[0876] Example 1
[0877] 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."
[0878] The goal is to efficiently manage food expiration dates, reduce food waste due to expiration dates, and promote effective food utilization. The goal is also to enable users to consume food smoothly by suggesting recipes using food that is close to its expiration date.
[0879] 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.
[0880] In this invention, the server includes an image acquisition means for a user to photograph the expiration date of a food product, an analysis means for analyzing the acquired image data using OCR technology to analyze the expiration date and food name, a storage means for converting the analyzed expiration date and food name into JSON format and transmitting the converted data to the server via a network, a storage means for storing the data received by the server in a database, a notification means for periodically checking the database and notifying the user of foods whose expiration date is approaching, and a suggestion means for searching the database for recipes using foods whose expiration date is approaching and providing the recipes to the user. This allows users to effectively manage food expiration dates, reduce waste, and use food efficiently.
[0881] A "user" is an individual or organization that photographs expiration date information on food products and uses the system to manage expiration dates.
[0882] "Image acquisition means" refers to a function that allows a user to take a photo of the expiration date of food purchased using a smartphone or camera device.
[0883] "OCR technology" stands for optical character recognition technology, which is a technology that extracts character information from image data.
[0884] "Analysis means" refers to the function of extracting expiration dates and food names from image data obtained using OCR technology.
[0885] "Storage means" refers to the function that converts the analyzed expiration date and food name into JSON format and sends it to a server via a network.
[0886] "Server" refers to a central management system that stores received data in a database and provides notifications and suggestions.
[0887] The "database" is a data management system for storing data such as food names, expiration dates, and notification dates.
[0888] "Notification means" refers to a function that periodically checks the database and notifies the user about food items that are approaching their expiration date.
[0889] "Suggestion means" refers to a function that searches the database for recipes that use food items that are close to their expiration date and provides them to the user.
[0890] "JSON format" stands for JavaScript Object Notation, a way to represent data as lightweight, structured text.
[0891] The system of the present invention is intended to enable users to effectively manage expiration date information for food products and reduce food waste due to expiration dates.
[0892] Image Acquisition Method
[0893] The user takes a picture of the expiration date of the purchased food using a smartphone or other camera device. Through this step, information about the food with the expiration date is acquired as image data.
[0894] Analysis means
[0895] The device analyzes the image data captured by the image capture means. Specifically, it uses OCR (Optical Character Recognition) technology to extract the expiration date and food name from the image. This process uses the widely used Tesseract OCR library.
[0896] Preservation means
[0897] The terminal converts the analyzed expiration date and food name into a digital format (e.g., JSON format) and sends it to the server via the network. The server stores the received data in a database. The database structure is as follows:
[0898] TABLE Food Data (
[0899] id INT PRIMARY KEY AUTO_INCREMENT,
[0900] Food name VARCHAR(255),
[0901] Best before date
[0902] Notification date DATE
[0903] )
[0904] The expiration date and notification date are stored and managed in the database.
[0905] Notification means
[0906] The server periodically checks the database to see if any food is nearing its expiration date. If it is within a certain period of time (e.g., seven days) of the expiration date, the server sends a notification to the user. This notification can be sent via smartphone push notification, email, or other means.
[0907] Proposal means
[0908] The server searches the database for suitable recipes based on the list of foods that are about to expire. The searched recipes are those that can efficiently use the foods that are about to expire. The server then sends the appropriate recipe information to the terminal, which then displays it to the user.
[0909] Specific example explanation
[0910] For example, if a user purchases "Milk" and "Eggs" with expiration dates "2023-10-15" and "2023-10-10" respectively, the system will behave as follows:
[0911] 1. The user takes a photo of the expiration dates of "milk" and "eggs" with their smartphone.
[0912] 2. The device uses OCR technology to analyze the expiration dates and food names of "2023-10-15" (milk) and "2023-10-10" (eggs).
[0913] 3. The device converts the analysis data into JSON format and sends it to the server.
[0914] 4. The server saves the received data in the database and sets the notification date for "Milk" to "2023-10-08" and the notification date for "Eggs" to "2023-10-03".
[0915] 5. When a specific date and time approaches, the server checks the database, schedules notifications for the relevant foods, and sends notifications to the device, for example, "Your eggs are nearing their expiration date."
[0916] 6. At the same time, the server searches for recipes (e.g., "omelette") that use food that is close to its expiration date, and provides the recipe information to the terminal.
[0917] 7. The user receives a notification, checks the recipe for the "Omelette" in the application, and can use the "Eggs" within the deadline.
[0918] This allows users to properly manage expiration dates and reduce food waste.
[0919] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0920] Step 1:
[0921] The user takes a photo of the expiration date of purchased food using a smartphone or camera device. The input data is image data of the food. Specifically, the user launches the camera app on their smartphone and takes a photo of the part of the food where the expiration date is clearly written. The output of this step is image data of the food with the expiration date written on it.
[0922] Step 2:
[0923] The device analyzes the image data acquired in step 1 using OCR technology. The input data is an image of food with a best-before date. Specifically, the device uses the Tesseract OCR library to extract text information from the image data. The OCR library recognizes character strings such as "2023-10-15" and "milk" and generates text data as output.
[0924] Step 3:
[0925] The terminal converts the text data extracted in step 2 into JSON format. The input data is text data obtained by OCR analysis (e.g., "Food name: Milk", "Best before date: 2023-10-15"). Specifically, the terminal converts the text data into a digital format (JSON format). The output is JSON data such as the following:
[0926] json
[0927] {
[0928] "Food Name": "Milk",
[0929] "Best Before Date": "2023-10-15"
[0930] }
[0931] Step 4:
[0932] The terminal sends the JSON data generated in step 3 to the server via the network. The input data is text data in JSON format. Specifically, the terminal sends an HTTP POST request to send the data to the server. The output is a notification to the server that the data has been sent.
[0933] Step 5:
[0934] The server stores the JSON data received in step 4 in the database. The input data is the JSON data received from the terminal. Specifically, the server parses the JSON data and executes an INSERT statement to store the data in the database. The output is the food information stored in the database. For example:
[0935] INSERT INTO Food Data (Food Name, Best Before Date, Notification Date) VALUES ("Milk", "2023-10-15", "2023-10-08")
[0936] Step 6:
[0937] The server periodically checks the database to see which foods are approaching their expiration date. The input data is the food data in the database. Specifically, the server runs a query to extract foods that require notifications based on today's date. The output is a list of foods that need notifications. For example:
[0938] sql
[0939] SELECT FROM FoodData WHERE NotificationDate = CURRENT_DATE
[0940] Step 7:
[0941] The server sends a notification to the user about the foods extracted in step 6. The input data is a list of foods to be notified. Specifically, the server creates a push notification or email and sends it to the user. The output is a notification to the user. For example, "The expiration date of the milk is approaching."
[0942] Step 8:
[0943] The server searches the database for recipes that use foods that are about to expire. The input data is the list of foods that are the target of notifications. Specifically, the server queries the recipe database to find suitable recipes. The output is the recipe information. For example:
[0944] sql
[0945] SELECT recipe_name, details FROM recipe_data WHERE ingredients LIKE "%milk%"
[0946] Step 9:
[0947] The server sends the recipe information found in step 8 to the terminal. The input data is the found recipe information. Specifically, the server converts the recipe information into JSON format and sends it to the terminal. The output is a notification to the terminal that the recipe information has been sent.
[0948] Step 10:
[0949] The terminal displays the recipe information received in step 9 to the user. The input data is the recipe information received from the server. In specific operations, the terminal displays the recipe information as text or images on the application screen. The output is the recipe information displayed to the user. The user can use foods that are close to their expiration date based on the displayed recipe.
[0950] (Application example 1)
[0951] 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."
[0952] The problem that the present invention aims to solve is to efficiently manage the expiration dates of food products, reduce waste due to expiration, and enable quick inventory checks and sales promotion of products with approaching expiration dates in physical stores. Currently, manually checking the expiration dates of food products in stores is labor-intensive and does not allow for efficient management. In addition, there is a lack of effective means to notify consumers of products with approaching expiration dates, which leads to the problem of food waste. Furthermore, it is difficult to appropriately promote products with approaching expiration dates, which can result in lost sales opportunities.
[0953] 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.
[0954] In this invention, the server includes an image acquisition means, an analysis means, a storage means, a notification means, a proposal means, and a sales promotion means, thereby enabling real-time promotion of food products approaching their expiration dates.
[0955] The "image acquisition means" is a means for capturing an image of food information containing the expiration date using a camera device or the like and acquiring the image data.
[0956] The "analysis means" is a means for extracting and analyzing the expiration date and food name from the acquired image data using OCR technology.
[0957] The "storage means" is a means for converting the analyzed expiration date and food name into a digital format and storing the data in a database.
[0958] The "notification means" is a means for notifying the user that the expiration date is approaching, and is done by notifying the user via email or the notification function of a smartphone.
[0959] The "suggestion means" is a means for searching for recipes that use food items that are close to their expiration date and suggesting them to the user.
[0960] "Sales promotions" are methods for promoting food products that are nearing their expiration date, such as offering special prices or special offers when the product is nearing its expiration date.
[0961] The system of the present invention is designed to effectively manage information on food products that have expiration dates and to reduce waste caused by expiration dates. The various means of this system are as follows.
[0962] As an image acquisition means, a user takes a picture of the expiration date of the purchased food using a smartphone or other camera device, thereby acquiring information about the food with the expiration date as image data.
[0963] As an analysis means, the terminal analyzes the image data acquired by the image acquisition means. Specifically, it uses OCR (Optical Character Recognition) technology to extract the expiration date and food name from the image. In this process, an OCR library (e.g., Tesseract) is used.
[0964] As a storage means, the terminal converts the analyzed expiration date and food name into a digital format (e.g., JSON format) and sends the data to the server via the network. The server stores the received data in a database. The database structure is as follows:
[0965] TABLE Food Data (
[0966] id INT PRIMARY KEY AUTO_INCREMENT,
[0967] Food name VARCHAR(255),
[0968] Best before date
[0969] Notification date DATE
[0970] )
[0971] The expiration date and notification date are stored and managed in the database.
[0972] As a notification method, the server periodically checks the database to see if any food is approaching its expiration date. If it is within a certain period of time (e.g., seven days) of the expiration date, the server sends a notification to the user. This notification is sent via a smartphone, email, or other means.
[0973] As a suggestion method, the server searches the database for suitable recipes based on the list of foods that are about to expire. The searched recipes are those that can efficiently use the foods that are about to expire. The server then sends the appropriate recipe information to the terminal, which then displays it to the user.
[0974] As a sales promotion measure, the system will use smartphones or smart glasses in physical stores to manage the expiration dates of inventory items in real time for store staff and customers, and promote products that are approaching their expiration date. This function will reduce food waste in stores and boost sales.
[0975] As a concrete example, if a user purchases "milk" and "eggs" with expiration dates of "2023-10-15" and "2023-10-10," respectively, the system operates as follows: The user takes a photo of the expiration dates of the "milk" and "eggs" with their smartphone, and OCR technology is used to analyze the expiration dates and food names: "2023-10-15" (milk) and "2023-10-10" (eggs). The data is converted into a digital format and sent to the server. The server stores the received data in a database and sends notifications to the user when the specified date and time approaches. At the same time, the system suggests recipes (e.g., "omelets") using the food items that are about to expire, and stores can promote products with special prices when the expiration date is approaching.
[0976] Examples of prompts include:
[0977] "I have invented an invention for a system to manage food that is approaching its expiration date. This system uses OCR technology to analyze expiration date information taken from food photographs, stores it in a database, and notifies users when the expiration date is approaching. What technology can be used to extract the food name and expiration date?"
[0978] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0979] Step 1:
[0980] The terminal uses a camera device to take a picture of the expiration date of food purchased by the user. The input is image data taken by the camera, which is acquired by the image acquisition means. The output is image data containing the expiration date information.
[0981] Step 2:
[0982] The device uses OCR technology to extract the expiration date and food name from the image data acquired in step 1. The input is image data, which is converted into text data using an OCR library (e.g., Tesseract). The output is the extracted text data of the expiration date and food name.
[0983] Step 3:
[0984] The terminal converts the expiration date and food name extracted in step 2 into a digital format (e.g., JSON format) and sends the data to the server via the network. The input is text data, and data processing and network communication are performed. The output is the data converted into a digital format and sent to the server.
[0985] Step 4:
[0986] The server stores the data received in step 3 in a database. The input is JSON formatted data, and it performs SQL operations to insert it into the database. The output is a record of the expiration date and food name stored in the database.
[0987] Step 5:
[0988] The server periodically checks the database for foods that are nearing their expiration date. The input is all records in the database, and it checks whether their notification date matches the current date. The output is a list of foods that are nearing their expiration date.
[0989] Step 6:
[0990] The server sends a notification to the user about the foods that are close to their expiration date, as confirmed in step 5. The input is a list of foods that are close to their expiration date, which is sent to the user via email or the notification function of their smartphone. The output is the notification message sent to the user.
[0991] Step 7:
[0992] The server searches the database for suitable recipes based on the foods with upcoming expiration dates identified in step 5. The input is the list of foods with upcoming expiration dates and recipe information in the database, and performs data calculations. The output is the searched recipe information.
[0993] Step 8:
[0994] The server sends the recipe information retrieved in step 7 to the user's terminal, which displays it to the user. The input is the retrieved recipe information, which is transmitted to the user's terminal. The output is the recipe information displayed to the user.
[0995] Step 9:
[0996] Using smartphones or smart glasses in brick-and-mortar stores, the system manages the inventory status of food products approaching their expiration date in real time and implements promotions. The input is expiration date information in the database and stock information at the brick-and-mortar store, and promotions are carried out based on this. The output is product information to be promoted with special prices, etc.
[0997] 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.
[0998] The system of the present invention provides a series of means for strengthening food expiration date management and reducing food waste. In particular, by incorporating an emotion engine that recognizes and responds to user emotions, it is possible to improve the user experience. The various means that make up this system are as follows:
[0999] 1. Image acquisition method:
[1000] Users take a photo of the expiration date of a purchased food item with their smartphone camera, which generates an image showing the expiration date and the name of the food.
[1001] 2. Analysis method:
[1002] The device analyzes the image captured by the image capture means. Specifically, it uses OCR (Optical Character Recognition) technology to extract the expiration date and food name from the image. This analysis is performed using an OCR library (e.g., Tesseract).
[1003] 3. Preservation means:
[1004] The terminal converts the parsed expiration date and food name into a digital format and sends the data to a server via the internet as an API request.
[1005] The server stores the received data in a database and manages the expiration date and notification date.
[1006] 4. Means of notification:
[1007] The server periodically checks the database to see if any food is nearing its expiration date. If the expiration date is within a certain period (e.g., seven days), the server sends a notification to the user. The notification is sent via a smartphone app or email.
[1008] 5. Proposal method:
[1009] The server lists foods that are close to expiry date and searches the recipe database for recipes that use the corresponding foods. The found recipe information is sent to the terminal and suggested to the user.
[1010] 6. Emotion Engine:
[1011] The terminal is equipped with an emotion engine for recognizing the user's emotions, which analyzes the user's emotions based on the user's voice tone, facial expressions, and other biometric data.
[1012] The server adjusts the timing and content of notifications based on the user's emotional information obtained from the emotion engine. For example, if the user is feeling stressed, it can postpone less urgent notifications.
[1013] The server can also tailor the recipes it provides to the user based on their emotional state, for example suggesting easy-to-cook recipes to a user who is feeling tired.
[1014] Example explanation:
[1015] For example, if a user purchases "milk" and "eggs" with expiration dates of "2023-10-15" and "2023-10-10", respectively, the system will operate as follows:
[1016] 1. The user takes a photo of the expiration dates of "milk" and "eggs" with their smartphone.
[1017] 2. The device uses OCR technology to analyze the expiration dates and food names of "2023-10-15" (milk) and "2023-10-10" (eggs).
[1018] 3. The device converts the analysis data into JSON format and sends it to the server.
[1019] 4. The server saves the received data in the database and calculates the notification date. For example, the notification date for "Milk" is set to "2023-10-08" and the notification date for "Eggs" is set to "2023-10-03".
[1020] 5. When the specified date and time approaches, the server checks the database, schedules notifications for the relevant foods, and sends the notifications to the device.
[1021] 6. At the same time, the server searches for recipes (e.g., "omelette") that use food that is close to its expiration date, and provides the recipe information to the terminal.
[1022] 7. The device checks the user's emotional state, and if the emotion engine detects stress or fatigue, it will prioritize suggesting simple recipes.
[1023] 8. The user will receive a notification, can check the recipe details on the application and can consume the food within the deadline.
[1024] This allows users to properly manage expiration dates, reduce food waste, and receive support tailored to their emotional state.
[1025] The processing flow will be explained below.
[1026] Step 1:
[1027] The user takes a photo of the expiration date of the food they have purchased with the camera on their smartphone, thereby obtaining image data of the food with the expiration date printed on it.
[1028] Step 2:
[1029] The device uses OCR (Optical Character Recognition) technology to analyze the captured image data, extracting the expiration date and food name from the image.
[1030] Step 3:
[1031] The terminal converts the extracted expiration date and food name into JSON format and sends it to a server via the Internet.
[1032] Step 4:
[1033] The server parses the received JSON data and extracts the expiration date and food name.
[1034] Step 5:
[1035] The server stores the extracted data in a database. Specifically, it stores the food name, expiration date, and notification date in a table.
[1036] Step 6:
[1037] The server calculates the notification date based on a predetermined period (e.g., 7 days) before the expiration date and saves the notification date in the database.
[1038] Step 7:
[1039] The server runs a cron job every day to check the records in the database, comparing the current date with the notification date and finding any matching records.
[1040] Step 8:
[1041] If the notification dates match, the server adds a notification for the food item to the notification queue and prepares to send the notification to the user.
[1042] Step 9:
[1043] The device sends a push notification to the user based on the notification received from the server, which includes information about the name of the food and its expiration date.
[1044] Step 10:
[1045] The server searches the recipe database based on the list of foods that are about to expire, searches for recipes that can efficiently use the foods that are about to expire, and sends the found recipes to the terminal.
[1046] Step 11:
[1047] The device displays the recipe information it finds to the user, who can then use the suggested recipes to use food that is close to its expiration date.
[1048] Step 12:
[1049] The device uses an emotion engine to recognize the user's emotional state, analyzing the user's voice tone, facial expressions, and biometric data to understand the user's current emotional state.
[1050] Step 13:
[1051] The server adjusts the timing and content of notifications based on the user's emotional information obtained from the emotion engine. For example, if the user is feeling stressed, it delays less urgent notifications.
[1052] Step 14:
[1053] The server adjusts the recipe suggestions based on the emotion engine data. For example, if the user is tired, it will prioritize easy-to-cook recipes.
[1054] Step 15:
[1055] The device displays recipe information that matches the user's emotional state and suggests it to the user, allowing the user to refer to and cook recipes that correspond to their emotions.
[1056] Through the above steps, this system allows users to easily manage food expiration dates, helps them use food without waste, and also provides flexible responses according to the user's emotional state.
[1057] Example 2
[1058] 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."
[1059] Conventional food expiration date management systems rely on users to consciously manage expiration dates, which results in food waste. Furthermore, they lack the ability to provide appropriate notifications and suggestions based on the user's emotional state, resulting in a poor user experience.
[1060] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[1061] In this invention, the server includes an image acquisition means for acquiring information about food items bearing expiration dates, an optical character recognition means for analyzing the expiration dates and food item names from the acquired images, a storage means for converting the analyzed expiration dates and food item names into a digital format and storing them in a database, a notification means for notifying the user that the expiration date is approaching, a recipe suggestion means for suggesting recipes using food items that are close to their expiration date, an emotion recognition means for recognizing the user's emotion, and an adjustment means for adjusting the timing and content of the notification based on the user's emotion information obtained from the emotion recognition means. This strengthens expiration date management, reduces food waste, and enables appropriate notifications and suggestions based on the user's emotional state.
[1062] An "image acquisition means" is a device or method that allows a user to use a smartphone camera or other device to take a photo of the food packaging or the part of the food product that lists the expiration date, and acquire that information as a digital image.
[1063] "Optical character recognition means" refers to a technology used to extract text information from acquired digital images, specifically analyzing expiration dates and food names using OCR (optical character recognition) technology.
[1064] The "storage means" refers to the technology or device that converts the analyzed expiration date and food name into a digital format and stores it in a database via the Internet.
[1065] The "notification means" refers to a method or device for notifying users about food products that are approaching their expiration date, and sends notifications via a smartphone app or email.
[1066] The "recipe suggestion means" refers to a system or method for searching a database for relevant recipes and suggesting them to a user in order to provide recipes that can be made using food items that are close to their expiration date.
[1067] "Emotion recognition means" refers to technology or devices for analyzing a user's emotions based on the user's tone of voice, facial expressions, and other biometric data.
[1068] The "adjustment means" refers to a method or technology for adjusting the timing and content of notifications based on the user's emotional information obtained from the emotion recognition means.
[1069] The system of the present invention aims to reduce food waste by streamlining food expiration date management and providing appropriate notifications and suggestions based on the user's emotional state. This system is realized mainly using the following hardware and software.
[1070] The system includes an image acquisition means, an optical character recognition means, a storage means, a notification means, a recipe suggestion means, an emotion recognition means, and an adjustment means to allow users to manage the expiration dates of food products.
[1071] First, the user uses the smartphone camera to take a picture of the package of the purchased food or the part of the package that has the expiration date written on it, thereby generating a smartphone camera as an image acquisition means.
[1072] Next, the device analyzes the acquired image using the Tesseract OCR library. The Tesseract OCR library, an optical character recognition method, extracts the expiration date and food name from the image. For example, if a user purchases "milk" and "eggs" and their respective expiration dates are "2023-10-15" and "2023-10-10," this information is analyzed.
[1073] The analyzed data is converted to JSON format and sent as an API request from the device that acts as the storage means to the server. The server stores the received data in a database and calculates the expiration date and notification date. For example, if the expiration date of "Milk" is "2023-10-15", the notification date is set to "2023-10-08".
[1074] The server periodically checks the database to identify foods that are approaching their expiration date. As a notification method, the server sends a notification to the user a specified period of time in advance. Notifications are sent via a smartphone app or email. For example, the notification date for "Milk" is "2023-10-08," so the notification will arrive on the user's smartphone on that day.
[1075] In addition, the server lists recipes that use food items that are close to expiry date as a recipe suggestion means. For example, it searches the recipe database for an "omelette" recipe that uses "milk and eggs" and suggests it to the user.
[1076] Additionally, the device captures voice tones and facial expressions to recognize the user's emotions. This emotion recognition function analyzes the user's emotional state and transmits it to the server as needed.
[1077] The server has an adjustment means for adjusting the timing and content of notifications based on the user's emotional information obtained from the emotion recognition means. For example, if the user is feeling stressed, notifications with low urgency will be postponed and easy-to-cook recipes (e.g., "easy omelet") will be suggested first.
[1078] Example prompt sentence:
[1079] "The expiration dates for milk and eggs are 2023-10-15 and 2023-10-10, respectively. Please notify me when their expiration dates are approaching and also suggest some easy recipes."
[1080] This allows users to properly manage expiration dates, reduce food waste, and receive support tailored to their emotional state.
[1081] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1082] Step 1:
[1083] The user uses the smartphone camera to take a picture of the packaging of the purchased food or the part of the food that has the expiration date written on it. Specifically, the user opens the camera app and takes a picture so that the expiration date and the name of the food can be confirmed. The smartphone camera, which acts as an image capture means, then captures the image and saves it on the device.
[1084] Input: A user-taken image of a food package
[1085] Output: Image file (food packaging image)
[1086] Step 2:
[1087] The device analyzes the acquired image file using the Tesseract OCR library. Specifically, it uses OCR (Optical Character Recognition) technology to extract the expiration date and food name from the image. This process converts the image into text data.
[1088] Input: Image file (food packaging image)
[1089] Output: Text data (best before date and food name)
[1090] Step 3:
[1091] The device converts the extracted expiration date and food name data into JSON format. Specifically, it embeds the text data into a JSON object and converts it to this data format. This conversion makes the data available to send to the server as an API request.
[1092] Input: Text data (best before date and food name)
[1093] Output: JSON data (best before date and food name)
[1094] Step 4:
[1095] The device sends JSON data as an API request to the server via the Internet. Specifically, it generates an HTTP request and sends it to the server. This process sends the expiration date and food name data to the server.
[1096] Input: JSON data (best before date and food name)
[1097] Output: API request sent to the server
[1098] Step 5:
[1099] The server parses the received JSON data and saves it in the database. Specifically, it parses the JSON data, extracts the expiration date and food name, and saves them in the database. This process stores the expiration date and food name in the database.
[1100] Input: JSON data (best before date and food name)
[1101] Output: Save to database (expiration date and food name)
[1102] Step 6:
[1103] The server calculates the notification date from the expiration date and saves it in the database. Specifically, it calculates the date a specified period before the expiration date and saves this as the notification date in the database. For example, for "2023-10-15" (milk), the notification date would be "2023-10-08".
[1104] Input: Best Before Date
[1105] Output: Notification date (calculate and store notification date)
[1106] Step 7:
[1107] The server periodically checks the database to identify foods whose expiration date is approaching. Specifically, it periodically scans the data in the database every day and extracts foods whose expiration date is approaching. This extraction identifies foods that are subject to notification.
[1108] Input: Best before and notification dates in the database
[1109] Output: List of foods to be notified
[1110] Step 8:
[1111] If a notification is required, the server sends the notification to the user. Specifically, the server sends the notification to the user using a smartphone app or email. This process allows the user to receive the notification.
[1112] Input: List of foods to be notified
[1113] Output: User notification
[1114] Step 9:
[1115] The server lists recipes that use food items that are close to expiry date and searches for the corresponding recipes in the recipe database. Specifically, it queries the recipe database and extracts the corresponding recipes. This extraction identifies the recipe information.
[1116] Input: List of foods to be notified
[1117] Output: Recipe information
[1118] Step 10:
[1119] The server then sends the found recipe information to the device. Specifically, it converts the recipe information into JSON format and sends it to the device as an HTTP response. This process provides the recipe information to the user.
[1120] Input: Recipe information
[1121] Output: Send recipe information to the device
[1122] Step 11:
[1123] The device captures the user's voice tone, facial expressions, and other biometric data and analyzes them with an emotion engine. Specifically, the device uses a camera and microphone to capture the user's voice and face, and then analyzes this data with an emotion engine. This analysis identifies the user's emotional state.
[1124] Input: User's tone of voice, facial expressions, and other biometric data
[1125] Output: User's emotional state
[1126] Step 12:
[1127] The device sends the user's emotional state to the server. Specifically, it converts the emotional state data into JSON format, generates an HTTP request, and sends it to the server. Through this process, the server obtains the user's emotional information.
[1128] Input: User's emotional state
[1129] Output: Emotional state sent to the server
[1130] Step 13:
[1131] The server adjusts the timing and content of notifications based on the user's emotional state. Specifically, it analyzes the user's emotional state and adjusts the timing of notifications and recipe information as necessary. This adjustment enables the provision of services that take the user's emotions into consideration.
[1132] Input: User's emotional state
[1133] Output: Adjusted notifications and recipe information
[1134] Step 14:
[1135] The user checks the notification and recipe information provided by the smartphone app and uses the food within the deadline. Specifically, the user receives a notification and views detailed recipe information in the app. This process allows the user to properly manage food and reduce waste.
[1136] Input: Adjusted notifications and recipe information
[1137] Output: User action (food usage)
[1138] (Application example 2)
[1139] 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."
[1140] Today, many users expend a lot of time and effort managing food expiration dates, resulting in unnecessary food waste. Furthermore, the lack of personalized support tailored to users' lifestyles and emotional states often leads to a dissatisfied user experience. This can lead to food waste and a decline in quality of life. Given this current situation, there is a need for a system that can reduce food waste and improve the user experience by providing notifications and recipe suggestions based on the user's emotional state.
[1141] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes an image acquisition means for acquiring information about food items with expiration dates, an analysis means for analyzing the expiration dates and food item names from the acquired images, a storage means for saving the analyzed expiration dates and food item names in a database, a notification means for notifying the user that the expiration date is approaching, a suggestion means for suggesting recipes using the food items with an approaching expiration date, an emotion analysis means for analyzing the user's emotions, and an adjustment means for adjusting the timing and content of notifications based on the emotion analysis results. This not only enables the user to efficiently manage expiration dates but also enables the user to receive optimal notifications and recipe suggestions based on their emotional state.
[1142] The "image acquisition means" is a means for acquiring information about food products that have expiration dates printed on them, and is a system in which a user photographs the expiration date of a food product and acquires image data of the photograph.
[1143] The "analysis means" is a means for analyzing the expiration date and food name from the acquired image, and is a system that extracts the necessary information from the image data using optical character recognition technology.
[1144] The "storage means" is a means for storing the analyzed expiration dates and food names in a database, and is a system that converts the extracted data into a digital format and stores it on a server.
[1145] The "notification means" is a means for notifying the user that the expiration date is approaching, and is a system that conveys the timing and content of the notification to the user.
[1146] The "suggestion means" is a means for suggesting recipes using food items that are close to their expiration date, and is a system that searches for appropriate recipes from a database and provides them to the user.
[1147] The "emotion analysis means" is a means for analyzing the user's emotions, and is a system that recognizes the user's emotional state using biometric data such as voice tone and facial expressions.
[1148] The "adjustment means" is a means for adjusting the timing and content of notifications based on the results of emotion analysis, and is a system that dynamically changes the priority and content of notifications according to the user's emotional state.
[1149] The present invention is a system for strengthening food expiration date management and reducing food waste, and in particular, improves the user experience by incorporating an emotion engine that recognizes and responds to user emotions. To realize this system, the following various means are required.
[1150] 1. Image acquisition method
[1151] Users take a photo of the expiration date of a purchased food item with their smartphone camera, which generates an image showing the expiration date and the name of the food.
[1152] 2. Analysis method
[1153] The device analyzes the captured image to determine the expiration date and food name. Specifically, it uses optical character recognition (OCR) technology to extract the date and food name from the image. For example, the Tesseract library can be used.
[1154] 3. Preservation means
[1155] The device converts the analyzed expiration date and food name into a digital format and sends the data as an API request to a server via the internet. The server stores the received data in a database and manages expiration dates and notification dates.
[1156] 4. Means of notification
[1157] The server periodically checks the database to see if any food is nearing its expiration date. If the expiration date is within a certain period (e.g., seven days), the server sends a notification to the user. The notification is sent via a smartphone app or email.
[1158] 5. Proposal method
[1159] The server lists foods that are close to expiry date and searches the recipe database for recipes that use the corresponding foods. The found recipe information is sent to the terminal and suggested to the user.
[1160] 6. Emotion analysis method
[1161] The device is equipped with an emotion analysis means for analyzing the user's emotions. This means analyzes the user's emotions based on the user's voice tone, facial expressions, and other biometric data. For example, it can use the DeepFace library to analyze facial expressions, and a TensorFlow-based speech recognition library for voice analysis.
[1162] 7. Adjustment means
[1163] The server adjusts the timing and content of notifications based on the results of emotion analysis. For example, if the user is feeling stressed, it postpones less urgent notifications. It also selects recipe suggestions based on the user's emotional state. For example, if the user is feeling tired, it prioritizes easy-to-cook recipes.
[1164] Specific example explanation
[1165] If a user purchases "milk" and "eggs" with expiration dates of "2023-10-15" and "2023-10-10", respectively, the system will operate as follows:
[1166] 1. The user takes a photo of the expiration dates of "milk" and "eggs" with their smartphone.
[1167] 2. The device uses OCR technology to analyze the expiration dates and food names of "2023-10-15" (milk) and "2023-10-10" (eggs).
[1168] 3. The device converts the analysis data into JSON format and sends it to the server.
[1169] 4. The server saves the received data in the database and calculates the notification date. For example, the notification date for "Milk" is set to "2023-10-08" and the notification date for "Eggs" is set to "2023-10-03".
[1170] 5. When the specified date and time approaches, the server checks the database, schedules notifications for the relevant foods, and sends the notifications to the device.
[1171] 6. At the same time, the server searches for recipes (e.g., "omelette") that use food that is close to its expiration date, and provides the recipe information to the terminal.
[1172] 7. The device checks the user's emotional state, and if the emotion analysis means detects stress or fatigue, it will prioritize suggesting simple recipes.
[1173] 8. The user will receive a notification, can check the recipe details on the application and can consume the food within the deadline.
[1174] Prompt Sentence Examples
[1175] "Please provide a Python program that captures images that make users feel tired, performs sentiment analysis, and suggests optimal content. The DeepFace library will be used for sentiment analysis, and the suggested content will be obtained from an API. Please also include a function to display the suggested content to the user."
[1176] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1177] Step 1:
[1178] A user takes a photo of the expiration date of a food product they have purchased using their smartphone camera. Optical data (image) is obtained as input. The image contains the expiration date and the name of the food product.
[1179] Step 2:
[1180] The device analyzes the captured image. It receives image data as input and uses OCR (optical character recognition) technology to extract the expiration date and food name from the image. This outputs text data of the expiration date (e.g., "2023-10-15") and the food name (e.g., "Milk").
[1181] Step 3:
[1182] The device converts the analyzed expiration date and food name into JSON format and sends it to the server via the internet as an API request. It receives text data as input and outputs the data converted into JSON format.
[1183] Step 4:
[1184] The server stores the received JSON data in the database. It takes JSON data as input and outputs the database entries required to store the expiration date and food name in the database.
[1185] Step 5:
[1186] The server periodically checks the database to see which foods are approaching their expiration date. It takes as input all entries in the database, compares them with the current date, and outputs any data that requires notification.
[1187] Step 6:
[1188] If the server detects a specific period (e.g., 7 days before), it sends a notification to the user. The expiration date data that requires notification is acquired as input, and a notification message is output via a smartphone app or email.
[1189] Step 7:
[1190] The server searches the recipe database for recipes that use food items that are close to expiry. It receives the name of a food item as input and outputs a list of related recipes.
[1191] Step 8:
[1192] The server sends the recipe information it finds to the terminal. It receives recipe data as input and outputs the data to be sent to the terminal in JSON format.
[1193] Step 9:
[1194] The terminal receives the recipe information and displays it to the user. It takes the received recipe data as input and outputs data for display on the user interface.
[1195] Step 10:
[1196] The device acquires data on the user's voice tone and facial expressions to analyze the user's emotions. It receives voice and image data as input and uses an emotion analysis engine to output data that identifies the user's emotional state.
[1197] Step 11:
[1198] The device selects recipe suggestions based on the results of sentiment analysis, receives sentiment analysis results and recipe data as input, and outputs the optimal recipe.
[1199] Step 12:
[1200] The device notifies the user of the best recipe and provides emotionally appropriate actions. It receives the selected recipe and the user's emotional state as input, and outputs data for displaying notifications and recipe details.
[1201] 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.
[1202] 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.
[1203] 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.
[1204] [Fourth embodiment]
[1205] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1206] 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.
[1207] 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).
[1208] 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.
[1209] 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.
[1210] 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).
[1211] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for 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.
[1212] 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.
[1213] 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.
[1214] 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.
[1215] 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.
[1216] 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.
[1217] 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."
[1218] The system of the present invention is designed to effectively manage information on food products that have expiration dates and to reduce waste caused by expiration dates. The various means of this system are as follows.
[1219] 1. Image acquisition method:
[1220] A user takes a picture of the expiration date of a purchased food product using a smartphone or other camera device, and information about the food product with the expiration date is acquired as image data.
[1221] 2. Analysis method:
[1222] The device analyzes the image data acquired by the image acquisition means. Specifically, it uses OCR (Optical Character Recognition) technology to extract the expiration date and food name from the image. This process may involve using an OCR library (e.g., Tesseract).
[1223] 3. Preservation means:
[1224] The terminal converts the parsed expiration date and food name into a digital format (e.g., JSON format) and sends the data to the server via the network. The server stores the received data in a database. The database structure is as follows:
[1225] TABLE Food Data (
[1226] id INT PRIMARY KEY AUTO_INCREMENT,
[1227] Food name VARCHAR(255),
[1228] Best before date
[1229] Notification date DATE
[1230] )
[1231] The expiration date and notification date are stored and managed in the database.
[1232] 4. Means of notification:
[1233] The server periodically checks the database to see if any food is nearing its expiration date. If it is within a certain period of time (e.g., seven days) of the expiration date, the server sends a notification to the user. This notification is sent via a smartphone, email, or other means.
[1234] 5. Proposal method:
[1235] The server searches the database for suitable recipes based on the list of foods that are about to expire. The searched recipes are those that can efficiently use the foods that are about to expire. The server then sends the appropriate recipe information to the terminal, which then displays it to the user.
[1236] Example explanation:
[1237] For example, if a user purchases "milk" and "eggs" with expiration dates of "2023-10-15" and "2023-10-10", respectively, the system will operate as follows:
[1238] 1. The user takes a photo of the expiration dates of "milk" and "eggs" with their smartphone.
[1239] 2. The device uses OCR technology to analyze the expiration dates and food names of "2023-10-15" (milk) and "2023-10-10" (eggs).
[1240] 3. The device converts the analysis data into JSON format and sends it to the server.
[1241] 4. The server saves the received data in the database and sets the notification date for "Milk" to "2023-10-08" and the notification date for "Eggs" to "2023-10-03".
[1242] 5. When a specific date and time approaches, the server checks the database, schedules notifications for the relevant foods, and sends notifications to the device, for example, "Your eggs are nearing their expiration date."
[1243] 6. At the same time, the server searches for recipes (e.g., "omelette") that use food that is close to its expiration date, and provides the recipe information to the terminal.
[1244] 7. The user receives a notification, checks the recipe for the "Omelette" in the application, and can use the "Eggs" within the deadline.
[1245] This allows users to properly manage expiration dates and reduce food waste.
[1246] The processing flow will be explained below.
[1247] Step 1:
[1248] Users take a photo of the expiration date of a purchased food item with their smartphone camera, which generates an image showing the expiration date and the name of the food.
[1249] Step 2:
[1250] The device takes the captured image and uses OCR (optical character recognition) technology to analyze the text in the image, in this case extracting the expiration date and food name.
[1251] Step 3:
[1252] The terminal converts the analyzed expiration date and food name into JSON format and sends it to the server via the Internet as an API request.
[1253] Step 4:
[1254] The server parses the received API request and extracts the expiration date and food name from the JSON data.
[1255] Step 5:
[1256] The server stores the extracted data in a database, whose tables include the food product name, expiration date, and notification date.
[1257] Step 6:
[1258] The server calculates the notification date based on a predetermined period (e.g., 7 days) before the expiration date and saves it in the database.
[1259] Step 7:
[1260] The server runs a cron job every day to check all records in the database, compare the current date with the notification date, and find records with a matching notification date.
[1261] Step 8:
[1262] If the notification dates match, the server adds a notification for the food item to the notification queue and prepares to send the notification to the user.
[1263] Step 9:
[1264] The device sends a push notification to the user based on the notification received from the server, which includes information about the name of the food and its expiration date.
[1265] Step 10:
[1266] The server searches the recipe database based on the list of foods with upcoming expiration dates, and similarly searches for recipes that use foods with upcoming expiration dates.
[1267] Step 11:
[1268] The server sends the found recipe information to the terminal and suggests it to the user.
[1269] Step 12:
[1270] The device displays the received recipe information within the application and provides it to the user, who can use this information to prepare meals using food items that are nearing their expiration date.
[1271] Through these steps, the system helps users properly manage food expiration dates and use food without waste.
[1272] Example 1
[1273] 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."
[1274] The goal is to efficiently manage food expiration dates, reduce food waste due to expiration dates, and promote effective food utilization. The goal is also to enable users to consume food smoothly by suggesting recipes using food that is close to its expiration date.
[1275] 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.
[1276] In this invention, the server includes an image acquisition means for a user to photograph the expiration date of a food product, an analysis means for analyzing the acquired image data using OCR technology to analyze the expiration date and food name, a storage means for converting the analyzed expiration date and food name into JSON format and transmitting the converted data to the server via a network, a storage means for storing the data received by the server in a database, a notification means for periodically checking the database and notifying the user of foods whose expiration date is approaching, and a suggestion means for searching the database for recipes using foods whose expiration date is approaching and providing the recipes to the user. This allows users to effectively manage food expiration dates, reduce waste, and use food efficiently.
[1277] A "user" is an individual or organization that photographs expiration date information on food products and uses the system to manage expiration dates.
[1278] "Image acquisition means" refers to a function that allows a user to take a photo of the expiration date of food purchased using a smartphone or camera device.
[1279] "OCR technology" stands for optical character recognition technology, which is a technology that extracts character information from image data.
[1280] "Analysis means" refers to the function of extracting expiration dates and food names from image data obtained using OCR technology.
[1281] "Storage means" refers to the function that converts the analyzed expiration date and food name into JSON format and sends it to a server via a network.
[1282] "Server" refers to a central management system that stores received data in a database and provides notifications and suggestions.
[1283] The "database" is a data management system for storing data such as food names, expiration dates, and notification dates.
[1284] "Notification means" refers to a function that periodically checks the database and notifies the user about food items that are approaching their expiration date.
[1285] "Suggestion means" refers to a function that searches the database for recipes that use food items that are close to their expiration date and provides them to the user.
[1286] "JSON format" stands for JavaScript Object Notation, a way to represent data as lightweight, structured text.
[1287] The system of the present invention is intended to enable users to effectively manage expiration date information for food products and reduce food waste due to expiration dates.
[1288] Image Acquisition Method
[1289] The user takes a picture of the expiration date of the purchased food using a smartphone or other camera device. Through this step, information about the food with the expiration date is acquired as image data.
[1290] Analysis means
[1291] The device analyzes the image data captured by the image capture means. Specifically, it uses OCR (Optical Character Recognition) technology to extract the expiration date and food name from the image. This process uses the widely used Tesseract OCR library.
[1292] Preservation means
[1293] The terminal converts the analyzed expiration date and food name into a digital format (e.g., JSON format) and sends it to the server via the network. The server stores the received data in a database. The database structure is as follows:
[1294] TABLE Food Data (
[1295] id INT PRIMARY KEY AUTO_INCREMENT,
[1296] Food name VARCHAR(255),
[1297] Best before date
[1298] Notification date DATE
[1299] )
[1300] The expiration date and notification date are stored and managed in the database.
[1301] Notification means
[1302] The server periodically checks the database to see if any food is nearing its expiration date. If it is within a certain period of time (e.g., seven days) of the expiration date, the server sends a notification to the user. This notification can be sent via smartphone push notification, email, or other means.
[1303] Proposal means
[1304] The server searches the database for suitable recipes based on the list of foods that are about to expire. The searched recipes are those that can efficiently use the foods that are about to expire. The server then sends the appropriate recipe information to the terminal, which then displays it to the user.
[1305] Specific example explanation
[1306] For example, if a user purchases "Milk" and "Eggs" with expiration dates "2023-10-15" and "2023-10-10" respectively, the system will behave as follows:
[1307] 1. The user takes a photo of the expiration dates of "milk" and "eggs" with their smartphone.
[1308] 2. The device uses OCR technology to analyze the expiration dates and food names of "2023-10-15" (milk) and "2023-10-10" (eggs).
[1309] 3. The device converts the analysis data into JSON format and sends it to the server.
[1310] 4. The server saves the received data in the database and sets the notification date for "Milk" to "2023-10-08" and the notification date for "Eggs" to "2023-10-03".
[1311] 5. When a specific date and time approaches, the server checks the database, schedules notifications for the relevant foods, and sends notifications to the device, for example, "Your eggs are nearing their expiration date."
[1312] 6. At the same time, the server searches for recipes (e.g., "omelette") that use food that is close to its expiration date, and provides the recipe information to the terminal.
[1313] 7. The user receives a notification, checks the recipe for the "Omelette" in the application, and can use the "Eggs" within the deadline.
[1314] This allows users to properly manage expiration dates and reduce food waste.
[1315] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1316] Step 1:
[1317] The user takes a photo of the expiration date of purchased food using a smartphone or camera device. The input data is image data of the food. Specifically, the user launches the camera app on their smartphone and takes a photo of the part of the food where the expiration date is clearly written. The output of this step is image data of the food with the expiration date written on it.
[1318] Step 2:
[1319] The device analyzes the image data acquired in step 1 using OCR technology. The input data is an image of food with a best-before date. Specifically, the device uses the Tesseract OCR library to extract text information from the image data. The OCR library recognizes character strings such as "2023-10-15" and "milk" and generates text data as output.
[1320] Step 3:
[1321] The terminal converts the text data extracted in step 2 into JSON format. The input data is text data obtained by OCR analysis (e.g., "Food name: Milk", "Best before date: 2023-10-15"). Specifically, the terminal converts the text data into a digital format (JSON format). The output is JSON data such as the following:
[1322] json
[1323] {
[1324] "Food Name": "Milk",
[1325] "Best Before Date": "2023-10-15"
[1326] }
[1327] Step 4:
[1328] The terminal sends the JSON data generated in step 3 to the server via the network. The input data is text data in JSON format. Specifically, the terminal sends an HTTP POST request to send the data to the server. The output is a notification to the server that the data has been sent.
[1329] Step 5:
[1330] The server stores the JSON data received in step 4 in the database. The input data is the JSON data received from the terminal. Specifically, the server parses the JSON data and executes an INSERT statement to store the data in the database. The output is the food information stored in the database. For example:
[1331] INSERT INTO Food Data (Food Name, Best Before Date, Notification Date) VALUES ("Milk", "2023-10-15", "2023-10-08")
[1332] Step 6:
[1333] The server periodically checks the database to see which foods are approaching their expiration date. The input data is the food data in the database. Specifically, the server runs a query to extract foods that require notifications based on today's date. The output is a list of foods that need notifications. For example:
[1334] sql
[1335] SELECT FROM FoodData WHERE NotificationDate = CURRENT_DATE
[1336] Step 7:
[1337] The server sends a notification to the user about the foods extracted in step 6. The input data is a list of foods to be notified. Specifically, the server creates a push notification or email and sends it to the user. The output is a notification to the user. For example, "The expiration date of the milk is approaching."
[1338] Step 8:
[1339] The server searches the database for recipes that use foods that are about to expire. The input data is the list of foods that are the target of notifications. Specifically, the server queries the recipe database to find suitable recipes. The output is the recipe information. For example:
[1340] sql
[1341] SELECT recipe_name, details FROM recipe_data WHERE ingredients LIKE "%milk%"
[1342] Step 9:
[1343] The server sends the recipe information found in step 8 to the terminal. The input data is the found recipe information. Specifically, the server converts the recipe information into JSON format and sends it to the terminal. The output is a notification to the terminal that the recipe information has been sent.
[1344] Step 10:
[1345] The terminal displays the recipe information received in step 9 to the user. The input data is the recipe information received from the server. In specific operations, the terminal displays the recipe information as text or images on the application screen. The output is the recipe information displayed to the user. The user can use foods that are close to their expiration date based on the displayed recipe.
[1346] (Application example 1)
[1347] 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."
[1348] The problem that the present invention aims to solve is to efficiently manage the expiration dates of food products, reduce waste due to expiration, and enable quick inventory checks and sales promotion of products with approaching expiration dates in physical stores. Currently, manually checking the expiration dates of food products in stores is labor-intensive and does not allow for efficient management. In addition, there is a lack of effective means to notify consumers of products with approaching expiration dates, which leads to the problem of food waste. Furthermore, it is difficult to appropriately promote products with approaching expiration dates, which can result in lost sales opportunities.
[1349] 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.
[1350] In this invention, the server includes an image acquisition means, an analysis means, a storage means, a notification means, a proposal means, and a sales promotion means, thereby enabling real-time promotion of food products approaching their expiration dates.
[1351] The "image acquisition means" is a means for capturing an image of food information containing the expiration date using a camera device or the like and acquiring the image data.
[1352] The "analysis means" is a means for extracting and analyzing the expiration date and food name from the acquired image data using OCR technology.
[1353] The "storage means" is a means for converting the analyzed expiration date and food name into a digital format and storing the data in a database.
[1354] The "notification means" is a means for notifying the user that the expiration date is approaching, and is done by notifying the user via email or the notification function of a smartphone.
[1355] The "suggestion means" is a means for searching for recipes that use food items that are close to their expiration date and suggesting them to the user.
[1356] "Sales promotions" are methods for promoting food products that are nearing their expiration date, such as offering special prices or special offers when the product is nearing its expiration date.
[1357] The system of the present invention is designed to effectively manage information on food products that have expiration dates and to reduce waste caused by expiration dates. The various means of this system are as follows.
[1358] As an image acquisition means, a user takes a picture of the expiration date of the purchased food using a smartphone or other camera device, thereby acquiring information about the food with the expiration date as image data.
[1359] As an analysis means, the terminal analyzes the image data acquired by the image acquisition means. Specifically, it uses OCR (Optical Character Recognition) technology to extract the expiration date and food name from the image. In this process, an OCR library (e.g., Tesseract) is used.
[1360] As a storage means, the terminal converts the analyzed expiration date and food name into a digital format (e.g., JSON format) and sends the data to the server via the network. The server stores the received data in a database. The database structure is as follows:
[1361] TABLE Food Data (
[1362] id INT PRIMARY KEY AUTO_INCREMENT,
[1363] Food name VARCHAR(255),
[1364] Best before date
[1365] Notification date DATE
[1366] )
[1367] The expiration date and notification date are stored and managed in the database.
[1368] As a notification method, the server periodically checks the database to see if any food is approaching its expiration date. If it is within a certain period of time (e.g., seven days) of the expiration date, the server sends a notification to the user. This notification is sent via a smartphone, email, or other means.
[1369] As a suggestion method, the server searches the database for suitable recipes based on the list of foods that are about to expire. The searched recipes are those that can efficiently use the foods that are about to expire. The server then sends the appropriate recipe information to the terminal, which then displays it to the user.
[1370] As a sales promotion measure, the system will use smartphones or smart glasses in physical stores to manage the expiration dates of inventory items in real time for store staff and customers, and promote products that are approaching their expiration date. This function will reduce food waste in stores and boost sales.
[1371] As a concrete example, if a user purchases "milk" and "eggs" with expiration dates of "2023-10-15" and "2023-10-10," respectively, the system operates as follows: The user takes a photo of the expiration dates of the "milk" and "eggs" with their smartphone, and OCR technology is used to analyze the expiration dates and food names: "2023-10-15" (milk) and "2023-10-10" (eggs). The data is converted into a digital format and sent to the server. The server stores the received data in a database and sends notifications to the user when the specified date and time approaches. At the same time, the system suggests recipes (e.g., "omelets") using the food items that are about to expire, and stores can promote products with special prices when the expiration date is approaching.
[1372] Examples of prompts include:
[1373] "I have invented an invention for a system to manage food that is approaching its expiration date. This system uses OCR technology to analyze expiration date information taken from food photographs, stores it in a database, and notifies users when the expiration date is approaching. What technology can be used to extract the food name and expiration date?"
[1374] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1375] Step 1:
[1376] The terminal uses a camera device to take a picture of the expiration date of food purchased by the user. The input is image data taken by the camera, which is acquired by the image acquisition means. The output is image data containing the expiration date information.
[1377] Step 2:
[1378] The device uses OCR technology to extract the expiration date and food name from the image data acquired in step 1. The input is image data, which is converted into text data using an OCR library (e.g., Tesseract). The output is the extracted text data of the expiration date and food name.
[1379] Step 3:
[1380] The terminal converts the expiration date and food name extracted in step 2 into a digital format (e.g., JSON format) and sends the data to the server via the network. The input is text data, and data processing and network communication are performed. The output is the data converted into a digital format and sent to the server.
[1381] Step 4:
[1382] The server stores the data received in step 3 in a database. The input is JSON formatted data, and it performs SQL operations to insert it into the database. The output is a record of the expiration date and food name stored in the database.
[1383] Step 5:
[1384] The server periodically checks the database for foods that are nearing their expiration date. The input is all records in the database, and it checks whether their notification date matches the current date. The output is a list of foods that are nearing their expiration date.
[1385] Step 6:
[1386] The server sends a notification to the user about the foods that are close to their expiration date, as confirmed in step 5. The input is a list of foods that are close to their expiration date, which is sent to the user via email or the notification function of their smartphone. The output is the notification message sent to the user.
[1387] Step 7:
[1388] The server searches the database for suitable recipes based on the foods with upcoming expiration dates identified in step 5. The input is the list of foods with upcoming expiration dates and recipe information in the database, and performs data calculations. The output is the searched recipe information.
[1389] Step 8:
[1390] The server sends the recipe information retrieved in step 7 to the user's terminal, which displays it to the user. The input is the retrieved recipe information, which is transmitted to the user's terminal. The output is the recipe information displayed to the user.
[1391] Step 9:
[1392] Using smartphones or smart glasses in brick-and-mortar stores, the system manages the inventory status of food products approaching their expiration date in real time and implements promotions. The input is expiration date information in the database and stock information at the brick-and-mortar store, and promotions are carried out based on this. The output is product information to be promoted with special prices, etc.
[1393] 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.
[1394] The system of the present invention provides a series of means for strengthening food expiration date management and reducing food waste. In particular, by incorporating an emotion engine that recognizes and responds to user emotions, it is possible to improve the user experience. The various means that make up this system are as follows:
[1395] 1. Image acquisition method:
[1396] Users take a photo of the expiration date of a purchased food item with their smartphone camera, which generates an image showing the expiration date and the name of the food.
[1397] 2. Analysis method:
[1398] The device analyzes the image captured by the image capture means. Specifically, it uses OCR (Optical Character Recognition) technology to extract the expiration date and food name from the image. This analysis is performed using an OCR library (e.g., Tesseract).
[1399] 3. Preservation means:
[1400] The terminal converts the parsed expiration date and food name into a digital format and sends the data to a server via the internet as an API request.
[1401] The server stores the received data in a database and manages the expiration date and notification date.
[1402] 4. Means of notification:
[1403] The server periodically checks the database to see if any food is nearing its expiration date. If the expiration date is within a certain period (e.g., seven days), the server sends a notification to the user. The notification is sent via a smartphone app or email.
[1404] 5. Proposal method:
[1405] The server lists foods that are close to expiry date and searches the recipe database for recipes that use the corresponding foods. The found recipe information is sent to the terminal and suggested to the user.
[1406] 6. Emotion Engine:
[1407] The terminal is equipped with an emotion engine for recognizing the user's emotions, which analyzes the user's emotions based on the user's voice tone, facial expressions, and other biometric data.
[1408] The server adjusts the timing and content of notifications based on the user's emotional information obtained from the emotion engine. For example, if the user is feeling stressed, it can postpone less urgent notifications.
[1409] The server can also tailor the recipes it provides to the user based on their emotional state, for example suggesting easy-to-cook recipes to a user who is feeling tired.
[1410] Example explanation:
[1411] For example, if a user purchases "milk" and "eggs" with expiration dates of "2023-10-15" and "2023-10-10", respectively, the system will operate as follows:
[1412] 1. The user takes a photo of the expiration dates of "milk" and "eggs" with their smartphone.
[1413] 2. The device uses OCR technology to analyze the expiration dates and food names of "2023-10-15" (milk) and "2023-10-10" (eggs).
[1414] 3. The device converts the analysis data into JSON format and sends it to the server.
[1415] 4. The server saves the received data in the database and calculates the notification date. For example, the notification date for "Milk" is set to "2023-10-08" and the notification date for "Eggs" is set to "2023-10-03".
[1416] 5. When the specified date and time approaches, the server checks the database, schedules notifications for the relevant foods, and sends the notifications to the device.
[1417] 6. At the same time, the server searches for recipes (e.g., "omelette") that use food that is close to its expiration date, and provides the recipe information to the terminal.
[1418] 7. The device checks the user's emotional state, and if the emotion engine detects stress or fatigue, it will prioritize suggesting simple recipes.
[1419] 8. The user will receive a notification, can check the recipe details on the application and can consume the food within the deadline.
[1420] This allows users to properly manage expiration dates, reduce food waste, and receive support tailored to their emotional state.
[1421] The processing flow will be explained below.
[1422] Step 1:
[1423] The user takes a photo of the expiration date of the food they have purchased with the camera on their smartphone, thereby obtaining image data of the food with the expiration date printed on it.
[1424] Step 2:
[1425] The device uses OCR (Optical Character Recognition) technology to analyze the captured image data, extracting the expiration date and food name from the image.
[1426] Step 3:
[1427] The terminal converts the extracted expiration date and food name into JSON format and sends it to a server via the Internet.
[1428] Step 4:
[1429] The server parses the received JSON data and extracts the expiration date and food name.
[1430] Step 5:
[1431] The server stores the extracted data in a database. Specifically, it stores the food name, expiration date, and notification date in a table.
[1432] Step 6:
[1433] The server calculates the notification date based on a predetermined period (e.g., 7 days) before the expiration date and saves the notification date in the database.
[1434] Step 7:
[1435] The server runs a cron job every day to check the records in the database, comparing the current date with the notification date and finding any matching records.
[1436] Step 8:
[1437] If the notification dates match, the server adds a notification for the food item to the notification queue and prepares to send the notification to the user.
[1438] Step 9:
[1439] The device sends a push notification to the user based on the notification received from the server, which includes information about the name of the food and its expiration date.
[1440] Step 10:
[1441] The server searches the recipe database based on the list of foods that are about to expire, searches for recipes that can efficiently use the foods that are about to expire, and sends the found recipes to the terminal.
[1442] Step 11:
[1443] The device displays the recipe information it finds to the user, who can then use the suggested recipes to use food that is close to its expiration date.
[1444] Step 12:
[1445] The device uses an emotion engine to recognize the user's emotional state, analyzing the user's voice tone, facial expressions, and biometric data to understand the user's current emotional state.
[1446] Step 13:
[1447] The server adjusts the timing and content of notifications based on the user's emotional information obtained from the emotion engine. For example, if the user is feeling stressed, it delays less urgent notifications.
[1448] Step 14:
[1449] The server adjusts the recipe suggestions based on the emotion engine data. For example, if the user is tired, it will prioritize easy-to-cook recipes.
[1450] Step 15:
[1451] The device displays recipe information that matches the user's emotional state and suggests it to the user, allowing the user to refer to and cook recipes that correspond to their emotions.
[1452] Through the above steps, this system allows users to easily manage food expiration dates, helps them use food without waste, and also provides flexible responses according to the user's emotional state.
[1453] Example 2
[1454] 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."
[1455] Conventional food expiration date management systems rely on users to consciously manage expiration dates, which results in food waste. Furthermore, they lack the ability to provide appropriate notifications and suggestions based on the user's emotional state, resulting in a poor user experience.
[1456] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[1457] In this invention, the server includes an image acquisition means for acquiring information about food items bearing expiration dates, an optical character recognition means for analyzing the expiration dates and food item names from the acquired images, a storage means for converting the analyzed expiration dates and food item names into a digital format and storing them in a database, a notification means for notifying the user that the expiration date is approaching, a recipe suggestion means for suggesting recipes using food items that are close to their expiration date, an emotion recognition means for recognizing the user's emotion, and an adjustment means for adjusting the timing and content of the notification based on the user's emotion information obtained from the emotion recognition means. This strengthens expiration date management, reduces food waste, and enables appropriate notifications and suggestions based on the user's emotional state.
[1458] An "image acquisition means" is a device or method that allows a user to use a smartphone camera or other device to take a photo of the food packaging or the part of the food product that lists the expiration date, and acquire that information as a digital image.
[1459] "Optical character recognition means" refers to a technology used to extract text information from acquired digital images, specifically analyzing expiration dates and food names using OCR (optical character recognition) technology.
[1460] The "storage means" refers to the technology or device that converts the analyzed expiration date and food name into a digital format and stores it in a database via the Internet.
[1461] The "notification means" refers to a method or device for notifying users about food products that are approaching their expiration date, and sends notifications via a smartphone app or email.
[1462] The "recipe suggestion means" refers to a system or method for searching a database for relevant recipes and suggesting them to a user in order to provide recipes that can be made using food items that are close to their expiration date.
[1463] "Emotion recognition means" refers to technology or devices for analyzing a user's emotions based on the user's tone of voice, facial expressions, and other biometric data.
[1464] The "adjustment means" refers to a method or technology for adjusting the timing and content of notifications based on the user's emotional information obtained from the emotion recognition means.
[1465] The system of the present invention aims to reduce food waste by streamlining food expiration date management and providing appropriate notifications and suggestions based on the user's emotional state. This system is realized mainly using the following hardware and software.
[1466] The system includes an image acquisition means, an optical character recognition means, a storage means, a notification means, a recipe suggestion means, an emotion recognition means, and an adjustment means to allow users to manage the expiration dates of food products.
[1467] First, the user uses the smartphone camera to take a picture of the package of the purchased food or the part of the package that has the expiration date written on it, thereby generating a smartphone camera as an image acquisition means.
[1468] Next, the device analyzes the acquired image using the Tesseract OCR library. The Tesseract OCR library, an optical character recognition method, extracts the expiration date and food name from the image. For example, if a user purchases "milk" and "eggs" and their respective expiration dates are "2023-10-15" and "2023-10-10," this information is analyzed.
[1469] The analyzed data is converted to JSON format and sent as an API request from the device that acts as the storage means to the server. The server stores the received data in a database and calculates the expiration date and notification date. For example, if the expiration date of "Milk" is "2023-10-15", the notification date is set to "2023-10-08".
[1470] The server periodically checks the database to identify foods that are approaching their expiration date. As a notification method, the server sends a notification to the user a specified period of time in advance. Notifications are sent via a smartphone app or email. For example, the notification date for "Milk" is "2023-10-08," so the notification will arrive on the user's smartphone on that day.
[1471] In addition, the server lists recipes that use food items that are close to expiry date as a recipe suggestion means. For example, it searches the recipe database for an "omelette" recipe that uses "milk and eggs" and suggests it to the user.
[1472] Additionally, the device captures voice tones and facial expressions to recognize the user's emotions. This emotion recognition function analyzes the user's emotional state and transmits it to the server as needed.
[1473] The server has an adjustment means for adjusting the timing and content of notifications based on the user's emotional information obtained from the emotion recognition means. For example, if the user is feeling stressed, notifications with low urgency will be postponed and easy-to-cook recipes (e.g., "easy omelet") will be suggested first.
[1474] Example prompt sentence:
[1475] "The expiration dates for milk and eggs are 2023-10-15 and 2023-10-10, respectively. Please notify me when their expiration dates are approaching and also suggest some easy recipes."
[1476] This allows users to properly manage expiration dates, reduce food waste, and receive support tailored to their emotional state.
[1477] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1478] Step 1:
[1479] The user uses the smartphone camera to take a picture of the packaging of the purchased food or the part of the food that has the expiration date written on it. Specifically, the user opens the camera app and takes a picture so that the expiration date and the name of the food can be confirmed. The smartphone camera, which acts as an image capture means, then captures the image and saves it on the device.
[1480] Input: A user-taken image of a food package
[1481] Output: Image file (food packaging image)
[1482] Step 2:
[1483] The device analyzes the acquired image file using the Tesseract OCR library. Specifically, it uses OCR (Optical Character Recognition) technology to extract the expiration date and food name from the image. This process converts the image into text data.
[1484] Input: Image file (food packaging image)
[1485] Output: Text data (best before date and food name)
[1486] Step 3:
[1487] The device converts the extracted expiration date and food name data into JSON format. Specifically, it embeds the text data into a JSON object and converts it to this data format. This conversion makes the data available to send to the server as an API request.
[1488] Input: Text data (best before date and food name)
[1489] Output: JSON data (best before date and food name)
[1490] Step 4:
[1491] The device sends JSON data as an API request to the server via the Internet. Specifically, it generates an HTTP request and sends it to the server. This process sends the expiration date and food name data to the server.
[1492] Input: JSON data (best before date and food name)
[1493] Output: API request sent to the server
[1494] Step 5:
[1495] The server parses the received JSON data and saves it in the database. Specifically, it parses the JSON data, extracts the expiration date and food name, and saves them in the database. This process stores the expiration date and food name in the database.
[1496] Input: JSON data (best before date and food name)
[1497] Output: Save to database (expiration date and food name)
[1498] Step 6:
[1499] The server calculates the notification date from the expiration date and saves it in the database. Specifically, it calculates the date a specified period before the expiration date and saves this as the notification date in the database. For example, for "2023-10-15" (milk), the notification date would be "2023-10-08".
[1500] Input: Best Before Date
[1501] Output: Notification date (calculate and store notification date)
[1502] Step 7:
[1503] The server periodically checks the database to identify foods whose expiration date is approaching. Specifically, it periodically scans the data in the database every day and extracts foods whose expiration date is approaching. This extraction identifies foods that are subject to notification.
[1504] Input: Best before and notification dates in the database
[1505] Output: List of foods to be notified
[1506] Step 8:
[1507] If a notification is required, the server sends the notification to the user. Specifically, the server sends the notification to the user using a smartphone app or email. This process allows the user to receive the notification.
[1508] Input: List of foods to be notified
[1509] Output: User notification
[1510] Step 9:
[1511] The server lists recipes that use food items that are close to expiry date and searches for the corresponding recipes in the recipe database. Specifically, it queries the recipe database and extracts the corresponding recipes. This extraction identifies the recipe information.
[1512] Input: List of foods to be notified
[1513] Output: Recipe information
[1514] Step 10:
[1515] The server then sends the found recipe information to the device. Specifically, it converts the recipe information into JSON format and sends it to the device as an HTTP response. This process provides the recipe information to the user.
[1516] Input: Recipe information
[1517] Output: Send recipe information to the device
[1518] Step 11:
[1519] The device captures the user's voice tone, facial expressions, and other biometric data and analyzes them with an emotion engine. Specifically, the device uses a camera and microphone to capture the user's voice and face, and then analyzes this data with an emotion engine. This analysis identifies the user's emotional state.
[1520] Input: User's tone of voice, facial expressions, and other biometric data
[1521] Output: User's emotional state
[1522] Step 12:
[1523] The device sends the user's emotional state to the server. Specifically, it converts the emotional state data into JSON format, generates an HTTP request, and sends it to the server. Through this process, the server obtains the user's emotional information.
[1524] Input: User's emotional state
[1525] Output: Emotional state sent to the server
[1526] Step 13:
[1527] The server adjusts the timing and content of notifications based on the user's emotional state. Specifically, it analyzes the user's emotional state and adjusts the timing of notifications and recipe information as necessary. This adjustment enables the provision of services that take the user's emotions into consideration.
[1528] Input: User's emotional state
[1529] Output: Adjusted notifications and recipe information
[1530] Step 14:
[1531] The user checks the notification and recipe information provided by the smartphone app and uses the food within the deadline. Specifically, the user receives a notification and views detailed recipe information in the app. This process allows the user to properly manage food and reduce waste.
[1532] Input: Adjusted notifications and recipe information
[1533] Output: User action (food usage)
[1534] (Application example 2)
[1535] 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."
[1536] Today, many users expend a lot of time and effort managing food expiration dates, resulting in unnecessary food waste. Furthermore, the lack of personalized support tailored to users' lifestyles and emotional states often leads to a dissatisfied user experience. This can lead to food waste and a decline in quality of life. Given this current situation, there is a need for a system that can reduce food waste and improve the user experience by providing notifications and recipe suggestions based on the user's emotional state.
[1537] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes an image acquisition means for acquiring information about food items with expiration dates, an analysis means for analyzing the expiration dates and food item names from the acquired images, a storage means for saving the analyzed expiration dates and food item names in a database, a notification means for notifying the user that the expiration date is approaching, a suggestion means for suggesting recipes using the food items with an approaching expiration date, an emotion analysis means for analyzing the user's emotions, and an adjustment means for adjusting the timing and content of notifications based on the emotion analysis results. This not only enables the user to efficiently manage expiration dates but also enables the user to receive optimal notifications and recipe suggestions based on their emotional state.
[1538] The "image acquisition means" is a means for acquiring information about food products that have expiration dates printed on them, and is a system in which a user photographs the expiration date of a food product and acquires image data of the photograph.
[1539] The "analysis means" is a means for analyzing the expiration date and food name from the acquired image, and is a system that extracts the necessary information from the image data using optical character recognition technology.
[1540] The "storage means" is a means for storing the analyzed expiration dates and food names in a database, and is a system that converts the extracted data into a digital format and stores it on a server.
[1541] The "notification means" is a means for notifying the user that the expiration date is approaching, and is a system that conveys the timing and content of the notification to the user.
[1542] The "suggestion means" is a means for suggesting recipes using food items that are close to their expiration date, and is a system that searches for appropriate recipes from a database and provides them to the user.
[1543] The "emotion analysis means" is a means for analyzing the user's emotions, and is a system that recognizes the user's emotional state using biometric data such as voice tone and facial expressions.
[1544] The "adjustment means" is a means for adjusting the timing and content of notifications based on the results of emotion analysis, and is a system that dynamically changes the priority and content of notifications according to the user's emotional state.
[1545] The present invention is a system for strengthening food expiration date management and reducing food waste, and in particular, improves the user experience by incorporating an emotion engine that recognizes and responds to user emotions. To realize this system, the following various means are required.
[1546] 1. Image acquisition method
[1547] Users take a photo of the expiration date of a purchased food item with their smartphone camera, which generates an image showing the expiration date and the name of the food.
[1548] 2. Analysis method
[1549] The device analyzes the captured image to determine the expiration date and food name. Specifically, it uses optical character recognition (OCR) technology to extract the date and food name from the image. For example, the Tesseract library can be used.
[1550] 3. Preservation means
[1551] The device converts the analyzed expiration date and food name into a digital format and sends the data as an API request to a server via the internet. The server stores the received data in a database and manages expiration dates and notification dates.
[1552] 4. Means of notification
[1553] The server periodically checks the database to see if any food is nearing its expiration date. If the expiration date is within a certain period (e.g., seven days), the server sends a notification to the user. The notification is sent via a smartphone app or email.
[1554] 5. Proposal method
[1555] The server lists foods that are close to expiry date and searches the recipe database for recipes that use the corresponding foods. The found recipe information is sent to the terminal and suggested to the user.
[1556] 6. Emotion analysis method
[1557] The device is equipped with an emotion analysis means for analyzing the user's emotions. This means analyzes the user's emotions based on the user's voice tone, facial expressions, and other biometric data. For example, it can use the DeepFace library to analyze facial expressions, and a TensorFlow-based speech recognition library for voice analysis.
[1558] 7. Adjustment means
[1559] The server adjusts the timing and content of notifications based on the results of emotion analysis. For example, if the user is feeling stressed, it postpones less urgent notifications. It also selects recipe suggestions based on the user's emotional state. For example, if the user is feeling tired, it prioritizes easy-to-cook recipes.
[1560] Specific example explanation
[1561] If a user purchases "milk" and "eggs" with expiration dates of "2023-10-15" and "2023-10-10", respectively, the system will operate as follows:
[1562] 1. The user takes a photo of the expiration dates of "milk" and "eggs" with their smartphone.
[1563] 2. The device uses OCR technology to analyze the expiration dates and food names of "2023-10-15" (milk) and "2023-10-10" (eggs).
[1564] 3. The device converts the analysis data into JSON format and sends it to the server.
[1565] 4. The server saves the received data in the database and calculates the notification date. For example, the notification date for "Milk" is set to "2023-10-08" and the notification date for "Eggs" is set to "2023-10-03".
[1566] 5. When the specified date and time approaches, the server checks the database, schedules notifications for the relevant foods, and sends the notifications to the device.
[1567] 6. At the same time, the server searches for recipes (e.g., "omelette") that use food that is close to its expiration date, and provides the recipe information to the terminal.
[1568] 7. The device checks the user's emotional state, and if the emotion analysis means detects stress or fatigue, it will prioritize suggesting simple recipes.
[1569] 8. The user will receive a notification, can check the recipe details on the application and can consume the food within the deadline.
[1570] Prompt Sentence Examples
[1571] "Please provide a Python program that captures images that make users feel tired, performs sentiment analysis, and suggests optimal content. The DeepFace library will be used for sentiment analysis, and the suggested content will be obtained from an API. Please also include a function to display the suggested content to the user."
[1572] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1573] Step 1:
[1574] A user takes a photo of the expiration date of a food product they have purchased using their smartphone camera. Optical data (image) is obtained as input. The image contains the expiration date and the name of the food product.
[1575] Step 2:
[1576] The device analyzes the captured image. It receives image data as input and uses OCR (optical character recognition) technology to extract the expiration date and food name from the image. This outputs text data of the expiration date (e.g., "2023-10-15") and the food name (e.g., "Milk").
[1577] Step 3:
[1578] The device converts the analyzed expiration date and food name into JSON format and sends it to the server via the internet as an API request. It receives text data as input and outputs the data converted into JSON format.
[1579] Step 4:
[1580] The server stores the received JSON data in the database. It takes JSON data as input and outputs the database entries required to store the expiration date and food name in the database.
[1581] Step 5:
[1582] The server periodically checks the database to see which foods are approaching their expiration date. It takes as input all entries in the database, compares them with the current date, and outputs any data that requires notification.
[1583] Step 6:
[1584] If the server detects a specific period (e.g., 7 days before), it sends a notification to the user. The expiration date data that requires notification is acquired as input, and a notification message is output via a smartphone app or email.
[1585] Step 7:
[1586] The server searches the recipe database for recipes that use food items that are close to expiry. It receives the name of a food item as input and outputs a list of related recipes.
[1587] Step 8:
[1588] The server sends the recipe information it finds to the terminal. It receives recipe data as input and outputs the data to be sent to the terminal in JSON format.
[1589] Step 9:
[1590] The terminal receives the recipe information and displays it to the user. It takes the received recipe data as input and outputs data for display on the user interface.
[1591] Step 10:
[1592] The device acquires data on the user's voice tone and facial expressions to analyze the user's emotions. It receives voice and image data as input and uses an emotion analysis engine to output data that identifies the user's emotional state.
[1593] Step 11:
[1594] The device selects recipe suggestions based on the results of sentiment analysis, receives sentiment analysis results and recipe data as input, and outputs the optimal recipe.
[1595] Step 12:
[1596] The device notifies the user of the best recipe and provides emotionally appropriate actions. It receives the selected recipe and the user's emotional state as input, and outputs data for displaying notifications and recipe details.
[1597] 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.
[1598] 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.
[1599] 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.
[1600] 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.
[1601] 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.
[1602] 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.
[1603] 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).
[1604] 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.
[1605] 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."
[1606] 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.
[1607] 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).
[1608] 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.
[1609] 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.
[1610] 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.
[1611] 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.
[1612] 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.
[1613] 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.
[1614] 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.
[1615] 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.
[1616] 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.
[1617] 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.
[1618] The following is further disclosed regarding the above embodiment.
[1619] (Claim 1)
[1620] an image acquisition means for acquiring information on food products having expiration dates;
[1621] an analysis means for analyzing the expiration date and the name of the food product from the acquired image;
[1622] a storage means for storing the analyzed expiration date and food name in a database;
[1623] a notification means for notifying a user that the expiration date is approaching;
[1624] A suggestion means for suggesting recipes using food that is close to its expiration date;
[1625] A system including:
[1626] (Claim 2)
[1627] 2. The system according to claim 1, wherein the notification means notifies the user a predetermined period before the expiration date.
[1628] (Claim 3)
[1629] 2. The system according to claim 1, wherein the suggestion means searches a database for recipes corresponding to food items that are close to their expiration date and provides the recipes to the user.
[1630] "Example 1"
[1631] (Claim 1)
[1632] an image capturing means for a user to capture an image of the expiration date of a food product;
[1633] An analysis means for analyzing the expiration date and food name of the acquired image data using OCR technology;
[1634] A storage means for converting the analyzed expiration date and food name into JSON format and transmitting the same to a server via a network;
[1635] a means for storing the received data in a database by the server;
[1636] a notification means for periodically checking the database and notifying the user of foods approaching their expiration date;
[1637] a means for searching a database for recipes using food items that are close to expiry date and providing the recipes to the user;
[1638] A system including:
[1639] (Claim 2)
[1640] 2. The system according to claim 1, wherein the notification means notifies the user a predetermined period before the expiration date.
[1641] (Claim 3)
[1642] 2. The system according to claim 1, wherein the suggestion means searches a database for recipes corresponding to food items that are close to their expiration date and provides the recipes to the user.
[1643] "Application Example 1"
[1644] (Claim 1)
[1645] an image acquisition means for acquiring information on food products having expiration dates;
[1646] an analysis means for analyzing the expiration date and the name of the food product from the acquired image;
[1647] a storage means for storing the analyzed expiration date and food name in a database;
[1648] a notification means for notifying a user that the expiration date is approaching;
[1649] A suggestion means for suggesting recipes using food that is close to its expiration date;
[1650] a promotional tool for promoting food products that are nearing their expiration date;
[1651] A system including:
[1652] (Claim 2)
[1653] 2. The system according to claim 1, wherein the notification means notifies the user a predetermined period before the expiration date.
[1654] (Claim 3)
[1655] 2. The system according to claim 1, wherein the suggestion means searches a database for recipes corresponding to food items that are close to their expiration date and provides the recipes to the user.
[1656] (Claim 4)
[1657] 10. The system of claim 1, wherein the promotional means performs real-time promotions of food items that are nearing expiration.
[1658] "Example 2: Combining Emotion Engines"
[1659] (Claim 1)
[1660] an image acquisition means for acquiring information on food products having expiration dates;
[1661] Optical character recognition means for analyzing expiration dates and food names from the acquired images;
[1662] a storage means for converting the analyzed expiration date and food name into a digital format and storing the digital format in a database;
[1663] a notification means for notifying a user that the expiration date is approaching;
[1664] a recipe suggestion means for suggesting recipes using food that is close to its expiration date;
[1665] emotion recognition means for recognizing an emotion of a user;
[1666] an adjustment means for adjusting the timing and content of the notification based on the user's emotion information obtained from the emotion recognition means;
[1667] A system including:
[1668] (Claim 2)
[1669] 2. The system according to claim 1, wherein the notification means notifies the user a predetermined period before the expiration date.
[1670] (Claim 3)
[1671] 2. The system according to claim 1, wherein the recipe suggestion means searches a database for recipes corresponding to food items that are close to their expiration date and provides the recipes to the user.
[1672] "Application example 2 when combining emotion engines"
[1673] (Claim 1)
[1674] an image acquisition means for acquiring information on food products having expiration dates;
[1675] an analysis means for analyzing the expiration date and the name of the food product from the acquired image;
[1676] a storage means for storing the analyzed expiration date and food name in a database;
[1677] a notification means for notifying a user that the expiration date is approaching;
[1678] A suggestion means for suggesting recipes using food that is close to its expiration date;
[1679] emotion analysis means for analyzing the emotion of a user;
[1680] an adjusting means for adjusting the timing and content of notifications based on the emotion analysis results;
[1681] A system including:
[1682] (Claim 2)
[1683] 2. The system according to claim 1, wherein the notification means notifies the user a predetermined period before the expiration date.
[1684] (Claim 3)
[1685] 2. The system according to claim 1, wherein the suggestion means searches a database for recipes corresponding to food items that are close to their expiration date and provides the recipes to the user. [Explanation of symbols]
[1686] 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. an image acquisition means for acquiring information on food products having expiration dates; an analysis means for analyzing the expiration date and the name of the food product from the acquired image; a storage means for storing the analyzed expiration date and food name in a database; a notification means for notifying a user that the expiration date is approaching; A suggestion means for suggesting recipes using food that is close to its expiration date; A system including:
2. 2. The system according to claim 1, wherein the notification means notifies the user a predetermined period before the expiration date.
3. 2. The system according to claim 1, wherein the suggestion means searches a database for recipes corresponding to food items that are close to their expiration date and provides the recipes to the user.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A