System

The system automates video analysis and annotation, enabling efficient viewing and production by detecting and highlighting important events, thus addressing the challenge of identifying key points in video content.

JP2026028870APending Publication Date: 2026-02-20SOFTBANK GROUP CORP
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024131486
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-08-07
Publication Date
2026-02-20

AI Technical Summary

Technical Problem

Viewers find it difficult to quickly identify important points and highlights in video content, and content creators face challenges in clearly indicating these parts, requiring significant time and effort.

Method used

A system that includes means for uploading video files, analyzing them using generative AI to detect specific events, annotating these events with timestamps and descriptions, storing the annotations in a database, and exporting the annotated video with a public link for easy access.

Benefits of technology

Automates video analysis and annotation, providing an efficient viewing and production environment by allowing quick access to important points and reducing the burden on content creators.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026028870000001_ABST
    Figure 2026028870000001_ABST
Patent Text Reader

Abstract

A system is provided.SOLUTION: A system includes a means for uploading a moving image file, a means for analyzing the uploaded moving image file, a means for annotating a specific event on the basis of an analysis result, a means for generating an annotation and storing it in a database, and a means for exporting the moving image with the annotation and generating a public link.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

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

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

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

[0004] While video content consumption is rapidly increasing, viewers often find it difficult to quickly identify important points and highlights. It takes a great deal of time and effort for viewers to check the entire video and find the parts they should pay attention to. It also requires a great deal of effort from content creators to clearly indicate the parts viewers should pay attention to. To solve these problems, technology is needed to automatically analyze videos and automatically annotate specific events. [Means for solving the problem]

[0005] The present invention provides a system including a means for uploading video files, a means for analyzing the uploaded video files, a means for annotating specific events based on the analysis results, a means for generating annotations and saving them in a database, and a means for exporting the annotated video and generating a link for publication. This system allows viewers to quickly access important points and highlights, improving the viewing experience and reducing the burden on content creators.

[0006] A "video file" is a file recorded in the form of multimedia data that includes visual and audio information.

[0007] "Means for uploading" refers to the function by which users send video files to the system and the server receives and stores those files.

[0008] "Means for analyzing" refers to the ability to use generative AI to interpret the audio and video data in a video file and extract specific events or information.

[0009] A "specific event" is any occurrence, action, or audio incident in a video that is of particular interest to the viewer.

[0010] "Annotation means" is a function for adding timestamps and descriptions of specific events into videos based on the analysis results.

[0011] A "database" is a structured information management system for recording and storing generated annotations and related information.

[0012] "Means to export" refers to functionality for outputting annotated videos in a format accessible to external systems or users.

[0013] "Public Link" means a URL or other access mechanism that allows the public to access the Annotated Video through a web browser or other playback device. [Brief explanation of the drawings]

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

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

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

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

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

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

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

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

[0022] [First embodiment]

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

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

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

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

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

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

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

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

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

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

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

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

[0035] A system for carrying out the present invention is realized by the processing of the following program. This system includes means for uploading video files, means for analyzing the uploaded video files, means for annotating specific events based on the analysis results, means for generating annotations and saving them in a database, and means for exporting the annotated video and generating a public link.

[0036] Specific processing flow and operation

[0037] First, the user logs in to the system and clicks the "Upload Video" button on the home page. The terminal then displays a file selection dialog, allowing the user to select the video file they want to analyze. The selected video file is then sent from the terminal to the server.

[0038] The server then stores the received video file in a temporary storage area. After this, it launches the generative AI module and begins analyzing the video file. The analysis process first extracts audio data and converts it into text using a speech recognition engine. Next, it analyzes video frames to detect specific actions and changes, and identifies events using an image recognition engine. Finally, it combines the audio and video data to detect specific events.

[0039] Once the analysis is complete, the server generates annotations for specific events based on the analysis results, including the event type, timing, and a brief description, and stores these annotations in a database.

[0040] Once the data is saved, the device provides the user with an interface to display the analysis results. The user can review the displayed annotations and make any necessary corrections, including modifying the annotation content and timestamp, adding new annotations, and deleting unnecessary annotations.

[0041] After completing the verification and correction, the user sends the verified annotation data to the server, which then exports the final annotated video and generates a public link. The device provides the user with this public link, which the user can share with other viewers. Viewers can access the public link to quickly jump to specific event parts.

[0042] Specific examples

[0043] For example, if a user uploads a 10-minute soccer game video, it will be processed as follows:

[0044] 1. A user uploads a soccer match video to the system.

[0045] 2. The server receives the video and calls the generation AI module to begin analysis, detecting events such as "Player B scores a goal at 3 minutes 15 seconds" and "A foul occurs at 7 minutes 40 seconds."

[0046] 3. The server generates annotations based on the detected event information and stores data such as "3:15 - Player B scores a goal" and "7:40 - Foul" in the database.

[0047] 4. The terminal displays the analysis results (annotations) to the user, who then checks and modifies the displayed annotations.

[0048] 5. Once the user completes the verification, the server exports the final annotated video and generates a link for publication.

[0049] 6. Users can use this link to share the video with their viewers, who can then easily jump to a specific part of the event.

[0050] The present invention automates video analysis and annotation, providing an efficient video viewing and production environment for both viewers and creators.

[0051] The processing flow will be explained below.

[0052] Step 1:

[0053] The user logs into the system and clicks the "Upload Video" button on the home page.

[0054] Step 2:

[0055] The device displays a file selection dialog, and the user selects the video file they want to analyze. The selected video file is then sent from the device to the server.

[0056] Step 3:

[0057] The server stores the received video file in a temporary storage area.

[0058] Step 4:

[0059] The server launches the generative AI module and begins analyzing the video file.

[0060] Step 5:

[0061] The server extracts audio data from the video and converts it into text using a speech recognition engine.

[0062] Step 6:

[0063] The server analyzes video frames to detect specific actions and changes, and also uses an image recognition engine to detect specific events (e.g., human face recognition, object recognition).

[0064] Step 7:

[0065] The server merges the audio and video data to detect specific events, which are then time-stamped and identified as the type of event.

[0066] Step 8:

[0067] The server generates annotations for specific events based on the analysis results. The annotations include the event type, event timing, and a brief description of the event. The generated annotations are stored in a database.

[0068] Step 9:

[0069] The terminal provides the user with an interface for displaying the analysis results.

[0070] Step 10:

[0071] Users can review the displayed annotations and make corrections as necessary, such as modifying the annotation content and timestamp, adding new annotations, or deleting unnecessary annotations.

[0072] Step 11:

[0073] Once the user has finished checking the annotations, the terminal sends the checked data to the server.

[0074] Step 12:

[0075] The server exports the final annotated video.

[0076] Step 13:

[0077] The server generates a public link for the exported video.

[0078] Step 14:

[0079] The device provides the user with a public link that the user can share with other viewers, who can then access the link and quickly jump to a specific part of the event.

[0080] Example 1

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

[0082] Traditionally, analyzing and annotating video files has often been done manually, requiring a great deal of time and effort. Furthermore, the accuracy and consistency of the analysis results depended on the skill of the user, so high-quality results were not always obtained. As a result, viewers and creators were unable to enjoy an efficient video viewing and production environment.

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

[0084] In this invention, the server includes a means for temporarily storing video files, a means for launching a generation AI module to analyze the video files, and a means for generating annotations for specific events based on the analysis results. This automates the manual analysis and annotation process, enabling the rapid generation of highly accurate and consistent results. As a result, it is possible to provide an efficient video viewing and production environment for both viewers and creators.

[0085] "User" refers to the person who operates this system, uploads video files, and checks and modifies the analysis results.

[0086] A "terminal" is a device that connects a user and a server, receives user input, and transmits data to the server.

[0087] "Server" refers to a central processing device that stores video files, launches a generative AI module to perform analysis, and generates annotations based on the analysis results.

[0088] "Video file" refers to video data uploaded by a user to the system, and is the data that is subject to analysis and annotation.

[0089] A "generative AI module" is a program that uses artificial intelligence (AI) to analyze video files, and includes a voice recognition engine and an image recognition engine.

[0090] "Speech recognition engine" refers to software or a system for converting audio data extracted from a video file into text.

[0091] "Image recognition engine" refers to software or a system that analyzes video frames and detects specific actions or changes.

[0092] Annotations are tags or labels generated based on the analysis results, and are data that includes the type, timing, and description of an event.

[0093] "Database" refers to a digital storage system for storing generated annotations.

[0094] "Public Link" refers to the URL or web address where you will share your final annotated video with your viewers.

[0095] MODE FOR CARRYING OUT THE INVENTION

[0096] The system for implementing this invention automates a series of processes that analyzes video files and generates, modifies, and publishes annotations for specific events. This system is realized through the interaction between a server, a terminal, and a user.

[0097] First, the user logs in to the system and clicks the "Upload Video" button on the home page. The terminal then displays a file selection dialog, allowing the user to select the video file they want to analyze. The selected video file is then sent from the terminal to the server.

[0098] The server stores the received video file in a temporary storage area. After this, it launches the AI ​​generation module and begins analyzing the video file. The analysis includes the following specific processes:

[0099] 1. Extract the audio data and convert it to text using a speech recognition engine (e.g., Google Cloud Speech-to-Text).

[0100] 2. Use an image recognition engine (e.g., OpenCV or TensorFlow) to analyze video frames and detect specific actions or changes.

[0101] 3. Integrate audio and video data to detect specific events.

[0102] Once the analysis is complete, the server generates annotations for specific events based on the analysis results, including the event type, timing, and a brief description, and stores these annotations in a database.

[0103] Once the data is saved, the device provides the user with an interface to display the analysis results. The user can review the displayed annotations and make any necessary corrections, including modifying the annotation content and timestamp, adding new annotations, and deleting unnecessary annotations.

[0104] After completing the verification and correction, the user submits the verified annotation data to the server, which then exports the final annotated video and generates a public link. The device provides the user with this public link, which the user can share with other viewers. Viewers can access the public link to quickly jump to specific event parts.

[0105] For example, if a user uploads a 10-minute soccer game video, the following happens:

[0106] 1. A user uploads a soccer match video to the system.

[0107] 2. The server receives the video and calls the generation AI module to begin analysis, detecting events such as "Player B scores a goal at 3 minutes 15 seconds" and "A foul occurs at 7 minutes 40 seconds."

[0108] 3. The server generates annotations based on the detected event information and stores data such as "3:15 - Player B scores a goal" and "7:40 - Foul" in the database.

[0109] 4. The terminal displays the analysis results (annotations) to the user, who can then confirm and correct the annotations.

[0110] 5. Once the user completes the verification, the server exports the final annotated video and generates a link for publication.

[0111] 6. Users can use this link to share the video with their viewers, who can then access the link and easily jump to a specific part of the event.

[0112] Example of an input prompt for a generative AI model:

[0113] "Please automatically detect goal and foul scenes from uploaded soccer match videos and generate annotations with their times and descriptions."

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

[0115] System program processing flow

[0116] Step 1:

[0117] A user logs into the system. The user accesses the homepage and enters their username and password on the login screen. This inputs the user's authentication information, and the system recognizes the user.

[0118] Step 2:

[0119] The user clicks the "Upload Video" button. This causes the device to display a file selection dialog. The user selects the video file they want to analyze. The path of the selected video file is obtained as input. The device then performs the specific action of sending the video file to the server.

[0120] Step 3:

[0121] The server stores the received video file in a temporary storage area. The video file is given as input, and the path to the temporary storage area is obtained as output. This prepares the file for subsequent analysis processing to be performed quickly.

[0122] Step 4:

[0123] The server launches the generation AI module, which receives the video file as input and begins analysis. During this process, the following specific data processing steps are performed:

[0124] Extract the audio data and convert it to text using a speech recognition engine (e.g., Google Cloud Speech-to-Text). The audio data is taken as input and the converted text data is taken as output.

[0125] It uses an image recognition engine (e.g., OpenCV or TensorFlow) to analyze video frames and detect specific actions or changes. The frame data is given as input, and the detected event information is obtained as output.

[0126] The audio and video data are integrated to detect specific events. The integrated data is obtained as input, and the identified event information is obtained as output.

[0127] Step 5:

[0128] The server generates annotations for specific events based on the analysis results. The analysis results (audio text, image event information) are given as input, and annotation data (event type, timing, description) is obtained as output.

[0129] Step 6:

[0130] The server stores the generated annotations in a database. The annotation data is given as input, and a reference to the stored data is obtained as output, allowing for later user review and correction.

[0131] Step 7:

[0132] The terminal provides the user with an interface for displaying the analysis results. The annotation data is given as input and displayed in the interface in a format that the user can view.

[0133] Step 8:

[0134] The user can check the displayed annotations and make corrections as necessary, such as modifying the annotation content or timestamp, adding new annotations, or deleting unnecessary annotations. The corrected annotation data is then output.

[0135] Step 9:

[0136] Once the user has completed the corrections, they submit the confirmed annotation data to the server, which then passes the corrected annotation data as input.

[0137] Step 10:

[0138] The server exports the final annotated video. The modified annotation data and the video file are given as input, and the annotated video file is obtained as output. The server then generates a public link. The public link is obtained as output.

[0139] Step 11:

[0140] The device provides the user with a public link, which the user can share with other viewers, allowing viewers to quickly jump to a specific event in the video.

[0141] (Application example 1)

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

[0143] In the current advertising production and management process, manually analyzing and annotating specific events in advertising videos is time-consuming and labor-intensive. This makes it difficult for advertising creators and marketers to create and distribute effective advertising content. In particular, it is difficult to quickly identify and appropriately annotate important scenes and promotional information that will attract viewers' attention. Therefore, there is a need for a system that can efficiently manage advertising content by automating the analysis and annotation of advertising videos.

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

[0145] In this invention, the server includes means for uploading video files, means for analyzing the uploaded video files, means for annotating specific events based on the analysis results, means for generating annotations and saving them in a database, means for exporting the annotated video and generating a public link, and means for automating the analysis and annotation of advertising videos, thereby enabling the rapid identification of important scenes in the production of advertising content and the efficient management and distribution of the content.

[0146] "Means for uploading video files" refers to an interface or function that allows users to upload advertising videos to the system.

[0147] "Means for analyzing uploaded video files" refers to programs or algorithms for extracting and analyzing audio data and video frames from video files stored on a server.

[0148] "Means for annotating specific events based on analysis results" is a function that identifies important events or scenes based on analyzed data and adds corresponding tags and descriptions.

[0149] "Means for generating annotations and saving them in a database" refers to a function for storing automatically generated annotation information in a database.

[0150] "Means for exporting videos with annotations and generating public links" refers to a function that outputs the final annotated video file to the outside world and generates a link for referencing it.

[0151] "Means for automating the analysis and annotation of advertising videos" refers to technologies and systems that automatically detect important scenes and information contained in advertising videos and provide appropriate annotations for them.

[0152] The embodiment of this invention is a system for automating the analysis and annotation of advertising videos. This system uploads video files, analyzes them, generates annotations, saves them, exports them, and generates public links. Specifically, the system is composed of a server, a user terminal, and software to support these.

[0153] First, the user logs in to the system using their device and uploads the advertisement video file to the system. The device displays a file selection dialog, allowing the user to select the video file they want to analyze. The selected video file is sent from the device to the server and stored in a temporary storage area.

[0154] The server analyzes the received video files using the Google Cloud Vision API, analyzing the video frames to detect specific actions and changes. It also uses the SpeechRecognition module to extract audio data, which is then converted into text by a speech recognition engine. This allows the server to integrate the results of video frame analysis and speech recognition to detect specific events.

[0155] Once the analysis is complete, the server generates annotations for specific events based on the analysis results, including the event type, timing, and description, and stores this annotation information in a database.

[0156] Once saved, the annotations are displayed to the user via their device. The user can review the displayed annotations and, if necessary, modify the content and timestamp, add new annotations, or delete unnecessary annotations. After the user has completed the review and modifications, the server exports the final annotated video and generates a public link. The user can then share this link with viewers, who can then quickly jump to specific event parts by clicking the link.

[0157] As a specific example, a marketer at an advertising agency can analyze a new product introduction video and automatically detect specific episodes (e.g., the start time of a promotion or the timing of explaining specific parts of the product) to make only the important information easily accessible to viewers. When generating such annotations, a prompt such as "Analyze a new product launch video including the timing of product introductions and annotate important scenes" can be input to the generative AI model.

[0158] This invention automates the analysis and annotation of advertising videos, significantly improving the efficiency of advertising content production, management, and distribution, enabling advertising creators and marketers to effectively manage videos that capture viewers' attention.

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

[0160] Step 1: Upload your video file

[0161] The user logs into the system using a terminal and clicks the "Upload Video" button.

[0162] The terminal displays a file selection dialog box and prompts the user to select the video file they wish to analyze.

[0163] When the user selects a video file, the terminal transmits the selected video file to the server.

[0164] Input: A video file specified by the user.

[0165] Output: The video file sent to the server.

[0166] Step 2: Prepare the video file for analysis

[0167] The server stores the received video file in a temporary storage area.

[0168] The server launches the generative AI module and speech recognition engine to prepare for analysis.

[0169] Input: The video file sent to the server.

[0170] Output: A saved video file.

[0171] Step 3: Extract audio data and convert it to text

[0172] The server extracts audio data from the video file and converts the audio into text data using the SpeechRecognition module.

[0173] Input: The audio portion of the video file.

[0174] Output: Text data converted from audio data.

[0175] Step 4: Analyzing the video frames

[0176] The server uses the Google Cloud Vision API to analyze the video frames, capturing frames every five seconds and analyzing them to detect specific movements or changes.

[0177] Input: Frames from a video file.

[0178] Output: Parsed frame data.

[0179] Step 5: Integrating audio and video data

[0180] The server integrates the audio and video data and detects specific events (e.g., product introductions, promotions, etc.).

[0181] Input: Text data and frame data.

[0182] Output: Detected event information.

[0183] Step 6: Generate annotations and save them to the database

[0184] The server generates annotations based on the detected event information, including the type, timing, and description of the event.

[0185] The server stores the generated annotations in a database.

[0186] Input: The detected event information.

[0187] Output: Annotations stored in a database.

[0188] Step 7: View and modify annotation results

[0189] The terminal displays the analysis results (annotations) to the user, who can then modify the content and timestamp, add new annotations, and delete unnecessary annotations.

[0190] Input: Annotations stored in a database.

[0191] Output: The final annotation data as modified by the user.

[0192] Step 8: Exporting and linking your annotated video

[0193] Once the user has completed reviewing the annotations, the server exports the final annotated video and generates a link for publication.

[0194] The terminal provides the user with a public link that the user can share with their audience.

[0195] Input: Final annotation data.

[0196] Output: Generate and provide a link for publication.

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

[0198] A system embodying the present invention comprises the following processing steps: a means for uploading video files, a means for analyzing the uploaded video files, a means for annotating specific events based on the analysis results, a means for generating annotations and saving them in a database, and a means for exporting the annotated video and generating a link for publication. Furthermore, the system incorporates an emotion engine that recognizes user emotions based on the content of the video.

[0199] Specific processing flow and operation

[0200] The user logs in to the system and clicks the "Upload Video" button on the home page. The terminal displays a file selection dialog, allowing the user to select the video file they want to analyze. The selected video file is then sent from the terminal to the server.

[0201] The server then stores the received video file in a temporary storage area. Once the storage is complete, it launches the generative AI module and begins analyzing the video file. The generative AI analyzes the audio and visual data of the video to recognize specific events and the user's emotions.

[0202] The analysis begins by extracting audio data and converting it to text using a speech recognition engine. Then, video frames are analyzed to detect specific actions or changes. An image recognition engine is used to detect specific events (e.g., facial recognition, object recognition), and audio and video data are integrated to detect specific events.

[0203] Furthermore, the system utilizes an emotion engine to recognize the user's emotional state, which determines whether the user is in a positive, negative, or neutral emotional state through voice tone and facial expression analysis. This emotional information is also integrated into the analysis data.

[0204] Once the analysis results are obtained, the server generates annotations for specific events, including the event type, event timing, the user's emotional state, and a brief description. The generated annotations are stored in a database.

[0205] Once the data has been saved, the device provides the user with an interface to display the analysis results. The user can review the displayed annotations and make any necessary modifications, including modifying the annotation content and timestamp, adding the user's emotional state, adding new annotations, and deleting unnecessary annotations.

[0206] After completing the verification and correction, the user sends the verified annotation data to the server, which then exports the final annotated video. A public link is then generated, which the device provides to the user, who can then share it with other viewers. Viewers can access the public link to quickly jump to specific parts of the event.

[0207] Specific examples

[0208] For example, if a user uploads a 10-minute soccer game video, it will be processed as follows:

[0209] 1. A user uploads a soccer match video to the system.

[0210] 2. The server receives the video and calls the generation AI module and emotion engine to begin analysis. The analysis detects events such as "Player B scores a goal at 3 minutes 15 seconds," "a foul occurs at 7 minutes 40 seconds," and "the crowd cheers at 5 minutes 00 seconds," as well as the user's emotional information related to these events (e.g., positive emotions during cheering).

[0211] 3. The server generates annotations based on the detected event information and user emotion information, and stores data such as "3:15 - Player B scores a goal (user emotion: excitement)", "7:40 - Foul (user emotion: dissatisfaction)", and "5:00 - Crowd cheers (user emotion: joy)" in the database.

[0212] 4. The terminal displays the analysis results (annotations) to the user, who then checks and modifies the displayed annotations.

[0213] 5. Once the user completes the verification, the server exports the final annotated video and generates a link for publication.

[0214] 6. Users can use this link to share the video with their viewers, who can access the public link and easily jump to specific parts of the event.

[0215] This invention automates video analysis and annotation, providing an efficient video viewing and production environment for both viewers and creators. Furthermore, by recognizing user emotions, it can make the viewer experience richer and more intuitive.

[0216] The processing flow will be explained below.

[0217] Step 1:

[0218] The user logs into the system and clicks the "Upload Video" button on the home page.

[0219] Step 2:

[0220] The device displays a file selection dialog, and the user selects the video file they want to analyze. The selected video file is then sent from the device to the server.

[0221] Step 3:

[0222] The server stores the received video file in a temporary storage area.

[0223] Step 4:

[0224] The server launches the generative AI module and emotion engine and begins analyzing the video file.

[0225] Step 5:

[0226] The server extracts audio data from the video and converts it into text using a speech recognition engine.

[0227] Step 6:

[0228] The server analyzes the video frames to detect specific actions and changes, using an image recognition engine to detect specific events (e.g., human face recognition, object recognition).

[0229] Step 7:

[0230] The server merges the audio and video data to detect specific events, which are then time-stamped and identified as the type of event.

[0231] Step 8:

[0232] The server uses an emotion engine to recognize the user's emotional state based on the video content and the user's reactions. The emotion engine determines whether the user's emotion is positive, negative, or neutral based on voice tone and facial expression analysis.

[0233] Step 9:

[0234] The server generates annotations for specific events based on the analysis results and emotional information, including the event type, event timing, the user's emotional state, and a brief description.

[0235] Step 10:

[0236] The server stores the generated annotations in a database.

[0237] Step 11:

[0238] The terminal provides the user with an interface for displaying the analysis results.

[0239] Step 12:

[0240] Users can review the displayed annotations and make any necessary modifications, including modifying the annotation content or timestamp, adding or changing the user's emotional state, adding new annotations, or deleting unnecessary annotations.

[0241] Step 13:

[0242] Once the user has finished checking the annotations, the terminal sends the checked data to the server.

[0243] Step 14:

[0244] The server exports the final annotated video.

[0245] Step 15:

[0246] The server generates a public link for the exported video.

[0247] Step 16:

[0248] The device provides the user with a public link that the user can share with other viewers, who can access the link and quickly jump to a specific part of the event.

[0249] Example 2

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

[0251] Previous video analysis and annotation systems only detected specific events and actions, but were unable to analyze the viewer's or user's emotional state and generate annotations based on it. This limited the video viewing and production environment, lacking additional information to make the viewer's experience richer and more intuitive.

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

[0253] In this invention, the server includes means for uploading video files, means for analyzing the uploaded video files, means for annotating specific events based on the analysis results, means for generating annotations and saving them in a database, means for exporting the annotated video and generating a public link, and means for recognizing user emotions. This automates the video analysis and annotation work and generates annotations that include the user's emotional state, making it possible to provide a richer and more intuitive viewer experience.

[0254] A "video file" is a multimedia data format containing audio and video data prepared for uploading by a user.

[0255] "Means for uploading" refers to a mechanism that provides a function for users to send video files to the system and transfers data from the terminal to the server.

[0256] "Means for analyzing" refers to the algorithms and engines used by the server to process the video files received and analyze the audio and video data.

[0257] "Means of annotation" refers to the ability to add annotations about specific events, actions, or the user's emotional state based on the analyzed data.

[0258] "Means for storing in a database" refers to a mechanism that provides a repository for the organized management of generated annotations and for efficient search and retrieval when needed.

[0259] "Means for exporting" refers to the function of generating the final annotated video file and outputting it externally.

[0260] "Means to generate a public link" refers to the ability to create a URL that will take users to the final annotated video, allowing them to easily share it with other viewers.

[0261] A "speech recognition engine" is a software algorithm for converting voice data into text data.

[0262] An "image recognition engine" is a software algorithm that analyzes each frame of video and detects specific actions or changes.

[0263] An "emotion engine" is a software algorithm that analyzes a user's audio and video data to recognize the user's emotional state.

[0264] Annotations are metadata added based on the analysis results, including the type, timing, and description of an event, as well as the user's emotional state.

[0265] A "public link" is a URL that is set up so that other viewers can access the final annotated video.

[0266] "User's emotional state" refers to information indicating the user's emotions, such as positive, negative, or neutral, while watching a video.

[0267] The system for implementing this invention is configured using the following main hardware and software components: The system uploads video files, analyzes them, generates annotations, saves them to a database, exports them, and generates public links while exchanging data between users, terminals, and a server.

[0268] Hardware and Software Configuration

[0269] User steps:

[0270] The user logs in to the system and clicks the "Upload Video" button on the home page. This action causes the device to display a file selection dialog, allowing the user to select the video file they want to analyze. The selected video file is then sent from the device to the server.

[0271] Processing steps on the server:

[0272] The server stores the received video file in a temporary storage area. Once the storage is complete, the server launches the generative AI module and begins analyzing the video file. This analysis is performed on both audio and video data.

[0273] Video analysis procedure

[0274] 1. Audio data extraction and analysis:

[0275] The server extracts audio data from the video file and converts it into text using a speech recognition engine. Specifically, the speech recognition engine analyzes the audio waveform and generates corresponding text based on a language model.

[0276] 2. Video data analysis:

[0277] The server analyzes each frame of video and uses an image recognition engine to detect specific actions and changes (e.g., facial recognition, object recognition), thereby identifying significant events within the video data.

[0278] 3. Audio and video integration:

[0279] The analyzed audio and video data are combined to detect specific events, such as "a player scores a goal at 3 minutes and 15 seconds."

[0280] User Emotion Recognition

[0281] The server uses an emotion engine to recognize the user's emotional state. The emotion engine analyzes voice tone and facial expressions to determine whether the user is in a positive, negative, or neutral emotional state. This emotional information is also integrated into the analysis data.

[0282] Creating and saving annotations

[0283] Once the analysis results are obtained, the server generates annotations for specific events, including the event type, event timing, the user's emotional state, and a brief description. The generated annotations are stored in a database.

[0284] Displaying and modifying analysis results

[0285] Once the data has been saved, the device provides the user with an interface to display the analysis results. The user can review the displayed annotations and make any necessary modifications, including modifying the annotation content and timestamp, adding the user's emotional state, adding new annotations, and deleting unnecessary annotations.

[0286] Exporting the final data and generating a public link

[0287] Once the user has finished checking the annotations, the server exports the final annotated video. The server then generates a public link, which the device provides to the user. The user can then share this link with other viewers. Viewers can quickly jump to specific parts of the event by accessing the public link.

[0288] Examples of concrete examples and prompts

[0289] For example, if a user uploads a 10 minute soccer game video, it will be processed as follows:

[0290] 1. A user uploads a soccer match video to the system.

[0291] 2. The server receives the video and calls the generation AI module and emotion engine to begin analysis. The analysis detects events such as "a player scores a goal at 3 minutes 15 seconds," "a foul occurs at 7 minutes 40 seconds," and "the crowd cheers at 5 minutes 00 seconds," as well as the user's emotional information associated with those events.

[0292] 3. The server generates annotations based on the detected event information and user emotion information, and stores data such as "3:15 - Player B scores a goal (user emotion: excitement)", "7:40 - Foul (user emotion: dissatisfaction)", and "5:00 - Crowd cheers (user emotion: joy)" in the database.

[0293] 4. The terminal displays the analysis results to the user, who then checks and modifies the displayed annotations.

[0294] 5. Once the user completes the verification, the server exports the final annotated video and generates a link for publication.

[0295] 6. Users can use this link to share the video with their viewers, who can access the public link and easily jump to specific parts of the event.

[0296] Example prompt sentence:

[0297] "Analyze a 10-minute soccer game video, detect specific events (e.g., goals, fouls, crowd cheers) and user emotions (excitement, frustration, joy), and generate annotations."

[0298] The system automates video analysis and annotation tasks, providing an efficient video viewing and production environment while making the viewer experience richer and more intuitive.

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

[0300] Step 1:

[0301] The user logs in to the system and clicks the "Upload Video" button on the home page. The terminal displays a file selection dialog, allowing the user to select the video file they want to analyze. The input is the video file selected by the user (e.g., "soccer_game.mp4"), and the output is the selected video file being sent from the terminal to the server.

[0302] Step 2:

[0303] The server saves the received video file in a temporary storage area. The input is the video file sent from the device, and the output is the file being saved in the temporary storage area. Specifically, "soccer_game.mp4" is stored in the save directory "temp_storage".

[0304] Step 3:

[0305] Once saving is complete, the server launches the generation AI module and begins analyzing the video file. The input is the saved video file "soccer_game.mp4," and the output is the analysis results (analysis results of audio and video data). Specifically, "generateAI_module.py" is executed to begin the analysis process.

[0306] Step 4:

[0307] The server extracts audio data from the video file and converts the audio to text using a speech recognition engine. The input is the audio data extracted from the video file, and the output is the converted text. Specifically, the speech recognition engine analyzes the audio waveform and generates text data such as "kick_sound."

[0308] Step 5:

[0309] The server analyzes each frame of the video and uses an image recognition engine to detect specific actions and changes. The input is the video frame data, and the output is the detected event (e.g., the moment a player scores a goal). Specifically, the image recognition engine analyzes the pixel data for each frame and identifies goal scenes.

[0310] Step 6:

[0311] The server integrates audio and video data to detect specific events. The input is the converted audio data and analyzed image data, and the output is the integrated event information (e.g., "A player scores a goal at 3 minutes and 15 seconds").

[0312] Step 7:

[0313] The server uses an emotion engine to recognize the user's emotional state. The input is audio tone and video data, and the output is the user's emotional information (e.g., excitement, joy). Specifically, the emotion engine detects positive emotions through audio tone analysis and facial expression analysis.

[0314] Step 8:

[0315] The server generates annotations for specific events based on the analysis results. The input is the integrated event information and the user's emotion information, and the output is the generated annotation (e.g., "3:15 - Player B scores a goal (user's emotion: excited)").

[0316] Step 9:

[0317] The server saves the generated annotations in a database. The input is the generated annotation data, and the output is the annotations saved in the database. Specifically, the annotations are saved in "database_annotations".

[0318] Step 10:

[0319] Once the data has been saved, the device provides an interface for displaying the analysis results to the user. The input is the annotation data retrieved from the database, and the output is a list of annotations displayed to the user. The user can review the displayed annotations and make corrections if necessary.

[0320] Step 11:

[0321] Once the user has completed the annotation review, the server exports the final annotated video. The input is the modified annotation data and the original video file, and the output is the final annotated video.

[0322] Step 12:

[0323] The server generates a public link, which the device provides to the user. The input is the exported annotated video, and the output is the generated public link (e.g., "https: / / example.com / shared / video12345"), which the user can use to share the video with their viewers.

[0324] (Application example 2)

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

[0326] In recent years, it has become difficult to instantly grasp specific scenes and user emotions in the vast amount of video content. Furthermore, there is a lack of technology that can help video viewers find specific scenes and reflect user emotions in review videos. Therefore, there is a need for a system that can automatically detect specific scenes, recognize the user's emotional state, and share the annotated footage.

[0327] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for uploading video files, means for analyzing the uploaded video files and performing emotion recognition, means for annotating specific events and adding emotional states based on the analysis results, means for generating annotations and saving them in a database, and means for exporting the annotated video and generating a public link. This allows users to easily annotate specific scenes in video content and the emotions they felt at the time, and share them with viewers.

[0328] The "means for uploading video files" is an interface that allows a user to send video files from a local terminal to the server.

[0329] "Means for analyzing uploaded video files and performing emotion recognition" refers to an engine (e.g., an emotion recognition engine) that analyzes the audio and video of video files uploaded to a server and recognizes the user's emotions contained therein.

[0330] "Means for annotating specific events and adding emotional states based on analysis results" refers to a process for annotating specific events or scenes in a video based on analysis results and adding the user's associated emotional state.

[0331] The "means for generating annotations and storing them in a database" refers to a function for storing the generated annotations in a database, where each annotation includes the type, timing, description, and emotional state of an event.

[0332] "Means for exporting videos with annotations and generating public links" refers to the functionality for exporting the final video file with annotations and generating a public link that viewers can access.

[0333] A "voice recognition engine" is a technology for converting voice data extracted from video files into text data.

[0334] "Means for integrating E-visual data and emotional state" refers to a process for assembling audio data, video data, and the emotional state recognized by the emotion recognition engine into a single data set.

[0335] "Type of event, timing of event, description of event, and user's emotional state" refers to information that indicates the specific content of the event, such as what type of event it was (e.g., goal, foul, etc.), when the event occurred, a brief description of the event, and the user's emotional state at the time (e.g., joy, surprise, etc.).

[0336] This invention describes a system that specifically implements a video review app with sentiment analysis, including means for uploading video files, analyzing them, generating annotations, and exporting them.

[0337] Hardware and software used

[0338] The hardware and software configuration used is as follows:

[0339] 1. Hardware

[0340] Server: A high-performance server for analyzing video files and storing data.

[0341] Device: The device where the user uploads video files and checks the analysis results (e.g., smartphone, PC)

[0342] 2. Software

[0343] Video upload interface: A web interface or application that allows users to upload video files from their devices to the server.

[0344] Generative AI model: An artificial intelligence model for analyzing video files

[0345] Speech recognition engine: Software that extracts audio data from video files and converts it into text

[0346] Image Recognition Engine: Software that analyzes video frames to detect specific actions and changes

[0347] Emotion Recognition Engine: Software that analyzes the user's emotional state

[0348] Database: A database system for storing the generated annotation data

[0349] Export module: Software to export annotated video files and generate a publishing link

[0350] Processing flow

[0351] 1. Upload your video file:

[0352] Users use the device to upload review videos, either through a web interface or a smartphone app.

[0353] 2. Video Analysis:

[0354] Uploaded video files are stored on a server and analyzed by a generative AI model. A speech recognition engine converts audio data into text, an image recognition engine analyzes video frames to detect specific events, and an emotion recognition engine analyzes the user's emotional state and integrates it with the audio and video data.

[0355] 3. Generate annotations:

[0356] Annotations are generated based on the detected events and emotional states, including the event type, timing, description, and the user's emotional state.

[0357] 4. Check and correct annotations:

[0358] Users can use their devices to review and modify the generated annotations, which are then sent to the server and stored in a database.

[0359] 5. Export and share:

[0360] The final annotated video is exported and a public link is generated that users can use to share the video with other viewers.

[0361] Specific examples

[0362] For example, if a user uploads a video review of an episode of a TV show, the process goes like this:

[0363] 1. Upload your video file:

[0364] A user opens the app, clicks the "Upload Video" button, and selects a review video file.

[0365] 2. Video Analysis:

[0366] The system receives a video file, detects specific scenes (e.g., surprising plot twists, emotional moments), and generates annotations of the emotions in those scenes (e.g., surprise, emotion).

[0367] 3. Export and share:

[0368] Once the analysis is complete, a link to publish the annotated video is displayed, and the user can share this link with other viewers.

[0369] Prompt Sentence Examples

[0370] Analyze drama review videos and generate annotations for specific scenes (e.g., surprising plot twists, moving moments) and their associated emotions (e.g., surprise, emotion).

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

[0372] Step 1:

[0373] The user uses the device to upload a video file. Specifically, they click the "Upload Video" button in the application and select a review video file from the file selection dialog. The uploaded file is sent to the server and saved in a temporary storage area. The input is the video file selected by the user, and the output is the video file saved on the server.

[0374] Step 2:

[0375] When the server receives the video file, it launches the generative AI model to begin analysis. First, it extracts audio data from the video file and converts it to text using a speech recognition engine. The input is the video file stored on the server, and the output is text data converted from the audio data. Specifically, the audio data is extracted and converted into text.

[0376] Step 3:

[0377] The server then analyzes the video frames, using an image recognition engine to detect specific actions and changes and identify specific events within the video. The input is each frame of the video file, and the output is the detected event information. Specifically, image recognition is performed on each frame.

[0378] Step 4:

[0379] The server uses an emotion recognition engine to analyze the user's emotions from the audio and video data. This identifies emotional states such as positive, negative, and neutral. The input is audio and video data, and the output is emotional state data. Specific operations include analyzing the tone of the voice and facial expressions.

[0380] Step 5:

[0381] The server integrates the analysis results and generates annotations for specific events. The annotations, including the event type, timing, description, and emotional state, are stored in a database. The inputs are audio data, video data, and emotional state data, and the output is annotation data. The specific operations are data integration and annotation generation.

[0382] Step 6:

[0383] The user uses a terminal to access an interface for reviewing and correcting the generated annotations. The annotation content, timestamp, and emotional state can be modified as needed. The input is the generated annotation data, and the output is the corrected annotation data. Specific operations include reviewing and correcting the annotations in the user interface.

[0384] Step 7:

[0385] The server exports the final annotated video and generates a public link that users can use to share the video with other viewers. The input is the modified annotation data, and the output is the public link. The specific operations are exporting the video and generating the link.

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

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

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

[0389] [Second embodiment]

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

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

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

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

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

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

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

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

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

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

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

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

[0402] A system for carrying out the present invention is realized by the processing of the following program. This system includes means for uploading video files, means for analyzing the uploaded video files, means for annotating specific events based on the analysis results, means for generating annotations and saving them in a database, and means for exporting the annotated video and generating a public link.

[0403] Specific processing flow and operation

[0404] First, the user logs in to the system and clicks the "Upload Video" button on the home page. The terminal then displays a file selection dialog, allowing the user to select the video file they want to analyze. The selected video file is then sent from the terminal to the server.

[0405] The server then stores the received video file in a temporary storage area. After this, it launches the generative AI module and begins analyzing the video file. The analysis process first extracts audio data and converts it into text using a speech recognition engine. Next, it analyzes video frames to detect specific actions and changes, and identifies events using an image recognition engine. Finally, it combines the audio and video data to detect specific events.

[0406] Once the analysis is complete, the server generates annotations for specific events based on the analysis results, including the event type, timing, and a brief description, and stores these annotations in a database.

[0407] Once the data is saved, the device provides the user with an interface to display the analysis results. The user can review the displayed annotations and make any necessary corrections, including modifying the annotation content and timestamp, adding new annotations, and deleting unnecessary annotations.

[0408] After completing the verification and correction, the user sends the verified annotation data to the server, which then exports the final annotated video and generates a public link. The device provides the user with this public link, which the user can share with other viewers. Viewers can access the public link to quickly jump to specific event parts.

[0409] Specific examples

[0410] For example, if a user uploads a 10-minute soccer game video, it will be processed as follows:

[0411] 1. A user uploads a soccer match video to the system.

[0412] 2. The server receives the video and calls the generation AI module to begin analysis, detecting events such as "Player B scores a goal at 3 minutes 15 seconds" and "A foul occurs at 7 minutes 40 seconds."

[0413] 3. The server generates annotations based on the detected event information and stores data such as "3:15 - Player B scores a goal" and "7:40 - Foul" in the database.

[0414] 4. The terminal displays the analysis results (annotations) to the user, who then checks and modifies the displayed annotations.

[0415] 5. Once the user completes the verification, the server exports the final annotated video and generates a link for publication.

[0416] 6. Users can use this link to share the video with their viewers, who can then easily jump to a specific part of the event.

[0417] The present invention automates video analysis and annotation, providing an efficient video viewing and production environment for both viewers and creators.

[0418] The processing flow will be explained below.

[0419] Step 1:

[0420] The user logs into the system and clicks the "Upload Video" button on the home page.

[0421] Step 2:

[0422] The device displays a file selection dialog, and the user selects the video file they want to analyze. The selected video file is then sent from the device to the server.

[0423] Step 3:

[0424] The server stores the received video file in a temporary storage area.

[0425] Step 4:

[0426] The server launches the generative AI module and begins analyzing the video file.

[0427] Step 5:

[0428] The server extracts audio data from the video and converts it into text using a speech recognition engine.

[0429] Step 6:

[0430] The server analyzes video frames to detect specific actions and changes, and also uses an image recognition engine to detect specific events (e.g., human face recognition, object recognition).

[0431] Step 7:

[0432] The server merges the audio and video data to detect specific events, which are then time-stamped and identified as the type of event.

[0433] Step 8:

[0434] The server generates annotations for specific events based on the analysis results. The annotations include the event type, event timing, and a brief description of the event. The generated annotations are stored in a database.

[0435] Step 9:

[0436] The terminal provides the user with an interface for displaying the analysis results.

[0437] Step 10:

[0438] Users can review the displayed annotations and make corrections as necessary, such as modifying the annotation content and timestamp, adding new annotations, or deleting unnecessary annotations.

[0439] Step 11:

[0440] Once the user has finished checking the annotations, the terminal sends the checked data to the server.

[0441] Step 12:

[0442] The server exports the final annotated video.

[0443] Step 13:

[0444] The server generates a public link for the exported video.

[0445] Step 14:

[0446] The device provides the user with a public link that the user can share with other viewers, who can then access the link and quickly jump to a specific part of the event.

[0447] Example 1

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

[0449] Traditionally, analyzing and annotating video files has often been done manually, requiring a great deal of time and effort. Furthermore, the accuracy and consistency of the analysis results depended on the skill of the user, so high-quality results were not always obtained. As a result, viewers and creators were unable to enjoy an efficient video viewing and production environment.

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

[0451] In this invention, the server includes a means for temporarily storing video files, a means for launching a generation AI module to analyze the video files, and a means for generating annotations for specific events based on the analysis results. This automates the manual analysis and annotation process, enabling the rapid generation of highly accurate and consistent results. As a result, it is possible to provide an efficient video viewing and production environment for both viewers and creators.

[0452] "User" refers to the person who operates this system, uploads video files, and checks and modifies the analysis results.

[0453] A "terminal" is a device that connects a user and a server, receives user input, and transmits data to the server.

[0454] "Server" refers to a central processing device that stores video files, launches a generative AI module to perform analysis, and generates annotations based on the analysis results.

[0455] "Video file" refers to video data uploaded by a user to the system, and is the data that is subject to analysis and annotation.

[0456] A "generative AI module" is a program that uses artificial intelligence (AI) to analyze video files, and includes a voice recognition engine and an image recognition engine.

[0457] "Speech recognition engine" refers to software or a system for converting audio data extracted from a video file into text.

[0458] "Image recognition engine" refers to software or a system that analyzes video frames and detects specific actions or changes.

[0459] Annotations are tags or labels generated based on the analysis results, and are data that includes the type, timing, and description of an event.

[0460] "Database" refers to a digital storage system for storing generated annotations.

[0461] "Public Link" refers to the URL or web address where you will share your final annotated video with your viewers.

[0462] MODE FOR CARRYING OUT THE INVENTION

[0463] The system for implementing this invention automates a series of processes that analyzes video files and generates, modifies, and publishes annotations for specific events. This system is realized through the interaction between a server, a terminal, and a user.

[0464] First, the user logs in to the system and clicks the "Upload Video" button on the home page. The terminal then displays a file selection dialog, allowing the user to select the video file they want to analyze. The selected video file is then sent from the terminal to the server.

[0465] The server stores the received video file in a temporary storage area. After this, it launches the AI ​​generation module and begins analyzing the video file. The analysis includes the following specific processes:

[0466] 1. Extract the audio data and convert it to text using a speech recognition engine (e.g., Google Cloud Speech-to-Text).

[0467] 2. Use an image recognition engine (e.g., OpenCV or TensorFlow) to analyze video frames and detect specific actions or changes.

[0468] 3. Integrate audio and video data to detect specific events.

[0469] Once the analysis is complete, the server generates annotations for specific events based on the analysis results, including the event type, timing, and a brief description, and stores these annotations in a database.

[0470] Once the data is saved, the device provides the user with an interface to display the analysis results. The user can review the displayed annotations and make any necessary corrections, including modifying the annotation content and timestamp, adding new annotations, and deleting unnecessary annotations.

[0471] After completing the verification and correction, the user submits the verified annotation data to the server, which then exports the final annotated video and generates a public link. The device provides the user with this public link, which the user can share with other viewers. Viewers can access the public link to quickly jump to specific event parts.

[0472] For example, if a user uploads a 10-minute soccer game video, the following happens:

[0473] 1. A user uploads a soccer match video to the system.

[0474] 2. The server receives the video and calls the generation AI module to begin analysis, detecting events such as "Player B scores a goal at 3 minutes 15 seconds" and "A foul occurs at 7 minutes 40 seconds."

[0475] 3. The server generates annotations based on the detected event information and stores data such as "3:15 - Player B scores a goal" and "7:40 - Foul" in the database.

[0476] 4. The terminal displays the analysis results (annotations) to the user, who can then confirm and correct the annotations.

[0477] 5. Once the user completes the verification, the server exports the final annotated video and generates a link for publication.

[0478] 6. Users can use this link to share the video with their viewers, who can then access the link and easily jump to a specific part of the event.

[0479] Example of an input prompt for a generative AI model:

[0480] "Please automatically detect goal and foul scenes from uploaded soccer match videos and generate annotations with their times and descriptions."

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

[0482] System program processing flow

[0483] Step 1:

[0484] A user logs into the system. The user accesses the homepage and enters their username and password on the login screen. This inputs the user's authentication information, and the system recognizes the user.

[0485] Step 2:

[0486] The user clicks the "Upload Video" button. This causes the device to display a file selection dialog. The user selects the video file they want to analyze. The path of the selected video file is obtained as input. The device then performs the specific action of sending the video file to the server.

[0487] Step 3:

[0488] The server stores the received video file in a temporary storage area. The video file is given as input, and the path to the temporary storage area is obtained as output. This prepares the file for subsequent analysis processing to be performed quickly.

[0489] Step 4:

[0490] The server launches the generation AI module, which receives the video file as input and begins analysis. During this process, the following specific data processing steps are performed:

[0491] Extract the audio data and convert it to text using a speech recognition engine (e.g., Google Cloud Speech-to-Text). The audio data is taken as input and the converted text data is taken as output.

[0492] It uses an image recognition engine (e.g., OpenCV or TensorFlow) to analyze video frames and detect specific actions or changes. The frame data is given as input, and the detected event information is obtained as output.

[0493] The audio and video data are integrated to detect specific events. The integrated data is obtained as input, and the identified event information is obtained as output.

[0494] Step 5:

[0495] The server generates annotations for specific events based on the analysis results. The analysis results (audio text, image event information) are given as input, and annotation data (event type, timing, description) is obtained as output.

[0496] Step 6:

[0497] The server stores the generated annotations in a database. The annotation data is given as input, and a reference to the stored data is obtained as output, allowing for later user review and correction.

[0498] Step 7:

[0499] The terminal provides the user with an interface for displaying the analysis results. The annotation data is given as input and displayed in the interface in a format that the user can view.

[0500] Step 8:

[0501] The user can check the displayed annotations and make corrections as necessary, such as modifying the annotation content or timestamp, adding new annotations, or deleting unnecessary annotations. The corrected annotation data is then output.

[0502] Step 9:

[0503] Once the user has completed the corrections, they submit the confirmed annotation data to the server, which then passes the corrected annotation data as input.

[0504] Step 10:

[0505] The server exports the final annotated video. The modified annotation data and the video file are given as input, and the annotated video file is obtained as output. The server then generates a public link. The public link is obtained as output.

[0506] Step 11:

[0507] The device provides the user with a public link, which the user can share with other viewers, allowing viewers to quickly jump to a specific event in the video.

[0508] (Application example 1)

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

[0510] In the current advertising production and management process, manually analyzing and annotating specific events in advertising videos is time-consuming and labor-intensive. This makes it difficult for advertising creators and marketers to create and distribute effective advertising content. In particular, it is difficult to quickly identify and appropriately annotate important scenes and promotional information that will attract viewers' attention. Therefore, there is a need for a system that can efficiently manage advertising content by automating the analysis and annotation of advertising videos.

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

[0512] In this invention, the server includes means for uploading video files, means for analyzing the uploaded video files, means for annotating specific events based on the analysis results, means for generating annotations and saving them in a database, means for exporting the annotated video and generating a public link, and means for automating the analysis and annotation of advertising videos, thereby enabling the rapid identification of important scenes in the production of advertising content and the efficient management and distribution of the content.

[0513] "Means for uploading video files" refers to an interface or function that allows users to upload advertising videos to the system.

[0514] "Means for analyzing uploaded video files" refers to programs or algorithms for extracting and analyzing audio data and video frames from video files stored on a server.

[0515] "Means for annotating specific events based on analysis results" is a function that identifies important events or scenes based on analyzed data and adds corresponding tags and descriptions.

[0516] "Means for generating annotations and saving them in a database" refers to a function for storing automatically generated annotation information in a database.

[0517] "Means for exporting videos with annotations and generating public links" refers to a function that outputs the final annotated video file to the outside world and generates a link for referencing it.

[0518] "Means for automating the analysis and annotation of advertising videos" refers to technologies and systems that automatically detect important scenes and information contained in advertising videos and provide appropriate annotations for them.

[0519] The embodiment of this invention is a system for automating the analysis and annotation of advertising videos. This system uploads video files, analyzes them, generates annotations, saves them, exports them, and generates public links. Specifically, the system is composed of a server, a user terminal, and software to support these.

[0520] First, the user logs in to the system using their device and uploads the advertisement video file to the system. The device displays a file selection dialog, allowing the user to select the video file they want to analyze. The selected video file is sent from the device to the server and stored in a temporary storage area.

[0521] The server analyzes the received video files using the Google Cloud Vision API, analyzing the video frames to detect specific actions and changes. It also uses the SpeechRecognition module to extract audio data, which is then converted into text by a speech recognition engine. This allows the server to integrate the results of video frame analysis and speech recognition to detect specific events.

[0522] Once the analysis is complete, the server generates annotations for specific events based on the analysis results, including the event type, timing, and description, and stores this annotation information in a database.

[0523] Once saved, the annotations are displayed to the user via their device. The user can review the displayed annotations and, if necessary, modify the content and timestamp, add new annotations, or delete unnecessary annotations. After the user has completed the review and modifications, the server exports the final annotated video and generates a public link. The user can then share this link with viewers, who can then quickly jump to specific event parts by clicking the link.

[0524] As a specific example, a marketer at an advertising agency can analyze a new product introduction video and automatically detect specific episodes (e.g., the start time of a promotion or the timing of explaining specific parts of the product) to make only the important information easily accessible to viewers. When generating such annotations, a prompt such as "Analyze a new product launch video including the timing of product introductions and annotate important scenes" can be input to the generative AI model.

[0525] This invention automates the analysis and annotation of advertising videos, significantly improving the efficiency of advertising content production, management, and distribution, enabling advertising creators and marketers to effectively manage videos that capture viewers' attention.

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

[0527] Step 1: Upload your video file

[0528] The user logs into the system using a terminal and clicks the "Upload Video" button.

[0529] The terminal displays a file selection dialog box and prompts the user to select the video file they wish to analyze.

[0530] When the user selects a video file, the terminal transmits the selected video file to the server.

[0531] Input: A video file specified by the user.

[0532] Output: The video file sent to the server.

[0533] Step 2: Prepare the video file for analysis

[0534] The server stores the received video file in a temporary storage area.

[0535] The server launches the generative AI module and speech recognition engine to prepare for analysis.

[0536] Input: The video file sent to the server.

[0537] Output: A saved video file.

[0538] Step 3: Extract audio data and convert it to text

[0539] The server extracts audio data from the video file and converts the audio into text data using the SpeechRecognition module.

[0540] Input: The audio portion of the video file.

[0541] Output: Text data converted from audio data.

[0542] Step 4: Analyzing the video frames

[0543] The server uses the Google Cloud Vision API to analyze the video frames, capturing frames every five seconds and analyzing them to detect specific movements or changes.

[0544] Input: Frames from a video file.

[0545] Output: Parsed frame data.

[0546] Step 5: Integrating audio and video data

[0547] The server integrates the audio and video data and detects specific events (e.g., product introductions, promotions, etc.).

[0548] Input: Text data and frame data.

[0549] Output: Detected event information.

[0550] Step 6: Generate annotations and save them to the database

[0551] The server generates annotations based on the detected event information, including the type, timing, and description of the event.

[0552] The server stores the generated annotations in a database.

[0553] Input: The detected event information.

[0554] Output: Annotations stored in a database.

[0555] Step 7: View and modify annotation results

[0556] The terminal displays the analysis results (annotations) to the user, who can then modify the content and timestamp, add new annotations, and delete unnecessary annotations.

[0557] Input: Annotations stored in a database.

[0558] Output: The final annotation data as modified by the user.

[0559] Step 8: Exporting and linking your annotated video

[0560] Once the user has completed reviewing the annotations, the server exports the final annotated video and generates a link for publication.

[0561] The terminal provides the user with a public link that the user can share with their audience.

[0562] Input: Final annotation data.

[0563] Output: Generate and provide a link for publication.

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

[0565] A system embodying the present invention comprises the following processing steps: a means for uploading video files, a means for analyzing the uploaded video files, a means for annotating specific events based on the analysis results, a means for generating annotations and saving them in a database, and a means for exporting the annotated video and generating a link for publication. Furthermore, the system incorporates an emotion engine that recognizes user emotions based on the content of the video.

[0566] Specific processing flow and operation

[0567] The user logs in to the system and clicks the "Upload Video" button on the home page. The terminal displays a file selection dialog, allowing the user to select the video file they want to analyze. The selected video file is then sent from the terminal to the server.

[0568] The server then stores the received video file in a temporary storage area. Once the storage is complete, it launches the generative AI module and begins analyzing the video file. The generative AI analyzes the audio and visual data of the video to recognize specific events and the user's emotions.

[0569] The analysis begins by extracting audio data and converting it to text using a speech recognition engine. Then, video frames are analyzed to detect specific actions or changes. An image recognition engine is used to detect specific events (e.g., facial recognition, object recognition), and audio and video data are integrated to detect specific events.

[0570] Furthermore, the system utilizes an emotion engine to recognize the user's emotional state, which determines whether the user is in a positive, negative, or neutral emotional state through voice tone and facial expression analysis. This emotional information is also integrated into the analysis data.

[0571] Once the analysis results are obtained, the server generates annotations for specific events, including the event type, event timing, the user's emotional state, and a brief description. The generated annotations are stored in a database.

[0572] Once the data has been saved, the device provides the user with an interface to display the analysis results. The user can review the displayed annotations and make any necessary modifications, including modifying the annotation content and timestamp, adding the user's emotional state, adding new annotations, and deleting unnecessary annotations.

[0573] After completing the verification and correction, the user sends the verified annotation data to the server, which then exports the final annotated video. A public link is then generated, which the device provides to the user, who can then share it with other viewers. Viewers can access the public link to quickly jump to specific parts of the event.

[0574] Specific examples

[0575] For example, if a user uploads a 10-minute soccer game video, it will be processed as follows:

[0576] 1. A user uploads a soccer match video to the system.

[0577] 2. The server receives the video and calls the generation AI module and emotion engine to begin analysis. The analysis detects events such as "Player B scores a goal at 3 minutes 15 seconds," "a foul occurs at 7 minutes 40 seconds," and "the crowd cheers at 5 minutes 00 seconds," as well as the user's emotional information related to these events (e.g., positive emotions during cheering).

[0578] 3. The server generates annotations based on the detected event information and user emotion information, and stores data such as "3:15 - Player B scores a goal (user emotion: excitement)", "7:40 - Foul (user emotion: dissatisfaction)", and "5:00 - Crowd cheers (user emotion: joy)" in the database.

[0579] 4. The terminal displays the analysis results (annotations) to the user, who then checks and modifies the displayed annotations.

[0580] 5. Once the user completes the verification, the server exports the final annotated video and generates a link for publication.

[0581] 6. Users can use this link to share the video with their viewers, who can access the public link and easily jump to specific parts of the event.

[0582] This invention automates video analysis and annotation, providing an efficient video viewing and production environment for both viewers and creators. Furthermore, by recognizing user emotions, it can make the viewer experience richer and more intuitive.

[0583] The processing flow will be explained below.

[0584] Step 1:

[0585] The user logs into the system and clicks the "Upload Video" button on the home page.

[0586] Step 2:

[0587] The device displays a file selection dialog, and the user selects the video file they want to analyze. The selected video file is then sent from the device to the server.

[0588] Step 3:

[0589] The server stores the received video file in a temporary storage area.

[0590] Step 4:

[0591] The server launches the generative AI module and emotion engine and begins analyzing the video file.

[0592] Step 5:

[0593] The server extracts audio data from the video and converts it into text using a speech recognition engine.

[0594] Step 6:

[0595] The server analyzes the video frames to detect specific actions and changes, using an image recognition engine to detect specific events (e.g., human face recognition, object recognition).

[0596] Step 7:

[0597] The server merges the audio and video data to detect specific events, which are then time-stamped and identified as the type of event.

[0598] Step 8:

[0599] The server uses an emotion engine to recognize the user's emotional state based on the video content and the user's reactions. The emotion engine determines whether the user's emotion is positive, negative, or neutral based on voice tone and facial expression analysis.

[0600] Step 9:

[0601] The server generates annotations for specific events based on the analysis results and emotional information, including the event type, event timing, the user's emotional state, and a brief description.

[0602] Step 10:

[0603] The server stores the generated annotations in a database.

[0604] Step 11:

[0605] The terminal provides the user with an interface for displaying the analysis results.

[0606] Step 12:

[0607] Users can review the displayed annotations and make any necessary modifications, including modifying the annotation content or timestamp, adding or changing the user's emotional state, adding new annotations, or deleting unnecessary annotations.

[0608] Step 13:

[0609] Once the user has finished checking the annotations, the terminal sends the checked data to the server.

[0610] Step 14:

[0611] The server exports the final annotated video.

[0612] Step 15:

[0613] The server generates a public link for the exported video.

[0614] Step 16:

[0615] The device provides the user with a public link that the user can share with other viewers, who can access the link and quickly jump to a specific part of the event.

[0616] Example 2

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

[0618] Previous video analysis and annotation systems only detected specific events and actions, but were unable to analyze the viewer's or user's emotional state and generate annotations based on it. This limited the video viewing and production environment, lacking additional information to make the viewer's experience richer and more intuitive.

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

[0620] In this invention, the server includes means for uploading video files, means for analyzing the uploaded video files, means for annotating specific events based on the analysis results, means for generating annotations and saving them in a database, means for exporting the annotated video and generating a public link, and means for recognizing user emotions. This automates the video analysis and annotation work and generates annotations that include the user's emotional state, making it possible to provide a richer and more intuitive viewer experience.

[0621] A "video file" is a multimedia data format containing audio and video data prepared for uploading by a user.

[0622] "Means for uploading" refers to a mechanism that provides a function for users to send video files to the system and transfers data from the terminal to the server.

[0623] "Means for analyzing" refers to the algorithms and engines used by the server to process the video files received and analyze the audio and video data.

[0624] "Means of annotation" refers to the ability to add annotations about specific events, actions, or the user's emotional state based on the analyzed data.

[0625] "Means for storing in a database" refers to a mechanism that provides a repository for the organized management of generated annotations and for efficient search and retrieval when needed.

[0626] "Means for exporting" refers to the function of generating the final annotated video file and outputting it externally.

[0627] "Means to generate a public link" refers to the ability to create a URL that will take users to the final annotated video, allowing them to easily share it with other viewers.

[0628] A "speech recognition engine" is a software algorithm for converting voice data into text data.

[0629] An "image recognition engine" is a software algorithm that analyzes each frame of video and detects specific actions or changes.

[0630] An "emotion engine" is a software algorithm that analyzes a user's audio and video data to recognize the user's emotional state.

[0631] Annotations are metadata added based on the analysis results, including the type, timing, and description of an event, as well as the user's emotional state.

[0632] A "public link" is a URL that is set up so that other viewers can access the final annotated video.

[0633] "User's emotional state" refers to information indicating the user's emotions, such as positive, negative, or neutral, while watching a video.

[0634] The system for implementing this invention is configured using the following main hardware and software components: The system uploads video files, analyzes them, generates annotations, saves them to a database, exports them, and generates public links while exchanging data between users, terminals, and a server.

[0635] Hardware and Software Configuration

[0636] User steps:

[0637] The user logs in to the system and clicks the "Upload Video" button on the home page. This action causes the device to display a file selection dialog, allowing the user to select the video file they want to analyze. The selected video file is then sent from the device to the server.

[0638] Processing steps on the server:

[0639] The server stores the received video file in a temporary storage area. Once the storage is complete, the server launches the generative AI module and begins analyzing the video file. This analysis is performed on both audio and video data.

[0640] Video analysis procedure

[0641] 1. Audio data extraction and analysis:

[0642] The server extracts audio data from the video file and converts it into text using a speech recognition engine. Specifically, the speech recognition engine analyzes the audio waveform and generates corresponding text based on a language model.

[0643] 2. Video data analysis:

[0644] The server analyzes each frame of video and uses an image recognition engine to detect specific actions and changes (e.g., facial recognition, object recognition), thereby identifying significant events within the video data.

[0645] 3. Audio and video integration:

[0646] The analyzed audio and video data are combined to detect specific events, such as "a player scores a goal at 3 minutes and 15 seconds."

[0647] User Emotion Recognition

[0648] The server uses an emotion engine to recognize the user's emotional state. The emotion engine analyzes voice tone and facial expressions to determine whether the user is in a positive, negative, or neutral emotional state. This emotional information is also integrated into the analysis data.

[0649] Creating and saving annotations

[0650] Once the analysis results are obtained, the server generates annotations for specific events, including the event type, event timing, the user's emotional state, and a brief description. The generated annotations are stored in a database.

[0651] Displaying and modifying analysis results

[0652] Once the data has been saved, the device provides the user with an interface to display the analysis results. The user can review the displayed annotations and make any necessary modifications, including modifying the annotation content and timestamp, adding the user's emotional state, adding new annotations, and deleting unnecessary annotations.

[0653] Exporting the final data and generating a public link

[0654] Once the user has finished checking the annotations, the server exports the final annotated video. The server then generates a public link, which the device provides to the user. The user can then share this link with other viewers. Viewers can quickly jump to specific parts of the event by accessing the public link.

[0655] Examples of concrete examples and prompts

[0656] For example, if a user uploads a 10 minute soccer game video, it will be processed as follows:

[0657] 1. A user uploads a soccer match video to the system.

[0658] 2. The server receives the video and calls the generation AI module and emotion engine to begin analysis. The analysis detects events such as "a player scores a goal at 3 minutes 15 seconds," "a foul occurs at 7 minutes 40 seconds," and "the crowd cheers at 5 minutes 00 seconds," as well as the user's emotional information associated with those events.

[0659] 3. The server generates annotations based on the detected event information and user emotion information, and stores data such as "3:15 - Player B scores a goal (user emotion: excitement)", "7:40 - Foul (user emotion: dissatisfaction)", and "5:00 - Crowd cheers (user emotion: joy)" in the database.

[0660] 4. The terminal displays the analysis results to the user, who then checks and modifies the displayed annotations.

[0661] 5. Once the user completes the verification, the server exports the final annotated video and generates a link for publication.

[0662] 6. Users can use this link to share the video with their viewers, who can access the public link and easily jump to specific parts of the event.

[0663] Example prompt sentence:

[0664] "Analyze a 10-minute soccer game video, detect specific events (e.g., goals, fouls, crowd cheers) and user emotions (excitement, frustration, joy), and generate annotations."

[0665] The system automates video analysis and annotation tasks, providing an efficient video viewing and production environment while making the viewer experience richer and more intuitive.

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

[0667] Step 1:

[0668] The user logs in to the system and clicks the "Upload Video" button on the home page. The terminal displays a file selection dialog, allowing the user to select the video file they want to analyze. The input is the video file selected by the user (e.g., "soccer_game.mp4"), and the output is the selected video file being sent from the terminal to the server.

[0669] Step 2:

[0670] The server saves the received video file in a temporary storage area. The input is the video file sent from the device, and the output is the file being saved in the temporary storage area. Specifically, "soccer_game.mp4" is stored in the save directory "temp_storage".

[0671] Step 3:

[0672] Once saving is complete, the server launches the generation AI module and begins analyzing the video file. The input is the saved video file "soccer_game.mp4," and the output is the analysis results (analysis results of audio and video data). Specifically, "generateAI_module.py" is executed to begin the analysis process.

[0673] Step 4:

[0674] The server extracts audio data from the video file and converts the audio to text using a speech recognition engine. The input is the audio data extracted from the video file, and the output is the converted text. Specifically, the speech recognition engine analyzes the audio waveform and generates text data such as "kick_sound."

[0675] Step 5:

[0676] The server analyzes each frame of the video and uses an image recognition engine to detect specific actions and changes. The input is the video frame data, and the output is the detected event (e.g., the moment a player scores a goal). Specifically, the image recognition engine analyzes the pixel data for each frame and identifies goal scenes.

[0677] Step 6:

[0678] The server integrates audio and video data to detect specific events. The input is the converted audio data and analyzed image data, and the output is the integrated event information (e.g., "A player scores a goal at 3 minutes and 15 seconds").

[0679] Step 7:

[0680] The server uses an emotion engine to recognize the user's emotional state. The input is audio tone and video data, and the output is the user's emotional information (e.g., excitement, joy). Specifically, the emotion engine detects positive emotions through audio tone analysis and facial expression analysis.

[0681] Step 8:

[0682] The server generates annotations for specific events based on the analysis results. The input is the integrated event information and the user's emotion information, and the output is the generated annotation (e.g., "3:15 - Player B scores a goal (user's emotion: excited)").

[0683] Step 9:

[0684] The server saves the generated annotations in a database. The input is the generated annotation data, and the output is the annotations saved in the database. Specifically, the annotations are saved in "database_annotations".

[0685] Step 10:

[0686] Once the data has been saved, the device provides an interface for displaying the analysis results to the user. The input is the annotation data retrieved from the database, and the output is a list of annotations displayed to the user. The user can review the displayed annotations and make corrections if necessary.

[0687] Step 11:

[0688] Once the user has completed the annotation review, the server exports the final annotated video. The input is the modified annotation data and the original video file, and the output is the final annotated video.

[0689] Step 12:

[0690] The server generates a public link, which the device provides to the user. The input is the exported annotated video, and the output is the generated public link (e.g., "https: / / example.com / shared / video12345"), which the user can use to share the video with their viewers.

[0691] (Application example 2)

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

[0693] In recent years, it has become difficult to instantly grasp specific scenes and user emotions in the vast amount of video content. Furthermore, there is a lack of technology that can help video viewers find specific scenes and reflect user emotions in review videos. Therefore, there is a need for a system that can automatically detect specific scenes, recognize the user's emotional state, and share the annotated footage.

[0694] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for uploading video files, means for analyzing the uploaded video files and performing emotion recognition, means for annotating specific events and adding emotional states based on the analysis results, means for generating annotations and saving them in a database, and means for exporting the annotated video and generating a public link. This allows users to easily annotate specific scenes in video content and the emotions they felt at the time, and share them with viewers.

[0695] The "means for uploading video files" is an interface that allows a user to send video files from a local terminal to the server.

[0696] "Means for analyzing uploaded video files and performing emotion recognition" refers to an engine (e.g., an emotion recognition engine) that analyzes the audio and video of video files uploaded to a server and recognizes the user's emotions contained therein.

[0697] "Means for annotating specific events and adding emotional states based on analysis results" refers to a process for annotating specific events or scenes in a video based on analysis results and adding the user's associated emotional state.

[0698] The "means for generating annotations and storing them in a database" refers to a function for storing the generated annotations in a database, where each annotation includes the type, timing, description, and emotional state of an event.

[0699] "Means for exporting videos with annotations and generating public links" refers to the functionality for exporting the final video file with annotations and generating a public link that viewers can access.

[0700] A "voice recognition engine" is a technology for converting voice data extracted from video files into text data.

[0701] "Means for integrating E-visual data and emotional state" refers to a process for assembling audio data, video data, and the emotional state recognized by the emotion recognition engine into a single data set.

[0702] "Type of event, timing of event, description of event, and user's emotional state" refers to information that indicates the specific content of the event, such as what type of event it was (e.g., goal, foul, etc.), when the event occurred, a brief description of the event, and the user's emotional state at the time (e.g., joy, surprise, etc.).

[0703] This invention describes a system that specifically implements a video review app with sentiment analysis, including means for uploading video files, analyzing them, generating annotations, and exporting them.

[0704] Hardware and software used

[0705] The hardware and software configuration used is as follows:

[0706] 1. Hardware

[0707] Server: A high-performance server for analyzing video files and storing data.

[0708] Device: The device where the user uploads video files and checks the analysis results (e.g., smartphone, PC)

[0709] 2. Software

[0710] Video upload interface: A web interface or application that allows users to upload video files from their devices to the server.

[0711] Generative AI model: An artificial intelligence model for analyzing video files

[0712] Speech recognition engine: Software that extracts audio data from video files and converts it into text

[0713] Image Recognition Engine: Software that analyzes video frames to detect specific actions and changes

[0714] Emotion Recognition Engine: Software that analyzes the user's emotional state

[0715] Database: A database system for storing the generated annotation data

[0716] Export module: Software to export annotated video files and generate a publishing link

[0717] Processing flow

[0718] 1. Upload your video file:

[0719] Users use the device to upload review videos, either through a web interface or a smartphone app.

[0720] 2. Video Analysis:

[0721] Uploaded video files are stored on a server and analyzed by a generative AI model. A speech recognition engine converts audio data into text, an image recognition engine analyzes video frames to detect specific events, and an emotion recognition engine analyzes the user's emotional state and integrates it with the audio and video data.

[0722] 3. Generate annotations:

[0723] Annotations are generated based on the detected events and emotional states, including the event type, timing, description, and the user's emotional state.

[0724] 4. Check and correct annotations:

[0725] Users can use their devices to review and modify the generated annotations, which are then sent to the server and stored in a database.

[0726] 5. Export and share:

[0727] The final annotated video is exported and a public link is generated that users can use to share the video with other viewers.

[0728] Specific examples

[0729] For example, if a user uploads a video review of an episode of a TV show, the process goes like this:

[0730] 1. Upload your video file:

[0731] A user opens the app, clicks the "Upload Video" button, and selects a review video file.

[0732] 2. Video Analysis:

[0733] The system receives a video file, detects specific scenes (e.g., surprising plot twists, emotional moments), and generates annotations of the emotions in those scenes (e.g., surprise, emotion).

[0734] 3. Export and share:

[0735] Once the analysis is complete, a link to publish the annotated video is displayed, and the user can share this link with other viewers.

[0736] Prompt Sentence Examples

[0737] Analyze drama review videos and generate annotations for specific scenes (e.g., surprising plot twists, moving moments) and their associated emotions (e.g., surprise, emotion).

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

[0739] Step 1:

[0740] The user uses the device to upload a video file. Specifically, they click the "Upload Video" button in the application and select a review video file from the file selection dialog. The uploaded file is sent to the server and saved in a temporary storage area. The input is the video file selected by the user, and the output is the video file saved on the server.

[0741] Step 2:

[0742] When the server receives the video file, it launches the generative AI model to begin analysis. First, it extracts audio data from the video file and converts it to text using a speech recognition engine. The input is the video file stored on the server, and the output is text data converted from the audio data. Specifically, the audio data is extracted and converted into text.

[0743] Step 3:

[0744] The server then analyzes the video frames, using an image recognition engine to detect specific actions and changes and identify specific events within the video. The input is each frame of the video file, and the output is the detected event information. Specifically, image recognition is performed on each frame.

[0745] Step 4:

[0746] The server uses an emotion recognition engine to analyze the user's emotions from the audio and video data. This identifies emotional states such as positive, negative, and neutral. The input is audio and video data, and the output is emotional state data. Specific operations include analyzing the tone of the voice and facial expressions.

[0747] Step 5:

[0748] The server integrates the analysis results and generates annotations for specific events. The annotations, including the event type, timing, description, and emotional state, are stored in a database. The inputs are audio data, video data, and emotional state data, and the output is annotation data. The specific operations are data integration and annotation generation.

[0749] Step 6:

[0750] The user uses a terminal to access an interface for reviewing and correcting the generated annotations. The annotation content, timestamp, and emotional state can be modified as needed. The input is the generated annotation data, and the output is the corrected annotation data. Specific operations include reviewing and correcting the annotations in the user interface.

[0751] Step 7:

[0752] The server exports the final annotated video and generates a public link that users can use to share the video with other viewers. The input is the modified annotation data, and the output is the public link. The specific operations are exporting the video and generating the link.

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

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

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

[0756] [Third embodiment]

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

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

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

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

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

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

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

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

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

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

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

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

[0769] A system for carrying out the present invention is realized by the processing of the following program. This system includes means for uploading video files, means for analyzing the uploaded video files, means for annotating specific events based on the analysis results, means for generating annotations and saving them in a database, and means for exporting the annotated video and generating a public link.

[0770] Specific processing flow and operation

[0771] First, the user logs in to the system and clicks the "Upload Video" button on the home page. The terminal then displays a file selection dialog, allowing the user to select the video file they want to analyze. The selected video file is then sent from the terminal to the server.

[0772] The server then stores the received video file in a temporary storage area. After this, it launches the generative AI module and begins analyzing the video file. The analysis process first extracts audio data and converts it into text using a speech recognition engine. Next, it analyzes video frames to detect specific actions and changes, and identifies events using an image recognition engine. Finally, it combines the audio and video data to detect specific events.

[0773] Once the analysis is complete, the server generates annotations for specific events based on the analysis results, including the event type, timing, and a brief description, and stores these annotations in a database.

[0774] Once the data is saved, the device provides the user with an interface to display the analysis results. The user can review the displayed annotations and make any necessary corrections, including modifying the annotation content and timestamp, adding new annotations, and deleting unnecessary annotations.

[0775] After completing the verification and correction, the user sends the verified annotation data to the server, which then exports the final annotated video and generates a public link. The device provides the user with this public link, which the user can share with other viewers. Viewers can access the public link to quickly jump to specific event parts.

[0776] Specific examples

[0777] For example, if a user uploads a 10-minute soccer game video, it will be processed as follows:

[0778] 1. A user uploads a soccer match video to the system.

[0779] 2. The server receives the video and calls the generation AI module to begin analysis, detecting events such as "Player B scores a goal at 3 minutes 15 seconds" and "A foul occurs at 7 minutes 40 seconds."

[0780] 3. The server generates annotations based on the detected event information and stores data such as "3:15 - Player B scores a goal" and "7:40 - Foul" in the database.

[0781] 4. The terminal displays the analysis results (annotations) to the user, who then checks and modifies the displayed annotations.

[0782] 5. Once the user completes the verification, the server exports the final annotated video and generates a link for publication.

[0783] 6. Users can use this link to share the video with their viewers, who can then easily jump to a specific part of the event.

[0784] The present invention automates video analysis and annotation, providing an efficient video viewing and production environment for both viewers and creators.

[0785] The processing flow will be explained below.

[0786] Step 1:

[0787] The user logs into the system and clicks the "Upload Video" button on the home page.

[0788] Step 2:

[0789] The device displays a file selection dialog, and the user selects the video file they want to analyze. The selected video file is then sent from the device to the server.

[0790] Step 3:

[0791] The server stores the received video file in a temporary storage area.

[0792] Step 4:

[0793] The server launches the generative AI module and begins analyzing the video file.

[0794] Step 5:

[0795] The server extracts audio data from the video and converts it into text using a speech recognition engine.

[0796] Step 6:

[0797] The server analyzes video frames to detect specific actions and changes, and also uses an image recognition engine to detect specific events (e.g., human face recognition, object recognition).

[0798] Step 7:

[0799] The server merges the audio and video data to detect specific events, which are then time-stamped and identified as the type of event.

[0800] Step 8:

[0801] The server generates annotations for specific events based on the analysis results. The annotations include the event type, event timing, and a brief description of the event. The generated annotations are stored in a database.

[0802] Step 9:

[0803] The terminal provides the user with an interface for displaying the analysis results.

[0804] Step 10:

[0805] Users can review the displayed annotations and make corrections as necessary, such as modifying the annotation content and timestamp, adding new annotations, or deleting unnecessary annotations.

[0806] Step 11:

[0807] Once the user has finished checking the annotations, the terminal sends the checked data to the server.

[0808] Step 12:

[0809] The server exports the final annotated video.

[0810] Step 13:

[0811] The server generates a public link for the exported video.

[0812] Step 14:

[0813] The device provides the user with a public link that the user can share with other viewers, who can then access the link and quickly jump to a specific part of the event.

[0814] Example 1

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

[0816] Traditionally, analyzing and annotating video files has often been done manually, requiring a great deal of time and effort. Furthermore, the accuracy and consistency of the analysis results depended on the skill of the user, so high-quality results were not always obtained. As a result, viewers and creators were unable to enjoy an efficient video viewing and production environment.

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

[0818] In this invention, the server includes a means for temporarily storing video files, a means for launching a generation AI module to analyze the video files, and a means for generating annotations for specific events based on the analysis results. This automates the manual analysis and annotation process, enabling the rapid generation of highly accurate and consistent results. As a result, it is possible to provide an efficient video viewing and production environment for both viewers and creators.

[0819] "User" refers to the person who operates this system, uploads video files, and checks and modifies the analysis results.

[0820] A "terminal" is a device that connects a user and a server, receives user input, and transmits data to the server.

[0821] "Server" refers to a central processing device that stores video files, launches a generative AI module to perform analysis, and generates annotations based on the analysis results.

[0822] "Video file" refers to video data uploaded by a user to the system, and is the data that is subject to analysis and annotation.

[0823] A "generative AI module" is a program that uses artificial intelligence (AI) to analyze video files, and includes a voice recognition engine and an image recognition engine.

[0824] "Speech recognition engine" refers to software or a system for converting audio data extracted from a video file into text.

[0825] "Image recognition engine" refers to software or a system that analyzes video frames and detects specific actions or changes.

[0826] Annotations are tags or labels generated based on the analysis results, and are data that includes the type, timing, and description of an event.

[0827] "Database" refers to a digital storage system for storing generated annotations.

[0828] "Public Link" refers to the URL or web address where you will share your final annotated video with your viewers.

[0829] MODE FOR CARRYING OUT THE INVENTION

[0830] The system for implementing this invention automates a series of processes that analyzes video files and generates, modifies, and publishes annotations for specific events. This system is realized through the interaction between a server, a terminal, and a user.

[0831] First, the user logs in to the system and clicks the "Upload Video" button on the home page. The terminal then displays a file selection dialog, allowing the user to select the video file they want to analyze. The selected video file is then sent from the terminal to the server.

[0832] The server stores the received video file in a temporary storage area. After this, it launches the AI ​​generation module and begins analyzing the video file. The analysis includes the following specific processes:

[0833] 1. Extract the audio data and convert it to text using a speech recognition engine (e.g., Google Cloud Speech-to-Text).

[0834] 2. Use an image recognition engine (e.g., OpenCV or TensorFlow) to analyze video frames and detect specific actions or changes.

[0835] 3. Integrate audio and video data to detect specific events.

[0836] Once the analysis is complete, the server generates annotations for specific events based on the analysis results, including the event type, timing, and a brief description, and stores these annotations in a database.

[0837] Once the data is saved, the device provides the user with an interface to display the analysis results. The user can review the displayed annotations and make any necessary corrections, including modifying the annotation content and timestamp, adding new annotations, and deleting unnecessary annotations.

[0838] After completing the verification and correction, the user submits the verified annotation data to the server, which then exports the final annotated video and generates a public link. The device provides the user with this public link, which the user can share with other viewers. Viewers can access the public link to quickly jump to specific event parts.

[0839] For example, if a user uploads a 10-minute soccer game video, the following happens:

[0840] 1. A user uploads a soccer match video to the system.

[0841] 2. The server receives the video and calls the generation AI module to begin analysis, detecting events such as "Player B scores a goal at 3 minutes 15 seconds" and "A foul occurs at 7 minutes 40 seconds."

[0842] 3. The server generates annotations based on the detected event information and stores data such as "3:15 - Player B scores a goal" and "7:40 - Foul" in the database.

[0843] 4. The terminal displays the analysis results (annotations) to the user, who can then confirm and correct the annotations.

[0844] 5. Once the user completes the verification, the server exports the final annotated video and generates a link for publication.

[0845] 6. Users can use this link to share the video with their viewers, who can then access the link and easily jump to a specific part of the event.

[0846] Example of an input prompt for a generative AI model:

[0847] "Please automatically detect goal and foul scenes from uploaded soccer match videos and generate annotations with their times and descriptions."

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

[0849] System program processing flow

[0850] Step 1:

[0851] A user logs into the system. The user accesses the homepage and enters their username and password on the login screen. This inputs the user's authentication information, and the system recognizes the user.

[0852] Step 2:

[0853] The user clicks the "Upload Video" button. This causes the device to display a file selection dialog. The user selects the video file they want to analyze. The path of the selected video file is obtained as input. The device then performs the specific action of sending the video file to the server.

[0854] Step 3:

[0855] The server stores the received video file in a temporary storage area. The video file is given as input, and the path to the temporary storage area is obtained as output. This prepares the file for subsequent analysis processing to be performed quickly.

[0856] Step 4:

[0857] The server launches the generation AI module, which receives the video file as input and begins analysis. During this process, the following specific data processing steps are performed:

[0858] Extract the audio data and convert it to text using a speech recognition engine (e.g., Google Cloud Speech-to-Text). The audio data is taken as input and the converted text data is taken as output.

[0859] It uses an image recognition engine (e.g., OpenCV or TensorFlow) to analyze video frames and detect specific actions or changes. The frame data is given as input, and the detected event information is obtained as output.

[0860] The audio and video data are integrated to detect specific events. The integrated data is obtained as input, and the identified event information is obtained as output.

[0861] Step 5:

[0862] The server generates annotations for specific events based on the analysis results. The analysis results (audio text, image event information) are given as input, and annotation data (event type, timing, description) is obtained as output.

[0863] Step 6:

[0864] The server stores the generated annotations in a database. The annotation data is given as input, and a reference to the stored data is obtained as output, allowing for later user review and correction.

[0865] Step 7:

[0866] The terminal provides the user with an interface for displaying the analysis results. The annotation data is given as input and displayed in the interface in a format that the user can view.

[0867] Step 8:

[0868] The user can check the displayed annotations and make corrections as necessary, such as modifying the annotation content or timestamp, adding new annotations, or deleting unnecessary annotations. The corrected annotation data is then output.

[0869] Step 9:

[0870] Once the user has completed the corrections, they submit the confirmed annotation data to the server, which then passes the corrected annotation data as input.

[0871] Step 10:

[0872] The server exports the final annotated video. The modified annotation data and the video file are given as input, and the annotated video file is obtained as output. The server then generates a public link. The public link is obtained as output.

[0873] Step 11:

[0874] The device provides the user with a public link, which the user can share with other viewers, allowing viewers to quickly jump to a specific event in the video.

[0875] (Application example 1)

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

[0877] In the current advertising production and management process, manually analyzing and annotating specific events in advertising videos is time-consuming and labor-intensive. This makes it difficult for advertising creators and marketers to create and distribute effective advertising content. In particular, it is difficult to quickly identify and appropriately annotate important scenes and promotional information that will attract viewers' attention. Therefore, there is a need for a system that can efficiently manage advertising content by automating the analysis and annotation of advertising videos.

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

[0879] In this invention, the server includes means for uploading video files, means for analyzing the uploaded video files, means for annotating specific events based on the analysis results, means for generating annotations and saving them in a database, means for exporting the annotated video and generating a public link, and means for automating the analysis and annotation of advertising videos, thereby enabling the rapid identification of important scenes in the production of advertising content and the efficient management and distribution of the content.

[0880] "Means for uploading video files" refers to an interface or function that allows users to upload advertising videos to the system.

[0881] "Means for analyzing uploaded video files" refers to programs or algorithms for extracting and analyzing audio data and video frames from video files stored on a server.

[0882] "Means for annotating specific events based on analysis results" is a function that identifies important events or scenes based on analyzed data and adds corresponding tags and descriptions.

[0883] "Means for generating annotations and saving them in a database" refers to a function for storing automatically generated annotation information in a database.

[0884] "Means for exporting videos with annotations and generating public links" refers to a function that outputs the final annotated video file to the outside world and generates a link for referencing it.

[0885] "Means for automating the analysis and annotation of advertising videos" refers to technologies and systems that automatically detect important scenes and information contained in advertising videos and provide appropriate annotations for them.

[0886] The embodiment of this invention is a system for automating the analysis and annotation of advertising videos. This system uploads video files, analyzes them, generates annotations, saves them, exports them, and generates public links. Specifically, the system is composed of a server, a user terminal, and software to support these.

[0887] First, the user logs in to the system using their device and uploads the advertisement video file to the system. The device displays a file selection dialog, allowing the user to select the video file they want to analyze. The selected video file is sent from the device to the server and stored in a temporary storage area.

[0888] The server analyzes the received video files using the Google Cloud Vision API, analyzing the video frames to detect specific actions and changes. It also uses the SpeechRecognition module to extract audio data, which is then converted into text by a speech recognition engine. This allows the server to integrate the results of video frame analysis and speech recognition to detect specific events.

[0889] Once the analysis is complete, the server generates annotations for specific events based on the analysis results, including the event type, timing, and description, and stores this annotation information in a database.

[0890] Once saved, the annotations are displayed to the user via their device. The user can review the displayed annotations and, if necessary, modify the content and timestamp, add new annotations, or delete unnecessary annotations. After the user has completed the review and modifications, the server exports the final annotated video and generates a public link. The user can then share this link with viewers, who can then quickly jump to specific event parts by clicking the link.

[0891] As a specific example, a marketer at an advertising agency can analyze a new product introduction video and automatically detect specific episodes (e.g., the start time of a promotion or the timing of explaining specific parts of the product) to make only the important information easily accessible to viewers. When generating such annotations, a prompt such as "Analyze a new product launch video including the timing of product introductions and annotate important scenes" can be input to the generative AI model.

[0892] This invention automates the analysis and annotation of advertising videos, significantly improving the efficiency of advertising content production, management, and distribution, enabling advertising creators and marketers to effectively manage videos that capture viewers' attention.

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

[0894] Step 1: Upload your video file

[0895] The user logs into the system using a terminal and clicks the "Upload Video" button.

[0896] The terminal displays a file selection dialog box and prompts the user to select the video file they wish to analyze.

[0897] When the user selects a video file, the terminal transmits the selected video file to the server.

[0898] Input: A video file specified by the user.

[0899] Output: The video file sent to the server.

[0900] Step 2: Prepare the video file for analysis

[0901] The server stores the received video file in a temporary storage area.

[0902] The server launches the generative AI module and speech recognition engine to prepare for analysis.

[0903] Input: The video file sent to the server.

[0904] Output: A saved video file.

[0905] Step 3: Extract audio data and convert it to text

[0906] The server extracts audio data from the video file and converts the audio into text data using the SpeechRecognition module.

[0907] Input: The audio portion of the video file.

[0908] Output: Text data converted from audio data.

[0909] Step 4: Analyzing the video frames

[0910] The server uses the Google Cloud Vision API to analyze the video frames, capturing frames every five seconds and analyzing them to detect specific movements or changes.

[0911] Input: Frames from a video file.

[0912] Output: Parsed frame data.

[0913] Step 5: Integrating audio and video data

[0914] The server integrates the audio and video data and detects specific events (e.g., product introductions, promotions, etc.).

[0915] Input: Text data and frame data.

[0916] Output: Detected event information.

[0917] Step 6: Generate annotations and save them to the database

[0918] The server generates annotations based on the detected event information, including the type, timing, and description of the event.

[0919] The server stores the generated annotations in a database.

[0920] Input: The detected event information.

[0921] Output: Annotations stored in a database.

[0922] Step 7: View and modify annotation results

[0923] The terminal displays the analysis results (annotations) to the user, who can then modify the content and timestamp, add new annotations, and delete unnecessary annotations.

[0924] Input: Annotations stored in a database.

[0925] Output: The final annotation data as modified by the user.

[0926] Step 8: Exporting and linking your annotated video

[0927] Once the user has completed reviewing the annotations, the server exports the final annotated video and generates a link for publication.

[0928] The terminal provides the user with a public link that the user can share with their audience.

[0929] Input: Final annotation data.

[0930] Output: Generate and provide a link for publication.

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

[0932] A system embodying the present invention comprises the following processing steps: a means for uploading video files, a means for analyzing the uploaded video files, a means for annotating specific events based on the analysis results, a means for generating annotations and saving them in a database, and a means for exporting the annotated video and generating a link for publication. Furthermore, the system incorporates an emotion engine that recognizes user emotions based on the content of the video.

[0933] Specific processing flow and operation

[0934] The user logs in to the system and clicks the "Upload Video" button on the home page. The terminal displays a file selection dialog, allowing the user to select the video file they want to analyze. The selected video file is then sent from the terminal to the server.

[0935] The server then stores the received video file in a temporary storage area. Once the storage is complete, it launches the generative AI module and begins analyzing the video file. The generative AI analyzes the audio and visual data of the video to recognize specific events and the user's emotions.

[0936] The analysis begins by extracting audio data and converting it to text using a speech recognition engine. Then, video frames are analyzed to detect specific actions or changes. An image recognition engine is used to detect specific events (e.g., facial recognition, object recognition), and audio and video data are integrated to detect specific events.

[0937] Furthermore, the system utilizes an emotion engine to recognize the user's emotional state, which determines whether the user is in a positive, negative, or neutral emotional state through voice tone and facial expression analysis. This emotional information is also integrated into the analysis data.

[0938] Once the analysis results are obtained, the server generates annotations for specific events, including the event type, event timing, the user's emotional state, and a brief description. The generated annotations are stored in a database.

[0939] Once the data has been saved, the device provides the user with an interface to display the analysis results. The user can review the displayed annotations and make any necessary modifications, including modifying the annotation content and timestamp, adding the user's emotional state, adding new annotations, and deleting unnecessary annotations.

[0940] After completing the verification and correction, the user sends the verified annotation data to the server, which then exports the final annotated video. A public link is then generated, which the device provides to the user, who can then share it with other viewers. Viewers can access the public link to quickly jump to specific parts of the event.

[0941] Specific examples

[0942] For example, if a user uploads a 10-minute soccer game video, it will be processed as follows:

[0943] 1. A user uploads a soccer match video to the system.

[0944] 2. The server receives the video and calls the generation AI module and emotion engine to begin analysis. The analysis detects events such as "Player B scores a goal at 3 minutes 15 seconds," "a foul occurs at 7 minutes 40 seconds," and "the crowd cheers at 5 minutes 00 seconds," as well as the user's emotional information related to these events (e.g., positive emotions during cheering).

[0945] 3. The server generates annotations based on the detected event information and user emotion information, and stores data such as "3:15 - Player B scores a goal (user emotion: excitement)", "7:40 - Foul (user emotion: dissatisfaction)", and "5:00 - Crowd cheers (user emotion: joy)" in the database.

[0946] 4. The terminal displays the analysis results (annotations) to the user, who then checks and modifies the displayed annotations.

[0947] 5. Once the user completes the verification, the server exports the final annotated video and generates a link for publication.

[0948] 6. Users can use this link to share the video with their viewers, who can access the public link and easily jump to specific parts of the event.

[0949] This invention automates video analysis and annotation, providing an efficient video viewing and production environment for both viewers and creators. Furthermore, by recognizing user emotions, it can make the viewer experience richer and more intuitive.

[0950] The processing flow will be explained below.

[0951] Step 1:

[0952] The user logs into the system and clicks the "Upload Video" button on the home page.

[0953] Step 2:

[0954] The device displays a file selection dialog, and the user selects the video file they want to analyze. The selected video file is then sent from the device to the server.

[0955] Step 3:

[0956] The server stores the received video file in a temporary storage area.

[0957] Step 4:

[0958] The server launches the generative AI module and emotion engine and begins analyzing the video file.

[0959] Step 5:

[0960] The server extracts audio data from the video and converts it into text using a speech recognition engine.

[0961] Step 6:

[0962] The server analyzes the video frames to detect specific actions and changes, using an image recognition engine to detect specific events (e.g., human face recognition, object recognition).

[0963] Step 7:

[0964] The server merges the audio and video data to detect specific events, which are then time-stamped and identified as the type of event.

[0965] Step 8:

[0966] The server uses an emotion engine to recognize the user's emotional state based on the video content and the user's reactions. The emotion engine determines whether the user's emotion is positive, negative, or neutral based on voice tone and facial expression analysis.

[0967] Step 9:

[0968] The server generates annotations for specific events based on the analysis results and emotional information, including the event type, event timing, the user's emotional state, and a brief description.

[0969] Step 10:

[0970] The server stores the generated annotations in a database.

[0971] Step 11:

[0972] The terminal provides the user with an interface for displaying the analysis results.

[0973] Step 12:

[0974] Users can review the displayed annotations and make any necessary modifications, including modifying the annotation content or timestamp, adding or changing the user's emotional state, adding new annotations, or deleting unnecessary annotations.

[0975] Step 13:

[0976] Once the user has finished checking the annotations, the terminal sends the checked data to the server.

[0977] Step 14:

[0978] The server exports the final annotated video.

[0979] Step 15:

[0980] The server generates a public link for the exported video.

[0981] Step 16:

[0982] The device provides the user with a public link that the user can share with other viewers, who can access the link and quickly jump to a specific part of the event.

[0983] Example 2

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

[0985] Previous video analysis and annotation systems only detected specific events and actions, but were unable to analyze the viewer's or user's emotional state and generate annotations based on it. This limited the video viewing and production environment, lacking additional information to make the viewer's experience richer and more intuitive.

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

[0987] In this invention, the server includes means for uploading video files, means for analyzing the uploaded video files, means for annotating specific events based on the analysis results, means for generating annotations and saving them in a database, means for exporting the annotated video and generating a public link, and means for recognizing user emotions. This automates the video analysis and annotation work and generates annotations that include the user's emotional state, making it possible to provide a richer and more intuitive viewer experience.

[0988] A "video file" is a multimedia data format containing audio and video data prepared for uploading by a user.

[0989] "Means for uploading" refers to a mechanism that provides a function for users to send video files to the system and transfers data from the terminal to the server.

[0990] "Means for analyzing" refers to the algorithms and engines used by the server to process the video files received and analyze the audio and video data.

[0991] "Means of annotation" refers to the ability to add annotations about specific events, actions, or the user's emotional state based on the analyzed data.

[0992] "Means for storing in a database" refers to a mechanism that provides a repository for the organized management of generated annotations and for efficient search and retrieval when needed.

[0993] "Means for exporting" refers to the function of generating the final annotated video file and outputting it externally.

[0994] "Means to generate a public link" refers to the ability to create a URL that will take users to the final annotated video, allowing them to easily share it with other viewers.

[0995] A "speech recognition engine" is a software algorithm for converting voice data into text data.

[0996] An "image recognition engine" is a software algorithm that analyzes each frame of video and detects specific actions or changes.

[0997] An "emotion engine" is a software algorithm that analyzes a user's audio and video data to recognize the user's emotional state.

[0998] Annotations are metadata added based on the analysis results, including the type, timing, and description of an event, as well as the user's emotional state.

[0999] A "public link" is a URL that is set up so that other viewers can access the final annotated video.

[1000] "User's emotional state" refers to information indicating the user's emotions, such as positive, negative, or neutral, while watching a video.

[1001] The system for implementing this invention is configured using the following main hardware and software components: The system uploads video files, analyzes them, generates annotations, saves them to a database, exports them, and generates public links while exchanging data between users, terminals, and a server.

[1002] Hardware and Software Configuration

[1003] User steps:

[1004] The user logs in to the system and clicks the "Upload Video" button on the home page. This action causes the device to display a file selection dialog, allowing the user to select the video file they want to analyze. The selected video file is then sent from the device to the server.

[1005] Processing steps on the server:

[1006] The server stores the received video file in a temporary storage area. Once the storage is complete, the server launches the generative AI module and begins analyzing the video file. This analysis is performed on both audio and video data.

[1007] Video analysis procedure

[1008] 1. Audio data extraction and analysis:

[1009] The server extracts audio data from the video file and converts it into text using a speech recognition engine. Specifically, the speech recognition engine analyzes the audio waveform and generates corresponding text based on a language model.

[1010] 2. Video data analysis:

[1011] The server analyzes each frame of video and uses an image recognition engine to detect specific actions and changes (e.g., facial recognition, object recognition), thereby identifying significant events within the video data.

[1012] 3. Audio and video integration:

[1013] The analyzed audio and video data are combined to detect specific events, such as "a player scores a goal at 3 minutes and 15 seconds."

[1014] User Emotion Recognition

[1015] The server uses an emotion engine to recognize the user's emotional state. The emotion engine analyzes voice tone and facial expressions to determine whether the user is in a positive, negative, or neutral emotional state. This emotional information is also integrated into the analysis data.

[1016] Creating and saving annotations

[1017] Once the analysis results are obtained, the server generates annotations for specific events, including the event type, event timing, the user's emotional state, and a brief description. The generated annotations are stored in a database.

[1018] Displaying and modifying analysis results

[1019] Once the data has been saved, the device provides the user with an interface to display the analysis results. The user can review the displayed annotations and make any necessary modifications, including modifying the annotation content and timestamp, adding the user's emotional state, adding new annotations, and deleting unnecessary annotations.

[1020] Exporting the final data and generating a public link

[1021] Once the user has finished checking the annotations, the server exports the final annotated video. The server then generates a public link, which the device provides to the user. The user can then share this link with other viewers. Viewers can quickly jump to specific parts of the event by accessing the public link.

[1022] Examples of concrete examples and prompts

[1023] For example, if a user uploads a 10 minute soccer game video, it will be processed as follows:

[1024] 1. A user uploads a soccer match video to the system.

[1025] 2. The server receives the video and calls the generation AI module and emotion engine to begin analysis. The analysis detects events such as "a player scores a goal at 3 minutes 15 seconds," "a foul occurs at 7 minutes 40 seconds," and "the crowd cheers at 5 minutes 00 seconds," as well as the user's emotional information associated with those events.

[1026] 3. The server generates annotations based on the detected event information and user emotion information, and stores data such as "3:15 - Player B scores a goal (user emotion: excitement)", "7:40 - Foul (user emotion: dissatisfaction)", and "5:00 - Crowd cheers (user emotion: joy)" in the database.

[1027] 4. The terminal displays the analysis results to the user, who then checks and modifies the displayed annotations.

[1028] 5. Once the user completes the verification, the server exports the final annotated video and generates a link for publication.

[1029] 6. Users can use this link to share the video with their viewers, who can access the public link and easily jump to specific parts of the event.

[1030] Example prompt sentence:

[1031] "Analyze a 10-minute soccer game video, detect specific events (e.g., goals, fouls, crowd cheers) and user emotions (excitement, frustration, joy), and generate annotations."

[1032] The system automates video analysis and annotation tasks, providing an efficient video viewing and production environment while making the viewer experience richer and more intuitive.

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

[1034] Step 1:

[1035] The user logs in to the system and clicks the "Upload Video" button on the home page. The terminal displays a file selection dialog, allowing the user to select the video file they want to analyze. The input is the video file selected by the user (e.g., "soccer_game.mp4"), and the output is the selected video file being sent from the terminal to the server.

[1036] Step 2:

[1037] The server saves the received video file in a temporary storage area. The input is the video file sent from the device, and the output is the file being saved in the temporary storage area. Specifically, "soccer_game.mp4" is stored in the save directory "temp_storage".

[1038] Step 3:

[1039] Once saving is complete, the server launches the generation AI module and begins analyzing the video file. The input is the saved video file "soccer_game.mp4," and the output is the analysis results (analysis results of audio and video data). Specifically, "generateAI_module.py" is executed to begin the analysis process.

[1040] Step 4:

[1041] The server extracts audio data from the video file and converts the audio to text using a speech recognition engine. The input is the audio data extracted from the video file, and the output is the converted text. Specifically, the speech recognition engine analyzes the audio waveform and generates text data such as "kick_sound."

[1042] Step 5:

[1043] The server analyzes each frame of the video and uses an image recognition engine to detect specific actions and changes. The input is the video frame data, and the output is the detected event (e.g., the moment a player scores a goal). Specifically, the image recognition engine analyzes the pixel data for each frame and identifies goal scenes.

[1044] Step 6:

[1045] The server integrates audio and video data to detect specific events. The input is the converted audio data and analyzed image data, and the output is the integrated event information (e.g., "A player scores a goal at 3 minutes and 15 seconds").

[1046] Step 7:

[1047] The server uses an emotion engine to recognize the user's emotional state. The input is audio tone and video data, and the output is the user's emotional information (e.g., excitement, joy). Specifically, the emotion engine detects positive emotions through audio tone analysis and facial expression analysis.

[1048] Step 8:

[1049] The server generates annotations for specific events based on the analysis results. The input is the integrated event information and the user's emotion information, and the output is the generated annotation (e.g., "3:15 - Player B scores a goal (user's emotion: excited)").

[1050] Step 9:

[1051] The server saves the generated annotations in a database. The input is the generated annotation data, and the output is the annotations saved in the database. Specifically, the annotations are saved in "database_annotations".

[1052] Step 10:

[1053] Once the data has been saved, the device provides an interface for displaying the analysis results to the user. The input is the annotation data retrieved from the database, and the output is a list of annotations displayed to the user. The user can review the displayed annotations and make corrections if necessary.

[1054] Step 11:

[1055] Once the user has completed the annotation review, the server exports the final annotated video. The input is the modified annotation data and the original video file, and the output is the final annotated video.

[1056] Step 12:

[1057] The server generates a public link, which the device provides to the user. The input is the exported annotated video, and the output is the generated public link (e.g., "https: / / example.com / shared / video12345"), which the user can use to share the video with their viewers.

[1058] (Application example 2)

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

[1060] In recent years, it has become difficult to instantly grasp specific scenes and user emotions in the vast amount of video content. Furthermore, there is a lack of technology that can help video viewers find specific scenes and reflect user emotions in review videos. Therefore, there is a need for a system that can automatically detect specific scenes, recognize the user's emotional state, and share the annotated footage.

[1061] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for uploading video files, means for analyzing the uploaded video files and performing emotion recognition, means for annotating specific events and adding emotional states based on the analysis results, means for generating annotations and saving them in a database, and means for exporting the annotated video and generating a public link. This allows users to easily annotate specific scenes in video content and the emotions they felt at the time, and share them with viewers.

[1062] The "means for uploading video files" is an interface that allows a user to send video files from a local terminal to the server.

[1063] "Means for analyzing uploaded video files and performing emotion recognition" refers to an engine (e.g., an emotion recognition engine) that analyzes the audio and video of video files uploaded to a server and recognizes the user's emotions contained therein.

[1064] "Means for annotating specific events and adding emotional states based on analysis results" refers to a process for annotating specific events or scenes in a video based on analysis results and adding the user's associated emotional state.

[1065] The "means for generating annotations and storing them in a database" refers to a function for storing the generated annotations in a database, where each annotation includes the type, timing, description, and emotional state of an event.

[1066] "Means for exporting videos with annotations and generating public links" refers to the functionality for exporting the final video file with annotations and generating a public link that viewers can access.

[1067] A "voice recognition engine" is a technology for converting voice data extracted from video files into text data.

[1068] "Means for integrating E-visual data and emotional state" refers to a process for assembling audio data, video data, and the emotional state recognized by the emotion recognition engine into a single data set.

[1069] "Type of event, timing of event, description of event, and user's emotional state" refers to information that indicates the specific content of the event, such as what type of event it was (e.g., goal, foul, etc.), when the event occurred, a brief description of the event, and the user's emotional state at the time (e.g., joy, surprise, etc.).

[1070] This invention describes a system that specifically implements a video review app with sentiment analysis, including means for uploading video files, analyzing them, generating annotations, and exporting them.

[1071] Hardware and software used

[1072] The hardware and software configuration used is as follows:

[1073] 1. Hardware

[1074] Server: A high-performance server for analyzing video files and storing data.

[1075] Device: The device where the user uploads video files and checks the analysis results (e.g., smartphone, PC)

[1076] 2. Software

[1077] Video upload interface: A web interface or application that allows users to upload video files from their devices to the server.

[1078] Generative AI model: An artificial intelligence model for analyzing video files

[1079] Speech recognition engine: Software that extracts audio data from video files and converts it into text

[1080] Image Recognition Engine: Software that analyzes video frames to detect specific actions and changes

[1081] Emotion Recognition Engine: Software that analyzes the user's emotional state

[1082] Database: A database system for storing the generated annotation data

[1083] Export module: Software to export annotated video files and generate a publishing link

[1084] Processing flow

[1085] 1. Upload your video file:

[1086] Users use the device to upload review videos, either through a web interface or a smartphone app.

[1087] 2. Video Analysis:

[1088] Uploaded video files are stored on a server and analyzed by a generative AI model. A speech recognition engine converts audio data into text, an image recognition engine analyzes video frames to detect specific events, and an emotion recognition engine analyzes the user's emotional state and integrates it with the audio and video data.

[1089] 3. Generate annotations:

[1090] Annotations are generated based on the detected events and emotional states, including the event type, timing, description, and the user's emotional state.

[1091] 4. Check and correct annotations:

[1092] Users can use their devices to review and modify the generated annotations, which are then sent to the server and stored in a database.

[1093] 5. Export and share:

[1094] The final annotated video is exported and a public link is generated that users can use to share the video with other viewers.

[1095] Specific examples

[1096] For example, if a user uploads a video review of an episode of a TV show, the process goes like this:

[1097] 1. Upload your video file:

[1098] A user opens the app, clicks the "Upload Video" button, and selects a review video file.

[1099] 2. Video Analysis:

[1100] The system receives a video file, detects specific scenes (e.g., surprising plot twists, emotional moments), and generates annotations of the emotions in those scenes (e.g., surprise, emotion).

[1101] 3. Export and share:

[1102] Once the analysis is complete, a link to publish the annotated video is displayed, and the user can share this link with other viewers.

[1103] Prompt Sentence Examples

[1104] Analyze drama review videos and generate annotations for specific scenes (e.g., surprising plot twists, moving moments) and their associated emotions (e.g., surprise, emotion).

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

[1106] Step 1:

[1107] The user uses the device to upload a video file. Specifically, they click the "Upload Video" button in the application and select a review video file from the file selection dialog. The uploaded file is sent to the server and saved in a temporary storage area. The input is the video file selected by the user, and the output is the video file saved on the server.

[1108] Step 2:

[1109] When the server receives the video file, it launches the generative AI model to begin analysis. First, it extracts audio data from the video file and converts it to text using a speech recognition engine. The input is the video file stored on the server, and the output is text data converted from the audio data. Specifically, the audio data is extracted and converted into text.

[1110] Step 3:

[1111] The server then analyzes the video frames, using an image recognition engine to detect specific actions and changes and identify specific events within the video. The input is each frame of the video file, and the output is the detected event information. Specifically, image recognition is performed on each frame.

[1112] Step 4:

[1113] The server uses an emotion recognition engine to analyze the user's emotions from the audio and video data. This identifies emotional states such as positive, negative, and neutral. The input is audio and video data, and the output is emotional state data. Specific operations include analyzing the tone of the voice and facial expressions.

[1114] Step 5:

[1115] The server integrates the analysis results and generates annotations for specific events. The annotations, including the event type, timing, description, and emotional state, are stored in a database. The inputs are audio data, video data, and emotional state data, and the output is annotation data. The specific operations are data integration and annotation generation.

[1116] Step 6:

[1117] The user uses a terminal to access an interface for reviewing and correcting the generated annotations. The annotation content, timestamp, and emotional state can be modified as needed. The input is the generated annotation data, and the output is the corrected annotation data. Specific operations include reviewing and correcting the annotations in the user interface.

[1118] Step 7:

[1119] The server exports the final annotated video and generates a public link that users can use to share the video with other viewers. The input is the modified annotation data, and the output is the public link. The specific operations are exporting the video and generating the link.

[1120] The specific processing unit 290 transmits the result of the specific processing to the headset type terminal 314. In the headset type terminal 314, the control unit 46A causes the speaker 240 and the display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.

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

[1122] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the headset type terminal 314.

[1123] [Fourth embodiment]

[1124] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.

[1125] 7, a data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.

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

[1127] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a control target 443. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the control target 443 are also connected to the bus 52.

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

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

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

[1131] The control object 443 includes a display device, LEDs in the eyes, and motors for driving the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the emotions of the robot 414 can be expressed by controlling these motors. In addition, the facial expressions of the robot 414 can also be expressed by controlling the light emission state of the LEDs in the eyes of the robot 414.

[1132] Fig. 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Fig. 8, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.

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

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

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

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

[1137] A system for carrying out the present invention is realized by the processing of the following program. This system includes means for uploading video files, means for analyzing the uploaded video files, means for annotating specific events based on the analysis results, means for generating annotations and saving them in a database, and means for exporting the annotated video and generating a public link.

[1138] Specific processing flow and operation

[1139] First, the user logs in to the system and clicks the "Upload Video" button on the home page. The terminal then displays a file selection dialog, allowing the user to select the video file they want to analyze. The selected video file is then sent from the terminal to the server.

[1140] The server then stores the received video file in a temporary storage area. After this, it launches the generative AI module and begins analyzing the video file. The analysis process first extracts audio data and converts it into text using a speech recognition engine. Next, it analyzes video frames to detect specific actions and changes, and identifies events using an image recognition engine. Finally, it combines the audio and video data to detect specific events.

[1141] Once the analysis is complete, the server generates annotations for specific events based on the analysis results, including the event type, timing, and a brief description, and stores these annotations in a database.

[1142] Once the data is saved, the device provides the user with an interface to display the analysis results. The user can review the displayed annotations and make any necessary corrections, including modifying the annotation content and timestamp, adding new annotations, and deleting unnecessary annotations.

[1143] After completing the verification and correction, the user sends the verified annotation data to the server, which then exports the final annotated video and generates a public link. The device provides the user with this public link, which the user can share with other viewers. Viewers can access the public link to quickly jump to specific event parts.

[1144] Specific examples

[1145] For example, if a user uploads a 10-minute soccer game video, it will be processed as follows:

[1146] 1. A user uploads a soccer match video to the system.

[1147] 2. The server receives the video and calls the generation AI module to begin analysis, detecting events such as "Player B scores a goal at 3 minutes 15 seconds" and "A foul occurs at 7 minutes 40 seconds."

[1148] 3. The server generates annotations based on the detected event information and stores data such as "3:15 - Player B scores a goal" and "7:40 - Foul" in the database.

[1149] 4. The terminal displays the analysis results (annotations) to the user, who then checks and modifies the displayed annotations.

[1150] 5. Once the user completes the verification, the server exports the final annotated video and generates a link for publication.

[1151] 6. Users can use this link to share the video with their viewers, who can then easily jump to a specific part of the event.

[1152] The present invention automates video analysis and annotation, providing an efficient video viewing and production environment for both viewers and creators.

[1153] The processing flow will be explained below.

[1154] Step 1:

[1155] The user logs into the system and clicks the "Upload Video" button on the home page.

[1156] Step 2:

[1157] The device displays a file selection dialog, and the user selects the video file they want to analyze. The selected video file is then sent from the device to the server.

[1158] Step 3:

[1159] The server stores the received video file in a temporary storage area.

[1160] Step 4:

[1161] The server launches the generative AI module and begins analyzing the video file.

[1162] Step 5:

[1163] The server extracts audio data from the video and converts it into text using a speech recognition engine.

[1164] Step 6:

[1165] The server analyzes video frames to detect specific actions and changes, and also uses an image recognition engine to detect specific events (e.g., human face recognition, object recognition).

[1166] Step 7:

[1167] The server merges the audio and video data to detect specific events, which are then time-stamped and identified as the type of event.

[1168] Step 8:

[1169] The server generates annotations for specific events based on the analysis results. The annotations include the event type, event timing, and a brief description of the event. The generated annotations are stored in a database.

[1170] Step 9:

[1171] The terminal provides the user with an interface for displaying the analysis results.

[1172] Step 10:

[1173] Users can review the displayed annotations and make corrections as necessary, such as modifying the annotation content and timestamp, adding new annotations, or deleting unnecessary annotations.

[1174] Step 11:

[1175] Once the user has finished checking the annotations, the terminal sends the checked data to the server.

[1176] Step 12:

[1177] The server exports the final annotated video.

[1178] Step 13:

[1179] The server generates a public link for the exported video.

[1180] Step 14:

[1181] The device provides the user with a public link that the user can share with other viewers, who can then access the link and quickly jump to a specific part of the event.

[1182] Example 1

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

[1184] Traditionally, analyzing and annotating video files has often been done manually, requiring a great deal of time and effort. Furthermore, the accuracy and consistency of the analysis results depended on the skill of the user, so high-quality results were not always obtained. As a result, viewers and creators were unable to enjoy an efficient video viewing and production environment.

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

[1186] In this invention, the server includes a means for temporarily storing video files, a means for launching a generation AI module to analyze the video files, and a means for generating annotations for specific events based on the analysis results. This automates the manual analysis and annotation process, enabling the rapid generation of highly accurate and consistent results. As a result, it is possible to provide an efficient video viewing and production environment for both viewers and creators.

[1187] "User" refers to the person who operates this system, uploads video files, and checks and modifies the analysis results.

[1188] A "terminal" is a device that connects a user and a server, receives user input, and transmits data to the server.

[1189] "Server" refers to a central processing device that stores video files, launches a generative AI module to perform analysis, and generates annotations based on the analysis results.

[1190] "Video file" refers to video data uploaded by a user to the system, and is the data that is subject to analysis and annotation.

[1191] A "generative AI module" is a program that uses artificial intelligence (AI) to analyze video files, and includes a voice recognition engine and an image recognition engine.

[1192] "Speech recognition engine" refers to software or a system for converting audio data extracted from a video file into text.

[1193] "Image recognition engine" refers to software or a system that analyzes video frames and detects specific actions or changes.

[1194] Annotations are tags or labels generated based on the analysis results, and are data that includes the type, timing, and description of an event.

[1195] "Database" refers to a digital storage system for storing generated annotations.

[1196] "Public Link" refers to the URL or web address where you will share your final annotated video with your viewers.

[1197] MODE FOR CARRYING OUT THE INVENTION

[1198] The system for implementing this invention automates a series of processes that analyzes video files and generates, modifies, and publishes annotations for specific events. This system is realized through the interaction between a server, a terminal, and a user.

[1199] First, the user logs in to the system and clicks the "Upload Video" button on the home page. The terminal then displays a file selection dialog, allowing the user to select the video file they want to analyze. The selected video file is then sent from the terminal to the server.

[1200] The server stores the received video file in a temporary storage area. After this, it launches the AI ​​generation module and begins analyzing the video file. The analysis includes the following specific processes:

[1201] 1. Extract the audio data and convert it to text using a speech recognition engine (e.g., Google Cloud Speech-to-Text).

[1202] 2. Use an image recognition engine (e.g., OpenCV or TensorFlow) to analyze video frames and detect specific actions or changes.

[1203] 3. Integrate audio and video data to detect specific events.

[1204] Once the analysis is complete, the server generates annotations for specific events based on the analysis results, including the event type, timing, and a brief description, and stores these annotations in a database.

[1205] Once the data is saved, the device provides the user with an interface to display the analysis results. The user can review the displayed annotations and make any necessary corrections, including modifying the annotation content and timestamp, adding new annotations, and deleting unnecessary annotations.

[1206] After completing the verification and correction, the user submits the verified annotation data to the server, which then exports the final annotated video and generates a public link. The device provides the user with this public link, which the user can share with other viewers. Viewers can access the public link to quickly jump to specific event parts.

[1207] For example, if a user uploads a 10-minute soccer game video, the following happens:

[1208] 1. A user uploads a soccer match video to the system.

[1209] 2. The server receives the video and calls the generation AI module to begin analysis, detecting events such as "Player B scores a goal at 3 minutes 15 seconds" and "A foul occurs at 7 minutes 40 seconds."

[1210] 3. The server generates annotations based on the detected event information and stores data such as "3:15 - Player B scores a goal" and "7:40 - Foul" in the database.

[1211] 4. The terminal displays the analysis results (annotations) to the user, who can then confirm and correct the annotations.

[1212] 5. Once the user completes the verification, the server exports the final annotated video and generates a link for publication.

[1213] 6. Users can use this link to share the video with their viewers, who can then access the link and easily jump to a specific part of the event.

[1214] Example of an input prompt for a generative AI model:

[1215] "Please automatically detect goal and foul scenes from uploaded soccer match videos and generate annotations with their times and descriptions."

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

[1217] System program processing flow

[1218] Step 1:

[1219] A user logs into the system. The user accesses the homepage and enters their username and password on the login screen. This inputs the user's authentication information, and the system recognizes the user.

[1220] Step 2:

[1221] The user clicks the "Upload Video" button. This causes the device to display a file selection dialog. The user selects the video file they want to analyze. The path of the selected video file is obtained as input. The device then performs the specific action of sending the video file to the server.

[1222] Step 3:

[1223] The server stores the received video file in a temporary storage area. The video file is given as input, and the path to the temporary storage area is obtained as output. This prepares the file for subsequent analysis processing to be performed quickly.

[1224] Step 4:

[1225] The server launches the generation AI module, which receives the video file as input and begins analysis. During this process, the following specific data processing steps are performed:

[1226] Extract the audio data and convert it to text using a speech recognition engine (e.g., Google Cloud Speech-to-Text). The audio data is taken as input and the converted text data is taken as output.

[1227] It uses an image recognition engine (e.g., OpenCV or TensorFlow) to analyze video frames and detect specific actions or changes. The frame data is given as input, and the detected event information is obtained as output.

[1228] The audio and video data are integrated to detect specific events. The integrated data is obtained as input, and the identified event information is obtained as output.

[1229] Step 5:

[1230] The server generates annotations for specific events based on the analysis results. The analysis results (audio text, image event information) are given as input, and annotation data (event type, timing, description) is obtained as output.

[1231] Step 6:

[1232] The server stores the generated annotations in a database. The annotation data is given as input, and a reference to the stored data is obtained as output, allowing for later user review and correction.

[1233] Step 7:

[1234] The terminal provides the user with an interface for displaying the analysis results. The annotation data is given as input and displayed in the interface in a format that the user can view.

[1235] Step 8:

[1236] The user can check the displayed annotations and make corrections as necessary, such as modifying the annotation content or timestamp, adding new annotations, or deleting unnecessary annotations. The corrected annotation data is then output.

[1237] Step 9:

[1238] Once the user has completed the corrections, they submit the confirmed annotation data to the server, which then passes the corrected annotation data as input.

[1239] Step 10:

[1240] The server exports the final annotated video. The modified annotation data and the video file are given as input, and the annotated video file is obtained as output. The server then generates a public link. The public link is obtained as output.

[1241] Step 11:

[1242] The device provides the user with a public link, which the user can share with other viewers, allowing viewers to quickly jump to a specific event in the video.

[1243] (Application example 1)

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

[1245] In the current advertising production and management process, manually analyzing and annotating specific events in advertising videos is time-consuming and labor-intensive. This makes it difficult for advertising creators and marketers to create and distribute effective advertising content. In particular, it is difficult to quickly identify and appropriately annotate important scenes and promotional information that will attract viewers' attention. Therefore, there is a need for a system that can efficiently manage advertising content by automating the analysis and annotation of advertising videos.

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

[1247] In this invention, the server includes means for uploading video files, means for analyzing the uploaded video files, means for annotating specific events based on the analysis results, means for generating annotations and saving them in a database, means for exporting the annotated video and generating a public link, and means for automating the analysis and annotation of advertising videos, thereby enabling the rapid identification of important scenes in the production of advertising content and the efficient management and distribution of the content.

[1248] "Means for uploading video files" refers to an interface or function that allows users to upload advertising videos to the system.

[1249] "Means for analyzing uploaded video files" refers to programs or algorithms for extracting and analyzing audio data and video frames from video files stored on a server.

[1250] "Means for annotating specific events based on analysis results" is a function that identifies important events or scenes based on analyzed data and adds corresponding tags and descriptions.

[1251] "Means for generating annotations and saving them in a database" refers to a function for storing automatically generated annotation information in a database.

[1252] "Means for exporting videos with annotations and generating public links" refers to a function that outputs the final annotated video file to the outside world and generates a link for referencing it.

[1253] "Means for automating the analysis and annotation of advertising videos" refers to technologies and systems that automatically detect important scenes and information contained in advertising videos and provide appropriate annotations for them.

[1254] The embodiment of this invention is a system for automating the analysis and annotation of advertising videos. This system uploads video files, analyzes them, generates annotations, saves them, exports them, and generates public links. Specifically, the system is composed of a server, a user terminal, and software to support these.

[1255] First, the user logs in to the system using their device and uploads the advertisement video file to the system. The device displays a file selection dialog, allowing the user to select the video file they want to analyze. The selected video file is sent from the device to the server and stored in a temporary storage area.

[1256] The server analyzes the received video files using the Google Cloud Vision API, analyzing the video frames to detect specific actions and changes. It also uses the SpeechRecognition module to extract audio data, which is then converted into text by a speech recognition engine. This allows the server to integrate the results of video frame analysis and speech recognition to detect specific events.

[1257] Once the analysis is complete, the server generates annotations for specific events based on the analysis results, including the event type, timing, and description, and stores this annotation information in a database.

[1258] Once saved, the annotations are displayed to the user via their device. The user can review the displayed annotations and, if necessary, modify the content and timestamp, add new annotations, or delete unnecessary annotations. After the user has completed the review and modifications, the server exports the final annotated video and generates a public link. The user can then share this link with viewers, who can then quickly jump to specific event parts by clicking the link.

[1259] As a specific example, a marketer at an advertising agency can analyze a new product introduction video and automatically detect specific episodes (e.g., the start time of a promotion or the timing of explaining specific parts of the product) to make only the important information easily accessible to viewers. When generating such annotations, a prompt such as "Analyze a new product launch video including the timing of product introductions and annotate important scenes" can be input to the generative AI model.

[1260] This invention automates the analysis and annotation of advertising videos, significantly improving the efficiency of advertising content production, management, and distribution, enabling advertising creators and marketers to effectively manage videos that capture viewers' attention.

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

[1262] Step 1: Upload your video file

[1263] The user logs into the system using a terminal and clicks the "Upload Video" button.

[1264] The terminal displays a file selection dialog box and prompts the user to select the video file they wish to analyze.

[1265] When the user selects a video file, the terminal transmits the selected video file to the server.

[1266] Input: A video file specified by the user.

[1267] Output: The video file sent to the server.

[1268] Step 2: Prepare the video file for analysis

[1269] The server stores the received video file in a temporary storage area.

[1270] The server launches the generative AI module and speech recognition engine to prepare for analysis.

[1271] Input: The video file sent to the server.

[1272] Output: A saved video file.

[1273] Step 3: Extract audio data and convert it to text

[1274] The server extracts audio data from the video file and converts the audio into text data using the SpeechRecognition module.

[1275] Input: The audio portion of the video file.

[1276] Output: Text data converted from audio data.

[1277] Step 4: Analyzing the video frames

[1278] The server uses the Google Cloud Vision API to analyze the video frames, capturing frames every five seconds and analyzing them to detect specific movements or changes.

[1279] Input: Frames from a video file.

[1280] Output: Parsed frame data.

[1281] Step 5: Integrating audio and video data

[1282] The server integrates the audio and video data and detects specific events (e.g., product introductions, promotions, etc.).

[1283] Input: Text data and frame data.

[1284] Output: Detected event information.

[1285] Step 6: Generate annotations and save them to the database

[1286] The server generates annotations based on the detected event information, including the type, timing, and description of the event.

[1287] The server stores the generated annotations in a database.

[1288] Input: The detected event information.

[1289] Output: Annotations stored in a database.

[1290] Step 7: View and modify annotation results

[1291] The terminal displays the analysis results (annotations) to the user, who can then modify the content and timestamp, add new annotations, and delete unnecessary annotations.

[1292] Input: Annotations stored in a database.

[1293] Output: The final annotation data as modified by the user.

[1294] Step 8: Exporting and linking your annotated video

[1295] Once the user has completed reviewing the annotations, the server exports the final annotated video and generates a link for publication.

[1296] The terminal provides the user with a public link that the user can share with their audience.

[1297] Input: Final annotation data.

[1298] Output: Generate and provide a link for publication.

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

[1300] A system embodying the present invention comprises the following processing steps: a means for uploading video files, a means for analyzing the uploaded video files, a means for annotating specific events based on the analysis results, a means for generating annotations and saving them in a database, and a means for exporting the annotated video and generating a link for publication. Furthermore, the system incorporates an emotion engine that recognizes user emotions based on the content of the video.

[1301] Specific processing flow and operation

[1302] The user logs in to the system and clicks the "Upload Video" button on the home page. The terminal displays a file selection dialog, allowing the user to select the video file they want to analyze. The selected video file is then sent from the terminal to the server.

[1303] The server then stores the received video file in a temporary storage area. Once the storage is complete, it launches the generative AI module and begins analyzing the video file. The generative AI analyzes the audio and visual data of the video to recognize specific events and the user's emotions.

[1304] The analysis begins by extracting audio data and converting it to text using a speech recognition engine. Then, video frames are analyzed to detect specific actions or changes. An image recognition engine is used to detect specific events (e.g., facial recognition, object recognition), and audio and video data are integrated to detect specific events.

[1305] Furthermore, the system utilizes an emotion engine to recognize the user's emotional state, which determines whether the user is in a positive, negative, or neutral emotional state through voice tone and facial expression analysis. This emotional information is also integrated into the analysis data.

[1306] Once the analysis results are obtained, the server generates annotations for specific events, including the event type, event timing, the user's emotional state, and a brief description. The generated annotations are stored in a database.

[1307] Once the data has been saved, the device provides the user with an interface to display the analysis results. The user can review the displayed annotations and make any necessary modifications, including modifying the annotation content and timestamp, adding the user's emotional state, adding new annotations, and deleting unnecessary annotations.

[1308] After completing the verification and correction, the user sends the verified annotation data to the server, which then exports the final annotated video. A public link is then generated, which the device provides to the user, who can then share it with other viewers. Viewers can access the public link to quickly jump to specific parts of the event.

[1309] Specific examples

[1310] For example, if a user uploads a 10-minute soccer game video, it will be processed as follows:

[1311] 1. A user uploads a soccer match video to the system.

[1312] 2. The server receives the video and calls the generation AI module and emotion engine to begin analysis. The analysis detects events such as "Player B scores a goal at 3 minutes 15 seconds," "a foul occurs at 7 minutes 40 seconds," and "the crowd cheers at 5 minutes 00 seconds," as well as the user's emotional information related to these events (e.g., positive emotions during cheering).

[1313] 3. The server generates annotations based on the detected event information and user emotion information, and stores data such as "3:15 - Player B scores a goal (user emotion: excitement)", "7:40 - Foul (user emotion: dissatisfaction)", and "5:00 - Crowd cheers (user emotion: joy)" in the database.

[1314] 4. The terminal displays the analysis results (annotations) to the user, who then checks and modifies the displayed annotations.

[1315] 5. Once the user completes the verification, the server exports the final annotated video and generates a link for publication.

[1316] 6. Users can use this link to share the video with their viewers, who can access the public link and easily jump to specific parts of the event.

[1317] This invention automates video analysis and annotation, providing an efficient video viewing and production environment for both viewers and creators. Furthermore, by recognizing user emotions, it can make the viewer experience richer and more intuitive.

[1318] The processing flow will be explained below.

[1319] Step 1:

[1320] The user logs into the system and clicks the "Upload Video" button on the home page.

[1321] Step 2:

[1322] The device displays a file selection dialog, and the user selects the video file they want to analyze. The selected video file is then sent from the device to the server.

[1323] Step 3:

[1324] The server stores the received video file in a temporary storage area.

[1325] Step 4:

[1326] The server launches the generative AI module and emotion engine and begins analyzing the video file.

[1327] Step 5:

[1328] The server extracts audio data from the video and converts it into text using a speech recognition engine.

[1329] Step 6:

[1330] The server analyzes the video frames to detect specific actions and changes, using an image recognition engine to detect specific events (e.g., human face recognition, object recognition).

[1331] Step 7:

[1332] The server merges the audio and video data to detect specific events, which are then time-stamped and identified as the type of event.

[1333] Step 8:

[1334] The server uses an emotion engine to recognize the user's emotional state based on the video content and the user's reactions. The emotion engine determines whether the user's emotion is positive, negative, or neutral based on voice tone and facial expression analysis.

[1335] Step 9:

[1336] The server generates annotations for specific events based on the analysis results and emotional information, including the event type, event timing, the user's emotional state, and a brief description.

[1337] Step 10:

[1338] The server stores the generated annotations in a database.

[1339] Step 11:

[1340] The terminal provides the user with an interface for displaying the analysis results.

[1341] Step 12:

[1342] Users can review the displayed annotations and make any necessary modifications, including modifying the annotation content or timestamp, adding or changing the user's emotional state, adding new annotations, or deleting unnecessary annotations.

[1343] Step 13:

[1344] Once the user has finished checking the annotations, the terminal sends the checked data to the server.

[1345] Step 14:

[1346] The server exports the final annotated video.

[1347] Step 15:

[1348] The server generates a public link for the exported video.

[1349] Step 16:

[1350] The device provides the user with a public link that the user can share with other viewers, who can access the link and quickly jump to a specific part of the event.

[1351] Example 2

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

[1353] Previous video analysis and annotation systems only detected specific events and actions, but were unable to analyze the viewer's or user's emotional state and generate annotations based on it. This limited the video viewing and production environment, lacking additional information to make the viewer's experience richer and more intuitive.

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

[1355] In this invention, the server includes means for uploading video files, means for analyzing the uploaded video files, means for annotating specific events based on the analysis results, means for generating annotations and saving them in a database, means for exporting the annotated video and generating a public link, and means for recognizing user emotions. This automates the video analysis and annotation work and generates annotations that include the user's emotional state, making it possible to provide a richer and more intuitive viewer experience.

[1356] A "video file" is a multimedia data format containing audio and video data prepared for uploading by a user.

[1357] "Means for uploading" refers to a mechanism that provides a function for users to send video files to the system and transfers data from the terminal to the server.

[1358] "Means for analyzing" refers to the algorithms and engines used by the server to process the video files received and analyze the audio and video data.

[1359] "Means of annotation" refers to the ability to add annotations about specific events, actions, or the user's emotional state based on the analyzed data.

[1360] "Means for storing in a database" refers to a mechanism that provides a repository for the organized management of generated annotations and for efficient search and retrieval when needed.

[1361] "Means for exporting" refers to the function of generating the final annotated video file and outputting it externally.

[1362] "Means to generate a public link" refers to the ability to create a URL that will take users to the final annotated video, allowing them to easily share it with other viewers.

[1363] A "speech recognition engine" is a software algorithm for converting voice data into text data.

[1364] An "image recognition engine" is a software algorithm that analyzes each frame of video and detects specific actions or changes.

[1365] An "emotion engine" is a software algorithm that analyzes a user's audio and video data to recognize the user's emotional state.

[1366] Annotations are metadata added based on the analysis results, including the type, timing, and description of an event, as well as the user's emotional state.

[1367] A "public link" is a URL that is set up so that other viewers can access the final annotated video.

[1368] "User's emotional state" refers to information indicating the user's emotions, such as positive, negative, or neutral, while watching a video.

[1369] The system for implementing this invention is configured using the following main hardware and software components: The system uploads video files, analyzes them, generates annotations, saves them to a database, exports them, and generates public links while exchanging data between users, terminals, and a server.

[1370] Hardware and Software Configuration

[1371] User steps:

[1372] The user logs in to the system and clicks the "Upload Video" button on the home page. This action causes the device to display a file selection dialog, allowing the user to select the video file they want to analyze. The selected video file is then sent from the device to the server.

[1373] Processing steps on the server:

[1374] The server stores the received video file in a temporary storage area. Once the storage is complete, the server launches the generative AI module and begins analyzing the video file. This analysis is performed on both audio and video data.

[1375] Video analysis procedure

[1376] 1. Audio data extraction and analysis:

[1377] The server extracts audio data from the video file and converts it into text using a speech recognition engine. Specifically, the speech recognition engine analyzes the audio waveform and generates corresponding text based on a language model.

[1378] 2. Video data analysis:

[1379] The server analyzes each frame of video and uses an image recognition engine to detect specific actions and changes (e.g., facial recognition, object recognition), thereby identifying significant events within the video data.

[1380] 3. Audio and video integration:

[1381] The analyzed audio and video data are combined to detect specific events, such as "a player scores a goal at 3 minutes and 15 seconds."

[1382] User Emotion Recognition

[1383] The server uses an emotion engine to recognize the user's emotional state. The emotion engine analyzes voice tone and facial expressions to determine whether the user is in a positive, negative, or neutral emotional state. This emotional information is also integrated into the analysis data.

[1384] Creating and saving annotations

[1385] Once the analysis results are obtained, the server generates annotations for specific events, including the event type, event timing, the user's emotional state, and a brief description. The generated annotations are stored in a database.

[1386] Displaying and modifying analysis results

[1387] Once the data has been saved, the device provides the user with an interface to display the analysis results. The user can review the displayed annotations and make any necessary modifications, including modifying the annotation content and timestamp, adding the user's emotional state, adding new annotations, and deleting unnecessary annotations.

[1388] Exporting the final data and generating a public link

[1389] Once the user has finished checking the annotations, the server exports the final annotated video. The server then generates a public link, which the device provides to the user. The user can then share this link with other viewers. Viewers can quickly jump to specific parts of the event by accessing the public link.

[1390] Examples of concrete examples and prompts

[1391] For example, if a user uploads a 10 minute soccer game video, it will be processed as follows:

[1392] 1. A user uploads a soccer match video to the system.

[1393] 2. The server receives the video and calls the generation AI module and emotion engine to begin analysis. The analysis detects events such as "a player scores a goal at 3 minutes 15 seconds," "a foul occurs at 7 minutes 40 seconds," and "the crowd cheers at 5 minutes 00 seconds," as well as the user's emotional information associated with those events.

[1394] 3. The server generates annotations based on the detected event information and user emotion information, and stores data such as "3:15 - Player B scores a goal (user emotion: excitement)", "7:40 - Foul (user emotion: dissatisfaction)", and "5:00 - Crowd cheers (user emotion: joy)" in the database.

[1395] 4. The terminal displays the analysis results to the user, who then checks and modifies the displayed annotations.

[1396] 5. Once the user completes the verification, the server exports the final annotated video and generates a link for publication.

[1397] 6. Users can use this link to share the video with their viewers, who can access the public link and easily jump to specific parts of the event.

[1398] Example prompt sentence:

[1399] "Analyze a 10-minute soccer game video, detect specific events (e.g., goals, fouls, crowd cheers) and user emotions (excitement, frustration, joy), and generate annotations."

[1400] The system automates video analysis and annotation tasks, providing an efficient video viewing and production environment while making the viewer experience richer and more intuitive.

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

[1402] Step 1:

[1403] The user logs in to the system and clicks the "Upload Video" button on the home page. The terminal displays a file selection dialog, allowing the user to select the video file they want to analyze. The input is the video file selected by the user (e.g., "soccer_game.mp4"), and the output is the selected video file being sent from the terminal to the server.

[1404] Step 2:

[1405] The server saves the received video file in a temporary storage area. The input is the video file sent from the device, and the output is the file being saved in the temporary storage area. Specifically, "soccer_game.mp4" is stored in the save directory "temp_storage".

[1406] Step 3:

[1407] Once saving is complete, the server launches the generation AI module and begins analyzing the video file. The input is the saved video file "soccer_game.mp4," and the output is the analysis results (analysis results of audio and video data). Specifically, "generateAI_module.py" is executed to begin the analysis process.

[1408] Step 4:

[1409] The server extracts audio data from the video file and converts the audio to text using a speech recognition engine. The input is the audio data extracted from the video file, and the output is the converted text. Specifically, the speech recognition engine analyzes the audio waveform and generates text data such as "kick_sound."

[1410] Step 5:

[1411] The server analyzes each frame of the video and uses an image recognition engine to detect specific actions and changes. The input is the video frame data, and the output is the detected event (e.g., the moment a player scores a goal). Specifically, the image recognition engine analyzes the pixel data for each frame and identifies goal scenes.

[1412] Step 6:

[1413] The server integrates audio and video data to detect specific events. The input is the converted audio data and analyzed image data, and the output is the integrated event information (e.g., "A player scores a goal at 3 minutes and 15 seconds").

[1414] Step 7:

[1415] The server uses an emotion engine to recognize the user's emotional state. The input is audio tone and video data, and the output is the user's emotional information (e.g., excitement, joy). Specifically, the emotion engine detects positive emotions through audio tone analysis and facial expression analysis.

[1416] Step 8:

[1417] The server generates annotations for specific events based on the analysis results. The input is the integrated event information and the user's emotion information, and the output is the generated annotation (e.g., "3:15 - Player B scores a goal (user's emotion: excited)").

[1418] Step 9:

[1419] The server saves the generated annotations in a database. The input is the generated annotation data, and the output is the annotations saved in the database. Specifically, the annotations are saved in "database_annotations".

[1420] Step 10:

[1421] Once the data has been saved, the device provides an interface for displaying the analysis results to the user. The input is the annotation data retrieved from the database, and the output is a list of annotations displayed to the user. The user can review the displayed annotations and make corrections if necessary.

[1422] Step 11:

[1423] Once the user has completed the annotation review, the server exports the final annotated video. The input is the modified annotation data and the original video file, and the output is the final annotated video.

[1424] Step 12:

[1425] The server generates a public link, which the device provides to the user. The input is the exported annotated video, and the output is the generated public link (e.g., "https: / / example.com / shared / video12345"), which the user can use to share the video with their viewers.

[1426] (Application example 2)

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

[1428] In recent years, it has become difficult to instantly grasp specific scenes and user emotions in the vast amount of video content. Furthermore, there is a lack of technology that can help video viewers find specific scenes and reflect user emotions in review videos. Therefore, there is a need for a system that can automatically detect specific scenes, recognize the user's emotional state, and share the annotated footage.

[1429] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for uploading video files, means for analyzing the uploaded video files and performing emotion recognition, means for annotating specific events and adding emotional states based on the analysis results, means for generating annotations and saving them in a database, and means for exporting the annotated video and generating a public link. This allows users to easily annotate specific scenes in video content and the emotions they felt at the time, and share them with viewers.

[1430] The "means for uploading video files" is an interface that allows a user to send video files from a local terminal to the server.

[1431] "Means for analyzing uploaded video files and performing emotion recognition" refers to an engine (e.g., an emotion recognition engine) that analyzes the audio and video of video files uploaded to a server and recognizes the user's emotions contained therein.

[1432] "Means for annotating specific events and adding emotional states based on analysis results" refers to a process for annotating specific events or scenes in a video based on analysis results and adding the user's associated emotional state.

[1433] The "means for generating annotations and storing them in a database" refers to a function for storing the generated annotations in a database, where each annotation includes the type, timing, description, and emotional state of an event.

[1434] "Means for exporting videos with annotations and generating public links" refers to the functionality for exporting the final video file with annotations and generating a public link that viewers can access.

[1435] A "voice recognition engine" is a technology for converting voice data extracted from video files into text data.

[1436] "Means for integrating E-visual data and emotional state" refers to a process for assembling audio data, video data, and the emotional state recognized by the emotion recognition engine into a single data set.

[1437] "Type of event, timing of event, description of event, and user's emotional state" refers to information that indicates the specific content of the event, such as what type of event it was (e.g., goal, foul, etc.), when the event occurred, a brief description of the event, and the user's emotional state at the time (e.g., joy, surprise, etc.).

[1438] This invention describes a system that specifically implements a video review app with sentiment analysis, including means for uploading video files, analyzing them, generating annotations, and exporting them.

[1439] Hardware and software used

[1440] The hardware and software configuration used is as follows:

[1441] 1. Hardware

[1442] Server: A high-performance server for analyzing video files and storing data.

[1443] Device: The device where the user uploads video files and checks the analysis results (e.g., smartphone, PC)

[1444] 2. Software

[1445] Video upload interface: A web interface or application that allows users to upload video files from their devices to the server.

[1446] Generative AI model: An artificial intelligence model for analyzing video files

[1447] Speech recognition engine: Software that extracts audio data from video files and converts it into text

[1448] Image Recognition Engine: Software that analyzes video frames to detect specific actions and changes

[1449] Emotion Recognition Engine: Software that analyzes the user's emotional state

[1450] Database: A database system for storing the generated annotation data

[1451] Export module: Software to export annotated video files and generate a publishing link

[1452] Processing flow

[1453] 1. Upload your video file:

[1454] Users use the device to upload review videos, either through a web interface or a smartphone app.

[1455] 2. Video Analysis:

[1456] Uploaded video files are stored on a server and analyzed by a generative AI model. A speech recognition engine converts audio data into text, an image recognition engine analyzes video frames to detect specific events, and an emotion recognition engine analyzes the user's emotional state and integrates it with the audio and video data.

[1457] 3. Generate annotations:

[1458] Annotations are generated based on the detected events and emotional states, including the event type, timing, description, and the user's emotional state.

[1459] 4. Check and correct annotations:

[1460] Users can use their devices to review and modify the generated annotations, which are then sent to the server and stored in a database.

[1461] 5. Export and share:

[1462] The final annotated video is exported and a public link is generated that users can use to share the video with other viewers.

[1463] Specific examples

[1464] For example, if a user uploads a video review of an episode of a TV show, the process goes like this:

[1465] 1. Upload your video file:

[1466] A user opens the app, clicks the "Upload Video" button, and selects a review video file.

[1467] 2. Video Analysis:

[1468] The system receives a video file, detects specific scenes (e.g., surprising plot twists, emotional moments), and generates annotations of the emotions in those scenes (e.g., surprise, emotion).

[1469] 3. Export and share:

[1470] Once the analysis is complete, a link to publish the annotated video is displayed, and the user can share this link with other viewers.

[1471] Prompt Sentence Examples

[1472] Analyze drama review videos and generate annotations for specific scenes (e.g., surprising plot twists, moving moments) and their associated emotions (e.g., surprise, emotion).

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

[1474] Step 1:

[1475] The user uses the device to upload a video file. Specifically, they click the "Upload Video" button in the application and select a review video file from the file selection dialog. The uploaded file is sent to the server and saved in a temporary storage area. The input is the video file selected by the user, and the output is the video file saved on the server.

[1476] Step 2:

[1477] When the server receives the video file, it launches the generative AI model to begin analysis. First, it extracts audio data from the video file and converts it to text using a speech recognition engine. The input is the video file stored on the server, and the output is text data converted from the audio data. Specifically, the audio data is extracted and converted into text.

[1478] Step 3:

[1479] The server then analyzes the video frames, using an image recognition engine to detect specific actions and changes and identify specific events within the video. The input is each frame of the video file, and the output is the detected event information. Specifically, image recognition is performed on each frame.

[1480] Step 4:

[1481] The server uses an emotion recognition engine to analyze the user's emotions from the audio and video data. This identifies emotional states such as positive, negative, and neutral. The input is audio and video data, and the output is emotional state data. Specific operations include analyzing the tone of the voice and facial expressions.

[1482] Step 5:

[1483] The server integrates the analysis results and generates annotations for specific events. The annotations, including the event type, timing, description, and emotional state, are stored in a database. The inputs are audio data, video data, and emotional state data, and the output is annotation data. The specific operations are data integration and annotation generation.

[1484] Step 6:

[1485] The user uses a terminal to access an interface for reviewing and correcting the generated annotations. The annotation content, timestamp, and emotional state can be modified as needed. The input is the generated annotation data, and the output is the corrected annotation data. Specific operations include reviewing and correcting the annotations in the user interface.

[1486] Step 7:

[1487] The server exports the final annotated video and generates a public link that users can use to share the video with other viewers. The input is the modified annotation data, and the output is the public link. The specific operations are exporting the video and generating the link.

[1488] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the control target 443 to output the result of the specific processing. The microphone 238 acquires voice indicating a user input regarding the result of the specific processing. The control unit 46A transmits voice data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the voice data.

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

[1490] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the robot 414.

[1491] The emotion identification model 59 as an emotion engine may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to an emotion map (see FIG. 9), which is a specific mapping. Similarly, the emotion identification model 59 may determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.

[1492] FIG. 9 is a diagram illustrating an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and actions arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion includes both affect and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.

[1493] These emotions are distributed in the 3 o'clock direction on emotion map 400, and typically fluctuate between relief and anxiety. In the right half of emotion map 400, situational awareness dominates over internal sensations, resulting in a sense of calm.

[1494] The inside of emotion map 400 represents what is going on in the mind, and the outside of emotion map 400 represents behavior, so the further you go outside emotion map 400, the more visible the emotions become (the more they are expressed in behavior).

[1495] Human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. Emotions can also be created for robots, automobiles, and motorcycles, based on various balances, such as posture and remaining battery life. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. An emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on Voice Emotion Recognition and Emotional Brain Physiological Signal Analysis Systems, Tokushima University, Doctoral Dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map lists emotions belonging to the "reaction" domain, where sensation is dominant. The right half of the emotion map lists emotions belonging to the "situation" domain, where situational awareness is dominant.

[1496] The emotion map defines two emotions that promote learning. One is a negative emotion on the situation side, around the middle of "repentance" or "reflection." In other words, this occurs when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is a positive emotion on the response side, around "desire." In other words, this occurs when the robot experiences positive feelings such as "I want more" or "I want to know more."

[1497] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values ​​indicating each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple pieces of training data that are combinations of user input and emotion values ​​indicating each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions that are located close to each other have similar values, as in the emotion map 900 shown in FIG. 10. FIG. 10 shows an example in which multiple emotions, "relieved," "calm," and "reassuring," have similar emotion values.

[1498] The system according to the present disclosure has been described above mainly with respect to the functions of the data processing device 12, but the system according to the present disclosure is not necessarily implemented on a server. The system according to the present disclosure may be implemented as a general information processing system. The present disclosure may be implemented, for example, as a software program running on a personal computer or an application running on a smartphone, etc. The method according to the present disclosure may be provided to users in the form of SaaS (Software as a Service).

[1499] In the above embodiment, an example was given in which the specific processing is performed by one computer 22, but the technology of the present disclosure is not limited to this, and the specific processing may be distributed and performed by a plurality of computers including the computer 22. For example, the data generation model 58 may be provided in an external device of the data processing device 12, and data may be generated in the external device in accordance with input data.

[1500] In the above embodiment, an example in which the specific processing program 56 is stored in the storage 32 has been described, but the technology of the present disclosure is not limited to this. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-transitory storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-transitory storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes the specific processing in accordance with the specific processing program 56.

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

[1502] It is not necessary to store all of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store all of the specific processing program 56 in the storage 32; only a portion of the specific processing program 56 may be stored.

[1503] The hardware resource for executing a specific process can be any of the following processors: An example of a processor is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. Another example of a processor is a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.

[1504] The hardware resource that executes the specific processing may be configured with one of these various processors, or may be configured with a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, the hardware resource that executes the specific processing may be a single processor.

[1505] As an example of a system configured with a single processor, first, one processor is configured by combining one or more CPUs and software, and this processor functions as a hardware resource that executes a specific process. Second, there is a system that uses a processor that realizes the functions of an entire system including multiple hardware resources that execute a specific process on a single IC chip, as typified by SoC (System-on-a-chip). In this way, a specific process is realized using one or more of the above-mentioned various processors as hardware resources.

[1506] Furthermore, the hardware structure of these various processors can be, more specifically, an electric circuit that combines circuit elements such as semiconductor devices. The specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps may be deleted, new steps may be added, or the processing order may be rearranged, without departing from the spirit of the invention.

[1507] The above-described description and illustrations are a detailed explanation of the parts related to the technology of the present disclosure and are merely an example of the technology of the present disclosure. For example, the above description of the configuration, functions, actions, and effects is an explanation of an example of the configuration, functions, actions, and effects of the parts related to the technology of the present disclosure. Therefore, it goes without saying that unnecessary parts may be deleted, new elements may be added, or replacements may be made to the above-described description and illustrations within the scope of the gist of the technology of the present disclosure. Furthermore, to avoid confusion and facilitate understanding of the parts related to the technology of the present disclosure, the above-described description and illustrations omit explanations of common technical knowledge that do not require particular explanation to enable the implementation of the technology of the present disclosure.

[1508] All publications, patent applications, and technical standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or technical standard was specifically and individually indicated to be incorporated by reference.

[1509] The following is further disclosed regarding the above embodiment.

[1510] (Claim 1)

[1511] How to upload video files,

[1512] A means of analyzing uploaded video files,

[1513] A means to annotate specific events based on the analysis results,

[1514] a means for generating and storing annotations in a database;

[1515] A way to export annotated videos and generate a publishing link;

[1516] A system including:

[1517] (Claim 2)

[1518] 2. The system of claim 1, wherein the analyzing means includes means for extracting audio data from the video file and converting it to text using a speech recognition engine, means for analyzing the video frames to detect specific actions or changes, and means for integrating the audio data and video data to detect specific events.

[1519] (Claim 3)

[1520] 10. The system of claim 1, wherein the annotating means comprises generating annotations comprising a type of event, a timing of the event, and a description of the event.

[1521] "Example 1"

[1522] (Claim 1)

[1523] a means for users to log into the system and upload video files;

[1524] A means for transmitting the uploaded video file from the terminal to the server;

[1525] A means for storing the received video file in a temporary storage area by the server;

[1526] The server launches the generated AI module to analyze the video file;

[1527] A means for generating annotations for specific events based on the analysis results;

[1528] a means for storing the generated annotations in a database;

[1529] means for providing an interface for a user to review and modify the analysis results;

[1530] A means for a user to transmit the verified annotation data to a server;

[1531] A means for the server to export the final annotated video and generate a publishing link;

[1532] a means for the terminal to provide a public link to the user;

[1533] A system including:

[1534] (Claim 2)

[1535] 2. The system of claim 1, wherein the analyzing means includes means for extracting audio data from the video file and converting it to text using a speech recognition engine, means for analyzing the video frames to detect specific actions or changes, and means for integrating the audio data and video data to detect specific events.

[1536] (Claim 3)

[1537] 10. The system of claim 1, wherein the annotating means comprises generating annotations comprising a type of event, a timing of the event, and a description of the event.

[1538] "Application Example 1"

[1539] (Claim 1)

[1540] How to upload video files,

[1541] A means of analyzing uploaded video files,

[1542] A means to annotate specific events based on the analysis results,

[1543] a means for generating and storing annotations in a database;

[1544] A way to export annotated videos and generate a publishing link;

[1545] A means for automating the analysis and annotation of advertising videos;

[1546] A system including:

[1547] (Claim 2)

[1548] The system of claim 1, wherein the analyzing means includes means for extracting audio data from the video file and converting it to text using a speech recognition engine, means for analyzing the video frames to detect specific actions or changes, and means for integrating the audio data and video data to detect specific events.

[1549] (Claim 3)

[1550] 10. The system of claim 1, wherein the annotating means comprises: means for generating annotations including a type of event, a timing of the event, and a description of the event.

[1551] "Example 2: Combining Emotion Engines"

[1552] (Claim 1)

[1553] How to upload video files,

[1554] A means of analyzing uploaded video files,

[1555] A means to annotate specific events based on the analysis results,

[1556] a means for generating and storing annotations in a database;

[1557] A way to export annotated videos and generate a publishing link;

[1558] means for recognizing a user's emotion;

[1559] A system including:

[1560] (Claim 2)

[1561] 2. The system of claim 1, wherein the analyzing means includes means for extracting audio data from the video file and converting it to text using a speech recognition engine, means for analyzing the video frames to detect specific actions or changes, and means for integrating the audio data and video data to detect specific events.

[1562] (Claim 3)

[1563] 10. The system of claim 1, wherein the means for annotating comprises means for generating annotations comprising a type of event, a timing of the event, a description of the event, and an emotional state of the user.

[1564] "Application example 2 when combining emotion engines"

[1565] (Claim 1)

[1566] How to upload video files,

[1567] A means for analyzing uploaded video files and performing emotion recognition;

[1568] A means to annotate specific events based on the analysis results and add emotional states;

[1569] a means for generating and storing annotations in a database;

[1570] A way to export annotated videos and generate a publishing link;

[1571] A system including:

[1572] (Claim 2)

[1573] The analysis method involves extracting audio data from video files and converting it into text using a speech recognition engine.

[1574] A means for analyzing video frames to detect specific actions or changes;

[1575] means for recognizing an emotional state of a user using an emotion recognition engine;

[1576] 10. The system of claim 1, further comprising means for integrating audio and video data and emotional states to detect specific events.

[1577] (Claim 3)

[1578] 10. The system of claim 1, wherein the annotating means comprises: means for generating annotations comprising a type of event, a timing of the event, a description of the event, and an emotional state of the user. [Explanation of symbols]

[1579] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Device 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robot< / url:> < / url:> < / url:> < / url:>

Claims

1. How to upload video files, A means of analyzing uploaded video files, A means to annotate specific events based on the analysis results, a means for generating and storing annotations in a database; A way to export annotated videos and generate a publishing link; A system including:

2. 2. The system of claim 1, wherein the analyzing means includes means for extracting audio data from the video file and converting it to text using a speech recognition engine, means for analyzing the video frames to detect specific actions or changes, and means for integrating the audio data and video data to detect specific events.

3. The system of claim 1 , wherein the means for annotating comprises means for generating annotations that include a type of event, a timing of the event, and a description of the event.

Citation Information

Patent Citations

  • Persona chatbot control method and system

    JP2022180282A