system
The system efficiently analyzes video content by dividing it into frames, extracting metadata, and generating summaries using generative AI, addressing the inefficiencies of conventional methods.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-09-04
- Publication Date
- 2026-03-16
AI Technical Summary
Conventional video analysis systems face challenges in quickly and accurately extracting and summarizing useful information from large amounts of video data, requiring manual analysis and resulting in inefficient management and utilization of video content.
A system that includes means for receiving video data, dividing it into frames, analyzing each frame, extracting metadata, and generating summaries using generative AI to provide efficient and accurate summaries.
Enables users to quickly and accurately extract useful information from large video datasets, streamlining the analysis process and improving the management and utilization of video content.
Smart Images

Figure 2026047932000001_ABST
Abstract
Description
Technical Field
[0001] The technology of the present disclosure relates to a system.
Background Art
[0002] Patent Document 1 discloses a persona chatbot control method performed by at least one processor, the method including steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to an explanation of a character of the chatbot, 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
Summary of the Invention
Problems to be Solved by the Invention
[0004] In a conventional video analysis system, it has been difficult to quickly and accurately extract and summarize useful information from a large amount of video data. Also, there is a problem that the user has to manually analyze the video data, which requires time and effort. Furthermore, since the accuracy of the analysis results and the quality of the summary are insufficient, there is a problem that the management and utilization of video content are not efficient.
Means for Solving the Problems
[0005] The present invention provides a system for analyzing video content, extracting information, and generating summaries. Specifically, the above problems are solved by constructing a system that includes means for receiving video data from a user, means for dividing the received video data into frames, means for analyzing the video content of each frame, means for extracting metadata from the analysis results, means for generating a summary based on the metadata using a generative AI, and means for providing the generated summary to the user. With this system, users can quickly and accurately extract useful information from large amounts of video data and generate efficient summaries.
[0006] "Video content" refers to media files that include visual and auditory elements, such as movies, television programs, and advertisements.
[0007] A "user" is an individual or organization that uses the system to upload video data and receives analysis results and summaries.
[0008] "Video data" refers to a media file in a digital format that contains visual information.
[0009] A "frame" is an individual still image that makes up video data.
[0010] "Analysis" is the process of examining the content of each frame and detecting specific information.
[0011] "Metadata" refers to additional information extracted from video data, such as information about people, objects, and text.
[0012] "Generative AI" is an artificial intelligence technology that uses extracted metadata to perform natural language processing and create summaries.
[0013] A "summary" is text information that concisely expresses the content of video data.
[0014] "The means for receiving" refers to the hardware and software configuration for acquiring video data from a user.
[0015] "The means for dividing" refers to the algorithm and device for splitting video data into frames.
[0016] "The means for providing" refers to the interface and communication technology for displaying or transmitting the generated summary to the user.
Brief Description of the Drawings
[0017] [Figure 1] It is a conceptual diagram showing an example of the configuration of a data processing system according to the first embodiment. [Figure 2] It is a conceptual diagram showing an example of the main functions of a data processing device and a smart device according to the first embodiment. [Figure 3] It is a conceptual diagram showing an example of the configuration of a data processing system according to the second embodiment. [Figure 4] It is a conceptual diagram showing an example of the main functions of a data processing device and smart glasses according to the second embodiment. [Figure 5] It is a conceptual diagram showing an example of the configuration of a data processing system according to the third embodiment. [Figure 6] It is a conceptual diagram showing an example of the main functions of a data processing device and a headset-type terminal according to the third embodiment. [Figure 7] It is a conceptual diagram showing an example of the configuration of a data processing system according to the fourth embodiment. [Figure 8] It is a conceptual diagram showing an example of the main functions of a data processing device and a robot according to the fourth embodiment. [Figure 9] It shows an emotion map to which a plurality of emotions are mapped. [Figure 10] It shows an emotion map to which a plurality of emotions are mapped. [Figure 11] It is a sequence diagram showing the processing flow of the data processing system in Example 1. [Figure 12]It is a sequence diagram showing the processing flow of the data processing system in Application Example 1. [Figure 13] It is a sequence diagram showing the processing flow of the data processing system in Embodiment 2 when the emotion engine is combined. [Figure 14] It is a sequence diagram showing the processing flow of the data processing system in Application Example 2 when the emotion engine is combined.
Mode for Carrying Out the Invention
[0018] Hereinafter, an example of an embodiment of the system according to the technology of the present disclosure will be described with reference to the accompanying drawings.
[0019] First, the language used in the following description will be described.
[0020] In the following embodiments, the numbered processor (hereinafter simply referred to as "processor") may be one arithmetic unit or a combination of a plurality of arithmetic units. Also, the processor may be one type of arithmetic unit or a combination of a plurality of types of arithmetic units. Examples of the arithmetic unit include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), an APU (Accelerated Processing Unit), and the like.
[0021] In the following embodiments, the numbered RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a work memory by the processor.
[0022] In the following embodiments, the signed storage is one or more non-volatile storage devices that store various programs and various parameters. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), or magnetic tapes.
[0023] In the following embodiments, the signed communication interface (I / F) is an interface that includes a communication processor and an antenna, etc. The communication interface manages communication between multiple computers. Examples of communication standards applicable to the communication interface include wireless communication standards such as 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), or Bluetooth (registered trademark).
[0024] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." That is, "A and / or B" means that it may be A alone, or B alone, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" applies when expressing three or more things linked by "and / or."
[0025] [First Embodiment]
[0026] Figure 1 shows an example of the configuration of the data processing system 10 according to the first embodiment.
[0027] As shown in Figure 1, the 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.
[0028] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0029] The smart device 14 comprises a computer 36, a reception device 38, an output device 40, a camera 42, and a communication interface 44. The computer 36 comprises a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The reception device 38, output device 40, and camera 42 are also connected to the bus 52.
[0030] The reception device 38 is equipped with a touch panel 38A and a microphone 38B, etc., and receives user input. The touch panel 38A receives user input by detecting contact with an object (e.g., a pen or finger). The microphone 38B receives user input by detecting the user's voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and 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.
[0031] 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 perceptible to the user 20 (e.g., audio and / or text). The display 40A displays visible information such as text and images according to instructions from the processor 46. The speaker 40B outputs audio according to instructions from the processor 46. The camera 42 is a small digital camera equipped with an optical system such as a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0032] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various types of information between processor 46 and processor 28 via network 54.
[0033] Figure 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0034] As shown in Figure 2, in the data processing device 12, a specific processing 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" related to the technology of this 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 according to the specific processing program 56 executed on the RAM 30.
[0035] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0036] In the smart device 14, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The reception output program 60 is used in conjunction with a 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 processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0037] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".
[0038] This invention relates to a system for analyzing video content, extracting information, and generating a summary using generative AI. The system includes a series of processes: receiving video data from a user, dividing it into frames, performing analysis, extracting metadata, and providing the generated summary to the user.
[0039] System Overview
[0040] This system consists of the following main components:
[0041] 1. Receiving unit - Receives video data from the user.
[0042] 2. Frame splitting unit - Divides the received video data into frames.
[0043] 3. Analysis Unit - Analyzes each frame and detects the video content.
[0044] 4. Metadata Extraction Unit - Extracts metadata from the analysis results.
[0045] 5. Generation Unit - Generates summaries using generative AI.
[0046] 6. Delivery Unit - Provides the generated summary to the user.
[0047] Program processing
[0048] 1. Receiving video data
[0049] The user accesses the system and uploads video data. The server receives the video data through the receiving unit and checks if it is in the correct format. If it is in a different format, it performs a format conversion.
[0050] 2. Frame division of video data
[0051] The server uses a frame division unit to divide the video data into frames. This process converts the video data into individual still images.
[0052] 3. Frame Analysis
[0053] The server analyzes each frame and detects its content. The analysis unit runs object detection algorithms to identify people, objects, and text information within the frame. It also uses deep learning models to extract scene descriptions and contextual information.
[0054] 4. Metadata Extraction
[0055] The server extracts metadata from the analysis results. The metadata extraction unit collects important information (people, objects, text, scene description) based on each frame. This information is integrated chronologically to construct the storyline.
[0056] 5. Summary generation using generative AI
[0057] The server uses generative AI to generate a summary based on the extracted metadata. The generation unit uses AI to perform natural language processing and create a summary in a format that is easy for the user to understand.
[0058] 6. Providing a summary
[0059] The server provides the generated summary to the user. Through the delivery unit, the summary is displayed to the user and can be downloaded for further analysis.
[0060] Specific example
[0061] As a concrete example, consider the case where a user uploads a movie video file.
[0062] 1. The user uploads the video data of the movie.
[0063] 2. The server receives the data, checks the format, and then divides it into frames.
[0064] 3. The server analyzes each frame and detects information such as characters, objects, and backgrounds.
[0065] 4. The server extracts and compiles this information as metadata.
[0066] 5. The server uses generative AI to generate a movie summary from the extracted metadata.
[0067] 6. The server provides the generated summary to the user, who can then review and download the summary.
[0068] This system is designed to streamline the management and analysis of video content, allowing users to quickly and accurately obtain the information they need.
[0069] The following describes the processing flow.
[0070] Step 1:
[0071] The user accesses the system interface and uploads the video data they want to analyze. Once the upload is complete, the device sends the video data to the server.
[0072] Step 2:
[0073] The server uses a receiving unit to receive video data sent from the user. Upon receipt, it verifies the format of the video data and performs format conversion (e.g., MP4 to AVI) if necessary.
[0074] Step 3:
[0075] The server uses a frame division unit to divide the received and converted video data into frames. This results in the video being a collection of individual still images (frames).
[0076] Step 4:
[0077] The server uses an analysis unit to begin analyzing each frame. Specifically, it runs an object detection algorithm to identify people, objects, and text information within the frame. Furthermore, it uses a deep learning model to extract scene descriptions and contextual information.
[0078] Step 5:
[0079] The server extracts metadata from the analysis results. The metadata extraction unit collects important information (people, objects, text, scene description) based on each frame. This information is integrated chronologically to construct the storyline.
[0080] Step 6:
[0081] The server uses a generation unit to generate a summary based on metadata using a generative AI. The generative AI then performs natural language processing on the extracted metadata to create a summary that is easy for the user to understand.
[0082] Step 7:
[0083] The server provides the generated summary to the user through the service unit. The user can view the summary through the system interface and, if necessary, download the summary data or perform further detailed analysis.
[0084] (Example 1)
[0085] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."
[0086] Conventional video content analysis systems suffered from low analysis accuracy and the time-consuming process of generating summaries for complex content. Furthermore, they were incompatible with video data in different formats, requiring users to manually convert formats, which was a significant inconvenience. Additionally, the generated summaries lacked sufficient accuracy and information, making it difficult for users to quickly and accurately obtain the information they needed.
[0087] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0088] In this invention, the server includes means for receiving video data from a user, means for checking whether the received video data is in a specified format and converting the format if it is in a different format, means for dividing the received video data into frames, means for an analysis unit to analyze the frames using an object detection algorithm and a deep learning model and extract scene description and context information, means for generating a summary based on metadata using a generative AI, and means for providing the generated summary to the user. This improves the accuracy of video analysis, supports video data in different formats, and enables the rapid and accurate generation and provision of summaries.
[0089] A "server" is a key component of a computer system that receives, processes, analyzes, and generates and provides summaries of video data.
[0090] "Video data" refers to digital information in video format uploaded by users, which is subject to analysis and summary generation.
[0091] "Format" refers to the recording format of video data, and includes different file formats such as AVI, MP4, and MKV.
[0092] "Format conversion" refers to the process of converting video data to a standard format when it differs from the specified format.
[0093] A "frame" refers to an individual still image that makes up video data, with multiple images existing per second.
[0094] A "frame splitting unit" is a hardware or software component used to divide received video data into frames.
[0095] An "analysis unit" is a hardware or software component that analyzes the content of video frame by frame and detects people, objects, and text information within each frame.
[0096] An "object detection algorithm" is a computer vision technique used to identify people and objects within a frame.
[0097] A "deep learning model" is an artificial intelligence algorithm trained using a large amount of data, and is used to extract contextual information and scene descriptions from video content.
[0098] "Metadata" refers to information extracted by the analysis unit, including information about people, objects, text, and scene descriptions.
[0099] "Generative AI" refers to artificial intelligence models that perform natural language processing and generate summaries based on extracted metadata.
[0100] A "summary" is text information created by a generative AI that concisely explains the main content of the video data.
[0101] A "delivery unit" is a hardware or software component that displays the generated summary to the user and enables downloading and further analysis.
[0102] This invention relates to a system for analyzing video content, extracting information, and generating a summary using generative AI. This system includes a series of processes: receiving video data from a user, dividing it into frames, performing analysis, extracting metadata, and providing the generated summary to the user. Specific embodiments are described below.
[0103] Hardware and software configuration
[0104] A server is a computer system for receiving, processing, analyzing, and generating and providing summaries of video data. The server includes the following main components:
[0105] 1. Receiving Unit - Receives video data from the user. This unit acquires data via a web interface or a dedicated application.
[0106] 2. Format Verification and Conversion Unit - This unit verifies whether the received video data is in the specified format and performs format conversion if it is in a different format. This conversion uses libraries such as FFmpeg.
[0107] 3. Frame Splitting Unit - This unit splits the received video data into frames. Specifically, it uses the OpenCV library to extract frames at a rate of 30 frames per second (fps).
[0108] 4. Analysis Unit - Analyzes the video content frame by frame. Here, object detection algorithms such as YOLO v4 are used to identify people, objects, and text information. In addition, deep learning models (ResNet, BERT, etc.) are used to extract scene descriptions and contextual information.
[0109] 5. Metadata Extraction Unit - Extracts metadata from the analysis results and collects information on people, objects, and text contained in each frame. This integrates the information chronologically and constructs a storyline.
[0110] 6. Generation Unit - Uses a generative AI (e.g., GPT-3®) to generate a summary based on the extracted metadata. Natural language processing is performed to create a summary in a format that is easy for users to understand.
[0111] 7. Delivery Unit - Provides the generated summary to the user. The summary is displayed via a web interface or dedicated application, and downloads and further analysis are possible.
[0112] Specific example
[0113] As a concrete example, consider the case where a user uploads a movie video file.
[0114] 1. The user uploads the video data of the movie.
[0115] 2. The server uses a receiving unit to receive the data, checks the format, and then divides it into frames.
[0116] 3. The server analyzes each frame and detects information such as characters, objects, and backgrounds.
[0117] 4. The server extracts and compiles this information as metadata.
[0118] 5. The server uses generative AI to generate a movie summary from the extracted metadata. Examples of specific prompts include, "Summarize the content of this video in three lines or less," and "List the characters in this video and their roles."
[0119] 6. The server provides the generated summary to the user, who can then review and download the summary.
[0120] This system is designed to streamline the management and analysis of video content, allowing users to quickly and accurately obtain the information they need.
[0121] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0122] Step 1: Receiving video data
[0123] Users access the server via a web interface or a dedicated application and upload video data. The server uses a receiving unit to receive the data and verify that the upload was completed successfully. The input is the video data uploaded by the user, and the output is the video data received by the server.
[0124] Step 2: Format check and conversion
[0125] The server verifies that the received video data is in the specified format. For example, if formats such as AVI, MP4, and MKV are allowed, it checks if the data matches. If the format is different, the server automatically converts the format using a library such as FFmpeg. The input is the received video data, and the output is the video data converted to the specified format.
[0126] Step 3: Frame splitting
[0127] The server divides the video data into frames using a frame splitting unit. Specifically, it extracts frames at a rate of 30 frames per second (fps) using the OpenCV library. The input is format-verified and converted video data, and the output is individual frame images.
[0128] Step 4: Frame Analysis
[0129] The server uses an analysis unit to analyze each frame. Here, object detection algorithms such as YOLO v4 are used to identify people, objects, and text information. Deep learning models (ResNet, BERT, etc.) are also used to extract scene descriptions and contextual information. The input is the segmented frames, and the output is data such as people, objects, text information, and scene descriptions obtained through the analysis.
[0130] Step 5: Metadata Extraction
[0131] The server extracts metadata based on the analysis results. The metadata extraction unit integrates information such as people, objects, text, and scene descriptions collected from each frame in chronological order. Specifically, the server uses Python and an SQL database to store and organize the data. The input is the analysis results of the frames, and the output is the integrated metadata.
[0132] Step 6: Summary generation using generative AI
[0133] The server generates a summary using generative AI based on the extracted metadata. Specifically, it uses large-scale language models such as GPT-3 to perform natural language processing and create the summary. For example, the following prompt sentence is input to the generative AI model: "Please summarize the content of this video in three lines or less." The input is integrated metadata, and the output is the generated summary text.
[0134] Step 7: Provide a summary
[0135] The server provides the generated summary to the user. The generated summary is displayed through a web interface or a dedicated application, allowing the user to review the provided summary and download it if necessary. The input is the generated summary text, and the output is the summary information provided to the user.
[0136] This series of steps creates a system that efficiently manages and analyzes video content, allowing users to quickly and accurately obtain the information they need.
[0137] (Application Example 1)
[0138] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."
[0139] Video content contains a large amount of data, and watching the entire content requires a significant amount of time. However, there is a lack of efficient means for users to quickly grasp important information and key scenes. Therefore, there is a need to automatically generate and provide summaries of video content to users, thereby reducing viewing time and enabling efficient information acquisition.
[0140] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0141] In this invention, the server includes means for receiving video data from a user, means for dividing the received video data into frames, means for analyzing the video content frame by frame, means for extracting metadata from the analysis results, means for generating a summary based on the metadata using a generative AI, means for providing the generated summary to the user, and means for the user to upload video data and view / download the generated summary. This enables the user to quickly and efficiently grasp important information and key scenes of the video content.
[0142] "Video content" refers to video data that allows viewers to obtain information and entertainment through sight and sound.
[0143] A "user" is defined as an entity that utilizes a system or application, uploading video data and receiving services related to it.
[0144] "Video data" refers to digital or analog data files that make up video information.
[0145] A "frame" refers to one of the consecutive still images that make up a video.
[0146] "Frame splitting" refers to the process of dividing video data into a series of still images (frames) that make up the video.
[0147] "Analyzing video content frame by frame" refers to the process of detecting the visual and textual information contained in each frame and interpreting its content.
[0148] "Metadata" refers to data about data, specifically supplementary data that describes information about people, objects, text, and other elements within video data.
[0149] "Generative AI" refers to artificial intelligence that uses natural language processing technology to generate new text or summaries from input data.
[0150] A "summary" refers to a document that expresses the key points of the original video content in a short format.
[0151] "Provision" refers to the process by which the system displays and makes available information, such as generated summaries, to the user.
[0152] "Uploading" refers to the process by which a user sends their data to an online system such as a server.
[0153] "Downloading" refers to the process by which a user saves data from an online system to their own device.
[0154] "Refining a summary" refers to the process of using natural language processing techniques to adjust and supplement the generated summary content in order to make it more detailed and accurate.
[0155] "Highlighting important scenes and character information" refers to the process of clearly indicating particularly noteworthy scenes and characters within the generated summary, making it easier for users to understand.
[0156] This invention relates to a system for analyzing video content, extracting information, and generating a summary using generative AI. The system includes a series of processes: receiving video data from a user, dividing it into frames, performing analysis, extracting metadata, and providing the generated summary to the user.
[0157] System Overview
[0158] This system consists of the following main components:
[0159] 1. Receiving Unit
[0160] 2. Frame splitting unit
[0161] 3. Analysis Unit
[0162] 4. Metadata Extraction Unit
[0163] 5. Generation Unit
[0164] 6. Provided Units
[0165] 7. User Interface Unit
[0166] Hardware and software to be used
[0167] Hardware: Servers and user terminals (PCs, smartphones, tablets)
[0168] software:
[0169] FFmpeg (format conversion)
[0170] OpenCV (frame splitting)
[0171] YOLO (Object Detection)
[0172] TENSORFLOW® (registered trademark) (deep learning model)
[0173] pandas (data processing)
[0174] OpenAI (registered trademark) GPT-4 (registered trademark) (generative AI)
[0175] Django (server-side framework)
[0176] Receiving video data
[0177] The server receives video data from the user's terminal. The user uploads video data to the system using their terminal, and the server uses FFmpeg to check the data format and convert it if necessary.
[0178] Frame division of video data
[0179] The server uses OpenCV to divide the received video data into frames. This converts the video data into individual still images, making it easier for the analysis unit to process.
[0180] Frame analysis
[0181] The server implements the YOLO model to analyze each frame. This allows for the detection of information about people, objects, and background within each frame. Furthermore, a deep learning model using TensorFlow is employed to extract scene descriptions and contextual information.
[0182] Metadata Extraction
[0183] The server extracts metadata based on the analysis results. Using the pandas library, it collects important information such as people, objects, text information, and scene descriptions, and integrates them chronologically. This metadata forms the basis for the final summary generation.
[0184] Summary generation using generative AI
[0185] The server uses OpenAI GPT-4 to generate summaries based on extracted metadata. In the generation unit, a generative AI model performs natural language processing to create summaries in a format that is easy for users to understand.
[0186] Summary
[0187] The server provides the user with a summary generated using Django. Through the user interface unit, the summary is displayed visually, and the user can review and download it.
[0188] Specific example
[0189] If a user uploads a drama episode:
[0190] 1. The user uploads video data of the drama.
[0191] 2. The server receives the data, checks the format, and then divides it into frames.
[0192] 3. The server analyzes each frame and detects information such as characters, objects, and backgrounds.
[0193] 4. The server extracts and compiles this information as metadata.
[0194] 5. The server uses generative AI to generate a summary of the drama from the extracted metadata.
[0195] 6. The server provides the generated summary to the user, who can then review and download the summary.
[0196] Example of a prompt
[0197] "Please summarize the content of the next episode in chronological order, highlighting important scenes, characters, and key events."
[0198] This system is designed to streamline the management and analysis of video content, allowing users to quickly and accurately obtain the information they need.
[0199] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0200] Step 1: Receiving video data
[0201] The server receives video data transmitted from the user terminal. During this process, the server uses a receiving unit to verify the data format and, if necessary, converts it to the appropriate format using FFmpeg. The input is video data from the user terminal, and the output is video data that has been appropriately converted and is ready for processing.
[0202] Step 2: Frame splitting of video data
[0203] The server uses OpenCV to divide the received video data into frames. In this process, the video data is converted into a series of still images. The input is formatted video data, and the output is a series of still images divided into frames.
[0204] Step 3: Frame Analysis
[0205] The server uses a YOLO model to analyze each frame. This analysis detects people, objects, and background information within the frame. Furthermore, a deep learning model using TensorFlow is used to extract scene descriptions and contextual information for each frame. The input is a still image divided into frames, and the output is data such as detected people, objects, and scene descriptions for each frame.
[0206] Step 4: Metadata Extraction
[0207] The server uses the pandas library to extract metadata from the analysis results. This collects important information detected in each frame (people, objects, text, scene description) and integrates it chronologically. The input is the various data obtained from the frame analysis, and the output is the integrated metadata.
[0208] Step 5: Summary generation using generative AI
[0209] The server uses OpenAI GPT-4 to generate a summary based on the extracted metadata. The generation unit uses a generative AI model to perform natural language processing and create a summary in a format that is easy for the user to understand. The prompt used is "Summarize the content of the following episode in chronological order. Highlight important scenes, characters, and key events." The input is the extracted metadata, and the output is the generated summary.
[0210] Step 6: Provide a summary
[0211] The server provides the user with a summary generated using Django. Through a user interface unit, the summary is displayed visually, and the user can review and download it. The input is the generated summary text, and the output is the summary information displayed on the user interface.
[0212] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0213] This invention relates to a system that analyzes video content, extracts information, generates summaries using generative AI, and further combines it with an emotion engine that recognizes the user's emotions. This system receives video data from the user, divides it into frames, performs analysis, extracts metadata, provides the generated summary to the user, and recognizes the user's emotions to provide feedback.
[0214] System Overview
[0215] This system consists of the following main components:
[0216] 1. Receiving unit - Receives video data from the user.
[0217] 2. Frame splitting unit - Divides the received video data into frames.
[0218] 3. Analysis Unit - Analyzes each frame and detects the video content.
[0219] 4. Metadata Extraction Unit - Extracts metadata from the analysis results.
[0220] 5. Generation Unit - Generates summaries using generative AI.
[0221] 6. Emotion Engine - Recognizes the user's emotions and provides feedback for summary generation.
[0222] 7. Delivery Unit - Provides the generated summary to the user.
[0223] Program processing
[0224] 1. Receiving video data
[0225] The user accesses the system interface and uploads video data. The server receives the video data through the receiving unit and checks its format. Format conversion is performed as needed.
[0226] 2. Frame division of video data
[0227] The server uses a frame division unit to divide the received and converted video data into frames. The video becomes a collection of individual still images (frames).
[0228] 3. Frame Analysis
[0229] The server analyzes each frame and detects its content. The analysis unit executes object detection algorithms to identify people, objects, and text information within the frame. Furthermore, it uses deep learning models to extract scene descriptions and contextual information.
[0230] 4. Metadata Extraction
[0231] The server extracts metadata from the analysis results. The metadata extraction unit collects important information (people, objects, text, scene description) based on each frame. This information is integrated chronologically to construct the storyline.
[0232] 5. Summary generation using generative AI
[0233] The server uses a generation unit to generate a summary based on metadata using a generative AI. The generative AI then performs natural language processing on the extracted metadata to create a summary that is easy for the user to understand.
[0234] 6. User emotion recognition by an emotion engine
[0235] The server uses an emotion engine to analyze the user's facial expressions, tone of voice, and input content to identify the user's emotions. This information is fed back into the summarization process, which generates a summary tailored to the user's emotional state.
[0236] 7. Providing a summary and feedback
[0237] The server provides the generated summary to the user through a delivery unit. The user reviews the summary on the interface and, if necessary, downloads the summary data or performs further analysis. Based on feedback from the sentiment engine, if the user has a specific emotion, appropriate feedback messages and additional information are provided for that emotion.
[0238] Specific example
[0239] As a concrete example, consider the case where a user uploads a movie video file.
[0240] 1. The user uploads the video data of the movie.
[0241] 2. The server receives the video data, checks the format, and then divides it into frames.
[0242] 3. The server analyzes each frame and detects information such as characters, objects, and backgrounds.
[0243] 4. The server extracts and compiles this information as metadata.
[0244] 5. The server uses generative AI to generate a movie summary from the extracted metadata.
[0245] 6. The server uses an emotion engine to analyze the user's facial expressions, tone of voice, etc., and recognize the user's emotions.
[0246] 7. The server provides the generated summary to the user and offers sentiment-sensitive feedback as needed.
[0247] This system allows users to efficiently analyze video data and gain new insights, as well as receive emotionally resonant feedback.
[0248] The following describes the processing flow.
[0249] Step 1:
[0250] The user accesses the system interface and uploads video data. Once the upload is complete, the device sends the video data to the server.
[0251] Step 2:
[0252] The server uses a receiving unit to receive video data sent from the user. Upon receipt, it verifies the format of the video data and performs format conversion (e.g., MP4 to AVI) if necessary.
[0253] Step 3:
[0254] The server uses a frame division unit to divide the received and converted video data into frames. This results in the video being a collection of individual still images (frames).
[0255] Step 4:
[0256] The server uses an analysis unit to begin analyzing each frame. Specifically, it runs an object detection algorithm to identify people, objects, and text information within the frame. Furthermore, it uses a deep learning model to extract scene descriptions and contextual information.
[0257] Step 5:
[0258] The server extracts metadata from the analysis results. The metadata extraction unit collects important information (people, objects, text, scene description) based on each frame. This information is integrated chronologically to construct the storyline.
[0259] Step 6:
[0260] The server uses a generation unit to generate a summary based on metadata using a generative AI. The generative AI then performs natural language processing on the extracted metadata to create a summary that is easy for the user to understand.
[0261] Step 7:
[0262] The server uses an emotion engine to recognize the user's emotions. Specifically, it analyzes the user's facial expressions, tone of voice, input content, etc., to identify the user's emotional state.
[0263] Step 8:
[0264] The server provides the generated summary to the user through a service unit. The user can view the summary on the interface and download the summary data if necessary.
[0265] Step 9:
[0266] Based on feedback from the emotion engine, the server provides feedback messages and additional information tailored to the user's emotional state. This enables responses that are in line with the user's emotions.
[0267] (Example 2)
[0268] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".
[0269] Conventional video analysis and summarization systems can analyze video content and generate summaries, but they lack the functionality to consider user emotions, making it difficult to optimize the user experience. Furthermore, improving the accuracy of analysis and summarization requires technology that incorporates feedback on the user's emotional state.
[0270] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[0271] In this invention, the server includes means for receiving video data from a user, means for dividing the received video data into frames, means for analyzing the video content of each frame, means for extracting metadata from the analysis results, means for generating a summary based on the metadata using a generative AI, means for providing the generated summary to the user, and means for recognizing the user's emotions and providing feedback for summary generation. This makes it possible to provide a personalized summary that corresponds to the user's emotional state.
[0272] "Video data" refers to information that is stored or transmitted in digital format as one or more image frames, representing visual content.
[0273] A "frame" refers to an individual still image that makes up video data.
[0274] "Analysis" refers to the process of processing data using algorithms and models to detect and understand information within a frame.
[0275] "Metadata" refers to additional information about video data extracted from the analysis results (e.g., people, objects, text, scene descriptions).
[0276] "Generative AI" refers to artificial intelligence systems that generate natural language summaries from collected data.
[0277] The "Emotion Engine" refers to a technology that analyzes the user's expressions, voice tones, input content, etc. to identify the user's emotional state.
[0278] The "user" refers to a person who uploads video data using the system or obtains the generated summary and feedback.
[0279] The "server" refers to a computer system that provides central data processing and storage functions within the system.
[0280] The present invention relates to a system that combines an emotion engine that analyzes video content, extracts information, generates a summary using generative AI, and further recognizes the user's emotions. Each specific processing step will be described in detail below.
[0281] System Configuration
[0282] This system is mainly composed of the following components:
[0283] 1. Receiving Unit - Receives video data from the user.
[0284] 2. Frame Splitting Unit - Splits the received video data into frames.
[0285] 3. Analysis Unit - Analyzes each frame and detects video content.
[0286] 4. Metadata Extraction Unit - Extracts metadata from the analysis results.
[0287] 5. Generation Unit - Generates a summary using generative AI.
[0288] 6. Emotion Engine - Recognizes the user's emotions and provides feedback for summary generation.
[0289] <000091,4>7. Delivery Unit - Provides the generated summary to the user.
[0290] Specific examples of hardware and software
[0291] The entire system runs on high-performance servers, and each unit operates based on specific algorithms and models. Specifically, it uses the following:
[0292] Object detection algorithms (e.g., YOLO, SSD, Faster R-CNN)
[0293] Deep learning models (e.g., DeepLab, ResNet)
[0294] Generative AI (e.g. GPT-3, BERT)
[0295] Emotion recognition engines (e.g., OpenFace, EmoVoice)
[0296] System operation example
[0297] As a concrete example, consider the case where a user uploads a movie video file.
[0298] 1. The user uploads movie video data via a web interface. The terminal receives input from the user and sends that data to the server.
[0299] 2. The server uses the receiving unit to receive the video data and check the format (e.g., MP4, AVI, MKV, etc.). If necessary, it converts unsupported formats to supported formats.
[0300] 3. The server uses a frame division unit to divide the video data into frames. For example, it divides one second of video into 24 frames.
[0301] 4. The analysis unit of the server analyzes the frame and detects the content. Specifically, object detection algorithms such as YOLO and SSD are used to extract people, objects, and text information within the frame. Also, deep learning models such as DeepLab and ResNet are used to analyze scene descriptions and context information.
[0302] 5. The metadata extraction unit of the server extracts metadata from the analysis results. The important information (people, objects, text, scene description) collected for each frame is integrated along the time series, and a storyline is constructed.
[0303] 6. The generation unit of the server uses a generative AI model (e.g., GPT-3, BERT) to generate a summary based on the extracted metadata. The generative AI creates a summary in natural language that is easy for the user to understand.
[0304] 7. The emotion engine of the server analyzes the user's facial expressions and voice tones to recognize the user's emotions. This information is fed back into the summary generation process, and a personalized summary is generated according to the user's emotional state.
[0305] 8. The provision unit of the server provides the generated summary to the user. The user can view the summary through the interface and download the summary data or perform further analysis if necessary. Based on the feedback from the emotion engine, if the user has a specific emotion, feedback messages and additional information suitable for that emotion are provided.
[0306] Example of prompt sentence
[0307] By using the prompt sentence, the generative AI model can create an accurate summary. The following are examples of the prompt sentences to be input:
[0308] 1. Prompt sentence:
[0309] Please generate a summary of the following video data:
[0310] Video data: {Details about video data}
[0311] Metadata: {Summary of extracted metadata}
[0312] 2. Detailed prompt text:
[0313] Please write a summary of the following movie scene. Identify the characters and key events, and include background information for the scene:
[0314] Movie Title: {Movie Title}
[0315] Scene details: {More details about the scene}
[0316] Metadata: {Characters, Key Events, Background Information}
[0317] This invention allows users to efficiently analyze video data and gain new insights, as well as receive emotionally resonant feedback.
[0318] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0319] Step 1: Receiving video data
[0320] Users upload video data using the system's web interface or a dedicated application. The terminal receives input from the user and sends the data to the server. The server uses a receiving unit to receive the uploaded video data and check the format (e.g., MP4, AVI, MKV, etc.). If data in an unsupported format is received, the server automatically converts it to a supported format.
[0321] Input: Video data uploaded by the user
[0322] Output: Converted video data (format converted if necessary)
[0323] Specific examples of operation:
[0324] The user clicks the "Upload" button on the web interface and selects the video file.
[0325] The terminal sends the selected file to the server.
[0326] The server receives video data in MP4 format and converts it to AVI format as needed.
[0327] Step 2: Frame splitting of video data
[0328] The received and converted video data is divided into frames by the server's frame division unit. The video is broken down into 24 or 30 still images (frames) per second. The divided frames are temporarily stored and sent to the analysis unit.
[0329] Input: Converted video data
[0330] Output: Still images divided into frames
[0331] Specific examples of operation:
[0332] The server divides the video data into 24 frames per second.
[0333] Each frame is sequentially saved to the database and sent to the analysis unit.
[0334] Step 3: Frame Analysis
[0335] The server's analysis unit analyzes each frame and detects its content. Specifically, it uses object detection algorithms (e.g., YOLO, SSD, Faster R-CNN) to identify people, objects, and text information within the frame. It also extracts scene descriptions and contextual information using deep learning models (e.g., DeepLab, ResNet).
[0336] Input: Still images divided into frames
[0337] Output: Analysis results for each frame (people, objects, text, descriptions, etc.)
[0338] Specific examples of operation:
[0339] The server detects people within the frame and assigns them name tags using facial recognition.
[0340] The server identifies objects within the frame (e.g., cars, buildings) and records them as metadata.
[0341] Step 4: Metadata Extraction
[0342] The server's metadata extraction unit extracts metadata from the analysis results. Based on each frame, it integrates important information (people, objects, text, scene description) in chronological order to construct a storyline.
[0343] Input: Analysis results for each frame
[0344] Output: Metadata per frame
[0345] Specific examples of operation:
[0346] The server extracts the conversation content of characters appearing in a specific scene as text information.
[0347] The server records the location information of objects (e.g., where a car is parked).
[0348] Step 5: Summary generation using generative AI
[0349] The server's generation unit generates a summary based on metadata using generative AI (e.g., GPT-3, BERT). The generative AI utilizes natural language processing to create a summary that is easy for the user to understand.
[0350] Input: Metadata per frame
[0351] Output: Summary in natural language
[0352] Specific examples of operation:
[0353] The server instructs the generative AI to "summarize the characters and main events in this scene."
[0354] The generative AI generates a summary that reads, "This is a scene where the protagonist steals a car and is being chased by the police."
[0355] Step 6: User emotion recognition by the emotion engine
[0356] The server's emotion engine analyzes the user's facial expressions, tone of voice, and input to identify their emotions. This information is then fed back into the summary generation process, resulting in a personalized summary tailored to the user's emotional state.
[0357] Input: User's facial expression, tone of voice, input content
[0358] Output: User's emotional state
[0359] Specific examples of operation:
[0360] The server analyzes the user's facial expressions via the webcam and determines their emotional state to be "joyful."
[0361] Based on the user's emotion, which the server has analyzed as "surprised," specific details are added to the summary.
[0362] Step 7: Providing a summary and feedback
[0363] The generated summary is provided to the user through a server-side unit. The user reviews the summary on the interface and, if necessary, downloads the summary data or performs further analysis. Based on feedback from the sentiment engine, feedback messages and additional information tailored to the user's emotions are also provided.
[0364] Input: Summary text and user's emotional state
[0365] Output: Personalized summary and feedback provided to the user.
[0366] Specific examples of operation:
[0367] The server generates a movie summary, which is then displayed on the user's screen.
[0368] The server displays positive feedback messages that correspond to the user's feelings of joy.
[0369] (Application Example 2)
[0370] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as a "server" and the smart device 14 as a "terminal".
[0371] While conventional video summarization systems could efficiently summarize video content, they lacked the ability to provide feedback and summaries that responded to the user's emotions, resulting in a lack of information that resonated with viewers' feelings. Furthermore, accurately identifying the parts of the video that users were interested in or the important scenes, and generating appropriate summaries, proved difficult.
[0372] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[0373] In this invention, the server includes means for receiving video data from a user, means for dividing the received video data into frames, means for analyzing the video content of each frame, means for extracting metadata from the analysis results, means for generating a summary based on the metadata using a generative AI, means for recognizing the user's emotions and providing feedback for summary generation, means for providing the generated summary to the user, and means for providing feedback that corresponds to the user's emotions. This makes it possible to provide an appropriate summary that is sensitive to the user's emotions and effective feedback.
[0374] A "user" is an individual or group that uses the system to input video data and receives summaries and feedback.
[0375] "Video data" refers to digital video files containing viewing content such as movies and TV series.
[0376] A "frame" is an individual still image that makes up video data.
[0377] "Metadata" refers to information about the content of a video (for example, information about people, objects, and text) that is extracted from the analysis of video data.
[0378] "Generative AI" refers to artificial intelligence that performs natural language processing based on extracted metadata to generate a summary of video content.
[0379] "Emotion recognition" is the process of analyzing a user's facial expressions and tone of voice to identify their emotional state.
[0380] "Feedback" refers to information provided during the summary generation process that takes into account the user's emotional state.
[0381] "Analysis" is the process of dividing video data into frames and detecting and understanding their contents (people, objects, text information, etc.).
[0382] A "summary" is a text that concisely summarizes the important parts or main storyline of video content.
[0383] This invention relates to a system that analyzes video content, generates summaries, and provides feedback tailored to the user's emotions. This system consists of the following main components:
[0384] System Configuration
[0385] 1. Receiving Unit
[0386] Users upload video data via a smartphone app. This upload is performed via an HTTP request to the server.
[0387] 2. Frame splitting unit
[0388] The server uses the OpenCV library to divide the received video data into frames. This converts the video data into individual still images (frames).
[0389] 3. Analysis Unit
[0390] The server analyzes each frame and detects its content. This analysis uses deep learning models such as TensorFlow to detect people, objects, text information, and more.
[0391] 4. Metadata Extraction Unit
[0392] The server extracts metadata from the analysis results. This metadata includes important information within each frame (people, objects, text information).
[0393] 5. Generation Unit
[0394] The server uses a generative AI model (e.g., GPT-2) to generate a video summary based on the extracted metadata. The generated summary is then refined using natural language processing.
[0395] 6. Emotion Recognition Unit
[0396] The server uses an emotion engine (e.g., DeepFace) to analyze the user's facial expressions and tone of voice to recognize their emotions. This analysis is then fed back into the summary generation process.
[0397] 7. Provided Units
[0398] The server provides the user with a generated summary and sentiment-based feedback. Through a smartphone app, the user can review the summary and receive feedback as needed.
[0399] Specific example
[0400] For example, if a user uploads a movie video file, the following process takes place:
[0401] 1. Users upload movie video data through the app.
[0402] 2. The server receives the video data, checks the format, and then divides it into frames.
[0403] 3. The server analyzes each frame and detects information such as characters, objects, and backgrounds.
[0404] 4. The server extracts and compiles this information as metadata.
[0405] 5. The server uses generative AI to generate a movie summary from the extracted metadata.
[0406] 6. The server uses an emotion engine to analyze the user's facial expressions and tone of voice to recognize the user's emotions.
[0407] 7. The server provides the generated summary to the user and offers sentiment-sensitive feedback as needed.
[0408] Example of a prompt
[0409] Please create a video summary based on the following objects and scene description:
[0410] Objects: Cars, buildings, people
[0411] Scene description: This scene depicts cars moving violently.
[0412] Objects: Sea, boat, sunset
[0413] Scene description: A scene showing a beautiful sunset.
[0414] This allows users to efficiently analyze video data and gain new insights, as well as receive emotionally resonant feedback.
[0415] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0416] Step 1:
[0417] Users upload video data via a smartphone app.
[0418] Input: A video file selected by the user (e.g., an MP4 file of a movie).
[0419] Data processing: Send video files to the server via HTTP request.
[0420] Output: Video data is stored in the server's receiving unit.
[0421] Step 2:
[0422] The server divides the received video data into frames.
[0423] Input: Video file.
[0424] Data processing: The video is split frame by frame using the OpenCV library.
[0425] Output: A list of frames (each frame is stored as a still image).
[0426] Step 3:
[0427] The server analyzes the contents of each frame.
[0428] Input: List of frames.
[0429] Data processing: Use deep learning models such as TensorFlow to detect people, objects, and text information.
[0430] Output: Analysis results for each frame (stored in the database).
[0431] Step 4:
[0432] The server extracts metadata from the analysis results.
[0433] Input: Analysis results for each frame.
[0434] Data processing: Analyze the results and extract important information (people, objects, text information).
[0435] Output: Metadata list (contains information on people, objects, scene descriptions, etc.).
[0436] Step 5:
[0437] The server uses generative AI to generate a summary from the metadata.
[0438] Input: Extracted metadata.
[0439] Data processing: Generative AI (e.g., GPT-2) is used to generate summaries based on metadata.
[0440] Output: Summary text.
[0441] Step 6:
[0442] The server uses an emotion engine to recognize the user's emotions.
[0443] Input: User's facial expression images and audio data.
[0444] Data processing: Analyze user emotions using libraries such as DeepFace.
[0445] Output: User's emotional state (a specific emotional label is stored).
[0446] Step 7:
[0447] The server provides the user with a generated summary and sentiment-based feedback.
[0448] Input: Summary text, user's emotional state.
[0449] Data processing: Display summaries in an ART-specific format and generate feedback messages.
[0450] Output: A summary and feedback message displayed to the user via a smartphone app.
[0451] This allows the system to generate summaries of video data and provide effective feedback tailored to the user's emotions.
[0452] 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 user input for the result of the specific processing. The control unit 46A transmits the audio data indicating 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.
[0453] Data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of data generation model 58 is ChatGPT (registered trademark) (Internet search).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0454] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart device 14.
[0455] [Second Embodiment]
[0456] Figure 3 shows an example of the configuration of the data processing system 210 according to the second embodiment.
[0457] As shown in Figure 3, the data processing system 210 includes a data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0458] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0459] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication interface 44. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, and camera 42 are also connected to the bus 52.
[0460] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[0461] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[0462] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[0463] Figure 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Figure 4, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[0464] The specific processing program 56 is an example of a "program" relating to the technology of this 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.
[0465] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0466] In the smart glasses 214, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. 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 processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0467] Next, the identification processing performed by the identification processing unit 290 of the data processing device 12 will be described. 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".
[0468] This invention relates to a system for analyzing video content, extracting information, and generating a summary using generative AI. The system includes a series of processes: receiving video data from a user, dividing it into frames, performing analysis, extracting metadata, and providing the generated summary to the user.
[0469] System Overview
[0470] This system consists of the following main components:
[0471] 1. Receiving unit - Receives video data from the user.
[0472] 2. Frame splitting unit - Divides the received video data into frames.
[0473] 3. Analysis Unit - Analyzes each frame and detects the video content.
[0474] 4. Metadata Extraction Unit - Extracts metadata from the analysis results.
[0475] 5. Generation Unit - Generates summaries using generative AI.
[0476] 6. Delivery Unit - Provides the generated summary to the user.
[0477] Program processing
[0478] 1. Receiving video data
[0479] The user accesses the system and uploads video data. The server receives the video data through the receiving unit and checks if it is in the correct format. If it is in a different format, it performs a format conversion.
[0480] 2. Frame division of video data
[0481] The server uses a frame division unit to divide the video data into frames. This process converts the video data into individual still images.
[0482] 3. Frame Analysis
[0483] The server analyzes each frame and detects its content. The analysis unit runs object detection algorithms to identify people, objects, and text information within the frame. It also uses deep learning models to extract scene descriptions and contextual information.
[0484] 4. Metadata Extraction
[0485] The server extracts metadata from the analysis results. The metadata extraction unit collects important information (people, objects, text, scene description) based on each frame. This information is integrated chronologically to construct the storyline.
[0486] 5. Summary generation using generative AI
[0487] The server uses generative AI to generate a summary based on the extracted metadata. The generation unit uses AI to perform natural language processing and create a summary in a format that is easy for the user to understand.
[0488] 6. Providing a summary
[0489] The server provides the generated summary to the user. Through the delivery unit, the summary is displayed to the user and can be downloaded for further analysis.
[0490] Specific example
[0491] As a concrete example, consider the case where a user uploads a movie video file.
[0492] 1. The user uploads the video data of the movie.
[0493] 2. The server receives the data, checks the format, and then divides it into frames.
[0494] 3. The server analyzes each frame and detects information such as characters, objects, and backgrounds.
[0495] 4. The server extracts and compiles this information as metadata.
[0496] 5. The server uses generative AI to generate a movie summary from the extracted metadata.
[0497] 6. The server provides the generated summary to the user, who can then review and download the summary.
[0498] This system is designed to streamline the management and analysis of video content, allowing users to quickly and accurately obtain the information they need.
[0499] The following describes the processing flow.
[0500] Step 1:
[0501] The user accesses the system interface and uploads the video data they want to analyze. Once the upload is complete, the device sends the video data to the server.
[0502] Step 2:
[0503] The server uses a receiving unit to receive video data sent from the user. Upon receipt, it verifies the format of the video data and performs format conversion (e.g., MP4 to AVI) if necessary.
[0504] Step 3:
[0505] The server uses a frame division unit to divide the received and converted video data into frames. This results in the video being a collection of individual still images (frames).
[0506] Step 4:
[0507] The server uses an analysis unit to begin analyzing each frame. Specifically, it runs an object detection algorithm to identify people, objects, and text information within the frame. Furthermore, it uses a deep learning model to extract scene descriptions and contextual information.
[0508] Step 5:
[0509] The server extracts metadata from the analysis results. The metadata extraction unit collects important information (people, objects, text, scene description) based on each frame. This information is integrated chronologically to construct the storyline.
[0510] Step 6:
[0511] The server uses a generation unit to generate a summary based on metadata using a generative AI. The generative AI then performs natural language processing on the extracted metadata to create a summary that is easy for the user to understand.
[0512] Step 7:
[0513] The server provides the generated summary to the user through the service unit. The user can view the summary through the system interface and, if necessary, download the summary data or perform further detailed analysis.
[0514] (Example 1)
[0515] Next, we will describe Example 1. 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".
[0516] Conventional video content analysis systems suffered from low analysis accuracy and the time-consuming process of generating summaries for complex content. Furthermore, they were incompatible with video data in different formats, requiring users to manually convert formats, which was a significant inconvenience. Additionally, the generated summaries lacked sufficient accuracy and information, making it difficult for users to quickly and accurately obtain the information they needed.
[0517] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0518] In this invention, the server includes means for receiving video data from a user, means for checking whether the received video data is in a specified format and converting the format if it is in a different format, means for dividing the received video data into frames, means for an analysis unit to analyze the frames using an object detection algorithm and a deep learning model and extract scene description and context information, means for generating a summary based on metadata using a generative AI, and means for providing the generated summary to the user. This improves the accuracy of video analysis, supports video data in different formats, and enables the rapid and accurate generation and provision of summaries.
[0519] A "server" is a key component of a computer system that receives, processes, analyzes, and generates and provides summaries of video data.
[0520] "Video data" refers to digital information in video format uploaded by users, which is subject to analysis and summary generation.
[0521] "Format" refers to the recording format of video data, and includes different file formats such as AVI, MP4, and MKV.
[0522] "Format conversion" refers to the process of converting video data to a standard format when it differs from the specified format.
[0523] A "frame" refers to an individual still image that makes up video data, with multiple images existing per second.
[0524] A "frame splitting unit" is a hardware or software component used to divide received video data into frames.
[0525] An "analysis unit" is a hardware or software component that analyzes the content of video frame by frame and detects people, objects, and text information within each frame.
[0526] An "object detection algorithm" is a computer vision technique used to identify people and objects within a frame.
[0527] A "deep learning model" is an artificial intelligence algorithm trained using a large amount of data, and is used to extract contextual information and scene descriptions from video content.
[0528] "Metadata" refers to information extracted by the analysis unit, including information about people, objects, text, and scene descriptions.
[0529] "Generative AI" refers to artificial intelligence models that perform natural language processing and generate summaries based on extracted metadata.
[0530] A "summary" is text information created by a generative AI that concisely explains the main content of the video data.
[0531] A "delivery unit" is a hardware or software component that displays the generated summary to the user and enables downloading and further analysis.
[0532] This invention relates to a system for analyzing video content, extracting information, and generating a summary using generative AI. This system includes a series of processes: receiving video data from a user, dividing it into frames, performing analysis, extracting metadata, and providing the generated summary to the user. Specific embodiments are described below.
[0533] Hardware and software configuration
[0534] A server is a computer system for receiving, processing, analyzing, and generating and providing summaries of video data. The server includes the following main components:
[0535] 1. Receiving Unit - Receives video data from the user. This unit acquires data via a web interface or a dedicated application.
[0536] 2. Format Verification and Conversion Unit - This unit verifies whether the received video data is in the specified format and performs format conversion if it is in a different format. This conversion uses libraries such as FFmpeg.
[0537] 3. Frame Splitting Unit - This unit splits the received video data into frames. Specifically, it uses the OpenCV library to extract frames at a rate of 30 frames per second (fps).
[0538] 4. Analysis Unit - Analyzes the video content frame by frame. Here, object detection algorithms such as YOLO v4 are used to identify people, objects, and text information. In addition, deep learning models (ResNet, BERT, etc.) are used to extract scene descriptions and contextual information.
[0539] 5. Metadata Extraction Unit - Extracts metadata from the analysis results and collects information on people, objects, and text contained in each frame. This integrates the information chronologically and constructs a storyline.
[0540] 6. Generation Unit - Uses a generative AI (e.g., GPT-3) to generate a summary based on the extracted metadata. Natural language processing is performed to create a summary that is easy for users to understand.
[0541] 7. Delivery Unit - Provides the generated summary to the user. The summary is displayed via a web interface or dedicated application, and downloads and further analysis are possible.
[0542] Specific example
[0543] As a concrete example, consider the case where a user uploads a movie video file.
[0544] 1. The user uploads the video data of the movie.
[0545] 2. The server uses a receiving unit to receive the data, checks the format, and then divides it into frames.
[0546] 3. The server analyzes each frame and detects information such as characters, objects, and backgrounds.
[0547] 4. The server extracts and compiles this information as metadata.
[0548] 5. The server uses generative AI to generate a movie summary from the extracted metadata. Examples of specific prompts include, "Summarize the content of this video in three lines or less," and "List the characters in this video and their roles."
[0549] 6. The server provides the generated summary to the user, who can then review and download the summary.
[0550] This system is designed to streamline the management and analysis of video content, allowing users to quickly and accurately obtain the information they need.
[0551] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0552] Step 1: Receiving video data
[0553] Users access the server via a web interface or a dedicated application and upload video data. The server uses a receiving unit to receive the data and verify that the upload was completed successfully. The input is the video data uploaded by the user, and the output is the video data received by the server.
[0554] Step 2: Format check and conversion
[0555] The server verifies that the received video data is in the specified format. For example, if formats such as AVI, MP4, and MKV are allowed, it checks if the data matches. If the format is different, the server automatically converts the format using a library such as FFmpeg. The input is the received video data, and the output is the video data converted to the specified format.
[0556] Step 3: Frame splitting
[0557] The server divides the video data into frames using a frame splitting unit. Specifically, it extracts frames at a rate of 30 frames per second (fps) using the OpenCV library. The input is format-verified and converted video data, and the output is individual frame images.
[0558] Step 4: Frame Analysis
[0559] The server uses an analysis unit to analyze each frame. Here, object detection algorithms such as YOLO v4 are used to identify people, objects, and text information. Deep learning models (ResNet, BERT, etc.) are also used to extract scene descriptions and contextual information. The input is the segmented frames, and the output is data such as people, objects, text information, and scene descriptions obtained through the analysis.
[0560] Step 5: Metadata Extraction
[0561] The server extracts metadata based on the analysis results. The metadata extraction unit integrates information such as people, objects, text, and scene descriptions collected from each frame in chronological order. Specifically, the server uses Python and an SQL database to store and organize the data. The input is the analysis results of the frames, and the output is the integrated metadata.
[0562] Step 6: Summary generation using generative AI
[0563] The server generates a summary using generative AI based on the extracted metadata. Specifically, it uses large-scale language models such as GPT-3 to perform natural language processing and create the summary. For example, the following prompt sentence is input to the generative AI model: "Please summarize the content of this video in three lines or less." The input is integrated metadata, and the output is the generated summary text.
[0564] Step 7: Provide a summary
[0565] The server provides the generated summary to the user. The generated summary is displayed through a web interface or a dedicated application, allowing the user to review the provided summary and download it if necessary. The input is the generated summary text, and the output is the summary information provided to the user.
[0566] This series of steps creates a system that efficiently manages and analyzes video content, allowing users to quickly and accurately obtain the information they need.
[0567] (Application Example 1)
[0568] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0569] Video content contains a large amount of data, and watching the entire content requires a significant amount of time. However, there is a lack of efficient means for users to quickly grasp important information and key scenes. Therefore, there is a need to automatically generate and provide summaries of video content to users, thereby reducing viewing time and enabling efficient information acquisition.
[0570] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0571] In this invention, the server includes means for receiving video data from a user, means for dividing the received video data into frames, means for analyzing the video content frame by frame, means for extracting metadata from the analysis results, means for generating a summary based on the metadata using a generative AI, means for providing the generated summary to the user, and means for the user to upload video data and view / download the generated summary. This enables the user to quickly and efficiently grasp important information and key scenes of the video content.
[0572] "Video content" refers to video data that allows viewers to obtain information and entertainment through sight and sound.
[0573] A "user" is defined as an entity that utilizes a system or application, uploading video data and receiving services related to it.
[0574] "Video data" refers to digital or analog data files that make up video information.
[0575] A "frame" refers to one of the consecutive still images that make up a video.
[0576] "Frame splitting" refers to the process of dividing video data into a series of still images (frames) that make up the video.
[0577] "Analyzing video content frame by frame" refers to the process of detecting the visual and textual information contained in each frame and interpreting its content.
[0578] "Metadata" refers to data about data, specifically supplementary data that describes information about people, objects, text, and other elements within video data.
[0579] "Generative AI" refers to artificial intelligence that uses natural language processing technology to generate new text or summaries from input data.
[0580] A "summary" refers to a document that expresses the key points of the original video content in a short format.
[0581] "Provision" refers to the process by which the system displays and makes available information, such as generated summaries, to the user.
[0582] "Uploading" refers to the process by which a user sends their data to an online system such as a server.
[0583] "Downloading" refers to the process by which a user saves data from an online system to their own device.
[0584] "Refining a summary" refers to the process of using natural language processing techniques to adjust and supplement the generated summary content in order to make it more detailed and accurate.
[0585] "Highlighting important scenes and character information" refers to the process of clearly indicating particularly noteworthy scenes and characters within the generated summary, making it easier for users to understand.
[0586] This invention relates to a system for analyzing video content, extracting information, and generating a summary using generative AI. The system includes a series of processes: receiving video data from a user, dividing it into frames, performing analysis, extracting metadata, and providing the generated summary to the user.
[0587] System Overview
[0588] This system consists of the following main components:
[0589] 1. Receiving Unit
[0590] 2. Frame splitting unit
[0591] 3. Analysis Unit
[0592] 4. Metadata Extraction Unit
[0593] 5. Generation Unit
[0594] 6. Provided Units
[0595] 7. User Interface Unit
[0596] Hardware and software to be used
[0597] Hardware: Servers and user terminals (PCs, smartphones, tablets)
[0598] software:
[0599] FFmpeg (format conversion)
[0600] OpenCV (frame splitting)
[0601] YOLO (Object Detection)
[0602] TensorFlow (deep learning model)
[0603] pandas (data processing)
[0604] OpenAI GPT-4 (generative AI)
[0605] Django (server-side framework)
[0606] Receiving video data
[0607] The server receives video data from the user's terminal. The user uploads video data to the system using their terminal, and the server uses FFmpeg to check the data format and convert it if necessary.
[0608] Frame division of video data
[0609] The server uses OpenCV to divide the received video data into frames. This converts the video data into individual still images, making it easier for the analysis unit to process.
[0610] Frame analysis
[0611] The server implements the YOLO model to analyze each frame. This allows for the detection of information about people, objects, and background within each frame. Furthermore, a deep learning model using TensorFlow is employed to extract scene descriptions and contextual information.
[0612] Metadata Extraction
[0613] The server extracts metadata based on the analysis results. Using the pandas library, it collects important information such as people, objects, text information, and scene descriptions, and integrates them chronologically. This metadata forms the basis for the final summary generation.
[0614] Summary generation using generative AI
[0615] The server uses OpenAI GPT-4 to generate summaries based on extracted metadata. In the generation unit, a generative AI model performs natural language processing to create summaries in a format that is easy for users to understand.
[0616] Summary
[0617] The server provides the user with a summary generated using Django. Through the user interface unit, the summary is displayed visually, and the user can review and download it.
[0618] Specific example
[0619] If a user uploads a drama episode:
[0620] 1. The user uploads video data of the drama.
[0621] 2. The server receives the data, checks the format, and then divides it into frames.
[0622] 3. The server analyzes each frame and detects information such as characters, objects, and backgrounds.
[0623] 4. The server extracts and compiles this information as metadata.
[0624] 5. The server uses generative AI to generate a summary of the drama from the extracted metadata.
[0625] 6. The server provides the generated summary to the user, who can then review and download the summary.
[0626] Example of a prompt
[0627] "Please summarize the content of the next episode in chronological order, highlighting important scenes, characters, and key events."
[0628] This system is designed to streamline the management and analysis of video content, allowing users to quickly and accurately obtain the information they need.
[0629] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0630] Step 1: Receiving video data
[0631] The server receives video data transmitted from the user terminal. During this process, the server uses a receiving unit to verify the data format and, if necessary, converts it to the appropriate format using FFmpeg. The input is video data from the user terminal, and the output is video data that has been appropriately converted and is ready for processing.
[0632] Step 2: Frame splitting of video data
[0633] The server uses OpenCV to divide the received video data into frames. In this process, the video data is converted into a series of still images. The input is formatted video data, and the output is a series of still images divided into frames.
[0634] Step 3: Frame Analysis
[0635] The server uses a YOLO model to analyze each frame. This analysis detects people, objects, and background information within the frame. Furthermore, a deep learning model using TensorFlow is used to extract scene descriptions and contextual information for each frame. The input is a still image divided into frames, and the output is data such as detected people, objects, and scene descriptions for each frame.
[0636] Step 4: Metadata Extraction
[0637] The server uses the pandas library to extract metadata from the analysis results. This collects important information detected in each frame (people, objects, text, scene description) and integrates it chronologically. The input is the various data obtained from the frame analysis, and the output is the integrated metadata.
[0638] Step 5: Summary generation using generative AI
[0639] The server uses OpenAI GPT-4 to generate a summary based on the extracted metadata. The generation unit uses a generative AI model to perform natural language processing and create a summary in a format that is easy for the user to understand. The prompt used is "Summarize the content of the following episode in chronological order. Highlight important scenes, characters, and key events." The input is the extracted metadata, and the output is the generated summary.
[0640] Step 6: Provide a summary
[0641] The server provides the user with a summary generated using Django. Through a user interface unit, the summary is displayed visually, and the user can review and download it. The input is the generated summary text, and the output is the summary information displayed on the user interface.
[0642] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0643] This invention relates to a system that analyzes video content, extracts information, generates summaries using generative AI, and further combines it with an emotion engine that recognizes the user's emotions. This system receives video data from the user, divides it into frames, performs analysis, extracts metadata, provides the generated summary to the user, and recognizes the user's emotions to provide feedback.
[0644] System Overview
[0645] This system consists of the following main components:
[0646] 1. Receiving unit - Receives video data from the user.
[0647] 2. Frame splitting unit - Divides the received video data into frames.
[0648] 3. Analysis Unit - Analyzes each frame and detects the video content.
[0649] 4. Metadata Extraction Unit - Extracts metadata from the analysis results.
[0650] 5. Generation Unit - Generates summaries using generative AI.
[0651] 6. Emotion Engine - Recognizes the user's emotions and provides feedback for summary generation.
[0652] 7. Delivery Unit - Provides the generated summary to the user.
[0653] Program processing
[0654] 1. Receiving video data
[0655] The user accesses the system interface and uploads video data. The server receives the video data through the receiving unit and checks its format. Format conversion is performed as needed.
[0656] 2. Frame division of video data
[0657] The server uses a frame division unit to divide the received and converted video data into frames. The video becomes a collection of individual still images (frames).
[0658] 3. Frame Analysis
[0659] The server analyzes each frame and detects its content. The analysis unit executes object detection algorithms to identify people, objects, and text information within the frame. Furthermore, it uses deep learning models to extract scene descriptions and contextual information.
[0660] 4. Metadata Extraction
[0661] The server extracts metadata from the analysis results. The metadata extraction unit collects important information (people, objects, text, scene description) based on each frame. This information is integrated chronologically to construct the storyline.
[0662] 5. Summary generation using generative AI
[0663] The server uses a generation unit to generate a summary based on metadata using a generative AI. The generative AI then performs natural language processing on the extracted metadata to create a summary that is easy for the user to understand.
[0664] 6. User emotion recognition by an emotion engine
[0665] The server uses an emotion engine to analyze the user's facial expressions, tone of voice, and input content to identify the user's emotions. This information is fed back into the summarization process, which generates a summary tailored to the user's emotional state.
[0666] 7. Providing a summary and feedback
[0667] The server provides the generated summary to the user through a delivery unit. The user reviews the summary on the interface and, if necessary, downloads the summary data or performs further analysis. Based on feedback from the sentiment engine, if the user has a specific emotion, appropriate feedback messages and additional information are provided for that emotion.
[0668] Specific example
[0669] As a concrete example, consider the case where a user uploads a movie video file.
[0670] 1. The user uploads the video data of the movie.
[0671] 2. The server receives the video data, checks the format, and then divides it into frames.
[0672] 3. The server analyzes each frame and detects information such as characters, objects, and backgrounds.
[0673] 4. The server extracts and compiles this information as metadata.
[0674] 5. The server uses generative AI to generate a movie summary from the extracted metadata.
[0675] 6. The server uses an emotion engine to analyze the user's facial expressions, tone of voice, etc., and recognize the user's emotions.
[0676] 7. The server provides the generated summary to the user and offers sentiment-sensitive feedback as needed.
[0677] This system allows users to efficiently analyze video data and gain new insights, as well as receive emotionally resonant feedback.
[0678] The following describes the processing flow.
[0679] Step 1:
[0680] The user accesses the system interface and uploads video data. Once the upload is complete, the device sends the video data to the server.
[0681] Step 2:
[0682] The server uses a receiving unit to receive video data sent from the user. Upon receipt, it verifies the format of the video data and performs format conversion (e.g., MP4 to AVI) if necessary.
[0683] Step 3:
[0684] The server uses a frame division unit to divide the received and converted video data into frames. This results in the video being a collection of individual still images (frames).
[0685] Step 4:
[0686] The server uses an analysis unit to begin analyzing each frame. Specifically, it runs an object detection algorithm to identify people, objects, and text information within the frame. Furthermore, it uses a deep learning model to extract scene descriptions and contextual information.
[0687] Step 5:
[0688] The server extracts metadata from the analysis results. The metadata extraction unit collects important information (people, objects, text, scene description) based on each frame. This information is integrated chronologically to construct the storyline.
[0689] Step 6:
[0690] The server uses a generation unit to generate a summary based on metadata using a generative AI. The generative AI then performs natural language processing on the extracted metadata to create a summary that is easy for the user to understand.
[0691] Step 7:
[0692] The server uses an emotion engine to recognize the user's emotions. Specifically, it analyzes the user's facial expressions, tone of voice, input content, etc., to identify the user's emotional state.
[0693] Step 8:
[0694] The server provides the generated summary to the user through a service unit. The user can view the summary on the interface and download the summary data if necessary.
[0695] Step 9:
[0696] Based on feedback from the emotion engine, the server provides feedback messages and additional information tailored to the user's emotional state. This enables responses that are in line with the user's emotions.
[0697] (Example 2)
[0698] Next, we will describe Example 2. 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".
[0699] Conventional video analysis and summarization systems can analyze video content and generate summaries, but they lack the functionality to consider user emotions, making it difficult to optimize the user experience. Furthermore, improving the accuracy of analysis and summarization requires technology that incorporates feedback on the user's emotional state.
[0700] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[0701] In this invention, the server includes means for receiving video data from a user, means for dividing the received video data into frames, means for analyzing the video content of each frame, means for extracting metadata from the analysis results, means for generating a summary based on the metadata using a generative AI, means for providing the generated summary to the user, and means for recognizing the user's emotions and providing feedback for summary generation. This makes it possible to provide a personalized summary that corresponds to the user's emotional state.
[0702] "Video data" refers to information that is stored or transmitted in digital format as one or more image frames, representing visual content.
[0703] A "frame" refers to an individual still image that makes up video data.
[0704] "Analysis" refers to the process of processing data using algorithms and models to detect and understand information within a frame.
[0705] "Metadata" refers to additional information about video data extracted from the analysis results (e.g., people, objects, text, scene descriptions).
[0706] "Generative AI" refers to artificial intelligence systems that generate natural language summaries from collected data.
[0707] An "emotion engine" refers to technology that analyzes a user's facial expressions, tone of voice, input content, etc., to identify the user's emotional state.
[0708] A "user" refers to a person who uses the system to upload video data or to obtain generated summaries and feedback.
[0709] A "server" refers to a computer system that provides central data processing and storage functions within a system.
[0710] This invention relates to a system that analyzes video content, extracts information, generates summaries using generative AI, and further combines it with an emotion engine that recognizes user emotions. Each specific processing step is described in detail below.
[0711] System Configuration
[0712] This system mainly consists of the following components:
[0713] 1. Receiving unit - Receives video data from the user.
[0714] 2. Frame splitting unit - Divides the received video data into frames.
[0715] 3. Analysis Unit - Analyzes each frame and detects the video content.
[0716] 4. Metadata Extraction Unit - Extracts metadata from the analysis results.
[0717] 5. Generation Unit - Generates summaries using generative AI.
[0718] 6. Emotion Engine - Recognizes the user's emotions and provides feedback for summary generation.
[0719] 7. Delivery Unit - Provides the generated summary to the user.
[0720] Specific examples of hardware and software
[0721] The entire system runs on high-performance servers, and each unit operates based on specific algorithms and models. Specifically, it uses the following:
[0722] Object detection algorithms (e.g., YOLO, SSD, Faster R-CNN)
[0723] Deep learning models (e.g., DeepLab, ResNet)
[0724] Generative AI (e.g. GPT-3, BERT)
[0725] Emotion recognition engines (e.g., OpenFace, EmoVoice)
[0726] System operation example
[0727] As a concrete example, consider the case where a user uploads a movie video file.
[0728] 1. The user uploads movie video data via a web interface. The terminal receives input from the user and sends that data to the server.
[0729] 2. The server uses the receiving unit to receive the video data and check the format (e.g., MP4, AVI, MKV, etc.). If necessary, it converts unsupported formats to supported formats.
[0730] 3. The server uses a frame division unit to divide the video data into frames. For example, it divides one second of video into 24 frames.
[0731] 4. The server's analysis unit analyzes the frames and detects their content. Specifically, it extracts people, objects, and text information within the frames using object detection algorithms such as YOLO and SSD. It also uses deep learning models such as DeepLab and ResNet to analyze scene descriptions and contextual information.
[0732] 5. The server's metadata extraction unit extracts metadata from the analysis results. Important information collected for each frame (people, objects, text, scene description) is integrated chronologically to construct the storyline.
[0733] 6. The server's generation unit uses a generative AI model (e.g., GPT-3, BERT) to generate a summary based on the extracted metadata. The generative AI creates the summary in natural language that is easy for the user to understand.
[0734] 7. The server's emotion engine analyzes the user's facial expressions and tone of voice to recognize the user's emotions. This information is fed back into the summarization process, and a personalized summary is generated that is tailored to the user's emotional state.
[0735] 8. The server's service unit provides the user with the generated summary. The user reviews the summary on the interface and, if necessary, downloads the summary data or performs further analysis. Based on the sentiment engine's feedback, if the user has a specific emotion, appropriate feedback messages and additional information are provided for that emotion.
[0736] Example of a prompt
[0737] Using prompts allows generative AI models to create accurate summaries. The following are examples of prompts to input:
[0738] 1. Prompt message:
[0739] Please generate a summary of the following video data:
[0740] Video data: {Details about video data}
[0741] Metadata: {Summary of extracted metadata}
[0742] 2. Detailed prompt text:
[0743] Please write a summary of the following movie scene. Identify the characters and key events, and include background information for the scene:
[0744] Movie Title: {Movie Title}
[0745] Scene details: {More details about the scene}
[0746] Metadata: {Characters, Key Events, Background Information}
[0747] This invention allows users to efficiently analyze video data and gain new insights, as well as receive emotionally resonant feedback.
[0748] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0749] Step 1: Receiving video data
[0750] Users upload video data using the system's web interface or a dedicated application. The terminal receives input from the user and sends the data to the server. The server uses a receiving unit to receive the uploaded video data and check the format (e.g., MP4, AVI, MKV, etc.). If data in an unsupported format is received, the server automatically converts it to a supported format.
[0751] Input: Video data uploaded by the user
[0752] Output: Converted video data (format converted if necessary)
[0753] Specific examples of operation:
[0754] The user clicks the "Upload" button on the web interface and selects the video file.
[0755] The terminal sends the selected file to the server.
[0756] The server receives video data in MP4 format and converts it to AVI format as needed.
[0757] Step 2: Frame splitting of video data
[0758] The received and converted video data is divided into frames by the server's frame division unit. The video is broken down into 24 or 30 still images (frames) per second. The divided frames are temporarily stored and sent to the analysis unit.
[0759] Input: Converted video data
[0760] Output: Still images divided into frames
[0761] Specific examples of operation:
[0762] The server divides the video data into 24 frames per second.
[0763] Each frame is sequentially saved to the database and sent to the analysis unit.
[0764] Step 3: Frame Analysis
[0765] The server's analysis unit analyzes each frame and detects its content. Specifically, it uses object detection algorithms (e.g., YOLO, SSD, Faster R-CNN) to identify people, objects, and text information within the frame. It also extracts scene descriptions and contextual information using deep learning models (e.g., DeepLab, ResNet).
[0766] Input: Still images divided into frames
[0767] Output: Analysis results for each frame (people, objects, text, descriptions, etc.)
[0768] Specific examples of operation:
[0769] The server detects people within the frame and assigns them name tags using facial recognition.
[0770] The server identifies objects within the frame (e.g., cars, buildings) and records them as metadata.
[0771] Step 4: Metadata Extraction
[0772] The server's metadata extraction unit extracts metadata from the analysis results. Based on each frame, it integrates important information (people, objects, text, scene description) in chronological order to construct a storyline.
[0773] Input: Analysis results for each frame
[0774] Output: Metadata per frame
[0775] Specific examples of operation:
[0776] The server extracts the conversation content of characters appearing in a specific scene as text information.
[0777] The server records the location information of objects (e.g., where a car is parked).
[0778] Step 5: Summary generation using generative AI
[0779] The server's generation unit generates a summary based on metadata using generative AI (e.g., GPT-3, BERT). The generative AI utilizes natural language processing to create a summary that is easy for the user to understand.
[0780] Input: Metadata per frame
[0781] Output: Summary in natural language
[0782] Specific examples of operation:
[0783] The server instructs the generative AI to "summarize the characters and main events in this scene."
[0784] The generative AI generates a summary that reads, "This is a scene where the protagonist steals a car and is being chased by the police."
[0785] Step 6: User emotion recognition by the emotion engine
[0786] The server's emotion engine analyzes the user's facial expressions, tone of voice, and input to identify their emotions. This information is then fed back into the summary generation process, resulting in a personalized summary tailored to the user's emotional state.
[0787] Input: User's facial expression, tone of voice, input content
[0788] Output: User's emotional state
[0789] Specific examples of operation:
[0790] The server analyzes the user's facial expressions via the webcam and determines their emotional state to be "joyful."
[0791] Based on the user's emotion, which the server has analyzed as "surprised," specific details are added to the summary.
[0792] Step 7: Providing a summary and feedback
[0793] The generated summary is provided to the user through a server-side unit. The user reviews the summary on the interface and, if necessary, downloads the summary data or performs further analysis. Based on feedback from the sentiment engine, feedback messages and additional information tailored to the user's emotions are also provided.
[0794] Input: Summary text and user's emotional state
[0795] Output: Personalized summary and feedback provided to the user.
[0796] Specific examples of operation:
[0797] The server generates a movie summary, which is then displayed on the user's screen.
[0798] The server displays positive feedback messages that correspond to the user's feelings of joy.
[0799] (Application Example 2)
[0800] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0801] While conventional video summarization systems could efficiently summarize video content, they lacked the ability to provide feedback and summaries that responded to the user's emotions, resulting in a lack of information that resonated with viewers' feelings. Furthermore, accurately identifying the parts of the video that users were interested in or the important scenes, and generating appropriate summaries, proved difficult.
[0802] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[0803] In this invention, the server includes means for receiving video data from a user, means for dividing the received video data into frames, means for analyzing the video content of each frame, means for extracting metadata from the analysis results, means for generating a summary based on the metadata using a generative AI, means for recognizing the user's emotions and providing feedback for summary generation, means for providing the generated summary to the user, and means for providing feedback that corresponds to the user's emotions. This makes it possible to provide an appropriate summary that is sensitive to the user's emotions and effective feedback.
[0804] A "user" is an individual or group that uses the system to input video data and receives summaries and feedback.
[0805] "Video data" refers to digital video files containing viewing content such as movies and TV series.
[0806] A "frame" is an individual still image that makes up video data.
[0807] "Metadata" refers to information about the content of a video (for example, information about people, objects, and text) that is extracted from the analysis of video data.
[0808] "Generative AI" refers to artificial intelligence that performs natural language processing based on extracted metadata to generate a summary of video content.
[0809] "Emotion recognition" is the process of analyzing a user's facial expressions and tone of voice to identify their emotional state.
[0810] "Feedback" refers to information provided during the summary generation process that takes into account the user's emotional state.
[0811] "Analysis" is the process of dividing video data into frames and detecting and understanding their contents (people, objects, text information, etc.).
[0812] A "summary" is a text that concisely summarizes the important parts or main storyline of video content.
[0813] This invention relates to a system that analyzes video content, generates summaries, and provides feedback tailored to the user's emotions. This system consists of the following main components:
[0814] System Configuration
[0815] 1. Receiving Unit
[0816] Users upload video data via a smartphone app. This upload is performed via an HTTP request to the server.
[0817] 2. Frame splitting unit
[0818] The server uses the OpenCV library to divide the received video data into frames. This converts the video data into individual still images (frames).
[0819] 3. Analysis Unit
[0820] The server analyzes each frame and detects its content. This analysis uses deep learning models such as TensorFlow to detect people, objects, text information, and more.
[0821] 4. Metadata Extraction Unit
[0822] The server extracts metadata from the analysis results. This metadata includes important information within each frame (people, objects, text information).
[0823] 5. Generation Unit
[0824] The server uses a generative AI model (e.g., GPT-2) to generate a video summary based on the extracted metadata. The generated summary is then refined using natural language processing.
[0825] 6. Emotion Recognition Unit
[0826] The server uses an emotion engine (e.g., DeepFace) to analyze the user's facial expressions and tone of voice to recognize their emotions. This analysis is then fed back into the summary generation process.
[0827] 7. Provided Units
[0828] The server provides the user with a generated summary and sentiment-based feedback. Through a smartphone app, the user can review the summary and receive feedback as needed.
[0829] Specific example
[0830] For example, if a user uploads a movie video file, the following process takes place:
[0831] 1. Users upload movie video data through the app.
[0832] 2. The server receives the video data, checks the format, and then divides it into frames.
[0833] 3. The server analyzes each frame and detects information such as characters, objects, and backgrounds.
[0834] 4. The server extracts and compiles this information as metadata.
[0835] 5. The server uses generative AI to generate a movie summary from the extracted metadata.
[0836] 6. The server uses an emotion engine to analyze the user's facial expressions and tone of voice to recognize the user's emotions.
[0837] 7. The server provides the generated summary to the user and offers sentiment-sensitive feedback as needed.
[0838] Example of a prompt
[0839] Please create a video summary based on the following objects and scene description:
[0840] Objects: Cars, buildings, people
[0841] Scene description: This scene depicts a car moving violently.
[0842] Objects: Sea, boat, sunset
[0843] Scene description: A scene showing a beautiful sunset.
[0844] This allows users to efficiently analyze video data and gain new insights, as well as receive emotionally resonant feedback.
[0845] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0846] Step 1:
[0847] Users upload video data via a smartphone app.
[0848] Input: A video file selected by the user (e.g., an MP4 file of a movie).
[0849] Data processing: Send video files to the server via HTTP request.
[0850] Output: The video data is stored in the server's receiving unit.
[0851] Step 2:
[0852] The server divides the received video data into frames.
[0853] Input: Video file.
[0854] Data processing: The video is split frame by frame using the OpenCV library.
[0855] Output: A list of frames (each frame is stored as a still image).
[0856] Step 3:
[0857] The server analyzes the contents of each frame.
[0858] Input: List of frames.
[0859] Data processing: Use deep learning models such as TensorFlow to detect people, objects, and text information.
[0860] Output: Analysis results for each frame (stored in the database).
[0861] Step 4:
[0862] The server extracts metadata from the analysis results.
[0863] Input: Analysis results for each frame.
[0864] Data processing: Analyze the results and extract important information (people, objects, text information).
[0865] Output: Metadata list (contains information on people, objects, scene descriptions, etc.).
[0866] Step 5:
[0867] The server uses generative AI to generate a summary from the metadata.
[0868] Input: Extracted metadata.
[0869] Data processing: Generative AI (e.g., GPT-2) is used to generate summaries based on metadata.
[0870] Output: Summary text.
[0871] Step 6:
[0872] The server uses an emotion engine to recognize the user's emotions.
[0873] Input: User's facial expression images and audio data.
[0874] Data processing: Analyze user emotions using libraries such as DeepFace.
[0875] Output: User's emotional state (a specific emotional label is stored).
[0876] Step 7:
[0877] The server provides the user with a generated summary and sentiment-based feedback.
[0878] Input: Summary text, user's emotional state.
[0879] Data processing: Display summaries in an ART-specific format and generate feedback messages.
[0880] Output: A summary and feedback message displayed to the user via a smartphone app.
[0881] This allows the system to generate summaries of video data and provide effective feedback tailored to the user's emotions.
[0882] 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 user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[0883] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0884] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart glasses 214.
[0885] [Third Embodiment]
[0886] Figure 5 shows an example of the configuration of the data processing system 310 according to the third embodiment.
[0887] As shown in Figure 5, the data processing system 310 includes a data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.
[0888] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0889] The headset terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a display 343. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and display 343 are also connected to the bus 52.
[0890] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[0891] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[0892] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[0893] Figure 6 shows an example of the main functions of the data processing device 12 and the headset terminal 314. As shown in Figure 6, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[0894] The specific processing program 56 is an example of a "program" relating to the technology of this 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.
[0895] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0896] In the headset terminal 314, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. 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 processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0897] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the headset terminal 314 will be referred to as the "terminal".
[0898] This invention relates to a system for analyzing video content, extracting information, and generating a summary using generative AI. The system includes a series of processes: receiving video data from a user, dividing it into frames, performing analysis, extracting metadata, and providing the generated summary to the user.
[0899] System Overview
[0900] This system consists of the following main components:
[0901] 1. Receiving unit - Receives video data from the user.
[0902] 2. Frame splitting unit - Divides the received video data into frames.
[0903] 3. Analysis Unit - Analyzes each frame and detects the video content.
[0904] 4. Metadata Extraction Unit - Extracts metadata from the analysis results.
[0905] 5. Generation Unit - Generates summaries using generative AI.
[0906] 6. Delivery Unit - Provides the generated summary to the user.
[0907] Program processing
[0908] 1. Receiving video data
[0909] The user accesses the system and uploads video data. The server receives the video data through the receiving unit and checks if it is in the correct format. If it is in a different format, it performs a format conversion.
[0910] 2. Frame division of video data
[0911] The server uses a frame division unit to divide the video data into frames. This process converts the video data into individual still images.
[0912] 3. Frame Analysis
[0913] The server analyzes each frame and detects its content. The analysis unit runs object detection algorithms to identify people, objects, and text information within the frame. It also uses deep learning models to extract scene descriptions and contextual information.
[0914] 4. Metadata Extraction
[0915] The server extracts metadata from the analysis results. The metadata extraction unit collects important information (people, objects, text, scene description) based on each frame. This information is integrated chronologically to construct the storyline.
[0916] 5. Summary generation using generative AI
[0917] The server uses generative AI to generate a summary based on the extracted metadata. The generation unit uses AI to perform natural language processing and create a summary in a format that is easy for the user to understand.
[0918] 6. Providing a summary
[0919] The server provides the generated summary to the user. Through the delivery unit, the summary is displayed to the user and can be downloaded for further analysis.
[0920] Specific example
[0921] As a concrete example, consider the case where a user uploads a movie video file.
[0922] 1. The user uploads the video data of the movie.
[0923] 2. The server receives the data, checks the format, and then divides it into frames.
[0924] 3. The server analyzes each frame and detects information such as characters, objects, and backgrounds.
[0925] 4. The server extracts and compiles this information as metadata.
[0926] 5. The server uses generative AI to generate a movie summary from the extracted metadata.
[0927] 6. The server provides the generated summary to the user, who can then review and download the summary.
[0928] This system is designed to streamline the management and analysis of video content, allowing users to quickly and accurately obtain the information they need.
[0929] The following describes the processing flow.
[0930] Step 1:
[0931] The user accesses the system interface and uploads the video data they want to analyze. Once the upload is complete, the device sends the video data to the server.
[0932] Step 2:
[0933] The server uses a receiving unit to receive video data sent from the user. Upon receipt, it verifies the format of the video data and performs format conversion (e.g., MP4 to AVI) if necessary.
[0934] Step 3:
[0935] The server uses a frame division unit to divide the received and converted video data into frames. This results in the video being a collection of individual still images (frames).
[0936] Step 4:
[0937] The server uses an analysis unit to begin analyzing each frame. Specifically, it runs an object detection algorithm to identify people, objects, and text information within the frame. Furthermore, it uses a deep learning model to extract scene descriptions and contextual information.
[0938] Step 5:
[0939] The server extracts metadata from the analysis results. The metadata extraction unit collects important information (people, objects, text, scene description) based on each frame. This information is integrated chronologically to construct the storyline.
[0940] Step 6:
[0941] The server uses a generation unit to generate a summary based on metadata using a generative AI. The generative AI then performs natural language processing on the extracted metadata to create a summary that is easy for the user to understand.
[0942] Step 7:
[0943] The server provides the generated summary to the user through the service unit. The user can view the summary through the system interface and, if necessary, download the summary data or perform further detailed analysis.
[0944] (Example 1)
[0945] Next, we will describe Example 1. 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."
[0946] Conventional video content analysis systems suffered from low analysis accuracy and the time-consuming process of generating summaries for complex content. Furthermore, they were incompatible with video data in different formats, requiring users to manually convert formats, which was a significant inconvenience. Additionally, the generated summaries lacked sufficient accuracy and information, making it difficult for users to quickly and accurately obtain the information they needed.
[0947] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0948] In this invention, the server includes means for receiving video data from a user, means for checking whether the received video data is in a specified format and converting the format if it is in a different format, means for dividing the received video data into frames, means for an analysis unit to analyze the frames using an object detection algorithm and a deep learning model and extract scene description and context information, means for generating a summary based on metadata using a generative AI, and means for providing the generated summary to the user. This improves the accuracy of video analysis, supports video data in different formats, and enables the rapid and accurate generation and provision of summaries.
[0949] A "server" is a key component of a computer system that receives, processes, analyzes, and generates and provides summaries of video data.
[0950] "Video data" refers to digital information in video format uploaded by users, which is subject to analysis and summary generation.
[0951] "Format" refers to the recording format of video data, and includes different file formats such as AVI, MP4, and MKV.
[0952] "Format conversion" refers to the process of converting video data to a standard format when it differs from the specified format.
[0953] A "frame" refers to an individual still image that makes up video data, with multiple images existing per second.
[0954] A "frame splitting unit" is a hardware or software component used to divide received video data into frames.
[0955] An "analysis unit" is a hardware or software component that analyzes the content of video frame by frame and detects people, objects, and text information within each frame.
[0956] An "object detection algorithm" is a computer vision technique used to identify people and objects within a frame.
[0957] A "deep learning model" is an artificial intelligence algorithm trained using a large amount of data, and is used to extract contextual information and scene descriptions from video content.
[0958] "Metadata" refers to information extracted by the analysis unit, including information about people, objects, text, and scene descriptions.
[0959] "Generative AI" refers to artificial intelligence models that perform natural language processing and generate summaries based on extracted metadata.
[0960] A "summary" is text information created by a generative AI that concisely explains the main content of the video data.
[0961] A "delivery unit" is a hardware or software component that displays the generated summary to the user and enables downloading and further analysis.
[0962] This invention relates to a system for analyzing video content, extracting information, and generating a summary using generative AI. This system includes a series of processes: receiving video data from a user, dividing it into frames, performing analysis, extracting metadata, and providing the generated summary to the user. Specific embodiments are described below.
[0963] Hardware and software configuration
[0964] A server is a computer system for receiving, processing, analyzing, and generating and providing summaries of video data. The server includes the following main components:
[0965] 1. Receiving Unit - Receives video data from the user. This unit acquires data via a web interface or a dedicated application.
[0966] 2. Format Verification and Conversion Unit - This unit verifies whether the received video data is in the specified format and performs format conversion if it is in a different format. This conversion uses libraries such as FFmpeg.
[0967] 3. Frame Splitting Unit - This unit splits the received video data into frames. Specifically, it uses the OpenCV library to extract frames at a rate of 30 frames per second (fps).
[0968] 4. Analysis Unit - Analyzes the video content frame by frame. Here, object detection algorithms such as YOLO v4 are used to identify people, objects, and text information. In addition, deep learning models (ResNet, BERT, etc.) are used to extract scene descriptions and contextual information.
[0969] 5. Metadata Extraction Unit - Extracts metadata from the analysis results and collects information on people, objects, and text contained in each frame. This integrates the information chronologically and constructs a storyline.
[0970] 6. Generation Unit - Uses a generative AI (e.g., GPT-3) to generate a summary based on the extracted metadata. Natural language processing is performed to create a summary that is easy for users to understand.
[0971] 7. Delivery Unit - Provides the generated summary to the user. The summary is displayed via a web interface or dedicated application, and downloads and further analysis are possible.
[0972] Specific example
[0973] As a concrete example, consider the case where a user uploads a movie video file.
[0974] 1. The user uploads the video data of the movie.
[0975] 2. The server uses a receiving unit to receive the data, checks the format, and then divides it into frames.
[0976] 3. The server analyzes each frame and detects information such as characters, objects, and backgrounds.
[0977] 4. The server extracts and compiles this information as metadata.
[0978] 5. The server uses generative AI to generate a movie summary from the extracted metadata. Examples of specific prompts include, "Summarize the content of this video in three lines or less," and "List the characters in this video and their roles."
[0979] 6. The server provides the generated summary to the user, who can then review and download the summary.
[0980] This system is designed to streamline the management and analysis of video content, allowing users to quickly and accurately obtain the information they need.
[0981] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0982] Step 1: Receiving video data
[0983] Users access the server via a web interface or a dedicated application and upload video data. The server uses a receiving unit to receive the data and verify that the upload was completed successfully. The input is the video data uploaded by the user, and the output is the video data received by the server.
[0984] Step 2: Format check and conversion
[0985] The server verifies that the received video data is in the specified format. For example, if formats such as AVI, MP4, and MKV are allowed, it checks if the data matches. If the format is different, the server automatically converts the format using a library such as FFmpeg. The input is the received video data, and the output is the video data converted to the specified format.
[0986] Step 3: Frame splitting
[0987] The server divides the video data into frames using a frame splitting unit. Specifically, it extracts frames at a rate of 30 frames per second (fps) using the OpenCV library. The input is format-verified and converted video data, and the output is individual frame images.
[0988] Step 4: Frame Analysis
[0989] The server uses an analysis unit to analyze each frame. Here, object detection algorithms such as YOLO v4 are used to identify people, objects, and text information. Deep learning models (ResNet, BERT, etc.) are also used to extract scene descriptions and contextual information. The input is the segmented frames, and the output is data such as people, objects, text information, and scene descriptions obtained through the analysis.
[0990] Step 5: Metadata Extraction
[0991] The server extracts metadata based on the analysis results. The metadata extraction unit integrates information such as people, objects, text, and scene descriptions collected from each frame in chronological order. Specifically, the server uses Python and an SQL database to store and organize the data. The input is the analysis results of the frames, and the output is the integrated metadata.
[0992] Step 6: Summary generation using generative AI
[0993] The server generates a summary using generative AI based on the extracted metadata. Specifically, it uses large-scale language models such as GPT-3 to perform natural language processing and create the summary. For example, the following prompt sentence is input to the generative AI model: "Please summarize the content of this video in three lines or less." The input is integrated metadata, and the output is the generated summary text.
[0994] Step 7: Provide a summary
[0995] The server provides the generated summary to the user. The generated summary is displayed through a web interface or a dedicated application, allowing the user to review the provided summary and download it if necessary. The input is the generated summary text, and the output is the summary information provided to the user.
[0996] This series of steps creates a system that efficiently manages and analyzes video content, allowing users to quickly and accurately obtain the information they need.
[0997] (Application Example 1)
[0998] Next, we will explain Application Example 1. In the following explanation, 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."
[0999] Video content contains a large amount of data, and watching the entire content requires a significant amount of time. However, there is a lack of efficient means for users to quickly grasp important information and key scenes. Therefore, there is a need to automatically generate and provide summaries of video content to users, thereby reducing viewing time and enabling efficient information acquisition.
[1000] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[1001] In this invention, the server includes means for receiving video data from a user, means for dividing the received video data into frames, means for analyzing the video content frame by frame, means for extracting metadata from the analysis results, means for generating a summary based on the metadata using a generative AI, means for providing the generated summary to the user, and means for the user to upload video data and view / download the generated summary. This enables the user to quickly and efficiently grasp important information and key scenes of the video content.
[1002] "Video content" refers to video data that allows viewers to obtain information and entertainment through sight and sound.
[1003] A "user" is defined as an entity that utilizes a system or application, uploading video data and receiving services related to it.
[1004] "Video data" refers to digital or analog data files that make up video information.
[1005] A "frame" refers to one of the consecutive still images that make up a video.
[1006] "Frame splitting" refers to the process of dividing video data into a series of still images (frames) that make up the video.
[1007] "Analyzing video content frame by frame" refers to the process of detecting the visual and textual information contained in each frame and interpreting its content.
[1008] "Metadata" refers to data about data, specifically supplementary data that describes information about people, objects, text, and other elements within video data.
[1009] "Generative AI" refers to artificial intelligence that uses natural language processing technology to generate new text or summaries from input data.
[1010] A "summary" refers to a document that expresses the key points of the original video content in a short format.
[1011] "Provision" refers to the process by which the system displays and makes available information, such as generated summaries, to the user.
[1012] "Uploading" refers to the process by which a user sends their data to an online system such as a server.
[1013] "Downloading" refers to the process by which a user saves data from an online system to their own device.
[1014] "Refining a summary" refers to the process of using natural language processing techniques to adjust and supplement the generated summary content in order to make it more detailed and accurate.
[1015] "Highlighting important scenes and character information" refers to the process of clearly indicating particularly noteworthy scenes and characters within the generated summary, making it easier for users to understand.
[1016] This invention relates to a system for analyzing video content, extracting information, and generating a summary using generative AI. The system includes a series of processes: receiving video data from a user, dividing it into frames, performing analysis, extracting metadata, and providing the generated summary to the user.
[1017] System Overview
[1018] This system consists of the following main components:
[1019] 1. Receiving Unit
[1020] 2. Frame splitting unit
[1021] 3. Analysis Unit
[1022] 4. Metadata Extraction Unit
[1023] 5. Generation Unit
[1024] 6. Provided Units
[1025] 7. User Interface Unit
[1026] Hardware and software to be used
[1027] Hardware: Servers and user terminals (PCs, smartphones, tablets)
[1028] software:
[1029] FFmpeg (format conversion)
[1030] OpenCV (frame splitting)
[1031] YOLO (Object Detection)
[1032] TensorFlow (deep learning model)
[1033] pandas (data processing)
[1034] OpenAI GPT-4 (generative AI)
[1035] Django (server-side framework)
[1036] Receiving video data
[1037] The server receives video data from the user's terminal. The user uploads video data to the system using their terminal, and the server uses FFmpeg to check the data format and convert it if necessary.
[1038] Frame division of video data
[1039] The server uses OpenCV to divide the received video data into frames. This converts the video data into individual still images, making it easier for the analysis unit to process.
[1040] Frame analysis
[1041] The server implements the YOLO model to analyze each frame. This allows for the detection of information about people, objects, and background within each frame. Furthermore, a deep learning model using TensorFlow is employed to extract scene descriptions and contextual information.
[1042] Metadata Extraction
[1043] The server extracts metadata based on the analysis results. Using the pandas library, it collects important information such as people, objects, text information, and scene descriptions, and integrates them chronologically. This metadata forms the basis for the final summary generation.
[1044] Summary generation using generative AI
[1045] The server uses OpenAI GPT-4 to generate summaries based on extracted metadata. In the generation unit, a generative AI model performs natural language processing to create summaries in a format that is easy for users to understand.
[1046] Summary
[1047] The server provides the user with a summary generated using Django. Through the user interface unit, the summary is displayed visually, and the user can review and download it.
[1048] Specific example
[1049] If a user uploads a drama episode:
[1050] 1. The user uploads video data of the drama.
[1051] 2. The server receives the data, checks the format, and then divides it into frames.
[1052] 3. The server analyzes each frame and detects information such as characters, objects, and backgrounds.
[1053] 4. The server extracts and compiles this information as metadata.
[1054] 5. The server uses generative AI to generate a summary of the drama from the extracted metadata.
[1055] 6. The server provides the generated summary to the user, who can then review and download the summary.
[1056] Example of a prompt
[1057] "Please summarize the content of the next episode in chronological order, highlighting important scenes, characters, and key events."
[1058] This system is designed to streamline the management and analysis of video content, allowing users to quickly and accurately obtain the information they need.
[1059] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[1060] Step 1: Receiving video data
[1061] The server receives video data transmitted from the user terminal. During this process, the server uses a receiving unit to verify the data format and, if necessary, converts it to the appropriate format using FFmpeg. The input is video data from the user terminal, and the output is video data that has been appropriately converted and is ready for processing.
[1062] Step 2: Frame splitting of video data
[1063] The server uses OpenCV to divide the received video data into frames. In this process, the video data is converted into a series of still images. The input is formatted video data, and the output is a series of still images divided into frames.
[1064] Step 3: Frame Analysis
[1065] The server uses a YOLO model to analyze each frame. This analysis detects people, objects, and background information within the frame. Furthermore, a deep learning model using TensorFlow is used to extract scene descriptions and contextual information for each frame. The input is a still image divided into frames, and the output is data such as detected people, objects, and scene descriptions for each frame.
[1066] Step 4: Metadata Extraction
[1067] The server uses the pandas library to extract metadata from the analysis results. This collects important information detected in each frame (people, objects, text, scene description) and integrates it chronologically. The input is the various data obtained from the frame analysis, and the output is the integrated metadata.
[1068] Step 5: Summary generation using generative AI
[1069] The server uses OpenAI GPT-4 to generate a summary based on the extracted metadata. The generation unit uses a generative AI model to perform natural language processing and create a summary in a format that is easy for the user to understand. The prompt used is "Summarize the content of the following episode in chronological order. Highlight important scenes, characters, and key events." The input is the extracted metadata, and the output is the generated summary.
[1070] Step 6: Provide a summary
[1071] The server provides the user with a summary generated using Django. Through a user interface unit, the summary is displayed visually, and the user can review and download it. The input is the generated summary text, and the output is the summary information displayed on the user interface.
[1072] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[1073] This invention relates to a system that analyzes video content, extracts information, generates summaries using generative AI, and further combines it with an emotion engine that recognizes the user's emotions. This system receives video data from the user, divides it into frames, performs analysis, extracts metadata, provides the generated summary to the user, and recognizes the user's emotions to provide feedback.
[1074] System Overview
[1075] This system consists of the following main components:
[1076] 1. Receiving unit - Receives video data from the user.
[1077] 2. Frame splitting unit - Divides the received video data into frames.
[1078] 3. Analysis Unit - Analyzes each frame and detects the video content.
[1079] 4. Metadata Extraction Unit - Extracts metadata from the analysis results.
[1080] 5. Generation Unit - Generates summaries using generative AI.
[1081] 6. Emotion Engine - Recognizes the user's emotions and provides feedback for summary generation.
[1082] 7. Delivery Unit - Provides the generated summary to the user.
[1083] Program processing
[1084] 1. Receiving video data
[1085] The user accesses the system interface and uploads video data. The server receives the video data through the receiving unit and checks its format. Format conversion is performed as needed.
[1086] 2. Frame division of video data
[1087] The server uses a frame division unit to divide the received and converted video data into frames. The video becomes a collection of individual still images (frames).
[1088] 3. Frame Analysis
[1089] The server analyzes each frame and detects its content. The analysis unit executes object detection algorithms to identify people, objects, and text information within the frame. Furthermore, it uses deep learning models to extract scene descriptions and contextual information.
[1090] 4. Metadata Extraction
[1091] The server extracts metadata from the analysis results. The metadata extraction unit collects important information (people, objects, text, scene description) based on each frame. This information is integrated chronologically to construct the storyline.
[1092] 5. Summary generation using generative AI
[1093] The server uses a generation unit to generate a summary based on metadata using a generative AI. The generative AI then performs natural language processing on the extracted metadata to create a summary that is easy for the user to understand.
[1094] 6. User emotion recognition by an emotion engine
[1095] The server uses an emotion engine to analyze the user's facial expressions, tone of voice, and input content to identify the user's emotions. This information is fed back into the summarization process, which generates a summary tailored to the user's emotional state.
[1096] 7. Providing a summary and feedback
[1097] The server provides the generated summary to the user through a delivery unit. The user reviews the summary on the interface and, if necessary, downloads the summary data or performs further analysis. Based on feedback from the sentiment engine, if the user has a specific emotion, appropriate feedback messages and additional information are provided for that emotion.
[1098] Specific example
[1099] As a concrete example, consider the case where a user uploads a movie video file.
[1100] 1. The user uploads the video data of the movie.
[1101] 2. The server receives the video data, checks the format, and then divides it into frames.
[1102] 3. The server analyzes each frame and detects information such as characters, objects, and backgrounds.
[1103] 4. The server extracts and compiles this information as metadata.
[1104] 5. The server uses generative AI to generate a movie summary from the extracted metadata.
[1105] 6. The server uses an emotion engine to analyze the user's facial expressions, tone of voice, etc., and recognize the user's emotions.
[1106] 7. The server provides the generated summary to the user and offers sentiment-sensitive feedback as needed.
[1107] This system allows users to efficiently analyze video data and gain new insights, as well as receive emotionally resonant feedback.
[1108] The following describes the processing flow.
[1109] Step 1:
[1110] The user accesses the system interface and uploads video data. Once the upload is complete, the device sends the video data to the server.
[1111] Step 2:
[1112] The server uses a receiving unit to receive video data sent from the user. Upon receipt, it verifies the format of the video data and performs format conversion (e.g., MP4 to AVI) if necessary.
[1113] Step 3:
[1114] The server uses a frame division unit to divide the received and converted video data into frames. This results in the video being a collection of individual still images (frames).
[1115] Step 4:
[1116] The server uses an analysis unit to begin analyzing each frame. Specifically, it runs an object detection algorithm to identify people, objects, and text information within the frame. Furthermore, it uses a deep learning model to extract scene descriptions and contextual information.
[1117] Step 5:
[1118] The server extracts metadata from the analysis results. The metadata extraction unit collects important information (people, objects, text, scene description) based on each frame. This information is integrated chronologically to construct the storyline.
[1119] Step 6:
[1120] The server uses a generation unit to generate a summary based on metadata using a generative AI. The generative AI then performs natural language processing on the extracted metadata to create a summary that is easy for the user to understand.
[1121] Step 7:
[1122] The server uses an emotion engine to recognize the user's emotions. Specifically, it analyzes the user's facial expressions, tone of voice, input content, etc., to identify the user's emotional state.
[1123] Step 8:
[1124] The server provides the generated summary to the user through a service unit. The user can view the summary on the interface and download the summary data if necessary.
[1125] Step 9:
[1126] Based on feedback from the emotion engine, the server provides feedback messages and additional information tailored to the user's emotional state. This enables responses that are in line with the user's emotions.
[1127] (Example 2)
[1128] Next, we will describe Example 2. 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."
[1129] Conventional video analysis and summarization systems can analyze video content and generate summaries, but they lack the functionality to consider user emotions, making it difficult to optimize the user experience. Furthermore, improving the accuracy of analysis and summarization requires technology that incorporates feedback on the user's emotional state.
[1130] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[1131] In this invention, the server includes means for receiving video data from a user, means for dividing the received video data into frames, means for analyzing the video content of each frame, means for extracting metadata from the analysis results, means for generating a summary based on the metadata using a generative AI, means for providing the generated summary to the user, and means for recognizing the user's emotions and providing feedback for summary generation. This makes it possible to provide a personalized summary that corresponds to the user's emotional state.
[1132] "Video data" refers to information that is stored or transmitted in digital format as one or more image frames, representing visual content.
[1133] A "frame" refers to an individual still image that makes up video data.
[1134] "Analysis" refers to the process of processing data using algorithms and models to detect and understand information within a frame.
[1135] "Metadata" refers to additional information about video data extracted from the analysis results (e.g., people, objects, text, scene descriptions).
[1136] "Generative AI" refers to artificial intelligence systems that generate natural language summaries from collected data.
[1137] An "emotion engine" refers to technology that analyzes a user's facial expressions, tone of voice, input content, etc., to identify the user's emotional state.
[1138] A "user" refers to a person who uses the system to upload video data or to obtain generated summaries and feedback.
[1139] A "server" refers to a computer system that provides central data processing and storage functions within a system.
[1140] This invention relates to a system that analyzes video content, extracts information, generates summaries using generative AI, and further combines it with an emotion engine that recognizes user emotions. Each specific processing step is described in detail below.
[1141] System Configuration
[1142] This system mainly consists of the following components:
[1143] 1. Receiving unit - Receives video data from the user.
[1144] 2. Frame splitting unit - Divides the received video data into frames.
[1145] 3. Analysis Unit - Analyzes each frame and detects the video content.
[1146] 4. Metadata Extraction Unit - Extracts metadata from the analysis results.
[1147] 5. Generation Unit - Generates summaries using generative AI.
[1148] 6. Emotion Engine - Recognizes the user's emotions and provides feedback for summary generation.
[1149] 7. Delivery Unit - Provides the generated summary to the user.
[1150] Specific examples of hardware and software
[1151] The entire system runs on high-performance servers, and each unit operates based on specific algorithms and models. Specifically, it uses the following:
[1152] Object detection algorithms (e.g., YOLO, SSD, Faster R-CNN)
[1153] Deep learning models (e.g., DeepLab, ResNet)
[1154] Generative AI (e.g. GPT-3, BERT)
[1155] Emotion recognition engines (e.g., OpenFace, EmoVoice)
[1156] System operation example
[1157] As a concrete example, consider the case where a user uploads a movie video file.
[1158] 1. The user uploads movie video data via a web interface. The terminal receives input from the user and sends that data to the server.
[1159] 2. The server uses the receiving unit to receive the video data and check the format (e.g., MP4, AVI, MKV, etc.). If necessary, it converts unsupported formats to supported formats.
[1160] 3. The server uses a frame division unit to divide the video data into frames. For example, it divides one second of video into 24 frames.
[1161] 4. The server's analysis unit analyzes the frames and detects their content. Specifically, it extracts people, objects, and text information within the frames using object detection algorithms such as YOLO and SSD. It also uses deep learning models such as DeepLab and ResNet to analyze scene descriptions and contextual information.
[1162] 5. The server's metadata extraction unit extracts metadata from the analysis results. Important information collected for each frame (people, objects, text, scene description) is integrated chronologically to construct the storyline.
[1163] 6. The server's generation unit uses a generative AI model (e.g., GPT-3, BERT) to generate a summary based on the extracted metadata. The generative AI creates the summary in natural language that is easy for the user to understand.
[1164] 7. The server's emotion engine analyzes the user's facial expressions and tone of voice to recognize the user's emotions. This information is fed back into the summarization process, and a personalized summary is generated that is tailored to the user's emotional state.
[1165] 8. The server's service unit provides the user with the generated summary. The user reviews the summary on the interface and, if necessary, downloads the summary data or performs further analysis. Based on the sentiment engine's feedback, if the user has a specific emotion, appropriate feedback messages and additional information are provided for that emotion.
[1166] Example of a prompt
[1167] Using prompts allows generative AI models to create accurate summaries. The following are examples of prompts to input:
[1168] 1. Prompt message:
[1169] Please generate a summary of the following video data:
[1170] Video data: {Details about video data}
[1171] Metadata: {Summary of extracted metadata}
[1172] 2. Detailed prompt text:
[1173] Please write a summary of the following movie scene. Identify the characters and key events, and include background information for the scene:
[1174] Movie Title: {Movie Title}
[1175] Scene details: {More details about the scene}
[1176] Metadata: {Characters, Key Events, Background Information}
[1177] This invention allows users to efficiently analyze video data and gain new insights, as well as receive emotionally resonant feedback.
[1178] The flow of the specific processing in Example 2 will be explained using Figure 13.
[1179] Step 1: Receiving video data
[1180] Users upload video data using the system's web interface or a dedicated application. The terminal receives input from the user and sends the data to the server. The server uses a receiving unit to receive the uploaded video data and check the format (e.g., MP4, AVI, MKV, etc.). If data in an unsupported format is received, the server automatically converts it to a supported format.
[1181] Input: Video data uploaded by the user
[1182] Output: Converted video data (format converted if necessary)
[1183] Specific examples of operation:
[1184] The user clicks the "Upload" button on the web interface and selects the video file.
[1185] The terminal sends the selected file to the server.
[1186] The server receives video data in MP4 format and converts it to AVI format as needed.
[1187] Step 2: Frame splitting of video data
[1188] The received and converted video data is divided into frames by the server's frame division unit. The video is broken down into 24 or 30 still images (frames) per second. The divided frames are temporarily stored and sent to the analysis unit.
[1189] Input: Converted video data
[1190] Output: Still images divided into frames
[1191] Specific examples of operation:
[1192] The server divides the video data into 24 frames per second.
[1193] Each frame is sequentially saved to the database and sent to the analysis unit.
[1194] Step 3: Frame Analysis
[1195] The server's analysis unit analyzes each frame and detects its content. Specifically, it uses object detection algorithms (e.g., YOLO, SSD, Faster R-CNN) to identify people, objects, and text information within the frame. It also extracts scene descriptions and contextual information using deep learning models (e.g., DeepLab, ResNet).
[1196] Input: Still images divided into frames
[1197] Output: Analysis results for each frame (people, objects, text, descriptions, etc.)
[1198] Specific examples of operation:
[1199] The server detects people within the frame and assigns them name tags using facial recognition.
[1200] The server identifies objects within the frame (e.g., cars, buildings) and records them as metadata.
[1201] Step 4: Metadata Extraction
[1202] The server's metadata extraction unit extracts metadata from the analysis results. Based on each frame, it integrates important information (people, objects, text, scene description) in chronological order to construct a storyline.
[1203] Input: Analysis results for each frame
[1204] Output: Metadata per frame
[1205] Specific examples of operation:
[1206] The server extracts the conversation content of characters appearing in a specific scene as text information.
[1207] The server records the location information of objects (e.g., where a car is parked).
[1208] Step 5: Summary generation using generative AI
[1209] The server's generation unit generates a summary based on metadata using generative AI (e.g., GPT-3, BERT). The generative AI utilizes natural language processing to create a summary that is easy for the user to understand.
[1210] Input: Metadata per frame
[1211] Output: Summary in natural language
[1212] Specific examples of operation:
[1213] The server instructs the generative AI to "summarize the characters and main events in this scene."
[1214] The generative AI generates a summary that reads, "This is a scene where the protagonist steals a car and is being chased by the police."
[1215] Step 6: User emotion recognition by the emotion engine
[1216] The server's emotion engine analyzes the user's facial expressions, tone of voice, and input to identify their emotions. This information is then fed back into the summary generation process, resulting in a personalized summary tailored to the user's emotional state.
[1217] Input: User's facial expression, tone of voice, input content
[1218] Output: User's emotional state
[1219] Specific examples of operation:
[1220] The server analyzes the user's facial expressions via the webcam and determines their emotional state to be "joyful."
[1221] Based on the user's emotion, which the server has analyzed as "surprised," specific details are added to the summary.
[1222] Step 7: Providing a summary and feedback
[1223] The generated summary is provided to the user through a server-side unit. The user reviews the summary on the interface and, if necessary, downloads the summary data or performs further analysis. Based on feedback from the sentiment engine, feedback messages and additional information tailored to the user's emotions are also provided.
[1224] Input: Summary text and user's emotional state
[1225] Output: Personalized summary and feedback provided to the user.
[1226] Specific examples of operation:
[1227] The server generates a movie summary, which is then displayed on the user's screen.
[1228] The server displays positive feedback messages that correspond to the user's feelings of joy.
[1229] (Application Example 2)
[1230] Next, we will explain application example 2. In the following explanation, 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."
[1231] While conventional video summarization systems could efficiently summarize video content, they lacked the ability to provide feedback and summaries that responded to the user's emotions, resulting in a lack of information that resonated with viewers' feelings. Furthermore, accurately identifying the parts of the video that users were interested in or the important scenes, and generating appropriate summaries, proved difficult.
[1232] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[1233] In this invention, the server includes means for receiving video data from a user, means for dividing the received video data into frames, means for analyzing the video content of each frame, means for extracting metadata from the analysis results, means for generating a summary based on the metadata using a generative AI, means for recognizing the user's emotions and providing feedback for summary generation, means for providing the generated summary to the user, and means for providing feedback that corresponds to the user's emotions. This makes it possible to provide an appropriate summary that is sensitive to the user's emotions and effective feedback.
[1234] A "user" is an individual or group that uses the system to input video data and receives summaries and feedback.
[1235] "Video data" refers to digital video files containing viewing content such as movies and TV series.
[1236] A "frame" is an individual still image that makes up video data.
[1237] "Metadata" refers to information about the content of a video (for example, information about people, objects, and text) that is extracted from the analysis of video data.
[1238] "Generative AI" refers to artificial intelligence that performs natural language processing based on extracted metadata to generate a summary of video content.
[1239] "Emotion recognition" is the process of analyzing a user's facial expressions and tone of voice to identify their emotional state.
[1240] "Feedback" refers to information provided during the summary generation process that takes into account the user's emotional state.
[1241] "Analysis" is the process of dividing video data into frames and detecting and understanding their contents (people, objects, text information, etc.).
[1242] A "summary" is a text that concisely summarizes the important parts or main storyline of video content.
[1243] This invention relates to a system that analyzes video content, generates summaries, and provides feedback tailored to the user's emotions. This system consists of the following main components:
[1244] System Configuration
[1245] 1. Receiving Unit
[1246] Users upload video data via a smartphone app. This upload is performed via an HTTP request to the server.
[1247] 2. Frame splitting unit
[1248] The server uses the OpenCV library to divide the received video data into frames. This converts the video data into individual still images (frames).
[1249] 3. Analysis Unit
[1250] The server analyzes each frame and detects its content. This analysis uses deep learning models such as TensorFlow to detect people, objects, text information, and more.
[1251] 4. Metadata Extraction Unit
[1252] The server extracts metadata from the analysis results. This metadata includes important information within each frame (people, objects, text information).
[1253] 5. Generation Unit
[1254] The server uses a generative AI model (e.g., GPT-2) to generate a video summary based on the extracted metadata. The generated summary is then refined using natural language processing.
[1255] 6. Emotion Recognition Unit
[1256] The server uses an emotion engine (e.g., DeepFace) to analyze the user's facial expressions and tone of voice to recognize their emotions. This analysis is then fed back into the summary generation process.
[1257] 7. Provided Units
[1258] The server provides the user with a generated summary and sentiment-based feedback. Through a smartphone app, the user can review the summary and receive feedback as needed.
[1259] Specific example
[1260] For example, if a user uploads a movie video file, the following process takes place:
[1261] 1. Users upload movie video data through the app.
[1262] 2. The server receives the video data, checks the format, and then divides it into frames.
[1263] 3. The server analyzes each frame and detects information such as characters, objects, and backgrounds.
[1264] 4. The server extracts and compiles this information as metadata.
[1265] 5. The server uses generative AI to generate a movie summary from the extracted metadata.
[1266] 6. The server uses an emotion engine to analyze the user's facial expressions and tone of voice to recognize the user's emotions.
[1267] 7. The server provides the generated summary to the user and offers sentiment-sensitive feedback as needed.
[1268] Example of a prompt
[1269] Please create a video summary based on the following objects and scene description:
[1270] Objects: Cars, buildings, people
[1271] Scene description: This scene depicts a car moving violently.
[1272] Objects: Sea, boat, sunset
[1273] Scene description: A scene showing a beautiful sunset.
[1274] This allows users to efficiently analyze video data and gain new insights, as well as receive emotionally resonant feedback.
[1275] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[1276] Step 1:
[1277] Users upload video data via a smartphone app.
[1278] Input: A video file selected by the user (e.g., an MP4 file of a movie).
[1279] Data processing: Send video files to the server via HTTP request.
[1280] Output: The video data is stored in the server's receiving unit.
[1281] Step 2:
[1282] The server divides the received video data into frames.
[1283] Input: Video file.
[1284] Data processing: The video is split frame by frame using the OpenCV library.
[1285] Output: A list of frames (each frame is stored as a still image).
[1286] Step 3:
[1287] The server analyzes the contents of each frame.
[1288] Input: List of frames.
[1289] Data processing: Use deep learning models such as TensorFlow to detect people, objects, and text information.
[1290] Output: Analysis results for each frame (stored in the database).
[1291] Step 4:
[1292] The server extracts metadata from the analysis results.
[1293] Input: Analysis results for each frame.
[1294] Data processing: Analyze the results and extract important information (people, objects, text information).
[1295] Output: Metadata list (contains information on people, objects, scene descriptions, etc.).
[1296] Step 5:
[1297] The server uses generative AI to generate a summary from the metadata.
[1298] Input: Extracted metadata.
[1299] Data processing: Generative AI (e.g., GPT-2) is used to generate summaries based on metadata.
[1300] Output: Summary text.
[1301] Step 6:
[1302] The server uses an emotion engine to recognize the user's emotions.
[1303] Input: User's facial expression images and audio data.
[1304] Data processing: Analyze user emotions using libraries such as DeepFace.
[1305] Output: User's emotional state (a specific emotional label is stored).
[1306] Step 7:
[1307] The server provides the user with a generated summary and sentiment-based feedback.
[1308] Input: Summary text, user's emotional state.
[1309] Data processing: Display summaries in an ART-specific format and generate feedback messages.
[1310] Output: A summary and feedback message displayed to the user via a smartphone app.
[1311] This allows the system to generate summaries of video data and provide effective feedback tailored to the user's emotions.
[1312] The specific processing unit 290 transmits the result of the specific processing to the headset terminal 314. In the headset terminal 314, the control unit 46A causes the speaker 240 and display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[1313] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1314] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and specific processing may also be performed by the headset terminal 314.
[1315] [Fourth Embodiment]
[1316] Figure 7 shows an example of the configuration of the data processing system 410 according to the fourth embodiment.
[1317] As shown in Figure 7, the 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.
[1318] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1319] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a controlled object 443. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and controlled object 443 are also connected to the bus 52.
[1320] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[1321] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[1322] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[1323] The controlled object 443 includes a display device, LEDs in the eyes, and motors that drive 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 robot 414's emotions can be expressed by controlling these motors. Furthermore, the robot 414's facial expressions can also be expressed by controlling the illumination state of the LEDs in its eyes.
[1324] Figure 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Figure 8, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[1325] The specific processing program 56 is an example of a "program" relating to the technology of this 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.
[1326] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1327] In robot 414, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. 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 processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[1328] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1329] This invention relates to a system for analyzing video content, extracting information, and generating a summary using generative AI. The system includes a series of processes: receiving video data from a user, dividing it into frames, performing analysis, extracting metadata, and providing the generated summary to the user.
[1330] System Overview
[1331] This system consists of the following main components:
[1332] 1. Receiving unit - Receives video data from the user.
[1333] 2. Frame splitting unit - Divides the received video data into frames.
[1334] 3. Analysis Unit - Analyzes each frame and detects the video content.
[1335] 4. Metadata Extraction Unit - Extracts metadata from the analysis results.
[1336] 5. Generation Unit - Generates summaries using generative AI.
[1337] 6. Delivery Unit - Provides the generated summary to the user.
[1338] Program processing
[1339] 1. Receiving video data
[1340] The user accesses the system and uploads video data. The server receives the video data through the receiving unit and checks if it is in the correct format. If it is in a different format, it performs a format conversion.
[1341] 2. Frame division of video data
[1342] The server uses a frame division unit to divide the video data into frames. This process converts the video data into individual still images.
[1343] 3. Frame Analysis
[1344] The server analyzes each frame and detects its content. The analysis unit runs object detection algorithms to identify people, objects, and text information within the frame. It also uses deep learning models to extract scene descriptions and contextual information.
[1345] 4. Metadata Extraction
[1346] The server extracts metadata from the analysis results. The metadata extraction unit collects important information (people, objects, text, scene description) based on each frame. This information is integrated chronologically to construct the storyline.
[1347] 5. Summary generation using generative AI
[1348] The server uses generative AI to generate a summary based on the extracted metadata. The generation unit uses AI to perform natural language processing and create a summary in a format that is easy for the user to understand.
[1349] 6. Providing a summary
[1350] The server provides the generated summary to the user. Through the delivery unit, the summary is displayed to the user and can be downloaded for further analysis.
[1351] Specific example
[1352] As a concrete example, consider the case where a user uploads a movie video file.
[1353] 1. The user uploads the video data of the movie.
[1354] 2. The server receives the data, checks the format, and then divides it into frames.
[1355] 3. The server analyzes each frame and detects information such as characters, objects, and backgrounds.
[1356] 4. The server extracts and compiles this information as metadata.
[1357] 5. The server uses generative AI to generate a movie summary from the extracted metadata.
[1358] 6. The server provides the generated summary to the user, who can then review and download the summary.
[1359] This system is designed to streamline the management and analysis of video content, allowing users to quickly and accurately obtain the information they need.
[1360] The following describes the processing flow.
[1361] Step 1:
[1362] The user accesses the system interface and uploads the video data they want to analyze. Once the upload is complete, the device sends the video data to the server.
[1363] Step 2:
[1364] The server uses a receiving unit to receive video data sent from the user. Upon receipt, it verifies the format of the video data and performs format conversion (e.g., MP4 to AVI) if necessary.
[1365] Step 3:
[1366] The server uses a frame division unit to divide the received and converted video data into frames. This results in the video being a collection of individual still images (frames).
[1367] Step 4:
[1368] The server uses an analysis unit to begin analyzing each frame. Specifically, it runs an object detection algorithm to identify people, objects, and text information within the frame. Furthermore, it uses a deep learning model to extract scene descriptions and contextual information.
[1369] Step 5:
[1370] The server extracts metadata from the analysis results. The metadata extraction unit collects important information (people, objects, text, scene description) based on each frame. This information is integrated chronologically to construct the storyline.
[1371] Step 6:
[1372] The server uses a generation unit to generate a summary based on metadata using a generative AI. The generative AI then performs natural language processing on the extracted metadata to create a summary that is easy for the user to understand.
[1373] Step 7:
[1374] The server provides the generated summary to the user through the service unit. The user can view the summary through the system interface and, if necessary, download the summary data or perform further detailed analysis.
[1375] (Example 1)
[1376] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1377] Conventional video content analysis systems suffered from low analysis accuracy and the time-consuming process of generating summaries for complex content. Furthermore, they were incompatible with video data in different formats, requiring users to manually convert formats, which was a significant inconvenience. Additionally, the generated summaries lacked sufficient accuracy and information, making it difficult for users to quickly and accurately obtain the information they needed.
[1378] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[1379] In this invention, the server includes means for receiving video data from a user, means for checking whether the received video data is in a specified format and converting the format if it is in a different format, means for dividing the received video data into frames, means for an analysis unit to analyze the frames using an object detection algorithm and a deep learning model and extract scene description and context information, means for generating a summary based on metadata using a generative AI, and means for providing the generated summary to the user. This improves the accuracy of video analysis, supports video data in different formats, and enables the rapid and accurate generation and provision of summaries.
[1380] A "server" is a key component of a computer system that receives, processes, analyzes, and generates and provides summaries of video data.
[1381] "Video data" refers to digital information in video format uploaded by users, which is subject to analysis and summary generation.
[1382] "Format" refers to the recording format of video data, and includes different file formats such as AVI, MP4, and MKV.
[1383] "Format conversion" refers to the process of converting video data to a standard format when it differs from the specified format.
[1384] A "frame" refers to an individual still image that makes up video data, with multiple images existing per second.
[1385] A "frame splitting unit" is a hardware or software component used to divide received video data into frames.
[1386] An "analysis unit" is a hardware or software component that analyzes the content of video frame by frame and detects people, objects, and text information within each frame.
[1387] An "object detection algorithm" is a computer vision technique used to identify people and objects within a frame.
[1388] A "deep learning model" is an artificial intelligence algorithm trained using a large amount of data, and is used to extract contextual information and scene descriptions from video content.
[1389] "Metadata" refers to information extracted by the analysis unit, including information about people, objects, text, and scene descriptions.
[1390] "Generative AI" refers to artificial intelligence models that perform natural language processing and generate summaries based on extracted metadata.
[1391] A "summary" is text information created by a generative AI that concisely explains the main content of the video data.
[1392] A "delivery unit" is a hardware or software component that displays the generated summary to the user and enables downloading and further analysis.
[1393] This invention relates to a system for analyzing video content, extracting information, and generating a summary using generative AI. This system includes a series of processes: receiving video data from a user, dividing it into frames, performing analysis, extracting metadata, and providing the generated summary to the user. Specific embodiments are described below.
[1394] Hardware and software configuration
[1395] A server is a computer system for receiving, processing, analyzing, and generating and providing summaries of video data. The server includes the following main components:
[1396] 1. Receiving Unit - Receives video data from the user. This unit acquires data via a web interface or a dedicated application.
[1397] 2. Format Verification and Conversion Unit - This unit verifies whether the received video data is in the specified format and performs format conversion if it is in a different format. This conversion uses libraries such as FFmpeg.
[1398] 3. Frame Splitting Unit - This unit splits the received video data into frames. Specifically, it uses the OpenCV library to extract frames at a rate of 30 frames per second (fps).
[1399] 4. Analysis Unit - Analyzes the video content frame by frame. Here, object detection algorithms such as YOLO v4 are used to identify people, objects, and text information. In addition, deep learning models (ResNet, BERT, etc.) are used to extract scene descriptions and contextual information.
[1400] 5. Metadata Extraction Unit - Extracts metadata from the analysis results and collects information on people, objects, and text contained in each frame. This integrates the information chronologically and constructs a storyline.
[1401] 6. Generation Unit - Uses a generative AI (e.g., GPT-3) to generate a summary based on the extracted metadata. Natural language processing is performed to create a summary that is easy for users to understand.
[1402] 7. Delivery Unit - Provides the generated summary to the user. The summary is displayed via a web interface or dedicated application, and downloads and further analysis are possible.
[1403] Specific example
[1404] As a concrete example, consider the case where a user uploads a movie video file.
[1405] 1. The user uploads the video data of the movie.
[1406] 2. The server uses a receiving unit to receive the data, checks the format, and then divides it into frames.
[1407] 3. The server analyzes each frame and detects information such as characters, objects, and backgrounds.
[1408] 4. The server extracts and compiles this information as metadata.
[1409] 5. The server uses generative AI to generate a movie summary from the extracted metadata. Examples of specific prompts include, "Summarize the content of this video in three lines or less," and "List the characters in this video and their roles."
[1410] 6. The server provides the generated summary to the user, who can then review and download the summary.
[1411] This system is designed to streamline the management and analysis of video content, allowing users to quickly and accurately obtain the information they need.
[1412] The flow of the specific processing in Example 1 will be explained using Figure 11.
[1413] Step 1: Receiving video data
[1414] Users access the server via a web interface or a dedicated application and upload video data. The server uses a receiving unit to receive the data and verify that the upload was completed successfully. The input is the video data uploaded by the user, and the output is the video data received by the server.
[1415] Step 2: Format check and conversion
[1416] The server verifies that the received video data is in the specified format. For example, if formats such as AVI, MP4, and MKV are allowed, it checks if the data matches. If the format is different, the server automatically converts the format using a library such as FFmpeg. The input is the received video data, and the output is the video data converted to the specified format.
[1417] Step 3: Frame splitting
[1418] The server divides the video data into frames using a frame splitting unit. Specifically, it extracts frames at a rate of 30 frames per second (fps) using the OpenCV library. The input is format-verified and converted video data, and the output is individual frame images.
[1419] Step 4: Frame Analysis
[1420] The server uses an analysis unit to analyze each frame. Here, object detection algorithms such as YOLO v4 are used to identify people, objects, and text information. Deep learning models (ResNet, BERT, etc.) are also used to extract scene descriptions and contextual information. The input is the segmented frames, and the output is data such as people, objects, text information, and scene descriptions obtained through the analysis.
[1421] Step 5: Metadata Extraction
[1422] The server extracts metadata based on the analysis results. The metadata extraction unit integrates information such as people, objects, text, and scene descriptions collected from each frame in chronological order. Specifically, the server uses Python and an SQL database to store and organize the data. The input is the analysis results of the frames, and the output is the integrated metadata.
[1423] Step 6: Summary generation using generative AI
[1424] The server generates a summary using generative AI based on the extracted metadata. Specifically, it uses large-scale language models such as GPT-3 to perform natural language processing and create the summary. For example, the following prompt sentence is input to the generative AI model: "Please summarize the content of this video in three lines or less." The input is integrated metadata, and the output is the generated summary text.
[1425] Step 7: Provide a summary
[1426] The server provides the generated summary to the user. The generated summary is displayed through a web interface or a dedicated application, allowing the user to review the provided summary and download it if necessary. The input is the generated summary text, and the output is the summary information provided to the user.
[1427] This series of steps creates a system that efficiently manages and analyzes video content, allowing users to quickly and accurately obtain the information they need.
[1428] (Application Example 1)
[1429] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1430] Video content contains a large amount of data, and watching the entire content requires a significant amount of time. However, there is a lack of efficient means for users to quickly grasp important information and key scenes. Therefore, there is a need to automatically generate and provide summaries of video content to users, thereby reducing viewing time and enabling efficient information acquisition.
[1431] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[1432] In this invention, the server includes means for receiving video data from a user, means for dividing the received video data into frames, means for analyzing the video content frame by frame, means for extracting metadata from the analysis results, means for generating a summary based on the metadata using a generative AI, means for providing the generated summary to the user, and means for the user to upload video data and view / download the generated summary. This enables the user to quickly and efficiently grasp important information and key scenes of the video content.
[1433] "Video content" refers to video data that allows viewers to obtain information and entertainment through sight and sound.
[1434] A "user" is defined as an entity that utilizes a system or application, uploading video data and receiving services related to it.
[1435] "Video data" refers to digital or analog data files that make up video information.
[1436] A "frame" refers to one of the consecutive still images that make up a video.
[1437] "Frame splitting" refers to the process of dividing video data into a series of still images (frames) that make up the video.
[1438] "Analyzing video content frame by frame" refers to the process of detecting the visual and textual information contained in each frame and interpreting its content.
[1439] "Metadata" refers to data about data, specifically supplementary data that describes information about people, objects, text, and other elements within video data.
[1440] "Generative AI" refers to artificial intelligence that uses natural language processing technology to generate new text or summaries from input data.
[1441] A "summary" refers to a document that expresses the key points of the original video content in a short format.
[1442] "Provision" refers to the process by which the system displays and makes available information, such as generated summaries, to the user.
[1443] "Uploading" refers to the process by which a user sends their data to an online system such as a server.
[1444] "Downloading" refers to the process by which a user saves data from an online system to their own device.
[1445] "Refining a summary" refers to the process of using natural language processing techniques to adjust and supplement the generated summary content in order to make it more detailed and accurate.
[1446] "Highlighting important scenes and character information" refers to the process of clearly indicating particularly noteworthy scenes and characters within the generated summary, making it easier for users to understand.
[1447] This invention relates to a system for analyzing video content, extracting information, and generating a summary using generative AI. The system includes a series of processes: receiving video data from a user, dividing it into frames, performing analysis, extracting metadata, and providing the generated summary to the user.
[1448] System Overview
[1449] This system consists of the following main components:
[1450] 1. Receiving Unit
[1451] 2. Frame splitting unit
[1452] 3. Analysis Unit
[1453] 4. Metadata Extraction Unit
[1454] 5. Generation Unit
[1455] 6. Provided Units
[1456] 7. User Interface Unit
[1457] Hardware and software to be used
[1458] Hardware: Servers and user terminals (PCs, smartphones, tablets)
[1459] software:
[1460] FFmpeg (format conversion)
[1461] OpenCV (frame splitting)
[1462] YOLO (Object Detection)
[1463] TensorFlow (deep learning model)
[1464] pandas (data processing)
[1465] OpenAI GPT-4 (generative AI)
[1466] Django (server-side framework)
[1467] Receiving video data
[1468] The server receives video data from the user's terminal. The user uploads video data to the system using their terminal, and the server uses FFmpeg to check the data format and convert it if necessary.
[1469] Frame division of video data
[1470] The server uses OpenCV to divide the received video data into frames. This converts the video data into individual still images, making it easier for the analysis unit to process.
[1471] Frame analysis
[1472] The server implements the YOLO model to analyze each frame. This allows for the detection of information about people, objects, and background within each frame. Furthermore, a deep learning model using TensorFlow is employed to extract scene descriptions and contextual information.
[1473] Metadata Extraction
[1474] The server extracts metadata based on the analysis results. Using the pandas library, it collects important information such as people, objects, text information, and scene descriptions, and integrates them chronologically. This metadata forms the basis for the final summary generation.
[1475] Summary generation using generative AI
[1476] The server uses OpenAI GPT-4 to generate summaries based on extracted metadata. In the generation unit, a generative AI model performs natural language processing to create summaries in a format that is easy for users to understand.
[1477] Summary
[1478] The server provides the user with a summary generated using Django. Through the user interface unit, the summary is displayed visually, and the user can review and download it.
[1479] Specific example
[1480] If a user uploads a drama episode:
[1481] 1. The user uploads video data of the drama.
[1482] 2. The server receives the data, checks the format, and then divides it into frames.
[1483] 3. The server analyzes each frame and detects information such as characters, objects, and backgrounds.
[1484] 4. The server extracts and compiles this information as metadata.
[1485] 5. The server uses generative AI to generate a summary of the drama from the extracted metadata.
[1486] 6. The server provides the generated summary to the user, who can then review and download the summary.
[1487] Example of a prompt
[1488] "Please summarize the content of the next episode in chronological order, highlighting important scenes, characters, and key events."
[1489] This system is designed to streamline the management and analysis of video content, allowing users to quickly and accurately obtain the information they need.
[1490] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[1491] Step 1: Receiving video data
[1492] The server receives video data transmitted from the user terminal. During this process, the server uses a receiving unit to verify the data format and, if necessary, converts it to the appropriate format using FFmpeg. The input is video data from the user terminal, and the output is video data that has been appropriately converted and is ready for processing.
[1493] Step 2: Frame splitting of video data
[1494] The server uses OpenCV to divide the received video data into frames. In this process, the video data is converted into a series of still images. The input is formatted video data, and the output is a series of still images divided into frames.
[1495] Step 3: Frame Analysis
[1496] The server uses a YOLO model to analyze each frame. This analysis detects people, objects, and background information within the frame. Furthermore, a deep learning model using TensorFlow is used to extract scene descriptions and contextual information for each frame. The input is a still image divided into frames, and the output is data such as detected people, objects, and scene descriptions for each frame.
[1497] Step 4: Metadata Extraction
[1498] The server uses the pandas library to extract metadata from the analysis results. This collects important information detected in each frame (people, objects, text, scene description) and integrates it chronologically. The input is the various data obtained from the frame analysis, and the output is the integrated metadata.
[1499] Step 5: Summary generation using generative AI
[1500] The server uses OpenAI GPT-4 to generate a summary based on the extracted metadata. The generation unit uses a generative AI model to perform natural language processing and create a summary in a format that is easy for the user to understand. The prompt used is "Summarize the content of the following episode in chronological order. Highlight important scenes, characters, and key events." The input is the extracted metadata, and the output is the generated summary.
[1501] Step 6: Provide a summary
[1502] The server provides the user with a summary generated using Django. Through a user interface unit, the summary is displayed visually, and the user can review and download it. The input is the generated summary text, and the output is the summary information displayed on the user interface.
[1503] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[1504] This invention relates to a system that analyzes video content, extracts information, generates summaries using generative AI, and further combines it with an emotion engine that recognizes the user's emotions. This system receives video data from the user, divides it into frames, performs analysis, extracts metadata, provides the generated summary to the user, and recognizes the user's emotions to provide feedback.
[1505] System Overview
[1506] This system consists of the following main components:
[1507] 1. Receiving unit - Receives video data from the user.
[1508] 2. Frame splitting unit - Divides the received video data into frames.
[1509] 3. Analysis Unit - Analyzes each frame and detects the video content.
[1510] 4. Metadata Extraction Unit - Extracts metadata from the analysis results.
[1511] 5. Generation Unit - Generates summaries using generative AI.
[1512] 6. Emotion Engine - Recognizes the user's emotions and provides feedback for summary generation.
[1513] 7. Delivery Unit - Provides the generated summary to the user.
[1514] Program processing
[1515] 1. Receiving video data
[1516] The user accesses the system interface and uploads video data. The server receives the video data through the receiving unit and checks its format. Format conversion is performed as needed.
[1517] 2. Frame division of video data
[1518] The server uses a frame division unit to divide the received and converted video data into frames. The video becomes a collection of individual still images (frames).
[1519] 3. Frame Analysis
[1520] The server analyzes each frame and detects its content. The analysis unit executes object detection algorithms to identify people, objects, and text information within the frame. Furthermore, it uses deep learning models to extract scene descriptions and contextual information.
[1521] 4. Metadata Extraction
[1522] The server extracts metadata from the analysis results. The metadata extraction unit collects important information (people, objects, text, scene description) based on each frame. This information is integrated chronologically to construct the storyline.
[1523] 5. Summary generation using generative AI
[1524] The server uses a generation unit to generate a summary based on metadata using a generative AI. The generative AI then performs natural language processing on the extracted metadata to create a summary that is easy for the user to understand.
[1525] 6. User emotion recognition by an emotion engine
[1526] The server uses an emotion engine to analyze the user's facial expressions, tone of voice, and input content to identify the user's emotions. This information is fed back into the summarization process, which generates a summary tailored to the user's emotional state.
[1527] 7. Providing a summary and feedback
[1528] The server provides the generated summary to the user through a delivery unit. The user reviews the summary on the interface and, if necessary, downloads the summary data or performs further analysis. Based on feedback from the sentiment engine, if the user has a specific emotion, appropriate feedback messages and additional information are provided for that emotion.
[1529] Specific example
[1530] As a concrete example, consider the case where a user uploads a movie video file.
[1531] 1. The user uploads the video data of the movie.
[1532] 2. The server receives the video data, checks the format, and then divides it into frames.
[1533] 3. The server analyzes each frame and detects information such as characters, objects, and backgrounds.
[1534] 4. The server extracts and compiles this information as metadata.
[1535] 5. The server uses generative AI to generate a movie summary from the extracted metadata.
[1536] 6. The server uses an emotion engine to analyze the user's facial expressions, tone of voice, etc., and recognize the user's emotions.
[1537] 7. The server provides the generated summary to the user and offers sentiment-sensitive feedback as needed.
[1538] This system allows users to efficiently analyze video data and gain new insights, as well as receive emotionally resonant feedback.
[1539] The following describes the processing flow.
[1540] Step 1:
[1541] The user accesses the system interface and uploads video data. Once the upload is complete, the device sends the video data to the server.
[1542] Step 2:
[1543] The server uses a receiving unit to receive video data sent from the user. Upon receipt, it verifies the format of the video data and performs format conversion (e.g., MP4 to AVI) if necessary.
[1544] Step 3:
[1545] The server uses a frame division unit to divide the received and converted video data into frames. This results in the video being a collection of individual still images (frames).
[1546] Step 4:
[1547] The server uses an analysis unit to begin analyzing each frame. Specifically, it runs an object detection algorithm to identify people, objects, and text information within the frame. Furthermore, it uses a deep learning model to extract scene descriptions and contextual information.
[1548] Step 5:
[1549] The server extracts metadata from the analysis results. The metadata extraction unit collects important information (people, objects, text, scene description) based on each frame. This information is integrated chronologically to construct the storyline.
[1550] Step 6:
[1551] The server uses a generation unit to generate a summary based on metadata using a generative AI. The generative AI then performs natural language processing on the extracted metadata to create a summary that is easy for the user to understand.
[1552] Step 7:
[1553] The server uses an emotion engine to recognize the user's emotions. Specifically, it analyzes the user's facial expressions, tone of voice, input content, etc., to identify the user's emotional state.
[1554] Step 8:
[1555] The server provides the generated summary to the user through a service unit. The user can view the summary on the interface and download the summary data if necessary.
[1556] Step 9:
[1557] Based on feedback from the emotion engine, the server provides feedback messages and additional information tailored to the user's emotional state. This enables responses that are in line with the user's emotions.
[1558] (Example 2)
[1559] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1560] Conventional video analysis and summarization systems can analyze video content and generate summaries, but they lack the functionality to consider user emotions, making it difficult to optimize the user experience. Furthermore, improving the accuracy of analysis and summarization requires technology that incorporates feedback on the user's emotional state.
[1561] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[1562] In this invention, the server includes means for receiving video data from a user, means for dividing the received video data into frames, means for analyzing the video content of each frame, means for extracting metadata from the analysis results, means for generating a summary based on the metadata using a generative AI, means for providing the generated summary to the user, and means for recognizing the user's emotions and providing feedback for summary generation. This makes it possible to provide a personalized summary that corresponds to the user's emotional state.
[1563] "Video data" refers to information that is stored or transmitted in digital format as one or more image frames, representing visual content.
[1564] A "frame" refers to an individual still image that makes up video data.
[1565] "Analysis" refers to the process of processing data using algorithms and models to detect and understand information within a frame.
[1566] "Metadata" refers to additional information about video data extracted from the analysis results (e.g., people, objects, text, scene descriptions).
[1567] "Generative AI" refers to artificial intelligence systems that generate natural language summaries from collected data.
[1568] An "emotion engine" refers to technology that analyzes a user's facial expressions, tone of voice, input content, etc., to identify the user's emotional state.
[1569] A "user" refers to a person who uses the system to upload video data or to obtain generated summaries and feedback.
[1570] A "server" refers to a computer system that provides central data processing and storage functions within a system.
[1571] This invention relates to a system that analyzes video content, extracts information, generates summaries using generative AI, and further combines it with an emotion engine that recognizes user emotions. Each specific processing step is described in detail below.
[1572] System Configuration
[1573] This system mainly consists of the following components:
[1574] 1. Receiving unit - Receives video data from the user.
[1575] 2. Frame splitting unit - Divides the received video data into frames.
[1576] 3. Analysis Unit - Analyzes each frame and detects the video content.
[1577] 4. Metadata Extraction Unit - Extracts metadata from the analysis results.
[1578] 5. Generation Unit - Generates summaries using generative AI.
[1579] 6. Emotion Engine - Recognizes the user's emotions and provides feedback for summary generation.
[1580] 7. Delivery Unit - Provides the generated summary to the user.
[1581] Specific examples of hardware and software
[1582] The entire system runs on high-performance servers, and each unit operates based on specific algorithms and models. Specifically, it uses the following:
[1583] Object detection algorithms (e.g., YOLO, SSD, Faster R-CNN)
[1584] Deep learning models (e.g., DeepLab, ResNet)
[1585] Generative AI (e.g. GPT-3, BERT)
[1586] Emotion recognition engines (e.g., OpenFace, EmoVoice)
[1587] System operation example
[1588] As a concrete example, consider the case where a user uploads a movie video file.
[1589] 1. The user uploads movie video data via a web interface. The terminal receives input from the user and sends that data to the server.
[1590] 2. The server uses the receiving unit to receive the video data and check the format (e.g., MP4, AVI, MKV, etc.). If necessary, it converts unsupported formats to supported formats.
[1591] 3. The server uses a frame division unit to divide the video data into frames. For example, it divides one second of video into 24 frames.
[1592] 4. The server's analysis unit analyzes the frames and detects their content. Specifically, it extracts people, objects, and text information within the frames using object detection algorithms such as YOLO and SSD. It also uses deep learning models such as DeepLab and ResNet to analyze scene descriptions and contextual information.
[1593] 5. The server's metadata extraction unit extracts metadata from the analysis results. Important information collected for each frame (people, objects, text, scene description) is integrated chronologically to construct the storyline.
[1594] 6. The server's generation unit uses a generative AI model (e.g., GPT-3, BERT) to generate a summary based on the extracted metadata. The generative AI creates the summary in natural language that is easy for the user to understand.
[1595] 7. The server's emotion engine analyzes the user's facial expressions and tone of voice to recognize the user's emotions. This information is fed back into the summarization process, and a personalized summary is generated that is tailored to the user's emotional state.
[1596] 8. The server's service unit provides the user with the generated summary. The user reviews the summary on the interface and, if necessary, downloads the summary data or performs further analysis. Based on the sentiment engine's feedback, if the user has a specific emotion, appropriate feedback messages and additional information are provided for that emotion.
[1597] Example of a prompt
[1598] Using prompts allows generative AI models to create accurate summaries. The following are examples of prompts to input:
[1599] 1. Prompt message:
[1600] Please generate a summary of the following video data:
[1601] Video data: {Details about video data}
[1602] Metadata: {Summary of extracted metadata}
[1603] 2. Detailed prompt text:
[1604] Please write a summary of the following movie scene. Identify the characters and key events, and include background information for the scene:
[1605] Movie Title: {Movie Title}
[1606] Scene details: {More details about the scene}
[1607] Metadata: {Characters, Key Events, Background Information}
[1608] This invention allows users to efficiently analyze video data and gain new insights, as well as receive emotionally resonant feedback.
[1609] The flow of the specific processing in Example 2 will be explained using Figure 13.
[1610] Step 1: Receiving video data
[1611] Users upload video data using the system's web interface or a dedicated application. The terminal receives input from the user and sends the data to the server. The server uses a receiving unit to receive the uploaded video data and check the format (e.g., MP4, AVI, MKV, etc.). If data in an unsupported format is received, the server automatically converts it to a supported format.
[1612] Input: Video data uploaded by the user
[1613] Output: Converted video data (format converted if necessary)
[1614] Specific examples of operation:
[1615] The user clicks the "Upload" button on the web interface and selects the video file.
[1616] The terminal sends the selected file to the server.
[1617] The server receives video data in MP4 format and converts it to AVI format as needed.
[1618] Step 2: Frame splitting of video data
[1619] The received and converted video data is divided into frames by the server's frame division unit. The video is broken down into 24 or 30 still images (frames) per second. The divided frames are temporarily stored and sent to the analysis unit.
[1620] Input: Converted video data
[1621] Output: Still images divided into frames
[1622] Specific examples of operation:
[1623] The server divides the video data into 24 frames per second.
[1624] Each frame is sequentially saved to the database and sent to the analysis unit.
[1625] Step 3: Frame Analysis
[1626] The server's analysis unit analyzes each frame and detects its content. Specifically, it uses object detection algorithms (e.g., YOLO, SSD, Faster R-CNN) to identify people, objects, and text information within the frame. It also extracts scene descriptions and contextual information using deep learning models (e.g., DeepLab, ResNet).
[1627] Input: Still images divided into frames
[1628] Output: Analysis results for each frame (people, objects, text, descriptions, etc.)
[1629] Specific examples of operation:
[1630] The server detects people within the frame and assigns them name tags using facial recognition.
[1631] The server identifies objects within the frame (e.g., cars, buildings) and records them as metadata.
[1632] Step 4: Metadata Extraction
[1633] The server's metadata extraction unit extracts metadata from the analysis results. Based on each frame, it integrates important information (people, objects, text, scene description) in chronological order to construct a storyline.
[1634] Input: Analysis results for each frame
[1635] Output: Metadata per frame
[1636] Specific examples of operation:
[1637] The server extracts the conversation content of characters appearing in a specific scene as text information.
[1638] The server records the location information of objects (e.g., where a car is parked).
[1639] Step 5: Summary generation using generative AI
[1640] The server's generation unit generates a summary based on metadata using generative AI (e.g., GPT-3, BERT). The generative AI utilizes natural language processing to create a summary that is easy for the user to understand.
[1641] Input: Metadata per frame
[1642] Output: Summary in natural language
[1643] Specific examples of operation:
[1644] The server instructs the generative AI to "summarize the characters and main events in this scene."
[1645] The generative AI generates a summary that reads, "This is a scene where the protagonist steals a car and is being chased by the police."
[1646] Step 6: User emotion recognition by the emotion engine
[1647] The server's emotion engine analyzes the user's facial expressions, tone of voice, and input to identify their emotions. This information is then fed back into the summary generation process, resulting in a personalized summary tailored to the user's emotional state.
[1648] Input: User's facial expression, tone of voice, input content
[1649] Output: User's emotional state
[1650] Specific examples of operation:
[1651] The server analyzes the user's facial expressions via the webcam and determines their emotional state to be "joyful."
[1652] Based on the user's emotion, which the server has analyzed as "surprised," specific details are added to the summary.
[1653] Step 7: Providing a summary and feedback
[1654] The generated summary is provided to the user through a server-side unit. The user reviews the summary on the interface and, if necessary, downloads the summary data or performs further analysis. Based on feedback from the sentiment engine, feedback messages and additional information tailored to the user's emotions are also provided.
[1655] Input: Summary text and user's emotional state
[1656] Output: Personalized summary and feedback provided to the user.
[1657] Specific examples of operation:
[1658] The server generates a movie summary, which is then displayed on the user's screen.
[1659] The server displays positive feedback messages that correspond to the user's feelings of joy.
[1660] (Application Example 2)
[1661] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1662] While conventional video summarization systems could efficiently summarize video content, they lacked the ability to provide feedback and summaries that responded to the user's emotions, resulting in a lack of information that resonated with viewers' feelings. Furthermore, accurately identifying the parts of the video that users were interested in or the important scenes, and generating appropriate summaries, proved difficult.
[1663] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[1664] In this invention, the server includes means for receiving video data from a user, means for dividing the received video data into frames, means for analyzing the video content of each frame, means for extracting metadata from the analysis results, means for generating a summary based on the metadata using a generative AI, means for recognizing the user's emotions and providing feedback for summary generation, means for providing the generated summary to the user, and means for providing feedback that corresponds to the user's emotions. This makes it possible to provide an appropriate summary that is sensitive to the user's emotions and effective feedback.
[1665] A "user" is an individual or group that uses the system to input video data and receives summaries and feedback.
[1666] "Video data" refers to digital video files containing viewing content such as movies and TV series.
[1667] A "frame" is an individual still image that makes up video data.
[1668] "Metadata" refers to information about the content of a video (for example, information about people, objects, and text) that is extracted from the analysis of video data.
[1669] "Generative AI" refers to artificial intelligence that performs natural language processing based on extracted metadata to generate a summary of video content.
[1670] "Emotion recognition" is the process of analyzing a user's facial expressions and tone of voice to identify their emotional state.
[1671] "Feedback" refers to information provided during the summary generation process that takes into account the user's emotional state.
[1672] "Analysis" is the process of dividing video data into frames and detecting and understanding their contents (people, objects, text information, etc.).
[1673] A "summary" is a text that concisely summarizes the important parts or main storyline of video content.
[1674] This invention relates to a system that analyzes video content, generates summaries, and provides feedback tailored to the user's emotions. This system consists of the following main components:
[1675] System Configuration
[1676] 1. Receiving Unit
[1677] Users upload video data via a smartphone app. This upload is performed via an HTTP request to the server.
[1678] 2. Frame splitting unit
[1679] The server uses the OpenCV library to divide the received video data into frames. This converts the video data into individual still images (frames).
[1680] 3. Analysis Unit
[1681] The server analyzes each frame and detects its content. This analysis uses deep learning models such as TensorFlow to detect people, objects, text information, and more.
[1682] 4. Metadata Extraction Unit
[1683] The server extracts metadata from the analysis results. This metadata includes important information within each frame (people, objects, text information).
[1684] 5. Generation Unit
[1685] The server uses a generative AI model (e.g., GPT-2) to generate a video summary based on the extracted metadata. The generated summary is then refined using natural language processing.
[1686] 6. Emotion Recognition Unit
[1687] The server uses an emotion engine (e.g., DeepFace) to analyze the user's facial expressions and tone of voice to recognize their emotions. This analysis is then fed back into the summary generation process.
[1688] 7. Provided Units
[1689] The server provides the user with a generated summary and sentiment-based feedback. Through a smartphone app, the user can review the summary and receive feedback as needed.
[1690] Specific example
[1691] For example, if a user uploads a movie video file, the following process takes place:
[1692] 1. Users upload movie video data through the app.
[1693] 2. The server receives the video data, checks the format, and then divides it into frames.
[1694] 3. The server analyzes each frame and detects information such as characters, objects, and backgrounds.
[1695] 4. The server extracts and compiles this information as metadata.
[1696] 5. The server uses generative AI to generate a movie summary from the extracted metadata.
[1697] 6. The server uses an emotion engine to analyze the user's facial expressions and tone of voice to recognize the user's emotions.
[1698] 7. The server provides the generated summary to the user and offers sentiment-sensitive feedback as needed.
[1699] Example of a prompt
[1700] Please create a video summary based on the following objects and scene description:
[1701] Objects: Cars, buildings, people
[1702] Scene description: This scene depicts a car moving violently.
[1703] Objects: Sea, boat, sunset
[1704] Scene description: A scene showing a beautiful sunset.
[1705] This allows users to efficiently analyze video data and gain new insights, as well as receive emotionally resonant feedback.
[1706] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[1707] Step 1:
[1708] Users upload video data via a smartphone app.
[1709] Input: A video file selected by the user (e.g., an MP4 file of a movie).
[1710] Data processing: Send video files to the server via HTTP request.
[1711] Output: The video data is stored in the server's receiving unit.
[1712] Step 2:
[1713] The server divides the received video data into frames.
[1714] Input: Video file.
[1715] Data processing: The video is split frame by frame using the OpenCV library.
[1716] Output: A list of frames (each frame is stored as a still image).
[1717] Step 3:
[1718] The server analyzes the contents of each frame.
[1719] Input: List of frames.
[1720] Data processing: Use deep learning models such as TensorFlow to detect people, objects, and text information.
[1721] Output: Analysis results for each frame (stored in the database).
[1722] Step 4:
[1723] The server extracts metadata from the analysis results.
[1724] Input: Analysis results for each frame.
[1725] Data processing: Analyze the results and extract important information (people, objects, text information).
[1726] Output: Metadata list (contains information on people, objects, scene descriptions, etc.).
[1727] Step 5:
[1728] The server uses generative AI to generate a summary from the metadata.
[1729] Input: Extracted metadata.
[1730] Data processing: Generative AI (e.g., GPT-2) is used to generate summaries based on metadata.
[1731] Output: Summary text.
[1732] Step 6:
[1733] The server uses an emotion engine to recognize the user's emotions.
[1734] Input: User's facial expression images and audio data.
[1735] Data processing: Analyze user emotions using libraries such as DeepFace.
[1736] Output: User's emotional state (a specific emotional label is stored).
[1737] Step 7:
[1738] The server provides the user with a generated summary and sentiment-based feedback.
[1739] Input: Summary text, user's emotional state.
[1740] Data processing: Display summaries in an ART-specific format and generate feedback messages.
[1741] Output: A summary and feedback message displayed to the user via a smartphone app.
[1742] This allows the system to generate summaries of video data and provide effective feedback tailored to the user's emotions.
[1743] 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 controlled object 443 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[1744] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1745] 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 this disclosure is not limited thereto, and the specific processing may also be performed by the robot 414.
[1746] Furthermore, the emotion identification model 59, acting 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 a specific mapping, which is an emotion map (see Figure 9). Similarly, the emotion identification model 59 may also determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.
[1747] Figure 9 shows an emotion map 400 in which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. The closer to the center of the concentric circles, the more primitive the emotions are located. Further out of the concentric circles, emotions representing states and actions arising from mental states are located. Emotion is a concept that includes feelings and mental states. On the left side of the concentric circles, emotions that are generally generated from reactions occurring in the brain are located. On the right side of the concentric circles, emotions that are generally induced by situational judgment are located. Above and below the concentric circles, emotions that are generally generated from reactions occurring in the brain and induced by situational judgment are located. In addition, the emotion of "pleasure" is located on the upper side of the concentric circles, and the emotion of "displeasure" is located on the lower side. Thus, in the emotion map 400, multiple emotions are mapped based on the structure in which emotions arise, and emotions that are likely to occur simultaneously are mapped close together.
[1748] These emotions are distributed at the 3 o'clock position on the Emotion Map 400, and usually fluctuate between feelings of security and anxiety. In the right half of the Emotion Map 400, situational awareness takes precedence over internal feelings, resulting in a calm impression.
[1749] The inside of the Emotion Map 400 represents inner thoughts, while the outside represents actions. Therefore, the further you go from the outside of the Emotion Map 400, the more visible (expressed in actions) your emotions become.
[1750] Here, human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. Similarly, in robots, cars, motorcycles, etc., emotions can be created based on various balances, such as posture and battery level. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. The emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on a system for analyzing brain physiological signals of speech emotion recognition and emotion, Tokushima University, doctoral dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map contains emotions belonging to a region called "response," where sensation is dominant. The right half of the emotion map contains emotions belonging to a region called "situation," where situational awareness is dominant.
[1751] The emotion map defines two emotions that promote learning. One is the emotion around the middle of the negative "repentance" and "reflection" on the situation side. In other words, it is 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 the emotion around the positive "desire" on the reaction side. In other words, it is when the robot has positive feelings such as "I want more" or "I want to know more."
[1752] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values representing each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple training data sets, which are combinations of user input and emotion values representing each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions located close together have similar values, as shown in the emotion map 900 in Figure 10. Figure 10 shows an example where multiple emotions such as "reassured," "calm," and "confident" have similar emotion values.
[1753] The above description primarily focuses on the functions of the data processing device 12 in relation to this disclosure. However, the system related to this disclosure is not necessarily implemented on a server. The system related to this disclosure may be implemented as a general information processing system. This disclosure may be implemented, for example, as a software program that runs on a personal computer or as an application that runs on a smartphone. The method related to this disclosure may be provided to users in SaaS (Software as a Service) format.
[1754] In the above embodiment, an example was given in which a specific process is performed by a single computer 22. However, the technology of this disclosure is not limited thereto, and a distributed processing of the specific process may be performed by multiple computers, including computer 22. For example, a data generation model 58 may be provided in an external device of the data processing device 12, and the external device may generate data according to the input data.
[1755] In the above embodiment, an example was given in which the specific processing program 56 is stored in the storage 32, but the technology of this disclosure is not limited thereto. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-temporary storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-temporary storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes specific processing according to the specific processing program 56.
[1756] 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.
[1757] Furthermore, it is not necessary to store the entirety 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 the entirety of the specific processing program 56 in the storage 32; it is acceptable to store only a portion of the specific processing program 56.
[1758] The following types of processors can be used as hardware resources to perform specific processing. Examples of processors include a CPU, a general-purpose processor that functions as a hardware resource to perform specific processing by executing software, i.e., a program. Other examples of processors include dedicated electrical circuits, such as FPGAs (Field-Programmable Gate Arrays), PLDs (Programmable Logic Devices), or ASICs (Application Specific Integrated Circuits), which have circuit configurations specifically designed to perform specific processing. All of these processors have built-in or connected memory, and all of them perform specific processing by using memory.
[1759] The hardware resource that performs a specific process may consist of one of these various processors, or it may consist of 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). Alternatively, the hardware resource that performs a specific process may consist of a single processor.
[1760] Examples of configurations using a single processor include, firstly, a configuration in which one or more CPUs and software are combined to form a single processor, and this processor functions as a hardware resource that performs a specific process. Secondly, there is a configuration using a processor that realizes the functions of the entire system, including multiple hardware resources that perform a specific process, on a single IC chip, as exemplified by SoCs (System-on-a-chip). In this way, a specific process is realized using one or more of the above types of processors as hardware resources.
[1761] Furthermore, the hardware structure of these various processors can more specifically utilize electrical circuits that combine circuit elements such as semiconductor devices. Also, the specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps can be deleted, new steps added, or the processing order rearranged, as long as it does not deviate from the main purpose.
[1762] The descriptions and illustrations presented above are detailed explanations of the technical aspects of this disclosure and are merely examples of the technical aspects. For example, the above descriptions of the structure, function, operation, and effect are examples of the structure, function, operation, and effect of the technical aspects of this disclosure. Therefore, it goes without saying that you may delete unnecessary parts, add new elements, or replace elements in the descriptions and illustrations presented above, as long as you do not deviate from the essence of the technical aspects of this disclosure. Furthermore, in order to avoid confusion and facilitate understanding of the technical aspects of this disclosure, explanations of common technical knowledge and the like that do not require special explanation to enable the implementation of the technical aspects of this disclosure have been omitted from the descriptions and illustrations presented above.
[1763] All documents, patent applications, and technical standards described herein are incorporated by reference to the same extent as if each individual document, patent application, and technical standard were specifically and individually noted to be incorporated by reference.
[1764] The following is further disclosed regarding the embodiments described above.
[1765] (Claim 1)
[1766] In a system that analyzes video content, extracts information, and generates summaries,
[1767] A means of receiving video data from the user,
[1768] A means for dividing the received video data into frames,
[1769] A means of analyzing the video content frame by frame,
[1770] A means of extracting metadata from the analysis results,
[1771] A method for generating summaries based on metadata using generative AI,
[1772] A means of providing the generated summary to the user,
[1773] A system that includes this.
[1774] (Claim 2)
[1775] The system according to claim 1, wherein the means for extracting metadata from the analysis results is to detect people, objects, and text information contained in each frame.
[1776] (Claim 3)
[1777] The system according to claim 1, wherein a generative AI performs natural language processing based on extracted metadata to refine the summary.
[1778] (Claim 4)
[1779] The system according to claim 1, wherein the frame analysis means analyzes the video content using a deep learning model.
[1780] (Claim 5)
[1781] The system according to claim 1, further comprising means for automatically converting the format of video data uploaded by a user.
[1782] "Example 1"
[1783] (Claim 1)
[1784] A means of receiving video data from the user,
[1785] A means to check if the received video data is in the specified format, and to convert the format if it is in a different format,
[1786] A means for dividing the received video data into frames,
[1787] A means of analyzing the video content frame by frame,
[1788] A means for extracting metadata from the analysis results and collecting information on people, objects, and text contained in each frame,
[1789] A method for generating summaries based on metadata using generative AI,
[1790] A means of providing the generated summary to the user,
[1791] A system that includes this.
[1792] (Claim 2)
[1793] The system according to claim 1, wherein the analysis unit analyzes frames using an object detection algorithm and a deep learning model to extract scene description and contextual information.
[1794] (Claim 3)
[1795] The system according to claim 1, wherein a generative AI performs natural language processing based on extracted metadata and generates a summary based on a concise prompt sentence.
[1796] "Application Example 1"
[1797] (Claim 1)
[1798] In a system that analyzes video content, extracts information, and generates summaries,
[1799] A means of receiving video data from the user,
[1800] A means for dividing the received video data into frames,
[1801] A means of analyzing the video content frame by frame,
[1802] A means of extracting metadata from the analysis results,
[1803] A method for generating summaries based on metadata using generative AI,
[1804] A means of providing the generated summary to the user,
[1805] A means for users to upload video data and view and download the generated summary,
[1806] A system that includes this.
[1807] (Claim 2)
[1808] The system according to claim 1, wherein the means for extracting metadata from the analysis results detects people, objects, and text information contained in each frame and integrates them in chronological order.
[1809] (Claim 3)
[1810] The system according to claim 1, wherein a generative AI performs natural language processing based on extracted metadata to refine the summary and highlight important scenes and character information.
[1811] "Example 2 of combining an emotion engine"
[1812] (Claim 1)
[1813] A means of receiving video data from the user,
[1814] A means for dividing the received video data into frames,
[1815] A means of analyzing the video content frame by frame,
[1816] A means of extracting metadata from the analysis results,
[1817] A method for generating summaries based on metadata using generative AI,
[1818] A means of providing the generated summary to the user,
[1819] A means of recognizing user emotions and providing feedback for summary generation,
[1820] A system that includes this.
[1821] (Claim 2)
[1822] The system according to claim 1, wherein the means for extracting metadata from the analysis results is to detect people, objects, and text information contained in each frame.
[1823] (Claim 3)
[1824] The system according to claim 1, wherein a generative AI performs natural language processing based on extracted metadata to refine the summary.
[1825] "Application example 2 when combining with an emotional engine"
[1826] (Claim 1)
[1827] In a system that analyzes video content, extracts information, and generates summaries,
[1828] A means of receiving video data from the user,
[1829] A means for dividing the received video data into frames,
[1830] A means of analyzing the video content frame by frame,
[1831] A means of extracting metadata from the analysis results,
[1832] A method for generating summaries based on metadata using generative AI,
[1833] A means of recognizing user emotions and providing feedback for summary generation,
[1834] A means of providing the generated summary to the user,
[1835] A means of providing feedback that responds to the user's emotions,
[1836] A system that includes this.
[1837] (Claim 2)
[1838] The system according to claim 1, wherein the means for extracting metadata from the analysis results is to detect people, objects, and text information contained in each frame.
[1839] (Claim 3)
[1840] The system according to claim 1, wherein a generative AI performs natural language processing based on extracted metadata to refine the summary. [Explanation of Symbols]
[1841] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Devices 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robots< / url:> < / url:> < / url:> < / url:>
Claims
1. In a system that analyzes video content, extracts information, and generates summaries, A means of receiving video data from the user, A means for dividing the received video data into frames, A means of analyzing the video content frame by frame, A means of extracting metadata from the analysis results, A method for generating summaries based on metadata using generative AI, A means of providing the generated summary to the user, A system that includes this.
2. The system according to claim 1, wherein the means for extracting metadata from the analysis results is to detect people, objects, and text information contained in each frame.
3. The system according to claim 1, wherein a generative AI performs natural language processing based on extracted metadata to refine the summary.
4. The system according to claim 1, wherein the frame analysis means analyzes the video content using a deep learning model.
5. The system according to claim 1, further comprising means for automatically converting the format of video data uploaded by a user.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A