System

The system addresses the inefficiencies of manual input in reading recommendations by using image and OCR technologies to analyze bookshelf images and generate personalized book suggestions based on genre and publication year, enhancing user convenience and accuracy.

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

Patent Information

Application Number
JP2024116317
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 reading recommendation systems require users to manually input their reading history, which is time-consuming and inaccurate, and fail to adequately consider publication year and genre, leading to low accuracy in recommending books that match user interests.

Method used

A system that uses image recognition and optical character recognition technologies to extract book information from a user's bookshelf image, analyzes reading habits based on genre and publication year, and generates personalized recommendations.

Benefits of technology

Enables users to receive highly accurate book recommendations by simply taking a picture of their bookshelf, improving convenience and enriching the reading experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026014843000001_ABST
    Figure 2026014843000001_ABST
Patent Text Reader

Abstract

A system is provided.SOLUTION: A system, comprising: means for a user to capture an image; means for a terminal to send the captured image to a server; means for the server to extract information of a book from the received image; means for the server to analyze the extracted information to determine a reading habit of the user; means for the server to generate a recommendation based on the reading habit of the user; and means for the terminal to display the generated recommendation to the user.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

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

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

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

[0004] The present invention relates to a system for understanding a user's reading habits and recommending the next book to read based on that understanding. Conventional reading recommendation systems require users to manually input their reading history, which is not only time-consuming but also makes it difficult to accurately understand reading habits. Furthermore, recommendations do not adequately take into account publication year and genre, resulting in a low accuracy in recommending books that match the user's interests.

[0005] Therefore, an object of the present invention is to provide a system that automatically grasps a user's reading habits by inputting an image of the user's bookshelf, and recommends books that suit the user with high accuracy. [Means for solving the problem]

[0006] The system of the present invention comprises a means for a user to take an image, a means for the terminal to send the taken image to a server, a means for the server to extract book information from the received image, a means for the server to analyze the extracted information and grasp the user's reading habits, a means for the server to generate recommendations based on the user's reading habits, and a means for the terminal to display the generated recommendations to the user.

[0007] In particular, the server uses image recognition technology to extract book titles and author names from images, and optical character recognition technology to convert this information into text. Furthermore, the server can analyze the user's reading habits based on the extracted information and make highly accurate recommendations that take into account publication year and genre. This allows users to automatically receive recommendations for their next book to read simply by providing an image of their bookshelf, improving convenience and enriching the user's reading experience.

[0008] "User" refers to an individual who uses the system to take a picture of their bookshelf, have their reading habits analyzed, and receive recommendations.

[0009] "Terminal" refers to the device that a user uses to take an image of the bookshelf and send it to the server. Specifically, this applies to smartphones and PCs.

[0010] "Server" refers to a computer system that analyzes received images, understands the user's reading habits, and generates recommendations.

[0011] "Image recognition technology" refers to technology for identifying and recognizing objects in an image. Examples include algorithms such as YOLO and Faster R-CNN.

[0012] "Optical character recognition technology" is a technology that extracts characters from an image and converts them into text data. It is also called OCR (Optical Character Recognition).

[0013] "Reading trends" refers to patterns and tendencies such as the genre, publication year, and author of books a user has read in the past.

[0014] "Recommendation" refers to selecting and recommending the next book that matches the user's reading habits.

[0015] A "database" refers to a systematically organized collection of data for storing and referencing extracted book information. [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] This invention relates to a system that allows a user to take an image of their bookshelf, analyzes the image to understand the user's reading habits, and recommends the next book to read based on that information. This system is designed to be easy for users to use, and operates through the cooperation of a terminal and a server.

[0038] Program Generation and Processing Description

[0039] 1. The user takes a picture of the bookshelf

[0040] The user uses the smartphone camera to take a picture of their bookshelf, capturing the entire shelf in the image.

[0041] 2. The device sends the image to the server

[0042] The user's smartphone (device) makes an HTTP POST request to send the captured image file to the server, which also includes user authentication information.

[0043] 3. The server receives the image

[0044] The server passes the received image file to the analysis module, where it is temporarily stored on the server's disk.

[0045] 4. The server recognizes the book in the image

[0046] The server uses image recognition technology to identify the area of ​​each book placed on the shelf, using algorithms such as YOLO and Faster R-CNN.

[0047] 5. The server extracts the book title and author name

[0048] The server uses optical character recognition (OCR) technology to extract text information, such as the title and author name, from the identified book region, which is then checked against a database.

[0049] 6. The server organizes the book information

[0050] The server stores the extracted book information in a database, supplementing each book with detailed information such as the title, author, publication year, and genre.

[0051] 7. The server analyzes the user's reading habits

[0052] The server analyzes the user's reading habits based on the organized book information, such as bias toward specific genres and distribution of publication years.

[0053] 8. The server selects the next book

[0054] The server uses a recommendation algorithm to select the next book to read based on the user's reading habits, as well as external data such as reviews, author interviews, and bookstore fairs.

[0055] 9. The server generates the recommendation results

[0056] The server generates a list of selected books in JSON format and sends it to the terminal.

[0057] 10. The device receives and displays the recommendation results

[0058] The user's smartphone (terminal) receives the recommendation results sent from the server and displays them to the user via a dedicated application or web interface.

[0059] Specific examples

[0060] Users take a photo of their bookshelf with their smartphone and send it to the server via the application. The server analyzes the image and extracts titles such as "Harry Potter and the Philosopher's Stone" or "The Da Vinci Code" and author names. This information is then compared with an internal database to confirm publication dates such as 1997 or 2003.

[0061] The server then analyzes the user's reading habits based on the information from these books, determining that the user is interested in fantasy and mystery novels, and further confirming that the user has a strong interest in works published in the early 2000s.

[0062] The server references external data and, based on this information, adds related works such as "Inferno" and "Percy Jackson & the Olympians" to a recommendation list, which is then sent to the device in JSON format. Finally, the recommendation is displayed on the user's smartphone, allowing the user to check detailed information about the next book to read.

[0063] This allows users to automatically obtain the optimal reading list by simply providing an image of their bookshelf, allowing them to effortlessly find the next book to read. This system improves user convenience and provides a richer reading experience.

[0064] The processing flow will be explained below.

[0065] Step 1:

[0066] The user takes a picture of the bookshelf.

[0067] The user takes a picture of the bookshelf using the camera on their smartphone, making sure that the entire bookshelf is included in the image.

[0068] Step 2:

[0069] The device sends the captured image to the server.

[0070] The device (user's smartphone) uploads the captured image file to the server using an HTTP POST request, which also includes user authentication information.

[0071] Step 3:

[0072] The server receives the image.

[0073] The server receives the HTTP request and stores the image file in a temporary location, along with the corresponding user identification information.

[0074] Step 4:

[0075] The server recognizes the book in the image.

[0076] The server uses an image recognition algorithm (e.g., YOLO or Faster R-CNN) to identify the region of each book in the image. In this step, the shape and position of the book in the image are detected.

[0077] Step 5:

[0078] The server extracts the book title and author name.

[0079] The server uses optical character recognition (OCR) technology to extract text information such as the title and author name from the identified book region. The resulting strings are temporarily stored.

[0080] Step 6:

[0081] The server checks the extracted information against a database.

[0082] The server compares the text information obtained by OCR with the title and author information in its internal database to obtain related publication year and genre information. This comparison improves the accuracy of the extracted information.

[0083] Step 7:

[0084] The server aggregates users' reading data.

[0085] The server aggregates all book information to create a user's reading profile, including book title, author, publication year, genre, and more.

[0086] Step 8:

[0087] The server analyzes interests by genre and age group.

[0088] The server analyzes the user's reading profile to identify trends in interest in specific genres and publication years, thereby understanding patterns in the books the user has read in the past.

[0089] Step 9:

[0090] The server learns the relevant information.

[0091] The server learns about related works by referencing external databases such as review sites, author interviews, and bookstore fair data, thereby improving the accuracy of finding new books that match the user's interests.

[0092] Step 10:

[0093] The server selects the next book.

[0094] The server uses collaborative filtering and content-based recommendation algorithms to select the next book to read based on the user's reading habits and external data.

[0095] Step 11:

[0096] The server generates the recommendation results.

[0097] The server generates a list of books to read next in JSON format and prepares it for sending to the device.

[0098] Step 12:

[0099] The device receives the recommendation results.

[0100] The device (user's smartphone) receives the recommendation results sent from the server. The received data is in JSON format.

[0101] Step 13:

[0102] The device displays the recommendation results to the user.

[0103] The device analyzes the received recommendation results and displays them to the user through a user interface, allowing the user to check the list of books to read next and detailed information.

[0104] Example 1

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

[0106] Conventional reading recommendation systems require users to manually input information about the books they have read, which is time-consuming and makes it difficult to accurately grasp the user's reading habits. Furthermore, they often fail to provide appropriate recommendations that reflect the user's reading habits. This makes it difficult for users to efficiently find the next book they should read, and this has led to issues with the reading experience not being improved.

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

[0108] In this invention, the server includes means for the user to take an image, means for the terminal to send the taken image to the server, means for the server to extract book information from the received image, means for the server to analyze the extracted information and grasp the user's reading habits, means for the server to generate recommendations based on the user's reading habits, and means for the terminal to display the generated recommendations to the user. This allows the user to receive automatic recommendations of books to read next simply by taking an image of their bookshelf.

[0109] A "user" refers to an entity that takes an image of their own bookshelf and provides the information to the system.

[0110] "Terminal" refers to the device (e.g., smartphone or tablet) that a user uses to take an image and send it to a server.

[0111] The "server" refers to a computer system that analyzes received images, extracts book information, understands the user's reading habits, and generates a recommendation list.

[0112] "Image" refers to photo data of a bookshelf taken by a user using a terminal.

[0113] "Book information" refers to various data related to a book, such as the book title, author name, publication year, genre, etc.

[0114] "User reading habits" refers to a user's reading patterns and preferences based on the genres and trends of books the user has read to date, the distribution of publication years, and so on.

[0115] "Recommendation" refers to a suggestion of a book selected by the server as the next book to read based on the user's reading habits.

[0116] "Image recognition technology" refers to technology that detects specific objects from image data and identifies their areas.

[0117] "Optical character recognition technology" refers to the technology for extracting text information from images of books.

[0118] "Receiving" refers to the server receiving data sent from the terminal.

[0119] "Analysis" refers to the analysis of information based on the data received by the server.

[0120] This invention relates to a system that allows a user to take an image of their bookshelf, analyzes the image to understand the user's reading habits, and recommends the next book to read based on that information. This system is designed to be easy for users to use, and operates through the cooperation of a terminal and a server.

[0121] First, the user takes a picture of the bookshelf using the smartphone camera. The image is saved in the smartphone's internal storage. The device then uses a dedicated application to send the image file to the server. This is done using an HTTP POST request, which also includes user authentication information.

[0122] The server extracts the image file and user authentication information from the received HTTP POST request, temporarily stores the image file in the server's storage, and then uses an image recognition algorithm (e.g., YOLO, Faster R-CNN) to detect the regions of each book in the image, thereby identifying which parts are individual books.

[0123] The server then uses optical character recognition (OCR) technology (e.g., Tesseract) to extract text information from the book's domain. Based on the extracted text information, the server obtains the book's title and author name and stores them in a string format. The server then connects to a database management system (e.g., MySQL, PostgreSQL) to store this information in a database, and completes any necessary additional information (such as publication year and genre) by matching it with external APIs or internal data sources.

[0124] Based on the information stored in the database, the server uses data analysis tools (e.g., Python, R) to analyze the user's reading habits. For example, if the user has a preference for a particular genre, the server identifies this preference and updates the user profile. The server then uses a recommendation algorithm (e.g., collaborative filtering) to select the next book to read based on the user's reading habits. It also takes into account external data such as reviews and author interviews.

[0125] The server generates a list of selected books in JSON format, including detailed information such as the book title, author, publication year, genre, and reviews. Finally, the device receives the JSON data sent from the server and displays it to the user via a dedicated application or web interface. The user can then check the details of the recommended books and plan their next reading.

[0126] As a concrete example, a user takes a picture of their bookshelf with their smartphone and sends it to a server via an application. The server analyzes the received image and extracts titles such as "Fictional Book Title A" and "Fictional Book Title B" and author names. This information is compared with an internal database to confirm, for example, the publication year and genre. The server then analyzes the user's reading habits based on this book information and determines, for example, that the user is interested in fantasy and mystery novels. It then adds related books to a recommendation list and sends it to the device in JSON format. Finally, the user's smartphone displays these recommendations, allowing the user to check detailed information about the next book they should read.

[0127] Examples of prompts to be input into a generative AI model include, "Please generate a program for a system that takes a photo of a bookshelf, analyzes it, understands the user's reading habits, and recommends the next book they should read," and "Please explain the process of analyzing a photo of a bookshelf and recommending appropriate books to a user who has a reading tendency biased toward a particular genre."

[0128] This system will enable users to simply provide an image of their bookshelf and automatically receive recommendations on what books to read next, dramatically improving convenience.

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

[0130] Step 1:

[0131] The user takes a picture of the bookshelf.

[0132] Input: Your smartphone camera.

[0133] Specific actions: The user opens the camera app on their smartphone and takes a picture that fits the entire bookshelf.

[0134] Output: The captured image file (e.g., JPEG format) is saved to the smartphone's internal storage.

[0135] Step 2:

[0136] The device sends the image to the server.

[0137] Input: The captured image file and user credentials (e.g. API key or token).

[0138] Specific operation: The user launches the dedicated application on the device and taps the "Upload image" button. The user selects a saved image and selects "Send" when a confirmation dialog box appears asking whether to send the image to the server.

[0139] Output: An HTTP POST request is sent to the server containing the image file and the user's credentials.

[0140] Step 3:

[0141] The server receives the image.

[0142] Input: Image file and user credentials in an HTTP POST request.

[0143] What happens: The server receives the request, verifies whether the authentication information is correct, and if the authentication is successful, saves the image file to a temporary directory on the server.

[0144] Output: An image file saved in a temporary directory and the success / failure status of the authentication.

[0145] Step 4:

[0146] The server recognizes the book in the image.

[0147] Input: Image files saved in a temporary directory.

[0148] What it does: The server uses an image processing algorithm (e.g., YOLO, Faster R-CNN) to detect the regions of each book in the image.

[0149] Output: Coordinates indicating the area of ​​each book.

[0150] Step 5:

[0151] The server extracts the book title and author name.

[0152] Input: Coordinate information indicating the area of ​​each book.

[0153] Specific operation: The server uses optical character recognition (OCR) technology (e.g., Tesseract) to extract text information from the book region, and obtains the book title and author name based on the extracted text information.

[0154] Output: A list of book titles and authors.

[0155] Step 6:

[0156] The server organizes the book information.

[0157] Input: A list of book titles and author names.

[0158] What it does: The server connects to a database management system (e.g., MySQL, PostgreSQL) and stores this information in a database. It also retrieves additional information from an external API, such as publication year and genre, and adds it to the database.

[0159] Output: Complete book information stored in a database.

[0160] Step 7:

[0161] The server analyzes the user's reading habits.

[0162] Input: Book information stored in the database.

[0163] What it does: The server uses data analysis tools (e.g., Python, R) to analyze the user's reading habits and update the user profile based on biases toward specific genres and publication years.

[0164] Output: Updated user profile and reading habits analysis.

[0165] Step 8:

[0166] The server selects the next book.

[0167] Input: Updated user profile and reading habits analysis.

[0168] What it does: The server uses a recommendation algorithm (e.g., collaborative filtering) to select the next book to read, taking into account external data (e.g., reviews, author interviews, etc.).

[0169] Output: A list of recommended books.

[0170] Step 9:

[0171] The server generates the recommendation results.

[0172] Input: A list of recommended books.

[0173] What happens: The server formats the recommended book information into JSON format, which includes details such as the book title, author, publication year, genre, and reviews.

[0174] Output: A list of recommended books formatted in JSON.

[0175] Step 10:

[0176] The device receives and displays the recommendation results.

[0177] Input: A list of recommended books in JSON format.

[0178] Specific operation: The device receives the JSON data sent from the server and displays it to the user via a dedicated application or web interface. The user can then check the detailed information of the recommended books.

[0179] Output: A screen showing detailed information about the recommended book.

[0180] The above is a detailed description of the specific processing steps of the system and the data processing and data calculations performed in each step.

[0181] (Application example 1)

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

[0183] In recent years, with the spread of food delivery services, users are increasingly faced with the challenge of selecting the most suitable dish from a wide variety of menus. Finding the dish that best suits one's food preferences among the many options available is a time-consuming and laborious task. There is also a need for systems that can provide personalized recommendations that take into account a user's past eating history and preferences.

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

[0185] In this invention, the server includes means for a user to take an image, means for a terminal to send the taken image to the server, means for the server to extract meal information from the received image, means for the server to analyze the extracted information and understand the user's food preferences, means for the server to generate recommendations based on the user's food preferences, and means for the terminal to display the generated recommendations to the user. This allows a user to easily find the next dish that suits their preferences by simply taking an image of their meal.

[0186] "User" refers to any individual or organization that uses this system.

[0187] "Image" means visual information captured by a user using a smartphone or other imaging device.

[0188] "Terminal" refers to a device used by a user, such as a smartphone or tablet.

[0189] "Server" refers to a computer system that provides services over a network, such as analyzing images, storing data, and generating recommendations.

[0190] "Meal information" refers to the names of ingredients, dishes, and other related information extracted from the captured image.

[0191] "Food preferences" refers to personal preferences such as the types of food and drinks a user likes, cooking preferences, and seasoning preferences.

[0192] "Recommendations" refers to information about dishes and restaurants suggested based on the user's food preferences.

[0193] "Image recognition technology" refers to technology for detecting specific objects or text from images and identifying their content.

[0194] "Optical character recognition technology" means technology that converts character information in an image into digital text.

[0195] "Display" refers to the act of visually providing information to a user on a terminal screen.

[0196] This invention is a system that allows users to find restaurants and cuisines that suit their food preferences. This system is realized through a series of steps: the user takes an image, analyzes the image to understand the user's food preferences, and generates and displays recommendations based on the image.

[0197] System Configuration

[0198] The system consists of the following main elements:

[0199] 1. User's device

[0200] The user's device is a smartphone or tablet, and the built-in camera is used to take pictures of the food.

[0201] 2. Server

[0202] It is a computer system that provides services over the network, and performs image analysis, data storage, and recommendation generation. Image analysis uses image recognition technologies such as YOLO and Faster R-CNN.

[0203] Pytesseract is used as the optical character recognition (OCR) technology.

[0204] Program processing explanation

[0205] Taking and uploading images

[0206] A user takes a photo of their daily meal using the camera app on their smartphone. This image is temporarily saved in the smartphone's storage. The image file is then sent to the server via an HTTP POST request using the requests library, including user authentication information.

[0207] Image analysis and data extraction

[0208] The server temporarily stores the received image files on its disk for analysis. Next, it uses image recognition algorithms such as YOLO and Faster R-CNN to identify the meal contents and ingredients. It then uses pytesseract to extract text information from the images and identify the names of ingredients and dishes.

[0209] Understanding user preferences

[0210] The server uses the extracted information to store and analyze the user's food preferences in a database, making it possible to understand preferences for specific dishes or ingredients, as well as trends in favorite dishes.

[0211] Recommendation generation

[0212] Based on the analysis results, the server recommends the food and restaurant that best suits the user's preferences. It also references external data such as reviews and ratings from other users. The recommendation information is generated in JSON format and sent to the user's device.

[0213] Displaying recommendations

[0214] The user's device displays the received recommendation information in a dedicated application or web interface, where the user can check detailed information about the next dish to order.

[0215] Examples of concrete examples and prompts

[0216] Specific examples

[0217] A user takes a photo of "sushi" with their smartphone and uploads it to the server via the application. The server analyzes the received image and identifies ingredients such as "sushi" and "sashimi." It then uses OCR technology to extract menu items and restaurant names. Based on this information, the server determines that the user likes Japanese food and recommends sushi restaurants and related menu items. Finally, these recommendations are displayed on the smartphone screen, allowing the user to easily select the next dish or restaurant to visit.

[0218] Prompt Sentence Examples

[0219] "Take a photo of your recent meal. We'll analyze it and suggest your next meal based on your preferences. Why not try sushi or Japanese cuisine today?"

[0220] In this way, the present invention provides a system that allows users to choose their daily meals in an enjoyable and efficient manner.

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

[0222] Step 1:

[0223] A user takes a picture of a meal using the camera app on their smartphone. At this time, the image is temporarily saved in the smartphone's storage. The input data is the image of the meal, and the output data is the saved image file. Specifically, the user launches the camera app and presses the capture button to capture the image.

[0224] Step 2:

[0225] The device sends the captured image to the server. The image file is transferred to the server using an HTTP POST request. The request also includes authentication information such as the user ID. The input data is the saved image file and user authentication information, and the output data is the image received by the server. Specifically, the requests library is used to upload the image file to the server.

[0226] Step 3:

[0227] The server temporarily saves the image file it receives. The image file is saved to the server's disk for analysis. The input data is the image file sent to the server, and the output data is the image file saved to the disk. Specifically, the server saves the image file to a specified directory.

[0228] Step 4:

[0229] The server extracts meal information from the image. It uses image recognition technology (YOLO or Faster R-CNN) to identify ingredients and dish names in the image. It also uses OCR technology (pytesseract) to extract text information from the image. The input data is an image file stored on disk, and the output data is the extracted text information of ingredients and dish names. Specifically, it runs an image analysis algorithm to obtain the identified ingredients and text information.

[0230] Step 5:

[0231] The server saves the extracted information in a database and analyzes the user's food preferences. In order to understand biases towards specific dishes or ingredients, the data is analyzed by comparing it with the history stored in the database. The input data is the text information of the extracted ingredients and dish names, and the output data is the analyzed user preference information. Specifically, the extracted data is saved in a database and compared with past data to analyze preference trends.

[0232] Step 6:

[0233] The server generates optimal recommendations for the user based on the analysis results. Recommendations are generated by referring to reviews and ratings from other users. The input data is the analyzed user preference information, and the output data is the recommendation information in JSON format. Specifically, the recommendation algorithm is executed to select appropriate dishes and restaurants.

[0234] Step 7:

[0235] The device receives the recommendation information sent from the server and visually displays it to the user. The input data is the JSON data of the recommendation sent from the server, and the output data is the recommendation information displayed on the device's display. Specifically, the device reads the recommendation information using a dedicated application or web interface and presents it to the user.

[0236] In this way, users can get personalized recommendations for dishes and restaurants based on photos of their meals.

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

[0238] The present invention relates to a system that allows a user to take an image of their bookshelf, analyzes the image to understand the user's reading habits, and recommends the next book to read based on that information.The present invention also includes a function that recognizes the user's emotions by combining it with an emotion engine and makes more advanced recommendations.

[0239] Program Generation and Processing Description

[0240] 1. The user takes a picture of the bookshelf

[0241] The user takes a picture of their bookshelf using the smartphone camera, making sure that the entire bookshelf is included in the image.

[0242] 2. The device sends the image it has taken to the server

[0243] The user's smartphone (device) uploads the captured image file to the server using an HTTP POST request, which also includes user authentication information.

[0244] 3. The server receives the image

[0245] The server receives the HTTP request and stores the image file in a temporary location, along with the corresponding user identification information.

[0246] 4. The server recognizes the book in the image

[0247] The server uses an image recognition algorithm (e.g., YOLO or Faster R-CNN) to identify the region of each book in the image. In this step, the shape and position of the book in the image are detected.

[0248] 5. The server extracts the book title and author name

[0249] The server uses optical character recognition (OCR) technology to extract text information such as the title and author name from the identified book region. The resulting strings are temporarily stored.

[0250] 6. The server checks the extracted information against a database

[0251] The server compares the text information obtained by OCR with the title and author information in its internal database to obtain related publication year and genre information. This comparison improves the accuracy of the extracted information.

[0252] 7. The server aggregates user reading data

[0253] The server aggregates all book information to create a user's reading profile, including book title, author, publication year, genre, and more.

[0254] 8. The server analyzes genre and age-based interests

[0255] The server analyzes the user's reading profile to identify trends in interest in specific genres and publication years, thereby understanding patterns in the books the user has read in the past.

[0256] 9. Emotion Recognition Using Emotion Engine

[0257] The server uses an emotion engine to recognize the user's emotions. The emotion engine recognizes the user's emotions about the book they have read through methods such as analyzing the user's reading history, facial expressions, and text input.

[0258] 10. The server selects the next book

[0259] The server selects the next book to read based on the user's reading habits and the emotion recognition results of the emotion engine, using collaborative filtering and content-based recommendation algorithms.

[0260] 11. The server generates the recommendation results

[0261] The server generates a list of books to read next in JSON format and prepares it for sending to the device.

[0262] 12. The device receives and displays the recommendation results

[0263] The user's smartphone (device) receives the recommendation results sent from the server and displays them to the user via a dedicated application or web interface. The user can then check the list of books they should read next and detailed information.

[0264] Specific examples

[0265] Users take a photo of their bookshelf with their smartphone and send it to the server via the application. The server analyzes the image and extracts titles such as "Harry Potter and the Philosopher's Stone" or "The Da Vinci Code" and author names. This information is then compared with an internal database to confirm publication dates such as 1997 or 2003.

[0266] The server then analyzes the user's reading habits based on this book information, determining that the user is interested in fantasy and mystery novels. It then uses an emotion engine to analyze the user's feelings toward the book. Using facial expression analysis, the server can detect that the user smiled frequently while reading a particular book and recognize that the book left a positive impression on the user.

[0267] As a result, the server adds related works such as "Inferno" and "Percy Jackson & the Olympians" to a recommendation list and sends it to the device in JSON format. The user's smartphone displays this recommendation, allowing the user to check detailed information about the next book they should read.

[0268] This allows users to not only automatically obtain the optimal reading list by simply providing an image of their bookshelf, but also receive more accurate reading recommendations through emotion recognition. This system improves user convenience and provides a richer reading experience.

[0269] The processing flow will be explained below.

[0270] Step 1:

[0271] The user takes a picture of the bookshelf.

[0272] The user takes a picture of the bookshelf using the camera on their smartphone, making sure that the entire bookshelf is included in the image.

[0273] Step 2:

[0274] The device sends the captured image to the server.

[0275] The device (user's smartphone) uploads the captured image file to the server using an HTTP POST request, which also includes user authentication information.

[0276] Step 3:

[0277] The server receives the image.

[0278] The server receives the HTTP request and stores the image file in a temporary location, along with the corresponding user identification information.

[0279] Step 4:

[0280] The server recognizes the book in the image.

[0281] The server uses an image recognition algorithm (e.g., YOLO or Faster R-CNN) to identify the region of each book in the image. In this step, the shape and position of the book in the image are detected.

[0282] Step 5:

[0283] The server extracts the book title and author name.

[0284] The server uses optical character recognition (OCR) technology to extract text information such as the title and author name from the identified book area, and stores this information as text data.

[0285] Step 6:

[0286] The server checks the extracted information against a database.

[0287] The server compares the text information obtained by OCR with the title and author information in its internal database to obtain relevant publication year and genre information, thereby improving the accuracy of the extracted information.

[0288] Step 7:

[0289] The server aggregates users' reading data.

[0290] The server aggregates all book information and creates a reading profile for the user, including book title, author, publication year, genre, and other information.

[0291] Step 8:

[0292] The server analyzes interests by genre and age group.

[0293] The server analyzes the user's reading profile to identify trends in interest in specific genres and publication years, thereby understanding patterns in the books the user has read in the past.

[0294] Step 9:

[0295] Recognize user emotions using an emotion engine.

[0296] The server's emotion engine analyzes images and videos taken by the user in front of the bookshelf and recognizes emotions from the user's facial expressions, voice, gestures, etc. The emotion engine uses this information to understand the user's emotional response to their reading history.

[0297] Step 10:

[0298] The server integrates the emotion recognition results into the user's reading profile.

[0299] The server integrates the emotion data obtained by the emotion engine into the user's reading profile to further improve the accuracy of reading habits.

[0300] Step 11:

[0301] The server learns the relevant information.

[0302] The server queries external databases such as review sites, author interviews, and bookstore fair data to learn about related works, improving the accuracy of finding new books that match the user's interests.

[0303] Step 12:

[0304] The server selects the next book.

[0305] The server selects the next book to read based on the user's reading habits, emotion recognition results, and external data, using collaborative filtering and content-based recommendation algorithms.

[0306] Step 13:

[0307] The server generates the recommendation results.

[0308] The server generates a list of books to read next in JSON format and prepares it for sending to the device.

[0309] Step 14:

[0310] The device receives the recommendation results.

[0311] The device (user's smartphone) receives the recommendation results sent from the server. The received data is in JSON format.

[0312] Step 15:

[0313] The device displays the recommendation results to the user.

[0314] The device analyzes the received recommendation results and displays them to the user through a user interface, allowing the user to check the list of books to read next and detailed information.

[0315] Example 2

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

[0317] Conventional reading recommendation systems require users to manually input their reading history, which is cumbersome and makes it difficult to accurately grasp reading trends. In addition, since recommendations do not take into account the user's emotions, there is an issue that recommendations cannot be made that are completely tailored to the user's preferences.

[0318] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes a means for a user to take an image, a means for a terminal to send the taken image to the server, a means for the server to extract book information from the image received, a means for the server to analyze the extracted information and grasp the user's reading habits, a means for the server to generate recommendations based on the user's reading habits, a means for the terminal to display the generated recommendations to the user, a means for the server to recognize the user's emotions, and a means for the server to generate recommendations based on the emotion recognition results. As a result, an optimal reading list can be automatically generated simply by the user providing an image of their bookshelf, and highly accurate recommendations that take the user's emotions into consideration are also possible.

[0319] "User" refers to a person who uses the system to take pictures of their bookshelves and receive recommendations.

[0320] "Terminal" refers to the device used by the user to take an image of the bookshelf and send the image to the server. This primarily includes mobile devices such as smartphones and tablets.

[0321] The "server" refers to a computer system that receives images sent by users, analyzes them, and generates reading recommendations. It includes a database and an analysis engine.

[0322] The "means for taking an image" refers to a camera function or an application that provides a function for a user to take an image of the bookshelf.

[0323] "Means of transmission" refers to the communication function used by the device to send the captured image to the server, for example, using an HTTP POST request.

[0324] "Means for extracting book information from images" refers to the technology used by the server to identify information such as the book title and author name from the images received. Specifically, this includes image recognition algorithms and optical character recognition technology.

[0325] "Means of analyzing and understanding the user's reading habits" refers to the process of analyzing the user's reading history and interests based on the book information extracted by the server.

[0326] "Means for generating recommendations" refers to the algorithm that the server uses to recommend the next book the user should read based on the analysis results.

[0327] "Display means" refers to an interface that visually presents the generated recommendation results to the user, including a dedicated application and a web interface.

[0328] "Means for recognizing emotions" refers to the technology used by the server to analyze and understand the user's emotions, including facial expression analysis and text input analysis.

[0329] "Means for generating recommendations based on emotion recognition results" refers to an algorithm that allows the server to reflect emotion recognition results and provide more accurate reading recommendations.

[0330] The present invention relates to a system that allows a user to take an image of their bookshelf, analyzes the image to understand the user's reading habits, and recommends the next book to read based on that information.The present invention also includes a function that recognizes the user's emotions by combining it with an emotion engine and makes more advanced recommendations.

[0331] The user takes a full-size image of the bookshelf using the smartphone camera. This image is sent to the server via a dedicated application. The application then generates an HTTP POST request to send the captured image file and user authentication information to the server.

[0332] The server receives the HTTP request and temporarily stores the image file. It also stores the received user identification information in a database. The server then uses Python to invoke the YOLO (You Only Look Once) model to identify the area of ​​each book in the image. The identified area is then enclosed in a rectangle, and this information is passed to the next analysis step.

[0333] The server then uses an OCR (Optical Character Recognition) library (e.g., Tesseract) to extract text information such as the title and author name from the identified book region. The extracted strings are then formatted and converted into a user-readable form. The extracted text information is also matched with title and author information in an internal database to obtain relevant publication year and genre information.

[0334] The server aggregates all book information and creates a reading profile for the user. This profile includes the book title, author, publication year, and genre, and the server analyzes the user's reading habits based on this information. Furthermore, the server uses an emotion engine (for example, Microsoft Azure's Emotion API) to recognize the user's emotions by analyzing the user's facial expressions and text comments. These results are also reflected in the reading profile.

[0335] The server runs a collaborative filtering algorithm, combining the user's reading habits with emotion recognition results to select the next book to read. The generated recommendation results are sent to the device in JSON format. The user's smartphone receives this information and displays it to the user through a dedicated application or web interface.

[0336] As a concrete example, consider the case where a user takes a picture of their bookshelf with their smartphone and sends it to a server via an application. The server identifies titles and authors, such as "Harry Potter and the Philosopher's Stone" and "The Da Vinci Code," and retrieves associated publication dates, such as 1997 and 2003, from a database. The server analyzes the user's reading habits and determines that they are interested in fantasy and mystery novels. It then uses an emotion engine to detect that the user smiled frequently while reading these books.

[0337] As a result, the server adds related titles, such as "Inferno" and "Percy Jackson & the Olympians," to a recommendation list and sends it to the device in JSON format. The user's smartphone receives this information and can display it within the application.

[0338] As an example of a prompt, you can ask the system the following questions:

[0339] "Please recommend me the next book I should read based on the trends in the books I own. Please analyze this bookshelf image."

[0340] "Please recommend new books based on your impressions of the books you have read so far."

[0341] "Please analyze the image of the bookshelf and recommend books for me."

[0342] This system allows users to automatically obtain the optimal reading list simply by providing an image of their bookshelf, and can also receive even more accurate reading recommendations through emotion recognition.

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

[0344] Program processing flow

[0345] Step 1:

[0346] The user takes a picture of the bookshelf

[0347] Specific operation: The user launches the camera app on their smartphone and takes an image that captures the entire bookshelf.

[0348] Input: An image of a bookshelf.

[0349] Output: Image files saved in your smartphone's gallery.

[0350] Step 2:

[0351] The device sends the captured image to the server.

[0352] How it works: The user launches the app and selects the image of the bookshelf they just took. The app then generates an HTTP POST request to send the image file along with the user's authentication information to the server.

[0353] Input: User authentication information, image file of the bookshelf.

[0354] Output: Image file and user authentication information sent to the server.

[0355] Step 3:

[0356] The server receives the image

[0357] What happens: The server analyzes the received HTTP request, temporarily stores the image file, and stores the associated user identification information in a database.

[0358] Input: The image file and user identification information included in the HTTP request.

[0359] Output: Temporarily saved image file, saved user identification information.

[0360] Step 4:

[0361] The server recognizes the book in the image

[0362] How it works: The server uses a Python script to call the YOLO (You Only Look Once) model to identify the area of ​​each book in the image, which is then enclosed in a rectangle.

[0363] Input: A temporarily saved image file.

[0364] Output: Area information for each book enclosed in a rectangle.

[0365] Step 5:

[0366] The server extracts the book title and author name

[0367] Specific operation: The server uses an OCR (Optical Character Recognition) library (e.g., Tesseract) to extract text information such as the title and author name from the identified book region. The extracted strings are then formatted in post-processing.

[0368] Input: Region information for each identified book.

[0369] Output: Extracted text information of book title and author name.

[0370] Step 6:

[0371] The server checks the extracted information against a database

[0372] How it works: The server compares the text information obtained by OCR with the title and author information in its internal database, and retrieves relevant publication year and genre information. It uses SQL queries to match the information.

[0373] Input: Extracted text information of book title and author name.

[0374] Output: Corresponding publication year and genre information.

[0375] Step 7:

[0376] The server aggregates user reading data

[0377] What it does: The server aggregates all the book information and creates a reading profile for the user, which includes the book title, author, publication year, and genre.

[0378] Input: Matched book information (title, author, year of publication, genre).

[0379] Output: The user's reading profile.

[0380] Step 8:

[0381] The server analyzes genre and age-based interests

[0382] What it does: The server uses analytics tools (e.g., Pandas or Scikit-learn) to analyze the user's reading profile, identifying trends in interests across specific genres and publication years.

[0383] Input: The user's reading profile.

[0384] Output: Analyzed user interest trends.

[0385] Step 9:

[0386] Emotion Recognition Using Emotion Engine

[0387] Specific operation: The server uses an emotion engine (for example, Microsoft Azure's Emotion API) to recognize the user's emotions, including the user's reading history, facial expression analysis, and text input analysis.

[0388] Input: User's reading history, facial expression images, and text comments.

[0389] Output: User emotion recognition results.

[0390] Step 10:

[0391] The server selects the next book.

[0392] Specific operation: The server runs a collaborative filtering algorithm to select the next book to read based on the user's reading habits and emotion recognition results.

[0393] Input: Analyzed user interest trends, emotion recognition results.

[0394] Output: A list of books to read next.

[0395] Step 11:

[0396] The server generates the recommendation results

[0397] What happens: The server generates a list of books to read next in JSON format and prepares to save the results to an API endpoint.

[0398] Input: A list of books to read next.

[0399] Output: Generated recommendation results (JSON format).

[0400] Step 12:

[0401] The device receives and displays the recommendation results.

[0402] Specific operation: The user's smartphone (device) accesses the API endpoint, parses the received JSON data, and displays it to the user through a dedicated application or web interface.

[0403] Input: JSON data retrieved from an API endpoint.

[0404] Output: The recommendation results displayed to the user.

[0405] (Application example 2)

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

[0407] Conventional reading recommendation systems simply recommend the next book a user should read based on their reading history. This makes it difficult to provide more personalized recommendations that take into account the user's emotions and mood at the time. Furthermore, there is a demand for devices that can display information more efficiently than just mobile devices. To address this, the present invention combines a wearable display device and emotion recognition functionality to improve the user experience and enhance the convenience of reading.

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

[0409] In this invention, the server includes means for a user to take an image, means for a terminal to send the taken image to the server, means for the server to extract product information from the image received, means for the server to analyze the extracted information and grasp the user's preference trends, means for the server to generate recommendations based on the user's preference trends, means for the terminal to display the generated recommendations to the user, means for displaying the recommendation results through a display device worn by the user, and an emotion recognition engine that recognizes the user's emotions and affects the analysis results. This enables personalized recommendations that take into account the user's emotions and mood at the time, and allows information to be displayed more efficiently.

[0410] "User" refers to an individual or group that uses an information processing system.

[0411] "Means for capturing images" refers to devices and techniques that allow a user to record visual information as digital data.

[0412] "Terminal" refers to a device that a user directly operates to input information or display received information.

[0413] A "server" refers to a computer system that stores and processes data over a network and provides services to other computers.

[0414] "Item information" refers to specific data about an item, such as its name, author, publication date, etc.

[0415] "Preference trends" refer to trends in personal preferences and interests based on a user's past activities and choices.

[0416] "Recommendation" refers to a system function that suggests appropriate options and information to users.

[0417] "Display device" refers to a hardware device for visually presenting information, such as smart glasses or a head-mounted display.

[0418] An "emotion recognition engine" refers to software or hardware that analyzes data such as a user's facial expressions, voice, and text to identify emotions.

[0419] "Image recognition technology" refers to technology that analyzes visual information in digital images and videos and recognizes specific patterns and objects.

[0420] "Optical character recognition technology" refers to technology that reads characters in an image as digital data.

[0421] A system for implementing this invention includes a display device worn by a user, a server, and a terminal. The user uses the camera on the display device to take pictures of items they have brought with them. The terminal processes the images and sends the data to the server. The server extracts information about the items from the received images and uses the results to analyze the user's preferences. Based on the analysis results, the server recommends the next item to read and provides the information to the user via the display device.

[0422] Furthermore, the server is equipped with an emotion recognition engine that recognizes the user's emotions and reflects them in the analysis results, enabling personalized recommendations that match the user's mood at the time.

[0423] The hardware includes smart glasses, head-mounted displays, terminals, and servers, while the software uses image recognition algorithms (such as YOLO and Faster R-CNN), Tesseract OCR (optical character recognition technology), collaborative filtering engines, and emotion recognition engines.

[0424] As a specific example, a user wears smart glasses while riding in an autonomous vehicle and takes an image of an item using the glasses' camera. The device sends the image to a server, which uses image recognition technology to extract the item's name and author's name. The server then uses optical character recognition technology to read detailed text information and compares it with an in-house database to obtain more detailed information. Based on the results, the system analyzes the user's reading habits and generates recommendations that take into account their mood at the time using an emotion recognition engine. Finally, information about the next item to read is displayed on the smart glasses' display.

[0425] An example of a prompt is:

[0426] "The user puts on the smart glasses and takes a picture of the item. The server recognizes the item and analyzes the user's preferences. As a result, it recommends the next appropriate item to read."

[0427] There is.

[0428] This system not only allows users to efficiently select their next reading item in an autonomous vehicle, but also provides a personalized reading experience that is tailored to their mood at the time.

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

[0430] Step 1:

[0431] A user takes an image of an item using the camera of the display device.

[0432] Input: Actual item

[0433] Output: Digital image of the item

[0434] Specific operation: The user points the camera of the smart glasses at an object and presses the shutter button to capture an image.

[0435] Step 2:

[0436] The terminal transmits the captured image data to the server.

[0437] Input: Digital image of the item

[0438] Output: Image data sent to the server

[0439] Specific operation: The smart glasses generate an HTTP POST request and send the captured image data and user authentication information to the server.

[0440] Step 3:

[0441] The server receives and stores the transmitted image data.

[0442] Input: Image data, user authentication information

[0443] Output: Saved image data

[0444] Specific operation: The server receives the HTTP request, stores the image data in a temporary storage area, and records the corresponding user authentication information.

[0445] Step 4:

[0446] The server uses image recognition technology to extract the name and related information of the item.

[0447] Input: Saved image data

[0448] Output: Text information of the item (name, author name, etc.)

[0449] Specific operation: The server uses the YOLO or Faster R-CNN algorithm to identify the object area in the image, and then extracts text information from the identified area using OCR technology.

[0450] Step 5:

[0451] The server compares the extracted text information with a database.

[0452] Input: Extracted text information

[0453] Output: Confirmed item information

[0454] Specific operation: The server accesses an internal database and compares the extracted text information to obtain detailed information such as the name of the item, author, publication year, and genre.

[0455] Step 6:

[0456] The server aggregates and updates the user's reading profile.

[0457] Input: Confirmed item information

[0458] Output: Updated reading profile

[0459] Specific operation: The server adds the newly acquired item information to the user's existing reading profile, keeping the user's preferences up to date.

[0460] Step 7:

[0461] The server uses an emotion recognition engine to analyze the user's emotions.

[0462] Input: User reading history, facial expression data, text input data

[0463] Output: Parsed emotion data

[0464] Specific operation: The server launches an emotion recognition engine and comprehensively analyzes the user's accumulated data, such as reading history, facial expression capture, and text input, to identify the user's emotional state.

[0465] Step 8:

[0466] The server selects the next item to read and generates recommendations.

[0467] Input: Updated reading profile, parsed sentiment data

[0468] Output: A list of recommended items

[0469] How it works: The server uses collaborative filtering and content-based recommendation algorithms to select the next item to read based on the user's individual reading habits and emotional state, and creates a recommendation list.

[0470] Step 9:

[0471] The device receives the recommendation results and displays them to the user.

[0472] Input: List of recommended items

[0473] Output: Recommendation results displayed to the user

[0474] Specific operation: The smart glasses receive the recommendation results sent from the server and display them on the visual display, allowing the user to check the next item to read.

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

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

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

[0478] [Second embodiment]

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

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

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

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

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

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

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

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

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

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

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

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

[0491] This invention relates to a system that allows a user to take an image of their bookshelf, analyzes the image to understand the user's reading habits, and recommends the next book to read based on that information. This system is designed to be easy for users to use, and operates through the cooperation of a terminal and a server.

[0492] Program Generation and Processing Description

[0493] 1. The user takes a picture of the bookshelf

[0494] The user uses the smartphone camera to take a picture of their bookshelf, capturing the entire shelf in the image.

[0495] 2. The device sends the image to the server

[0496] The user's smartphone (device) makes an HTTP POST request to send the captured image file to the server, which also includes user authentication information.

[0497] 3. The server receives the image

[0498] The server passes the received image file to the analysis module, where it is temporarily stored on the server's disk.

[0499] 4. The server recognizes the book in the image

[0500] The server uses image recognition technology to identify the area of ​​each book placed on the shelf, using algorithms such as YOLO and Faster R-CNN.

[0501] 5. The server extracts the book title and author name

[0502] The server uses optical character recognition (OCR) technology to extract text information, such as the title and author name, from the identified book region, which is then checked against a database.

[0503] 6. The server organizes the book information

[0504] The server stores the extracted book information in a database, supplementing each book with detailed information such as the title, author, publication year, and genre.

[0505] 7. The server analyzes the user's reading habits

[0506] The server analyzes the user's reading habits based on the organized book information, such as bias toward specific genres and distribution of publication years.

[0507] 8. The server selects the next book

[0508] The server uses a recommendation algorithm to select the next book to read based on the user's reading habits, as well as external data such as reviews, author interviews, and bookstore fairs.

[0509] 9. The server generates the recommendation results

[0510] The server generates a list of selected books in JSON format and sends it to the terminal.

[0511] 10. The device receives and displays the recommendation results

[0512] The user's smartphone (terminal) receives the recommendation results sent from the server and displays them to the user via a dedicated application or web interface.

[0513] Specific examples

[0514] Users take a photo of their bookshelf with their smartphone and send it to the server via the application. The server analyzes the image and extracts titles such as "Harry Potter and the Philosopher's Stone" or "The Da Vinci Code" and author names. This information is then compared with an internal database to confirm publication dates such as 1997 or 2003.

[0515] The server then analyzes the user's reading habits based on the information from these books, determining that the user is interested in fantasy and mystery novels, and further confirming that the user has a strong interest in works published in the early 2000s.

[0516] The server references external data and, based on this information, adds related works such as "Inferno" and "Percy Jackson & the Olympians" to a recommendation list, which is then sent to the device in JSON format. Finally, the recommendation is displayed on the user's smartphone, allowing the user to check detailed information about the next book to read.

[0517] This allows users to automatically obtain the optimal reading list by simply providing an image of their bookshelf, allowing them to effortlessly find the next book to read. This system improves user convenience and provides a richer reading experience.

[0518] The processing flow will be explained below.

[0519] Step 1:

[0520] The user takes a picture of the bookshelf.

[0521] The user takes a picture of the bookshelf using the camera on their smartphone, making sure that the entire bookshelf is included in the image.

[0522] Step 2:

[0523] The device sends the captured image to the server.

[0524] The device (user's smartphone) uploads the captured image file to the server using an HTTP POST request, which also includes user authentication information.

[0525] Step 3:

[0526] The server receives the image.

[0527] The server receives the HTTP request and stores the image file in a temporary location, along with the corresponding user identification information.

[0528] Step 4:

[0529] The server recognizes the book in the image.

[0530] The server uses an image recognition algorithm (e.g., YOLO or Faster R-CNN) to identify the region of each book in the image. In this step, the shape and position of the book in the image are detected.

[0531] Step 5:

[0532] The server extracts the book title and author name.

[0533] The server uses optical character recognition (OCR) technology to extract text information such as the title and author name from the identified book region. The resulting strings are temporarily stored.

[0534] Step 6:

[0535] The server checks the extracted information against a database.

[0536] The server compares the text information obtained by OCR with the title and author information in its internal database to obtain related publication year and genre information. This comparison improves the accuracy of the extracted information.

[0537] Step 7:

[0538] The server aggregates users' reading data.

[0539] The server aggregates all book information to create a user's reading profile, including book title, author, publication year, genre, and more.

[0540] Step 8:

[0541] The server analyzes interests by genre and age group.

[0542] The server analyzes the user's reading profile to identify trends in interest in specific genres and publication years, thereby understanding patterns in the books the user has read in the past.

[0543] Step 9:

[0544] The server learns the relevant information.

[0545] The server learns about related works by referencing external databases such as review sites, author interviews, and bookstore fair data, thereby improving the accuracy of finding new books that match the user's interests.

[0546] Step 10:

[0547] The server selects the next book.

[0548] The server uses collaborative filtering and content-based recommendation algorithms to select the next book to read based on the user's reading habits and external data.

[0549] Step 11:

[0550] The server generates the recommendation results.

[0551] The server generates a list of books to read next in JSON format and prepares it for sending to the device.

[0552] Step 12:

[0553] The device receives the recommendation results.

[0554] The device (user's smartphone) receives the recommendation results sent from the server. The received data is in JSON format.

[0555] Step 13:

[0556] The device displays the recommendation results to the user.

[0557] The device analyzes the received recommendation results and displays them to the user through a user interface, allowing the user to check the list of books to read next and detailed information.

[0558] Example 1

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

[0560] Conventional reading recommendation systems require users to manually input information about the books they have read, which is time-consuming and makes it difficult to accurately grasp the user's reading habits. Furthermore, they often fail to provide appropriate recommendations that reflect the user's reading habits. This makes it difficult for users to efficiently find the next book they should read, and this has led to issues with the reading experience not being improved.

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

[0562] In this invention, the server includes means for the user to take an image, means for the terminal to send the taken image to the server, means for the server to extract book information from the received image, means for the server to analyze the extracted information and grasp the user's reading habits, means for the server to generate recommendations based on the user's reading habits, and means for the terminal to display the generated recommendations to the user. This allows the user to receive automatic recommendations of books to read next simply by taking an image of their bookshelf.

[0563] A "user" refers to an entity that takes an image of their own bookshelf and provides the information to the system.

[0564] "Terminal" refers to the device (e.g., smartphone or tablet) that a user uses to take an image and send it to a server.

[0565] The "server" refers to a computer system that analyzes received images, extracts book information, understands the user's reading habits, and generates a recommendation list.

[0566] "Image" refers to photo data of a bookshelf taken by a user using a terminal.

[0567] "Book information" refers to various data related to a book, such as the book title, author name, publication year, genre, etc.

[0568] "User reading habits" refers to a user's reading patterns and preferences based on the genres and trends of books the user has read to date, the distribution of publication years, and so on.

[0569] "Recommendation" refers to a suggestion of a book selected by the server as the next book to read based on the user's reading habits.

[0570] "Image recognition technology" refers to technology that detects specific objects from image data and identifies their areas.

[0571] "Optical character recognition technology" refers to the technology for extracting text information from images of books.

[0572] "Receiving" refers to the server receiving data sent from the terminal.

[0573] "Analysis" refers to the analysis of information based on the data received by the server.

[0574] This invention relates to a system that allows a user to take an image of their bookshelf, analyzes the image to understand the user's reading habits, and recommends the next book to read based on that information. This system is designed to be easy for users to use, and operates through the cooperation of a terminal and a server.

[0575] First, the user takes a picture of the bookshelf using the smartphone camera. The image is saved in the smartphone's internal storage. The device then uses a dedicated application to send the image file to the server. This is done using an HTTP POST request, which also includes user authentication information.

[0576] The server extracts the image file and user authentication information from the received HTTP POST request, temporarily stores the image file in the server's storage, and then uses an image recognition algorithm (e.g., YOLO, Faster R-CNN) to detect the regions of each book in the image, thereby identifying which parts are individual books.

[0577] The server then uses optical character recognition (OCR) technology (e.g., Tesseract) to extract text information from the book's domain. Based on the extracted text information, the server obtains the book's title and author name and stores them in a string format. The server then connects to a database management system (e.g., MySQL, PostgreSQL) to store this information in a database, and completes any necessary additional information (such as publication year and genre) by matching it with external APIs or internal data sources.

[0578] Based on the information stored in the database, the server uses data analysis tools (e.g., Python, R) to analyze the user's reading habits. For example, if the user has a preference for a particular genre, the server identifies this preference and updates the user profile. The server then uses a recommendation algorithm (e.g., collaborative filtering) to select the next book to read based on the user's reading habits. It also takes into account external data such as reviews and author interviews.

[0579] The server generates a list of selected books in JSON format, including detailed information such as the book title, author, publication year, genre, and reviews. Finally, the device receives the JSON data sent from the server and displays it to the user via a dedicated application or web interface. The user can then check the details of the recommended books and plan their next reading.

[0580] As a concrete example, a user takes a picture of their bookshelf with their smartphone and sends it to a server via an application. The server analyzes the received image and extracts titles such as "Fictional Book Title A" and "Fictional Book Title B" and author names. This information is compared with an internal database to confirm, for example, the publication year and genre. The server then analyzes the user's reading habits based on this book information and determines, for example, that the user is interested in fantasy and mystery novels. It then adds related books to a recommendation list and sends it to the device in JSON format. Finally, the user's smartphone displays these recommendations, allowing the user to check detailed information about the next book they should read.

[0581] Examples of prompts to be input into a generative AI model include, "Please generate a program for a system that takes a photo of a bookshelf, analyzes it, understands the user's reading habits, and recommends the next book they should read," and "Please explain the process of analyzing a photo of a bookshelf and recommending appropriate books to a user who has a reading tendency biased toward a particular genre."

[0582] This system will enable users to simply provide an image of their bookshelf and automatically receive recommendations on what books to read next, dramatically improving convenience.

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

[0584] Step 1:

[0585] The user takes a picture of the bookshelf.

[0586] Input: Your smartphone camera.

[0587] Specific actions: The user opens the camera app on their smartphone and takes a picture that fits the entire bookshelf.

[0588] Output: The captured image file (e.g., JPEG format) is saved to the smartphone's internal storage.

[0589] Step 2:

[0590] The device sends the image to the server.

[0591] Input: The captured image file and user credentials (e.g. API key or token).

[0592] Specific operation: The user launches the dedicated application on the device and taps the "Upload image" button. The user selects a saved image and selects "Send" when a confirmation dialog box appears asking whether to send the image to the server.

[0593] Output: An HTTP POST request is sent to the server containing the image file and the user's credentials.

[0594] Step 3:

[0595] The server receives the image.

[0596] Input: Image file and user credentials in an HTTP POST request.

[0597] What happens: The server receives the request, verifies whether the authentication information is correct, and if the authentication is successful, saves the image file to a temporary directory on the server.

[0598] Output: An image file saved in a temporary directory and the success / failure status of the authentication.

[0599] Step 4:

[0600] The server recognizes the book in the image.

[0601] Input: Image files saved in a temporary directory.

[0602] What it does: The server uses an image processing algorithm (e.g., YOLO, Faster R-CNN) to detect the regions of each book in the image.

[0603] Output: Coordinates indicating the area of ​​each book.

[0604] Step 5:

[0605] The server extracts the book title and author name.

[0606] Input: Coordinate information indicating the area of ​​each book.

[0607] Specific operation: The server uses optical character recognition (OCR) technology (e.g., Tesseract) to extract text information from the book region, and obtains the book title and author name based on the extracted text information.

[0608] Output: A list of book titles and authors.

[0609] Step 6:

[0610] The server organizes the book information.

[0611] Input: A list of book titles and author names.

[0612] What it does: The server connects to a database management system (e.g., MySQL, PostgreSQL) and stores this information in a database. It also retrieves additional information from an external API, such as publication year and genre, and adds it to the database.

[0613] Output: Complete book information stored in a database.

[0614] Step 7:

[0615] The server analyzes the user's reading habits.

[0616] Input: Book information stored in the database.

[0617] What it does: The server uses data analysis tools (e.g., Python, R) to analyze the user's reading habits and update the user profile based on biases toward specific genres and publication years.

[0618] Output: Updated user profile and reading habits analysis.

[0619] Step 8:

[0620] The server selects the next book.

[0621] Input: Updated user profile and reading habits analysis.

[0622] What it does: The server uses a recommendation algorithm (e.g., collaborative filtering) to select the next book to read, taking into account external data (e.g., reviews, author interviews, etc.).

[0623] Output: A list of recommended books.

[0624] Step 9:

[0625] The server generates the recommendation results.

[0626] Input: A list of recommended books.

[0627] What happens: The server formats the recommended book information into JSON format, which includes details such as the book title, author, publication year, genre, and reviews.

[0628] Output: A list of recommended books formatted in JSON.

[0629] Step 10:

[0630] The device receives and displays the recommendation results.

[0631] Input: A list of recommended books in JSON format.

[0632] Specific operation: The device receives the JSON data sent from the server and displays it to the user via a dedicated application or web interface. The user can then check the detailed information of the recommended books.

[0633] Output: A screen showing detailed information about the recommended book.

[0634] The above is a detailed description of the specific processing steps of the system and the data processing and data calculations performed in each step.

[0635] (Application example 1)

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

[0637] In recent years, with the spread of food delivery services, users are increasingly faced with the challenge of selecting the most suitable dish from a wide variety of menus. Finding the dish that best suits one's food preferences among the many options available is a time-consuming and laborious task. There is also a need for systems that can provide personalized recommendations that take into account a user's past eating history and preferences.

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

[0639] In this invention, the server includes means for a user to take an image, means for a terminal to send the taken image to the server, means for the server to extract meal information from the received image, means for the server to analyze the extracted information and understand the user's food preferences, means for the server to generate recommendations based on the user's food preferences, and means for the terminal to display the generated recommendations to the user. This allows a user to easily find the next dish that suits their preferences by simply taking an image of their meal.

[0640] "User" refers to any individual or organization that uses this system.

[0641] "Image" means visual information captured by a user using a smartphone or other imaging device.

[0642] "Terminal" refers to a device used by a user, such as a smartphone or tablet.

[0643] "Server" refers to a computer system that provides services over a network, such as analyzing images, storing data, and generating recommendations.

[0644] "Meal information" refers to the names of ingredients, dishes, and other related information extracted from the captured image.

[0645] "Food preferences" refers to personal preferences such as the types of food and drinks a user likes, cooking preferences, and seasoning preferences.

[0646] "Recommendations" refers to information about dishes and restaurants suggested based on the user's food preferences.

[0647] "Image recognition technology" refers to technology for detecting specific objects or text from images and identifying their content.

[0648] "Optical character recognition technology" means technology that converts character information in an image into digital text.

[0649] "Display" refers to the act of visually providing information to a user on a terminal screen.

[0650] This invention is a system that allows users to find restaurants and cuisines that suit their food preferences. This system is realized through a series of steps: the user takes an image, analyzes the image to understand the user's food preferences, and generates and displays recommendations based on the image.

[0651] System Configuration

[0652] The system consists of the following main elements:

[0653] 1. User's device

[0654] The user's device is a smartphone or tablet, and the built-in camera is used to take pictures of the food.

[0655] 2. Server

[0656] It is a computer system that provides services over the network, and performs image analysis, data storage, and recommendation generation. Image analysis uses image recognition technologies such as YOLO and Faster R-CNN.

[0657] Pytesseract is used as the optical character recognition (OCR) technology.

[0658] Program processing explanation

[0659] Taking and uploading images

[0660] A user takes a photo of their daily meal using the camera app on their smartphone. This image is temporarily saved in the smartphone's storage. The image file is then sent to the server via an HTTP POST request using the requests library, including user authentication information.

[0661] Image analysis and data extraction

[0662] The server temporarily stores the received image files on its disk for analysis. Next, it uses image recognition algorithms such as YOLO and Faster R-CNN to identify the meal contents and ingredients. It then uses pytesseract to extract text information from the images and identify the names of ingredients and dishes.

[0663] Understanding user preferences

[0664] The server uses the extracted information to store and analyze the user's food preferences in a database, making it possible to understand preferences for specific dishes or ingredients, as well as trends in favorite dishes.

[0665] Recommendation generation

[0666] Based on the analysis results, the server recommends the food and restaurant that best suits the user's preferences. It also references external data such as reviews and ratings from other users. The recommendation information is generated in JSON format and sent to the user's device.

[0667] Displaying recommendations

[0668] The user's device displays the received recommendation information in a dedicated application or web interface, where the user can check detailed information about the next dish to order.

[0669] Examples of concrete examples and prompts

[0670] Specific examples

[0671] A user takes a photo of "sushi" with their smartphone and uploads it to the server via the application. The server analyzes the received image and identifies ingredients such as "sushi" and "sashimi." It then uses OCR technology to extract menu items and restaurant names. Based on this information, the server determines that the user likes Japanese food and recommends sushi restaurants and related menu items. Finally, these recommendations are displayed on the smartphone screen, allowing the user to easily select the next dish or restaurant to visit.

[0672] Prompt Sentence Examples

[0673] "Take a photo of your recent meal. We'll analyze it and suggest your next meal based on your preferences. Why not try sushi or Japanese cuisine today?"

[0674] In this way, the present invention provides a system that allows users to choose their daily meals in an enjoyable and efficient manner.

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

[0676] Step 1:

[0677] A user takes a picture of a meal using the camera app on their smartphone. At this time, the image is temporarily saved in the smartphone's storage. The input data is the image of the meal, and the output data is the saved image file. Specifically, the user launches the camera app and presses the capture button to capture the image.

[0678] Step 2:

[0679] The device sends the captured image to the server. The image file is transferred to the server using an HTTP POST request. The request also includes authentication information such as the user ID. The input data is the saved image file and user authentication information, and the output data is the image received by the server. Specifically, the requests library is used to upload the image file to the server.

[0680] Step 3:

[0681] The server temporarily saves the image file it receives. The image file is saved to the server's disk for analysis. The input data is the image file sent to the server, and the output data is the image file saved to the disk. Specifically, the server saves the image file to a specified directory.

[0682] Step 4:

[0683] The server extracts meal information from the image. It uses image recognition technology (YOLO or Faster R-CNN) to identify ingredients and dish names in the image. It also uses OCR technology (pytesseract) to extract text information from the image. The input data is an image file stored on disk, and the output data is the extracted text information of ingredients and dish names. Specifically, it runs an image analysis algorithm to obtain the identified ingredients and text information.

[0684] Step 5:

[0685] The server saves the extracted information in a database and analyzes the user's food preferences. In order to understand biases towards specific dishes or ingredients, the data is analyzed by comparing it with the history stored in the database. The input data is the text information of the extracted ingredients and dish names, and the output data is the analyzed user preference information. Specifically, the extracted data is saved in a database and compared with past data to analyze preference trends.

[0686] Step 6:

[0687] The server generates optimal recommendations for the user based on the analysis results. Recommendations are generated by referring to reviews and ratings from other users. The input data is the analyzed user preference information, and the output data is the recommendation information in JSON format. Specifically, the recommendation algorithm is executed to select appropriate dishes and restaurants.

[0688] Step 7:

[0689] The device receives the recommendation information sent from the server and visually displays it to the user. The input data is the JSON data of the recommendation sent from the server, and the output data is the recommendation information displayed on the device's display. Specifically, the device reads the recommendation information using a dedicated application or web interface and presents it to the user.

[0690] In this way, users can get personalized recommendations for dishes and restaurants based on photos of their meals.

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

[0692] The present invention relates to a system that allows a user to take an image of their bookshelf, analyzes the image to understand the user's reading habits, and recommends the next book to read based on that information.The present invention also includes a function that recognizes the user's emotions by combining it with an emotion engine and makes more advanced recommendations.

[0693] Program Generation and Processing Description

[0694] 1. The user takes a picture of the bookshelf

[0695] The user takes a picture of their bookshelf using the smartphone camera, making sure that the entire bookshelf is included in the image.

[0696] 2. The device sends the image it has taken to the server

[0697] The user's smartphone (device) uploads the captured image file to the server using an HTTP POST request, which also includes user authentication information.

[0698] 3. The server receives the image

[0699] The server receives the HTTP request and stores the image file in a temporary location, along with the corresponding user identification information.

[0700] 4. The server recognizes the book in the image

[0701] The server uses an image recognition algorithm (e.g., YOLO or Faster R-CNN) to identify the region of each book in the image. In this step, the shape and position of the book in the image are detected.

[0702] 5. The server extracts the book title and author name

[0703] The server uses optical character recognition (OCR) technology to extract text information such as the title and author name from the identified book region. The resulting strings are temporarily stored.

[0704] 6. The server checks the extracted information against a database

[0705] The server compares the text information obtained by OCR with the title and author information in its internal database to obtain related publication year and genre information. This comparison improves the accuracy of the extracted information.

[0706] 7. The server aggregates user reading data

[0707] The server aggregates all book information to create a user's reading profile, including book title, author, publication year, genre, and more.

[0708] 8. The server analyzes genre and age-based interests

[0709] The server analyzes the user's reading profile to identify trends in interest in specific genres and publication years, thereby understanding patterns in the books the user has read in the past.

[0710] 9. Emotion Recognition Using Emotion Engine

[0711] The server uses an emotion engine to recognize the user's emotions. The emotion engine recognizes the user's emotions about the book they have read through methods such as analyzing the user's reading history, facial expressions, and text input.

[0712] 10. The server selects the next book

[0713] The server selects the next book to read based on the user's reading habits and the emotion recognition results of the emotion engine, using collaborative filtering and content-based recommendation algorithms.

[0714] 11. The server generates the recommendation results

[0715] The server generates a list of books to read next in JSON format and prepares it for sending to the device.

[0716] 12. The device receives and displays the recommendation results

[0717] The user's smartphone (device) receives the recommendation results sent from the server and displays them to the user via a dedicated application or web interface. The user can then check the list of books they should read next and detailed information.

[0718] Specific examples

[0719] Users take a photo of their bookshelf with their smartphone and send it to the server via the application. The server analyzes the image and extracts titles such as "Harry Potter and the Philosopher's Stone" or "The Da Vinci Code" and author names. This information is then compared with an internal database to confirm publication dates such as 1997 or 2003.

[0720] The server then analyzes the user's reading habits based on this book information, determining that the user is interested in fantasy and mystery novels. It then uses an emotion engine to analyze the user's feelings toward the book. Using facial expression analysis, the server can detect that the user smiled frequently while reading a particular book and recognize that the book left a positive impression on the user.

[0721] As a result, the server adds related works such as "Inferno" and "Percy Jackson & the Olympians" to a recommendation list and sends it to the device in JSON format. The user's smartphone displays this recommendation, allowing the user to check detailed information about the next book they should read.

[0722] This allows users to not only automatically obtain the optimal reading list by simply providing an image of their bookshelf, but also receive more accurate reading recommendations through emotion recognition. This system improves user convenience and provides a richer reading experience.

[0723] The processing flow will be explained below.

[0724] Step 1:

[0725] The user takes a picture of the bookshelf.

[0726] The user takes a picture of the bookshelf using the camera on their smartphone, making sure that the entire bookshelf is included in the image.

[0727] Step 2:

[0728] The device sends the captured image to the server.

[0729] The device (user's smartphone) uploads the captured image file to the server using an HTTP POST request, which also includes user authentication information.

[0730] Step 3:

[0731] The server receives the image.

[0732] The server receives the HTTP request and stores the image file in a temporary location, along with the corresponding user identification information.

[0733] Step 4:

[0734] The server recognizes the book in the image.

[0735] The server uses an image recognition algorithm (e.g., YOLO or Faster R-CNN) to identify the region of each book in the image. In this step, the shape and position of the book in the image are detected.

[0736] Step 5:

[0737] The server extracts the book title and author name.

[0738] The server uses optical character recognition (OCR) technology to extract text information such as the title and author name from the identified book area, and stores this information as text data.

[0739] Step 6:

[0740] The server checks the extracted information against a database.

[0741] The server compares the text information obtained by OCR with the title and author information in its internal database to obtain relevant publication year and genre information, thereby improving the accuracy of the extracted information.

[0742] Step 7:

[0743] The server aggregates users' reading data.

[0744] The server aggregates all book information and creates a reading profile for the user, including book title, author, publication year, genre, and other information.

[0745] Step 8:

[0746] The server analyzes interests by genre and age group.

[0747] The server analyzes the user's reading profile to identify trends in interest in specific genres and publication years, thereby understanding patterns in the books the user has read in the past.

[0748] Step 9:

[0749] Recognize user emotions using an emotion engine.

[0750] The server's emotion engine analyzes images and videos taken by the user in front of the bookshelf and recognizes emotions from the user's facial expressions, voice, gestures, etc. The emotion engine uses this information to understand the user's emotional response to their reading history.

[0751] Step 10:

[0752] The server integrates the emotion recognition results into the user's reading profile.

[0753] The server integrates the emotion data obtained by the emotion engine into the user's reading profile to further improve the accuracy of reading habits.

[0754] Step 11:

[0755] The server learns the relevant information.

[0756] The server queries external databases such as review sites, author interviews, and bookstore fair data to learn about related works, improving the accuracy of finding new books that match the user's interests.

[0757] Step 12:

[0758] The server selects the next book.

[0759] The server selects the next book to read based on the user's reading habits, emotion recognition results, and external data, using collaborative filtering and content-based recommendation algorithms.

[0760] Step 13:

[0761] The server generates the recommendation results.

[0762] The server generates a list of books to read next in JSON format and prepares it for sending to the device.

[0763] Step 14:

[0764] The device receives the recommendation results.

[0765] The device (user's smartphone) receives the recommendation results sent from the server. The received data is in JSON format.

[0766] Step 15:

[0767] The device displays the recommendation results to the user.

[0768] The device analyzes the received recommendation results and displays them to the user through a user interface, allowing the user to check the list of books to read next and detailed information.

[0769] Example 2

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

[0771] Conventional reading recommendation systems require users to manually input their reading history, which is cumbersome and makes it difficult to accurately grasp reading trends. In addition, since recommendations do not take into account the user's emotions, there is an issue that recommendations cannot be made that are completely tailored to the user's preferences.

[0772] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes a means for a user to take an image, a means for a terminal to send the taken image to the server, a means for the server to extract book information from the image received, a means for the server to analyze the extracted information and grasp the user's reading habits, a means for the server to generate recommendations based on the user's reading habits, a means for the terminal to display the generated recommendations to the user, a means for the server to recognize the user's emotions, and a means for the server to generate recommendations based on the emotion recognition results. As a result, an optimal reading list can be automatically generated simply by the user providing an image of their bookshelf, and highly accurate recommendations that take the user's emotions into consideration are also possible.

[0773] "User" refers to a person who uses the system to take pictures of their bookshelves and receive recommendations.

[0774] "Terminal" refers to the device used by the user to take an image of the bookshelf and send the image to the server. This primarily includes mobile devices such as smartphones and tablets.

[0775] The "server" refers to a computer system that receives images sent by users, analyzes them, and generates reading recommendations. It includes a database and an analysis engine.

[0776] The "means for taking an image" refers to a camera function or an application that provides a function for a user to take an image of the bookshelf.

[0777] "Means of transmission" refers to the communication function used by the device to send the captured image to the server, for example, using an HTTP POST request.

[0778] "Means for extracting book information from images" refers to the technology used by the server to identify information such as the book title and author name from the images received. Specifically, this includes image recognition algorithms and optical character recognition technology.

[0779] "Means of analyzing and understanding the user's reading habits" refers to the process of analyzing the user's reading history and interests based on the book information extracted by the server.

[0780] "Means for generating recommendations" refers to the algorithm that the server uses to recommend the next book the user should read based on the analysis results.

[0781] "Display means" refers to an interface that visually presents the generated recommendation results to the user, including a dedicated application and a web interface.

[0782] "Means for recognizing emotions" refers to the technology used by the server to analyze and understand the user's emotions, including facial expression analysis and text input analysis.

[0783] "Means for generating recommendations based on emotion recognition results" refers to an algorithm that allows the server to reflect emotion recognition results and provide more accurate reading recommendations.

[0784] The present invention relates to a system that allows a user to take an image of their bookshelf, analyzes the image to understand the user's reading habits, and recommends the next book to read based on that information.The present invention also includes a function that recognizes the user's emotions by combining it with an emotion engine and makes more advanced recommendations.

[0785] The user takes a full-size image of the bookshelf using the smartphone camera. This image is sent to the server via a dedicated application. The application then generates an HTTP POST request to send the captured image file and user authentication information to the server.

[0786] The server receives the HTTP request and temporarily stores the image file. It also stores the received user identification information in a database. The server then uses Python to invoke the YOLO (You Only Look Once) model to identify the area of ​​each book in the image. The identified area is then enclosed in a rectangle, and this information is passed to the next analysis step.

[0787] The server then uses an OCR (Optical Character Recognition) library (e.g., Tesseract) to extract text information such as the title and author name from the identified book region. The extracted strings are then formatted and converted into a user-readable form. The extracted text information is also matched with title and author information in an internal database to obtain relevant publication year and genre information.

[0788] The server aggregates all book information and creates a reading profile for the user. This profile includes the book title, author, publication year, and genre, and the server analyzes the user's reading habits based on this information. Furthermore, the server uses an emotion engine (for example, Microsoft Azure's Emotion API) to recognize the user's emotions by analyzing the user's facial expressions and text comments. These results are also reflected in the reading profile.

[0789] The server runs a collaborative filtering algorithm, combining the user's reading habits with emotion recognition results to select the next book to read. The generated recommendation results are sent to the device in JSON format. The user's smartphone receives this information and displays it to the user through a dedicated application or web interface.

[0790] As a concrete example, consider the case where a user takes a picture of their bookshelf with their smartphone and sends it to a server via an application. The server identifies titles and authors, such as "Harry Potter and the Philosopher's Stone" and "The Da Vinci Code," and retrieves associated publication dates, such as 1997 and 2003, from a database. The server analyzes the user's reading habits and determines that they are interested in fantasy and mystery novels. It then uses an emotion engine to detect that the user smiled frequently while reading these books.

[0791] As a result, the server adds related titles, such as "Inferno" and "Percy Jackson & the Olympians," to a recommendation list and sends it to the device in JSON format. The user's smartphone receives this information and can display it within the application.

[0792] As an example of a prompt, you can ask the system the following questions:

[0793] "Please recommend me the next book I should read based on the trends in the books I own. Please analyze this bookshelf image."

[0794] "Please recommend new books based on your impressions of the books you have read so far."

[0795] "Please analyze the image of the bookshelf and recommend books for me."

[0796] This system allows users to automatically obtain the optimal reading list simply by providing an image of their bookshelf, and can also receive even more accurate reading recommendations through emotion recognition.

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

[0798] Program processing flow

[0799] Step 1:

[0800] The user takes a picture of the bookshelf

[0801] Specific operation: The user launches the camera app on their smartphone and takes an image that captures the entire bookshelf.

[0802] Input: An image of a bookshelf.

[0803] Output: Image files saved in your smartphone's gallery.

[0804] Step 2:

[0805] The device sends the captured image to the server.

[0806] How it works: The user launches the app and selects the image of the bookshelf they just took. The app then generates an HTTP POST request to send the image file along with the user's authentication information to the server.

[0807] Input: User authentication information, image file of the bookshelf.

[0808] Output: Image file and user authentication information sent to the server.

[0809] Step 3:

[0810] The server receives the image

[0811] What happens: The server analyzes the received HTTP request, temporarily stores the image file, and stores the associated user identification information in a database.

[0812] Input: The image file and user identification information included in the HTTP request.

[0813] Output: Temporarily saved image file, saved user identification information.

[0814] Step 4:

[0815] The server recognizes the book in the image

[0816] How it works: The server uses a Python script to call the YOLO (You Only Look Once) model to identify the area of ​​each book in the image, which is then enclosed in a rectangle.

[0817] Input: A temporarily saved image file.

[0818] Output: Area information for each book enclosed in a rectangle.

[0819] Step 5:

[0820] The server extracts the book title and author name

[0821] Specific operation: The server uses an OCR (Optical Character Recognition) library (e.g., Tesseract) to extract text information such as the title and author name from the identified book region. The extracted strings are then formatted in post-processing.

[0822] Input: Region information for each identified book.

[0823] Output: Extracted text information of book title and author name.

[0824] Step 6:

[0825] The server checks the extracted information against a database

[0826] How it works: The server compares the text information obtained by OCR with the title and author information in its internal database, and retrieves relevant publication year and genre information. It uses SQL queries to match the information.

[0827] Input: Extracted text information of book title and author name.

[0828] Output: Corresponding publication year and genre information.

[0829] Step 7:

[0830] The server aggregates user reading data

[0831] What it does: The server aggregates all the book information and creates a reading profile for the user, which includes the book title, author, publication year, and genre.

[0832] Input: Matched book information (title, author, year of publication, genre).

[0833] Output: The user's reading profile.

[0834] Step 8:

[0835] The server analyzes genre and age-based interests

[0836] What it does: The server uses analytics tools (e.g., Pandas or Scikit-learn) to analyze the user's reading profile, identifying trends in interests across specific genres and publication years.

[0837] Input: The user's reading profile.

[0838] Output: Analyzed user interest trends.

[0839] Step 9:

[0840] Emotion Recognition Using Emotion Engine

[0841] Specific operation: The server uses an emotion engine (for example, Microsoft Azure's Emotion API) to recognize the user's emotions, including the user's reading history, facial expression analysis, and text input analysis.

[0842] Input: User's reading history, facial expression images, and text comments.

[0843] Output: User emotion recognition results.

[0844] Step 10:

[0845] The server selects the next book.

[0846] Specific operation: The server runs a collaborative filtering algorithm to select the next book to read based on the user's reading habits and emotion recognition results.

[0847] Input: Analyzed user interest trends, emotion recognition results.

[0848] Output: A list of books to read next.

[0849] Step 11:

[0850] The server generates the recommendation results

[0851] What happens: The server generates a list of books to read next in JSON format and prepares to save the results to an API endpoint.

[0852] Input: A list of books to read next.

[0853] Output: Generated recommendation results (JSON format).

[0854] Step 12:

[0855] The device receives and displays the recommendation results.

[0856] Specific operation: The user's smartphone (device) accesses the API endpoint, parses the received JSON data, and displays it to the user through a dedicated application or web interface.

[0857] Input: JSON data retrieved from an API endpoint.

[0858] Output: The recommendation results displayed to the user.

[0859] (Application example 2)

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

[0861] Conventional reading recommendation systems simply recommend the next book a user should read based on their reading history. This makes it difficult to provide more personalized recommendations that take into account the user's emotions and mood at the time. Furthermore, there is a demand for devices that can display information more efficiently than just mobile devices. To address this, the present invention combines a wearable display device and emotion recognition functionality to improve the user experience and enhance the convenience of reading.

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

[0863] In this invention, the server includes means for a user to take an image, means for a terminal to send the taken image to the server, means for the server to extract product information from the image received, means for the server to analyze the extracted information and grasp the user's preference trends, means for the server to generate recommendations based on the user's preference trends, means for the terminal to display the generated recommendations to the user, means for displaying the recommendation results through a display device worn by the user, and an emotion recognition engine that recognizes the user's emotions and affects the analysis results. This enables personalized recommendations that take into account the user's emotions and mood at the time, and allows information to be displayed more efficiently.

[0864] "User" refers to an individual or group that uses an information processing system.

[0865] "Means for capturing images" refers to devices and techniques that allow a user to record visual information as digital data.

[0866] "Terminal" refers to a device that a user directly operates to input information or display received information.

[0867] A "server" refers to a computer system that stores and processes data over a network and provides services to other computers.

[0868] "Item information" refers to specific data about an item, such as its name, author, publication date, etc.

[0869] "Preference trends" refer to trends in personal preferences and interests based on a user's past activities and choices.

[0870] "Recommendation" refers to a system function that suggests appropriate options and information to users.

[0871] "Display device" refers to a hardware device for visually presenting information, such as smart glasses or a head-mounted display.

[0872] An "emotion recognition engine" refers to software or hardware that analyzes data such as a user's facial expressions, voice, and text to identify emotions.

[0873] "Image recognition technology" refers to technology that analyzes visual information in digital images and videos and recognizes specific patterns and objects.

[0874] "Optical character recognition technology" refers to technology that reads characters in an image as digital data.

[0875] A system for implementing this invention includes a display device worn by a user, a server, and a terminal. The user uses the camera on the display device to take pictures of items they have brought with them. The terminal processes the images and sends the data to the server. The server extracts information about the items from the received images and uses the results to analyze the user's preferences. Based on the analysis results, the server recommends the next item to read and provides the information to the user via the display device.

[0876] Furthermore, the server is equipped with an emotion recognition engine that recognizes the user's emotions and reflects them in the analysis results, enabling personalized recommendations that match the user's mood at the time.

[0877] The hardware includes smart glasses, head-mounted displays, terminals, and servers, while the software uses image recognition algorithms (such as YOLO and Faster R-CNN), Tesseract OCR (optical character recognition technology), collaborative filtering engines, and emotion recognition engines.

[0878] As a specific example, a user wears smart glasses while riding in an autonomous vehicle and takes an image of an item using the glasses' camera. The device sends the image to a server, which uses image recognition technology to extract the item's name and author's name. The server then uses optical character recognition technology to read detailed text information and compares it with an in-house database to obtain more detailed information. Based on the results, the system analyzes the user's reading habits and generates recommendations that take into account their mood at the time using an emotion recognition engine. Finally, information about the next item to read is displayed on the smart glasses' display.

[0879] An example of a prompt is:

[0880] "The user puts on the smart glasses and takes a picture of the item. The server recognizes the item and analyzes the user's preferences. As a result, it recommends the next appropriate item to read."

[0881] There is.

[0882] This system not only allows users to efficiently select their next reading item in an autonomous vehicle, but also provides a personalized reading experience that is tailored to their mood at the time.

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

[0884] Step 1:

[0885] A user takes an image of an item using the camera of the display device.

[0886] Input: Actual item

[0887] Output: Digital image of the item

[0888] Specific operation: The user points the camera of the smart glasses at an object and presses the shutter button to capture an image.

[0889] Step 2:

[0890] The terminal transmits the captured image data to the server.

[0891] Input: Digital image of the item

[0892] Output: Image data sent to the server

[0893] Specific operation: The smart glasses generate an HTTP POST request and send the captured image data and user authentication information to the server.

[0894] Step 3:

[0895] The server receives and stores the transmitted image data.

[0896] Input: Image data, user authentication information

[0897] Output: Saved image data

[0898] Specific operation: The server receives the HTTP request, stores the image data in a temporary storage area, and records the corresponding user authentication information.

[0899] Step 4:

[0900] The server uses image recognition technology to extract the name and related information of the item.

[0901] Input: Saved image data

[0902] Output: Text information of the item (name, author name, etc.)

[0903] Specific operation: The server uses the YOLO or Faster R-CNN algorithm to identify the object area in the image, and then extracts text information from the identified area using OCR technology.

[0904] Step 5:

[0905] The server compares the extracted text information with a database.

[0906] Input: Extracted text information

[0907] Output: Confirmed item information

[0908] Specific operation: The server accesses an internal database and compares the extracted text information to obtain detailed information such as the name of the item, author, publication year, and genre.

[0909] Step 6:

[0910] The server aggregates and updates the user's reading profile.

[0911] Input: Confirmed item information

[0912] Output: Updated reading profile

[0913] Specific operation: The server adds the newly acquired item information to the user's existing reading profile, keeping the user's preferences up to date.

[0914] Step 7:

[0915] The server uses an emotion recognition engine to analyze the user's emotions.

[0916] Input: User reading history, facial expression data, text input data

[0917] Output: Parsed emotion data

[0918] Specific operation: The server launches an emotion recognition engine and comprehensively analyzes the user's accumulated data, such as reading history, facial expression capture, and text input, to identify the user's emotional state.

[0919] Step 8:

[0920] The server selects the next item to read and generates recommendations.

[0921] Input: Updated reading profile, parsed sentiment data

[0922] Output: A list of recommended items

[0923] How it works: The server uses collaborative filtering and content-based recommendation algorithms to select the next item to read based on the user's individual reading habits and emotional state, and creates a recommendation list.

[0924] Step 9:

[0925] The device receives the recommendation results and displays them to the user.

[0926] Input: List of recommended items

[0927] Output: Recommendation results displayed to the user

[0928] Specific operation: The smart glasses receive the recommendation results sent from the server and display them on the visual display, allowing the user to check the next item to read.

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

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

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

[0932] [Third embodiment]

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

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

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

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

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

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

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

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

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

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

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

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

[0945] This invention relates to a system that allows a user to take an image of their bookshelf, analyzes the image to understand the user's reading habits, and recommends the next book to read based on that information. This system is designed to be easy for users to use, and operates through the cooperation of a terminal and a server.

[0946] Program Generation and Processing Description

[0947] 1. The user takes a picture of the bookshelf

[0948] The user uses the smartphone camera to take a picture of their bookshelf, capturing the entire shelf in the image.

[0949] 2. The device sends the image to the server

[0950] The user's smartphone (device) makes an HTTP POST request to send the captured image file to the server, which also includes user authentication information.

[0951] 3. The server receives the image

[0952] The server passes the received image file to the analysis module, where it is temporarily stored on the server's disk.

[0953] 4. The server recognizes the book in the image

[0954] The server uses image recognition technology to identify the area of ​​each book placed on the shelf, using algorithms such as YOLO and Faster R-CNN.

[0955] 5. The server extracts the book title and author name

[0956] The server uses optical character recognition (OCR) technology to extract text information, such as the title and author name, from the identified book region, which is then checked against a database.

[0957] 6. The server organizes the book information

[0958] The server stores the extracted book information in a database, supplementing each book with detailed information such as the title, author, publication year, and genre.

[0959] 7. The server analyzes the user's reading habits

[0960] The server analyzes the user's reading habits based on the organized book information, such as bias toward specific genres and distribution of publication years.

[0961] 8. The server selects the next book

[0962] The server uses a recommendation algorithm to select the next book to read based on the user's reading habits, as well as external data such as reviews, author interviews, and bookstore fairs.

[0963] 9. The server generates the recommendation results

[0964] The server generates a list of selected books in JSON format and sends it to the terminal.

[0965] 10. The device receives and displays the recommendation results

[0966] The user's smartphone (terminal) receives the recommendation results sent from the server and displays them to the user via a dedicated application or web interface.

[0967] Specific examples

[0968] Users take a photo of their bookshelf with their smartphone and send it to the server via the application. The server analyzes the image and extracts titles such as "Harry Potter and the Philosopher's Stone" or "The Da Vinci Code" and author names. This information is then compared with an internal database to confirm publication dates such as 1997 or 2003.

[0969] The server then analyzes the user's reading habits based on the information from these books, determining that the user is interested in fantasy and mystery novels, and further confirming that the user has a strong interest in works published in the early 2000s.

[0970] The server references external data and, based on this information, adds related works such as "Inferno" and "Percy Jackson & the Olympians" to a recommendation list, which is then sent to the device in JSON format. Finally, the recommendation is displayed on the user's smartphone, allowing the user to check detailed information about the next book to read.

[0971] This allows users to automatically obtain the optimal reading list by simply providing an image of their bookshelf, allowing them to effortlessly find the next book to read. This system improves user convenience and provides a richer reading experience.

[0972] The processing flow will be explained below.

[0973] Step 1:

[0974] The user takes a picture of the bookshelf.

[0975] The user takes a picture of the bookshelf using the camera on their smartphone, making sure that the entire bookshelf is included in the image.

[0976] Step 2:

[0977] The device sends the captured image to the server.

[0978] The device (user's smartphone) uploads the captured image file to the server using an HTTP POST request, which also includes user authentication information.

[0979] Step 3:

[0980] The server receives the image.

[0981] The server receives the HTTP request and stores the image file in a temporary location, along with the corresponding user identification information.

[0982] Step 4:

[0983] The server recognizes the book in the image.

[0984] The server uses an image recognition algorithm (e.g., YOLO or Faster R-CNN) to identify the region of each book in the image. In this step, the shape and position of the book in the image are detected.

[0985] Step 5:

[0986] The server extracts the book title and author name.

[0987] The server uses optical character recognition (OCR) technology to extract text information such as the title and author name from the identified book region. The resulting strings are temporarily stored.

[0988] Step 6:

[0989] The server checks the extracted information against a database.

[0990] The server compares the text information obtained by OCR with the title and author information in its internal database to obtain related publication year and genre information. This comparison improves the accuracy of the extracted information.

[0991] Step 7:

[0992] The server aggregates users' reading data.

[0993] The server aggregates all book information to create a user's reading profile, including book title, author, publication year, genre, and more.

[0994] Step 8:

[0995] The server analyzes interests by genre and age group.

[0996] The server analyzes the user's reading profile to identify trends in interest in specific genres and publication years, thereby understanding patterns in the books the user has read in the past.

[0997] Step 9:

[0998] The server learns the relevant information.

[0999] The server learns about related works by referencing external databases such as review sites, author interviews, and bookstore fair data, thereby improving the accuracy of finding new books that match the user's interests.

[1000] Step 10:

[1001] The server selects the next book.

[1002] The server uses collaborative filtering and content-based recommendation algorithms to select the next book to read based on the user's reading habits and external data.

[1003] Step 11:

[1004] The server generates the recommendation results.

[1005] The server generates a list of books to read next in JSON format and prepares it for sending to the device.

[1006] Step 12:

[1007] The device receives the recommendation results.

[1008] The device (user's smartphone) receives the recommendation results sent from the server. The received data is in JSON format.

[1009] Step 13:

[1010] The device displays the recommendation results to the user.

[1011] The device analyzes the received recommendation results and displays them to the user through a user interface, allowing the user to check the list of books to read next and detailed information.

[1012] Example 1

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

[1014] Conventional reading recommendation systems require users to manually input information about the books they have read, which is time-consuming and makes it difficult to accurately grasp the user's reading habits. Furthermore, they often fail to provide appropriate recommendations that reflect the user's reading habits. This makes it difficult for users to efficiently find the next book they should read, and this has led to issues with the reading experience not being improved.

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

[1016] In this invention, the server includes means for the user to take an image, means for the terminal to send the taken image to the server, means for the server to extract book information from the received image, means for the server to analyze the extracted information and grasp the user's reading habits, means for the server to generate recommendations based on the user's reading habits, and means for the terminal to display the generated recommendations to the user. This allows the user to receive automatic recommendations of books to read next simply by taking an image of their bookshelf.

[1017] A "user" refers to an entity that takes an image of their own bookshelf and provides the information to the system.

[1018] "Terminal" refers to the device (e.g., smartphone or tablet) that a user uses to take an image and send it to a server.

[1019] The "server" refers to a computer system that analyzes received images, extracts book information, understands the user's reading habits, and generates a recommendation list.

[1020] "Image" refers to photo data of a bookshelf taken by a user using a terminal.

[1021] "Book information" refers to various data related to a book, such as the book title, author name, publication year, genre, etc.

[1022] "User reading habits" refers to a user's reading patterns and preferences based on the genres and trends of books the user has read to date, the distribution of publication years, and so on.

[1023] "Recommendation" refers to a suggestion of a book selected by the server as the next book to read based on the user's reading habits.

[1024] "Image recognition technology" refers to technology that detects specific objects from image data and identifies their areas.

[1025] "Optical character recognition technology" refers to the technology for extracting text information from images of books.

[1026] "Receiving" refers to the server receiving data sent from the terminal.

[1027] "Analysis" refers to the analysis of information based on the data received by the server.

[1028] This invention relates to a system that allows a user to take an image of their bookshelf, analyzes the image to understand the user's reading habits, and recommends the next book to read based on that information. This system is designed to be easy for users to use, and operates through the cooperation of a terminal and a server.

[1029] First, the user takes a picture of the bookshelf using the smartphone camera. The image is saved in the smartphone's internal storage. The device then uses a dedicated application to send the image file to the server. This is done using an HTTP POST request, which also includes user authentication information.

[1030] The server extracts the image file and user authentication information from the received HTTP POST request, temporarily stores the image file in the server's storage, and then uses an image recognition algorithm (e.g., YOLO, Faster R-CNN) to detect the regions of each book in the image, thereby identifying which parts are individual books.

[1031] The server then uses optical character recognition (OCR) technology (e.g., Tesseract) to extract text information from the book's domain. Based on the extracted text information, the server obtains the book's title and author name and stores them in a string format. The server then connects to a database management system (e.g., MySQL, PostgreSQL) to store this information in a database, and completes any necessary additional information (such as publication year and genre) by matching it with external APIs or internal data sources.

[1032] Based on the information stored in the database, the server uses data analysis tools (e.g., Python, R) to analyze the user's reading habits. For example, if the user has a preference for a particular genre, the server identifies this preference and updates the user profile. The server then uses a recommendation algorithm (e.g., collaborative filtering) to select the next book to read based on the user's reading habits. It also takes into account external data such as reviews and author interviews.

[1033] The server generates a list of selected books in JSON format, including detailed information such as the book title, author, publication year, genre, and reviews. Finally, the device receives the JSON data sent from the server and displays it to the user via a dedicated application or web interface. The user can then check the details of the recommended books and plan their next reading.

[1034] As a concrete example, a user takes a picture of their bookshelf with their smartphone and sends it to a server via an application. The server analyzes the received image and extracts titles such as "Fictional Book Title A" and "Fictional Book Title B" and author names. This information is compared with an internal database to confirm, for example, the publication year and genre. The server then analyzes the user's reading habits based on this book information and determines, for example, that the user is interested in fantasy and mystery novels. It then adds related books to a recommendation list and sends it to the device in JSON format. Finally, the user's smartphone displays these recommendations, allowing the user to check detailed information about the next book they should read.

[1035] Examples of prompts to be input into a generative AI model include, "Please generate a program for a system that takes a photo of a bookshelf, analyzes it, understands the user's reading habits, and recommends the next book they should read," and "Please explain the process of analyzing a photo of a bookshelf and recommending appropriate books to a user who has a reading tendency biased toward a particular genre."

[1036] This system will enable users to simply provide an image of their bookshelf and automatically receive recommendations on what books to read next, dramatically improving convenience.

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

[1038] Step 1:

[1039] The user takes a picture of the bookshelf.

[1040] Input: Your smartphone camera.

[1041] Specific actions: The user opens the camera app on their smartphone and takes a picture that fits the entire bookshelf.

[1042] Output: The captured image file (e.g., JPEG format) is saved to the smartphone's internal storage.

[1043] Step 2:

[1044] The device sends the image to the server.

[1045] Input: The captured image file and user credentials (e.g. API key or token).

[1046] Specific operation: The user launches the dedicated application on the device and taps the "Upload image" button. The user selects a saved image and selects "Send" when a confirmation dialog box appears asking whether to send the image to the server.

[1047] Output: An HTTP POST request is sent to the server containing the image file and the user's credentials.

[1048] Step 3:

[1049] The server receives the image.

[1050] Input: Image file and user credentials in an HTTP POST request.

[1051] What happens: The server receives the request, verifies whether the authentication information is correct, and if the authentication is successful, saves the image file to a temporary directory on the server.

[1052] Output: An image file saved in a temporary directory and the success / failure status of the authentication.

[1053] Step 4:

[1054] The server recognizes the book in the image.

[1055] Input: Image files saved in a temporary directory.

[1056] What it does: The server uses an image processing algorithm (e.g., YOLO, Faster R-CNN) to detect the regions of each book in the image.

[1057] Output: Coordinates indicating the area of ​​each book.

[1058] Step 5:

[1059] The server extracts the book title and author name.

[1060] Input: Coordinate information indicating the area of ​​each book.

[1061] Specific operation: The server uses optical character recognition (OCR) technology (e.g., Tesseract) to extract text information from the book region, and obtains the book title and author name based on the extracted text information.

[1062] Output: A list of book titles and authors.

[1063] Step 6:

[1064] The server organizes the book information.

[1065] Input: A list of book titles and author names.

[1066] What it does: The server connects to a database management system (e.g., MySQL, PostgreSQL) and stores this information in a database. It also retrieves additional information from an external API, such as publication year and genre, and adds it to the database.

[1067] Output: Complete book information stored in a database.

[1068] Step 7:

[1069] The server analyzes the user's reading habits.

[1070] Input: Book information stored in the database.

[1071] What it does: The server uses data analysis tools (e.g., Python, R) to analyze the user's reading habits and update the user profile based on biases toward specific genres and publication years.

[1072] Output: Updated user profile and reading habits analysis.

[1073] Step 8:

[1074] The server selects the next book.

[1075] Input: Updated user profile and reading habits analysis.

[1076] What it does: The server uses a recommendation algorithm (e.g., collaborative filtering) to select the next book to read, taking into account external data (e.g., reviews, author interviews, etc.).

[1077] Output: A list of recommended books.

[1078] Step 9:

[1079] The server generates the recommendation results.

[1080] Input: A list of recommended books.

[1081] What happens: The server formats the recommended book information into JSON format, which includes details such as the book title, author, publication year, genre, and reviews.

[1082] Output: A list of recommended books formatted in JSON.

[1083] Step 10:

[1084] The device receives and displays the recommendation results.

[1085] Input: A list of recommended books in JSON format.

[1086] Specific operation: The device receives the JSON data sent from the server and displays it to the user via a dedicated application or web interface. The user can then check the detailed information of the recommended books.

[1087] Output: A screen showing detailed information about the recommended book.

[1088] The above is a detailed description of the specific processing steps of the system and the data processing and data calculations performed in each step.

[1089] (Application example 1)

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

[1091] In recent years, with the spread of food delivery services, users are increasingly faced with the challenge of selecting the most suitable dish from a wide variety of menus. Finding the dish that best suits one's food preferences among the many options available is a time-consuming and laborious task. There is also a need for systems that can provide personalized recommendations that take into account a user's past eating history and preferences.

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

[1093] In this invention, the server includes means for a user to take an image, means for a terminal to send the taken image to the server, means for the server to extract meal information from the received image, means for the server to analyze the extracted information and understand the user's food preferences, means for the server to generate recommendations based on the user's food preferences, and means for the terminal to display the generated recommendations to the user. This allows a user to easily find the next dish that suits their preferences by simply taking an image of their meal.

[1094] "User" refers to any individual or organization that uses this system.

[1095] "Image" means visual information captured by a user using a smartphone or other imaging device.

[1096] "Terminal" refers to a device used by a user, such as a smartphone or tablet.

[1097] "Server" refers to a computer system that provides services over a network, such as analyzing images, storing data, and generating recommendations.

[1098] "Meal information" refers to the names of ingredients, dishes, and other related information extracted from the captured image.

[1099] "Food preferences" refers to personal preferences such as the types of food and drinks a user likes, cooking preferences, and seasoning preferences.

[1100] "Recommendations" refers to information about dishes and restaurants suggested based on the user's food preferences.

[1101] "Image recognition technology" refers to technology for detecting specific objects or text from images and identifying their content.

[1102] "Optical character recognition technology" means technology that converts character information in an image into digital text.

[1103] "Display" refers to the act of visually providing information to a user on a terminal screen.

[1104] This invention is a system that allows users to find restaurants and cuisines that suit their food preferences. This system is realized through a series of steps: the user takes an image, analyzes the image to understand the user's food preferences, and generates and displays recommendations based on the image.

[1105] System Configuration

[1106] The system consists of the following main elements:

[1107] 1. User's device

[1108] The user's device is a smartphone or tablet, and the built-in camera is used to take pictures of the food.

[1109] 2. Server

[1110] It is a computer system that provides services over the network, and performs image analysis, data storage, and recommendation generation. Image analysis uses image recognition technologies such as YOLO and Faster R-CNN.

[1111] Pytesseract is used as the optical character recognition (OCR) technology.

[1112] Program processing explanation

[1113] Taking and uploading images

[1114] A user takes a photo of their daily meal using the camera app on their smartphone. This image is temporarily saved in the smartphone's storage. The image file is then sent to the server via an HTTP POST request using the requests library, including user authentication information.

[1115] Image analysis and data extraction

[1116] The server temporarily stores the received image files on its disk for analysis. Next, it uses image recognition algorithms such as YOLO and Faster R-CNN to identify the meal contents and ingredients. It then uses pytesseract to extract text information from the images and identify the names of ingredients and dishes.

[1117] Understanding user preferences

[1118] The server uses the extracted information to store and analyze the user's food preferences in a database, making it possible to understand preferences for specific dishes or ingredients, as well as trends in favorite dishes.

[1119] Recommendation generation

[1120] Based on the analysis results, the server recommends the food and restaurant that best suits the user's preferences. It also references external data such as reviews and ratings from other users. The recommendation information is generated in JSON format and sent to the user's device.

[1121] Displaying recommendations

[1122] The user's device displays the received recommendation information in a dedicated application or web interface, where the user can check detailed information about the next dish to order.

[1123] Examples of concrete examples and prompts

[1124] Specific examples

[1125] A user takes a photo of "sushi" with their smartphone and uploads it to the server via the application. The server analyzes the received image and identifies ingredients such as "sushi" and "sashimi." It then uses OCR technology to extract menu items and restaurant names. Based on this information, the server determines that the user likes Japanese food and recommends sushi restaurants and related menu items. Finally, these recommendations are displayed on the smartphone screen, allowing the user to easily select the next dish or restaurant to visit.

[1126] Prompt Sentence Examples

[1127] "Take a photo of your recent meal. We'll analyze it and suggest your next meal based on your preferences. Why not try sushi or Japanese cuisine today?"

[1128] In this way, the present invention provides a system that allows users to choose their daily meals in an enjoyable and efficient manner.

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

[1130] Step 1:

[1131] A user takes a picture of a meal using the camera app on their smartphone. At this time, the image is temporarily saved in the smartphone's storage. The input data is the image of the meal, and the output data is the saved image file. Specifically, the user launches the camera app and presses the capture button to capture the image.

[1132] Step 2:

[1133] The device sends the captured image to the server. The image file is transferred to the server using an HTTP POST request. The request also includes authentication information such as the user ID. The input data is the saved image file and user authentication information, and the output data is the image received by the server. Specifically, the requests library is used to upload the image file to the server.

[1134] Step 3:

[1135] The server temporarily saves the image file it receives. The image file is saved to the server's disk for analysis. The input data is the image file sent to the server, and the output data is the image file saved to the disk. Specifically, the server saves the image file to a specified directory.

[1136] Step 4:

[1137] The server extracts meal information from the image. It uses image recognition technology (YOLO or Faster R-CNN) to identify ingredients and dish names in the image. It also uses OCR technology (pytesseract) to extract text information from the image. The input data is an image file stored on disk, and the output data is the extracted text information of ingredients and dish names. Specifically, it runs an image analysis algorithm to obtain the identified ingredients and text information.

[1138] Step 5:

[1139] The server saves the extracted information in a database and analyzes the user's food preferences. In order to understand biases towards specific dishes or ingredients, the data is analyzed by comparing it with the history stored in the database. The input data is the text information of the extracted ingredients and dish names, and the output data is the analyzed user preference information. Specifically, the extracted data is saved in a database and compared with past data to analyze preference trends.

[1140] Step 6:

[1141] The server generates optimal recommendations for the user based on the analysis results. Recommendations are generated by referring to reviews and ratings from other users. The input data is the analyzed user preference information, and the output data is the recommendation information in JSON format. Specifically, the recommendation algorithm is executed to select appropriate dishes and restaurants.

[1142] Step 7:

[1143] The device receives the recommendation information sent from the server and visually displays it to the user. The input data is the JSON data of the recommendation sent from the server, and the output data is the recommendation information displayed on the device's display. Specifically, the device reads the recommendation information using a dedicated application or web interface and presents it to the user.

[1144] In this way, users can get personalized recommendations for dishes and restaurants based on photos of their meals.

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

[1146] The present invention relates to a system that allows a user to take an image of their bookshelf, analyzes the image to understand the user's reading habits, and recommends the next book to read based on that information.The present invention also includes a function that recognizes the user's emotions by combining it with an emotion engine and makes more advanced recommendations.

[1147] Program Generation and Processing Description

[1148] 1. The user takes a picture of the bookshelf

[1149] The user takes a picture of their bookshelf using the smartphone camera, making sure that the entire bookshelf is included in the image.

[1150] 2. The device sends the image it has taken to the server

[1151] The user's smartphone (device) uploads the captured image file to the server using an HTTP POST request, which also includes user authentication information.

[1152] 3. The server receives the image

[1153] The server receives the HTTP request and stores the image file in a temporary location, along with the corresponding user identification information.

[1154] 4. The server recognizes the book in the image

[1155] The server uses an image recognition algorithm (e.g., YOLO or Faster R-CNN) to identify the region of each book in the image. In this step, the shape and position of the book in the image are detected.

[1156] 5. The server extracts the book title and author name

[1157] The server uses optical character recognition (OCR) technology to extract text information such as the title and author name from the identified book region. The resulting strings are temporarily stored.

[1158] 6. The server checks the extracted information against a database

[1159] The server compares the text information obtained by OCR with the title and author information in its internal database to obtain related publication year and genre information. This comparison improves the accuracy of the extracted information.

[1160] 7. The server aggregates user reading data

[1161] The server aggregates all book information to create a user's reading profile, including book title, author, publication year, genre, and more.

[1162] 8. The server analyzes genre and age-based interests

[1163] The server analyzes the user's reading profile to identify trends in interest in specific genres and publication years, thereby understanding patterns in the books the user has read in the past.

[1164] 9. Emotion Recognition Using Emotion Engine

[1165] The server uses an emotion engine to recognize the user's emotions. The emotion engine recognizes the user's emotions about the book they have read through methods such as analyzing the user's reading history, facial expressions, and text input.

[1166] 10. The server selects the next book

[1167] The server selects the next book to read based on the user's reading habits and the emotion recognition results of the emotion engine, using collaborative filtering and content-based recommendation algorithms.

[1168] 11. The server generates the recommendation results

[1169] The server generates a list of books to read next in JSON format and prepares it for sending to the device.

[1170] 12. The device receives and displays the recommendation results

[1171] The user's smartphone (device) receives the recommendation results sent from the server and displays them to the user via a dedicated application or web interface. The user can then check the list of books they should read next and detailed information.

[1172] Specific examples

[1173] Users take a photo of their bookshelf with their smartphone and send it to the server via the application. The server analyzes the image and extracts titles such as "Harry Potter and the Philosopher's Stone" or "The Da Vinci Code" and author names. This information is then compared with an internal database to confirm publication dates such as 1997 or 2003.

[1174] The server then analyzes the user's reading habits based on this book information, determining that the user is interested in fantasy and mystery novels. It then uses an emotion engine to analyze the user's feelings toward the book. Using facial expression analysis, the server can detect that the user smiled frequently while reading a particular book and recognize that the book left a positive impression on the user.

[1175] As a result, the server adds related works such as "Inferno" and "Percy Jackson & the Olympians" to a recommendation list and sends it to the device in JSON format. The user's smartphone displays this recommendation, allowing the user to check detailed information about the next book they should read.

[1176] This allows users to not only automatically obtain the optimal reading list by simply providing an image of their bookshelf, but also receive more accurate reading recommendations through emotion recognition. This system improves user convenience and provides a richer reading experience.

[1177] The processing flow will be explained below.

[1178] Step 1:

[1179] The user takes a picture of the bookshelf.

[1180] The user takes a picture of the bookshelf using the camera on their smartphone, making sure that the entire bookshelf is included in the image.

[1181] Step 2:

[1182] The device sends the captured image to the server.

[1183] The device (user's smartphone) uploads the captured image file to the server using an HTTP POST request, which also includes user authentication information.

[1184] Step 3:

[1185] The server receives the image.

[1186] The server receives the HTTP request and stores the image file in a temporary location, along with the corresponding user identification information.

[1187] Step 4:

[1188] The server recognizes the book in the image.

[1189] The server uses an image recognition algorithm (e.g., YOLO or Faster R-CNN) to identify the region of each book in the image. In this step, the shape and position of the book in the image are detected.

[1190] Step 5:

[1191] The server extracts the book title and author name.

[1192] The server uses optical character recognition (OCR) technology to extract text information such as the title and author name from the identified book area, and stores this information as text data.

[1193] Step 6:

[1194] The server checks the extracted information against a database.

[1195] The server compares the text information obtained by OCR with the title and author information in its internal database to obtain relevant publication year and genre information, thereby improving the accuracy of the extracted information.

[1196] Step 7:

[1197] The server aggregates users' reading data.

[1198] The server aggregates all book information and creates a reading profile for the user, including book title, author, publication year, genre, and other information.

[1199] Step 8:

[1200] The server analyzes interests by genre and age group.

[1201] The server analyzes the user's reading profile to identify trends in interest in specific genres and publication years, thereby understanding patterns in the books the user has read in the past.

[1202] Step 9:

[1203] Recognize user emotions using an emotion engine.

[1204] The server's emotion engine analyzes images and videos taken by the user in front of the bookshelf and recognizes emotions from the user's facial expressions, voice, gestures, etc. The emotion engine uses this information to understand the user's emotional response to their reading history.

[1205] Step 10:

[1206] The server integrates the emotion recognition results into the user's reading profile.

[1207] The server integrates the emotion data obtained by the emotion engine into the user's reading profile to further improve the accuracy of reading habits.

[1208] Step 11:

[1209] The server learns the relevant information.

[1210] The server queries external databases such as review sites, author interviews, and bookstore fair data to learn about related works, improving the accuracy of finding new books that match the user's interests.

[1211] Step 12:

[1212] The server selects the next book.

[1213] The server selects the next book to read based on the user's reading habits, emotion recognition results, and external data, using collaborative filtering and content-based recommendation algorithms.

[1214] Step 13:

[1215] The server generates the recommendation results.

[1216] The server generates a list of books to read next in JSON format and prepares it for sending to the device.

[1217] Step 14:

[1218] The device receives the recommendation results.

[1219] The device (user's smartphone) receives the recommendation results sent from the server. The received data is in JSON format.

[1220] Step 15:

[1221] The device displays the recommendation results to the user.

[1222] The device analyzes the received recommendation results and displays them to the user through a user interface, allowing the user to check the list of books to read next and detailed information.

[1223] Example 2

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

[1225] Conventional reading recommendation systems require users to manually input their reading history, which is cumbersome and makes it difficult to accurately grasp reading trends. In addition, since recommendations do not take into account the user's emotions, there is an issue that recommendations cannot be made that are completely tailored to the user's preferences.

[1226] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes a means for a user to take an image, a means for a terminal to send the taken image to the server, a means for the server to extract book information from the image received, a means for the server to analyze the extracted information and grasp the user's reading habits, a means for the server to generate recommendations based on the user's reading habits, a means for the terminal to display the generated recommendations to the user, a means for the server to recognize the user's emotions, and a means for the server to generate recommendations based on the emotion recognition results. As a result, an optimal reading list can be automatically generated simply by the user providing an image of their bookshelf, and highly accurate recommendations that take the user's emotions into consideration are also possible.

[1227] "User" refers to a person who uses the system to take pictures of their bookshelves and receive recommendations.

[1228] "Terminal" refers to the device used by the user to take an image of the bookshelf and send the image to the server. This primarily includes mobile devices such as smartphones and tablets.

[1229] The "server" refers to a computer system that receives images sent by users, analyzes them, and generates reading recommendations. It includes a database and an analysis engine.

[1230] The "means for taking an image" refers to a camera function or an application that provides a function for a user to take an image of the bookshelf.

[1231] "Means of transmission" refers to the communication function used by the device to send the captured image to the server, for example, using an HTTP POST request.

[1232] "Means for extracting book information from images" refers to the technology used by the server to identify information such as the book title and author name from the images received. Specifically, this includes image recognition algorithms and optical character recognition technology.

[1233] "Means of analyzing and understanding the user's reading habits" refers to the process of analyzing the user's reading history and interests based on the book information extracted by the server.

[1234] "Means for generating recommendations" refers to the algorithm that the server uses to recommend the next book the user should read based on the analysis results.

[1235] "Display means" refers to an interface that visually presents the generated recommendation results to the user, including a dedicated application and a web interface.

[1236] "Means for recognizing emotions" refers to the technology used by the server to analyze and understand the user's emotions, including facial expression analysis and text input analysis.

[1237] "Means for generating recommendations based on emotion recognition results" refers to an algorithm that allows the server to reflect emotion recognition results and provide more accurate reading recommendations.

[1238] The present invention relates to a system that allows a user to take an image of their bookshelf, analyzes the image to understand the user's reading habits, and recommends the next book to read based on that information.The present invention also includes a function that recognizes the user's emotions by combining it with an emotion engine and makes more advanced recommendations.

[1239] The user takes a full-size image of the bookshelf using the smartphone camera. This image is sent to the server via a dedicated application. The application then generates an HTTP POST request to send the captured image file and user authentication information to the server.

[1240] The server receives the HTTP request and temporarily stores the image file. It also stores the received user identification information in a database. The server then uses Python to invoke the YOLO (You Only Look Once) model to identify the area of ​​each book in the image. The identified area is then enclosed in a rectangle, and this information is passed to the next analysis step.

[1241] The server then uses an OCR (Optical Character Recognition) library (e.g., Tesseract) to extract text information such as the title and author name from the identified book region. The extracted strings are then formatted and converted into a user-readable form. The extracted text information is also matched with title and author information in an internal database to obtain relevant publication year and genre information.

[1242] The server aggregates all book information and creates a reading profile for the user. This profile includes the book title, author, publication year, and genre, and the server analyzes the user's reading habits based on this information. Furthermore, the server uses an emotion engine (for example, Microsoft Azure's Emotion API) to recognize the user's emotions by analyzing the user's facial expressions and text comments. These results are also reflected in the reading profile.

[1243] The server runs a collaborative filtering algorithm, combining the user's reading habits with emotion recognition results to select the next book to read. The generated recommendation results are sent to the device in JSON format. The user's smartphone receives this information and displays it to the user through a dedicated application or web interface.

[1244] As a concrete example, consider the case where a user takes a picture of their bookshelf with their smartphone and sends it to a server via an application. The server identifies titles and authors, such as "Harry Potter and the Philosopher's Stone" and "The Da Vinci Code," and retrieves associated publication dates, such as 1997 and 2003, from a database. The server analyzes the user's reading habits and determines that they are interested in fantasy and mystery novels. It then uses an emotion engine to detect that the user smiled frequently while reading these books.

[1245] As a result, the server adds related titles, such as "Inferno" and "Percy Jackson & the Olympians," to a recommendation list and sends it to the device in JSON format. The user's smartphone receives this information and can display it within the application.

[1246] As an example of a prompt, you can ask the system the following questions:

[1247] "Please recommend me the next book I should read based on the trends in the books I own. Please analyze this bookshelf image."

[1248] "Please recommend new books based on your impressions of the books you have read so far."

[1249] "Please analyze the image of the bookshelf and recommend books for me."

[1250] This system allows users to automatically obtain the optimal reading list simply by providing an image of their bookshelf, and can also receive even more accurate reading recommendations through emotion recognition.

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

[1252] Program processing flow

[1253] Step 1:

[1254] The user takes a picture of the bookshelf

[1255] Specific operation: The user launches the camera app on their smartphone and takes an image that captures the entire bookshelf.

[1256] Input: An image of a bookshelf.

[1257] Output: Image files saved in your smartphone's gallery.

[1258] Step 2:

[1259] The device sends the captured image to the server.

[1260] How it works: The user launches the app and selects the image of the bookshelf they just took. The app then generates an HTTP POST request to send the image file along with the user's authentication information to the server.

[1261] Input: User authentication information, image file of the bookshelf.

[1262] Output: Image file and user authentication information sent to the server.

[1263] Step 3:

[1264] The server receives the image

[1265] What happens: The server analyzes the received HTTP request, temporarily stores the image file, and stores the associated user identification information in a database.

[1266] Input: The image file and user identification information included in the HTTP request.

[1267] Output: Temporarily saved image file, saved user identification information.

[1268] Step 4:

[1269] The server recognizes the book in the image

[1270] How it works: The server uses a Python script to call the YOLO (You Only Look Once) model to identify the area of ​​each book in the image, which is then enclosed in a rectangle.

[1271] Input: A temporarily saved image file.

[1272] Output: Area information for each book enclosed in a rectangle.

[1273] Step 5:

[1274] The server extracts the book title and author name

[1275] Specific operation: The server uses an OCR (Optical Character Recognition) library (e.g., Tesseract) to extract text information such as the title and author name from the identified book region. The extracted strings are then formatted in post-processing.

[1276] Input: Region information for each identified book.

[1277] Output: Extracted text information of book title and author name.

[1278] Step 6:

[1279] The server checks the extracted information against a database

[1280] How it works: The server compares the text information obtained by OCR with the title and author information in its internal database, and retrieves relevant publication year and genre information. It uses SQL queries to match the information.

[1281] Input: Extracted text information of book title and author name.

[1282] Output: Corresponding publication year and genre information.

[1283] Step 7:

[1284] The server aggregates user reading data

[1285] What it does: The server aggregates all the book information and creates a reading profile for the user, which includes the book title, author, publication year, and genre.

[1286] Input: Matched book information (title, author, year of publication, genre).

[1287] Output: The user's reading profile.

[1288] Step 8:

[1289] The server analyzes genre and age-based interests

[1290] What it does: The server uses analytics tools (e.g., Pandas or Scikit-learn) to analyze the user's reading profile, identifying trends in interests across specific genres and publication years.

[1291] Input: The user's reading profile.

[1292] Output: Analyzed user interest trends.

[1293] Step 9:

[1294] Emotion Recognition Using Emotion Engine

[1295] Specific operation: The server uses an emotion engine (for example, Microsoft Azure's Emotion API) to recognize the user's emotions, including the user's reading history, facial expression analysis, and text input analysis.

[1296] Input: User's reading history, facial expression images, and text comments.

[1297] Output: User emotion recognition results.

[1298] Step 10:

[1299] The server selects the next book.

[1300] Specific operation: The server runs a collaborative filtering algorithm to select the next book to read based on the user's reading habits and emotion recognition results.

[1301] Input: Analyzed user interest trends, emotion recognition results.

[1302] Output: A list of books to read next.

[1303] Step 11:

[1304] The server generates the recommendation results

[1305] What happens: The server generates a list of books to read next in JSON format and prepares to save the results to an API endpoint.

[1306] Input: A list of books to read next.

[1307] Output: Generated recommendation results (JSON format).

[1308] Step 12:

[1309] The device receives and displays the recommendation results.

[1310] Specific operation: The user's smartphone (device) accesses the API endpoint, parses the received JSON data, and displays it to the user through a dedicated application or web interface.

[1311] Input: JSON data retrieved from an API endpoint.

[1312] Output: The recommendation results displayed to the user.

[1313] (Application example 2)

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

[1315] Conventional reading recommendation systems simply recommend the next book a user should read based on their reading history. This makes it difficult to provide more personalized recommendations that take into account the user's emotions and mood at the time. Furthermore, there is a demand for devices that can display information more efficiently than just mobile devices. To address this, the present invention combines a wearable display device and emotion recognition functionality to improve the user experience and enhance the convenience of reading.

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

[1317] In this invention, the server includes means for a user to take an image, means for a terminal to send the taken image to the server, means for the server to extract product information from the image received, means for the server to analyze the extracted information and grasp the user's preference trends, means for the server to generate recommendations based on the user's preference trends, means for the terminal to display the generated recommendations to the user, means for displaying the recommendation results through a display device worn by the user, and an emotion recognition engine that recognizes the user's emotions and affects the analysis results. This enables personalized recommendations that take into account the user's emotions and mood at the time, and allows information to be displayed more efficiently.

[1318] "User" refers to an individual or group that uses an information processing system.

[1319] "Means for capturing images" refers to devices and techniques that allow a user to record visual information as digital data.

[1320] "Terminal" refers to a device that a user directly operates to input information or display received information.

[1321] A "server" refers to a computer system that stores and processes data over a network and provides services to other computers.

[1322] "Item information" refers to specific data about an item, such as its name, author, publication date, etc.

[1323] "Preference trends" refer to trends in personal preferences and interests based on a user's past activities and choices.

[1324] "Recommendation" refers to a system function that suggests appropriate options and information to users.

[1325] "Display device" refers to a hardware device for visually presenting information, such as smart glasses or a head-mounted display.

[1326] An "emotion recognition engine" refers to software or hardware that analyzes data such as a user's facial expressions, voice, and text to identify emotions.

[1327] "Image recognition technology" refers to technology that analyzes visual information in digital images and videos and recognizes specific patterns and objects.

[1328] "Optical character recognition technology" refers to technology that reads characters in an image as digital data.

[1329] A system for implementing this invention includes a display device worn by a user, a server, and a terminal. The user uses the camera on the display device to take pictures of items they have brought with them. The terminal processes the images and sends the data to the server. The server extracts information about the items from the received images and uses the results to analyze the user's preferences. Based on the analysis results, the server recommends the next item to read and provides the information to the user via the display device.

[1330] Furthermore, the server is equipped with an emotion recognition engine that recognizes the user's emotions and reflects them in the analysis results, enabling personalized recommendations that match the user's mood at the time.

[1331] The hardware includes smart glasses, head-mounted displays, terminals, and servers, while the software uses image recognition algorithms (such as YOLO and Faster R-CNN), Tesseract OCR (optical character recognition technology), collaborative filtering engines, and emotion recognition engines.

[1332] As a specific example, a user wears smart glasses while riding in an autonomous vehicle and takes an image of an item using the glasses' camera. The device sends the image to a server, which uses image recognition technology to extract the item's name and author's name. The server then uses optical character recognition technology to read detailed text information and compares it with an in-house database to obtain more detailed information. Based on the results, the system analyzes the user's reading habits and generates recommendations that take into account their mood at the time using an emotion recognition engine. Finally, information about the next item to read is displayed on the smart glasses' display.

[1333] An example of a prompt is:

[1334] "The user puts on the smart glasses and takes a picture of the item. The server recognizes the item and analyzes the user's preferences. As a result, it recommends the next appropriate item to read."

[1335] There is.

[1336] This system not only allows users to efficiently select their next reading item in an autonomous vehicle, but also provides a personalized reading experience that is tailored to their mood at the time.

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

[1338] Step 1:

[1339] A user takes an image of an item using the camera of the display device.

[1340] Input: Actual item

[1341] Output: Digital image of the item

[1342] Specific operation: The user points the camera of the smart glasses at an object and presses the shutter button to capture an image.

[1343] Step 2:

[1344] The terminal transmits the captured image data to the server.

[1345] Input: Digital image of the item

[1346] Output: Image data sent to the server

[1347] Specific operation: The smart glasses generate an HTTP POST request and send the captured image data and user authentication information to the server.

[1348] Step 3:

[1349] The server receives and stores the transmitted image data.

[1350] Input: Image data, user authentication information

[1351] Output: Saved image data

[1352] Specific operation: The server receives the HTTP request, stores the image data in a temporary storage area, and records the corresponding user authentication information.

[1353] Step 4:

[1354] The server uses image recognition technology to extract the name and related information of the item.

[1355] Input: Saved image data

[1356] Output: Text information of the item (name, author name, etc.)

[1357] Specific operation: The server uses the YOLO or Faster R-CNN algorithm to identify the object area in the image, and then extracts text information from the identified area using OCR technology.

[1358] Step 5:

[1359] The server compares the extracted text information with a database.

[1360] Input: Extracted text information

[1361] Output: Confirmed item information

[1362] Specific operation: The server accesses an internal database and compares the extracted text information to obtain detailed information such as the name of the item, author, publication year, and genre.

[1363] Step 6:

[1364] The server aggregates and updates the user's reading profile.

[1365] Input: Confirmed item information

[1366] Output: Updated reading profile

[1367] Specific operation: The server adds the newly acquired item information to the user's existing reading profile, keeping the user's preferences up to date.

[1368] Step 7:

[1369] The server uses an emotion recognition engine to analyze the user's emotions.

[1370] Input: User reading history, facial expression data, text input data

[1371] Output: Parsed emotion data

[1372] Specific operation: The server launches an emotion recognition engine and comprehensively analyzes the user's accumulated data, such as reading history, facial expression capture, and text input, to identify the user's emotional state.

[1373] Step 8:

[1374] The server selects the next item to read and generates recommendations.

[1375] Input: Updated reading profile, parsed sentiment data

[1376] Output: A list of recommended items

[1377] How it works: The server uses collaborative filtering and content-based recommendation algorithms to select the next item to read based on the user's individual reading habits and emotional state, and creates a recommendation list.

[1378] Step 9:

[1379] The device receives the recommendation results and displays them to the user.

[1380] Input: List of recommended items

[1381] Output: Recommendation results displayed to the user

[1382] Specific operation: The smart glasses receive the recommendation results sent from the server and display them on the visual display, allowing the user to check the next item to read.

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

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

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

[1386] [Fourth embodiment]

[1387] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.

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

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

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

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

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

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

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

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

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

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

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

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

[1400] This invention relates to a system that allows a user to take an image of their bookshelf, analyzes the image to understand the user's reading habits, and recommends the next book to read based on that information. This system is designed to be easy for users to use, and operates through the cooperation of a terminal and a server.

[1401] Program Generation and Processing Description

[1402] 1. The user takes a picture of the bookshelf

[1403] The user uses the smartphone camera to take a picture of their bookshelf, capturing the entire shelf in the image.

[1404] 2. The device sends the image to the server

[1405] The user's smartphone (device) makes an HTTP POST request to send the captured image file to the server, which also includes user authentication information.

[1406] 3. The server receives the image

[1407] The server passes the received image file to the analysis module, where it is temporarily stored on the server's disk.

[1408] 4. The server recognizes the book in the image

[1409] The server uses image recognition technology to identify the area of ​​each book placed on the shelf, using algorithms such as YOLO and Faster R-CNN.

[1410] 5. The server extracts the book title and author name

[1411] The server uses optical character recognition (OCR) technology to extract text information, such as the title and author name, from the identified book region, which is then checked against a database.

[1412] 6. The server organizes the book information

[1413] The server stores the extracted book information in a database, supplementing each book with detailed information such as the title, author, publication year, and genre.

[1414] 7. The server analyzes the user's reading habits

[1415] The server analyzes the user's reading habits based on the organized book information, such as bias toward specific genres and distribution of publication years.

[1416] 8. The server selects the next book

[1417] The server uses a recommendation algorithm to select the next book to read based on the user's reading habits, as well as external data such as reviews, author interviews, and bookstore fairs.

[1418] 9. The server generates the recommendation results

[1419] The server generates a list of selected books in JSON format and sends it to the terminal.

[1420] 10. The device receives and displays the recommendation results

[1421] The user's smartphone (terminal) receives the recommendation results sent from the server and displays them to the user via a dedicated application or web interface.

[1422] Specific examples

[1423] Users take a photo of their bookshelf with their smartphone and send it to the server via the application. The server analyzes the image and extracts titles such as "Harry Potter and the Philosopher's Stone" or "The Da Vinci Code" and author names. This information is then compared with an internal database to confirm publication dates such as 1997 or 2003.

[1424] The server then analyzes the user's reading habits based on the information from these books, determining that the user is interested in fantasy and mystery novels, and further confirming that the user has a strong interest in works published in the early 2000s.

[1425] The server references external data and, based on this information, adds related works such as "Inferno" and "Percy Jackson & the Olympians" to a recommendation list, which is then sent to the device in JSON format. Finally, the recommendation is displayed on the user's smartphone, allowing the user to check detailed information about the next book to read.

[1426] This allows users to automatically obtain the optimal reading list by simply providing an image of their bookshelf, allowing them to effortlessly find the next book to read. This system improves user convenience and provides a richer reading experience.

[1427] The processing flow will be explained below.

[1428] Step 1:

[1429] The user takes a picture of the bookshelf.

[1430] The user takes a picture of the bookshelf using the camera on their smartphone, making sure that the entire bookshelf is included in the image.

[1431] Step 2:

[1432] The device sends the captured image to the server.

[1433] The device (user's smartphone) uploads the captured image file to the server using an HTTP POST request, which also includes user authentication information.

[1434] Step 3:

[1435] The server receives the image.

[1436] The server receives the HTTP request and stores the image file in a temporary location, along with the corresponding user identification information.

[1437] Step 4:

[1438] The server recognizes the book in the image.

[1439] The server uses an image recognition algorithm (e.g., YOLO or Faster R-CNN) to identify the region of each book in the image. In this step, the shape and position of the book in the image are detected.

[1440] Step 5:

[1441] The server extracts the book title and author name.

[1442] The server uses optical character recognition (OCR) technology to extract text information such as the title and author name from the identified book region. The resulting strings are temporarily stored.

[1443] Step 6:

[1444] The server checks the extracted information against a database.

[1445] The server compares the text information obtained by OCR with the title and author information in its internal database to obtain related publication year and genre information. This comparison improves the accuracy of the extracted information.

[1446] Step 7:

[1447] The server aggregates users' reading data.

[1448] The server aggregates all book information to create a user's reading profile, including book title, author, publication year, genre, and more.

[1449] Step 8:

[1450] The server analyzes interests by genre and age group.

[1451] The server analyzes the user's reading profile to identify trends in interest in specific genres and publication years, thereby understanding patterns in the books the user has read in the past.

[1452] Step 9:

[1453] The server learns the relevant information.

[1454] The server learns about related works by referencing external databases such as review sites, author interviews, and bookstore fair data, thereby improving the accuracy of finding new books that match the user's interests.

[1455] Step 10:

[1456] The server selects the next book.

[1457] The server uses collaborative filtering and content-based recommendation algorithms to select the next book to read based on the user's reading habits and external data.

[1458] Step 11:

[1459] The server generates the recommendation results.

[1460] The server generates a list of books to read next in JSON format and prepares it for sending to the device.

[1461] Step 12:

[1462] The device receives the recommendation results.

[1463] The device (user's smartphone) receives the recommendation results sent from the server. The received data is in JSON format.

[1464] Step 13:

[1465] The device displays the recommendation results to the user.

[1466] The device analyzes the received recommendation results and displays them to the user through a user interface, allowing the user to check the list of books to read next and detailed information.

[1467] Example 1

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

[1469] Conventional reading recommendation systems require users to manually input information about the books they have read, which is time-consuming and makes it difficult to accurately grasp the user's reading habits. Furthermore, they often fail to provide appropriate recommendations that reflect the user's reading habits. This makes it difficult for users to efficiently find the next book they should read, and this has led to issues with the reading experience not being improved.

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

[1471] In this invention, the server includes means for the user to take an image, means for the terminal to send the taken image to the server, means for the server to extract book information from the received image, means for the server to analyze the extracted information and grasp the user's reading habits, means for the server to generate recommendations based on the user's reading habits, and means for the terminal to display the generated recommendations to the user. This allows the user to receive automatic recommendations of books to read next simply by taking an image of their bookshelf.

[1472] A "user" refers to an entity that takes an image of their own bookshelf and provides the information to the system.

[1473] "Terminal" refers to the device (e.g., smartphone or tablet) that a user uses to take an image and send it to a server.

[1474] The "server" refers to a computer system that analyzes received images, extracts book information, understands the user's reading habits, and generates a recommendation list.

[1475] "Image" refers to photo data of a bookshelf taken by a user using a terminal.

[1476] "Book information" refers to various data related to a book, such as the book title, author name, publication year, genre, etc.

[1477] "User reading habits" refers to a user's reading patterns and preferences based on the genres and trends of books the user has read to date, the distribution of publication years, and so on.

[1478] "Recommendation" refers to a suggestion of a book selected by the server as the next book to read based on the user's reading habits.

[1479] "Image recognition technology" refers to technology that detects specific objects from image data and identifies their areas.

[1480] "Optical character recognition technology" refers to the technology for extracting text information from images of books.

[1481] "Receiving" refers to the server receiving data sent from the terminal.

[1482] "Analysis" refers to the analysis of information based on the data received by the server.

[1483] This invention relates to a system that allows a user to take an image of their bookshelf, analyzes the image to understand the user's reading habits, and recommends the next book to read based on that information. This system is designed to be easy for users to use, and operates through the cooperation of a terminal and a server.

[1484] First, the user takes a picture of the bookshelf using the smartphone camera. The image is saved in the smartphone's internal storage. The device then uses a dedicated application to send the image file to the server. This is done using an HTTP POST request, which also includes user authentication information.

[1485] The server extracts the image file and user authentication information from the received HTTP POST request, temporarily stores the image file in the server's storage, and then uses an image recognition algorithm (e.g., YOLO, Faster R-CNN) to detect the regions of each book in the image, thereby identifying which parts are individual books.

[1486] The server then uses optical character recognition (OCR) technology (e.g., Tesseract) to extract text information from the book's domain. Based on the extracted text information, the server obtains the book's title and author name and stores them in a string format. The server then connects to a database management system (e.g., MySQL, PostgreSQL) to store this information in a database, and completes any necessary additional information (such as publication year and genre) by matching it with external APIs or internal data sources.

[1487] Based on the information stored in the database, the server uses data analysis tools (e.g., Python, R) to analyze the user's reading habits. For example, if the user has a preference for a particular genre, the server identifies this preference and updates the user profile. The server then uses a recommendation algorithm (e.g., collaborative filtering) to select the next book to read based on the user's reading habits. It also takes into account external data such as reviews and author interviews.

[1488] The server generates a list of selected books in JSON format, including detailed information such as the book title, author, publication year, genre, and reviews. Finally, the device receives the JSON data sent from the server and displays it to the user via a dedicated application or web interface. The user can then check the details of the recommended books and plan their next reading.

[1489] As a concrete example, a user takes a picture of their bookshelf with their smartphone and sends it to a server via an application. The server analyzes the received image and extracts titles such as "Fictional Book Title A" and "Fictional Book Title B" and author names. This information is compared with an internal database to confirm, for example, the publication year and genre. The server then analyzes the user's reading habits based on this book information and determines, for example, that the user is interested in fantasy and mystery novels. It then adds related books to a recommendation list and sends it to the device in JSON format. Finally, the user's smartphone displays these recommendations, allowing the user to check detailed information about the next book they should read.

[1490] Examples of prompts to be input into a generative AI model include, "Please generate a program for a system that takes a photo of a bookshelf, analyzes it, understands the user's reading habits, and recommends the next book they should read," and "Please explain the process of analyzing a photo of a bookshelf and recommending appropriate books to a user who has a reading tendency biased toward a particular genre."

[1491] This system will enable users to simply provide an image of their bookshelf and automatically receive recommendations on what books to read next, dramatically improving convenience.

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

[1493] Step 1:

[1494] The user takes a picture of the bookshelf.

[1495] Input: Your smartphone camera.

[1496] Specific actions: The user opens the camera app on their smartphone and takes a picture that fits the entire bookshelf.

[1497] Output: The captured image file (e.g., JPEG format) is saved to the smartphone's internal storage.

[1498] Step 2:

[1499] The device sends the image to the server.

[1500] Input: The captured image file and user credentials (e.g. API key or token).

[1501] Specific operation: The user launches the dedicated application on the device and taps the "Upload image" button. The user selects a saved image and selects "Send" when a confirmation dialog box appears asking whether to send the image to the server.

[1502] Output: An HTTP POST request is sent to the server containing the image file and the user's credentials.

[1503] Step 3:

[1504] The server receives the image.

[1505] Input: Image file and user credentials in an HTTP POST request.

[1506] What happens: The server receives the request, verifies whether the authentication information is correct, and if the authentication is successful, saves the image file to a temporary directory on the server.

[1507] Output: An image file saved in a temporary directory and the success / failure status of the authentication.

[1508] Step 4:

[1509] The server recognizes the book in the image.

[1510] Input: Image files saved in a temporary directory.

[1511] What it does: The server uses an image processing algorithm (e.g., YOLO, Faster R-CNN) to detect the regions of each book in the image.

[1512] Output: Coordinates indicating the area of ​​each book.

[1513] Step 5:

[1514] The server extracts the book title and author name.

[1515] Input: Coordinate information indicating the area of ​​each book.

[1516] Specific operation: The server uses optical character recognition (OCR) technology (e.g., Tesseract) to extract text information from the book region, and obtains the book title and author name based on the extracted text information.

[1517] Output: A list of book titles and authors.

[1518] Step 6:

[1519] The server organizes the book information.

[1520] Input: A list of book titles and author names.

[1521] What it does: The server connects to a database management system (e.g., MySQL, PostgreSQL) and stores this information in a database. It also retrieves additional information from an external API, such as publication year and genre, and adds it to the database.

[1522] Output: Complete book information stored in a database.

[1523] Step 7:

[1524] The server analyzes the user's reading habits.

[1525] Input: Book information stored in the database.

[1526] What it does: The server uses data analysis tools (e.g., Python, R) to analyze the user's reading habits and update the user profile based on biases toward specific genres and publication years.

[1527] Output: Updated user profile and reading habits analysis.

[1528] Step 8:

[1529] The server selects the next book.

[1530] Input: Updated user profile and reading habits analysis.

[1531] What it does: The server uses a recommendation algorithm (e.g., collaborative filtering) to select the next book to read, taking into account external data (e.g., reviews, author interviews, etc.).

[1532] Output: A list of recommended books.

[1533] Step 9:

[1534] The server generates the recommendation results.

[1535] Input: A list of recommended books.

[1536] What happens: The server formats the recommended book information into JSON format, which includes details such as the book title, author, publication year, genre, and reviews.

[1537] Output: A list of recommended books formatted in JSON.

[1538] Step 10:

[1539] The device receives and displays the recommendation results.

[1540] Input: A list of recommended books in JSON format.

[1541] Specific operation: The device receives the JSON data sent from the server and displays it to the user via a dedicated application or web interface. The user can then check the detailed information of the recommended books.

[1542] Output: A screen showing detailed information about the recommended book.

[1543] The above is a detailed description of the specific processing steps of the system and the data processing and data calculations performed in each step.

[1544] (Application example 1)

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

[1546] In recent years, with the spread of food delivery services, users are increasingly faced with the challenge of selecting the most suitable dish from a wide variety of menus. Finding the dish that best suits one's food preferences among the many options available is a time-consuming and laborious task. There is also a need for systems that can provide personalized recommendations that take into account a user's past eating history and preferences.

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

[1548] In this invention, the server includes means for a user to take an image, means for a terminal to send the taken image to the server, means for the server to extract meal information from the received image, means for the server to analyze the extracted information and understand the user's food preferences, means for the server to generate recommendations based on the user's food preferences, and means for the terminal to display the generated recommendations to the user. This allows a user to easily find the next dish that suits their preferences by simply taking an image of their meal.

[1549] "User" refers to any individual or organization that uses this system.

[1550] "Image" means visual information captured by a user using a smartphone or other imaging device.

[1551] "Terminal" refers to a device used by a user, such as a smartphone or tablet.

[1552] "Server" refers to a computer system that provides services over a network, such as analyzing images, storing data, and generating recommendations.

[1553] "Meal information" refers to the names of ingredients, dishes, and other related information extracted from the captured image.

[1554] "Food preferences" refers to personal preferences such as the types of food and drinks a user likes, cooking preferences, and seasoning preferences.

[1555] "Recommendations" refers to information about dishes and restaurants suggested based on the user's food preferences.

[1556] "Image recognition technology" refers to technology for detecting specific objects or text from images and identifying their content.

[1557] "Optical character recognition technology" means technology that converts character information in an image into digital text.

[1558] "Display" refers to the act of visually providing information to a user on a terminal screen.

[1559] This invention is a system that allows users to find restaurants and cuisines that suit their food preferences. This system is realized through a series of steps: the user takes an image, analyzes the image to understand the user's food preferences, and generates and displays recommendations based on the image.

[1560] System Configuration

[1561] The system consists of the following main elements:

[1562] 1. User's device

[1563] The user's device is a smartphone or tablet, and the built-in camera is used to take pictures of the food.

[1564] 2. Server

[1565] It is a computer system that provides services over the network, and performs image analysis, data storage, and recommendation generation. Image analysis uses image recognition technologies such as YOLO and Faster R-CNN.

[1566] Pytesseract is used as the optical character recognition (OCR) technology.

[1567] Program processing explanation

[1568] Taking and uploading images

[1569] A user takes a photo of their daily meal using the camera app on their smartphone. This image is temporarily saved in the smartphone's storage. The image file is then sent to the server via an HTTP POST request using the requests library, including user authentication information.

[1570] Image analysis and data extraction

[1571] The server temporarily stores the received image files on its disk for analysis. Next, it uses image recognition algorithms such as YOLO and Faster R-CNN to identify the meal contents and ingredients. It then uses pytesseract to extract text information from the images and identify the names of ingredients and dishes.

[1572] Understanding user preferences

[1573] The server uses the extracted information to store and analyze the user's food preferences in a database, making it possible to understand preferences for specific dishes or ingredients, as well as trends in favorite dishes.

[1574] Recommendation generation

[1575] Based on the analysis results, the server recommends the food and restaurant that best suits the user's preferences. It also references external data such as reviews and ratings from other users. The recommendation information is generated in JSON format and sent to the user's device.

[1576] Displaying recommendations

[1577] The user's device displays the received recommendation information in a dedicated application or web interface, where the user can check detailed information about the next dish to order.

[1578] Examples of concrete examples and prompts

[1579] Specific examples

[1580] A user takes a photo of "sushi" with their smartphone and uploads it to the server via the application. The server analyzes the received image and identifies ingredients such as "sushi" and "sashimi." It then uses OCR technology to extract menu items and restaurant names. Based on this information, the server determines that the user likes Japanese food and recommends sushi restaurants and related menu items. Finally, these recommendations are displayed on the smartphone screen, allowing the user to easily select the next dish or restaurant to visit.

[1581] Prompt Sentence Examples

[1582] "Take a photo of your recent meal. We'll analyze it and suggest your next meal based on your preferences. Why not try sushi or Japanese cuisine today?"

[1583] In this way, the present invention provides a system that allows users to choose their daily meals in an enjoyable and efficient manner.

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

[1585] Step 1:

[1586] A user takes a picture of a meal using the camera app on their smartphone. At this time, the image is temporarily saved in the smartphone's storage. The input data is the image of the meal, and the output data is the saved image file. Specifically, the user launches the camera app and presses the capture button to capture the image.

[1587] Step 2:

[1588] The device sends the captured image to the server. The image file is transferred to the server using an HTTP POST request. The request also includes authentication information such as the user ID. The input data is the saved image file and user authentication information, and the output data is the image received by the server. Specifically, the requests library is used to upload the image file to the server.

[1589] Step 3:

[1590] The server temporarily saves the image file it receives. The image file is saved to the server's disk for analysis. The input data is the image file sent to the server, and the output data is the image file saved to the disk. Specifically, the server saves the image file to a specified directory.

[1591] Step 4:

[1592] The server extracts meal information from the image. It uses image recognition technology (YOLO or Faster R-CNN) to identify ingredients and dish names in the image. It also uses OCR technology (pytesseract) to extract text information from the image. The input data is an image file stored on disk, and the output data is the extracted text information of ingredients and dish names. Specifically, it runs an image analysis algorithm to obtain the identified ingredients and text information.

[1593] Step 5:

[1594] The server saves the extracted information in a database and analyzes the user's food preferences. In order to understand biases towards specific dishes or ingredients, the data is analyzed by comparing it with the history stored in the database. The input data is the text information of the extracted ingredients and dish names, and the output data is the analyzed user preference information. Specifically, the extracted data is saved in a database and compared with past data to analyze preference trends.

[1595] Step 6:

[1596] The server generates optimal recommendations for the user based on the analysis results. Recommendations are generated by referring to reviews and ratings from other users. The input data is the analyzed user preference information, and the output data is the recommendation information in JSON format. Specifically, the recommendation algorithm is executed to select appropriate dishes and restaurants.

[1597] Step 7:

[1598] The device receives the recommendation information sent from the server and visually displays it to the user. The input data is the JSON data of the recommendation sent from the server, and the output data is the recommendation information displayed on the device's display. Specifically, the device reads the recommendation information using a dedicated application or web interface and presents it to the user.

[1599] In this way, users can get personalized recommendations for dishes and restaurants based on photos of their meals.

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

[1601] The present invention relates to a system that allows a user to take an image of their bookshelf, analyzes the image to understand the user's reading habits, and recommends the next book to read based on that information.The present invention also includes a function that recognizes the user's emotions by combining it with an emotion engine and makes more advanced recommendations.

[1602] Program Generation and Processing Description

[1603] 1. The user takes a picture of the bookshelf

[1604] The user takes a picture of their bookshelf using the smartphone camera, making sure that the entire bookshelf is included in the image.

[1605] 2. The device sends the image it has taken to the server

[1606] The user's smartphone (device) uploads the captured image file to the server using an HTTP POST request, which also includes user authentication information.

[1607] 3. The server receives the image

[1608] The server receives the HTTP request and stores the image file in a temporary location, along with the corresponding user identification information.

[1609] 4. The server recognizes the book in the image

[1610] The server uses an image recognition algorithm (e.g., YOLO or Faster R-CNN) to identify the region of each book in the image. In this step, the shape and position of the book in the image are detected.

[1611] 5. The server extracts the book title and author name

[1612] The server uses optical character recognition (OCR) technology to extract text information such as the title and author name from the identified book region. The resulting strings are temporarily stored.

[1613] 6. The server checks the extracted information against a database

[1614] The server compares the text information obtained by OCR with the title and author information in its internal database to obtain related publication year and genre information. This comparison improves the accuracy of the extracted information.

[1615] 7. The server aggregates user reading data

[1616] The server aggregates all book information to create a user's reading profile, including book title, author, publication year, genre, and more.

[1617] 8. The server analyzes genre and age-based interests

[1618] The server analyzes the user's reading profile to identify trends in interest in specific genres and publication years, thereby understanding patterns in the books the user has read in the past.

[1619] 9. Emotion Recognition Using Emotion Engine

[1620] The server uses an emotion engine to recognize the user's emotions. The emotion engine recognizes the user's emotions about the book they have read through methods such as analyzing the user's reading history, facial expressions, and text input.

[1621] 10. The server selects the next book

[1622] The server selects the next book to read based on the user's reading habits and the emotion recognition results of the emotion engine, using collaborative filtering and content-based recommendation algorithms.

[1623] 11. The server generates the recommendation results

[1624] The server generates a list of books to read next in JSON format and prepares it for sending to the device.

[1625] 12. The device receives and displays the recommendation results

[1626] The user's smartphone (device) receives the recommendation results sent from the server and displays them to the user via a dedicated application or web interface. The user can then check the list of books they should read next and detailed information.

[1627] Specific examples

[1628] Users take a photo of their bookshelf with their smartphone and send it to the server via the application. The server analyzes the image and extracts titles such as "Harry Potter and the Philosopher's Stone" or "The Da Vinci Code" and author names. This information is then compared with an internal database to confirm publication dates such as 1997 or 2003.

[1629] The server then analyzes the user's reading habits based on this book information, determining that the user is interested in fantasy and mystery novels. It then uses an emotion engine to analyze the user's feelings toward the book. Using facial expression analysis, the server can detect that the user smiled frequently while reading a particular book and recognize that the book left a positive impression on the user.

[1630] As a result, the server adds related works such as "Inferno" and "Percy Jackson & the Olympians" to a recommendation list and sends it to the device in JSON format. The user's smartphone displays this recommendation, allowing the user to check detailed information about the next book they should read.

[1631] This allows users to not only automatically obtain the optimal reading list by simply providing an image of their bookshelf, but also receive more accurate reading recommendations through emotion recognition. This system improves user convenience and provides a richer reading experience.

[1632] The processing flow will be explained below.

[1633] Step 1:

[1634] The user takes a picture of the bookshelf.

[1635] The user takes a picture of the bookshelf using the camera on their smartphone, making sure that the entire bookshelf is included in the image.

[1636] Step 2:

[1637] The device sends the captured image to the server.

[1638] The device (user's smartphone) uploads the captured image file to the server using an HTTP POST request, which also includes user authentication information.

[1639] Step 3:

[1640] The server receives the image.

[1641] The server receives the HTTP request and stores the image file in a temporary location, along with the corresponding user identification information.

[1642] Step 4:

[1643] The server recognizes the book in the image.

[1644] The server uses an image recognition algorithm (e.g., YOLO or Faster R-CNN) to identify the region of each book in the image. In this step, the shape and position of the book in the image are detected.

[1645] Step 5:

[1646] The server extracts the book title and author name.

[1647] The server uses optical character recognition (OCR) technology to extract text information such as the title and author name from the identified book area, and stores this information as text data.

[1648] Step 6:

[1649] The server checks the extracted information against a database.

[1650] The server compares the text information obtained by OCR with the title and author information in its internal database to obtain relevant publication year and genre information, thereby improving the accuracy of the extracted information.

[1651] Step 7:

[1652] The server aggregates users' reading data.

[1653] The server aggregates all book information and creates a reading profile for the user, including book title, author, publication year, genre, and other information.

[1654] Step 8:

[1655] The server analyzes interests by genre and age group.

[1656] The server analyzes the user's reading profile to identify trends in interest in specific genres and publication years, thereby understanding patterns in the books the user has read in the past.

[1657] Step 9:

[1658] Recognize user emotions using an emotion engine.

[1659] The server's emotion engine analyzes images and videos taken by the user in front of the bookshelf and recognizes emotions from the user's facial expressions, voice, gestures, etc. The emotion engine uses this information to understand the user's emotional response to their reading history.

[1660] Step 10:

[1661] The server integrates the emotion recognition results into the user's reading profile.

[1662] The server integrates the emotion data obtained by the emotion engine into the user's reading profile to further improve the accuracy of reading habits.

[1663] Step 11:

[1664] The server learns the relevant information.

[1665] The server queries external databases such as review sites, author interviews, and bookstore fair data to learn about related works, improving the accuracy of finding new books that match the user's interests.

[1666] Step 12:

[1667] The server selects the next book.

[1668] The server selects the next book to read based on the user's reading habits, emotion recognition results, and external data, using collaborative filtering and content-based recommendation algorithms.

[1669] Step 13:

[1670] The server generates the recommendation results.

[1671] The server generates a list of books to read next in JSON format and prepares it for sending to the device.

[1672] Step 14:

[1673] The device receives the recommendation results.

[1674] The device (user's smartphone) receives the recommendation results sent from the server. The received data is in JSON format.

[1675] Step 15:

[1676] The device displays the recommendation results to the user.

[1677] The device analyzes the received recommendation results and displays them to the user through a user interface, allowing the user to check the list of books to read next and detailed information.

[1678] Example 2

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

[1680] Conventional reading recommendation systems require users to manually input their reading history, which is cumbersome and makes it difficult to accurately grasp reading trends. In addition, since recommendations do not take into account the user's emotions, there is an issue that recommendations cannot be made that are completely tailored to the user's preferences.

[1681] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes a means for a user to take an image, a means for a terminal to send the taken image to the server, a means for the server to extract book information from the image received, a means for the server to analyze the extracted information and grasp the user's reading habits, a means for the server to generate recommendations based on the user's reading habits, a means for the terminal to display the generated recommendations to the user, a means for the server to recognize the user's emotions, and a means for the server to generate recommendations based on the emotion recognition results. As a result, an optimal reading list can be automatically generated simply by the user providing an image of their bookshelf, and highly accurate recommendations that take the user's emotions into consideration are also possible.

[1682] "User" refers to a person who uses the system to take pictures of their bookshelves and receive recommendations.

[1683] "Terminal" refers to the device used by the user to take an image of the bookshelf and send the image to the server. This primarily includes mobile devices such as smartphones and tablets.

[1684] The "server" refers to a computer system that receives images sent by users, analyzes them, and generates reading recommendations. It includes a database and an analysis engine.

[1685] The "means for taking an image" refers to a camera function or an application that provides a function for a user to take an image of the bookshelf.

[1686] "Means of transmission" refers to the communication function used by the device to send the captured image to the server, for example, using an HTTP POST request.

[1687] "Means for extracting book information from images" refers to the technology used by the server to identify information such as the book title and author name from the images received. Specifically, this includes image recognition algorithms and optical character recognition technology.

[1688] "Means of analyzing and understanding the user's reading habits" refers to the process of analyzing the user's reading history and interests based on the book information extracted by the server.

[1689] "Means for generating recommendations" refers to the algorithm that the server uses to recommend the next book the user should read based on the analysis results.

[1690] "Display means" refers to an interface that visually presents the generated recommendation results to the user, including a dedicated application and a web interface.

[1691] "Means for recognizing emotions" refers to the technology used by the server to analyze and understand the user's emotions, including facial expression analysis and text input analysis.

[1692] "Means for generating recommendations based on emotion recognition results" refers to an algorithm that allows the server to reflect emotion recognition results and provide more accurate reading recommendations.

[1693] The present invention relates to a system that allows a user to take an image of their bookshelf, analyzes the image to understand the user's reading habits, and recommends the next book to read based on that information.The present invention also includes a function that recognizes the user's emotions by combining it with an emotion engine and makes more advanced recommendations.

[1694] The user takes a full-size image of the bookshelf using the smartphone camera. This image is sent to the server via a dedicated application. The application then generates an HTTP POST request to send the captured image file and user authentication information to the server.

[1695] The server receives the HTTP request and temporarily stores the image file. It also stores the received user identification information in a database. The server then uses Python to invoke the YOLO (You Only Look Once) model to identify the area of ​​each book in the image. The identified area is then enclosed in a rectangle, and this information is passed to the next analysis step.

[1696] The server then uses an OCR (Optical Character Recognition) library (e.g., Tesseract) to extract text information such as the title and author name from the identified book region. The extracted strings are then formatted and converted into a user-readable form. The extracted text information is also matched with title and author information in an internal database to obtain relevant publication year and genre information.

[1697] The server aggregates all book information and creates a reading profile for the user. This profile includes the book title, author, publication year, and genre, and the server analyzes the user's reading habits based on this information. Furthermore, the server uses an emotion engine (for example, Microsoft Azure's Emotion API) to recognize the user's emotions by analyzing the user's facial expressions and text comments. These results are also reflected in the reading profile.

[1698] The server runs a collaborative filtering algorithm, combining the user's reading habits with emotion recognition results to select the next book to read. The generated recommendation results are sent to the device in JSON format. The user's smartphone receives this information and displays it to the user through a dedicated application or web interface.

[1699] As a concrete example, consider the case where a user takes a picture of their bookshelf with their smartphone and sends it to a server via an application. The server identifies titles and authors, such as "Harry Potter and the Philosopher's Stone" and "The Da Vinci Code," and retrieves associated publication dates, such as 1997 and 2003, from a database. The server analyzes the user's reading habits and determines that they are interested in fantasy and mystery novels. It then uses an emotion engine to detect that the user smiled frequently while reading these books.

[1700] As a result, the server adds related titles, such as "Inferno" and "Percy Jackson & the Olympians," to a recommendation list and sends it to the device in JSON format. The user's smartphone receives this information and can display it within the application.

[1701] As an example of a prompt, you can ask the system the following questions:

[1702] "Please recommend me the next book I should read based on the trends in the books I own. Please analyze this bookshelf image."

[1703] "Please recommend new books based on your impressions of the books you have read so far."

[1704] "Please analyze the image of the bookshelf and recommend books for me."

[1705] This system allows users to automatically obtain the optimal reading list simply by providing an image of their bookshelf, and can also receive even more accurate reading recommendations through emotion recognition.

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

[1707] Program processing flow

[1708] Step 1:

[1709] The user takes a picture of the bookshelf

[1710] Specific operation: The user launches the camera app on their smartphone and takes an image that captures the entire bookshelf.

[1711] Input: An image of a bookshelf.

[1712] Output: Image files saved in your smartphone's gallery.

[1713] Step 2:

[1714] The device sends the captured image to the server.

[1715] How it works: The user launches the app and selects the image of the bookshelf they just took. The app then generates an HTTP POST request to send the image file along with the user's authentication information to the server.

[1716] Input: User authentication information, image file of the bookshelf.

[1717] Output: Image file and user authentication information sent to the server.

[1718] Step 3:

[1719] The server receives the image

[1720] What happens: The server analyzes the received HTTP request, temporarily stores the image file, and stores the associated user identification information in a database.

[1721] Input: The image file and user identification information included in the HTTP request.

[1722] Output: Temporarily saved image file, saved user identification information.

[1723] Step 4:

[1724] The server recognizes the book in the image

[1725] How it works: The server uses a Python script to call the YOLO (You Only Look Once) model to identify the area of ​​each book in the image, which is then enclosed in a rectangle.

[1726] Input: A temporarily saved image file.

[1727] Output: Area information for each book enclosed in a rectangle.

[1728] Step 5:

[1729] The server extracts the book title and author name

[1730] Specific operation: The server uses an OCR (Optical Character Recognition) library (e.g., Tesseract) to extract text information such as the title and author name from the identified book region. The extracted strings are then formatted in post-processing.

[1731] Input: Region information for each identified book.

[1732] Output: Extracted text information of book title and author name.

[1733] Step 6:

[1734] The server checks the extracted information against a database

[1735] How it works: The server compares the text information obtained by OCR with the title and author information in its internal database, and retrieves relevant publication year and genre information. It uses SQL queries to match the information.

[1736] Input: Extracted text information of book title and author name.

[1737] Output: Corresponding publication year and genre information.

[1738] Step 7:

[1739] The server aggregates user reading data

[1740] What it does: The server aggregates all the book information and creates a reading profile for the user, which includes the book title, author, publication year, and genre.

[1741] Input: Matched book information (title, author, year of publication, genre).

[1742] Output: The user's reading profile.

[1743] Step 8:

[1744] The server analyzes genre and age-based interests

[1745] What it does: The server uses analytics tools (e.g., Pandas or Scikit-learn) to analyze the user's reading profile, identifying trends in interests across specific genres and publication years.

[1746] Input: The user's reading profile.

[1747] Output: Analyzed user interest trends.

[1748] Step 9:

[1749] Emotion Recognition Using Emotion Engine

[1750] Specific operation: The server uses an emotion engine (for example, Microsoft Azure's Emotion API) to recognize the user's emotions, including the user's reading history, facial expression analysis, and text input analysis.

[1751] Input: User's reading history, facial expression images, and text comments.

[1752] Output: User emotion recognition results.

[1753] Step 10:

[1754] The server selects the next book.

[1755] Specific operation: The server runs a collaborative filtering algorithm to select the next book to read based on the user's reading habits and emotion recognition results.

[1756] Input: Analyzed user interest trends, emotion recognition results.

[1757] Output: A list of books to read next.

[1758] Step 11:

[1759] The server generates the recommendation results

[1760] What happens: The server generates a list of books to read next in JSON format and prepares to save the results to an API endpoint.

[1761] Input: A list of books to read next.

[1762] Output: Generated recommendation results (JSON format).

[1763] Step 12:

[1764] The device receives and displays the recommendation results.

[1765] Specific operation: The user's smartphone (device) accesses the API endpoint, parses the received JSON data, and displays it to the user through a dedicated application or web interface.

[1766] Input: JSON data retrieved from an API endpoint.

[1767] Output: The recommendation results displayed to the user.

[1768] (Application example 2)

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

[1770] Conventional reading recommendation systems simply recommend the next book a user should read based on their reading history. This makes it difficult to provide more personalized recommendations that take into account the user's emotions and mood at the time. Furthermore, there is a demand for devices that can display information more efficiently than just mobile devices. To address this, the present invention combines a wearable display device and emotion recognition functionality to improve the user experience and enhance the convenience of reading.

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

[1772] In this invention, the server includes means for a user to take an image, means for a terminal to send the taken image to the server, means for the server to extract product information from the image received, means for the server to analyze the extracted information and grasp the user's preference trends, means for the server to generate recommendations based on the user's preference trends, means for the terminal to display the generated recommendations to the user, means for displaying the recommendation results through a display device worn by the user, and an emotion recognition engine that recognizes the user's emotions and affects the analysis results. This enables personalized recommendations that take into account the user's emotions and mood at the time, and allows information to be displayed more efficiently.

[1773] "User" refers to an individual or group that uses an information processing system.

[1774] "Means for capturing images" refers to devices and techniques that allow a user to record visual information as digital data.

[1775] "Terminal" refers to a device that a user directly operates to input information or display received information.

[1776] A "server" refers to a computer system that stores and processes data over a network and provides services to other computers.

[1777] "Item information" refers to specific data about an item, such as its name, author, publication date, etc.

[1778] "Preference trends" refer to trends in personal preferences and interests based on a user's past activities and choices.

[1779] "Recommendation" refers to a system function that suggests appropriate options and information to users.

[1780] "Display device" refers to a hardware device for visually presenting information, such as smart glasses or a head-mounted display.

[1781] An "emotion recognition engine" refers to software or hardware that analyzes data such as a user's facial expressions, voice, and text to identify emotions.

[1782] "Image recognition technology" refers to technology that analyzes visual information in digital images and videos and recognizes specific patterns and objects.

[1783] "Optical character recognition technology" refers to technology that reads characters in an image as digital data.

[1784] A system for implementing this invention includes a display device worn by a user, a server, and a terminal. The user uses the camera on the display device to take pictures of items they have brought with them. The terminal processes the images and sends the data to the server. The server extracts information about the items from the received images and uses the results to analyze the user's preferences. Based on the analysis results, the server recommends the next item to read and provides the information to the user via the display device.

[1785] Furthermore, the server is equipped with an emotion recognition engine that recognizes the user's emotions and reflects them in the analysis results, enabling personalized recommendations that match the user's mood at the time.

[1786] The hardware includes smart glasses, head-mounted displays, terminals, and servers, while the software uses image recognition algorithms (such as YOLO and Faster R-CNN), Tesseract OCR (optical character recognition technology), collaborative filtering engines, and emotion recognition engines.

[1787] As a specific example, a user wears smart glasses while riding in an autonomous vehicle and takes an image of an item using the glasses' camera. The device sends the image to a server, which uses image recognition technology to extract the item's name and author's name. The server then uses optical character recognition technology to read detailed text information and compares it with an in-house database to obtain more detailed information. Based on the results, the system analyzes the user's reading habits and generates recommendations that take into account their mood at the time using an emotion recognition engine. Finally, information about the next item to read is displayed on the smart glasses' display.

[1788] An example of a prompt is:

[1789] "The user puts on the smart glasses and takes a picture of the item. The server recognizes the item and analyzes the user's preferences. As a result, it recommends the next appropriate item to read."

[1790] There is.

[1791] This system not only allows users to efficiently select their next reading item in an autonomous vehicle, but also provides a personalized reading experience that is tailored to their mood at the time.

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

[1793] Step 1:

[1794] A user takes an image of an item using the camera of the display device.

[1795] Input: Actual item

[1796] Output: Digital image of the item

[1797] Specific operation: The user points the camera of the smart glasses at an object and presses the shutter button to capture an image.

[1798] Step 2:

[1799] The terminal transmits the captured image data to the server.

[1800] Input: Digital image of the item

[1801] Output: Image data sent to the server

[1802] Specific operation: The smart glasses generate an HTTP POST request and send the captured image data and user authentication information to the server.

[1803] Step 3:

[1804] The server receives and stores the transmitted image data.

[1805] Input: Image data, user authentication information

[1806] Output: Saved image data

[1807] Specific operation: The server receives the HTTP request, stores the image data in a temporary storage area, and records the corresponding user authentication information.

[1808] Step 4:

[1809] The server uses image recognition technology to extract the name and related information of the item.

[1810] Input: Saved image data

[1811] Output: Text information of the item (name, author name, etc.)

[1812] Specific operation: The server uses the YOLO or Faster R-CNN algorithm to identify the object area in the image, and then extracts text information from the identified area using OCR technology.

[1813] Step 5:

[1814] The server compares the extracted text information with a database.

[1815] Input: Extracted text information

[1816] Output: Confirmed item information

[1817] Specific operation: The server accesses an internal database and compares the extracted text information to obtain detailed information such as the name of the item, author, publication year, and genre.

[1818] Step 6:

[1819] The server aggregates and updates the user's reading profile.

[1820] Input: Confirmed item information

[1821] Output: Updated reading profile

[1822] Specific operation: The server adds the newly acquired item information to the user's existing reading profile, keeping the user's preferences up to date.

[1823] Step 7:

[1824] The server uses an emotion recognition engine to analyze the user's emotions.

[1825] Input: User reading history, facial expression data, text input data

[1826] Output: Parsed emotion data

[1827] Specific operation: The server launches an emotion recognition engine and comprehensively analyzes the user's accumulated data, such as reading history, facial expression capture, and text input, to identify the user's emotional state.

[1828] Step 8:

[1829] The server selects the next item to read and generates recommendations.

[1830] Input: Updated reading profile, parsed sentiment data

[1831] Output: A list of recommended items

[1832] How it works: The server uses collaborative filtering and content-based recommendation algorithms to select the next item to read based on the user's individual reading habits and emotional state, and creates a recommendation list.

[1833] Step 9:

[1834] The device receives the recommendation results and displays them to the user.

[1835] Input: List of recommended items

[1836] Output: Recommendation results displayed to the user

[1837] Specific operation: The smart glasses receive the recommendation results sent from the server and display them on the visual display, allowing the user to check the next item to read.

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

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

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

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

[1842] FIG. 9 illustrates 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 behaviors 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.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

[1859] The following is further disclosed regarding the above embodiment.

[1860] (Claim 1)

[1861] means for a user to capture an image;

[1862] A means for transmitting the captured image by the terminal to a server;

[1863] means for extracting book information from the image received by the server;

[1864] A means for analyzing the extracted information by the server to understand the user's reading habits;

[1865] A means for the server to generate recommendations based on the user's reading habits;

[1866] The system includes means for the terminal to display the generated recommendations to the user.

[1867] (Claim 2)

[1868] 10. The system of claim 1, wherein the server extracts the book title and author name using image recognition technology.

[1869] (Claim 3)

[1870] 10. The system of claim 1, wherein the server extracts the book title and author name using optical character recognition technology.

[1871] "Example 1"

[1872] (Claim 1)

[1873] means for a user to capture an image;

[1874] A means for transmitting the captured image by the terminal to a server;

[1875] means for extracting book information from the image received by the server;

[1876] A means for analyzing the extracted information by the server to understand the user's reading habits;

[1877] means for the server to generate recommendations based on the user's reading habits;

[1878] The system includes means for the terminal to display the generated recommendations to the user.

[1879] (Claim 2)

[1880] 10. The system of claim 1, wherein the server extracts the book title and author name using object recognition technology.

[1881] (Claim 3)

[1882] 10. The system of claim 1, wherein the server extracts the book title and author name using optical character recognition technology.

[1883] "Application Example 1"

[1884] (Claim 1)

[1885] means for a user to capture an image;

[1886] A means for transmitting the captured image by the terminal to a server;

[1887] means for extracting meal information from the image received by the server;

[1888] A means for analyzing the extracted information by the server to understand the user's food preferences;

[1889] A means for the server to generate recommendations based on the user's food preferences;

[1890] The system includes means for the terminal to display the generated recommendations to the user.

[1891] (Claim 2)

[1892] The system of claim 1, wherein the server extracts meal contents using image recognition technology.

[1893] (Claim 3)

[1894] 10. The system of claim 1, wherein the server extracts meal contents using optical character recognition technology.

[1895] "Example 2: Combining Emotion Engines"

[1896] (Claim 1)

[1897] means for a user to capture an image;

[1898] A means for transmitting the captured image by the terminal to a server;

[1899] means for extracting book information from the image received by the server;

[1900] A means for analyzing the extracted information by the server to understand the user's reading habits;

[1901] A means for the server to generate recommendations based on the user's reading habits;

[1902] means for displaying the generated recommendations to the user by the terminal;

[1903] A means for the server to recognize the user's emotion;

[1904] A means for the server to generate recommendations based on emotion recognition results;

[1905] A system including:

[1906] (Claim 2)

[1907] 10. The system of claim 1, wherein the server extracts the book title and author name using image recognition technology.

[1908] (Claim 3)

[1909] 10. The system of claim 1, wherein the server extracts the book title and author name using optical character recognition technology.

[1910] "Application example 2 when combining emotion engines"

[1911] (Claim 1)

[1912] means for a user to capture an image;

[1913] A means for transmitting the captured image by the terminal to a server;

[1914] means for extracting information about the item from the image received by the server;

[1915] A means for analyzing the information extracted by the server to understand the user's preference trends;

[1916] A means for the server to generate recommendations based on the user's preference trends;

[1917] means for displaying the generated recommendations to the user by the terminal;

[1918] a means for displaying the recommendation results through a display device worn by the user;

[1919] A system including an emotion recognition engine that recognizes user emotions and influences analysis results.

[1920] (Claim 2)

[1921] 10. The system of claim 1, wherein the server extracts the name of the item and the author name using image recognition technology.

[1922] (Claim 3)

[1923] 10. The system of claim 1, wherein the server extracts the name of the item and the author name using optical character recognition technology. [Explanation of symbols]

[1924] 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. means for a user to capture an image; A means for transmitting the captured image by the terminal to a server; means for extracting book information from the image received by the server; A means for analyzing the extracted information by the server to understand the user's reading habits; A means for the server to generate recommendations based on the user's reading habits; The system includes means for the terminal to display the generated recommendations to the user.

2. The system of claim 1 , wherein the server extracts the book title and author name using image recognition technology.

3. 10. The system of claim 1, wherein the server extracts the book title and author name using optical character recognition technology.

Citation Information

Patent Citations

  • Persona chatbot control method and system

    JP2022180282A