System

The system addresses the limitations of conventional menu recommendation systems by incorporating user input, analysis, and optical character recognition to offer personalized and real-time menu and wine suggestions, improving user satisfaction.

JP2026014849APending Publication Date: 2026-01-29SOFTBANK GROUP CORP
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024116323
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-07-19
Publication Date
2026-01-29

AI Technical Summary

Technical Problem

Conventional restaurant and meal menu recommendation systems fail to respond appropriately to individual user preferences, allergies, and health conditions, leading to inadequate menu suggestions and a lack of personalized wine recommendations based on past history.

Method used

A system that includes input means for user preferences and diet goals, analysis means for personalized recommendations, optical character recognition for menu analysis, and wine suggestion based on past consumption history, enabling real-time menu suggestions tailored to user needs.

Benefits of technology

The system provides highly accurate, real-time menu and wine suggestions that meet individual user preferences and health goals, enhancing user satisfaction.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026014849000001_ABST
    Figure 2026014849000001_ABST
Patent Text Reader

Abstract

A system is provided.SOLUTION: A system comprising: input means for inputting a preference, allergy information, and a diet goal of a user; analysis means for analyzing the preference of the user based on the information input through the input means and past meal data; and generation means for recommending an appropriate restaurant or meal menu based on the analysis means.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

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

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

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

[0004] Conventional restaurant and meal menu recommendation systems have difficulty responding appropriately to individual user preferences, allergies, health conditions, etc., and mainly make recommendations based on general evaluations, which means they are unable to increase user satisfaction. Furthermore, when selecting a menu at a restaurant, they are unable to quickly make a selection that matches the user's specific preferences or health goals, and they are unable to suggest appropriate wines based on past history. [Means for solving the problem]

[0005] The present invention proposes a system that includes an input means for inputting a user's preferences, allergy information, and diet goals, an analysis means for analyzing the user's preferences based on the input information and past diet data, and a generation means for recommending appropriate restaurants and meal menus based on the analysis results. The system also includes a means for scanning restaurant menus with a camera, extracting text information using optical character recognition technology, and analyzing ingredient and calorie information based on that information, making it possible to suggest menus that match the user's preferences and health goals. The system further includes a wine suggestion means for suggesting wines that the user is likely to like based on past wine consumption history, and a goal-adaptive recommendation means for suggesting menus with nutrient information tailored to the user's diet goals. The system also includes a display means for displaying the recommendation results to the user in real time, thereby increasing user satisfaction.

[0006] "User" refers to an individual who uses this system and who provides information about preferences, allergies, and dietary goals.

[0007] "Input means" refers to an interface for a user to input preferences, allergy information, and dietary goals, and is a means for providing data to the system.

[0008] "Analysis means" refers to algorithms or software that analyzes the user's preferences and needs based on the user's information and past meal data obtained via the input means.

[0009] The "generation means" refers to a mechanism for automatically generating and suggesting restaurants and meal menus suitable for the user based on the results of the analysis means.

[0010] "Camera function" refers to the camera installed on the device, which is used to take pictures of restaurant menus.

[0011] "Optical character recognition means" refers to technology or software for extracting text information from images captured by a camera function.

[0012] "Ingredient and calorie information" refers to data indicating the contents of each ingredient of a menu item and the calories of each ingredient.

[0013] "Wine suggestion means" refers to an algorithm or software that identifies and suggests wines that a user is likely to like based on their past wine consumption history.

[0014] "Goal-adaptive recommendation means" refers to a mechanism for suggesting menus with appropriate nutrients and calories according to the diet goals set by the user.

[0015] "Display means" refers to the display or interface of the terminal for displaying the results of the analysis and suggestions to the user in real time. [Brief explanation of the drawings]

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

[0017] 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.

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

[0019] 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).

[0020] 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.

[0021] 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.

[0022] 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.

[0023] 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."

[0024] [First embodiment]

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

[0026] 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.

[0027] 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).

[0028] 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.

[0029] 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.

[0030] 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.

[0031] 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.

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

[0033] 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.

[0034] 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.

[0035] 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.

[0036] 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."

[0037] The system of the present invention includes a terminal that provides an interface for inputting the user's preferences, allergy information, diet goals, etc., and a server that analyzes the user's preferences based on this input information and past meal data and generates restaurant and meal menus.

[0038] A specific example will be given below based on the overall flow of the system.

[0039] Collection of User Information

[0040] 1. Data entry via terminal

[0041] When a user launches the app, a form appears on the device for entering preferences, allergy information, and diet goals.

[0042] For example, users input information such as "I like spicy food," "I have a nut allergy," and "I want to lose weight."

[0043] 2. Sending data from the device to the server

[0044] The entered data is sent to the server via the terminal.

[0045] The server stores this data in a database and analyzes the user's preferences and needs using analytical means.

[0046] Preference analysis and recommendation generation

[0047] 3. Preference analysis by the server

[0048] The server analyzes the user's preferences based on past meal data and newly entered information.

[0049] For example, if the user has a history of frequently selecting "spicy food" in the past, it is determined that the user has a "preference for spicy food."

[0050] 4. Recommendation Generation

[0051] The server searches for nearby restaurants and their corresponding menus and ranks them based on a scoring algorithm.

[0052] The selected recommendation list is sent to the device and displayed to the user. For example, information such as "Recommended Thai restaurants nearby" is displayed.

[0053] Menu breakdown scanning and real-time suggestions

[0054] 5. Scan the menu with your device

[0055] When a user arrives at a restaurant, they scan the menu using the device's camera function.

[0056] The device sends the scanned image to a server, which uses optical character recognition technology to extract the menu's text information.

[0057] 6. Menu analysis and suggestions by the server

[0058] The server analyzes the ingredients and calorie information for each menu item from the extracted text information.

[0059] For example, it analyzes a menu item for tom yum goong and determines that it is "slightly spicy and has 350 calories."

[0060] The server selects appropriate menu items based on the user's preferences and health goals, and displays them on the device in real time, displaying information such as "This tom yum goong suits your tastes."

[0061] Wine suggestions and goal-adaptive recommendations

[0062] 7. Wine suggestions by servers

[0063] Based on past wine consumption history, the server identifies and suggests wines that the user is likely to like, for example, suggesting wines similar to Cabernet Sauvignon that the user liked in the past.

[0064] 8. Proposals tailored to your goals

[0065] The server searches for and suggests low-calorie, nutritionally balanced menus according to the user's diet goal (e.g., "lose weight").

[0066] The server sends the suggestions to the terminal and displays them to the user in the form of, for example, "This salad is low in calories and suitable for your goals."

[0067] Specific examples

[0068] If the user likes spicy food and has a nut allergy:

[0069] 1. When you start the app, enter your preferences, allergy information, and diet goals.

[0070] 2. The device sends this information to the server.

[0071] 3. The server analyzes your preferences and recommends "spicy dishes."

[0072] 4. Arrive at the restaurant and scan the menu.

[0073] 5. The server analyzes the menu and suggests suitable dishes in real time.

[0074] 6. Recommends wines that users like based on their past wine history.

[0075] 7. We suggest low-calorie menus that fit your diet goals.

[0076] In this way, the system of the present invention can suggest restaurants and menus that meet the diverse needs of users, thereby increasing user satisfaction.

[0077] The processing flow will be explained below.

[0078] Step 1:

[0079] User: Launches the app and enters preferences, allergy information, and diet goals.

[0080] Terminal: Displays an input form and accepts input from the user.

[0081] Terminal: Sends received input data to the server.

[0082] Step 2:

[0083] Server: Receives input data and stores it in a database.

[0084] Server: Query and retrieve the user's past meal data.

[0085] Server: Runs the preference analysis algorithm to analyze the user's preferences, allergies, and diet goals.

[0086] Step 3:

[0087] Server: Based on the analysis results, the server launches a generation engine that recommends restaurants and menus.

[0088] Server: Searches for nearby restaurants and menus and ranks them using a scoring algorithm.

[0089] Server: Sends the generated recommendation list to the terminal.

[0090] Device: Displays the recommendation results so that the user can check them.

[0091] Step 4:

[0092] User: Scans a menu at a restaurant.

[0093] Device: Activate the camera function and capture a menu image.

[0094] Terminal: Sends the acquired menu image to the server.

[0095] Step 5:

[0096] Server: Receives the menu image and extracts the text information using optical character recognition (OCR).

[0097] Server: Parses the extracted text information into ingredient and calorie information.

[0098] Step 6:

[0099] Server: Based on the analysis results, select a menu that suits the user's preferences and health goals.

[0100] Server: Sends the proposal results to the device in real time.

[0101] On the device: Display the suggestion so that the user can confirm it. For example, display a comment such as "This tom yum goong will suit your taste."

[0102] Step 7:

[0103] Server: Query and retrieve the user's past wine consumption history.

[0104] Server: Runs the wine recommendation algorithm to identify wines that the user is likely to like.

[0105] Server: Sends wine recommendation results to the terminal.

[0106] Terminal: Display suggested wines so the user can review them.

[0107] Step 8:

[0108] Server: Searches for and ranks appropriate menus based on the user's diet goals.

[0109] Server: Sends the goal-adaptive recommendation results to the terminal.

[0110] On the device: Display the suggestion so the user can review it. For example, display a comment like "This salad is low in calories and fits your goals."

[0111] Example 1

[0112] 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."

[0113] While conventional systems can manage a user's preferences, allergy information, and diet goals individually, it is difficult to comprehensively analyze these information and suggest appropriate restaurants and meal menus. Furthermore, real-time menu analysis and suggestions are not performed smoothly after the user arrives at the restaurant, which prevents sufficient user satisfaction. Furthermore, there is a lack of means to provide beverage options tailored to the user's preferences, such as wine suggestions. A system that can solve these issues and suggest restaurants and menus that meet the diverse needs of users is needed.

[0114] 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.

[0115] In this invention, the server includes input means for inputting a user's preferences, allergy information, and diet goals, analysis means for analyzing the user's preferences based on the information input via the input means and past meal data, generation means for recommending appropriate restaurants and meal menus based on the analysis means, transmission means for transmitting the recommendations obtained by the generation means to a user terminal, optical character recognition means for scanning restaurant menu images input from the terminal and extracting text information, analysis means for analyzing ingredient and calorie information based on the text information, and recommendation means for suggesting menus suitable for the user in real time based on the analysis results of the analysis means. This makes it possible to suggest restaurants and menus based on the user's input information and past data, and further enables menu analysis and suggestions in real time, thereby providing highly accurate services that meet the diverse needs of users.

[0116] The "input means" is a function that provides an interface for inputting the user's preferences, allergy information, and diet goals into the terminal.

[0117] The "analysis means" is a function for analyzing the user's preferences based on information input via the input means and past meal data.

[0118] The "generation means" is a function for recommending appropriate restaurants and meal menus based on the analysis means.

[0119] The "transmission means" is a function for transmitting the recommendations obtained by the generation means to the user terminal.

[0120] The "optical character recognition means" is a function for scanning restaurant menu images input from the terminal and extracting text information.

[0121] The "analysis means" (based on optical character recognition) is a function for analyzing ingredient and calorie information based on text information extracted by the optical character recognition means.

[0122] The "recommendation means" is a function for proposing a menu suitable for the user in real time based on the analysis results of the analysis means.

[0123] A "user terminal" is a device that allows a user to input various information, has a camera function, and is equipped with a function for communicating with a server.

[0124] The system of the present invention includes an input means for inputting a user's preferences, allergy information, and diet goals, an analysis means for analyzing the input information and past meal data, a generation means for recommending appropriate restaurants and meal menus, and a transmission means for transmitting the generated recommendations to a user terminal. It also includes an optical character recognition means for scanning an image of a restaurant menu input from the terminal and extracting text information, an analysis means for analyzing ingredient and calorie information based on the extracted text information, and a recommendation means for proposing menus suitable for the user in real time.

[0125] The system mainly consists of two hardware components: a server and a user terminal, which enable a wide range of data processing and calculations. The server is equipped with a high-performance database management system and runs analysis software using Python and R. The database uses a general-purpose database system such as MySQL. The optical character recognition (OCR) process uses Tesseract, an open-source OCR software.

[0126] When a user launches the application, a form appears on the device for entering preferences, allergy information, and diet goals. For example, the user might enter information such as "I like spicy food," "I have a nut allergy," or "I want to lose weight." The device then sends this input information to the server, which stores it in a database. The server's analysis means then analyzes the user's preferences and needs based on this data and past dietary data, and generates recommendations for appropriate restaurants and menus. The generated recommendations are sent to the device via the transmission means and displayed to the user.

[0127] When a user arrives at a restaurant, they scan the menu using their device's camera. The scanned image is sent to a server, which uses optical character recognition to extract the menu's text information. This text information is then analyzed for ingredients and calorie information. Based on the analysis results, menus that match the user's preferences and health goals are suggested in real time.

[0128] As a specific example, if a user "likes spicy food and has a nut allergy," the following steps may be taken:

[0129] 1. The user launches the app and enters their preferences, allergy information, and diet goals.

[0130] 2. The device sends this information to the server, which analyzes the preferences and recommends "spicy dishes."

[0131] 3. The user arrives at the restaurant and scans the menu.

[0132] 4. The server analyzes the menu and suggests suitable dishes in real time.

[0133] 5. Based on past wine history, wines that the user may like are also recommended.

[0134] 6. Low-calorie menus that fit your diet goals will be suggested.

[0135] Examples of prompts to input to a generative AI model include:

[0136] "How can we create a system that provides an interface for users to input their preferences, allergy information, and dietary goals?"

[0137] "Guide the algorithm to generate restaurant and meal menus by analyzing user preferences and past dining data."

[0138] "How can we design a system that scans restaurant menus and makes real-time suggestions tailored to the user's preferences?"

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

[0140] Step 1:

[0141] The user launches the app and enters their preferences, allergy information, and diet goals.

[0142] Input: User preferences, allergy information, diet goals

[0143] Output: The device saves the input information and prepares the data to be sent to the server.

[0144] Specific operation: The user enters information into an input form displayed on the device, such as "I like spicy food," "I have a nut allergy," and "I want to lose weight."

[0145] Step 2:

[0146] The terminal sends the input information to the server.

[0147] Input: User information entered in step 1

[0148] Output: User information stored on the server, ready for analysis

[0149] How it works: The device sends data to the server over Wi-Fi or mobile data, and the server receives it and stores it in a database.

[0150] Step 3:

[0151] The server analyzes the received data to determine the user's preferences.

[0152] Input: User information and past meal data

[0153] Output: Data on user preferences as a result of the analysis

[0154] Specific operation: The server runs an analysis program using R or Python. It compares past eating history with newly entered preference information to derive preferences such as "I like spicy food."

[0155] Step 4:

[0156] The server generates appropriate restaurants and menus based on the analysis results.

[0157] Input: Analysis results, nearby restaurant data

[0158] Output: Recommendation list

[0159] Specific operation: The server obtains nearby restaurant information from external services (e.g., Google Maps API or Yelp API) via a RESTful API and ranks them based on the generated preference data. As a result, recommendations such as "We recommend a nearby Thai restaurant" are generated.

[0160] Step 5:

[0161] The server sends the recommendation list to the terminal and displays it to the user.

[0162] Input: Recommendation list

[0163] Output: Recommendation information displayed on the device

[0164] Specific operation: The server sends the generated recommendation list to the device, and the device application displays it to the user. For example, it displays information such as "Recommended Thai restaurants nearby."

[0165] Step 6:

[0166] The user arrives at the restaurant and scans the menu using the device's camera function.

[0167] Input: Restaurant menu image

[0168] Output: Scanned image data

[0169] Specific behavior: The user launches the device's camera app and scans a restaurant menu. An image of the captured menu is generated.

[0170] Step 7:

[0171] The device sends the scanned image to the server.

[0172] Input: Scanned image

[0173] Output: Image data sent to the server

[0174] What it does: Your device sends scanned images to the server using Wi-Fi or mobile data.

[0175] Step 8:

[0176] The server extracts the menu text information using optical character recognition (OCR) technology.

[0177] Input: Scanned image

[0178] Output: Extracted text information

[0179] How it works: OCR software such as Tesseract runs on the server and extracts text information from scanned images.

[0180] Step 9:

[0181] The server analyzes ingredients and calorie information based on the extracted text information.

[0182] Input: Extracted text information

[0183] Output: Ingredients and calorie information

[0184] Specific operation: The server uses a Python analysis program to analyze the ingredients and calorie information from the text information and determines that "Tom Yum Kung is spicy and has 350 kcal."

[0185] Step 10:

[0186] Based on the analysis results, the server suggests a menu suitable for the user in real time.

[0187] Input: Analysis results (ingredients, calorie information), user preference data

[0188] Output: Real-time menu recommendations

[0189] Specific operation: Based on the analysis results and the user's preference information, the server selects an appropriate menu item and sends it to the device in real time. The message "This tom yum goong suits your taste" is displayed.

[0190] Step 11:

[0191] The server will suggest wines that suit the user's tastes.

[0192] Input: Past wine consumption history

[0193] Output: Wine suggestions

[0194] How it works: The server selects similar wines based on your past wine consumption history and suggests "wine similar to a Cabernet Sauvignon you liked in the past."

[0195] Step 12:

[0196] The server suggests foods that fit the user's diet goals.

[0197] Input: diet goal, food data

[0198] Output: Food suggestions that fit your diet goals

[0199] How it works: The server uses OpenAI's generative AI model to select foods that fit the user's diet goals. It displays the message, "This salad is low in calories and fits your goals."

[0200] (Application example 1)

[0201] 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."

[0202] Conventional food delivery systems have been unable to adequately meet the needs of individual users, as they have been unable to recommend meal menus that are tailored to the user's preferences, allergy information, and diet goals. Furthermore, users have limited means to check menu details before ordering, making it difficult to receive appropriate suggestions tailored to their health and diet goals. There is a need for a system that can solve these problems and improve user satisfaction.

[0203] 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.

[0204] In this invention, the server includes an input means for inputting a user's preferences, allergy information, and diet goals, an analysis means for analyzing the user's preferences based on the information input via the input means and past meal data, a generation means for recommending appropriate meal-providing facilities and meal menus based on the analysis means, an information acquisition means for scanning menus and checking ingredient and calorie information before ordering, and a recommendation means for making suggestions that match the user's past meal history and health goals. This makes it possible to suggest meal menus and drinks that match the user's individual health goals and preferences.

[0205] The "input means" refers to a device or interface for inputting information such as the user's preferences, allergy information, and diet goals.

[0206] The "analysis means" refers to a device or algorithm for analyzing the user's preferences and health goals based on the information input via the input means and past dietary data.

[0207] The "generation means" refers to a device or algorithm for recommending appropriate dining establishments and meal menus based on the analysis means.

[0208] "Information acquisition means" refers to a device or software that scans a menu and checks ingredients and calorie information before ordering.

[0209] A "recommendation tool" is a device or algorithm that makes suggestions that match past dietary history and health goals.

[0210] An "imaging means" is a camera or other imaging device for scanning restaurant menus.

[0211] "Optical character recognition" refers to techniques and devices used to extract text information from scanned images of menus.

[0212] "Communication means" refers to a communication device or interface for transmitting scanned image information to a server and obtaining analysis results.

[0213] The "suggestion means" is a device or algorithm that identifies and suggests beverages that a user is likely to like based on past consumption information.

[0214] The system for realizing this invention includes an input means for inputting a user's preferences, allergy information, and diet goals, an analysis means for analyzing the user's preferences based on the information input via the input means and past meal data, a generation means for recommending appropriate meal facilities and meal menus based on the analysis means, an information acquisition means for scanning the menu before ordering and checking ingredient and calorie information, and a recommendation means for making suggestions that match the user's past meal history and health goals.

[0215] Specifically, the following hardware and software are used.

[0216] Hardware

[0217] Terminal (smartphone): A device that allows users to input preferences, allergy information, diet goals, etc. and scan the menu.

[0218] Server: A backend system for performing data analysis and generating recommendations.

[0219] software

[0220] Flask (server-side web framework): Receives user input, analyzes it, and makes recommendations.

[0221] OCR module (e.g. Tesseract): Extracts text information from scanned images of menus.

[0222] Database (e.g., SQLite): Stores user information and meal data.

[0223] Recommendation engine: A customized algorithm that suggests the best menu based on user preferences and past data.

[0224] Processing flow

[0225] 1. Input Method

[0226] The user launches the smartphone application and inputs their preferences, allergy information, and diet goals, which are then sent from the smartphone to the server.

[0227] 2. Analysis method

[0228] The server analyzes the information it receives to identify the user's preferences and health goals, taking into account past dietary data.

[0229] 3. Generation means

[0230] Based on the analysis results, the server selects dining facilities and menus suitable for the user and generates a recommendation list, which is then sent back to the user's smartphone and displayed to them.

[0231] 4. Information acquisition means

[0232] When a user arrives at a restaurant, they scan the menu using their smartphone's camera, which converts the scanned image into text information using an OCR module and sends it to the server.

[0233] 5. Recommendation methods

[0234] The server analyzes the ingredients and calorie information from the extracted text information and suggests menus in real time that suit the user's preferences and health goals.

[0235] Specific examples

[0236] For example, if a user inputs "I like spicy food," "I have a nut allergy," or "I want to lose weight," the server will make recommendations based on this. If a user scans a menu for tom yum goong at a restaurant, the server will analyze the ingredients and calorie information and suggest "spicy tom yum goong with 350 calories."

[0237] Prompt Sentence Examples

[0238] "If the user likes spicy food, has a nut allergy, and wants to lose weight."

[0239] The system allows users to easily choose the meal plan that best suits their health goals and preferences.

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

[0241] Step 1:

[0242] The user starts the smartphone application and uses the input means to input their preferences, allergy information, and diet goals.

[0243] Input: User preferences, allergy information, and diet goals

[0244] Output: Input information is obtained

[0245] Specific actions: The user fills out a form in the app, saying, "I like spicy food," "I have a nut allergy," and "I want to lose weight."

[0246] Step 2:

[0247] The terminal transmits this input information to the server.

[0248] Input: Input information

[0249] Output: The input information is sent to the server

[0250] Specific operation: The terminal transmits input information to the server as a data packet.

[0251] Step 3:

[0252] The server stores the received information in a database and uses analytical means to analyze the user's preferences and health goals.

[0253] Input: Submitted input information

[0254] Output: Analysis results of preferences and health goals

[0255] Specific operation: Past meal data is combined with newly entered information in the database and an analysis algorithm is executed.

[0256] Step 4:

[0257] The server uses a generating means to generate a recommendation list of appropriate dining establishments and menus based on the analysis results.

[0258] Input: Analysis results

[0259] Output: Recommendation list

[0260] How it works: The recommendation engine uses a scoring algorithm to rank and generate a list.

[0261] Step 5:

[0262] The server transmits the generated recommendation list to the terminal.

[0263] Input: Recommendation list

[0264] Output: The recommendation list is displayed on the terminal.

[0265] Specific operation: The recommendation list is converted into a data format and sent to the terminal.

[0266] Step 6:

[0267] The terminal displays the recommendation list to the user.

[0268] Input: Received recommendation list

[0269] Output: Displayed recommendation list

[0270] Specific behavior: The recommendation list is displayed in the application UI so that the user can review it.

[0271] Step 7:

[0272] A user arrives at a restaurant and uses the device's camera function to scan the menu before ordering.

[0273] Input: Menu Image

[0274] Output: Scanned menu images

[0275] Specific action: The user takes a photo of the menu with the smartphone camera.

[0276] Step 8:

[0277] The terminal converts the scanned menu image into text information using an OCR module and sends it to the server.

[0278] Input: Scanned menu image

[0279] Output: Extracted text information

[0280] Specific operation: The OCR module processes the image, converts it into text information, and sends it to the server.

[0281] Step 9:

[0282] The server analyzes the text information and obtains information on ingredients and calories.

[0283] Input: Text information

[0284] Output: Ingredients and calorie information

[0285] How it works: The parsing algorithm extracts ingredient and calorie information from the text information.

[0286] Step 10:

[0287] The server uses recommendation tools to suggest appropriate menus in real time based on the user's preferences and health goals.

[0288] Input: Ingredient and calorie information, user preferences and health goals

[0289] Output: Suggested menu information

[0290] Specific operation: The proposed algorithm calculates the score for each menu, selects the optimal menu, and sends it to the terminal.

[0291] Step 11:

[0292] The terminal displays the suggested menu information to the user.

[0293] Input: Suggested menu information

[0294] Output: Menu suggestions displayed

[0295] Specific behavior: The proposed menu information is displayed in the application UI so that the user can confirm it.

[0296] 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.

[0297] The system of the present invention includes a terminal that provides an interface for inputting the user's preferences, allergy information, diet goals, etc., and a server that analyzes the user's preferences based on this input information and past meal data and generates restaurant and meal menus. Furthermore, by combining it with an emotion engine that recognizes the user's emotions, the accuracy of suggestions and user satisfaction can be further improved.

[0298] A specific example will be given below based on the overall flow of the system.

[0299] Collection of User Information

[0300] 1. Data entry via terminal

[0301] When a user launches the app, a form appears on the device for entering preferences, allergy information, diet goals, and emotional state.

[0302] The user inputs information such as, "I like spicy food," "I have a nut allergy," "I want to lose weight," and "I'm currently feeling stressed."

[0303] 2. Sending data from the device to the server

[0304] The entered data is sent to the server via the terminal.

[0305] The server stores this data in a database and uses analytical means to analyze the user's preferences and needs.

[0306] Preference analysis and recommendation generation

[0307] 3. Preference analysis by the server

[0308] The server analyzes the user's preferences and emotional state based on past meal data and newly entered information.

[0309] For example, if the user has a history of frequently choosing "spicy food" in the past, it is determined that the user has a "preference for spicy food." Also, if the user inputs "I'm currently feeling stressed," this information is taken into consideration.

[0310] 4. Recommendation Generation

[0311] The server searches for nearby restaurants and their corresponding menus and ranks them based on a scoring algorithm.

[0312] The emotional state recognized by the emotion engine is also incorporated into the analysis results, and adjustments are made to prioritize ingredients and menus that, for example, relieve stress.

[0313] The selected recommendation list is sent to the device and displayed to the user. For example, information such as "We recommend a nearby Thai restaurant, which serves dishes that have a particularly relaxing effect" is displayed.

[0314] Menu breakdown scanning and real-time suggestions

[0315] 5. Scan the menu with your device

[0316] When a user arrives at a restaurant, they scan the menu using the device's camera function.

[0317] The terminal sends the scanned image to the server, which uses optical character recognition to extract the menu text information.

[0318] 6. Menu analysis and suggestions by the server

[0319] The server analyzes the ingredients and calorie information for each menu item from the extracted text information.

[0320] For example, it analyzes a menu item for tom yum goong and determines that it is "slightly spicy and has 350 calories."

[0321] The server selects an appropriate menu based on the user's preferences, health goals, and emotional state, and displays it in real time on the device, displaying information such as, "This tom yum goong will suit your tastes and have a relaxing effect."

[0322] Wine suggestions and goal-adaptive recommendations

[0323] 7. Wine suggestions by servers

[0324] Based on past wine consumption history, the server identifies and suggests wines that the user is likely to like, for example, suggesting wines similar to Cabernet Sauvignon that the user liked in the past.

[0325] If the emotion engine knows that the user is not feeling calm, it will also suggest wines that have a relaxing effect.

[0326] 8. Proposals tailored to your goals

[0327] The server searches for and suggests low-calorie, nutritionally balanced menus according to the user's diet goal (e.g., "lose weight").

[0328] The server sends the suggestions to the terminal and displays them to the user in the form of, "This salad is low in calories and has a relaxing effect. It's suitable for your goals."

[0329] Specific examples

[0330] If a user likes spicy food, has a nut allergy, and is currently stressed:

[0331] 1. When you start the app, enter your preferences, allergy information, diet goals, and emotional state.

[0332] 2. The device sends this information to the server.

[0333] 3. The server analyzes the customer's preferences and emotional state and recommends "spicy dishes." Menu items containing ingredients that reduce stress are prioritized.

[0334] 4. Arrive at the restaurant and scan the menu.

[0335] 5. The server analyzes the menu and suggests suitable dishes in real time. For example, it might say, "This tom yum goong is likely to have a relaxing effect."

[0336] 6. We also recommend wines that have a relaxing effect based on your past wine history.

[0337] 7. We offer low-calorie menus that suit your diet goals and also take into consideration the relaxing effects.

[0338] In this way, by combining the emotion engine, the system of the present invention can suggest restaurants and menus that meet the user's diverse needs and emotional state, further increasing user satisfaction.

[0339] The processing flow will be explained below.

[0340] Step 1:

[0341] User: Launches the app and enters preferences, allergy information, diet goals, and emotional state.

[0342] Terminal: Displays an input form and accepts input from the user.

[0343] Terminal: Sends received input data to the server.

[0344] Step 2:

[0345] Server: Receives input data and stores it in a database.

[0346] Server: Query and retrieve the user's past meal data.

[0347] Server: Runs the preference analysis algorithm and analyzes the user's preferences, allergy information, diet goals, and emotional state.

[0348] Step 3:

[0349] Server: Launches a generation engine that recommends restaurants and menus based on the analysis results.

[0350] Server: Searches for nearby restaurants and menus and ranks them using a scoring algorithm.

[0351] Server: Based on the emotion engine, the menu selection is adjusted taking into account the user's emotional state. For example, if a user is stressed, a menu with a relaxing effect will be prioritized.

[0352] Server: Sends the generated recommendation list to the terminal.

[0353] Device: Displays the recommendation results so that the user can check them.

[0354] Step 4:

[0355] User: Scans a menu at a restaurant.

[0356] Device: Activate the camera function and capture a menu image.

[0357] Terminal: Sends the acquired menu image to the server.

[0358] Step 5:

[0359] Server: Receives the menu image and extracts the text information using optical character recognition (OCR).

[0360] Server: Parses the extracted text information into ingredient and calorie information.

[0361] Step 6:

[0362] Server: Based on the analysis results, selects a menu that suits the user's preferences, health goals, and emotional state.

[0363] Server: Sends the proposal results to the device in real time.

[0364] On the device: The suggestion is displayed so that the user can confirm it. For example, a comment such as "This tom yum goong will suit your taste and have a relaxing effect" is displayed.

[0365] Step 7:

[0366] Server: Query and retrieve the user's past wine consumption history.

[0367] Server: Runs the wine recommendation algorithm to identify wines that the user is likely to like.

[0368] Server: The emotion engine takes into account the user's emotional state and also suggests wines that have a relaxing effect.

[0369] Server: Sends wine recommendation results to the terminal.

[0370] Terminal: Display suggested wines so the user can review them.

[0371] Step 8:

[0372] Server: Searches for and ranks appropriate menus based on the user's diet goals.

[0373] Server: Performs goal-adaptive recommendations that also take emotional states into account.

[0374] Server: Sends the goal-adaptive recommendation results to the terminal.

[0375] On the device: Display the suggestion so the user can review it. For example, display a comment like, "This salad is low in calories and may help you relax. It's a good fit for your goals."

[0376] Example 2

[0377] 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."

[0378] It is difficult for users to find the right meal or restaurant based on their preferences, allergies, diet goals, and even their emotional state. Existing recommendation systems cannot take the user's emotional state into account, and therefore cannot fully increase user satisfaction. Furthermore, selecting the right meal while browsing a restaurant menu is time-consuming. Therefore, a system that allows users to receive optimal meal suggestions in real time based on their input information and emotions is needed.

[0379] 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.

[0380] In this invention, the server includes an input means for inputting a user's preferences, allergy information, and diet goals, an analysis means for analyzing the user's preferences based on the information input via the input means and past meal data, a generation means for generating a list of appropriate restaurant and meal suggestions based on the analysis means, an emotion recognition means for recognizing the user's emotional state, and an adjustment means for adjusting recommendations in consideration of the emotion information obtained from the emotion recognition means. This allows users to easily find the best meals and restaurants that suit their preferences and emotional state, thereby improving their satisfaction.

[0381] "User" refers to an individual who utilizes the system to input preferences, allergy information, diet goals, and emotional state and receives meal suggestions based on the results.

[0382] "Preferences" refers to information about the types of ingredients and dishes that a user likes.

[0383] "Allergy information" refers to information about ingredients or substances that a user cannot consume.

[0384] "Diet goal" refers to the weight loss or nutritional balance goal that a user wants to achieve.

[0385] "Input means" refers to an interface that allows a user to input preferences, allergy information, diet goals, and emotional state into the system.

[0386] "Analysis means" refers to means for analyzing a user's preferences and needs based on information entered by the user and past meal data.

[0387] The "generation means" refers to a means for generating a list of suitable restaurant and meal suggestions based on the information obtained by the analysis means.

[0388] "Emotion recognition means" refers to technology for recognizing the emotional state of a user from input information.

[0389] The "adjustment means" refers to a means for optimizing recommendations and providing them to users in consideration of the emotion information obtained from the emotion recognition means.

[0390] "Terminal" refers to a device on which a user launches an application and inputs data.

[0391] "Optical character recognition" refers to technology for extracting character information from image data.

[0392] "Recommendation means" refers to a means for generating and providing optimal meal suggestions to users in real time based on analyzed information.

[0393] "Dining hall" refers to a dining facility available to users.

[0394] The present invention is a system that proposes optimal meals by taking into account the user's preferences, allergy information, diet goals, and emotional state. The system consists of a terminal that provides a user interface and a server that analyzes data and generates proposals.

[0395] Hardware and Software Configuration

[0396] Device: A mobile device, such as a smartphone or tablet, used by a user on which the application is installed.

[0397] Server: A computer server with a high-performance database and analytical engine that stores data, analyzes it, and generates recommendations.

[0398] Emotion recognition engine: A software module that analyzes the user's emotional state from information entered by the user.

[0399] Optical Character Recognition (OCR): A software technique for extracting textual information from menu images.

[0400] Data entry and saving

[0401] Entering user information: The user launches the app on their device and enters their preferences, allergy information, diet goals, and emotional state. For example, they enter information such as "I like spicy food," "I have a nut allergy," "I want to lose weight," and "I'm currently feeling stressed."

[0402] Data transmission and storage: The device sends the entered information to the server, which stores it in a database. The data is encrypted before transmission and stored securely.

[0403] Data analysis and proposal generation

[0404] Preference analysis: The server analyzes the user's preferences and emotional state based on the stored data. For example, if the user has frequently selected "spicy food" in the past, it will detect a "preference for spicy food." The emotion recognition engine will also analyze information such as "current mood: stressed."

[0405] Recommendation generation: Based on the analysis results, the server generates a list of nearby restaurants and corresponding meal suggestions, taking into account the user's emotional state and prioritizing ingredients and menus that reduce stress.

[0406] Recommendation display and real-time suggestions

[0407] Sending and displaying the recommendation list: The server sends the generated recommendation list to the device, which then displays it to the user. For example, a specific message such as "I recommend a nearby Thai restaurant. They serve dishes that have a particularly relaxing effect" may be displayed.

[0408] Menu scanning and analysis: When a user arrives at a restaurant, they scan the menu using their device's camera. The device then sends the scanned image to the server, which then uses OCR technology to extract the text information from the menu. Based on the extracted information, the ingredients and calorie information for each menu item are analyzed. For example, the Tom Yum Kung menu item is analyzed and determined to be spicy and have 350 kcal.

[0409] Real-time suggestions: Based on the analysis results, the server selects the optimal menu based on the user's preferences, health goals, and emotional state, and sends the suggestions to the device in real time. Specific messages such as "This tom yum goong suits your tastes and is expected to have a relaxing effect" are displayed.

[0410] Example: Prompt sentence

[0411] "I like spicy food and I have a nut allergy. I'm feeling stressed right now. Can you recommend any restaurants or menus?"

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

[0413] Step 1:

[0414] A user taps the app icon on their device to launch the app. They then input their preferences (e.g., "I like spicy food"), allergy information (e.g., "I'm allergic to nuts"), diet goals (e.g., "I want to lose weight"), and emotional state (e.g., "I'm currently feeling stressed") via an input device. The input data here is basic information about the user's needs.

[0415] Step 2:

[0416] The device sends the input data (preferences, allergy information, diet goals, emotional state) to the server. The data is encrypted and securely protected. The server receives this data and stores it in a database. The input data becomes the raw data for analysis.

[0417] Step 3:

[0418] The server analyzes preferences and emotional state based on past meal data stored in a database and newly entered user data. The analysis means references past data to identify the user's cluster and predict preferences (e.g., detects a preference for spicy food). The emotion recognition engine analyzes the emotional state based on information such as "currently feeling stressed."

[0419] Step 4:

[0420] The server generates a list of nearby restaurants and corresponding meal suggestions based on the analysis results. The generator uses a scoring algorithm to rank suitable restaurants and menus. The output is a list of suggested restaurants and menus.

[0421] Step 5:

[0422] The server generates a recommendation list and sends it to the device. The device receives the recommendation list and displays it to the user. Specific messages displayed include, "We recommend a nearby Thai restaurant. They serve dishes that have a particularly relaxing effect." The input is the recommendation list from the server, and the output is a visual list displayed on the device.

[0423] Step 6:

[0424] A user arrives at a restaurant and scans the menu using the device's camera function. The input is the menu image taken by the user.

[0425] Step 7:

[0426] The device sends a menu image to the server. The server uses OCR technology to extract text information from the menu image. The extracted text data becomes the input, and the ingredients and calorie information is analyzed based on it. For example, "Tom Yum Kung" is analyzed and determined to be "spicy with 350 kcal." The output is the analyzed ingredients and calorie information.

[0427] Step 8:

[0428] Based on the analysis results, the server selects the optimal menu based on the user's preferences, health goals, and emotional state, and generates suggestions in real time. The device receives this and displays it to the user. A specific message such as "This tom yum goong suits your tastes and is expected to have a relaxing effect" is displayed. The input is the suggestion data from the server, and the output is the suggestion message on the device.

[0429] Step 9:

[0430] The server identifies and suggests wines that the user is likely to like based on their past wine consumption history. It also uses data from an emotion recognition engine to prioritize wines that have a relaxing effect. The input is past wine consumption data, and the output is a suggested wine list.

[0431] Step 10:

[0432] The server searches for low-calorie, nutritionally balanced menus based on the user's diet goals and generates suggestions. The device receives these and presents them to the user in the form of, "This salad is low in calories and has a relaxing effect. It's suitable for your goals." The input is a dataset related to the diet goals, and the output is a specific menu suggestion.

[0433] (Application example 2)

[0434] 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."

[0435] Existing food delivery systems do not provide optimal recommendations based on a user's preferences, allergy information, diet goals, or even emotional state, making it difficult to provide a satisfying service tailored to each individual user. Furthermore, they lack a mechanism for automatically analyzing restaurant menu information and placing appropriate orders in real time. This makes it difficult for users to select the meal that best suits them, resulting in a decrease in satisfaction after ordering.

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

[0437] In this invention, the server includes input means for inputting a user's preferences, allergy information, and diet goals, analysis means for analyzing the user's preferences based on the information input via the input means and past meal data, generation means for recommending appropriate restaurants and meal menus based on the analysis means, an emotion engine for recognizing the user's emotional state, and display means for displaying the generated recommendation list to the user. This makes it possible to suggest optimal restaurants and menus that meet the user's diverse needs and emotional state, further increasing user satisfaction.

[0438] "User preferences" refers to the preferences that a user has for food, and means a favorable preference for specific flavors and characteristics of individual ingredients or dishes.

[0439] "Allergy information" refers to information about ingredients or substances that a user cannot consume or that may cause an allergic reaction if consumed.

[0440] "Diet goal" refers to a health or physical objective that a user wishes to achieve, such as losing weight or body fat, or gaining muscle.

[0441] "Input means" refers to a device or interface for a user to input information, including a keyboard, touch screen, voice input, etc.

[0442] "Analysis means" refers to software or algorithms that use input data to analyze user preferences and attributes and derive appropriate results.

[0443] "Generation means" refers to a function for generating optimal menu and restaurant recommendations for a user based on the analyzed data.

[0444] An "emotion engine" refers to technology that analyzes a user's current emotional state and provides information and services that correspond to that emotion.

[0445] "Display means" refers to a display or screen for visually presenting the generated recommendation list and information to the user.

[0446] "Camera function" refers to the ability to take pictures and videos using a digital camera, and is often found on smartphones and tablets.

[0447] "Optical character recognition" is a technology that extracts text information from scanned images, and is an abbreviation for OCR (Optical Character Recognition).

[0448] "Ordering means" refers to a system or function for confirming and processing an order for the menu item selected by the user.

[0449] "Recommendation means" refers to functions and mechanisms for recommending optimal options to users based on analysis results.

[0450] The system embodying this invention takes into account a user's preferences, allergy information, diet goals, and emotional state when ordering a meal, and recommends appropriate restaurants and menus. This system uses the following hardware and software:

[0451] Hardware and software used

[0452] Smartphone: A device where users input information and receive recommendations.

[0453] Cloud server: Analyzes the input information and generates optimal recommendations. This uses Node.js and Express.

[0454] Database: Stores user preferences and past meal data. MongoDB is used.

[0455] Emotion analysis engine: Software for analyzing the user's emotional state, powered by IBM Watson.

[0456] Optical Character Recognition (OCR): A technology used to extract text information from scanned images of menus, powered by Google Cloud Vision.

[0457] System Operation Overview

[0458] 1. Data Entry

[0459] The user launches the smartphone app and inputs their preferences, allergy information, diet goals, and emotional state, which is then sent to the server and stored in a database.

[0460] 2. Data Analysis

[0461] The server analyzes the user's preferences and emotional state based on the input information and past meal data, and uses an emotion analysis engine (IBM Watson) to identify the user's current emotional state.

[0462] 3. Recommendation Generation

[0463] The server generates appropriate restaurant and menu options based on the analysis results, taking into account the user's current emotional state and may prioritize ingredients and menu items that have a relaxing effect.

[0464] 4. Recommendation display

[0465] The generated recommendation list is displayed on the smartphone, and the user can review the list and select restaurants and menus that suit their preferences.

[0466] 5. Scan the menu

[0467] When a user arrives at a restaurant, they scan the menu using their smartphone's camera, which sends the scanned image to a server where optical character recognition (OCR) technology extracts the text information.

[0468] 6. Real-time suggestions

[0469] The server analyzes the extracted text information to obtain information on ingredients and calories, and then suggests optimal menu items to the user in real time.

[0470] 7. Order Processing

[0471] After scanning, the user selects the most suitable item from the recommended menu and confirms the order. The order information is sent to the server for appropriate processing.

[0472] Specific examples

[0473] User A likes spicy food, has a nut allergy, and wants to lose weight. He also inputs that he is currently feeling stressed. The app sends this information to the server and begins analysis. Based on the user's preferences and emotional state, the server recommends "spicy Thai curry with chicken breast" from a nearby restaurant, accompanied by a relaxing herbal tea. User A selects this and completes the order, allowing him to enjoy a meal that meets his diet goal while reducing stress.

[0474] Prompt Sentence Examples

[0475] User information: spicy food, nut allergy, want to lose weight, stressed

[0476] Recommendations: Based on the algorithm's analysis, suggest meals that best fit the user's preferences and health goals. For example, "Spicy Thai Curry with Chicken Breast" with a relaxing herbal tea. Include calorie information and the relaxing effect of the menu.

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

[0478] Step 1:

[0479] The user launches the smartphone app and inputs their preferences, allergy information, diet goals, and emotional state.

[0480] Input: Preferences, allergy information, diet goals, and emotional state data

[0481] Output: The input data is sent to the server in the form of a request.

[0482] What happens: The user enters the required information using the text boxes and drop-down menus and presses the submit button.

[0483] Step 2:

[0484] The server stores the entered information in a database.

[0485] Input: Submitted preferences, allergy information, diet goals, and emotional state data

[0486] Output: User information stored in the database

[0487] What it does: The server parses the data it receives, converts it into the appropriate format, and inserts it into a database such as MongoDB.

[0488] Step 3:

[0489] The server analyzes the user's preferences and emotional state based on past meal data and newly entered information.

[0490] Input: Past meal data stored in the database, new input data

[0491] Output: Analysis results based on user preferences and emotional state

[0492] How it works: The server uses an analytical algorithm to extract user trends from past data and uses an emotion analysis engine (IBM Watson) to identify the user's current emotional state.

[0493] Step 4:

[0494] The server generates the optimal restaurant and meal menu based on the analysis results.

[0495] Input: Analysis results (user preferences, allergy information, diet goals, emotional state)

[0496] Output: A list of restaurants and menus suitable for the user

[0497] What it does: Searches a database of restaurants and uses a scoring algorithm to generate a list of recommendations.

[0498] Step 5:

[0499] The generated recommendation list is displayed to the user.

[0500] Input: A list of restaurants and menus suitable for the user

[0501] Output: Recommendation list displayed on a smartphone screen

[0502] Specific behavior: The smartphone app receives the response from the server and displays the recommendation list on the user interface.

[0503] Step 6:

[0504] A user arrives at a restaurant and scans the menu using the camera function on their smartphone.

[0505] Input: scanned image of menu

[0506] Output: Scanned image data sent to the server

[0507] What happens: The user activates the camera scan feature within the app and takes a picture of the menu.

[0508] Step 7:

[0509] The server extracts text information from the scanned image and obtains ingredient and calorie information.

[0510] Input: Scanned image data of the menu

[0511] Output: Extracted text information, ingredients, and calorie information

[0512] Specific operation: The server uses the Google Cloud Vision API to perform OCR processing, extract text information, and analyze it.

[0513] Step 8:

[0514] The server proposes the most suitable menu to the user in real time based on the extracted text information.

[0515] Input: Extracted text information, ingredients, and calorie information

[0516] Output: A list of optimal menus to be displayed to the user

[0517] Specific operation: The server selects the most suitable menu based on the user's preferences and analyzed menu information and sends it to the smartphone.

[0518] Step 9:

[0519] The user confirms the order of the menu selected.

[0520] Input: The menu item selected by the user

[0521] Output: Confirmed order information

[0522] Specific operation: The user selects from the recommended menu and presses the order button. The server receives and processes the order information.

[0523] 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.

[0524] 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.

[0525] 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.

[0526] [Second embodiment]

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

[0528] 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.

[0529] 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).

[0530] 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.

[0531] 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.

[0532] 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).

[0533] 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.

[0534] 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.

[0535] 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.

[0536] 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.

[0537] 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.

[0538] 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."

[0539] The system of the present invention includes a terminal that provides an interface for inputting the user's preferences, allergy information, diet goals, etc., and a server that analyzes the user's preferences based on this input information and past meal data and generates restaurant and meal menus.

[0540] A specific example will be given below based on the overall flow of the system.

[0541] Collection of User Information

[0542] 1. Data entry via terminal

[0543] When a user launches the app, a form appears on the device for entering preferences, allergy information, and diet goals.

[0544] For example, users input information such as "I like spicy food," "I have a nut allergy," and "I want to lose weight."

[0545] 2. Sending data from the device to the server

[0546] The entered data is sent to the server via the terminal.

[0547] The server stores this data in a database and analyzes the user's preferences and needs using analytical means.

[0548] Preference analysis and recommendation generation

[0549] 3. Preference analysis by the server

[0550] The server analyzes the user's preferences based on past meal data and newly entered information.

[0551] For example, if the user has a history of frequently selecting "spicy food" in the past, it is determined that the user has a "preference for spicy food."

[0552] 4. Recommendation Generation

[0553] The server searches for nearby restaurants and their corresponding menus and ranks them based on a scoring algorithm.

[0554] The selected recommendation list is sent to the device and displayed to the user. For example, information such as "Recommended Thai restaurants nearby" is displayed.

[0555] Menu breakdown scanning and real-time suggestions

[0556] 5. Scan the menu with your device

[0557] When a user arrives at a restaurant, they scan the menu using the device's camera function.

[0558] The device sends the scanned image to a server, which uses optical character recognition technology to extract the menu's text information.

[0559] 6. Menu analysis and suggestions by the server

[0560] The server analyzes the ingredients and calorie information for each menu item from the extracted text information.

[0561] For example, it analyzes a menu item for tom yum goong and determines that it is "slightly spicy and has 350 calories."

[0562] The server selects appropriate menu items based on the user's preferences and health goals, and displays them on the device in real time, displaying information such as "This tom yum goong suits your tastes."

[0563] Wine suggestions and goal-adaptive recommendations

[0564] 7. Wine suggestions by servers

[0565] Based on past wine consumption history, the server identifies and suggests wines that the user is likely to like, for example, suggesting wines similar to Cabernet Sauvignon that the user liked in the past.

[0566] 8. Proposals tailored to your goals

[0567] The server searches for and suggests low-calorie, nutritionally balanced menus according to the user's diet goal (e.g., "lose weight").

[0568] The server sends the suggestions to the terminal and displays them to the user in the form of, for example, "This salad is low in calories and suitable for your goals."

[0569] Specific examples

[0570] If the user likes spicy food and has a nut allergy:

[0571] 1. When you start the app, enter your preferences, allergy information, and diet goals.

[0572] 2. The device sends this information to the server.

[0573] 3. The server analyzes your preferences and recommends "spicy dishes."

[0574] 4. Arrive at the restaurant and scan the menu.

[0575] 5. The server analyzes the menu and suggests suitable dishes in real time.

[0576] 6. Recommends wines that users like based on their past wine history.

[0577] 7. We suggest low-calorie menus that fit your diet goals.

[0578] In this way, the system of the present invention can suggest restaurants and menus that meet the diverse needs of users, thereby increasing user satisfaction.

[0579] The processing flow will be explained below.

[0580] Step 1:

[0581] User: Launches the app and enters preferences, allergy information, and diet goals.

[0582] Terminal: Displays an input form and accepts input from the user.

[0583] Terminal: Sends received input data to the server.

[0584] Step 2:

[0585] Server: Receives input data and stores it in a database.

[0586] Server: Query and retrieve the user's past meal data.

[0587] Server: Runs the preference analysis algorithm to analyze the user's preferences, allergies, and diet goals.

[0588] Step 3:

[0589] Server: Based on the analysis results, the server launches a generation engine that recommends restaurants and menus.

[0590] Server: Searches for nearby restaurants and menus and ranks them using a scoring algorithm.

[0591] Server: Sends the generated recommendation list to the terminal.

[0592] Device: Displays the recommendation results so that the user can check them.

[0593] Step 4:

[0594] User: Scans a menu at a restaurant.

[0595] Device: Activate the camera function and capture a menu image.

[0596] Terminal: Sends the acquired menu image to the server.

[0597] Step 5:

[0598] Server: Receives the menu image and extracts the text information using optical character recognition (OCR).

[0599] Server: Parses the extracted text information into ingredient and calorie information.

[0600] Step 6:

[0601] Server: Based on the analysis results, select a menu that suits the user's preferences and health goals.

[0602] Server: Sends the proposal results to the device in real time.

[0603] On the device: Display the suggestion so that the user can confirm it. For example, display a comment such as "This tom yum goong will suit your taste."

[0604] Step 7:

[0605] Server: Query and retrieve the user's past wine consumption history.

[0606] Server: Runs the wine recommendation algorithm to identify wines that the user is likely to like.

[0607] Server: Sends wine recommendation results to the terminal.

[0608] Terminal: Display suggested wines so the user can review them.

[0609] Step 8:

[0610] Server: Searches for and ranks appropriate menus based on the user's diet goals.

[0611] Server: Sends the goal-adaptive recommendation results to the terminal.

[0612] On the device: Display the suggestion so the user can review it. For example, display a comment like "This salad is low in calories and fits your goals."

[0613] Example 1

[0614] 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."

[0615] While conventional systems can manage a user's preferences, allergy information, and diet goals individually, it is difficult to comprehensively analyze these information and suggest appropriate restaurants and meal menus. Furthermore, real-time menu analysis and suggestions are not performed smoothly after the user arrives at the restaurant, which prevents sufficient user satisfaction. Furthermore, there is a lack of means to provide beverage options tailored to the user's preferences, such as wine suggestions. A system that can solve these issues and suggest restaurants and menus that meet the diverse needs of users is needed.

[0616] 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.

[0617] In this invention, the server includes input means for inputting a user's preferences, allergy information, and diet goals, analysis means for analyzing the user's preferences based on the information input via the input means and past meal data, generation means for recommending appropriate restaurants and meal menus based on the analysis means, transmission means for transmitting the recommendations obtained by the generation means to a user terminal, optical character recognition means for scanning restaurant menu images input from the terminal and extracting text information, analysis means for analyzing ingredient and calorie information based on the text information, and recommendation means for suggesting menus suitable for the user in real time based on the analysis results of the analysis means. This makes it possible to suggest restaurants and menus based on the user's input information and past data, and further enables menu analysis and suggestions in real time, thereby providing highly accurate services that meet the diverse needs of users.

[0618] The "input means" is a function that provides an interface for inputting the user's preferences, allergy information, and diet goals into the terminal.

[0619] The "analysis means" is a function for analyzing the user's preferences based on information input via the input means and past meal data.

[0620] The "generation means" is a function for recommending appropriate restaurants and meal menus based on the analysis means.

[0621] The "transmission means" is a function for transmitting the recommendations obtained by the generation means to the user terminal.

[0622] The "optical character recognition means" is a function for scanning restaurant menu images input from the terminal and extracting text information.

[0623] The "analysis means" (based on optical character recognition) is a function for analyzing ingredient and calorie information based on text information extracted by the optical character recognition means.

[0624] The "recommendation means" is a function for proposing a menu suitable for the user in real time based on the analysis results of the analysis means.

[0625] A "user terminal" is a device that allows a user to input various information, has a camera function, and is equipped with a function for communicating with a server.

[0626] The system of the present invention includes an input means for inputting a user's preferences, allergy information, and diet goals, an analysis means for analyzing the input information and past meal data, a generation means for recommending appropriate restaurants and meal menus, and a transmission means for transmitting the generated recommendations to a user terminal. It also includes an optical character recognition means for scanning an image of a restaurant menu input from the terminal and extracting text information, an analysis means for analyzing ingredient and calorie information based on the extracted text information, and a recommendation means for proposing menus suitable for the user in real time.

[0627] The system mainly consists of two hardware components: a server and a user terminal, which enable a wide range of data processing and calculations. The server is equipped with a high-performance database management system and runs analysis software using Python and R. The database uses a general-purpose database system such as MySQL. The optical character recognition (OCR) process uses Tesseract, an open-source OCR software.

[0628] When a user launches the application, a form appears on the device for entering preferences, allergy information, and diet goals. For example, the user might enter information such as "I like spicy food," "I have a nut allergy," or "I want to lose weight." The device then sends this input information to the server, which stores it in a database. The server's analysis means then analyzes the user's preferences and needs based on this data and past dietary data, and generates recommendations for appropriate restaurants and menus. The generated recommendations are sent to the device via the transmission means and displayed to the user.

[0629] When a user arrives at a restaurant, they scan the menu using their device's camera. The scanned image is sent to a server, which uses optical character recognition to extract the menu's text information. This text information is then analyzed for ingredients and calorie information. Based on the analysis results, menus that match the user's preferences and health goals are suggested in real time.

[0630] As a specific example, if a user "likes spicy food and has a nut allergy," the following steps may be taken:

[0631] 1. The user launches the app and enters their preferences, allergy information, and diet goals.

[0632] 2. The device sends this information to the server, which analyzes the preferences and recommends "spicy dishes."

[0633] 3. The user arrives at the restaurant and scans the menu.

[0634] 4. The server analyzes the menu and suggests suitable dishes in real time.

[0635] 5. Based on past wine history, wines that the user may like are also recommended.

[0636] 6. Low-calorie menus that fit your diet goals will be suggested.

[0637] Examples of prompts to input to a generative AI model include:

[0638] "How can we create a system that provides an interface for users to input their preferences, allergy information, and dietary goals?"

[0639] "Guide the algorithm to generate restaurant and meal menus by analyzing user preferences and past dining data."

[0640] "How can we design a system that scans restaurant menus and makes real-time suggestions tailored to the user's preferences?"

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

[0642] Step 1:

[0643] The user launches the app and enters their preferences, allergy information, and diet goals.

[0644] Input: User preferences, allergy information, diet goals

[0645] Output: The device saves the input information and prepares the data to be sent to the server.

[0646] Specific operation: The user enters information into an input form displayed on the device, such as "I like spicy food," "I have a nut allergy," and "I want to lose weight."

[0647] Step 2:

[0648] The terminal sends the input information to the server.

[0649] Input: User information entered in step 1

[0650] Output: User information stored on the server, ready for analysis

[0651] How it works: The device sends data to the server over Wi-Fi or mobile data, and the server receives it and stores it in a database.

[0652] Step 3:

[0653] The server analyzes the received data to determine the user's preferences.

[0654] Input: User information and past meal data

[0655] Output: Data on user preferences as a result of the analysis

[0656] Specific operation: The server runs an analysis program using R or Python. It compares past eating history with newly entered preference information to derive preferences such as "I like spicy food."

[0657] Step 4:

[0658] The server generates appropriate restaurants and menus based on the analysis results.

[0659] Input: Analysis results, nearby restaurant data

[0660] Output: Recommendation list

[0661] Specific operation: The server obtains nearby restaurant information from external services (e.g., Google Maps API or Yelp API) via a RESTful API and ranks them based on the generated preference data. As a result, recommendations such as "We recommend a nearby Thai restaurant" are generated.

[0662] Step 5:

[0663] The server sends the recommendation list to the terminal and displays it to the user.

[0664] Input: Recommendation list

[0665] Output: Recommendation information displayed on the device

[0666] Specific operation: The server sends the generated recommendation list to the device, and the device application displays it to the user. For example, it displays information such as "Recommended Thai restaurants nearby."

[0667] Step 6:

[0668] The user arrives at the restaurant and scans the menu using the device's camera function.

[0669] Input: Restaurant menu image

[0670] Output: Scanned image data

[0671] Specific behavior: The user launches the device's camera app and scans a restaurant menu. An image of the captured menu is generated.

[0672] Step 7:

[0673] The device sends the scanned image to the server.

[0674] Input: Scanned image

[0675] Output: Image data sent to the server

[0676] What it does: Your device sends scanned images to the server using Wi-Fi or mobile data.

[0677] Step 8:

[0678] The server extracts the menu text information using optical character recognition (OCR) technology.

[0679] Input: Scanned image

[0680] Output: Extracted text information

[0681] How it works: OCR software such as Tesseract runs on the server and extracts text information from scanned images.

[0682] Step 9:

[0683] The server analyzes ingredients and calorie information based on the extracted text information.

[0684] Input: Extracted text information

[0685] Output: Ingredients and calorie information

[0686] Specific operation: The server uses a Python analysis program to analyze the ingredients and calorie information from the text information and determines that "Tom Yum Kung is spicy and has 350 kcal."

[0687] Step 10:

[0688] Based on the analysis results, the server suggests a menu suitable for the user in real time.

[0689] Input: Analysis results (ingredients, calorie information), user preference data

[0690] Output: Real-time menu recommendations

[0691] Specific operation: Based on the analysis results and the user's preference information, the server selects an appropriate menu item and sends it to the device in real time. The message "This tom yum goong suits your taste" is displayed.

[0692] Step 11:

[0693] The server will suggest wines that suit the user's tastes.

[0694] Input: Past wine consumption history

[0695] Output: Wine suggestions

[0696] How it works: The server selects similar wines based on your past wine consumption history and suggests "wine similar to a Cabernet Sauvignon you liked in the past."

[0697] Step 12:

[0698] The server suggests foods that fit the user's diet goals.

[0699] Input: diet goal, food data

[0700] Output: Food suggestions that fit your diet goals

[0701] How it works: The server uses OpenAI's generative AI model to select foods that fit the user's diet goals. It displays the message, "This salad is low in calories and fits your goals."

[0702] (Application example 1)

[0703] 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."

[0704] Conventional food delivery systems have been unable to adequately meet the needs of individual users, as they have been unable to recommend meal menus that are tailored to the user's preferences, allergy information, and diet goals. Furthermore, users have limited means to check menu details before ordering, making it difficult to receive appropriate suggestions tailored to their health and diet goals. There is a need for a system that can solve these problems and improve user satisfaction.

[0705] 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.

[0706] In this invention, the server includes an input means for inputting a user's preferences, allergy information, and diet goals, an analysis means for analyzing the user's preferences based on the information input via the input means and past meal data, a generation means for recommending appropriate meal-providing facilities and meal menus based on the analysis means, an information acquisition means for scanning menus and checking ingredient and calorie information before ordering, and a recommendation means for making suggestions that match the user's past meal history and health goals. This makes it possible to suggest meal menus and drinks that match the user's individual health goals and preferences.

[0707] The "input means" refers to a device or interface for inputting information such as the user's preferences, allergy information, and diet goals.

[0708] The "analysis means" refers to a device or algorithm for analyzing the user's preferences and health goals based on the information input via the input means and past dietary data.

[0709] The "generation means" refers to a device or algorithm for recommending appropriate dining establishments and meal menus based on the analysis means.

[0710] "Information acquisition means" refers to a device or software that scans a menu and checks ingredients and calorie information before ordering.

[0711] A "recommendation tool" is a device or algorithm that makes suggestions that match past dietary history and health goals.

[0712] An "imaging means" is a camera or other imaging device for scanning restaurant menus.

[0713] "Optical character recognition" refers to techniques and devices used to extract text information from scanned images of menus.

[0714] "Communication means" refers to a communication device or interface for transmitting scanned image information to a server and obtaining analysis results.

[0715] The "suggestion means" is a device or algorithm that identifies and suggests beverages that a user is likely to like based on past consumption information.

[0716] The system for realizing this invention includes an input means for inputting a user's preferences, allergy information, and diet goals, an analysis means for analyzing the user's preferences based on the information input via the input means and past meal data, a generation means for recommending appropriate meal facilities and meal menus based on the analysis means, an information acquisition means for scanning the menu before ordering and checking ingredient and calorie information, and a recommendation means for making suggestions that match the user's past meal history and health goals.

[0717] Specifically, the following hardware and software are used.

[0718] Hardware

[0719] Terminal (smartphone): A device that allows users to input preferences, allergy information, diet goals, etc. and scan the menu.

[0720] Server: A backend system for performing data analysis and generating recommendations.

[0721] software

[0722] Flask (server-side web framework): Receives user input, analyzes it, and makes recommendations.

[0723] OCR module (e.g. Tesseract): Extracts text information from scanned images of menus.

[0724] Database (e.g., SQLite): Stores user information and meal data.

[0725] Recommendation engine: A customized algorithm that suggests the best menu based on user preferences and past data.

[0726] Processing flow

[0727] 1. Input Method

[0728] The user launches the smartphone application and inputs their preferences, allergy information, and diet goals, which are then sent from the smartphone to the server.

[0729] 2. Analysis method

[0730] The server analyzes the information it receives to identify the user's preferences and health goals, taking into account past dietary data.

[0731] 3. Generation means

[0732] Based on the analysis results, the server selects dining facilities and menus suitable for the user and generates a recommendation list, which is then sent back to the user's smartphone and displayed to them.

[0733] 4. Information acquisition means

[0734] When a user arrives at a restaurant, they scan the menu using their smartphone's camera, which converts the scanned image into text information using an OCR module and sends it to the server.

[0735] 5. Recommendation methods

[0736] The server analyzes the ingredients and calorie information from the extracted text information and suggests menus in real time that suit the user's preferences and health goals.

[0737] Specific examples

[0738] For example, if a user inputs "I like spicy food," "I have a nut allergy," or "I want to lose weight," the server will make recommendations based on this. If a user scans a menu for tom yum goong at a restaurant, the server will analyze the ingredients and calorie information and suggest "spicy tom yum goong with 350 calories."

[0739] Prompt Sentence Examples

[0740] "If the user likes spicy food, has a nut allergy, and wants to lose weight."

[0741] The system allows users to easily choose the meal plan that best suits their health goals and preferences.

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

[0743] Step 1:

[0744] The user starts the smartphone application and uses the input means to input their preferences, allergy information, and diet goals.

[0745] Input: User preferences, allergy information, and diet goals

[0746] Output: Input information is obtained

[0747] Specific actions: The user fills out a form in the app, saying, "I like spicy food," "I have a nut allergy," and "I want to lose weight."

[0748] Step 2:

[0749] The terminal transmits this input information to the server.

[0750] Input: Input information

[0751] Output: The input information is sent to the server

[0752] Specific operation: The terminal transmits input information to the server as a data packet.

[0753] Step 3:

[0754] The server stores the received information in a database and uses analytical means to analyze the user's preferences and health goals.

[0755] Input: Submitted input information

[0756] Output: Analysis results of preferences and health goals

[0757] Specific operation: Past meal data is combined with newly entered information in the database and an analysis algorithm is executed.

[0758] Step 4:

[0759] The server uses a generating means to generate a recommendation list of appropriate dining establishments and menus based on the analysis results.

[0760] Input: Analysis results

[0761] Output: Recommendation list

[0762] How it works: The recommendation engine uses a scoring algorithm to rank and generate a list.

[0763] Step 5:

[0764] The server transmits the generated recommendation list to the terminal.

[0765] Input: Recommendation list

[0766] Output: The recommendation list is displayed on the terminal.

[0767] Specific operation: The recommendation list is converted into a data format and sent to the terminal.

[0768] Step 6:

[0769] The terminal displays the recommendation list to the user.

[0770] Input: Received recommendation list

[0771] Output: Displayed recommendation list

[0772] Specific behavior: The recommendation list is displayed in the application UI so that the user can review it.

[0773] Step 7:

[0774] A user arrives at a restaurant and uses the device's camera function to scan the menu before ordering.

[0775] Input: Menu Image

[0776] Output: Scanned menu images

[0777] Specific action: The user takes a photo of the menu with the smartphone camera.

[0778] Step 8:

[0779] The terminal converts the scanned menu image into text information using an OCR module and sends it to the server.

[0780] Input: Scanned menu image

[0781] Output: Extracted text information

[0782] Specific operation: The OCR module processes the image, converts it into text information, and sends it to the server.

[0783] Step 9:

[0784] The server analyzes the text information and obtains information on ingredients and calories.

[0785] Input: Text information

[0786] Output: Ingredients and calorie information

[0787] How it works: The parsing algorithm extracts ingredient and calorie information from the text information.

[0788] Step 10:

[0789] The server uses recommendation tools to suggest appropriate menus in real time based on the user's preferences and health goals.

[0790] Input: Ingredient and calorie information, user preferences and health goals

[0791] Output: Suggested menu information

[0792] Specific operation: The proposed algorithm calculates the score for each menu, selects the optimal menu, and sends it to the terminal.

[0793] Step 11:

[0794] The terminal displays the suggested menu information to the user.

[0795] Input: Suggested menu information

[0796] Output: Menu suggestions displayed

[0797] Specific behavior: The proposed menu information is displayed in the application UI so that the user can confirm it.

[0798] 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.

[0799] The system of the present invention includes a terminal that provides an interface for inputting the user's preferences, allergy information, diet goals, etc., and a server that analyzes the user's preferences based on this input information and past meal data and generates restaurant and meal menus. Furthermore, by combining it with an emotion engine that recognizes the user's emotions, the accuracy of suggestions and user satisfaction can be further improved.

[0800] A specific example will be given below based on the overall flow of the system.

[0801] Collection of User Information

[0802] 1. Data entry via terminal

[0803] When a user launches the app, a form appears on the device for entering preferences, allergy information, diet goals, and emotional state.

[0804] The user inputs information such as, "I like spicy food," "I have a nut allergy," "I want to lose weight," and "I'm currently feeling stressed."

[0805] 2. Sending data from the device to the server

[0806] The entered data is sent to the server via the terminal.

[0807] The server stores this data in a database and uses analytical means to analyze the user's preferences and needs.

[0808] Preference analysis and recommendation generation

[0809] 3. Preference analysis by the server

[0810] The server analyzes the user's preferences and emotional state based on past meal data and newly entered information.

[0811] For example, if the user has a history of frequently choosing "spicy food" in the past, it is determined that the user has a "preference for spicy food." Also, if the user inputs "I'm currently feeling stressed," this information is taken into consideration.

[0812] 4. Recommendation Generation

[0813] The server searches for nearby restaurants and their corresponding menus and ranks them based on a scoring algorithm.

[0814] The emotional state recognized by the emotion engine is also incorporated into the analysis results, and adjustments are made to prioritize ingredients and menus that, for example, relieve stress.

[0815] The selected recommendation list is sent to the device and displayed to the user. For example, information such as "We recommend a nearby Thai restaurant, which serves dishes that have a particularly relaxing effect" is displayed.

[0816] Menu breakdown scanning and real-time suggestions

[0817] 5. Scan the menu with your device

[0818] When a user arrives at a restaurant, they scan the menu using the device's camera function.

[0819] The terminal sends the scanned image to the server, which uses optical character recognition to extract the menu text information.

[0820] 6. Menu analysis and suggestions by the server

[0821] The server analyzes the ingredients and calorie information for each menu item from the extracted text information.

[0822] For example, it analyzes a menu item for tom yum goong and determines that it is "slightly spicy and has 350 calories."

[0823] The server selects an appropriate menu based on the user's preferences, health goals, and emotional state, and displays it in real time on the device, displaying information such as, "This tom yum goong will suit your tastes and have a relaxing effect."

[0824] Wine suggestions and goal-adaptive recommendations

[0825] 7. Wine suggestions by servers

[0826] Based on past wine consumption history, the server identifies and suggests wines that the user is likely to like, for example, suggesting wines similar to Cabernet Sauvignon that the user liked in the past.

[0827] If the emotion engine knows that the user is not feeling calm, it will also suggest wines that have a relaxing effect.

[0828] 8. Proposals tailored to your goals

[0829] The server searches for and suggests low-calorie, nutritionally balanced menus according to the user's diet goal (e.g., "lose weight").

[0830] The server sends the suggestions to the terminal and displays them to the user in the form of, "This salad is low in calories and has a relaxing effect. It's suitable for your goals."

[0831] Specific examples

[0832] If a user likes spicy food, has a nut allergy, and is currently stressed:

[0833] 1. When you start the app, enter your preferences, allergy information, diet goals, and emotional state.

[0834] 2. The device sends this information to the server.

[0835] 3. The server analyzes the customer's preferences and emotional state and recommends "spicy dishes." Menu items containing ingredients that reduce stress are prioritized.

[0836] 4. Arrive at the restaurant and scan the menu.

[0837] 5. The server analyzes the menu and suggests suitable dishes in real time. For example, it might say, "This tom yum goong is likely to have a relaxing effect."

[0838] 6. We also recommend wines that have a relaxing effect based on your past wine history.

[0839] 7. We offer low-calorie menus that suit your diet goals and also take into consideration the relaxing effects.

[0840] In this way, by combining the emotion engine, the system of the present invention can suggest restaurants and menus that meet the user's diverse needs and emotional state, further increasing user satisfaction.

[0841] The processing flow will be explained below.

[0842] Step 1:

[0843] User: Launches the app and enters preferences, allergy information, diet goals, and emotional state.

[0844] Terminal: Displays an input form and accepts input from the user.

[0845] Terminal: Sends received input data to the server.

[0846] Step 2:

[0847] Server: Receives input data and stores it in a database.

[0848] Server: Query and retrieve the user's past meal data.

[0849] Server: Runs the preference analysis algorithm and analyzes the user's preferences, allergy information, diet goals, and emotional state.

[0850] Step 3:

[0851] Server: Launches a generation engine that recommends restaurants and menus based on the analysis results.

[0852] Server: Searches for nearby restaurants and menus and ranks them using a scoring algorithm.

[0853] Server: Based on the emotion engine, the menu selection is adjusted taking into account the user's emotional state. For example, if a user is stressed, a menu with a relaxing effect will be prioritized.

[0854] Server: Sends the generated recommendation list to the terminal.

[0855] Device: Displays the recommendation results so that the user can check them.

[0856] Step 4:

[0857] User: Scans a menu at a restaurant.

[0858] Device: Activate the camera function and capture a menu image.

[0859] Terminal: Sends the acquired menu image to the server.

[0860] Step 5:

[0861] Server: Receives the menu image and extracts the text information using optical character recognition (OCR).

[0862] Server: Parses the extracted text information into ingredient and calorie information.

[0863] Step 6:

[0864] Server: Based on the analysis results, selects a menu that suits the user's preferences, health goals, and emotional state.

[0865] Server: Sends the proposal results to the device in real time.

[0866] On the device: The suggestion is displayed so that the user can confirm it. For example, a comment such as "This tom yum goong will suit your taste and have a relaxing effect" is displayed.

[0867] Step 7:

[0868] Server: Query and retrieve the user's past wine consumption history.

[0869] Server: Runs the wine recommendation algorithm to identify wines that the user is likely to like.

[0870] Server: The emotion engine takes into account the user's emotional state and also suggests wines that have a relaxing effect.

[0871] Server: Sends wine recommendation results to the terminal.

[0872] Terminal: Display suggested wines so the user can review them.

[0873] Step 8:

[0874] Server: Searches for and ranks appropriate menus based on the user's diet goals.

[0875] Server: Performs goal-adaptive recommendations that also take emotional states into account.

[0876] Server: Sends the goal-adaptive recommendation results to the terminal.

[0877] On the device: Display the suggestion so the user can review it. For example, display a comment like, "This salad is low in calories and may help you relax. It's a good fit for your goals."

[0878] Example 2

[0879] 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."

[0880] It is difficult for users to find the right meal or restaurant based on their preferences, allergies, diet goals, and even their emotional state. Existing recommendation systems cannot take the user's emotional state into account, and therefore cannot fully increase user satisfaction. Furthermore, selecting the right meal while browsing a restaurant menu is time-consuming. Therefore, a system that allows users to receive optimal meal suggestions in real time based on their input information and emotions is needed.

[0881] 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.

[0882] In this invention, the server includes an input means for inputting a user's preferences, allergy information, and diet goals, an analysis means for analyzing the user's preferences based on the information input via the input means and past meal data, a generation means for generating a list of appropriate restaurant and meal suggestions based on the analysis means, an emotion recognition means for recognizing the user's emotional state, and an adjustment means for adjusting recommendations in consideration of the emotion information obtained from the emotion recognition means. This allows users to easily find the best meals and restaurants that suit their preferences and emotional state, thereby improving their satisfaction.

[0883] "User" refers to an individual who utilizes the system to input preferences, allergy information, diet goals, and emotional state and receives meal suggestions based on the results.

[0884] "Preferences" refers to information about the types of ingredients and dishes that a user likes.

[0885] "Allergy information" refers to information about ingredients or substances that a user cannot consume.

[0886] "Diet goal" refers to the weight loss or nutritional balance goal that a user wants to achieve.

[0887] "Input means" refers to an interface that allows a user to input preferences, allergy information, diet goals, and emotional state into the system.

[0888] "Analysis means" refers to means for analyzing a user's preferences and needs based on information entered by the user and past meal data.

[0889] The "generation means" refers to a means for generating a list of suitable restaurant and meal suggestions based on the information obtained by the analysis means.

[0890] "Emotion recognition means" refers to technology for recognizing the emotional state of a user from input information.

[0891] The "adjustment means" refers to a means for optimizing recommendations and providing them to users in consideration of the emotion information obtained from the emotion recognition means.

[0892] "Terminal" refers to a device on which a user launches an application and inputs data.

[0893] "Optical character recognition" refers to technology for extracting character information from image data.

[0894] "Recommendation means" refers to a means for generating and providing optimal meal suggestions to users in real time based on analyzed information.

[0895] "Dining hall" refers to a dining facility available to users.

[0896] The present invention is a system that proposes optimal meals by taking into account the user's preferences, allergy information, diet goals, and emotional state. The system consists of a terminal that provides a user interface and a server that analyzes data and generates proposals.

[0897] Hardware and Software Configuration

[0898] Device: A mobile device, such as a smartphone or tablet, used by a user on which the application is installed.

[0899] Server: A computer server with a high-performance database and analytical engine that stores data, analyzes it, and generates recommendations.

[0900] Emotion recognition engine: A software module that analyzes the user's emotional state from information entered by the user.

[0901] Optical Character Recognition (OCR): A software technique for extracting textual information from menu images.

[0902] Data entry and saving

[0903] Entering user information: The user launches the app on their device and enters their preferences, allergy information, diet goals, and emotional state. For example, they enter information such as "I like spicy food," "I have a nut allergy," "I want to lose weight," and "I'm currently feeling stressed."

[0904] Data transmission and storage: The device sends the entered information to the server, which stores it in a database. The data is encrypted before transmission and stored securely.

[0905] Data analysis and proposal generation

[0906] Preference analysis: The server analyzes the user's preferences and emotional state based on the stored data. For example, if the user has frequently selected "spicy food" in the past, it will detect a "preference for spicy food." The emotion recognition engine will also analyze information such as "current mood: stressed."

[0907] Recommendation generation: Based on the analysis results, the server generates a list of nearby restaurants and corresponding meal suggestions, taking into account the user's emotional state and prioritizing ingredients and menus that reduce stress.

[0908] Recommendation display and real-time suggestions

[0909] Sending and displaying the recommendation list: The server sends the generated recommendation list to the device, which then displays it to the user. For example, a specific message such as "I recommend a nearby Thai restaurant. They serve dishes that have a particularly relaxing effect" may be displayed.

[0910] Menu scanning and analysis: When a user arrives at a restaurant, they scan the menu using their device's camera. The device then sends the scanned image to the server, which then uses OCR technology to extract the text information from the menu. Based on the extracted information, the ingredients and calorie information for each menu item are analyzed. For example, the Tom Yum Kung menu item is analyzed and determined to be spicy and have 350 kcal.

[0911] Real-time suggestions: Based on the analysis results, the server selects the optimal menu based on the user's preferences, health goals, and emotional state, and sends the suggestions to the device in real time. Specific messages such as "This tom yum goong suits your tastes and is expected to have a relaxing effect" are displayed.

[0912] Example: Prompt sentence

[0913] "I like spicy food and I have a nut allergy. I'm feeling stressed right now. Can you recommend any restaurants or menus?"

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

[0915] Step 1:

[0916] A user taps the app icon on their device to launch the app. They then input their preferences (e.g., "I like spicy food"), allergy information (e.g., "I'm allergic to nuts"), diet goals (e.g., "I want to lose weight"), and emotional state (e.g., "I'm currently feeling stressed") via an input device. The input data here is basic information about the user's needs.

[0917] Step 2:

[0918] The device sends the input data (preferences, allergy information, diet goals, emotional state) to the server. The data is encrypted and securely protected. The server receives this data and stores it in a database. The input data becomes the raw data for analysis.

[0919] Step 3:

[0920] The server analyzes preferences and emotional state based on past meal data stored in a database and newly entered user data. The analysis means references past data to identify the user's cluster and predict preferences (e.g., detects a preference for spicy food). The emotion recognition engine analyzes the emotional state based on information such as "currently feeling stressed."

[0921] Step 4:

[0922] The server generates a list of nearby restaurants and corresponding meal suggestions based on the analysis results. The generator uses a scoring algorithm to rank suitable restaurants and menus. The output is a list of suggested restaurants and menus.

[0923] Step 5:

[0924] The server generates a recommendation list and sends it to the device. The device receives the recommendation list and displays it to the user. Specific messages displayed include, "We recommend a nearby Thai restaurant. They serve dishes that have a particularly relaxing effect." The input is the recommendation list from the server, and the output is a visual list displayed on the device.

[0925] Step 6:

[0926] A user arrives at a restaurant and scans the menu using the device's camera function. The input is the menu image taken by the user.

[0927] Step 7:

[0928] The device sends a menu image to the server. The server uses OCR technology to extract text information from the menu image. The extracted text data becomes the input, and the ingredients and calorie information is analyzed based on it. For example, "Tom Yum Kung" is analyzed and determined to be "spicy with 350 kcal." The output is the analyzed ingredients and calorie information.

[0929] Step 8:

[0930] Based on the analysis results, the server selects the optimal menu based on the user's preferences, health goals, and emotional state, and generates suggestions in real time. The device receives this and displays it to the user. A specific message such as "This tom yum goong suits your tastes and is expected to have a relaxing effect" is displayed. The input is the suggestion data from the server, and the output is the suggestion message on the device.

[0931] Step 9:

[0932] The server identifies and suggests wines that the user is likely to like based on their past wine consumption history. It also uses data from an emotion recognition engine to prioritize wines that have a relaxing effect. The input is past wine consumption data, and the output is a suggested wine list.

[0933] Step 10:

[0934] The server searches for low-calorie, nutritionally balanced menus based on the user's diet goals and generates suggestions. The device receives these and presents them to the user in the form of, "This salad is low in calories and has a relaxing effect. It's suitable for your goals." The input is a dataset related to the diet goals, and the output is a specific menu suggestion.

[0935] (Application example 2)

[0936] 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."

[0937] Existing food delivery systems do not provide optimal recommendations based on a user's preferences, allergy information, diet goals, or even emotional state, making it difficult to provide a satisfying service tailored to each individual user. Furthermore, they lack a mechanism for automatically analyzing restaurant menu information and placing appropriate orders in real time. This makes it difficult for users to select the meal that best suits them, resulting in a decrease in satisfaction after ordering.

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

[0939] In this invention, the server includes input means for inputting a user's preferences, allergy information, and diet goals, analysis means for analyzing the user's preferences based on the information input via the input means and past meal data, generation means for recommending appropriate restaurants and meal menus based on the analysis means, an emotion engine for recognizing the user's emotional state, and display means for displaying the generated recommendation list to the user. This makes it possible to suggest optimal restaurants and menus that meet the user's diverse needs and emotional state, further increasing user satisfaction.

[0940] "User preferences" refers to the preferences that a user has for food, and means a favorable preference for specific flavors and characteristics of individual ingredients or dishes.

[0941] "Allergy information" refers to information about ingredients or substances that a user cannot consume or that may cause an allergic reaction if consumed.

[0942] "Diet goal" refers to a health or physical objective that a user wishes to achieve, such as losing weight or body fat, or gaining muscle.

[0943] "Input means" refers to a device or interface for a user to input information, including a keyboard, touch screen, voice input, etc.

[0944] "Analysis means" refers to software or algorithms that use input data to analyze user preferences and attributes and derive appropriate results.

[0945] "Generation means" refers to a function for generating optimal menu and restaurant recommendations for a user based on the analyzed data.

[0946] An "emotion engine" refers to technology that analyzes a user's current emotional state and provides information and services that correspond to that emotion.

[0947] "Display means" refers to a display or screen for visually presenting the generated recommendation list and information to the user.

[0948] "Camera function" refers to the ability to take pictures and videos using a digital camera, and is often found on smartphones and tablets.

[0949] "Optical character recognition" is a technology that extracts text information from scanned images, and is an abbreviation for OCR (Optical Character Recognition).

[0950] "Ordering means" refers to a system or function for confirming and processing an order for the menu item selected by the user.

[0951] "Recommendation means" refers to functions and mechanisms for recommending optimal options to users based on analysis results.

[0952] The system embodying this invention takes into account a user's preferences, allergy information, diet goals, and emotional state when ordering a meal, and recommends appropriate restaurants and menus. This system uses the following hardware and software:

[0953] Hardware and software used

[0954] Smartphone: A device where users input information and receive recommendations.

[0955] Cloud server: Analyzes the input information and generates optimal recommendations. This uses Node.js and Express.

[0956] Database: Stores user preferences and past meal data. MongoDB is used.

[0957] Emotion analysis engine: Software for analyzing the user's emotional state, powered by IBM Watson.

[0958] Optical Character Recognition (OCR): A technology used to extract text information from scanned images of menus, powered by Google Cloud Vision.

[0959] System Operation Overview

[0960] 1. Data Entry

[0961] The user launches the smartphone app and inputs their preferences, allergy information, diet goals, and emotional state, which is then sent to the server and stored in a database.

[0962] 2. Data Analysis

[0963] The server analyzes the user's preferences and emotional state based on the input information and past meal data, and uses an emotion analysis engine (IBM Watson) to identify the user's current emotional state.

[0964] 3. Recommendation Generation

[0965] The server generates appropriate restaurant and menu options based on the analysis results, taking into account the user's current emotional state and may prioritize ingredients and menu items that have a relaxing effect.

[0966] 4. Recommendation display

[0967] The generated recommendation list is displayed on the smartphone, and the user can review the list and select restaurants and menus that suit their preferences.

[0968] 5. Scan the menu

[0969] When a user arrives at a restaurant, they scan the menu using their smartphone's camera, which sends the scanned image to a server where optical character recognition (OCR) technology extracts the text information.

[0970] 6. Real-time suggestions

[0971] The server analyzes the extracted text information to obtain information on ingredients and calories, and then suggests optimal menu items to the user in real time.

[0972] 7. Order Processing

[0973] After scanning, the user selects the most suitable item from the recommended menu and confirms the order. The order information is sent to the server for appropriate processing.

[0974] Specific examples

[0975] User A likes spicy food, has a nut allergy, and wants to lose weight. He also inputs that he is currently feeling stressed. The app sends this information to the server and begins analysis. Based on the user's preferences and emotional state, the server recommends "spicy Thai curry with chicken breast" from a nearby restaurant, accompanied by a relaxing herbal tea. User A selects this and completes the order, allowing him to enjoy a meal that meets his diet goal while reducing stress.

[0976] Prompt Sentence Examples

[0977] User information: spicy food, nut allergy, want to lose weight, stressed

[0978] Recommendations: Based on the algorithm's analysis, suggest meals that best fit the user's preferences and health goals. For example, "Spicy Thai Curry with Chicken Breast" with a relaxing herbal tea. Include calorie information and the relaxing effect of the menu.

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

[0980] Step 1:

[0981] The user launches the smartphone app and inputs their preferences, allergy information, diet goals, and emotional state.

[0982] Input: Preferences, allergy information, diet goals, and emotional state data

[0983] Output: The input data is sent to the server in the form of a request.

[0984] What happens: The user enters the required information using the text boxes and drop-down menus and presses the submit button.

[0985] Step 2:

[0986] The server stores the entered information in a database.

[0987] Input: Submitted preferences, allergy information, diet goals, and emotional state data

[0988] Output: User information stored in the database

[0989] What it does: The server parses the data it receives, converts it into the appropriate format, and inserts it into a database such as MongoDB.

[0990] Step 3:

[0991] The server analyzes the user's preferences and emotional state based on past meal data and newly entered information.

[0992] Input: Past meal data stored in the database, new input data

[0993] Output: Analysis results based on user preferences and emotional state

[0994] How it works: The server uses an analytical algorithm to extract user trends from past data and uses an emotion analysis engine (IBM Watson) to identify the user's current emotional state.

[0995] Step 4:

[0996] The server generates the optimal restaurant and meal menu based on the analysis results.

[0997] Input: Analysis results (user preferences, allergy information, diet goals, emotional state)

[0998] Output: A list of restaurants and menus suitable for the user

[0999] What it does: Searches a database of restaurants and uses a scoring algorithm to generate a list of recommendations.

[1000] Step 5:

[1001] The generated recommendation list is displayed to the user.

[1002] Input: A list of restaurants and menus suitable for the user

[1003] Output: Recommendation list displayed on a smartphone screen

[1004] Specific behavior: The smartphone app receives the response from the server and displays the recommendation list on the user interface.

[1005] Step 6:

[1006] A user arrives at a restaurant and scans the menu using the camera function on their smartphone.

[1007] Input: scanned image of menu

[1008] Output: Scanned image data sent to the server

[1009] What happens: The user activates the camera scan feature within the app and takes a picture of the menu.

[1010] Step 7:

[1011] The server extracts text information from the scanned image and obtains ingredient and calorie information.

[1012] Input: Scanned image data of the menu

[1013] Output: Extracted text information, ingredients, and calorie information

[1014] Specific operation: The server uses the Google Cloud Vision API to perform OCR processing, extract text information, and analyze it.

[1015] Step 8:

[1016] The server proposes the most suitable menu to the user in real time based on the extracted text information.

[1017] Input: Extracted text information, ingredients, and calorie information

[1018] Output: A list of optimal menus to be displayed to the user

[1019] Specific operation: The server selects the most suitable menu based on the user's preferences and analyzed menu information and sends it to the smartphone.

[1020] Step 9:

[1021] The user confirms the order of the menu selected.

[1022] Input: The menu item selected by the user

[1023] Output: Confirmed order information

[1024] Specific operation: The user selects from the recommended menu and presses the order button. The server receives and processes the order information.

[1025] 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.

[1026] 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.

[1027] 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.

[1028] [Third embodiment]

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

[1030] 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.

[1031] 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).

[1032] 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.

[1033] 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.

[1034] 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).

[1035] 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.

[1036] 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.

[1037] 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.

[1038] 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.

[1039] 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.

[1040] 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."

[1041] The system of the present invention includes a terminal that provides an interface for inputting the user's preferences, allergy information, diet goals, etc., and a server that analyzes the user's preferences based on this input information and past meal data and generates restaurant and meal menus.

[1042] A specific example will be given below based on the overall flow of the system.

[1043] Collection of User Information

[1044] 1. Data entry via terminal

[1045] When a user launches the app, a form appears on the device for entering preferences, allergy information, and diet goals.

[1046] For example, users input information such as "I like spicy food," "I have a nut allergy," and "I want to lose weight."

[1047] 2. Sending data from the device to the server

[1048] The entered data is sent to the server via the terminal.

[1049] The server stores this data in a database and analyzes the user's preferences and needs using analytical means.

[1050] Preference analysis and recommendation generation

[1051] 3. Preference analysis by the server

[1052] The server analyzes the user's preferences based on past meal data and newly entered information.

[1053] For example, if the user has a history of frequently selecting "spicy food" in the past, it is determined that the user has a "preference for spicy food."

[1054] 4. Recommendation Generation

[1055] The server searches for nearby restaurants and their corresponding menus and ranks them based on a scoring algorithm.

[1056] The selected recommendation list is sent to the device and displayed to the user. For example, information such as "Recommended Thai restaurants nearby" is displayed.

[1057] Menu breakdown scanning and real-time suggestions

[1058] 5. Scan the menu with your device

[1059] When a user arrives at a restaurant, they scan the menu using the device's camera function.

[1060] The device sends the scanned image to a server, which uses optical character recognition technology to extract the menu's text information.

[1061] 6. Menu analysis and suggestions by the server

[1062] The server analyzes the ingredients and calorie information for each menu item from the extracted text information.

[1063] For example, it analyzes a menu item for tom yum goong and determines that it is "slightly spicy and has 350 calories."

[1064] The server selects appropriate menu items based on the user's preferences and health goals, and displays them on the device in real time, displaying information such as "This tom yum goong suits your tastes."

[1065] Wine suggestions and goal-adaptive recommendations

[1066] 7. Wine suggestions by servers

[1067] Based on past wine consumption history, the server identifies and suggests wines that the user is likely to like, for example, suggesting wines similar to Cabernet Sauvignon that the user liked in the past.

[1068] 8. Proposals tailored to your goals

[1069] The server searches for and suggests low-calorie, nutritionally balanced menus according to the user's diet goal (e.g., "lose weight").

[1070] The server sends the suggestions to the terminal and displays them to the user in the form of, for example, "This salad is low in calories and suitable for your goals."

[1071] Specific examples

[1072] If the user likes spicy food and has a nut allergy:

[1073] 1. When you start the app, enter your preferences, allergy information, and diet goals.

[1074] 2. The device sends this information to the server.

[1075] 3. The server analyzes your preferences and recommends "spicy dishes."

[1076] 4. Arrive at the restaurant and scan the menu.

[1077] 5. The server analyzes the menu and suggests suitable dishes in real time.

[1078] 6. Recommends wines that users like based on their past wine history.

[1079] 7. We suggest low-calorie menus that fit your diet goals.

[1080] In this way, the system of the present invention can suggest restaurants and menus that meet the diverse needs of users, thereby increasing user satisfaction.

[1081] The processing flow will be explained below.

[1082] Step 1:

[1083] User: Launches the app and enters preferences, allergy information, and diet goals.

[1084] Terminal: Displays an input form and accepts input from the user.

[1085] Terminal: Sends received input data to the server.

[1086] Step 2:

[1087] Server: Receives input data and stores it in a database.

[1088] Server: Query and retrieve the user's past meal data.

[1089] Server: Runs the preference analysis algorithm to analyze the user's preferences, allergies, and diet goals.

[1090] Step 3:

[1091] Server: Based on the analysis results, the server launches a generation engine that recommends restaurants and menus.

[1092] Server: Searches for nearby restaurants and menus and ranks them using a scoring algorithm.

[1093] Server: Sends the generated recommendation list to the terminal.

[1094] Device: Displays the recommendation results so that the user can check them.

[1095] Step 4:

[1096] User: Scans a menu at a restaurant.

[1097] Device: Activate the camera function and capture a menu image.

[1098] Terminal: Sends the acquired menu image to the server.

[1099] Step 5:

[1100] Server: Receives the menu image and extracts the text information using optical character recognition (OCR).

[1101] Server: Parses the extracted text information into ingredient and calorie information.

[1102] Step 6:

[1103] Server: Based on the analysis results, select a menu that suits the user's preferences and health goals.

[1104] Server: Sends the proposal results to the device in real time.

[1105] On the device: Display the suggestion so that the user can confirm it. For example, display a comment such as "This tom yum goong will suit your taste."

[1106] Step 7:

[1107] Server: Query and retrieve the user's past wine consumption history.

[1108] Server: Runs the wine recommendation algorithm to identify wines that the user is likely to like.

[1109] Server: Sends wine recommendation results to the terminal.

[1110] Terminal: Display suggested wines so the user can review them.

[1111] Step 8:

[1112] Server: Searches for and ranks appropriate menus based on the user's diet goals.

[1113] Server: Sends the goal-adaptive recommendation results to the terminal.

[1114] On the device: Display the suggestion so the user can review it. For example, display a comment like "This salad is low in calories and fits your goals."

[1115] Example 1

[1116] 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."

[1117] While conventional systems can manage a user's preferences, allergy information, and diet goals individually, it is difficult to comprehensively analyze these information and suggest appropriate restaurants and meal menus. Furthermore, real-time menu analysis and suggestions are not performed smoothly after the user arrives at the restaurant, which prevents sufficient user satisfaction. Furthermore, there is a lack of means to provide beverage options tailored to the user's preferences, such as wine suggestions. A system that can solve these issues and suggest restaurants and menus that meet the diverse needs of users is needed.

[1118] 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.

[1119] In this invention, the server includes input means for inputting a user's preferences, allergy information, and diet goals, analysis means for analyzing the user's preferences based on the information input via the input means and past meal data, generation means for recommending appropriate restaurants and meal menus based on the analysis means, transmission means for transmitting the recommendations obtained by the generation means to a user terminal, optical character recognition means for scanning restaurant menu images input from the terminal and extracting text information, analysis means for analyzing ingredient and calorie information based on the text information, and recommendation means for suggesting menus suitable for the user in real time based on the analysis results of the analysis means. This makes it possible to suggest restaurants and menus based on the user's input information and past data, and further enables menu analysis and suggestions in real time, thereby providing highly accurate services that meet the diverse needs of users.

[1120] The "input means" is a function that provides an interface for inputting the user's preferences, allergy information, and diet goals into the terminal.

[1121] The "analysis means" is a function for analyzing the user's preferences based on information input via the input means and past meal data.

[1122] The "generation means" is a function for recommending appropriate restaurants and meal menus based on the analysis means.

[1123] The "transmission means" is a function for transmitting the recommendations obtained by the generation means to the user terminal.

[1124] The "optical character recognition means" is a function for scanning restaurant menu images input from the terminal and extracting text information.

[1125] The "analysis means" (based on optical character recognition) is a function for analyzing ingredient and calorie information based on text information extracted by the optical character recognition means.

[1126] The "recommendation means" is a function for proposing a menu suitable for the user in real time based on the analysis results of the analysis means.

[1127] A "user terminal" is a device that allows a user to input various information, has a camera function, and is equipped with a function for communicating with a server.

[1128] The system of the present invention includes an input means for inputting a user's preferences, allergy information, and diet goals, an analysis means for analyzing the input information and past meal data, a generation means for recommending appropriate restaurants and meal menus, and a transmission means for transmitting the generated recommendations to a user terminal. It also includes an optical character recognition means for scanning an image of a restaurant menu input from the terminal and extracting text information, an analysis means for analyzing ingredient and calorie information based on the extracted text information, and a recommendation means for proposing menus suitable for the user in real time.

[1129] The system mainly consists of two hardware components: a server and a user terminal, which enable a wide range of data processing and calculations. The server is equipped with a high-performance database management system and runs analysis software using Python and R. The database uses a general-purpose database system such as MySQL. The optical character recognition (OCR) process uses Tesseract, an open-source OCR software.

[1130] When a user launches the application, a form appears on the device for entering preferences, allergy information, and diet goals. For example, the user might enter information such as "I like spicy food," "I have a nut allergy," or "I want to lose weight." The device then sends this input information to the server, which stores it in a database. The server's analysis means then analyzes the user's preferences and needs based on this data and past dietary data, and generates recommendations for appropriate restaurants and menus. The generated recommendations are sent to the device via the transmission means and displayed to the user.

[1131] When a user arrives at a restaurant, they scan the menu using their device's camera. The scanned image is sent to a server, which uses optical character recognition to extract the menu's text information. This text information is then analyzed for ingredients and calorie information. Based on the analysis results, menus that match the user's preferences and health goals are suggested in real time.

[1132] As a specific example, if a user "likes spicy food and has a nut allergy," the following steps may be taken:

[1133] 1. The user launches the app and enters their preferences, allergy information, and diet goals.

[1134] 2. The device sends this information to the server, which analyzes the preferences and recommends "spicy dishes."

[1135] 3. The user arrives at the restaurant and scans the menu.

[1136] 4. The server analyzes the menu and suggests suitable dishes in real time.

[1137] 5. Based on past wine history, wines that the user may like are also recommended.

[1138] 6. Low-calorie menus that fit your diet goals will be suggested.

[1139] Examples of prompts to input to a generative AI model include:

[1140] "How can we create a system that provides an interface for users to input their preferences, allergy information, and dietary goals?"

[1141] "Guide the algorithm to generate restaurant and meal menus by analyzing user preferences and past dining data."

[1142] "How can we design a system that scans restaurant menus and makes real-time suggestions tailored to the user's preferences?"

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

[1144] Step 1:

[1145] The user launches the app and enters their preferences, allergy information, and diet goals.

[1146] Input: User preferences, allergy information, diet goals

[1147] Output: The device saves the input information and prepares the data to be sent to the server.

[1148] Specific operation: The user enters information into an input form displayed on the device, such as "I like spicy food," "I have a nut allergy," and "I want to lose weight."

[1149] Step 2:

[1150] The terminal sends the input information to the server.

[1151] Input: User information entered in step 1

[1152] Output: User information stored on the server, ready for analysis

[1153] How it works: The device sends data to the server over Wi-Fi or mobile data, and the server receives it and stores it in a database.

[1154] Step 3:

[1155] The server analyzes the received data to determine the user's preferences.

[1156] Input: User information and past meal data

[1157] Output: Data on user preferences as a result of the analysis

[1158] Specific operation: The server runs an analysis program using R or Python. It compares past eating history with newly entered preference information to derive preferences such as "I like spicy food."

[1159] Step 4:

[1160] The server generates appropriate restaurants and menus based on the analysis results.

[1161] Input: Analysis results, nearby restaurant data

[1162] Output: Recommendation list

[1163] Specific operation: The server obtains nearby restaurant information from external services (e.g., Google Maps API or Yelp API) via a RESTful API and ranks them based on the generated preference data. As a result, recommendations such as "We recommend a nearby Thai restaurant" are generated.

[1164] Step 5:

[1165] The server sends the recommendation list to the terminal and displays it to the user.

[1166] Input: Recommendation list

[1167] Output: Recommendation information displayed on the device

[1168] Specific operation: The server sends the generated recommendation list to the device, and the device application displays it to the user. For example, it displays information such as "Recommended Thai restaurants nearby."

[1169] Step 6:

[1170] The user arrives at the restaurant and scans the menu using the device's camera function.

[1171] Input: Restaurant menu image

[1172] Output: Scanned image data

[1173] Specific behavior: The user launches the device's camera app and scans a restaurant menu. An image of the captured menu is generated.

[1174] Step 7:

[1175] The device sends the scanned image to the server.

[1176] Input: Scanned image

[1177] Output: Image data sent to the server

[1178] What it does: Your device sends scanned images to the server using Wi-Fi or mobile data.

[1179] Step 8:

[1180] The server extracts the menu text information using optical character recognition (OCR) technology.

[1181] Input: Scanned image

[1182] Output: Extracted text information

[1183] How it works: OCR software such as Tesseract runs on the server and extracts text information from scanned images.

[1184] Step 9:

[1185] The server analyzes ingredients and calorie information based on the extracted text information.

[1186] Input: Extracted text information

[1187] Output: Ingredients and calorie information

[1188] Specific operation: The server uses a Python analysis program to analyze the ingredients and calorie information from the text information and determines that "Tom Yum Kung is spicy and has 350 kcal."

[1189] Step 10:

[1190] Based on the analysis results, the server suggests a menu suitable for the user in real time.

[1191] Input: Analysis results (ingredients, calorie information), user preference data

[1192] Output: Real-time menu recommendations

[1193] Specific operation: Based on the analysis results and the user's preference information, the server selects an appropriate menu item and sends it to the device in real time. The message "This tom yum goong suits your taste" is displayed.

[1194] Step 11:

[1195] The server will suggest wines that suit the user's tastes.

[1196] Input: Past wine consumption history

[1197] Output: Wine suggestions

[1198] How it works: The server selects similar wines based on your past wine consumption history and suggests "wine similar to a Cabernet Sauvignon you liked in the past."

[1199] Step 12:

[1200] The server suggests foods that fit the user's diet goals.

[1201] Input: diet goal, food data

[1202] Output: Food suggestions that fit your diet goals

[1203] How it works: The server uses OpenAI's generative AI model to select foods that fit the user's diet goals. It displays the message, "This salad is low in calories and fits your goals."

[1204] (Application example 1)

[1205] 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."

[1206] Conventional food delivery systems have been unable to adequately meet the needs of individual users, as they have been unable to recommend meal menus that are tailored to the user's preferences, allergy information, and diet goals. Furthermore, users have limited means to check menu details before ordering, making it difficult to receive appropriate suggestions tailored to their health and diet goals. There is a need for a system that can solve these problems and improve user satisfaction.

[1207] 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.

[1208] In this invention, the server includes an input means for inputting a user's preferences, allergy information, and diet goals, an analysis means for analyzing the user's preferences based on the information input via the input means and past meal data, a generation means for recommending appropriate meal-providing facilities and meal menus based on the analysis means, an information acquisition means for scanning menus and checking ingredient and calorie information before ordering, and a recommendation means for making suggestions that match the user's past meal history and health goals. This makes it possible to suggest meal menus and drinks that match the user's individual health goals and preferences.

[1209] The "input means" refers to a device or interface for inputting information such as the user's preferences, allergy information, and diet goals.

[1210] The "analysis means" refers to a device or algorithm for analyzing the user's preferences and health goals based on the information input via the input means and past dietary data.

[1211] The "generation means" refers to a device or algorithm for recommending appropriate dining establishments and meal menus based on the analysis means.

[1212] "Information acquisition means" refers to a device or software that scans a menu and checks ingredients and calorie information before ordering.

[1213] A "recommendation tool" is a device or algorithm that makes suggestions that match past dietary history and health goals.

[1214] An "imaging means" is a camera or other imaging device for scanning restaurant menus.

[1215] "Optical character recognition" refers to techniques and devices used to extract text information from scanned images of menus.

[1216] "Communication means" refers to a communication device or interface for transmitting scanned image information to a server and obtaining analysis results.

[1217] The "suggestion means" is a device or algorithm that identifies and suggests beverages that a user is likely to like based on past consumption information.

[1218] The system for realizing this invention includes an input means for inputting a user's preferences, allergy information, and diet goals, an analysis means for analyzing the user's preferences based on the information input via the input means and past meal data, a generation means for recommending appropriate meal facilities and meal menus based on the analysis means, an information acquisition means for scanning the menu before ordering and checking ingredient and calorie information, and a recommendation means for making suggestions that match the user's past meal history and health goals.

[1219] Specifically, the following hardware and software are used.

[1220] Hardware

[1221] Terminal (smartphone): A device that allows users to input preferences, allergy information, diet goals, etc. and scan the menu.

[1222] Server: A backend system for performing data analysis and generating recommendations.

[1223] software

[1224] Flask (server-side web framework): Receives user input, analyzes it, and makes recommendations.

[1225] OCR module (e.g. Tesseract): Extracts text information from scanned images of menus.

[1226] Database (e.g., SQLite): Stores user information and meal data.

[1227] Recommendation engine: A customized algorithm that suggests the best menu based on user preferences and past data.

[1228] Processing flow

[1229] 1. Input Method

[1230] The user launches the smartphone application and inputs their preferences, allergy information, and diet goals, which are then sent from the smartphone to the server.

[1231] 2. Analysis method

[1232] The server analyzes the information it receives to identify the user's preferences and health goals, taking into account past dietary data.

[1233] 3. Generation means

[1234] Based on the analysis results, the server selects dining facilities and menus suitable for the user and generates a recommendation list, which is then sent back to the user's smartphone and displayed to them.

[1235] 4. Information acquisition means

[1236] When a user arrives at a restaurant, they scan the menu using their smartphone's camera, which converts the scanned image into text information using an OCR module and sends it to the server.

[1237] 5. Recommendation methods

[1238] The server analyzes the ingredients and calorie information from the extracted text information and suggests menus in real time that suit the user's preferences and health goals.

[1239] Specific examples

[1240] For example, if a user inputs "I like spicy food," "I have a nut allergy," or "I want to lose weight," the server will make recommendations based on this. If a user scans a menu for tom yum goong at a restaurant, the server will analyze the ingredients and calorie information and suggest "spicy tom yum goong with 350 calories."

[1241] Prompt Sentence Examples

[1242] "If the user likes spicy food, has a nut allergy, and wants to lose weight."

[1243] The system allows users to easily choose the meal plan that best suits their health goals and preferences.

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

[1245] Step 1:

[1246] The user starts the smartphone application and uses the input means to input their preferences, allergy information, and diet goals.

[1247] Input: User preferences, allergy information, and diet goals

[1248] Output: Input information is obtained

[1249] Specific actions: The user fills out a form in the app, saying, "I like spicy food," "I have a nut allergy," and "I want to lose weight."

[1250] Step 2:

[1251] The terminal transmits this input information to the server.

[1252] Input: Input information

[1253] Output: The input information is sent to the server

[1254] Specific operation: The terminal transmits input information to the server as a data packet.

[1255] Step 3:

[1256] The server stores the received information in a database and uses analytical means to analyze the user's preferences and health goals.

[1257] Input: Submitted input information

[1258] Output: Analysis results of preferences and health goals

[1259] Specific operation: Past meal data is combined with newly entered information in the database and an analysis algorithm is executed.

[1260] Step 4:

[1261] The server uses a generating means to generate a recommendation list of appropriate dining establishments and menus based on the analysis results.

[1262] Input: Analysis results

[1263] Output: Recommendation list

[1264] How it works: The recommendation engine uses a scoring algorithm to rank and generate a list.

[1265] Step 5:

[1266] The server transmits the generated recommendation list to the terminal.

[1267] Input: Recommendation list

[1268] Output: The recommendation list is displayed on the terminal.

[1269] Specific operation: The recommendation list is converted into a data format and sent to the terminal.

[1270] Step 6:

[1271] The terminal displays the recommendation list to the user.

[1272] Input: Received recommendation list

[1273] Output: Displayed recommendation list

[1274] Specific behavior: The recommendation list is displayed in the application UI so that the user can review it.

[1275] Step 7:

[1276] A user arrives at a restaurant and uses the device's camera function to scan the menu before ordering.

[1277] Input: Menu Image

[1278] Output: Scanned menu images

[1279] Specific action: The user takes a photo of the menu with the smartphone camera.

[1280] Step 8:

[1281] The terminal converts the scanned menu image into text information using an OCR module and sends it to the server.

[1282] Input: Scanned menu image

[1283] Output: Extracted text information

[1284] Specific operation: The OCR module processes the image, converts it into text information, and sends it to the server.

[1285] Step 9:

[1286] The server analyzes the text information and obtains information on ingredients and calories.

[1287] Input: Text information

[1288] Output: Ingredients and calorie information

[1289] How it works: The parsing algorithm extracts ingredient and calorie information from the text information.

[1290] Step 10:

[1291] The server uses recommendation tools to suggest appropriate menus in real time based on the user's preferences and health goals.

[1292] Input: Ingredient and calorie information, user preferences and health goals

[1293] Output: Suggested menu information

[1294] Specific operation: The proposed algorithm calculates the score for each menu, selects the optimal menu, and sends it to the terminal.

[1295] Step 11:

[1296] The terminal displays the suggested menu information to the user.

[1297] Input: Suggested menu information

[1298] Output: Menu suggestions displayed

[1299] Specific behavior: The proposed menu information is displayed in the application UI so that the user can confirm it.

[1300] 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.

[1301] The system of the present invention includes a terminal that provides an interface for inputting the user's preferences, allergy information, diet goals, etc., and a server that analyzes the user's preferences based on this input information and past meal data and generates restaurant and meal menus. Furthermore, by combining it with an emotion engine that recognizes the user's emotions, the accuracy of suggestions and user satisfaction can be further improved.

[1302] A specific example will be given below based on the overall flow of the system.

[1303] Collection of User Information

[1304] 1. Data entry via terminal

[1305] When a user launches the app, a form appears on the device for entering preferences, allergy information, diet goals, and emotional state.

[1306] The user inputs information such as, "I like spicy food," "I have a nut allergy," "I want to lose weight," and "I'm currently feeling stressed."

[1307] 2. Sending data from the device to the server

[1308] The entered data is sent to the server via the terminal.

[1309] The server stores this data in a database and uses analytical means to analyze the user's preferences and needs.

[1310] Preference analysis and recommendation generation

[1311] 3. Preference analysis by the server

[1312] The server analyzes the user's preferences and emotional state based on past meal data and newly entered information.

[1313] For example, if the user has a history of frequently choosing "spicy food" in the past, it is determined that the user has a "preference for spicy food." Also, if the user inputs "I'm currently feeling stressed," this information is taken into consideration.

[1314] 4. Recommendation Generation

[1315] The server searches for nearby restaurants and their corresponding menus and ranks them based on a scoring algorithm.

[1316] The emotional state recognized by the emotion engine is also incorporated into the analysis results, and adjustments are made to prioritize ingredients and menus that, for example, relieve stress.

[1317] The selected recommendation list is sent to the device and displayed to the user. For example, information such as "We recommend a nearby Thai restaurant, which serves dishes that have a particularly relaxing effect" is displayed.

[1318] Menu breakdown scanning and real-time suggestions

[1319] 5. Scan the menu with your device

[1320] When a user arrives at a restaurant, they scan the menu using the device's camera function.

[1321] The terminal sends the scanned image to the server, which uses optical character recognition to extract the menu text information.

[1322] 6. Menu analysis and suggestions by the server

[1323] The server analyzes the ingredients and calorie information for each menu item from the extracted text information.

[1324] For example, it analyzes a menu item for tom yum goong and determines that it is "slightly spicy and has 350 calories."

[1325] The server selects an appropriate menu based on the user's preferences, health goals, and emotional state, and displays it in real time on the device, displaying information such as, "This tom yum goong will suit your tastes and have a relaxing effect."

[1326] Wine suggestions and goal-adaptive recommendations

[1327] 7. Wine suggestions by servers

[1328] Based on past wine consumption history, the server identifies and suggests wines that the user is likely to like, for example, suggesting wines similar to Cabernet Sauvignon that the user liked in the past.

[1329] If the emotion engine knows that the user is not feeling calm, it will also suggest wines that have a relaxing effect.

[1330] 8. Proposals tailored to your goals

[1331] The server searches for and suggests low-calorie, nutritionally balanced menus according to the user's diet goal (e.g., "lose weight").

[1332] The server sends the suggestions to the terminal and displays them to the user in the form of, "This salad is low in calories and has a relaxing effect. It's suitable for your goals."

[1333] Specific examples

[1334] If a user likes spicy food, has a nut allergy, and is currently stressed:

[1335] 1. When you start the app, enter your preferences, allergy information, diet goals, and emotional state.

[1336] 2. The device sends this information to the server.

[1337] 3. The server analyzes the customer's preferences and emotional state and recommends "spicy dishes." Menu items containing ingredients that reduce stress are prioritized.

[1338] 4. Arrive at the restaurant and scan the menu.

[1339] 5. The server analyzes the menu and suggests suitable dishes in real time. For example, it might say, "This tom yum goong is likely to have a relaxing effect."

[1340] 6. We also recommend wines that have a relaxing effect based on your past wine history.

[1341] 7. We offer low-calorie menus that suit your diet goals and also take into consideration the relaxing effects.

[1342] In this way, by combining the emotion engine, the system of the present invention can suggest restaurants and menus that meet the user's diverse needs and emotional state, further increasing user satisfaction.

[1343] The processing flow will be explained below.

[1344] Step 1:

[1345] User: Launches the app and enters preferences, allergy information, diet goals, and emotional state.

[1346] Terminal: Displays an input form and accepts input from the user.

[1347] Terminal: Sends received input data to the server.

[1348] Step 2:

[1349] Server: Receives input data and stores it in a database.

[1350] Server: Query and retrieve the user's past meal data.

[1351] Server: Runs the preference analysis algorithm and analyzes the user's preferences, allergy information, diet goals, and emotional state.

[1352] Step 3:

[1353] Server: Launches a generation engine that recommends restaurants and menus based on the analysis results.

[1354] Server: Searches for nearby restaurants and menus and ranks them using a scoring algorithm.

[1355] Server: Based on the emotion engine, the menu selection is adjusted taking into account the user's emotional state. For example, if a user is stressed, a menu with a relaxing effect will be prioritized.

[1356] Server: Sends the generated recommendation list to the terminal.

[1357] Device: Displays the recommendation results so that the user can check them.

[1358] Step 4:

[1359] User: Scans a menu at a restaurant.

[1360] Device: Activate the camera function and capture a menu image.

[1361] Terminal: Sends the acquired menu image to the server.

[1362] Step 5:

[1363] Server: Receives the menu image and extracts the text information using optical character recognition (OCR).

[1364] Server: Parses the extracted text information into ingredient and calorie information.

[1365] Step 6:

[1366] Server: Based on the analysis results, selects a menu that suits the user's preferences, health goals, and emotional state.

[1367] Server: Sends the proposal results to the device in real time.

[1368] On the device: The suggestion is displayed so that the user can confirm it. For example, a comment such as "This tom yum goong will suit your taste and have a relaxing effect" is displayed.

[1369] Step 7:

[1370] Server: Query and retrieve the user's past wine consumption history.

[1371] Server: Runs the wine recommendation algorithm to identify wines that the user is likely to like.

[1372] Server: The emotion engine takes into account the user's emotional state and also suggests wines that have a relaxing effect.

[1373] Server: Sends wine recommendation results to the terminal.

[1374] Terminal: Display suggested wines so the user can review them.

[1375] Step 8:

[1376] Server: Searches for and ranks appropriate menus based on the user's diet goals.

[1377] Server: Performs goal-adaptive recommendations that also take emotional states into account.

[1378] Server: Sends the goal-adaptive recommendation results to the terminal.

[1379] On the device: Display the suggestion so the user can review it. For example, display a comment like, "This salad is low in calories and may help you relax. It's a good fit for your goals."

[1380] Example 2

[1381] 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."

[1382] It is difficult for users to find the right meal or restaurant based on their preferences, allergies, diet goals, and even their emotional state. Existing recommendation systems cannot take the user's emotional state into account, and therefore cannot fully increase user satisfaction. Furthermore, selecting the right meal while browsing a restaurant menu is time-consuming. Therefore, a system that allows users to receive optimal meal suggestions in real time based on their input information and emotions is needed.

[1383] 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.

[1384] In this invention, the server includes an input means for inputting a user's preferences, allergy information, and diet goals, an analysis means for analyzing the user's preferences based on the information input via the input means and past meal data, a generation means for generating a list of appropriate restaurant and meal suggestions based on the analysis means, an emotion recognition means for recognizing the user's emotional state, and an adjustment means for adjusting recommendations in consideration of the emotion information obtained from the emotion recognition means. This allows users to easily find the best meals and restaurants that suit their preferences and emotional state, thereby improving their satisfaction.

[1385] "User" refers to an individual who utilizes the system to input preferences, allergy information, diet goals, and emotional state and receives meal suggestions based on the results.

[1386] "Preferences" refers to information about the types of ingredients and dishes that a user likes.

[1387] "Allergy information" refers to information about ingredients or substances that a user cannot consume.

[1388] "Diet goal" refers to the weight loss or nutritional balance goal that a user wants to achieve.

[1389] "Input means" refers to an interface that allows a user to input preferences, allergy information, diet goals, and emotional state into the system.

[1390] "Analysis means" refers to means for analyzing a user's preferences and needs based on information entered by the user and past meal data.

[1391] The "generation means" refers to a means for generating a list of suitable restaurant and meal suggestions based on the information obtained by the analysis means.

[1392] "Emotion recognition means" refers to technology for recognizing the emotional state of a user from input information.

[1393] The "adjustment means" refers to a means for optimizing recommendations and providing them to users in consideration of the emotion information obtained from the emotion recognition means.

[1394] "Terminal" refers to a device on which a user launches an application and inputs data.

[1395] "Optical character recognition" refers to technology for extracting character information from image data.

[1396] "Recommendation means" refers to a means for generating and providing optimal meal suggestions to users in real time based on analyzed information.

[1397] "Dining hall" refers to a dining facility available to users.

[1398] The present invention is a system that proposes optimal meals by taking into account the user's preferences, allergy information, diet goals, and emotional state. The system consists of a terminal that provides a user interface and a server that analyzes data and generates proposals.

[1399] Hardware and Software Configuration

[1400] Device: A mobile device, such as a smartphone or tablet, used by a user on which the application is installed.

[1401] Server: A computer server with a high-performance database and analytical engine that stores data, analyzes it, and generates recommendations.

[1402] Emotion recognition engine: A software module that analyzes the user's emotional state from information entered by the user.

[1403] Optical Character Recognition (OCR): A software technique for extracting textual information from menu images.

[1404] Data entry and saving

[1405] Entering user information: The user launches the app on their device and enters their preferences, allergy information, diet goals, and emotional state. For example, they enter information such as "I like spicy food," "I have a nut allergy," "I want to lose weight," and "I'm currently feeling stressed."

[1406] Data transmission and storage: The device sends the entered information to the server, which stores it in a database. The data is encrypted before transmission and stored securely.

[1407] Data analysis and proposal generation

[1408] Preference analysis: The server analyzes the user's preferences and emotional state based on the stored data. For example, if the user has frequently selected "spicy food" in the past, it will detect a "preference for spicy food." The emotion recognition engine will also analyze information such as "current mood: stressed."

[1409] Recommendation generation: Based on the analysis results, the server generates a list of nearby restaurants and corresponding meal suggestions, taking into account the user's emotional state and prioritizing ingredients and menus that reduce stress.

[1410] Recommendation display and real-time suggestions

[1411] Sending and displaying the recommendation list: The server sends the generated recommendation list to the device, which then displays it to the user. For example, a specific message such as "I recommend a nearby Thai restaurant. They serve dishes that have a particularly relaxing effect" may be displayed.

[1412] Menu scanning and analysis: When a user arrives at a restaurant, they scan the menu using their device's camera. The device then sends the scanned image to the server, which then uses OCR technology to extract the text information from the menu. Based on the extracted information, the ingredients and calorie information for each menu item are analyzed. For example, the Tom Yum Kung menu item is analyzed and determined to be spicy and have 350 kcal.

[1413] Real-time suggestions: Based on the analysis results, the server selects the optimal menu based on the user's preferences, health goals, and emotional state, and sends the suggestions to the device in real time. Specific messages such as "This tom yum goong suits your tastes and is expected to have a relaxing effect" are displayed.

[1414] Example: Prompt sentence

[1415] "I like spicy food and I have a nut allergy. I'm feeling stressed right now. Can you recommend any restaurants or menus?"

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

[1417] Step 1:

[1418] A user taps the app icon on their device to launch the app. They then input their preferences (e.g., "I like spicy food"), allergy information (e.g., "I'm allergic to nuts"), diet goals (e.g., "I want to lose weight"), and emotional state (e.g., "I'm currently feeling stressed") via an input device. The input data here is basic information about the user's needs.

[1419] Step 2:

[1420] The device sends the input data (preferences, allergy information, diet goals, emotional state) to the server. The data is encrypted and securely protected. The server receives this data and stores it in a database. The input data becomes the raw data for analysis.

[1421] Step 3:

[1422] The server analyzes preferences and emotional state based on past meal data stored in a database and newly entered user data. The analysis means references past data to identify the user's cluster and predict preferences (e.g., detects a preference for spicy food). The emotion recognition engine analyzes the emotional state based on information such as "currently feeling stressed."

[1423] Step 4:

[1424] The server generates a list of nearby restaurants and corresponding meal suggestions based on the analysis results. The generator uses a scoring algorithm to rank suitable restaurants and menus. The output is a list of suggested restaurants and menus.

[1425] Step 5:

[1426] The server generates a recommendation list and sends it to the device. The device receives the recommendation list and displays it to the user. Specific messages displayed include, "We recommend a nearby Thai restaurant. They serve dishes that have a particularly relaxing effect." The input is the recommendation list from the server, and the output is a visual list displayed on the device.

[1427] Step 6:

[1428] A user arrives at a restaurant and scans the menu using the device's camera function. The input is the menu image taken by the user.

[1429] Step 7:

[1430] The device sends a menu image to the server. The server uses OCR technology to extract text information from the menu image. The extracted text data becomes the input, and the ingredients and calorie information is analyzed based on it. For example, "Tom Yum Kung" is analyzed and determined to be "spicy with 350 kcal." The output is the analyzed ingredients and calorie information.

[1431] Step 8:

[1432] Based on the analysis results, the server selects the optimal menu based on the user's preferences, health goals, and emotional state, and generates suggestions in real time. The device receives this and displays it to the user. A specific message such as "This tom yum goong suits your tastes and is expected to have a relaxing effect" is displayed. The input is the suggestion data from the server, and the output is the suggestion message on the device.

[1433] Step 9:

[1434] The server identifies and suggests wines that the user is likely to like based on their past wine consumption history. It also uses data from an emotion recognition engine to prioritize wines that have a relaxing effect. The input is past wine consumption data, and the output is a suggested wine list.

[1435] Step 10:

[1436] The server searches for low-calorie, nutritionally balanced menus based on the user's diet goals and generates suggestions. The device receives these and presents them to the user in the form of, "This salad is low in calories and has a relaxing effect. It's suitable for your goals." The input is a dataset related to the diet goals, and the output is a specific menu suggestion.

[1437] (Application example 2)

[1438] 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."

[1439] Existing food delivery systems do not provide optimal recommendations based on a user's preferences, allergy information, diet goals, or even emotional state, making it difficult to provide a satisfying service tailored to each individual user. Furthermore, they lack a mechanism for automatically analyzing restaurant menu information and placing appropriate orders in real time. This makes it difficult for users to select the meal that best suits them, resulting in a decrease in satisfaction after ordering.

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

[1441] In this invention, the server includes input means for inputting a user's preferences, allergy information, and diet goals, analysis means for analyzing the user's preferences based on the information input via the input means and past meal data, generation means for recommending appropriate restaurants and meal menus based on the analysis means, an emotion engine for recognizing the user's emotional state, and display means for displaying the generated recommendation list to the user. This makes it possible to suggest optimal restaurants and menus that meet the user's diverse needs and emotional state, further increasing user satisfaction.

[1442] "User preferences" refers to the preferences that a user has for food, and means a favorable preference for specific flavors and characteristics of individual ingredients or dishes.

[1443] "Allergy information" refers to information about ingredients or substances that a user cannot consume or that may cause an allergic reaction if consumed.

[1444] "Diet goal" refers to a health or physical objective that a user wishes to achieve, such as losing weight or body fat, or gaining muscle.

[1445] "Input means" refers to a device or interface for a user to input information, including a keyboard, touch screen, voice input, etc.

[1446] "Analysis means" refers to software or algorithms that use input data to analyze user preferences and attributes and derive appropriate results.

[1447] "Generation means" refers to a function for generating optimal menu and restaurant recommendations for a user based on the analyzed data.

[1448] An "emotion engine" refers to technology that analyzes a user's current emotional state and provides information and services that correspond to that emotion.

[1449] "Display means" refers to a display or screen for visually presenting the generated recommendation list and information to the user.

[1450] "Camera function" refers to the ability to take pictures and videos using a digital camera, and is often found on smartphones and tablets.

[1451] "Optical character recognition" is a technology that extracts text information from scanned images, and is an abbreviation for OCR (Optical Character Recognition).

[1452] "Ordering means" refers to a system or function for confirming and processing an order for the menu item selected by the user.

[1453] "Recommendation means" refers to functions and mechanisms for recommending optimal options to users based on analysis results.

[1454] The system embodying this invention takes into account a user's preferences, allergy information, diet goals, and emotional state when ordering a meal, and recommends appropriate restaurants and menus. This system uses the following hardware and software:

[1455] Hardware and software used

[1456] Smartphone: A device where users input information and receive recommendations.

[1457] Cloud server: Analyzes the input information and generates optimal recommendations. This uses Node.js and Express.

[1458] Database: Stores user preferences and past meal data. MongoDB is used.

[1459] Emotion analysis engine: Software for analyzing the user's emotional state, powered by IBM Watson.

[1460] Optical Character Recognition (OCR): A technology used to extract text information from scanned images of menus, powered by Google Cloud Vision.

[1461] System Operation Overview

[1462] 1. Data Entry

[1463] The user launches the smartphone app and inputs their preferences, allergy information, diet goals, and emotional state, which is then sent to the server and stored in a database.

[1464] 2. Data Analysis

[1465] The server analyzes the user's preferences and emotional state based on the input information and past meal data, and uses an emotion analysis engine (IBM Watson) to identify the user's current emotional state.

[1466] 3. Recommendation Generation

[1467] The server generates appropriate restaurant and menu options based on the analysis results, taking into account the user's current emotional state and may prioritize ingredients and menu items that have a relaxing effect.

[1468] 4. Recommendation display

[1469] The generated recommendation list is displayed on the smartphone, and the user can review the list and select restaurants and menus that suit their preferences.

[1470] 5. Scan the menu

[1471] When a user arrives at a restaurant, they scan the menu using their smartphone's camera, which sends the scanned image to a server where optical character recognition (OCR) technology extracts the text information.

[1472] 6. Real-time suggestions

[1473] The server analyzes the extracted text information to obtain information on ingredients and calories, and then suggests optimal menu items to the user in real time.

[1474] 7. Order Processing

[1475] After scanning, the user selects the most suitable item from the recommended menu and confirms the order. The order information is sent to the server for appropriate processing.

[1476] Specific examples

[1477] User A likes spicy food, has a nut allergy, and wants to lose weight. He also inputs that he is currently feeling stressed. The app sends this information to the server and begins analysis. Based on the user's preferences and emotional state, the server recommends "spicy Thai curry with chicken breast" from a nearby restaurant, accompanied by a relaxing herbal tea. User A selects this and completes the order, allowing him to enjoy a meal that meets his diet goal while reducing stress.

[1478] Prompt Sentence Examples

[1479] User information: spicy food, nut allergy, want to lose weight, stressed

[1480] Recommendations: Based on the algorithm's analysis, suggest meals that best fit the user's preferences and health goals. For example, "Spicy Thai Curry with Chicken Breast" with a relaxing herbal tea. Include calorie information and the relaxing effect of the menu.

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

[1482] Step 1:

[1483] The user launches the smartphone app and inputs their preferences, allergy information, diet goals, and emotional state.

[1484] Input: Preferences, allergy information, diet goals, and emotional state data

[1485] Output: The input data is sent to the server in the form of a request.

[1486] What happens: The user enters the required information using the text boxes and drop-down menus and presses the submit button.

[1487] Step 2:

[1488] The server stores the entered information in a database.

[1489] Input: Submitted preferences, allergy information, diet goals, and emotional state data

[1490] Output: User information stored in the database

[1491] What it does: The server parses the data it receives, converts it into the appropriate format, and inserts it into a database such as MongoDB.

[1492] Step 3:

[1493] The server analyzes the user's preferences and emotional state based on past meal data and newly entered information.

[1494] Input: Past meal data stored in the database, new input data

[1495] Output: Analysis results based on user preferences and emotional state

[1496] How it works: The server uses an analytical algorithm to extract user trends from past data and uses an emotion analysis engine (IBM Watson) to identify the user's current emotional state.

[1497] Step 4:

[1498] The server generates the optimal restaurant and meal menu based on the analysis results.

[1499] Input: Analysis results (user preferences, allergy information, diet goals, emotional state)

[1500] Output: A list of restaurants and menus suitable for the user

[1501] What it does: Searches a database of restaurants and uses a scoring algorithm to generate a list of recommendations.

[1502] Step 5:

[1503] The generated recommendation list is displayed to the user.

[1504] Input: A list of restaurants and menus suitable for the user

[1505] Output: Recommendation list displayed on a smartphone screen

[1506] Specific behavior: The smartphone app receives the response from the server and displays the recommendation list on the user interface.

[1507] Step 6:

[1508] A user arrives at a restaurant and scans the menu using the camera function on their smartphone.

[1509] Input: scanned image of menu

[1510] Output: Scanned image data sent to the server

[1511] What happens: The user activates the camera scan feature within the app and takes a picture of the menu.

[1512] Step 7:

[1513] The server extracts text information from the scanned image and obtains ingredient and calorie information.

[1514] Input: Scanned image data of the menu

[1515] Output: Extracted text information, ingredients, and calorie information

[1516] Specific operation: The server uses the Google Cloud Vision API to perform OCR processing, extract text information, and analyze it.

[1517] Step 8:

[1518] The server proposes the most suitable menu to the user in real time based on the extracted text information.

[1519] Input: Extracted text information, ingredients, and calorie information

[1520] Output: A list of optimal menus to be displayed to the user

[1521] Specific operation: The server selects the most suitable menu based on the user's preferences and analyzed menu information and sends it to the smartphone.

[1522] Step 9:

[1523] The user confirms the order of the menu selected.

[1524] Input: The menu item selected by the user

[1525] Output: Confirmed order information

[1526] Specific operation: The user selects from the recommended menu and presses the order button. The server receives and processes the order information.

[1527] 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.

[1528] 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.

[1529] 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.

[1530] [Fourth embodiment]

[1531] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.

[1532] 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.

[1533] 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).

[1534] 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.

[1535] 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.

[1536] 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).

[1537] 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.

[1538] 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.

[1539] 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.

[1540] 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.

[1541] 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.

[1542] 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.

[1543] 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."

[1544] The system of the present invention includes a terminal that provides an interface for inputting the user's preferences, allergy information, diet goals, etc., and a server that analyzes the user's preferences based on this input information and past meal data, and generates restaurant and meal menus.

[1545] A specific example will be given below based on the overall flow of the system.

[1546] Collection of User Information

[1547] 1. Data entry via terminal

[1548] When a user launches the app, a form appears on the device for entering preferences, allergy information, and diet goals.

[1549] For example, the user enters information such as "I like spicy food," "I have a nut allergy," or "I want to lose weight."

[1550] 2. Sending data from the device to the server

[1551] The entered data is sent to the server via the terminal.

[1552] The server stores this data in a database and analyzes the user's preferences and needs using analytical means.

[1553] Preference analysis and recommendation generation

[1554] 3. Preference analysis by the server

[1555] The server analyzes the user's preferences based on past meal data and newly entered information.

[1556] For example, if the user has a history of frequently selecting "spicy food" in the past, it is determined that the user has a "preference for spicy food."

[1557] 4. Recommendation Generation

[1558] The server searches for nearby restaurants and their corresponding menus and ranks them based on a scoring algorithm.

[1559] The selected recommendation list is sent to the device and displayed to the user. For example, information such as "Recommended Thai restaurants nearby" is displayed.

[1560] Menu breakdown scanning and real-time suggestions

[1561] 5. Scan the menu with your device

[1562] When a user arrives at a restaurant, they scan the menu using the device's camera function.

[1563] The device sends the scanned image to a server, which uses optical character recognition technology to extract the menu's text information.

[1564] 6. Menu analysis and suggestions by the server

[1565] The server analyzes the ingredients and calorie information for each menu item from the extracted text information.

[1566] For example, it analyzes a menu item for tom yum goong and determines that it is "slightly spicy and has 350 calories."

[1567] The server selects appropriate menu items based on the user's preferences and health goals, and displays them on the device in real time, displaying information such as "This tom yum goong suits your tastes."

[1568] Wine suggestions and goal-adaptive recommendations

[1569] 7. Wine suggestions by servers

[1570] Based on past wine consumption history, the server identifies and suggests wines that the user is likely to like, for example, suggesting wines similar to Cabernet Sauvignon that the user liked in the past.

[1571] 8. Proposals tailored to your goals

[1572] The server searches for and suggests low-calorie, nutritionally balanced menus according to the user's diet goal (e.g., "lose weight").

[1573] The server sends the suggestions to the terminal and displays them to the user in the form of, for example, "This salad is low in calories and suitable for your goals."

[1574] Specific examples

[1575] If the user likes spicy food and has a nut allergy:

[1576] 1. When you start the app, enter your preferences, allergy information, and diet goals.

[1577] 2. The device sends this information to the server.

[1578] 3. The server analyzes your preferences and recommends "spicy dishes."

[1579] 4. Arrive at the restaurant and scan the menu.

[1580] 5. The server analyzes the menu and suggests suitable dishes in real time.

[1581] 6. Recommends wines that users like based on their past wine history.

[1582] 7. We suggest low-calorie menus that fit your diet goals.

[1583] In this way, the system of the present invention can suggest restaurants and menus that meet the diverse needs of users, thereby increasing user satisfaction.

[1584] The processing flow will be explained below.

[1585] Step 1:

[1586] User: Launches the app and enters preferences, allergy information, and diet goals.

[1587] Terminal: Displays an input form and accepts input from the user.

[1588] Terminal: Sends received input data to the server.

[1589] Step 2:

[1590] Server: Receives input data and stores it in a database.

[1591] Server: Query and retrieve the user's past meal data.

[1592] Server: Runs the preference analysis algorithm to analyze the user's preferences, allergies, and diet goals.

[1593] Step 3:

[1594] Server: Based on the analysis results, it launches a generation engine that recommends restaurants and menus.

[1595] Server: Searches for nearby restaurants and menus and ranks them using a scoring algorithm.

[1596] Server: Sends the generated recommendation list to the terminal.

[1597] Device: Displays the recommendation results so that the user can check them.

[1598] Step 4:

[1599] User: Scans a menu at a restaurant.

[1600] Device: Activate the camera function and capture a menu image.

[1601] Terminal: Sends the acquired menu image to the server.

[1602] Step 5:

[1603] Server: Receives the menu image and extracts the text information using optical character recognition (OCR).

[1604] Server: Parses the extracted text information into ingredient and calorie information.

[1605] Step 6:

[1606] Server: Based on the analysis results, select a menu that suits the user's preferences and health goals.

[1607] Server: Sends the proposal results to the device in real time.

[1608] On the device: Display the suggestion so that the user can confirm it. For example, display a comment such as "This tom yum goong will suit your taste."

[1609] Step 7:

[1610] Server: Query and retrieve the user's past wine consumption history.

[1611] Server: Runs the wine recommendation algorithm to identify wines that the user is likely to like.

[1612] Server: Sends wine recommendation results to the terminal.

[1613] Terminal: Display suggested wines so the user can review them.

[1614] Step 8:

[1615] Server: Searches for and ranks appropriate menus based on the user's diet goals.

[1616] Server: Sends the goal-adaptive recommendation results to the terminal.

[1617] On the device: Display the suggestion so the user can review it. For example, display a comment like "This salad is low in calories and fits your goals."

[1618] Example 1

[1619] 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."

[1620] While conventional systems can manage a user's preferences, allergy information, and diet goals individually, it is difficult to comprehensively analyze these information and suggest appropriate restaurants and meal menus. Furthermore, real-time menu analysis and suggestions are not performed smoothly after the user arrives at the restaurant, which prevents sufficient user satisfaction. Furthermore, there is a lack of means to provide beverage options tailored to the user's preferences, such as wine suggestions. A system that can solve these issues and suggest restaurants and menus that meet the diverse needs of users is needed.

[1621] 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.

[1622] In this invention, the server includes: input means for inputting a user's preferences, allergy information, and diet goals; analysis means for analyzing the user's preferences based on the information input via the input means and past meal data; generation means for recommending appropriate restaurants and meal menus based on the analysis means; transmission means for transmitting the recommendations obtained by the generation means to a user terminal; optical character recognition means for scanning restaurant menu images input from the terminal and extracting text information; analysis means for analyzing ingredient and calorie information based on the text information; and recommendation means for suggesting menus suitable for the user in real time based on the analysis results of the analysis means. This makes it possible to suggest restaurants and menus based on the user's input information and past data, and further enables menu analysis and suggestions in real time, thereby providing highly accurate services that meet the diverse needs of users.

[1623] The "input means" is a function that provides an interface for inputting the user's preferences, allergy information, and diet goals into the terminal.

[1624] The "analysis means" is a function for analyzing the user's preferences based on information input via the input means and past meal data.

[1625] The "generation means" is a function for recommending appropriate restaurants and meal menus based on the analysis means.

[1626] The "transmission means" is a function for transmitting the recommendations obtained by the generation means to the user terminal.

[1627] The "optical character recognition means" is a function for scanning restaurant menu images input from the terminal and extracting text information.

[1628] The "analysis means" (based on optical character recognition) is a function for analyzing ingredient and calorie information based on text information extracted by the optical character recognition means.

[1629] The "recommendation means" is a function for proposing a menu suitable for the user in real time based on the analysis results of the analysis means.

[1630] A "user terminal" is a device that allows a user to input various information, has a camera function, and is equipped with a function for communicating with a server.

[1631] The system of the present invention includes an input means for inputting a user's preferences, allergy information, and diet goals, an analysis means for analyzing the input information and past meal data, a generation means for recommending appropriate restaurants and meal menus, and a transmission means for transmitting the generated recommendations to a user terminal. It also includes an optical character recognition means for scanning an image of a restaurant menu input from the terminal and extracting text information, an analysis means for analyzing ingredient and calorie information based on the extracted text information, and a recommendation means for proposing menus suitable for the user in real time.

[1632] The system mainly consists of two hardware components: a server and a user terminal, which enable a wide range of data processing and calculations. The server is equipped with a high-performance database management system and runs analysis software using Python and R. The database uses a general-purpose database system such as MySQL. The optical character recognition (OCR) process uses Tesseract, an open-source OCR software.

[1633] When a user launches the application, a form appears on the device for entering preferences, allergy information, and diet goals. For example, the user might enter information such as "I like spicy food," "I have a nut allergy," or "I want to lose weight." The device then sends this input information to the server, which stores it in a database. The server's analysis means then analyzes the user's preferences and needs based on this data and past dietary data, and generates recommendations for appropriate restaurants and menus. The generated recommendations are sent to the device via the transmission means and displayed to the user.

[1634] When a user arrives at a restaurant, they scan the menu using their device's camera. The scanned image is sent to a server, which uses optical character recognition to extract the menu's text information. This text information is then analyzed for ingredients and calorie information. Based on the analysis results, menus that match the user's preferences and health goals are suggested in real time.

[1635] As a specific example, if a user "likes spicy food and has a nut allergy," the following steps may be taken:

[1636] 1. The user launches the app and enters their preferences, allergy information, and diet goals.

[1637] 2. The device sends this information to the server, which analyzes the preferences and recommends "spicy dishes."

[1638] 3. The user arrives at the restaurant and scans the menu.

[1639] 4. The server analyzes the menu and suggests suitable dishes in real time.

[1640] 5. Based on past wine history, wines that the user may like are also recommended.

[1641] 6. Low-calorie menus that fit your diet goals will be suggested.

[1642] Examples of prompts to input to a generative AI model include:

[1643] "How can we create a system that provides an interface for users to input their preferences, allergy information, and dietary goals?"

[1644] "Guide the algorithm to generate restaurant and meal menus by analyzing user preferences and past dining data."

[1645] "How can we design a system that scans restaurant menus and makes real-time suggestions tailored to the user's preferences?"

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

[1647] Step 1:

[1648] The user launches the app and enters their preferences, allergy information, and diet goals.

[1649] Input: User preferences, allergy information, diet goals

[1650] Output: The device saves the input information and prepares the data to be sent to the server.

[1651] Specific operation: The user enters information into an input form displayed on the device, such as "I like spicy food," "I have a nut allergy," and "I want to lose weight."

[1652] Step 2:

[1653] The terminal sends the input information to the server.

[1654] Input: User information entered in step 1

[1655] Output: User information stored on the server, ready for analysis

[1656] How it works: The device sends data to the server over Wi-Fi or mobile data, and the server receives it and stores it in a database.

[1657] Step 3:

[1658] The server analyzes the received data to determine the user's preferences.

[1659] Input: User information and past meal data

[1660] Output: Data on user preferences as a result of the analysis

[1661] Specific operation: The server runs an analysis program using R or Python. It compares past eating history with newly entered preference information to derive preferences such as "I like spicy food."

[1662] Step 4:

[1663] The server generates appropriate restaurants and menus based on the analysis results.

[1664] Input: Analysis results, nearby restaurant data

[1665] Output: Recommendation list

[1666] Specific operation: The server obtains nearby restaurant information from external services (e.g., Google Maps API or Yelp API) via a RESTful API and ranks them based on the generated preference data. As a result, recommendations such as "We recommend a nearby Thai restaurant" are generated.

[1667] Step 5:

[1668] The server sends the recommendation list to the terminal and displays it to the user.

[1669] Input: Recommendation list

[1670] Output: Recommendation information displayed on the device

[1671] Specific operation: The server sends the generated recommendation list to the device, and the device application displays it to the user. For example, it displays information such as "Recommended Thai restaurants nearby."

[1672] Step 6:

[1673] The user arrives at the restaurant and scans the menu using the device's camera function.

[1674] Input: Restaurant menu image

[1675] Output: Scanned image data

[1676] Specific behavior: The user launches the device's camera app and scans a restaurant menu. An image of the captured menu is generated.

[1677] Step 7:

[1678] The device sends the scanned image to the server.

[1679] Input: Scanned image

[1680] Output: Image data sent to the server

[1681] What it does: Your device sends scanned images to the server using Wi-Fi or mobile data.

[1682] Step 8:

[1683] The server extracts the menu text information using optical character recognition (OCR) technology.

[1684] Input: Scanned image

[1685] Output: Extracted text information

[1686] How it works: OCR software such as Tesseract runs on the server and extracts text information from scanned images.

[1687] Step 9:

[1688] The server analyzes ingredients and calorie information based on the extracted text information.

[1689] Input: Extracted text information

[1690] Output: Ingredients and calorie information

[1691] Specific operation: The server uses a Python analysis program to analyze the ingredients and calorie information from the text information and determines that "Tom Yum Kung is spicy and has 350 kcal."

[1692] Step 10:

[1693] Based on the analysis results, the server suggests a menu suitable for the user in real time.

[1694] Input: Analysis results (ingredients, calorie information), user preference data

[1695] Output: Real-time menu recommendations

[1696] Specific operation: Based on the analysis results and the user's preference information, the server selects an appropriate menu item and sends it to the device in real time. The message "This tom yum goong suits your taste" is displayed.

[1697] Step 11:

[1698] The server will suggest wines that suit the user's tastes.

[1699] Input: Past wine consumption history

[1700] Output: Wine suggestions

[1701] Specific operation: The server selects similar wines based on past wine consumption history and suggests "wine similar to a Cabernet Sauvignon you liked in the past."

[1702] Step 12:

[1703] The server suggests foods that fit the user's diet goals.

[1704] Input: diet goal, food data

[1705] Output: Food suggestions that fit your diet goals

[1706] How it works: The server uses OpenAI's generative AI model to select foods that fit the user's diet goals. It displays the message, "This salad is low in calories and fits your goals."

[1707] (Application example 1)

[1708] 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."

[1709] Conventional food delivery systems have been unable to adequately meet the needs of individual users, as they have been unable to recommend meal menus that are tailored to the user's preferences, allergy information, and diet goals. Furthermore, users have limited means to check menu details before ordering, making it difficult to receive appropriate suggestions tailored to their health and diet goals. There is a need for a system that can solve these problems and improve user satisfaction.

[1710] 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.

[1711] In this invention, the server includes an input means for inputting a user's preferences, allergy information, and diet goals, an analysis means for analyzing the user's preferences based on the information input via the input means and past meal data, a generation means for recommending appropriate meal-providing facilities and meal menus based on the analysis means, an information acquisition means for scanning menus and checking ingredient and calorie information before ordering, and a recommendation means for making suggestions that match the user's past meal history and health goals. This makes it possible to suggest meal menus and drinks that match the user's individual health goals and preferences.

[1712] The "input means" refers to a device or interface for inputting information such as the user's preferences, allergy information, and diet goals.

[1713] The "analysis means" refers to a device or algorithm for analyzing the user's preferences and health goals based on the information input via the input means and past dietary data.

[1714] The "generation means" refers to a device or algorithm for recommending appropriate dining establishments and meal menus based on the analysis means.

[1715] "Information acquisition means" refers to a device or software that scans a menu and checks ingredients and calorie information before ordering.

[1716] A "recommendation tool" is a device or algorithm that makes suggestions that match past dietary history and health goals.

[1717] An "imaging means" is a camera or other imaging device for scanning restaurant menus.

[1718] "Optical character recognition" refers to techniques and devices used to extract text information from scanned images of menus.

[1719] "Communication means" refers to a communication device or interface for transmitting scanned image information to a server and obtaining analysis results.

[1720] The "suggestion means" is a device or algorithm that identifies and suggests beverages that a user is likely to like based on past consumption information.

[1721] The system for realizing this invention includes an input means for inputting a user's preferences, allergy information, and diet goals, an analysis means for analyzing the user's preferences based on the information input via the input means and past meal data, a generation means for recommending appropriate meal facilities and meal menus based on the analysis means, an information acquisition means for scanning the menu before ordering and checking ingredient and calorie information, and a recommendation means for making suggestions that match the user's past meal history and health goals.

[1722] Specifically, the following hardware and software are used.

[1723] Hardware

[1724] Terminal (smartphone): A device that allows users to input preferences, allergy information, diet goals, etc. and scan the menu.

[1725] Server: A backend system for performing data analysis and generating recommendations.

[1726] software

[1727] Flask (server-side web framework): Receives user input, analyzes it, and makes recommendations.

[1728] OCR module (e.g. Tesseract): Extracts text information from scanned images of menus.

[1729] Database (e.g., SQLite): Stores user information and meal data.

[1730] Recommendation engine: A customized algorithm that suggests the best menu based on user preferences and past data.

[1731] Processing flow

[1732] 1. Input Method

[1733] The user launches the smartphone application and inputs their preferences, allergy information, and diet goals, which are then sent from the smartphone to the server.

[1734] 2. Analysis method

[1735] The server analyzes the information it receives to identify the user's preferences and health goals, taking into account past dietary data.

[1736] 3. Generation means

[1737] Based on the analysis results, the server selects dining facilities and menus suitable for the user and generates a recommendation list, which is then sent back to the user's smartphone and displayed to them.

[1738] 4. Information acquisition means

[1739] When a user arrives at a restaurant, they scan the menu using their smartphone's camera, which converts the scanned image into text information using an OCR module and sends it to the server.

[1740] 5. Recommendation methods

[1741] The server analyzes the ingredients and calorie information from the extracted text information and suggests menus in real time that suit the user's preferences and health goals.

[1742] Specific examples

[1743] For example, if a user inputs "I like spicy food," "I have a nut allergy," or "I want to lose weight," the server will make recommendations based on this. If a user scans a menu for tom yum goong at a restaurant, the server will analyze the ingredients and calorie information and suggest "spicy tom yum goong with 350 calories."

[1744] Prompt Sentence Examples

[1745] "If the user likes spicy food, has a nut allergy, and wants to lose weight."

[1746] The system allows users to easily choose the meal plan that best suits their health goals and preferences.

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

[1748] Step 1:

[1749] The user starts the smartphone application and uses the input means to input their preferences, allergy information, and diet goals.

[1750] Input: User preferences, allergy information, and diet goals

[1751] Output: Input information is obtained

[1752] Specific actions: The user fills out a form in the app, saying, "I like spicy food," "I have a nut allergy," and "I want to lose weight."

[1753] Step 2:

[1754] The terminal transmits this input information to the server.

[1755] Input: Input information

[1756] Output: The input information is sent to the server

[1757] Specific operation: The terminal transmits input information to the server as a data packet.

[1758] Step 3:

[1759] The server stores the received information in a database and uses analytical means to analyze the user's preferences and health goals.

[1760] Input: Submitted input information

[1761] Output: Analysis results of preferences and health goals

[1762] Specific operation: Past meal data is combined with newly entered information in the database and an analysis algorithm is executed.

[1763] Step 4:

[1764] The server uses a generating means to generate a recommendation list of appropriate dining establishments and menus based on the analysis results.

[1765] Input: Analysis results

[1766] Output: Recommendation list

[1767] How it works: The recommendation engine uses a scoring algorithm to rank and generate a list.

[1768] Step 5:

[1769] The server transmits the generated recommendation list to the terminal.

[1770] Input: Recommendation list

[1771] Output: The recommendation list is displayed on the terminal.

[1772] Specific operation: The recommendation list is converted into a data format and sent to the terminal.

[1773] Step 6:

[1774] The terminal displays the recommendation list to the user.

[1775] Input: Received recommendation list

[1776] Output: Displayed recommendation list

[1777] Specific behavior: The recommendation list is displayed in the application UI so that the user can review it.

[1778] Step 7:

[1779] A user arrives at a restaurant and uses the device's camera function to scan the menu before ordering.

[1780] Input: Menu Image

[1781] Output: Scanned menu image

[1782] Specific action: The user takes a photo of the menu with the smartphone camera.

[1783] Step 8:

[1784] The terminal converts the scanned menu image into text information using an OCR module and sends it to the server.

[1785] Input: Scanned menu image

[1786] Output: Extracted text information

[1787] Specific operation: The OCR module processes the image, converts it into text information, and sends it to the server.

[1788] Step 9:

[1789] The server analyzes the text information and obtains information on ingredients and calories.

[1790] Input: Text information

[1791] Output: Ingredients and calorie information

[1792] How it works: The parsing algorithm extracts ingredient and calorie information from the text information.

[1793] Step 10:

[1794] The server uses recommendation tools to suggest appropriate menus in real time based on the user's preferences and health goals.

[1795] Input: Ingredient and calorie information, user preferences and health goals

[1796] Output: Suggested menu information

[1797] Specific operation: The proposed algorithm calculates the score for each menu, selects the optimal menu, and sends it to the terminal.

[1798] Step 11:

[1799] The terminal displays the suggested menu information to the user.

[1800] Input: Suggested menu information

[1801] Output: Menu suggestions displayed

[1802] Specific behavior: The proposed menu information is displayed in the application UI so that the user can confirm it.

[1803] 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.

[1804] The system of the present invention includes a terminal that provides an interface for inputting the user's preferences, allergy information, diet goals, etc., and a server that analyzes the user's preferences based on this input information and past meal data and generates restaurant and meal menus. Furthermore, by combining it with an emotion engine that recognizes the user's emotions, the accuracy of suggestions and user satisfaction can be further improved.

[1805] A specific example will be given below based on the overall flow of the system.

[1806] Collection of User Information

[1807] 1. Data entry via terminal

[1808] When a user launches the app, a form appears on the device for entering preferences, allergy information, diet goals, and emotional state.

[1809] The user inputs information such as, "I like spicy food," "I have a nut allergy," "I want to lose weight," and "I'm currently feeling stressed."

[1810] 2. Sending data from the device to the server

[1811] The entered data is sent to the server via the terminal.

[1812] The server stores this data in a database and uses analytical means to analyze the user's preferences and needs.

[1813] Preference analysis and recommendation generation

[1814] 3. Preference analysis by the server

[1815] The server analyzes the user's preferences and emotional state based on past meal data and newly entered information.

[1816] For example, if the user has a history of frequently selecting "spicy food" in the past, it is determined that the user has a "preference for spicy food." Also, if the user inputs "I'm currently feeling stressed," this information is also taken into consideration.

[1817] 4. Recommendation Generation

[1818] The server searches for nearby restaurants and their corresponding menus and ranks them based on a scoring algorithm.

[1819] The emotional state recognized by the emotion engine is also incorporated into the analysis results, and adjustments are made to prioritize ingredients and menus that, for example, relieve stress.

[1820] The selected recommendation list is sent to the device and displayed to the user. For example, information such as "A nearby Thai restaurant is recommended, offering dishes that have a particularly relaxing effect" is displayed.

[1821] Menu breakdown scanning and real-time suggestions

[1822] 5. Scan the menu with your device

[1823] When a user arrives at a restaurant, they scan the menu using the device's camera function.

[1824] The terminal sends the scanned image to the server, which uses optical character recognition to extract the menu text information.

[1825] 6. Menu analysis and suggestions by the server

[1826] The server analyzes the ingredients and calorie information for each menu item from the extracted text information.

[1827] For example, it analyzes a menu item for tom yum goong and determines that it is "slightly spicy and has 350 calories."

[1828] The server selects an appropriate menu based on the user's preferences, health goals, and emotional state, and displays it in real time on the device, displaying information such as, "This tom yum goong will suit your tastes and have a relaxing effect."

[1829] Wine suggestions and goal-adaptive recommendations

[1830] 7. Wine suggestions by servers

[1831] Based on past wine consumption history, the server identifies and suggests wines that the user is likely to like, for example, suggesting wines similar to Cabernet Sauvignon that the user liked in the past.

[1832] If the emotion engine knows that the user is not feeling calm, it will also suggest wines that have a relaxing effect.

[1833] 8. Proposals tailored to your goals

[1834] The server searches for and suggests low-calorie, nutritionally balanced menus according to the user's diet goal (e.g., "lose weight").

[1835] The server sends the suggestions to the terminal and displays them to the user in the form of, "This salad is low in calories and has a relaxing effect. It's suitable for your goals."

[1836] Specific examples

[1837] If a user likes spicy food, has a nut allergy, and is currently stressed:

[1838] 1. When you start the app, enter your preferences, allergy information, diet goals, and emotional state.

[1839] 2. The device sends this information to the server.

[1840] 3. The server analyzes the customer's preferences and emotional state and recommends "spicy dishes." Menu items containing ingredients that reduce stress are prioritized.

[1841] 4. Arrive at the restaurant and scan the menu.

[1842] 5. The server analyzes the menu and suggests suitable dishes in real time. For example, it might say, "This tom yum goong is likely to have a relaxing effect."

[1843] 6. We also recommend wines that have a relaxing effect based on your past wine history.

[1844] 7. We offer low-calorie menus that suit your diet goals and also take into consideration the relaxing effects.

[1845] In this way, by combining the emotion engine, the system of the present invention can suggest restaurants and menus that meet the user's diverse needs and emotional state, further increasing user satisfaction.

[1846] The processing flow will be explained below.

[1847] Step 1:

[1848] User: Launches the app and enters preferences, allergy information, diet goals, and emotional state.

[1849] Terminal: Displays an input form and accepts input from the user.

[1850] Terminal: Sends received input data to the server.

[1851] Step 2:

[1852] Server: Receives input data and stores it in a database.

[1853] Server: Query and retrieve the user's past meal data.

[1854] Server: Runs the preference analysis algorithm and analyzes the user's preferences, allergy information, diet goals, and emotional state.

[1855] Step 3:

[1856] Server: Launches a generation engine that recommends restaurants and menus based on the analysis results.

[1857] Server: Searches for nearby restaurants and menus and ranks them using a scoring algorithm.

[1858] Server: Based on the emotion engine, the menu selection is adjusted taking into account the user's emotional state. For example, if a user is stressed, a menu with a relaxing effect will be prioritized.

[1859] Server: Sends the generated recommendation list to the terminal.

[1860] Device: Displays the recommendation results so that the user can check them.

[1861] Step 4:

[1862] User: Scans a menu at a restaurant.

[1863] Device: Activate the camera function and capture a menu image.

[1864] Terminal: Sends the acquired menu image to the server.

[1865] Step 5:

[1866] Server: Receives the menu image and extracts the text information using optical character recognition (OCR).

[1867] Server: Parses the extracted text information into ingredient and calorie information.

[1868] Step 6:

[1869] Server: Based on the analysis results, selects a menu that suits the user's preferences, health goals, and emotional state.

[1870] Server: Sends the proposal results to the device in real time.

[1871] On the device: The suggestion is displayed so that the user can confirm it. For example, a comment such as "This tom yum goong will suit your taste and have a relaxing effect" is displayed.

[1872] Step 7:

[1873] Server: Query and retrieve the user's past wine consumption history.

[1874] Server: Runs the wine recommendation algorithm to identify wines that the user is likely to like.

[1875] Server: The emotion engine takes into account the user's emotional state and also suggests wines that have a relaxing effect.

[1876] Server: Sends wine recommendation results to the terminal.

[1877] Terminal: Display suggested wines so the user can review them.

[1878] Step 8:

[1879] Server: Searches for and ranks appropriate menus based on the user's diet goals.

[1880] Server: Performs goal-adaptive recommendations that also take emotional states into account.

[1881] Server: Sends the goal-adaptive recommendation results to the terminal.

[1882] On the device: Display the suggestion so the user can review it. For example, display a comment like, "This salad is low in calories and may help you relax. It's a good fit for your goals."

[1883] Example 2

[1884] 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."

[1885] It is difficult for users to find the right meal or restaurant based on their preferences, allergies, diet goals, and even their emotional state. Existing recommendation systems cannot take the user's emotional state into account, and therefore cannot fully increase user satisfaction. Furthermore, selecting the right meal while browsing a restaurant menu is time-consuming. Therefore, a system that allows users to receive optimal meal suggestions in real time based on their input information and emotions is needed.

[1886] 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.

[1887] In this invention, the server includes an input means for inputting a user's preferences, allergy information, and diet goals, an analysis means for analyzing the user's preferences based on the information input via the input means and past meal data, a generation means for generating a list of appropriate restaurant and meal suggestions based on the analysis means, an emotion recognition means for recognizing the user's emotional state, and an adjustment means for adjusting recommendations in consideration of the emotion information obtained from the emotion recognition means. This allows users to easily find the best meals and restaurants that suit their preferences and emotional state, thereby improving their satisfaction.

[1888] "User" refers to an individual who utilizes the system to input preferences, allergy information, diet goals, and emotional state and receive meal suggestions based on the results.

[1889] "Preferences" refers to information about the types of ingredients and dishes that a user likes.

[1890] "Allergy information" refers to information about ingredients or substances that a user cannot consume.

[1891] "Diet goal" refers to the weight loss or nutritional balance goal that a user wants to achieve.

[1892] "Input means" refers to an interface that allows a user to input preferences, allergy information, diet goals, and emotional state into the system.

[1893] "Analysis means" refers to means for analyzing a user's preferences and needs based on information entered by the user and past meal data.

[1894] The "generation means" refers to a means for generating a list of suitable restaurant and meal suggestions based on the information obtained by the analysis means.

[1895] "Emotion recognition means" refers to technology for recognizing the emotional state of a user from input information.

[1896] The "adjustment means" refers to a means for optimizing recommendations and providing them to users in consideration of the emotion information obtained from the emotion recognition means.

[1897] "Terminal" refers to a device on which a user launches an application and inputs data.

[1898] "Optical character recognition" refers to technology for extracting character information from image data.

[1899] "Recommendation means" refers to a means for generating and providing optimal meal suggestions to users in real time based on analyzed information.

[1900] "Dining hall" refers to a dining facility available to users.

[1901] The present invention is a system that proposes optimal meals by taking into account the user's preferences, allergy information, diet goals, and emotional state. This system consists of a terminal that provides a user interface and a server that analyzes data and generates proposals.

[1902] Hardware and Software Configuration

[1903] Device: A mobile device, such as a smartphone or tablet, used by a user on which the application is installed.

[1904] Server: A computer server with a high-performance database and analytical engine that stores data, analyzes it, and generates recommendations.

[1905] Emotion recognition engine: A software module that analyzes the user's emotional state from information entered by the user.

[1906] Optical Character Recognition (OCR): A software technique for extracting textual information from menu images.

[1907] Data entry and saving

[1908] Entering user information: The user launches the app on their device and enters their preferences, allergy information, diet goals, and emotional state. For example, they enter information such as "I like spicy food," "I have a nut allergy," "I want to lose weight," and "I'm currently feeling stressed."

[1909] Data transmission and storage: The device sends the entered information to the server, which stores it in a database. The data is encrypted before transmission and stored securely.

[1910] Data analysis and proposal generation

[1911] Preference analysis: The server analyzes the user's preferences and emotional state based on the stored data. For example, if the user has frequently selected "spicy food" in the past, it will detect a "preference for spicy food." The emotion recognition engine will also analyze information such as "current mood: stressed."

[1912] Recommendation generation: Based on the analysis results, the server generates a list of nearby restaurants and corresponding meal suggestions, taking into account the user's emotional state and prioritizing ingredients and menus that reduce stress.

[1913] Recommendation display and real-time suggestions

[1914] Sending and displaying the recommendation list: The server sends the generated recommendation list to the device, which then displays it to the user. For example, a specific message such as "I recommend a nearby Thai restaurant. They serve dishes that have a particularly relaxing effect" may be displayed.

[1915] Menu scanning and analysis: When a user arrives at a restaurant, they scan the menu using their device's camera. The device then sends the scanned image to the server, which then uses OCR technology to extract the text information from the menu. Based on the extracted information, the ingredients and calorie information for each menu item are analyzed. For example, the Tom Yum Kung menu item is analyzed and determined to be spicy and have 350 kcal.

[1916] Real-time suggestions: Based on the analysis results, the server selects the optimal menu based on the user's preferences, health goals, and emotional state, and sends the suggestions to the device in real time. Specific messages such as "This tom yum goong suits your tastes and is expected to have a relaxing effect" are displayed.

[1917] Example: Prompt sentence

[1918] "I like spicy food and I have a nut allergy. I'm feeling stressed right now. Can you recommend any restaurants or menus?"

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

[1920] Step 1:

[1921] A user taps the app icon on their device to launch the app. They then input their preferences (e.g., "I like spicy food"), allergy information (e.g., "I'm allergic to nuts"), diet goals (e.g., "I want to lose weight"), and emotional state (e.g., "I'm currently feeling stressed") via an input device. The input data here is basic information about the user's needs.

[1922] Step 2:

[1923] The device sends the input data (preferences, allergy information, diet goals, emotional state) to the server. The data is encrypted and securely protected. The server receives this data and stores it in a database. The input data becomes the raw data for analysis.

[1924] Step 3:

[1925] The server analyzes preferences and emotional state based on past meal data stored in a database and newly entered user data. The analysis means references past data to identify the user's cluster and predict preferences (e.g., detects a preference for spicy food). The emotion recognition engine analyzes the emotional state based on information such as "currently feeling stressed."

[1926] Step 4:

[1927] The server generates a list of nearby restaurants and corresponding meal suggestions based on the analysis results. The generator uses a scoring algorithm to rank suitable restaurants and menus. The output is a list of suggested restaurants and menus.

[1928] Step 5:

[1929] The server generates a recommendation list and sends it to the device. The device receives the recommendation list and displays it to the user. Specific messages displayed include, "We recommend a nearby Thai restaurant. They serve dishes that have a particularly relaxing effect." The input is the recommendation list from the server, and the output is a visual list displayed on the device.

[1930] Step 6:

[1931] A user arrives at a restaurant and scans the menu using the device's camera function. The input is the menu image taken by the user.

[1932] Step 7:

[1933] The device sends a menu image to the server. The server uses OCR technology to extract text information from the menu image. The extracted text data becomes the input, and the ingredients and calorie information is analyzed based on it. For example, "Tom Yum Kung" is analyzed and determined to be "spicy with 350 kcal." The output is the analyzed ingredients and calorie information.

[1934] Step 8:

[1935] Based on the analysis results, the server selects the optimal menu based on the user's preferences, health goals, and emotional state, and generates suggestions in real time. The device receives this and displays it to the user. A specific message such as "This tom yum goong suits your tastes and is expected to have a relaxing effect" is displayed. The input is the suggestion data from the server, and the output is the suggestion message on the device.

[1936] Step 9:

[1937] The server identifies and suggests wines that the user is likely to like based on their past wine consumption history. It also uses data from an emotion recognition engine to prioritize wines that have a relaxing effect. The input is past wine consumption data, and the output is a suggested wine list.

[1938] Step 10:

[1939] The server searches for low-calorie, nutritionally balanced menus based on the user's diet goals and generates suggestions. The device receives these and presents them to the user in the form of, "This salad is low in calories and has a relaxing effect. It's suitable for your goals." The input is a dataset related to the diet goals, and the output is a specific menu suggestion.

[1940] (Application example 2)

[1941] 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."

[1942] Existing food delivery systems do not provide optimal recommendations based on a user's preferences, allergy information, diet goals, or even emotional state, making it difficult to provide a satisfying service tailored to each individual user. Furthermore, they lack a mechanism for automatically analyzing restaurant menu information and placing appropriate orders in real time. This makes it difficult for users to select the meal that best suits them, resulting in a decrease in satisfaction after ordering.

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

[1944] In this invention, the server includes input means for inputting a user's preferences, allergy information, and diet goals, analysis means for analyzing the user's preferences based on the information input via the input means and past meal data, generation means for recommending appropriate restaurants and meal menus based on the analysis means, an emotion engine for recognizing the user's emotional state, and display means for displaying the generated recommendation list to the user. This makes it possible to suggest optimal restaurants and menus that meet the user's diverse needs and emotional state, further increasing user satisfaction.

[1945] "User preferences" refers to the preferences that a user has for food, and means a favorable preference for specific flavors and characteristics of individual ingredients or dishes.

[1946] "Allergy information" refers to information about ingredients or substances that a user cannot consume or that may cause an allergic reaction if consumed.

[1947] "Diet goal" refers to a health or physical objective that a user wishes to achieve, such as losing weight or body fat, or gaining muscle.

[1948] "Input means" refers to a device or interface for a user to input information, including a keyboard, touch screen, voice input, etc.

[1949] "Analysis means" refers to software or algorithms that use input data to analyze user preferences and attributes and derive appropriate results.

[1950] "Generation means" refers to a function for generating optimal menu and restaurant recommendations for a user based on the analyzed data.

[1951] An "emotion engine" refers to technology that analyzes a user's current emotional state and provides information and services that correspond to that emotion.

[1952] "Display means" refers to a display or screen for visually presenting the generated recommendation list and information to the user.

[1953] "Camera function" refers to the ability to take pictures and videos using a digital camera, and is often found on smartphones and tablets.

[1954] "Optical character recognition" is a technology that extracts text information from scanned images, and is an abbreviation for OCR (Optical Character Recognition).

[1955] "Ordering means" refers to a system or function for confirming and processing an order for the menu item selected by the user.

[1956] "Recommendation means" refers to functions and mechanisms for recommending optimal options to users based on analysis results.

[1957] The system embodying this invention takes into account a user's preferences, allergy information, diet goals, and emotional state when ordering a meal, and recommends appropriate restaurants and menus. This system uses the following hardware and software:

[1958] Hardware and software used

[1959] Smartphone: A device where users input information and receive recommendations.

[1960] Cloud server: Analyzes the input information and generates optimal recommendations. This uses Node.js and Express.

[1961] Database: Stores user preferences and past meal data. MongoDB is used.

[1962] Emotion analysis engine: Software for analyzing the user's emotional state, powered by IBM Watson.

[1963] Optical Character Recognition (OCR): A technology used to extract text information from scanned images of menus, powered by Google Cloud Vision.

[1964] System Operation Overview

[1965] 1. Data Entry

[1966] The user launches the smartphone app and inputs their preferences, allergy information, diet goals, and emotional state, which is then sent to the server and stored in a database.

[1967] 2. Data Analysis

[1968] The server analyzes the user's preferences and emotional state based on the input information and past meal data, and uses an emotion analysis engine (IBM Watson) to identify the user's current emotional state.

[1969] 3. Recommendation Generation

[1970] The server generates appropriate restaurant and menu options based on the analysis results, taking into account the user's current emotional state and may prioritize ingredients and menu items that have a relaxing effect.

[1971] 4. Recommendation display

[1972] The generated recommendation list is displayed on the smartphone, and the user can review the list and select restaurants and menus that suit their preferences.

[1973] 5. Scan the menu

[1974] When a user arrives at a restaurant, they scan the menu using their smartphone's camera, which sends the scanned image to a server where optical character recognition (OCR) technology extracts the text information.

[1975] 6. Real-time suggestions

[1976] The server analyzes the extracted text information to obtain information on ingredients and calories, and then suggests optimal menu items to the user in real time.

[1977] 7. Order Processing

[1978] After scanning, the user selects the most suitable item from the recommended menu and confirms the order. The order information is sent to the server for appropriate processing.

[1979] Specific examples

[1980] User A likes spicy food, has a nut allergy, and wants to lose weight. He also inputs that he is currently feeling stressed. The app sends this information to the server and begins analysis. Based on the user's preferences and emotional state, the server recommends "spicy Thai curry with chicken breast" from a nearby restaurant, accompanied by a relaxing herbal tea. User A selects this and completes the order, allowing him to enjoy a meal that meets his diet goal while reducing stress.

[1981] Prompt Sentence Examples

[1982] User information: spicy food, nut allergy, want to lose weight, stressed

[1983] Recommendations: Based on the algorithm's analysis, suggest meals that best fit the user's preferences and health goals. For example, "Spicy Thai Curry with Chicken Breast" with a relaxing herbal tea. Include calorie information and the relaxing effect of the menu.

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

[1985] Step 1:

[1986] The user launches the smartphone app and inputs their preferences, allergy information, diet goals, and emotional state.

[1987] Input: Preferences, allergy information, diet goals, and emotional state data

[1988] Output: The input data is sent to the server in the form of a request.

[1989] What happens: The user enters the required information using the text boxes and drop-down menus and presses the submit button.

[1990] Step 2:

[1991] The server stores the entered information in a database.

[1992] Input: Submitted preferences, allergy information, diet goals, and emotional state data

[1993] Output: User information stored in the database

[1994] What it does: The server parses the data it receives, converts it into the appropriate format, and inserts it into a database such as MongoDB.

[1995] Step 3:

[1996] The server analyzes the user's preferences and emotional state based on past meal data and newly entered information.

[1997] Input: Past meal data stored in the database, new input data

[1998] Output: Analysis results based on user preferences and emotional state

[1999] How it works: The server uses an analytical algorithm to extract user trends from past data and uses an emotion analysis engine (IBM Watson) to identify the user's current emotional state.

[2000] Step 4:

[2001] The server generates the optimal restaurant and meal menu based on the analysis results.

[2002] Input: Analysis results (user preferences, allergy information, diet goals, emotional state)

[2003] Output: A list of restaurants and menus suitable for the user

[2004] What it does: Searches a database of restaurants and uses a scoring algorithm to generate a list of recommendations.

[2005] Step 5:

[2006] The generated recommendation list is displayed to the user.

[2007] Input: A list of restaurants and menus suitable for the user

[2008] Output: Recommendation list displayed on a smartphone screen

[2009] Specific behavior: The smartphone app receives the response from the server and displays the recommendation list on the user interface.

[2010] Step 6:

[2011] A user arrives at a restaurant and scans the menu using the camera function on their smartphone.

[2012] Input: scanned image of menu

[2013] Output: Scanned image data sent to the server

[2014] What happens: The user activates the camera scan feature within the app and takes a picture of the menu.

[2015] Step 7:

[2016] The server extracts text information from the scanned image and obtains ingredient and calorie information.

[2017] Input: Scanned image data of the menu

[2018] Output: Extracted text information, ingredients, and calorie information

[2019] Specific operation: The server uses the Google Cloud Vision API to perform OCR processing, extract text information, and analyze it.

[2020] Step 8:

[2021] The server proposes the most suitable menu to the user in real time based on the extracted text information.

[2022] Input: Extracted text information, ingredients, and calorie information

[2023] Output: A list of optimal menus to be displayed to the user

[2024] Specific operation: The server selects the most suitable menu based on the user's preferences and analyzed menu information and sends it to the smartphone.

[2025] Step 9:

[2026] The user confirms the order of the menu selected.

[2027] Input: The menu item selected by the user

[2028] Output: Confirmed order information

[2029] Specific operation: The user selects from the recommended menu and presses the order button. The server receives and processes the order information.

[2030] 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.

[2031] 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.

[2032] 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.

[2033] 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.

[2034] 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.

[2035] 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.

[2036] 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).

[2037] 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.

[2038] 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."

[2039] 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.

[2040] 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).

[2041] 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.

[2042] 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.

[2043] 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.

[2044] 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.

[2045] 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.

[2046] 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.

[2047] 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.

[2048] 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.

[2049] 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.

[2050] 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.

[2051] The following is further disclosed regarding the above embodiment.

[2052] (Claim 1)

[2053] input means for inputting the user's preferences, allergy information, and diet goals;

[2054] analysis means for analyzing the user's preferences based on the information input via the input means and past meal data;

[2055] A generating means for recommending appropriate restaurants and meal menus based on the analyzing means;

[2056] A system including:

[2057] (Claim 2)

[2058] A device with a camera function to scan restaurant menus,

[2059] optical character recognition means for extracting text information from the scanned image of the menu;

[2060] an analysis means for acquiring information on ingredients and calories based on the text information;

[2061] The system of claim 1 further comprising:

[2062] (Claim 3)

[2063] 3. The system according to claim 2, further comprising a recommendation means for proposing an optimal menu based on the analyzed information on ingredients and calories and the user's preferences.

[2064] (Claim 4)

[2065] 2. The system according to claim 1, further comprising a wine suggestion unit that suggests wines that the user is likely to like based on a past wine consumption history.

[2066] (Claim 5)

[2067] 2. The system according to claim 1, further comprising a goal-adaptive recommendation means for suggesting a menu having appropriate nutritional information according to a user's diet goal.

[2068] (Claim 6)

[2069] 2. The system according to claim 1, further comprising a display means for displaying the suggestion results on the terminal in real time based on the user's preference analysis results, past meal history, and diet goals.

[2070] "Example 1"

[2071] (Claim 1)

[2072] input means for inputting the user's preferences, allergy information, and diet goals;

[2073] analysis means for analyzing the user's preferences based on the information input via the input means and past meal data;

[2074] A generating means for recommending appropriate restaurants and meal menus based on the analyzing means;

[2075] a sending means for sending the recommendation obtained by the generating means to a user terminal;

[2076] optical character recognition means for scanning restaurant menu images input from the terminal and extracting text information;

[2077] an analysis means for analyzing information about ingredients and calories based on the text information;

[2078] a recommendation means for suggesting a menu suitable for the user in real time based on the analysis result by the analysis means;

[2079] A system including:

[2080] (Claim 2)

[2081] a terminal equipped with a camera function for scanning the restaurant menu;

[2082] optical character recognition means for extracting text information from the scanned image of the menu;

[2083] an analysis means for acquiring information on ingredients and calories based on the text information;

[2084] The system of claim 1 further comprising:

[2085] (Claim 3)

[2086] 3. The system according to claim 2, further comprising a recommendation means for proposing an optimal menu based on the analyzed information on ingredients and calories and the user's preferences.

[2087] "Application Example 1"

[2088] (Claim 1)

[2089] input means for inputting the user's preferences, allergy information, and diet goals;

[2090] analysis means for analyzing the user's preferences based on the information input via the input means and past meal data;

[2091] A generation means for recommending appropriate dining facilities and meal menus based on the analysis means;

[2092] A means of obtaining information to scan the menu and check ingredients and calorie information before ordering.

[2093] Recommendation methods to make suggestions that match your past dietary history and health goals,

[2094] A system including:

[2095] (Claim 2)

[2096] a terminal equipped with an imaging means for scanning restaurant menus;

[2097] optical character recognition means for extracting text information from the scanned image of the menu;

[2098] an analysis means for analyzing information about ingredients and calories based on the text information;

[2099] a communication means for transmitting the image information to a server and acquiring an analysis result;

[2100] a generating means for generating a recommendation based on the analysis result acquired via the communication means;

[2101] The system of claim 1 further comprising:

[2102] (Claim 3)

[2103] 3. The system according to claim 1 or 2, further comprising suggestion means for identifying and suggesting beverages that the user is likely to like based on past consumption information.

[2104] "Example 2: Combining Emotion Engines"

[2105] (Claim 1)

[2106] input means for inputting the user's preferences, allergy information, and diet goals;

[2107] analysis means for analyzing the user's preferences based on the information input via the input means and past meal data;

[2108] generating means for generating a list of suitable restaurants and meal suggestions based on the analysis means;

[2109] emotion recognition means for recognizing an emotional state of a user;

[2110] an adjustment means for adjusting the recommendation taking into consideration the emotion information obtained from the emotion recognition means;

[2111] A system including:

[2112] (Claim 2)

[2113] A device with a photo function for scanning restaurant menus,

[2114] optical character recognition means for extracting textual information from the scanned image of the menu;

[2115] an analysis means for acquiring ingredient and nutritional information based on the character information;

[2116] The system of claim 1 further comprising:

[2117] (Claim 3)

[2118] 3. The system according to claim 2, further comprising a recommendation means for generating optimal meal suggestions in real time based on the analyzed ingredients and nutritional information and the user's preferences.

[2119] "Application example 2 when combining emotion engines"

[2120] (Claim 1)

[2121] input means for inputting the user's preferences, allergy information, and diet goals;

[2122] analysis means for analyzing the user's preferences based on the information input via the input means and past meal data;

[2123] A generating means for recommending appropriate restaurants and meal menus based on the analyzing means;

[2124] an emotion engine for recognizing the emotional state of a user;

[2125] a display means for displaying the generated recommendation list to a user;

[2126] A system including:

[2127] (Claim 2)

[2128] A device with a camera function to scan restaurant menus,

[2129] optical character recognition means for extracting text information from the scanned image of the menu;

[2130] an analysis means for acquiring information on ingredients and calories based on the text information;

[2131] ordering means for processing an order based on a user's selection in the generated recommendation list;

[2132] The system of claim 1 further comprising:

[2133] (Claim 3)

[2134] 3. The system according to claim 2, further comprising a recommendation means for proposing an optimal menu based on the analyzed information on ingredients and calories, as well as the user's preferences and emotional state. [Explanation of symbols]

[2135] 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. input means for inputting the user's preferences, allergy information, and diet goals; analysis means for analyzing the user's preferences based on the information input via the input means and past meal data; A generating means for recommending appropriate restaurants and meal menus based on the analyzing means; A system including:

2. A device with a camera function to scan restaurant menus, optical character recognition means for extracting text information from the scanned image of the menu; an analysis means for acquiring information on ingredients and calories based on the text information; The system of claim 1 further comprising:

3. The system according to claim 2, further comprising a recommendation means for proposing an optimal menu based on the analyzed information on ingredients and calories and the user's preferences.

4. The system according to claim 1, further comprising a wine suggestion unit that suggests wines that the user is likely to like based on a past wine consumption history.

5. The system according to claim 1 , further comprising a goal-adaptive recommendation means for suggesting menus having appropriate nutritional information according to a user's dietary goal.

6. The system according to claim 1 , further comprising display means for displaying the suggestion results on the terminal in real time based on the results of the user's preference analysis, past meal history, and diet goals.

Citation Information

Patent Citations

  • Persona chatbot control method and system

    JP2022180282A