system

The system provides personalized sports feedback by analyzing user-recorded videos and text inputs, addressing the cost and accessibility issues of traditional lessons, enabling effective skill improvement.

JP2026035260APending Publication Date: 2026-03-04SOFTBANK GROUP CORP
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024138103
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-08-19
Publication Date
2026-03-04

AI Technical Summary

Technical Problem

Individuals seeking to improve their sports skills face challenges due to the high cost and time commitment required for traditional lessons, and existing systems lack personalized feedback that addresses their specific concerns.

Method used

A system that analyzes user-recorded sports videos and accompanying text inputs to provide personalized feedback through motion analysis and natural language generation, allowing users to receive customized advice without professional guidance.

Benefits of technology

Enables users to receive professional, personalized feedback and improve their sports skills effectively, without the need for specialized lessons or equipment, by leveraging motion analysis and natural language generation technologies.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026035260000001_ABST
    Figure 2026035260000001_ABST
Patent Text Reader

Abstract

Provide a system. The present invention includes: a means for receiving a video of a sports activity taken by a user; A means for receiving text information regarding worries or issues input by a user; means for motion analyzing the received video; A means to generate evaluations and feedback in natural language based on the motion analysis results, and a means for providing the generated ratings and feedback to the user; A system including:
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] To solve the problems faced by users who want to improve their sports skills but cannot afford the time or money required for individual lessons, the service provides a way to receive effective feedback and instruction using just a smartphone. Specifically, the service aims to solve the problems of not having someone to teach, lessons being expensive, and not being able to find a method that suits you. [Means for solving the problem]

[0005] The present invention solves the above-mentioned problems by providing a system including the following means: a means for receiving a video of a sports activity filmed by a user, a means for receiving text information related to worries or problems input by the user, a means for performing motion analysis on the received video, a means for generating evaluations and feedback in natural language based on the results of the motion analysis, and a means for providing the generated evaluations and feedback to the user. The motion analysis means also includes means for extracting keyframes in the video and converting the movements into a numerical model, thereby providing highly accurate feedback. The system also includes means for customizing the generated feedback and advice based on the text information input by the user, thereby enabling optimal instruction for each individual user.

[0006] "User" refers to an individual or organization who uses the system to receive analysis and feedback on their sports activities.

[0007] "Video" refers to video data recorded by a user in a sports activity, and refers to a media file uploaded to the system.

[0008] "Text information" refers to written data about worries and issues entered by the user, and is information that the system uses for analysis.

[0009] "Motion analysis" refers to the process of professionally analyzing movements in a video and extracting the movement characteristics and performance as numerical data.

[0010] "Natural language generation" refers to a technology in which a computer generates sentences based on analyzed data and provides evaluations and feedback in a form that is easy for users to understand.

[0011] "Feedback" refers to evaluations and advice provided to users by the system, and is information that allows users to improve their skills.

[0012] A "key frame" is a video frame that represents an important movement in motion analysis, and is extracted to improve the accuracy of the analysis.

[0013] A "numerical model" is a data model that mathematically represents the movements in a video and is used to quantify the results of motion analysis.

[0014] "Customization" refers to the process of tailoring the generated feedback and advice to a user's specific needs based on their individual input.

[0015] The term "system" is a general term for hardware and software that executes a series of processes based on the present invention and provides specific sports instruction. [Brief explanation of the drawings]

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

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

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

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

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

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

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

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

[0024] [First embodiment]

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

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

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

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

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

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

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

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

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

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

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

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

[0037] The present invention provides a system that allows users to easily analyze and receive feedback on their sports activities. Specifically, users can receive professional feedback by inputting video footage and their concerns in text format. Specific embodiments of this system are described below.

[0038] Explaining program processing in natural language

[0039] 1. User operations

[0040] First, users film their sporting activities with their smartphone or tablet camera, such as a golf swing or a soccer shot. Once filming is complete, they open the dedicated application, select "New Analysis Session" within the app, and proceed to the screen where they can upload the video they filmed.

[0041] Next, the user fills in the form with their concerns or problems in text format. For example, "My golf swing isn't going well" or "My soccer shots are going to the right." The text and video are then paired and ready to be sent from the device to the server.

[0042] 2. Terminal Processing

[0043] The device combines the video file uploaded by the user and the input text information into a single data package, which is then prepared to be processed as a set. This data package is then sent to the server via the network.

[0044] 3. Server Processing

[0045] The server analyzes the received data package and separates the video file from the text information. The video file is then passed to the motion analysis AI, which then begins the analysis. The motion analysis AI analyzes each frame of the video and extracts movement characteristics. For example, in the case of a golf swing, the backswing, top, downswing, impact, and follow-through phases are analyzed.

[0046] Based on the results of the motion analysis, the server passes the data to a natural language generation AI, which evaluates the analysis results in natural language and generates feedback, such as, "Your backswing is too early, which can cause your body to lose balance."

[0047] In parallel, the server generates specific advice based on the user's input text about their problem, such as "To hit the ball straight, it is important to keep your shoulders aligned at the start of your backswing."

[0048] The generated evaluations and advice are again compiled into a data package and sent to the user terminal.

[0049] 4. Feedback from the server to the device

[0050] The device receives and analyzes the response data package from the server. Feedback text and advice are displayed in the app's designated display area. For example, specific instruction such as "Make sure your right elbow does not exceed waist height during the backswing" is displayed.

[0051] Users can check this feedback and advice through the app and incorporate it into their next practice or training. In this way, users can receive specific guidance to improve their sports skills without having to take professional lessons.

[0052] Specific examples

[0053] For example, in a specific example of golf swing analysis, a user takes a video of a driver shot and inputs their concern that "the ball doesn't fly straight." The device sends the video and their concern to the server. The server's motion analysis AI analyzes the video and provides feedback that "your backswing is too high" to the generation AI. Meanwhile, the user's concern is also passed to the generation AI, which generates advice such as "to make the ball fly straight, it is important that your right elbow does not exceed shoulder height during the backswing." This feedback and advice is sent to the user's device, where the user can review it and use it in their training.

[0054] The above is a description of a specific embodiment of the present invention. The advantage of this system is that users can easily receive professional analysis and individual feedback.

[0055] The processing flow will be explained below.

[0056] Step 1:

[0057] User – Captures their sports activities with a smartphone or tablet camera, for example, recording videos including golf swings and soccer shots.

[0058] Step 2:

[0059] User – Open the dedicated application and select “New Analysis Session.” Select the video file you shot and proceed to the upload screen.

[0060] Step 3:

[0061] User – Enters their concerns or problems into a form within the application. For example, they might write, "My golf swing isn't going well" or "My soccer shots are going to the right."

[0062] Step 4:

[0063] Terminal – The video file uploaded by the user and the input text information are combined into a single data package, so that the video and the text information about the user's concerns are processed together.

[0064] Step 5:

[0065] Terminal – Constructs a network request to send a data package to the server and sends it to the server in an HTTP POST request.

[0066] Step 6:

[0067] Server – Analyzes the received data package and separates the video file from the text information. The separated video file is passed to the motion analysis AI.

[0068] Step 7:

[0069] Server (Motion Analysis AI) – Analyzes each frame in a video file and extracts movement characteristics, such as recognizing the backswing, top, impact, and follow-through stages of a golf swing.

[0070] Step 8:

[0071] Server (Motion Analysis AI) – Once feature extraction is complete, it converts it into a mathematical model. The extracted keyframes are also represented as mathematical models.

[0072] Step 9:

[0073] Server - Sends the extracted behavioral data to a natural language generation AI and generates feedback that expresses the analysis results in natural language.

[0074] Step 10:

[0075] Server (Natural Language Generation AI) - Based on the analysis results, it generates evaluation comments such as, "Your backswing is too early, which can cause your body to lose balance."

[0076] Step 11:

[0077] Server – At the same time, the server passes the received text information about the user's concerns to a natural language generation AI, which then generates specific advice for that concern. For example, it generates advice such as, "To hit the ball straight, it is important to keep your shoulders aligned as you start your backswing."

[0078] Step 12:

[0079] Server – Combines the generated feedback and advice into a single response data package and sends the data package to the user device.

[0080] Step 13:

[0081] Device – Receives the response data package from the server, parses it, and displays the feedback text and advice in the specified display location in the app.

[0082] Step 14:

[0083] User – The user can check the feedback and advice through the application and use it for their next practice or training. For example, they can incorporate specific instruction such as, "Make sure your right elbow does not exceed waist height during the backswing."

[0084] This series of processes allows the user to effectively improve their sports skills without having to take specialized lessons.

[0085] Example 1

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

[0087] Conventional sports analysis systems require specialized knowledge to obtain advanced analysis and feedback, making them difficult for general users to use. Furthermore, the feedback is general and cannot address the concerns and issues of individual users. Furthermore, when handling large amounts of data, data optimization and efficient processing are required.

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

[0089] In this invention, the server includes means for receiving videos of sports activities filmed by the user, means for receiving text information about worries and challenges entered by the user, means for combining the received videos and text information into a single data package, means for transmitting the data package to the server, means for analyzing the received data package on the server side and separating the videos and text information, means for analyzing the videos using a motion analysis AI and extracting movement characteristics, means for generating evaluations and feedback using a natural language generation AI based on the analysis results, and means for combining the generated evaluations and feedback into a data package and providing it to the user. This allows the user to easily receive professional analysis and individual feedback.

[0090] "User" refers to a person who uses the system to analyze their own sports activities and obtain feedback.

[0091] "Video of filmed sports activity" refers to video data that a user has filmed with a camera device to record their own sports performance.

[0092] "Text information" refers to descriptions of the user's concerns and problems that the user enters into the system.

[0093] A "data package" refers to data in a format that combines a video file and text information into one.

[0094] "Motion analysis AI" refers to artificial intelligence technology that analyzes videos of sports activities and extracts movement characteristics.

[0095] "Natural language generation AI" refers to artificial intelligence technology that generates evaluations and feedback in natural language based on analysis results.

[0096] "Feedback" refers to evaluations and advice regarding a user's sports performance generated by motion analysis and generative AI.

[0097] "Optimizing data capacity" refers to the process of increasing data transfer efficiency by compressing the size of video files.

[0098] "Server" refers to a central computing system that receives data packages sent by users and performs analysis and feedback generation.

[0099] The present invention provides a system that allows a user to easily analyze and receive feedback on their sports activities. Specific embodiments will be described below.

[0100] User operations

[0101] Users use the camera on their smartphone or tablet to film their own sports activities. For example, a golf swing or a soccer shot. After filming is complete, they launch the dedicated application and select "New Analysis Session." Next, they move to the video upload screen, select the video, and upload it. They then enter their concerns or issues in text form into the form. For example, "My golf swing isn't going well" or "My soccer shots are going to the right." The device is then ready to send the video and text information as a set from the device to the server.

[0102] Terminal handling

[0103] The device combines the video file uploaded by the user and the input text information into a single data package. This data package is then compressed to optimize data size and packaged in JSON format. This data package is then sent to the server via the network. This operation improves data transfer efficiency and optimizes performance.

[0104] Server Processing

[0105] The server analyzes the received data package and separates the video file from the text information. Specifically, it analyzes the received JSON data and extracts the data corresponding to "video_file" and "text_info." The video file is then passed to the motion analysis AI, which begins analysis. The motion analysis AI analyzes each frame in the video and extracts movement characteristics. For example, in the case of a golf swing, the backswing, top, downswing, impact, and follow-through stages are analyzed.

[0106] Once the analysis is complete, the server passes the analysis results to the generation AI. The generation AI generates feedback in natural language based on the analysis results. For example, it may generate feedback such as, "Your backswing is too early, which can cause your body to lose balance." At the same time, the text information about the user's concerns is passed to the generation AI, which generates specific advice. For example, it may say, "To hit the ball straight, it is important to keep your shoulders aligned as you start your backswing." The generated feedback and advice are then compiled into a data package again and sent to the user's device.

[0107] Feedback from the server to the device

[0108] The device receives the response data package from the server and parses it again in JSON format. Once the feedback message and advice are extracted, they are displayed in the specified location in the application. For example, specific instruction content such as "Make sure your right elbow does not exceed waist height during the backswing" is displayed. The user can review this feedback and advice and use it to improve their next practice or training.

[0109] Specific examples

[0110] For example, suppose a user takes a video of their driver shot and inputs their concern that "the ball doesn't fly straight." The device sends the video and text information to the server. The server's motion analysis AI analyzes the video and provides feedback that "your backswing is too high" to the generation AI. The server also passes the user's concern to the generation AI, which generates advice such as "to make the ball fly straight, it is important that your right elbow does not exceed shoulder height during the backswing." This feedback and advice is sent to the user's device, where the user can review it and use it in their training.

[0111] As described above, the embodiments of the present invention allow users to easily receive professional analysis and individual feedback, and effectively improve their sports skills.

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

[0113] Step 1:

[0114] A user uses a smartphone or tablet camera to record their own sports activities. The input is a video of the sports activities recorded by the camera, and the output is a video file. Specifically, the user launches the device's camera app, records the sports activities, and saves the video.

[0115] Step 2:

[0116] The user launches a dedicated application and selects "New Analysis Session." The input is the user's actions and the captured video file, and the output is the "New Analysis Session" screen of the application. Specifically, the user opens the app and taps the button to start a new session.

[0117] Step 3:

[0118] Users navigate to the screen where they can upload the videos they have taken, select the video, and upload it. The input is the video file to be uploaded, and the output is the video data that is temporarily saved on the device. Specifically, the user selects the video file and taps the upload button.

[0119] Step 4:

[0120] The user enters their worries or issues in text format into the form. The input is text information describing the user's worries, and the output is text data that is saved on the device. Specifically, the user enters their worries or issues into the text input field.

[0121] Step 5:

[0122] The device combines the video file and text information obtained from the user into a single data package. The input is the video file and text information, and the output is a data package (JSON format). Specifically, the device compresses the video file and packages it together with the text information in JSON format.

[0123] Step 6:

[0124] The terminal transmits a data package to the server. The input is the data package, and the output is a transmission completion notification to the server. Specifically, the terminal uploads the data package to the server via the network.

[0125] Step 7:

[0126] The server parses the received data package and separates the video file and text information. The input is the data package, and the output is the video file and text information. Specifically, the server parses the JSON data and extracts each element.

[0127] Step 8:

[0128] The server passes the video file to the motion analysis AI, which then begins the analysis. The input is the video file, and the output is motion feature extraction data. For specific movements, the motion analysis AI analyzes each frame of the video and extracts the movement features as a numerical model.

[0129] Step 9:

[0130] The server passes the data to the generation AI based on the analysis results, which generates evaluations and feedback in natural language. The input is movement feature extraction data and text information, and the output is the generated feedback and advice. For specific movements, the generation AI generates feedback messages based on the movement analysis data and text information.

[0131] Step 10:

[0132] The server compiles the generated feedback and advice into a data package and sends it to the user's device. The input is the generated feedback and advice, and the output is a notification of completion of transmission to the user's device. Specifically, the server packages the feedback and advice in JSON format and sends it to the device.

[0133] Step 11:

[0134] The terminal receives the response data package from the server and parses and displays the feedback and advice. The input is the response data package, and the output is the displayed feedback and advice. Specifically, the terminal parses the JSON data and displays the feedback message and advice in the application.

[0135] Step 12:

[0136] The user can review the provided feedback and advice and use it to improve their next practice or training. The input is the displayed feedback and advice, and the output is the user's understanding and action they can take. Specific actions include the user reading the feedback and advice on the application screen and applying it to their sports activities.

[0137] (Application example 1)

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

[0139] Conventional sports activity analysis systems have had the problem of making it difficult for users to receive feedback to improve their skills. In particular, when using them in a physical store, users need specialized equipment and expert guidance, making it difficult to easily receive analysis and feedback. The present invention aims to provide a system that allows users to easily analyze their own sports activities in a physical store and receive instant feedback.

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

[0141] In this invention, the server includes means for receiving a video of a sports activity filmed by a user, means for receiving text information regarding worries or issues entered by the user, means for analyzing the motion of the received video, means for generating an evaluation and feedback in natural language based on the motion analysis results, means for providing the generated evaluation and feedback to the user, and means for displaying the evaluation and feedback to the user in real time using an augmented reality device for use in a physical store. This allows users to easily analyze their own sports activity in the physical store and receive instant feedback.

[0142] A "user" is an entity that provides video and text information for analyzing sports activities.

[0143] "Video" is video data of a sports activity taken by a user.

[0144] "Text information" is character information about worries or issues entered by the user.

[0145] "Motion analysis" is the process of analyzing received video and extracting specific movement characteristics.

[0146] The "evaluation" is an analysis result of the user's motion based on the results obtained by the motion analysis.

[0147] "Feedback" is advice for improvement given based on motion analysis and the concerns and issues input by the user.

[0148] An "augmented reality device" is a digital device that displays ratings and feedback to users in real time within a physical store.

[0149] "Brick and Mortar Store" means a physical location that sells sports-related products and has facilities for users to view and analyze their sports activities.

[0150] This invention relates to a system that allows users to easily analyze their own sports activities in a physical store and receive instant feedback. The system uses hardware such as smartphones, tablets, augmented reality devices, and servers, and software such as motion analysis AI and natural language generation AI.

[0151] First, users film their sports activities (for example, a golf swing or tennis stroke) using the camera on their smartphone or tablet. Next, they open a dedicated application and upload the video. They then fill in a form with their concerns and problems in text format. Examples of this text include, "My golf swing isn't going well" or "My tennis forehand isn't stable."

[0152] The terminal receives this data and combines the video file and text information into a single data package, which is then sent to a server via the Internet.

[0153] The server analyzes the received data package. First, it separates the video file from the text information and passes the video file to the motion analysis AI. The motion analysis AI extracts the characteristics of the movements in the video for each frame and analyzes the movements. For example, in the case of a golf swing, it analyzes each stage: backswing, top, downswing, impact, and follow-through.

[0154] Based on the motion analysis results, the server passes the data to a natural language generation AI. This generation AI evaluates the analysis results in natural language and generates feedback. For example, it may evaluate the result as "Your backswing is too early, causing your body balance to be off" or provide specific advice such as "Pay attention to the position of your right elbow during the backswing."

[0155] The generated ratings and feedback are then packaged again and sent to the device, which then instantly displays the received feedback to the user using an augmented reality device, allowing the user to see the feedback in real time.

[0156] For example, suppose a user practicing their golf driver shot inputs their concern that "the ball veers to the right" and sends the video to a server. The server analyzes the video and obtains the analysis result that "your right elbow is positioned too high during the backswing." Based on this analysis result, the AI ​​generates feedback such as "To hit the ball straight, it is important that your right elbow does not exceed shoulder height during the backswing," and sends this to the device. The user can view this feedback in real time through an augmented reality device and use it to improve their future practice.

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

[0158] "My golf swing isn't going well. The specific problem is that the ball keeps going to the right. Based on the results of video analysis, please give me some advice on what the problem is and how I can improve it."

[0159] The above is a specific embodiment of the present invention.

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

[0161] Step 1:

[0162] Users film their sports activities using the camera on their smartphone or tablet. They select the video file they have filmed using a dedicated application and enter text information about their concerns or problems. The input content includes specific problems such as "My golf swing is not going well." Input data: Video of sports activities, text information about concerns or problems. Output data: Video files and text information uploaded by the user.

[0163] Step 2:

[0164] The terminal combines the video file uploaded by the user and the input text information into a single data package. This allows the video and text information to be processed as a set. The data package is sent to the server via the Internet. Input data: Video file and text information from the user. Output data: A data package that combines the video file and text information.

[0165] Step 3:

[0166] The server analyzes the received data package and separates the video file from the text information. The video file is passed to the motion analysis AI, which analyzes each frame in the video and extracts movement characteristics. For example, in the case of a golf swing, it analyzes each stage: backswing, top, downswing, impact, and follow-through. Input data: video file, text information. Output data: video analysis results (movement characteristic data).

[0167] Step 4:

[0168] The server passes data based on the results of the motion analysis to a natural language generation AI. This generation AI evaluates the analysis results in natural language and generates feedback. For example, it may generate an evaluation such as "Your backswing is too early, causing your body balance to be off" or specific advice such as "Pay attention to the position of your right elbow during your backswing." Input data: Video analysis results. Output data: Evaluation, feedback, and advice in natural language.

[0169] Step 5:

[0170] The server then assembles the generated evaluations and feedback into a data package and sends it to the terminal. The user's terminal analyzes the received data package and displays the feedback and advice in the display location specified by the application. For example, specific instruction content such as "When you backswing, make sure your right elbow does not exceed waist height" is displayed. Input data: Evaluation, feedback, and advice in natural language. Output data: Feedback and advice displayed on the user's terminal.

[0171] Step 6:

[0172] Users can check the feedback and advice provided through the application and reflect it in their next practice or training. This allows users to receive specific guidance to improve their sports skills without having to take professional lessons. Input data: Feedback and advice displayed on the user's device. Output data: Reflection in the user's training plan.

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

[0174] The present invention provides a system that allows users to easily receive analysis of their sports activities, feedback, and personalized advice based on their emotions. Specific embodiments of this system will be described below.

[0175] Explaining program processing in natural language

[0176] 1. User operations

[0177] First, users film their sporting activities with their smartphone or tablet camera, such as a golf swing or a soccer shot. Once filming is complete, they open the dedicated application, select "New Analysis Session" within the app, and proceed to the screen where they can upload the video they filmed.

[0178] Next, the user fills in the form with their concerns or problems in text format. For example, "My golf swing isn't going well" or "My soccer shots are going to the right." The text and video are then paired and ready to be sent from the device to the server.

[0179] 2. Terminal Processing

[0180] The device combines the video file uploaded by the user and the input text information into a single data package, which is then prepared to be processed as a set. This data package is then sent to the server via the network.

[0181] 3. Server Processing

[0182] The server analyzes the received data package and separates the video file from the text information. The video file is then passed to the motion analysis AI, which then begins the analysis. The motion analysis AI analyzes each frame of the video and extracts movement characteristics. For example, in the case of a golf swing, the backswing, top, downswing, impact, and follow-through phases are analyzed.

[0183] Based on the results of the motion analysis, the server passes the data to a natural language generation AI, which evaluates the analysis results in natural language and generates feedback, such as, "Your backswing is too early, which can cause your body to lose balance."

[0184] In parallel, the server generates specific advice based on the user's input text about their concerns. For example, it generates advice such as, "To hit the ball straight, it is important to keep your shoulders aligned at the start of your backswing." This generation process uses an emotion engine.

[0185] 4. Emotion Engine Processing

[0186] The server (emotion engine) recognizes the user's emotions from the text information and video input. For example, it extracts emotions such as "anxiety" or "confidence" from facial expressions and voice characteristics in the video. It also learns the user's reactions to past feedback and feeds them forward to the next feedback.

[0187] The emotion engine customizes feedback and advice based on the analysis results and emotional data. For example, if the user is nervous, it generates a message such as, "It's important to relax and make a smooth swing."

[0188] 5. Feedback from the server to the device

[0189] The server assembles the generated evaluations and advice into a single response data package and transmits it to the user terminal.

[0190] The device receives and analyzes the response data package from the server. Feedback text and advice are displayed in the app's designated display location. For example, specific instruction such as "Make sure your right elbow does not exceed waist height during the backswing" is displayed.

[0191] Users can check this feedback and advice through the application and incorporate it into their next practice or training. In this way, users can receive specific guidance to improve their sports skills without having to take professional lessons.

[0192] Specific examples

[0193] For example, in a specific example of golf swing analysis, a user takes a video of a driver shot and inputs their concern that "the ball doesn't fly straight." The device sends the video and their concern to the server. The server's motion analysis AI analyzes the video and passes the feedback result that "your backswing is too high" to the generation AI. The emotion engine also extracts "anxiety" from the user's input text and passes this information to the generation AI. Based on this, the generation AI generates advice such as "To hit the ball straight, it is important to keep your right elbow in a consistent position during the backswing. A relaxed swing will be more effective." This feedback and advice is sent to the user's device, where the user can review it and use it in their next training session.

[0194] The above is a description of a specific embodiment of the present invention. The advantage of this system is that it provides professional analysis and personalized feedback, as well as quick, customized instruction that takes into account the user's emotional state.

[0195] The processing flow will be explained below.

[0196] Step 1:

[0197] User – Captures their sports activities with a smartphone or tablet camera, for example, recording videos including golf swings and soccer shots.

[0198] Step 2:

[0199] User – Open the dedicated application and select “New Analysis Session.” Select the video file you shot and proceed to the upload screen.

[0200] Step 3:

[0201] User – Enters their concerns or problems into a form within the application. For example, they might write, "My golf swing isn't going well" or "My soccer shots are going to the right."

[0202] Step 4:

[0203] Terminal – The video file uploaded by the user and the input text information are combined into a single data package, so that the video and the text information about the user's concerns are processed together.

[0204] Step 5:

[0205] Terminal – Constructs a network request to send a data package to the server and sends it to the server in an HTTP POST request.

[0206] Step 6:

[0207] Server – Analyzes the received data package and separates the video file from the text information. The separated video file is passed to the motion analysis AI.

[0208] Step 7:

[0209] Server (Motion Analysis AI) – Analyzes each frame in a video file and extracts movement characteristics, such as recognizing the backswing, top, downswing, impact, and follow-through stages of a golf swing.

[0210] Step 8:

[0211] Server (Motion Analysis AI) – Once feature extraction is complete, it converts it into a mathematical model. The extracted keyframes are also represented as mathematical models.

[0212] Step 9:

[0213] Server - Sends the extracted behavioral data to a natural language generation AI and generates feedback that expresses the analysis results in natural language.

[0214] Step 10:

[0215] Server (Natural Language Generation AI) - Based on the analysis results, it generates evaluation comments such as, "Your backswing is too early, which can cause your body to lose balance."

[0216] Step 11:

[0217] Server – At the same time, the server passes the received text information about the user's concerns to a natural language generation AI, which then generates specific advice for that concern. For example, it generates advice such as, "To hit the ball straight, it is important to keep your shoulders aligned as you start your backswing."

[0218] Step 12:

[0219] Server – The emotion engine recognizes the user’s emotions from the input text and video. It extracts emotions from facial expressions and voice features in the video. For example, it identifies emotions such as “anxiety” or “confidence.”

[0220] Step 13:

[0221] Server (Emotion Engine) – Customizes the generated feedback and advice based on the extracted emotion data, for example, if the user is nervous, additional advice to relax may be included.

[0222] Step 14:

[0223] Server – Repackages the customized ratings and feedback into a single response data package and sends it to the user's device.

[0224] Step 15:

[0225] Device – Receives and parses the response data package from the server. The feedback text and advice are displayed in the app's designated display location.

[0226] Step 16:

[0227] User – The user can check the feedback and advice through the application and use it for their next practice or training. For example, they can incorporate specific instruction such as, "Make sure your right elbow does not exceed waist height during the backswing."

[0228] This process allows users to receive quick, customized feedback and advice, helping them to effectively improve their sports skills.

[0229] Example 2

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

[0231] Conventional sports activity analysis systems can analyze videos of a user's sports activities and provide certain feedback, but it is difficult to provide personalized feedback that takes into account the user's individual concerns and emotional state. Furthermore, due to a lack of learning based on the user's input concerns and past feedback, it is not possible to provide effective guidance. Therefore, there is a need for a system that provides analysis and feedback that takes into account the user's emotional state and individual concerns.

[0232] The identification process by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes means for receiving a video of a sports activity filmed by a user, means for receiving text information related to worries and issues input by the user, means for performing motion analysis on the received video, means for generating evaluations and feedback in natural language based on the motion analysis results, means for recognizing emotions from the text information and video input by the user and customizing feedback and advice based on the information, means for learning the user's reactions to past feedback and feeding the feedback forward to the next feedback, and means for providing the generated evaluations and feedback to the user. This makes it possible to provide personalized feedback that takes into account the user's emotions and worries.

[0233] "User" refers to the person whose sports activity is analyzed using this system.

[0234] "Video" refers to a video file taken by a user to record their sports activities.

[0235] "Text information" refers to explanatory text about worries or issues entered by the user.

[0236] "Motion analysis" refers to the process of analyzing movements in a video and extracting their characteristics.

[0237] "Evaluation" refers to the analysis results and feedback information generated based on the results of motion analysis.

[0238] "Feedback" refers to instruction or advice provided to a user based on motion analysis and evaluation.

[0239] "Emotion" refers to the psychological state or mood that a user expresses in input text information and video.

[0240] "Customization" refers to tailoring the content of feedback and advice to a specific user's situation and needs.

[0241] "Feedforward" refers to the process of learning from the user's reactions to past feedback and reflecting that in the next feedback.

[0242] "Means" refers to the functions and methods used within the system to perform each of the above processes.

[0243] "System" refers to a set of devices and software that integrates all of the above means to provide analysis and feedback of sports activities to users.

[0244] The present invention provides a system that allows users to easily receive analysis of their sports activities, feedback, and customized advice based on their emotions. Specific embodiments of this system will be described below.

[0245] The system is operated through application software that runs on devices such as smartphones and tablets. Users film their sports activities with the device's camera and upload the videos to the application. For example, this includes golf swings and soccer shots.

[0246] User operations

[0247] First, users film their sporting activities with the camera on their smartphone or tablet. Once filming is complete, they open a dedicated application. Within the app, they select "New Analysis Session" and move to the screen where they can upload the filmed video. Next, users fill in a form with their concerns or problems in text form. For example, "My golf swing isn't going well" or "My soccer shots are going to the right." This text and video are then paired and ready to be sent from the device to the server.

[0248] Terminal handling

[0249] The terminal combines the video file uploaded by the user and the input text information into a single data package, which includes the video file, the text information about the user's worries, and the user information, and is then transmitted to the server via the network.

[0250] Server Processing

[0251] The server analyzes the received data package and separates the video file from the text information. The video file is then passed to the motion analysis AI, which then begins the analysis. The motion analysis AI analyzes each frame of the video and extracts movement characteristics. For example, in the case of a golf swing, each stage of the swing—backswing, top, downswing, impact, and follow-through—is analyzed in detail.

[0252] Next, the server passes the data to a natural language generation AI based on the results of the motion analysis, which evaluates the analysis results in natural language and generates feedback. For example, the feedback might be, "Your backswing is too early, which can cause your body to lose balance." The server then generates specific advice based on the text of the user's concerns. For example, the advice might be, "To hit the ball straight, it's important to keep your shoulders aligned at the start of your backswing." An emotion engine is used in this generation process.

[0253] Emotion engine processing

[0254] The server has an emotion engine that recognizes the user's emotions from the text information and video input. For example, emotions such as "anxiety" or "confidence" are extracted from facial expressions and voice characteristics in the video. This information is reflected in the analysis results and used to customize feedback and advice. Furthermore, the server learns the user's reactions to past feedback and feeds this forward to the next feedback. This allows for the generation of personalized feedback that takes into account the user's emotions and concerns.

[0255] Display feedback on device

[0256] The server compiles the generated evaluations and advice into a single response data package and sends it to the user's device. The device receives the response data package from the server and analyzes it. The feedback text and advice are displayed in a specified display location on the app. For example, specific instruction content such as "Make sure your right elbow does not exceed waist height during your backswing" is displayed. The user can check this feedback and advice through the app and incorporate it into their next practice or training session.

[0257] Specific examples

[0258] For example, in a specific example of golf swing analysis, a user takes a video of a driver shot and inputs their concern that "the ball doesn't fly straight." The device sends the video and their concern to the server. The server's motion analysis AI analyzes the video and passes the feedback result, "your backswing is too high," to the generation AI. The emotion engine also extracts "anxiety" from the user's input text and passes it to the generation AI. Based on this, the generation AI generates advice such as, "To hit the ball straight, it's important to keep your right elbow in a consistent position during the backswing. A relaxed swing will be more effective." This feedback and advice is sent to the user's device, where the user can review it and use it in their next training session.

[0259] A specific example of a prompt is as follows:

[0260] "I'd like to analyze my golf swing. I uploaded a video. Problem: The ball doesn't fly straight. Analysis result: My backswing is too high. Emotion: Anxiety."

[0261] The above is a description of a specific embodiment of the present invention. The advantage of this system is that it provides professional analysis and personalized feedback, as well as quick, customized instruction that takes into account the user's emotional state.

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

[0263] Step 1: User takes photo and uploads

[0264] A user uses a camera on a smartphone or tablet to capture a video of a sporting activity, such as a golf swing or a soccer shot.

[0265] Input: Video files of filmed sports activities.

[0266] How it works: Save the video you have taken, launch the dedicated application, select "New analysis session," and then proceed to the screen for uploading the video.

[0267] Output: A video file ready to be uploaded.

[0268] Step 2: User inputs assignment and submits data

[0269] Users fill out a form with text about their concerns or problems related to their sports activities, such as "My golf swing isn't going well" or "My soccer shots are going to the right."

[0270] Input: Text information about worries and issues entered by the user.

[0271] What it does: You fill out a form with the required information and press the submit button to prepare the data to be sent to the server.

[0272] Output: A data package containing the text information entered by the user and the video footage.

[0273] Step 3: Generate a data package on the device

[0274] The terminal combines the video file uploaded by the user and the input text information into a single data package, which includes the video file, the text information, and the user information.

[0275] Input: User's video file and text information.

[0276] Operation: This information is consolidated and prepared for transmission.

[0277] Output: A consolidated data package.

[0278] Step 4: Send data from the device to the server

[0279] The terminal transmits the compiled data package to the server over the network.

[0280] Input: Integrated data package.

[0281] Operation: Sends data to the server over the network and confirms successful transmission.

[0282] Output: The data package sent to the server.

[0283] Step 5: Server receives and separates data

[0284] The server analyzes the data package received from the terminal and separates the video file from the text information.

[0285] Input: The transmitted data package.

[0286] What it does: Analyzes the data, saves the video file to media storage, and stores the text information in a database.

[0287] Output: Separated video files and text information.

[0288] Step 6: Motion analysis by server

[0289] The server passes the video file to the motion analysis AI, which then analyzes the video frames and extracts movement characteristics.

[0290] Input: Video file.

[0291] Motion: Analyze each frame and convert motion characteristics into a numerical model, such as the backswing, top, downswing, impact, and follow-through of a golf swing.

[0292] Output: Analyzed behavioral feature data.

[0293] Step 7: Server evaluation and feedback generation

[0294] Based on the results of the motion analysis, the server passes the data to a natural language generation AI, which evaluates the analysis results in natural language and generates feedback.

[0295] Input: Behavioral feature data.

[0296] Behavior: Create feedback based on the evaluation criteria, for example, "Your backswing is too early, which can cause your body to lose balance."

[0297] Output: Generated natural language feedback.

[0298] Step 8: Server-based sentiment analysis and customization

[0299] The server has an emotion engine that recognizes emotions from the text information and video input by the user and customizes feedback and advice based on that data.

[0300] Input: The analyzed behavioral feature data and user input text information.

[0301] How it works: The emotion engine recognizes the user's psychological state and adjusts the feedback accordingly. For example, if "anxiety" is detected, the engine will say, "It's important to relax and make a smooth swing."

[0302] Output: Customized feedback and advice.

[0303] Step 9: Server generates and sends data package

[0304] The server collects the generated feedback and advice into a single response data package and transmits it to the user terminal.

[0305] Input: Customized feedback and advice.

[0306] Action: Assembles a data package and sends it to the user.

[0307] Output: The response data package sent.

[0308] Step 10: Display feedback on the device

[0309] The device receives and analyzes the response data package from the server, and the feedback and advice is displayed in the specified display location in the app.

[0310] Input: Response data package.

[0311] What it does: Analyzes the data and displays the feedback.

[0312] Output: On-screen feedback and advice that the user can see.

[0313] (Application example 2)

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

[0315] The present invention aims to improve efficiency and safety by analyzing the movements of robots and workers operating in factories. Conventional systems do not adequately integrate movement analysis and emotion recognition, making it difficult to automate and customize feedback and advice. This problem prevents users from quickly obtaining specific and appropriate improvement measures.

[0316] 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 receiving a video of a behavioral activity captured by a user, means for receiving text information related to worries and issues entered by the user, means for analyzing the motion of the received video, means for generating evaluations and feedback in natural language based on the results of the motion analysis, means for recognizing the user's emotions and customizing the generated evaluations and feedback, and means for providing the generated evaluations and feedback to the user. This enables specific guidance to efficiently and safely improve the operations of robots and workers in factories.

[0317] A "user" is a person who uses the system to record and upload videos of their behavioral activities and receives analysis results and feedback.

[0318] "Video of behavioral activity" is video data taken by a user to record a specific action.

[0319] "Text information" is written data about worries and issues entered by the user, and is input information for the system to analyze.

[0320] "Motion analysis" is the process of converting the movements in a received video into a numerical model and extracting features.

[0321] "Evaluation and feedback" refers to advice and guidance for the user that is generated in natural language based on the results of the motion analysis.

[0322] "Customization" is the process of optimizing the generated ratings and feedback for each individual based on the user's emotional data and input data.

[0323] "Emotion recognition" is the process of inferring and extracting a user's emotional state from video and text information.

[0324] A "prompt sentence" is an instruction sentence generated based on behavioral characteristic data and emotional data, and is used to customize evaluation and feedback.

[0325] The "system" refers to a computer-based platform that includes the above-mentioned means and enables users to easily receive behavioral analysis, feedback, and customized advice.

[0326] The system for implementing the present invention mainly analyzes the user's actions and provides feedback and customized advice. The specific configuration and processing of this system will be described below.

[0327] First, users film their activities with a smartphone or tablet and upload the video to a dedicated application. Next, they use an input form within the application to enter text information about their concerns and issues. This video and text information is then sent from the device to a server.

[0328] The server receives the video file and text information and first performs a motion analysis of the video. This motion analysis uses image processing libraries such as OpenCV and Keras and deep learning libraries. Each frame in the video is analyzed, and key frames and motion characteristics are converted into a numerical model. The results of this motion analysis provide detailed data on the user's actions.

[0329] The server then recognizes the worker's emotions from the video. For emotion recognition, it uses facial expression recognition algorithms and voice analysis technology to estimate the user's emotional state. It is recommended to use a deep learning model for this. The estimated emotion data is then used to generate feedback.

[0330] The behavior analysis results and emotion data are passed to a natural language generation AI on the server, which generates evaluations and feedback. The generation AI evaluates the data in natural language and provides feedback in a form that is easy for the user to understand. This process includes generating appropriate prompt sentences.

[0331] For example, the generated prompt text is:

[0332] "The robot's behavioral characteristics are as follows: [behavior characteristic data]. The worker's emotions are as follows: [emotion data]. Please tell us the best way to improve it."

[0333] Based on this prompt, the generative AI generates specific advice, such as "Slow down the welding speed a little to allow the worker to relax."

[0334] Finally, the generated evaluations and feedback are sent from the server to the user's device, where they can view the information through the application. Through this process, users can quickly obtain specific and customized advice to improve the efficiency and safety of robots and workers in their factories.

[0335] The advantage of this system is that it provides a user-friendly interface while utilizing advanced technology. In addition, by combining motion analysis and emotion recognition, it can provide feedback that takes into account the user's psychological state.

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

[0337] Step 1:

[0338] Users use their smartphones or tablets to record robot operations and worker movements in the factory. Next, they launch a dedicated application and open an input screen for uploading the video file they have recorded. By selecting the video file and pressing the upload button, the video file is sent from the device to the server.

[0339] Input: Video files capturing robot operations and worker movements in a factory

[0340] Output: Video file uploaded to the server

[0341] Step 2:

[0342] Users enter their concerns or problems as text into the application's input form. By entering a specific problem, such as "The robot's welding is misaligned," and pressing the send button, the text information is sent from the device to the server.

[0343] Input: Text information about worries and issues entered by the user

[0344] Output: Text information sent to the server

[0345] Step 3:

[0346] The server then passes the received video file to the motion analysis unit, which uses OpenCV and Keras to sequentially analyze each frame in the video, extract key frames, and convert motion characteristics into numerical data.

[0347] Input: Video file

[0348] Output: Numerical data that indicates the characteristics of the behavior

[0349] Step 4:

[0350] The server analyzes the user's facial expressions and voice from the received video file to extract emotional information. Emotion recognition is performed using a facial expression recognition algorithm and voice analysis technology. A deep learning model is used to generate emotional data.

[0351] Input: Video file

[0352] Output: User emotion data

[0353] Step 5:

[0354] The server then uses the generative AI model to generate prompts based on the results of the motion analysis and the emotion data. The generated prompts are instructions that include both the motion characteristic data and the emotion data.

[0355] Input: Motion analysis results, emotion data

[0356] Output: prompt statement

[0357] Step 6:

[0358] The server uses the generated prompt sentences to have the generative AI model generate evaluations and feedback, which include specific advice for the user's concerns and challenges.

[0359] Input: prompt statement

[0360] Output: Rating and feedback

[0361] Step 7:

[0362] The server compiles the generated evaluations and feedback into a data package and sends it to the user's device, which analyzes the received data and displays the feedback and advice in a designated display location of the application.

[0363] Input: Rating and feedback data package

[0364] Output: Feedback and advice displayed on the application

[0365] Step 8:

[0366] Users can review the feedback and advice provided through the application and incorporate it into their next work or training.

[0367] Input: Feedback and advice displayed on the application

[0368] Output: Improvements reflected in future work and training

[0369] This series of processing steps allows users to quickly obtain specific and customized advice to improve the efficiency and safety of robot operation and work movements within their factories.

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

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

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

[0373] [Second embodiment]

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

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

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

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

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

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

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

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

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

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

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

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

[0386] The present invention provides a system that allows users to easily analyze and receive feedback on their sports activities. Specifically, users can receive professional feedback by inputting video footage and their concerns in text format. Specific embodiments of this system are described below.

[0387] Explaining program processing in natural language

[0388] 1. User operations

[0389] First, users film their sporting activities with their smartphone or tablet camera, such as a golf swing or a soccer shot. Once filming is complete, they open the dedicated application, select "New Analysis Session" within the app, and proceed to the screen where they can upload the video they filmed.

[0390] Next, the user fills in the form with their concerns or problems in text format. For example, "My golf swing isn't going well" or "My soccer shots are going to the right." The text and video are then paired and ready to be sent from the device to the server.

[0391] 2. Terminal Processing

[0392] The device combines the video file uploaded by the user and the input text information into a single data package, which is then prepared to be processed as a set. This data package is then sent to the server via the network.

[0393] 3. Server Processing

[0394] The server analyzes the received data package and separates the video file from the text information. The video file is then passed to the motion analysis AI, which then begins the analysis. The motion analysis AI analyzes each frame of the video and extracts movement characteristics. For example, in the case of a golf swing, the backswing, top, downswing, impact, and follow-through phases are analyzed.

[0395] Based on the results of the motion analysis, the server passes the data to a natural language generation AI, which evaluates the analysis results in natural language and generates feedback, such as, "Your backswing is too early, which can cause your body to lose balance."

[0396] In parallel, the server generates specific advice based on the user's input text about their problem, such as "To hit the ball straight, it is important to keep your shoulders aligned at the start of your backswing."

[0397] The generated evaluations and advice are again compiled into a data package and sent to the user terminal.

[0398] 4. Feedback from the server to the device

[0399] The device receives and analyzes the response data package from the server. Feedback text and advice are displayed in the app's designated display area. For example, specific instruction such as "Make sure your right elbow does not exceed waist height during the backswing" is displayed.

[0400] Users can check this feedback and advice through the app and incorporate it into their next practice or training. In this way, users can receive specific guidance to improve their sports skills without having to take professional lessons.

[0401] Specific examples

[0402] For example, in a specific example of golf swing analysis, a user takes a video of a driver shot and inputs their concern that "the ball doesn't fly straight." The device sends the video and their concern to the server. The server's motion analysis AI analyzes the video and provides feedback that "your backswing is too high" to the generation AI. Meanwhile, the user's concern is also passed to the generation AI, which generates advice such as "to make the ball fly straight, it is important that your right elbow does not exceed shoulder height during the backswing." This feedback and advice is sent to the user's device, where the user can review it and use it in their training.

[0403] The above is a description of a specific embodiment of the present invention. The advantage of this system is that users can easily receive professional analysis and individual feedback.

[0404] The processing flow will be explained below.

[0405] Step 1:

[0406] User – Captures their sports activities with a smartphone or tablet camera, for example, recording videos including golf swings and soccer shots.

[0407] Step 2:

[0408] User – Open the dedicated application and select “New Analysis Session.” Select the video file you shot and proceed to the upload screen.

[0409] Step 3:

[0410] User – Enters their concerns or problems into a form within the application. For example, they might write, "My golf swing isn't going well" or "My soccer shots are going to the right."

[0411] Step 4:

[0412] Terminal – The video file uploaded by the user and the input text information are combined into a single data package, so that the video and the text information about the user's concerns are processed together.

[0413] Step 5:

[0414] Terminal – Constructs a network request to send a data package to the server and sends it to the server in an HTTP POST request.

[0415] Step 6:

[0416] Server – Analyzes the received data package and separates the video file from the text information. The separated video file is passed to the motion analysis AI.

[0417] Step 7:

[0418] Server (Motion Analysis AI) – Analyzes each frame in a video file and extracts movement characteristics, such as recognizing the backswing, top, impact, and follow-through stages of a golf swing.

[0419] Step 8:

[0420] Server (Motion Analysis AI) – Once feature extraction is complete, it converts it into a mathematical model. The extracted keyframes are also represented as mathematical models.

[0421] Step 9:

[0422] Server - Sends the extracted behavioral data to a natural language generation AI and generates feedback that expresses the analysis results in natural language.

[0423] Step 10:

[0424] Server (Natural Language Generation AI) - Based on the analysis results, it generates evaluation comments such as, "Your backswing is too early, which can cause your body to lose balance."

[0425] Step 11:

[0426] Server – At the same time, the server passes the received text information about the user's concerns to a natural language generation AI, which then generates specific advice for that concern. For example, it generates advice such as, "To hit the ball straight, it is important to keep your shoulders aligned as you start your backswing."

[0427] Step 12:

[0428] Server – Combines the generated feedback and advice into a single response data package and sends the data package to the user device.

[0429] Step 13:

[0430] Device – Receives the response data package from the server, parses it, and displays the feedback text and advice in the specified display location in the app.

[0431] Step 14:

[0432] User – The user can check the feedback and advice through the application and use it for their next practice or training. For example, they can incorporate specific instruction such as, "Make sure your right elbow does not exceed waist height during the backswing."

[0433] This series of processes allows the user to effectively improve their sports skills without having to take specialized lessons.

[0434] Example 1

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

[0436] Conventional sports analysis systems require specialized knowledge to obtain advanced analysis and feedback, making them difficult for general users to use. Furthermore, the feedback is general and cannot address the concerns and issues of individual users. Furthermore, when handling large amounts of data, data optimization and efficient processing are required.

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

[0438] In this invention, the server includes means for receiving videos of sports activities filmed by the user, means for receiving text information about worries and challenges entered by the user, means for combining the received videos and text information into a single data package, means for transmitting the data package to the server, means for analyzing the received data package on the server side and separating the videos and text information, means for analyzing the videos using a motion analysis AI and extracting movement characteristics, means for generating evaluations and feedback using a natural language generation AI based on the analysis results, and means for combining the generated evaluations and feedback into a data package and providing it to the user. This allows the user to easily receive professional analysis and individual feedback.

[0439] "User" refers to a person who uses the system to analyze their own sports activities and obtain feedback.

[0440] "Video of filmed sports activity" refers to video data that a user has filmed with a camera device to record their own sports performance.

[0441] "Text information" refers to descriptions of the user's concerns and problems that the user enters into the system.

[0442] A "data package" refers to data in a format that combines a video file and text information into one.

[0443] "Motion analysis AI" refers to artificial intelligence technology that analyzes videos of sports activities and extracts movement characteristics.

[0444] "Natural language generation AI" refers to artificial intelligence technology that generates evaluations and feedback in natural language based on analysis results.

[0445] "Feedback" refers to evaluations and advice regarding a user's sports performance generated by motion analysis and generative AI.

[0446] "Optimizing data capacity" refers to the process of increasing data transfer efficiency by compressing the size of video files.

[0447] "Server" refers to a central computing system that receives data packages sent by users and performs analysis and feedback generation.

[0448] The present invention provides a system that allows a user to easily analyze and receive feedback on their sports activities. Specific embodiments will be described below.

[0449] User operations

[0450] Users use the camera on their smartphone or tablet to film their own sports activities. For example, a golf swing or a soccer shot. After filming is complete, they launch the dedicated application and select "New Analysis Session." Next, they move to the video upload screen, select the video, and upload it. They then enter their concerns or issues in text form into the form. For example, "My golf swing isn't going well" or "My soccer shots are going to the right." The device is then ready to send the video and text information as a set from the device to the server.

[0451] Terminal handling

[0452] The device combines the video file uploaded by the user and the input text information into a single data package. This data package is then compressed to optimize data size and packaged in JSON format. This data package is then sent to the server via the network. This operation improves data transfer efficiency and optimizes performance.

[0453] Server Processing

[0454] The server analyzes the received data package and separates the video file from the text information. Specifically, it analyzes the received JSON data and extracts the data corresponding to "video_file" and "text_info." The video file is then passed to the motion analysis AI, which begins analysis. The motion analysis AI analyzes each frame in the video and extracts movement characteristics. For example, in the case of a golf swing, the backswing, top, downswing, impact, and follow-through stages are analyzed.

[0455] Once the analysis is complete, the server passes the analysis results to the generation AI. The generation AI generates feedback in natural language based on the analysis results. For example, it may generate feedback such as, "Your backswing is too early, which can cause your body to lose balance." At the same time, the text information about the user's concerns is passed to the generation AI, which generates specific advice. For example, it may say, "To hit the ball straight, it is important to keep your shoulders aligned as you start your backswing." The generated feedback and advice are then compiled into a data package again and sent to the user's device.

[0456] Feedback from the server to the device

[0457] The device receives the response data package from the server and parses it again in JSON format. Once the feedback message and advice are extracted, they are displayed in the specified location in the application. For example, specific instruction content such as "Make sure your right elbow does not exceed waist height during the backswing" is displayed. The user can review this feedback and advice and use it to improve their next practice or training.

[0458] Specific examples

[0459] For example, suppose a user takes a video of their driver shot and inputs their concern that "the ball doesn't fly straight." The device sends the video and text information to the server. The server's motion analysis AI analyzes the video and provides feedback that "your backswing is too high" to the generation AI. The server also passes the user's concern to the generation AI, which generates advice such as "to make the ball fly straight, it is important that your right elbow does not exceed shoulder height during the backswing." This feedback and advice is sent to the user's device, where the user can review it and use it in their training.

[0460] As described above, the embodiments of the present invention allow users to easily receive professional analysis and individual feedback, and effectively improve their sports skills.

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

[0462] Step 1:

[0463] A user uses a smartphone or tablet camera to record their own sports activities. The input is a video of the sports activities recorded by the camera, and the output is a video file. Specifically, the user launches the device's camera app, records the sports activities, and saves the video.

[0464] Step 2:

[0465] The user launches a dedicated application and selects "New Analysis Session." The input is the user's actions and the captured video file, and the output is the "New Analysis Session" screen of the application. Specifically, the user opens the app and taps the button to start a new session.

[0466] Step 3:

[0467] Users navigate to the screen where they can upload the videos they have taken, select the video, and upload it. The input is the video file to be uploaded, and the output is the video data that is temporarily saved on the device. Specifically, the user selects the video file and taps the upload button.

[0468] Step 4:

[0469] The user enters their worries or issues in text format into the form. The input is text information describing the user's worries, and the output is text data that is saved on the device. Specifically, the user enters their worries or issues into the text input field.

[0470] Step 5:

[0471] The device combines the video file and text information obtained from the user into a single data package. The input is the video file and text information, and the output is a data package (JSON format). Specifically, the device compresses the video file and packages it together with the text information in JSON format.

[0472] Step 6:

[0473] The terminal transmits a data package to the server. The input is the data package, and the output is a transmission completion notification to the server. Specifically, the terminal uploads the data package to the server via the network.

[0474] Step 7:

[0475] The server parses the received data package and separates the video file and text information. The input is the data package, and the output is the video file and text information. Specifically, the server parses the JSON data and extracts each element.

[0476] Step 8:

[0477] The server passes the video file to the motion analysis AI, which then begins the analysis. The input is the video file, and the output is motion feature extraction data. For specific movements, the motion analysis AI analyzes each frame of the video and extracts the movement features as a numerical model.

[0478] Step 9:

[0479] The server passes the data to the generation AI based on the analysis results, which generates evaluations and feedback in natural language. The input is movement feature extraction data and text information, and the output is the generated feedback and advice. For specific movements, the generation AI generates feedback messages based on the movement analysis data and text information.

[0480] Step 10:

[0481] The server compiles the generated feedback and advice into a data package and sends it to the user's device. The input is the generated feedback and advice, and the output is a notification of completion of transmission to the user's device. Specifically, the server packages the feedback and advice in JSON format and sends it to the device.

[0482] Step 11:

[0483] The terminal receives the response data package from the server and parses and displays the feedback and advice. The input is the response data package, and the output is the displayed feedback and advice. Specifically, the terminal parses the JSON data and displays the feedback message and advice in the application.

[0484] Step 12:

[0485] The user can review the provided feedback and advice and use it to improve their next practice or training. The input is the displayed feedback and advice, and the output is the user's understanding and action they can take. Specific actions include the user reading the feedback and advice on the application screen and applying it to their sports activities.

[0486] (Application example 1)

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

[0488] Conventional sports activity analysis systems have had the problem of making it difficult for users to receive feedback to improve their skills. In particular, when using them in a physical store, users need specialized equipment and expert guidance, making it difficult to easily receive analysis and feedback. The present invention aims to provide a system that allows users to easily analyze their own sports activities in a physical store and receive instant feedback.

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

[0490] In this invention, the server includes means for receiving a video of a sports activity filmed by a user, means for receiving text information regarding worries or issues entered by the user, means for analyzing the motion of the received video, means for generating an evaluation and feedback in natural language based on the motion analysis results, means for providing the generated evaluation and feedback to the user, and means for displaying the evaluation and feedback to the user in real time using an augmented reality device for use in a physical store. This allows users to easily analyze their own sports activity in the physical store and receive instant feedback.

[0491] A "user" is an entity that provides video and text information for analyzing sports activities.

[0492] "Video" is video data of a sports activity taken by a user.

[0493] "Text information" is character information about worries or issues entered by the user.

[0494] "Motion analysis" is the process of analyzing received video and extracting specific movement characteristics.

[0495] The "evaluation" is an analysis result of the user's motion based on the results obtained by the motion analysis.

[0496] "Feedback" is advice for improvement given based on motion analysis and the concerns and issues input by the user.

[0497] An "augmented reality device" is a digital device that displays ratings and feedback to users in real time within a physical store.

[0498] "Brick and Mortar Store" means a physical location that sells sports-related products and has facilities for users to view and analyze their sports activities.

[0499] This invention relates to a system that allows users to easily analyze their own sports activities in a physical store and receive instant feedback. The system uses hardware such as smartphones, tablets, augmented reality devices, and servers, and software such as motion analysis AI and natural language generation AI.

[0500] First, users film their sports activities (for example, a golf swing or tennis stroke) using the camera on their smartphone or tablet. Next, they open a dedicated application and upload the video. They then fill in a form with their concerns and problems in text format. Examples of this text include, "My golf swing isn't going well" or "My tennis forehand isn't stable."

[0501] The terminal receives this data and combines the video file and text information into a single data package, which is then sent to a server via the Internet.

[0502] The server analyzes the received data package. First, it separates the video file from the text information and passes the video file to the motion analysis AI. The motion analysis AI extracts the characteristics of the movements in the video for each frame and analyzes the movements. For example, in the case of a golf swing, it analyzes each stage: backswing, top, downswing, impact, and follow-through.

[0503] Based on the motion analysis results, the server passes the data to a natural language generation AI. This generation AI evaluates the analysis results in natural language and generates feedback. For example, it may evaluate the result as "Your backswing is too early, causing your body balance to be off" or provide specific advice such as "Pay attention to the position of your right elbow during the backswing."

[0504] The generated ratings and feedback are then packaged again and sent to the device, which then instantly displays the received feedback to the user using an augmented reality device, allowing the user to see the feedback in real time.

[0505] For example, suppose a user practicing their golf driver shot inputs their concern that "the ball veers to the right" and sends the video to a server. The server analyzes the video and obtains the analysis result that "your right elbow is positioned too high during the backswing." Based on this analysis result, the AI ​​generates feedback such as "To hit the ball straight, it is important that your right elbow does not exceed shoulder height during the backswing," and sends this to the device. The user can view this feedback in real time through an augmented reality device and use it to improve their future practice.

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

[0507] "My golf swing isn't going well. The specific problem is that the ball keeps going to the right. Based on the results of video analysis, please give me some advice on what the problem is and how I can improve it."

[0508] The above is a specific embodiment of the present invention.

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

[0510] Step 1:

[0511] Users film their sports activities using the camera on their smartphone or tablet. They select the video file they have filmed using a dedicated application and enter text information about their concerns or problems. The input content includes specific problems such as "My golf swing is not going well." Input data: Video of sports activities, text information about concerns or problems. Output data: Video files and text information uploaded by the user.

[0512] Step 2:

[0513] The terminal combines the video file uploaded by the user and the input text information into a single data package. This allows the video and text information to be processed as a set. The data package is sent to the server via the Internet. Input data: Video file and text information from the user. Output data: A data package that combines the video file and text information.

[0514] Step 3:

[0515] The server analyzes the received data package and separates the video file from the text information. The video file is passed to the motion analysis AI, which analyzes each frame in the video and extracts movement characteristics. For example, in the case of a golf swing, it analyzes each stage: backswing, top, downswing, impact, and follow-through. Input data: video file, text information. Output data: video analysis results (movement characteristic data).

[0516] Step 4:

[0517] The server passes data based on the results of the motion analysis to a natural language generation AI. This generation AI evaluates the analysis results in natural language and generates feedback. For example, it may generate an evaluation such as "Your backswing is too early, causing your body balance to be off" or specific advice such as "Pay attention to the position of your right elbow during your backswing." Input data: Video analysis results. Output data: Evaluation, feedback, and advice in natural language.

[0518] Step 5:

[0519] The server then assembles the generated evaluations and feedback into a data package and sends it to the terminal. The user's terminal analyzes the received data package and displays the feedback and advice in the display location specified by the application. For example, specific instruction content such as "When you backswing, make sure your right elbow does not exceed waist height" is displayed. Input data: Evaluation, feedback, and advice in natural language. Output data: Feedback and advice displayed on the user's terminal.

[0520] Step 6:

[0521] Users can check the feedback and advice provided through the application and reflect it in their next practice or training. This allows users to receive specific guidance to improve their sports skills without having to take professional lessons. Input data: Feedback and advice displayed on the user's device. Output data: Reflection in the user's training plan.

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

[0523] The present invention provides a system that allows users to easily receive analysis of their sports activities, feedback, and personalized advice based on their emotions. Specific embodiments of this system will be described below.

[0524] Explaining program processing in natural language

[0525] 1. User operations

[0526] First, users film their sporting activities with their smartphone or tablet camera, such as a golf swing or a soccer shot. Once filming is complete, they open the dedicated application, select "New Analysis Session" within the app, and proceed to the screen where they can upload the video they filmed.

[0527] Next, the user fills in the form with their concerns or problems in text format. For example, "My golf swing isn't going well" or "My soccer shots are going to the right." The text and video are then paired and ready to be sent from the device to the server.

[0528] 2. Terminal Processing

[0529] The device combines the video file uploaded by the user and the input text information into a single data package, which is then prepared to be processed as a set. This data package is then sent to the server via the network.

[0530] 3. Server Processing

[0531] The server analyzes the received data package and separates the video file from the text information. The video file is then passed to the motion analysis AI, which then begins the analysis. The motion analysis AI analyzes each frame of the video and extracts movement characteristics. For example, in the case of a golf swing, the backswing, top, downswing, impact, and follow-through phases are analyzed.

[0532] Based on the results of the motion analysis, the server passes the data to a natural language generation AI, which evaluates the analysis results in natural language and generates feedback, such as, "Your backswing is too early, which can cause your body to lose balance."

[0533] In parallel, the server generates specific advice based on the user's input text about their concerns. For example, it generates advice such as, "To hit the ball straight, it is important to keep your shoulders aligned at the start of your backswing." This generation process uses an emotion engine.

[0534] 4. Emotion Engine Processing

[0535] The server (emotion engine) recognizes the user's emotions from the text information and video input. For example, it extracts emotions such as "anxiety" or "confidence" from facial expressions and voice characteristics in the video. It also learns the user's reactions to past feedback and feeds them forward to the next feedback.

[0536] The emotion engine customizes feedback and advice based on the analysis results and emotional data. For example, if the user is nervous, it generates a message such as, "It's important to relax and make a smooth swing."

[0537] 5. Feedback from the server to the device

[0538] The server assembles the generated evaluations and advice into a single response data package and transmits it to the user terminal.

[0539] The device receives and analyzes the response data package from the server. Feedback text and advice are displayed in the app's designated display location. For example, specific instruction such as "Make sure your right elbow does not exceed waist height during the backswing" is displayed.

[0540] Users can check this feedback and advice through the application and incorporate it into their next practice or training. In this way, users can receive specific guidance to improve their sports skills without having to take professional lessons.

[0541] Specific examples

[0542] For example, in a specific example of golf swing analysis, a user takes a video of a driver shot and inputs their concern that "the ball doesn't fly straight." The device sends the video and their concern to the server. The server's motion analysis AI analyzes the video and passes the feedback result that "your backswing is too high" to the generation AI. The emotion engine also extracts "anxiety" from the user's input text and passes this information to the generation AI. Based on this, the generation AI generates advice such as "To hit the ball straight, it is important to keep your right elbow in a consistent position during the backswing. A relaxed swing will be more effective." This feedback and advice is sent to the user's device, where the user can review it and use it in their next training session.

[0543] The above is a description of a specific embodiment of the present invention. The advantage of this system is that it provides professional analysis and personalized feedback, as well as quick, customized instruction that takes into account the user's emotional state.

[0544] The processing flow will be explained below.

[0545] Step 1:

[0546] User – Captures their sports activities with a smartphone or tablet camera, for example, recording videos including golf swings and soccer shots.

[0547] Step 2:

[0548] User – Open the dedicated application and select “New Analysis Session.” Select the video file you shot and proceed to the upload screen.

[0549] Step 3:

[0550] User – Enters their concerns or problems into a form within the application. For example, they might write, "My golf swing isn't going well" or "My soccer shots are going to the right."

[0551] Step 4:

[0552] Terminal – The video file uploaded by the user and the input text information are combined into a single data package, so that the video and the text information about the user's concerns are processed together.

[0553] Step 5:

[0554] Terminal – Constructs a network request to send a data package to the server and sends it to the server in an HTTP POST request.

[0555] Step 6:

[0556] Server – Analyzes the received data package and separates the video file from the text information. The separated video file is passed to the motion analysis AI.

[0557] Step 7:

[0558] Server (Motion Analysis AI) – Analyzes each frame in a video file and extracts movement characteristics, such as recognizing the backswing, top, downswing, impact, and follow-through stages of a golf swing.

[0559] Step 8:

[0560] Server (Motion Analysis AI) – Once feature extraction is complete, it converts it into a mathematical model. The extracted keyframes are also represented as mathematical models.

[0561] Step 9:

[0562] Server - Sends the extracted behavioral data to a natural language generation AI and generates feedback that expresses the analysis results in natural language.

[0563] Step 10:

[0564] Server (Natural Language Generation AI) - Based on the analysis results, it generates evaluation comments such as, "Your backswing is too early, which can cause your body to lose balance."

[0565] Step 11:

[0566] Server – At the same time, the server passes the received text information about the user's concerns to a natural language generation AI, which then generates specific advice for that concern. For example, it generates advice such as, "To hit the ball straight, it is important to keep your shoulders aligned as you start your backswing."

[0567] Step 12:

[0568] Server – The emotion engine recognizes the user’s emotions from the input text and video. It extracts emotions from facial expressions and voice features in the video. For example, it identifies emotions such as “anxiety” or “confidence.”

[0569] Step 13:

[0570] Server (Emotion Engine) – Customizes the generated feedback and advice based on the extracted emotion data, for example, if the user is nervous, additional advice to relax may be included.

[0571] Step 14:

[0572] Server – Repackages the customized ratings and feedback into a single response data package and sends it to the user's device.

[0573] Step 15:

[0574] Device – Receives and parses the response data package from the server. The feedback text and advice are displayed in the app's designated display location.

[0575] Step 16:

[0576] User – The user can check the feedback and advice through the application and use it for their next practice or training. For example, they can incorporate specific instruction such as, "Make sure your right elbow does not exceed waist height during the backswing."

[0577] This process allows users to receive quick, customized feedback and advice, helping them to effectively improve their sports skills.

[0578] Example 2

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

[0580] Conventional sports activity analysis systems can analyze videos of a user's sports activities and provide certain feedback, but it is difficult to provide personalized feedback that takes into account the user's individual concerns and emotional state. Furthermore, due to a lack of learning based on the user's input concerns and past feedback, it is not possible to provide effective guidance. Therefore, there is a need for a system that provides analysis and feedback that takes into account the user's emotional state and individual concerns.

[0581] The identification process by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes means for receiving a video of a sports activity filmed by a user, means for receiving text information related to worries and issues input by the user, means for performing motion analysis on the received video, means for generating evaluations and feedback in natural language based on the motion analysis results, means for recognizing emotions from the text information and video input by the user and customizing feedback and advice based on the information, means for learning the user's reactions to past feedback and feeding the feedback forward to the next feedback, and means for providing the generated evaluations and feedback to the user. This makes it possible to provide personalized feedback that takes into account the user's emotions and worries.

[0582] "User" refers to the person whose sports activity is analyzed using this system.

[0583] "Video" refers to a video file taken by a user to record their sports activities.

[0584] "Text information" refers to explanatory text about worries or issues entered by the user.

[0585] "Motion analysis" refers to the process of analyzing movements in a video and extracting their characteristics.

[0586] "Evaluation" refers to the analysis results and feedback information generated based on the results of motion analysis.

[0587] "Feedback" refers to instruction or advice provided to a user based on motion analysis and evaluation.

[0588] "Emotion" refers to the psychological state or mood that a user expresses in input text information and video.

[0589] "Customization" refers to tailoring the content of feedback and advice to a specific user's situation and needs.

[0590] "Feedforward" refers to the process of learning from the user's reactions to past feedback and reflecting that in the next feedback.

[0591] "Means" refers to the functions and methods used within the system to perform each of the above processes.

[0592] "System" refers to a set of devices and software that integrates all of the above means to provide analysis and feedback of sports activities to users.

[0593] The present invention provides a system that allows users to easily receive analysis of their sports activities, feedback, and customized advice based on their emotions. Specific embodiments of this system will be described below.

[0594] The system is operated through application software that runs on devices such as smartphones and tablets. Users film their sports activities with the device's camera and upload the videos to the application. For example, this includes golf swings and soccer shots.

[0595] User operations

[0596] First, users film their sporting activities with the camera on their smartphone or tablet. Once filming is complete, they open a dedicated application. Within the app, they select "New Analysis Session" and move to the screen where they can upload the filmed video. Next, users fill in a form with their concerns or problems in text form. For example, "My golf swing isn't going well" or "My soccer shots are going to the right." This text and video are then paired and ready to be sent from the device to the server.

[0597] Terminal handling

[0598] The terminal combines the video file uploaded by the user and the input text information into a single data package, which includes the video file, the text information about the user's worries, and the user information, and is then transmitted to the server via the network.

[0599] Server Processing

[0600] The server analyzes the received data package and separates the video file from the text information. The video file is then passed to the motion analysis AI, which then begins the analysis. The motion analysis AI analyzes each frame of the video and extracts movement characteristics. For example, in the case of a golf swing, each stage of the swing—backswing, top, downswing, impact, and follow-through—is analyzed in detail.

[0601] Next, the server passes the data to a natural language generation AI based on the results of the motion analysis, which evaluates the analysis results in natural language and generates feedback. For example, the feedback might be, "Your backswing is too early, which can cause your body to lose balance." The server then generates specific advice based on the text of the user's concerns. For example, the advice might be, "To hit the ball straight, it's important to keep your shoulders aligned at the start of your backswing." An emotion engine is used in this generation process.

[0602] Emotion engine processing

[0603] The server has an emotion engine that recognizes the user's emotions from the text information and video input. For example, emotions such as "anxiety" or "confidence" are extracted from facial expressions and voice characteristics in the video. This information is reflected in the analysis results and used to customize feedback and advice. Furthermore, the server learns the user's reactions to past feedback and feeds this forward to the next feedback. This allows for the generation of personalized feedback that takes into account the user's emotions and concerns.

[0604] Display feedback on device

[0605] The server compiles the generated evaluations and advice into a single response data package and sends it to the user's device. The device receives the response data package from the server and analyzes it. The feedback text and advice are displayed in a specified display location on the app. For example, specific instruction content such as "Make sure your right elbow does not exceed waist height during your backswing" is displayed. The user can check this feedback and advice through the app and incorporate it into their next practice or training session.

[0606] Specific examples

[0607] For example, in a specific example of golf swing analysis, a user takes a video of a driver shot and inputs their concern that "the ball doesn't fly straight." The device sends the video and their concern to the server. The server's motion analysis AI analyzes the video and passes the feedback result, "your backswing is too high," to the generation AI. The emotion engine also extracts "anxiety" from the user's input text and passes it to the generation AI. Based on this, the generation AI generates advice such as, "To hit the ball straight, it's important to keep your right elbow in a consistent position during the backswing. A relaxed swing will be more effective." This feedback and advice is sent to the user's device, where the user can review it and use it in their next training session.

[0608] A specific example of a prompt is as follows:

[0609] "I'd like to analyze my golf swing. I uploaded a video. Problem: The ball doesn't fly straight. Analysis result: My backswing is too high. Emotion: Anxiety."

[0610] The above is a description of a specific embodiment of the present invention. The advantage of this system is that it provides professional analysis and personalized feedback, as well as quick, customized instruction that takes into account the user's emotional state.

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

[0612] Step 1: User takes photo and uploads

[0613] A user uses a camera on a smartphone or tablet to capture a video of a sporting activity, such as a golf swing or a soccer shot.

[0614] Input: Video files of filmed sports activities.

[0615] How it works: Save the video you have taken, launch the dedicated application, select "New analysis session," and then proceed to the screen for uploading the video.

[0616] Output: A video file ready to be uploaded.

[0617] Step 2: User inputs assignment and submits data

[0618] Users fill out a form with text about their concerns or problems related to their sports activities, such as "My golf swing isn't going well" or "My soccer shots are going to the right."

[0619] Input: Text information about worries and issues entered by the user.

[0620] What it does: You fill out a form with the required information and press the submit button to prepare the data to be sent to the server.

[0621] Output: A data package containing the text information entered by the user and the video footage.

[0622] Step 3: Generate a data package on the device

[0623] The terminal combines the video file uploaded by the user and the input text information into a single data package, which includes the video file, the text information, and the user information.

[0624] Input: User's video file and text information.

[0625] Operation: This information is consolidated and prepared for transmission.

[0626] Output: A consolidated data package.

[0627] Step 4: Send data from the device to the server

[0628] The terminal transmits the compiled data package to the server over the network.

[0629] Input: Integrated data package.

[0630] Operation: Sends data to the server over the network and confirms successful transmission.

[0631] Output: The data package sent to the server.

[0632] Step 5: Server receives and separates data

[0633] The server analyzes the data package received from the terminal and separates the video file from the text information.

[0634] Input: The transmitted data package.

[0635] What it does: Analyzes the data, saves the video file to media storage, and stores the text information in a database.

[0636] Output: Separated video files and text information.

[0637] Step 6: Motion analysis by server

[0638] The server passes the video file to the motion analysis AI, which then analyzes the video frames and extracts movement characteristics.

[0639] Input: Video file.

[0640] Motion: Analyze each frame and convert motion characteristics into a numerical model, such as the backswing, top, downswing, impact, and follow-through of a golf swing.

[0641] Output: Analyzed behavioral feature data.

[0642] Step 7: Server evaluation and feedback generation

[0643] Based on the results of the motion analysis, the server passes the data to a natural language generation AI, which evaluates the analysis results in natural language and generates feedback.

[0644] Input: Behavioral feature data.

[0645] Behavior: Create feedback based on the evaluation criteria, for example, "Your backswing is too early, which can cause your body to lose balance."

[0646] Output: Generated natural language feedback.

[0647] Step 8: Server-based sentiment analysis and customization

[0648] The server has an emotion engine that recognizes emotions from the text information and video input by the user and customizes feedback and advice based on that data.

[0649] Input: The analyzed behavioral feature data and user input text information.

[0650] How it works: The emotion engine recognizes the user's psychological state and adjusts the feedback accordingly. For example, if "anxiety" is detected, the engine will say, "It's important to relax and make a smooth swing."

[0651] Output: Customized feedback and advice.

[0652] Step 9: Server generates and sends data package

[0653] The server collects the generated feedback and advice into a single response data package and transmits it to the user terminal.

[0654] Input: Customized feedback and advice.

[0655] Action: Assembles a data package and sends it to the user.

[0656] Output: The response data package sent.

[0657] Step 10: Display feedback on the device

[0658] The device receives and analyzes the response data package from the server, and the feedback and advice is displayed in the specified display location in the app.

[0659] Input: Response data package.

[0660] What it does: Analyzes the data and displays the feedback.

[0661] Output: On-screen feedback and advice that the user can see.

[0662] (Application example 2)

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

[0664] The present invention aims to improve efficiency and safety by analyzing the movements of robots and workers operating in factories. Conventional systems do not adequately integrate movement analysis and emotion recognition, making it difficult to automate and customize feedback and advice. This problem prevents users from quickly obtaining specific and appropriate improvement measures.

[0665] 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 receiving a video of a behavioral activity captured by a user, means for receiving text information related to worries and issues entered by the user, means for analyzing the motion of the received video, means for generating evaluations and feedback in natural language based on the results of the motion analysis, means for recognizing the user's emotions and customizing the generated evaluations and feedback, and means for providing the generated evaluations and feedback to the user. This enables specific guidance to efficiently and safely improve the operations of robots and workers in factories.

[0666] A "user" is a person who uses the system to record and upload videos of their behavioral activities and receives analysis results and feedback.

[0667] "Video of behavioral activity" is video data taken by a user to record a specific action.

[0668] "Text information" is written data about worries and issues entered by the user, and is input information for the system to analyze.

[0669] "Motion analysis" is the process of converting the movements in a received video into a numerical model and extracting features.

[0670] "Evaluation and feedback" refers to advice and guidance for the user that is generated in natural language based on the results of the motion analysis.

[0671] "Customization" is the process of optimizing the generated ratings and feedback for each individual based on the user's emotional data and input data.

[0672] "Emotion recognition" is the process of inferring and extracting a user's emotional state from video and text information.

[0673] A "prompt sentence" is an instruction sentence generated based on behavioral characteristic data and emotional data, and is used to customize evaluation and feedback.

[0674] The "system" refers to a computer-based platform that includes the above-mentioned means and enables users to easily receive behavioral analysis, feedback, and customized advice.

[0675] The system for implementing the present invention mainly analyzes the user's actions and provides feedback and customized advice. The specific configuration and processing of this system will be described below.

[0676] First, users film their activities with a smartphone or tablet and upload the video to a dedicated application. Next, they use an input form within the application to enter text information about their concerns and issues. This video and text information is then sent from the device to a server.

[0677] The server receives the video file and text information and first performs a motion analysis of the video. This motion analysis uses image processing libraries such as OpenCV and Keras and deep learning libraries. Each frame in the video is analyzed, and key frames and motion characteristics are converted into a numerical model. The results of this motion analysis provide detailed data on the user's actions.

[0678] The server then recognizes the worker's emotions from the video. For emotion recognition, it uses facial expression recognition algorithms and voice analysis technology to estimate the user's emotional state. It is recommended to use a deep learning model for this. The estimated emotion data is then used to generate feedback.

[0679] The behavior analysis results and emotion data are passed to a natural language generation AI on the server, which generates evaluations and feedback. The generation AI evaluates the data in natural language and provides feedback in a form that is easy for the user to understand. This process includes generating appropriate prompt sentences.

[0680] For example, the generated prompt text is:

[0681] "The robot's behavioral characteristics are as follows: [behavior characteristic data]. The worker's emotions are as follows: [emotion data]. Please tell us the best way to improve it."

[0682] Based on this prompt, the generative AI generates specific advice, such as "Slow down the welding speed a little to allow the worker to relax."

[0683] Finally, the generated evaluations and feedback are sent from the server to the user's device, where they can view the information through the application. Through this process, users can quickly obtain specific and customized advice to improve the efficiency and safety of robots and workers in their factories.

[0684] The advantage of this system is that it provides a user-friendly interface while utilizing advanced technology. In addition, by combining motion analysis and emotion recognition, it can provide feedback that takes into account the user's psychological state.

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

[0686] Step 1:

[0687] Users use their smartphones or tablets to record robot operations and worker movements in the factory. Next, they launch a dedicated application and open an input screen for uploading the video file they have recorded. By selecting the video file and pressing the upload button, the video file is sent from the device to the server.

[0688] Input: Video files capturing robot operations and worker movements in a factory

[0689] Output: Video file uploaded to the server

[0690] Step 2:

[0691] Users enter their concerns or problems as text into the application's input form. By entering a specific problem, such as "The robot's welding is misaligned," and pressing the send button, the text information is sent from the device to the server.

[0692] Input: Text information about worries and issues entered by the user

[0693] Output: Text information sent to the server

[0694] Step 3:

[0695] The server then passes the received video file to the motion analysis unit, which uses OpenCV and Keras to sequentially analyze each frame in the video, extract key frames, and convert motion characteristics into numerical data.

[0696] Input: Video file

[0697] Output: Numerical data that indicates the characteristics of the behavior

[0698] Step 4:

[0699] The server analyzes the user's facial expressions and voice from the received video file to extract emotional information. Emotion recognition is performed using a facial expression recognition algorithm and voice analysis technology. A deep learning model is used to generate emotional data.

[0700] Input: Video file

[0701] Output: User emotion data

[0702] Step 5:

[0703] The server then uses the generative AI model to generate prompts based on the results of the motion analysis and the emotion data. The generated prompts are instructions that include both the motion characteristic data and the emotion data.

[0704] Input: Motion analysis results, emotion data

[0705] Output: prompt statement

[0706] Step 6:

[0707] The server uses the generated prompt sentences to have the generative AI model generate evaluations and feedback, which include specific advice for the user's concerns and challenges.

[0708] Input: prompt statement

[0709] Output: Rating and feedback

[0710] Step 7:

[0711] The server compiles the generated evaluations and feedback into a data package and sends it to the user's device, which analyzes the received data and displays the feedback and advice in a designated display location of the application.

[0712] Input: Rating and feedback data package

[0713] Output: Feedback and advice displayed on the application

[0714] Step 8:

[0715] Users can review the feedback and advice provided through the application and incorporate it into their next work or training.

[0716] Input: Feedback and advice displayed on the application

[0717] Output: Improvements reflected in future work and training

[0718] This series of processing steps allows users to quickly obtain specific and customized advice to improve the efficiency and safety of robot operation and work movements within their factories.

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

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

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

[0722] [Third embodiment]

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

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

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

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

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

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

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

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

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

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

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

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

[0735] The present invention provides a system that allows users to easily analyze and receive feedback on their sports activities. Specifically, users can receive professional feedback by inputting video footage and their concerns in text format. Specific embodiments of this system are described below.

[0736] Explaining program processing in natural language

[0737] 1. User operations

[0738] First, users film their sporting activities with their smartphone or tablet camera, such as a golf swing or a soccer shot. Once filming is complete, they open the dedicated application, select "New Analysis Session" within the app, and proceed to the screen where they can upload the video they filmed.

[0739] Next, the user fills in the form with their concerns or problems in text format. For example, "My golf swing isn't going well" or "My soccer shots are going to the right." The text and video are then paired and ready to be sent from the device to the server.

[0740] 2. Terminal Processing

[0741] The device combines the video file uploaded by the user and the input text information into a single data package, which is then prepared to be processed as a set. This data package is then sent to the server via the network.

[0742] 3. Server Processing

[0743] The server analyzes the received data package and separates the video file from the text information. The video file is then passed to the motion analysis AI, which then begins the analysis. The motion analysis AI analyzes each frame of the video and extracts movement characteristics. For example, in the case of a golf swing, the backswing, top, downswing, impact, and follow-through phases are analyzed.

[0744] Based on the results of the motion analysis, the server passes the data to a natural language generation AI, which evaluates the analysis results in natural language and generates feedback, such as, "Your backswing is too early, which can cause your body to lose balance."

[0745] In parallel, the server generates specific advice based on the user's input text about their problem, such as "To hit the ball straight, it is important to keep your shoulders aligned at the start of your backswing."

[0746] The generated evaluations and advice are again compiled into a data package and sent to the user terminal.

[0747] 4. Feedback from the server to the device

[0748] The device receives and analyzes the response data package from the server. Feedback text and advice are displayed in the app's designated display area. For example, specific instruction such as "Make sure your right elbow does not exceed waist height during the backswing" is displayed.

[0749] Users can check this feedback and advice through the app and incorporate it into their next practice or training. In this way, users can receive specific guidance to improve their sports skills without having to take professional lessons.

[0750] Specific examples

[0751] For example, in a specific example of golf swing analysis, a user takes a video of a driver shot and inputs their concern that "the ball doesn't fly straight." The device sends the video and their concern to the server. The server's motion analysis AI analyzes the video and provides feedback that "your backswing is too high" to the generation AI. Meanwhile, the user's concern is also passed to the generation AI, which generates advice such as "to make the ball fly straight, it is important that your right elbow does not exceed shoulder height during the backswing." This feedback and advice is sent to the user's device, where the user can review it and use it in their training.

[0752] The above is a description of a specific embodiment of the present invention. The advantage of this system is that users can easily receive professional analysis and individual feedback.

[0753] The processing flow will be explained below.

[0754] Step 1:

[0755] User – Captures their sports activities with a smartphone or tablet camera, for example, recording videos including golf swings and soccer shots.

[0756] Step 2:

[0757] User – Open the dedicated application and select “New Analysis Session.” Select the video file you shot and proceed to the upload screen.

[0758] Step 3:

[0759] User – Enters their concerns or problems into a form within the application. For example, they might write, "My golf swing isn't going well" or "My soccer shots are going to the right."

[0760] Step 4:

[0761] Terminal – The video file uploaded by the user and the input text information are combined into a single data package, so that the video and the text information about the user's concerns are processed together.

[0762] Step 5:

[0763] Terminal – Constructs a network request to send a data package to the server and sends it to the server in an HTTP POST request.

[0764] Step 6:

[0765] Server – Analyzes the received data package and separates the video file from the text information. The separated video file is passed to the motion analysis AI.

[0766] Step 7:

[0767] Server (Motion Analysis AI) – Analyzes each frame in a video file and extracts movement characteristics, such as recognizing the backswing, top, impact, and follow-through stages of a golf swing.

[0768] Step 8:

[0769] Server (Motion Analysis AI) – Once feature extraction is complete, it converts it into a mathematical model. The extracted keyframes are also represented as mathematical models.

[0770] Step 9:

[0771] Server - Sends the extracted behavioral data to a natural language generation AI and generates feedback that expresses the analysis results in natural language.

[0772] Step 10:

[0773] Server (Natural Language Generation AI) - Based on the analysis results, it generates evaluation comments such as, "Your backswing is too early, which can cause your body to lose balance."

[0774] Step 11:

[0775] Server – At the same time, the server passes the received text information about the user's concerns to a natural language generation AI, which then generates specific advice for that concern. For example, it generates advice such as, "To hit the ball straight, it is important to keep your shoulders aligned as you start your backswing."

[0776] Step 12:

[0777] Server – Combines the generated feedback and advice into a single response data package and sends the data package to the user device.

[0778] Step 13:

[0779] Device – Receives the response data package from the server, parses it, and displays the feedback text and advice in the specified display location in the app.

[0780] Step 14:

[0781] User – The user can check the feedback and advice through the application and use it for their next practice or training. For example, they can incorporate specific instruction such as, "Make sure your right elbow does not exceed waist height during the backswing."

[0782] This series of processes allows the user to effectively improve their sports skills without having to take specialized lessons.

[0783] Example 1

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

[0785] Conventional sports analysis systems require specialized knowledge to obtain advanced analysis and feedback, making them difficult for general users to use. Furthermore, the feedback is general and cannot address the concerns and issues of individual users. Furthermore, when handling large amounts of data, data optimization and efficient processing are required.

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

[0787] In this invention, the server includes means for receiving videos of sports activities filmed by the user, means for receiving text information about worries and challenges entered by the user, means for combining the received videos and text information into a single data package, means for transmitting the data package to the server, means for analyzing the received data package on the server side and separating the videos and text information, means for analyzing the videos using a motion analysis AI and extracting movement characteristics, means for generating evaluations and feedback using a natural language generation AI based on the analysis results, and means for combining the generated evaluations and feedback into a data package and providing it to the user. This allows the user to easily receive professional analysis and individual feedback.

[0788] "User" refers to a person who uses the system to analyze their own sports activities and obtain feedback.

[0789] "Video of filmed sports activity" refers to video data that a user has filmed with a camera device to record their own sports performance.

[0790] "Text information" refers to descriptions of the user's concerns and problems that the user enters into the system.

[0791] A "data package" refers to data in a format that combines a video file and text information into one.

[0792] "Motion analysis AI" refers to artificial intelligence technology that analyzes videos of sports activities and extracts movement characteristics.

[0793] "Natural language generation AI" refers to artificial intelligence technology that generates evaluations and feedback in natural language based on analysis results.

[0794] "Feedback" refers to evaluations and advice regarding a user's sports performance generated by motion analysis and generative AI.

[0795] "Optimizing data capacity" refers to the process of increasing data transfer efficiency by compressing the size of video files.

[0796] "Server" refers to a central computing system that receives data packages sent by users and performs analysis and feedback generation.

[0797] The present invention provides a system that allows a user to easily analyze and receive feedback on their sports activities. Specific embodiments will be described below.

[0798] User operations

[0799] Users use the camera on their smartphone or tablet to film their own sports activities. For example, a golf swing or a soccer shot. After filming is complete, they launch the dedicated application and select "New Analysis Session." Next, they move to the video upload screen, select the video, and upload it. They then enter their concerns or issues in text form into the form. For example, "My golf swing isn't going well" or "My soccer shots are going to the right." The device is then ready to send the video and text information as a set from the device to the server.

[0800] Terminal handling

[0801] The device combines the video file uploaded by the user and the input text information into a single data package. This data package is then compressed to optimize data size and packaged in JSON format. This data package is then sent to the server via the network. This operation improves data transfer efficiency and optimizes performance.

[0802] Server Processing

[0803] The server analyzes the received data package and separates the video file from the text information. Specifically, it analyzes the received JSON data and extracts the data corresponding to "video_file" and "text_info." The video file is then passed to the motion analysis AI, which begins analysis. The motion analysis AI analyzes each frame in the video and extracts movement characteristics. For example, in the case of a golf swing, the backswing, top, downswing, impact, and follow-through stages are analyzed.

[0804] Once the analysis is complete, the server passes the analysis results to the generation AI. The generation AI generates feedback in natural language based on the analysis results. For example, it may generate feedback such as, "Your backswing is too early, which can cause your body to lose balance." At the same time, the text information about the user's concerns is passed to the generation AI, which generates specific advice. For example, it may say, "To hit the ball straight, it is important to keep your shoulders aligned as you start your backswing." The generated feedback and advice are then compiled into a data package again and sent to the user's device.

[0805] Feedback from the server to the device

[0806] The device receives the response data package from the server and parses it again in JSON format. Once the feedback message and advice are extracted, they are displayed in the specified location in the application. For example, specific instruction content such as "Make sure your right elbow does not exceed waist height during the backswing" is displayed. The user can review this feedback and advice and use it to improve their next practice or training.

[0807] Specific examples

[0808] For example, suppose a user takes a video of their driver shot and inputs their concern that "the ball doesn't fly straight." The device sends the video and text information to the server. The server's motion analysis AI analyzes the video and provides feedback that "your backswing is too high" to the generation AI. The server also passes the user's concern to the generation AI, which generates advice such as "to make the ball fly straight, it is important that your right elbow does not exceed shoulder height during the backswing." This feedback and advice is sent to the user's device, where the user can review it and use it in their training.

[0809] As described above, the embodiments of the present invention allow users to easily receive professional analysis and individual feedback, and effectively improve their sports skills.

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

[0811] Step 1:

[0812] A user uses a smartphone or tablet camera to record their own sports activities. The input is a video of the sports activities recorded by the camera, and the output is a video file. Specifically, the user launches the device's camera app, records the sports activities, and saves the video.

[0813] Step 2:

[0814] The user launches a dedicated application and selects "New Analysis Session." The input is the user's actions and the captured video file, and the output is the "New Analysis Session" screen of the application. Specifically, the user opens the app and taps the button to start a new session.

[0815] Step 3:

[0816] Users navigate to the screen where they can upload the videos they have taken, select the video, and upload it. The input is the video file to be uploaded, and the output is the video data that is temporarily saved on the device. Specifically, the user selects the video file and taps the upload button.

[0817] Step 4:

[0818] The user enters their worries or issues in text format into the form. The input is text information describing the user's worries, and the output is text data that is saved on the device. Specifically, the user enters their worries or issues into the text input field.

[0819] Step 5:

[0820] The device combines the video file and text information obtained from the user into a single data package. The input is the video file and text information, and the output is a data package (JSON format). Specifically, the device compresses the video file and packages it together with the text information in JSON format.

[0821] Step 6:

[0822] The terminal transmits a data package to the server. The input is the data package, and the output is a transmission completion notification to the server. Specifically, the terminal uploads the data package to the server via the network.

[0823] Step 7:

[0824] The server parses the received data package and separates the video file and text information. The input is the data package, and the output is the video file and text information. Specifically, the server parses the JSON data and extracts each element.

[0825] Step 8:

[0826] The server passes the video file to the motion analysis AI, which then begins the analysis. The input is the video file, and the output is motion feature extraction data. For specific movements, the motion analysis AI analyzes each frame of the video and extracts the movement features as a numerical model.

[0827] Step 9:

[0828] The server passes the data to the generation AI based on the analysis results, which generates evaluations and feedback in natural language. The input is movement feature extraction data and text information, and the output is the generated feedback and advice. For specific movements, the generation AI generates feedback messages based on the movement analysis data and text information.

[0829] Step 10:

[0830] The server compiles the generated feedback and advice into a data package and sends it to the user's device. The input is the generated feedback and advice, and the output is a notification of completion of transmission to the user's device. Specifically, the server packages the feedback and advice in JSON format and sends it to the device.

[0831] Step 11:

[0832] The terminal receives the response data package from the server and parses and displays the feedback and advice. The input is the response data package, and the output is the displayed feedback and advice. Specifically, the terminal parses the JSON data and displays the feedback message and advice in the application.

[0833] Step 12:

[0834] The user can review the provided feedback and advice and use it to improve their next practice or training. The input is the displayed feedback and advice, and the output is the user's understanding and action they can take. Specific actions include the user reading the feedback and advice on the application screen and applying it to their sports activities.

[0835] (Application example 1)

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

[0837] Conventional sports activity analysis systems have had the problem of making it difficult for users to receive feedback to improve their skills. In particular, when using them in a physical store, users need specialized equipment and expert guidance, making it difficult to easily receive analysis and feedback. The present invention aims to provide a system that allows users to easily analyze their own sports activities in a physical store and receive instant feedback.

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

[0839] In this invention, the server includes means for receiving a video of a sports activity filmed by a user, means for receiving text information regarding worries or issues entered by the user, means for analyzing the motion of the received video, means for generating an evaluation and feedback in natural language based on the motion analysis results, means for providing the generated evaluation and feedback to the user, and means for displaying the evaluation and feedback to the user in real time using an augmented reality device for use in a physical store. This allows users to easily analyze their own sports activity in the physical store and receive instant feedback.

[0840] A "user" is an entity that provides video and text information for analyzing sports activities.

[0841] "Video" is video data of a sports activity taken by a user.

[0842] "Text information" is character information about worries or issues entered by the user.

[0843] "Motion analysis" is the process of analyzing received video and extracting specific movement characteristics.

[0844] The "evaluation" is an analysis result of the user's motion based on the results obtained by the motion analysis.

[0845] "Feedback" is advice for improvement given based on motion analysis and the concerns and issues input by the user.

[0846] An "augmented reality device" is a digital device that displays ratings and feedback to users in real time within a physical store.

[0847] "Brick and Mortar Store" means a physical location that sells sports-related products and has facilities for users to view and analyze their sports activities.

[0848] This invention relates to a system that allows users to easily analyze their own sports activities in a physical store and receive instant feedback. The system uses hardware such as smartphones, tablets, augmented reality devices, and servers, and software such as motion analysis AI and natural language generation AI.

[0849] First, users film their sports activities (for example, a golf swing or tennis stroke) using the camera on their smartphone or tablet. Next, they open a dedicated application and upload the video. They then fill in a form with their concerns and problems in text format. Examples of this text include, "My golf swing isn't going well" or "My tennis forehand isn't stable."

[0850] The terminal receives this data and combines the video file and text information into a single data package, which is then sent to a server via the Internet.

[0851] The server analyzes the received data package. First, it separates the video file from the text information and passes the video file to the motion analysis AI. The motion analysis AI extracts the characteristics of the movements in the video for each frame and analyzes the movements. For example, in the case of a golf swing, it analyzes each stage: backswing, top, downswing, impact, and follow-through.

[0852] Based on the motion analysis results, the server passes the data to a natural language generation AI. This generation AI evaluates the analysis results in natural language and generates feedback. For example, it may evaluate the result as "Your backswing is too early, causing your body balance to be off" or provide specific advice such as "Pay attention to the position of your right elbow during the backswing."

[0853] The generated ratings and feedback are then packaged again and sent to the device, which then instantly displays the received feedback to the user using an augmented reality device, allowing the user to see the feedback in real time.

[0854] For example, suppose a user practicing their golf driver shot inputs their concern that "the ball veers to the right" and sends the video to a server. The server analyzes the video and obtains the analysis result that "your right elbow is positioned too high during the backswing." Based on this analysis result, the AI ​​generates feedback such as "To hit the ball straight, it is important that your right elbow does not exceed shoulder height during the backswing," and sends this to the device. The user can view this feedback in real time through an augmented reality device and use it to improve their future practice.

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

[0856] "My golf swing isn't going well. The specific problem is that the ball keeps going to the right. Based on the results of video analysis, please give me some advice on what the problem is and how I can improve it."

[0857] The above is a specific embodiment of the present invention.

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

[0859] Step 1:

[0860] Users film their sports activities using the camera on their smartphone or tablet. They select the video file they have filmed using a dedicated application and enter text information about their concerns or problems. The input content includes specific problems such as "My golf swing is not going well." Input data: Video of sports activities, text information about concerns or problems. Output data: Video files and text information uploaded by the user.

[0861] Step 2:

[0862] The terminal combines the video file uploaded by the user and the input text information into a single data package. This allows the video and text information to be processed as a set. The data package is sent to the server via the Internet. Input data: Video file and text information from the user. Output data: A data package that combines the video file and text information.

[0863] Step 3:

[0864] The server analyzes the received data package and separates the video file from the text information. The video file is passed to the motion analysis AI, which analyzes each frame in the video and extracts movement characteristics. For example, in the case of a golf swing, it analyzes each stage: backswing, top, downswing, impact, and follow-through. Input data: video file, text information. Output data: video analysis results (movement characteristic data).

[0865] Step 4:

[0866] The server passes data based on the results of the motion analysis to a natural language generation AI. This generation AI evaluates the analysis results in natural language and generates feedback. For example, it may generate an evaluation such as "Your backswing is too early, causing your body balance to be off" or specific advice such as "Pay attention to the position of your right elbow during your backswing." Input data: Video analysis results. Output data: Evaluation, feedback, and advice in natural language.

[0867] Step 5:

[0868] The server then assembles the generated evaluations and feedback into a data package and sends it to the terminal. The user's terminal analyzes the received data package and displays the feedback and advice in the display location specified by the application. For example, specific instruction content such as "When you backswing, make sure your right elbow does not exceed waist height" is displayed. Input data: Evaluation, feedback, and advice in natural language. Output data: Feedback and advice displayed on the user's terminal.

[0869] Step 6:

[0870] Users can check the feedback and advice provided through the application and reflect it in their next practice or training. This allows users to receive specific guidance to improve their sports skills without having to take professional lessons. Input data: Feedback and advice displayed on the user's device. Output data: Reflection in the user's training plan.

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

[0872] The present invention provides a system that allows users to easily receive analysis of their sports activities, feedback, and personalized advice based on their emotions. Specific embodiments of this system will be described below.

[0873] Explaining program processing in natural language

[0874] 1. User operations

[0875] First, users film their sporting activities with their smartphone or tablet camera, such as a golf swing or a soccer shot. Once filming is complete, they open the dedicated application, select "New Analysis Session" within the app, and proceed to the screen where they can upload the video they filmed.

[0876] Next, the user fills in the form with their concerns or problems in text format. For example, "My golf swing isn't going well" or "My soccer shots are going to the right." The text and video are then paired and ready to be sent from the device to the server.

[0877] 2. Terminal Processing

[0878] The device combines the video file uploaded by the user and the input text information into a single data package, which is then prepared to be processed as a set. This data package is then sent to the server via the network.

[0879] 3. Server Processing

[0880] The server analyzes the received data package and separates the video file from the text information. The video file is then passed to the motion analysis AI, which then begins the analysis. The motion analysis AI analyzes each frame of the video and extracts movement characteristics. For example, in the case of a golf swing, the backswing, top, downswing, impact, and follow-through phases are analyzed.

[0881] Based on the results of the motion analysis, the server passes the data to a natural language generation AI, which evaluates the analysis results in natural language and generates feedback, such as, "Your backswing is too early, which can cause your body to lose balance."

[0882] In parallel, the server generates specific advice based on the user's input text about their concerns. For example, it generates advice such as, "To hit the ball straight, it is important to keep your shoulders aligned at the start of your backswing." This generation process uses an emotion engine.

[0883] 4. Emotion Engine Processing

[0884] The server (emotion engine) recognizes the user's emotions from the text information and video input. For example, it extracts emotions such as "anxiety" or "confidence" from facial expressions and voice characteristics in the video. It also learns the user's reactions to past feedback and feeds them forward to the next feedback.

[0885] The emotion engine customizes feedback and advice based on the analysis results and emotional data. For example, if the user is nervous, it generates a message such as, "It's important to relax and make a smooth swing."

[0886] 5. Feedback from the server to the device

[0887] The server assembles the generated evaluations and advice into a single response data package and transmits it to the user terminal.

[0888] The device receives and analyzes the response data package from the server. Feedback text and advice are displayed in the app's designated display location. For example, specific instruction such as "Make sure your right elbow does not exceed waist height during the backswing" is displayed.

[0889] Users can check this feedback and advice through the application and incorporate it into their next practice or training. In this way, users can receive specific guidance to improve their sports skills without having to take professional lessons.

[0890] Specific examples

[0891] For example, in a specific example of golf swing analysis, a user takes a video of a driver shot and inputs their concern that "the ball doesn't fly straight." The device sends the video and their concern to the server. The server's motion analysis AI analyzes the video and passes the feedback result that "your backswing is too high" to the generation AI. The emotion engine also extracts "anxiety" from the user's input text and passes this information to the generation AI. Based on this, the generation AI generates advice such as "To hit the ball straight, it is important to keep your right elbow in a consistent position during the backswing. A relaxed swing will be more effective." This feedback and advice is sent to the user's device, where the user can review it and use it in their next training session.

[0892] The above is a description of a specific embodiment of the present invention. The advantage of this system is that it provides professional analysis and personalized feedback, as well as quick, customized instruction that takes into account the user's emotional state.

[0893] The processing flow will be explained below.

[0894] Step 1:

[0895] User – Captures their sports activities with a smartphone or tablet camera, for example, recording videos including golf swings and soccer shots.

[0896] Step 2:

[0897] User – Open the dedicated application and select “New Analysis Session.” Select the video file you shot and proceed to the upload screen.

[0898] Step 3:

[0899] User – Enters their concerns or problems into a form within the application. For example, they might write, "My golf swing isn't going well" or "My soccer shots are going to the right."

[0900] Step 4:

[0901] Terminal – The video file uploaded by the user and the input text information are combined into a single data package, so that the video and the text information about the user's concerns are processed together.

[0902] Step 5:

[0903] Terminal – Constructs a network request to send a data package to the server and sends it to the server in an HTTP POST request.

[0904] Step 6:

[0905] Server – Analyzes the received data package and separates the video file from the text information. The separated video file is passed to the motion analysis AI.

[0906] Step 7:

[0907] Server (Motion Analysis AI) – Analyzes each frame in a video file and extracts movement characteristics, such as recognizing the backswing, top, downswing, impact, and follow-through stages of a golf swing.

[0908] Step 8:

[0909] Server (Motion Analysis AI) – Once feature extraction is complete, it converts it into a mathematical model. The extracted keyframes are also represented as mathematical models.

[0910] Step 9:

[0911] Server - Sends the extracted behavioral data to a natural language generation AI and generates feedback that expresses the analysis results in natural language.

[0912] Step 10:

[0913] Server (Natural Language Generation AI) - Based on the analysis results, it generates evaluation comments such as, "Your backswing is too early, which can cause your body to lose balance."

[0914] Step 11:

[0915] Server – At the same time, the server passes the received text information about the user's concerns to a natural language generation AI, which then generates specific advice for that concern. For example, it generates advice such as, "To hit the ball straight, it is important to keep your shoulders aligned as you start your backswing."

[0916] Step 12:

[0917] Server – The emotion engine recognizes the user’s emotions from the input text and video. It extracts emotions from facial expressions and voice features in the video. For example, it identifies emotions such as “anxiety” or “confidence.”

[0918] Step 13:

[0919] Server (Emotion Engine) – Customizes the generated feedback and advice based on the extracted emotion data, for example, if the user is nervous, additional advice to relax may be included.

[0920] Step 14:

[0921] Server – Repackages the customized ratings and feedback into a single response data package and sends it to the user's device.

[0922] Step 15:

[0923] Device – Receives and parses the response data package from the server. The feedback text and advice are displayed in the app's designated display location.

[0924] Step 16:

[0925] User – The user can check the feedback and advice through the application and use it for their next practice or training. For example, they can incorporate specific instruction such as, "Make sure your right elbow does not exceed waist height during the backswing."

[0926] This process allows users to receive quick, customized feedback and advice, helping them to effectively improve their sports skills.

[0927] Example 2

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

[0929] Conventional sports activity analysis systems can analyze videos of a user's sports activities and provide certain feedback, but it is difficult to provide personalized feedback that takes into account the user's individual concerns and emotional state. Furthermore, due to a lack of learning based on the user's input concerns and past feedback, it is not possible to provide effective guidance. Therefore, there is a need for a system that provides analysis and feedback that takes into account the user's emotional state and individual concerns.

[0930] The identification process by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes means for receiving a video of a sports activity filmed by a user, means for receiving text information related to worries and issues input by the user, means for performing motion analysis on the received video, means for generating evaluations and feedback in natural language based on the motion analysis results, means for recognizing emotions from the text information and video input by the user and customizing feedback and advice based on the information, means for learning the user's reactions to past feedback and feeding the feedback forward to the next feedback, and means for providing the generated evaluations and feedback to the user. This makes it possible to provide personalized feedback that takes into account the user's emotions and worries.

[0931] "User" refers to the person whose sports activity is analyzed using this system.

[0932] "Video" refers to a video file taken by a user to record their sports activities.

[0933] "Text information" refers to explanatory text about worries or issues entered by the user.

[0934] "Motion analysis" refers to the process of analyzing movements in a video and extracting their characteristics.

[0935] "Evaluation" refers to the analysis results and feedback information generated based on the results of motion analysis.

[0936] "Feedback" refers to instruction or advice provided to a user based on motion analysis and evaluation.

[0937] "Emotion" refers to the psychological state or mood that a user expresses in input text information and video.

[0938] "Customization" refers to tailoring the content of feedback and advice to a specific user's situation and needs.

[0939] "Feedforward" refers to the process of learning from the user's reactions to past feedback and reflecting that in the next feedback.

[0940] "Means" refers to the functions and methods used within the system to perform each of the above processes.

[0941] "System" refers to a set of devices and software that integrates all of the above means to provide analysis and feedback of sports activities to users.

[0942] The present invention provides a system that allows users to easily receive analysis of their sports activities, feedback, and customized advice based on their emotions. Specific embodiments of this system will be described below.

[0943] The system is operated through application software that runs on devices such as smartphones and tablets. Users film their sports activities with the device's camera and upload the videos to the application. For example, this includes golf swings and soccer shots.

[0944] User operations

[0945] First, users film their sporting activities with the camera on their smartphone or tablet. Once filming is complete, they open a dedicated application. Within the app, they select "New Analysis Session" and move to the screen where they can upload the filmed video. Next, users fill in a form with their concerns or problems in text form. For example, "My golf swing isn't going well" or "My soccer shots are going to the right." This text and video are then paired and ready to be sent from the device to the server.

[0946] Terminal handling

[0947] The terminal combines the video file uploaded by the user and the input text information into a single data package, which includes the video file, the text information about the user's worries, and the user information, and is then transmitted to the server via the network.

[0948] Server Processing

[0949] The server analyzes the received data package and separates the video file from the text information. The video file is then passed to the motion analysis AI, which then begins the analysis. The motion analysis AI analyzes each frame of the video and extracts movement characteristics. For example, in the case of a golf swing, each stage of the swing—backswing, top, downswing, impact, and follow-through—is analyzed in detail.

[0950] Next, the server passes the data to a natural language generation AI based on the results of the motion analysis, which evaluates the analysis results in natural language and generates feedback. For example, the feedback might be, "Your backswing is too early, which can cause your body to lose balance." The server then generates specific advice based on the text of the user's concerns. For example, the advice might be, "To hit the ball straight, it's important to keep your shoulders aligned at the start of your backswing." An emotion engine is used in this generation process.

[0951] Emotion engine processing

[0952] The server has an emotion engine that recognizes the user's emotions from the text information and video input. For example, emotions such as "anxiety" or "confidence" are extracted from facial expressions and voice characteristics in the video. This information is reflected in the analysis results and used to customize feedback and advice. Furthermore, the server learns the user's reactions to past feedback and feeds this forward to the next feedback. This allows for the generation of personalized feedback that takes into account the user's emotions and concerns.

[0953] Display feedback on device

[0954] The server compiles the generated evaluations and advice into a single response data package and sends it to the user's device. The device receives the response data package from the server and analyzes it. The feedback text and advice are displayed in a specified display location on the app. For example, specific instruction content such as "Make sure your right elbow does not exceed waist height during your backswing" is displayed. The user can check this feedback and advice through the app and incorporate it into their next practice or training session.

[0955] Specific examples

[0956] For example, in a specific example of golf swing analysis, a user takes a video of a driver shot and inputs their concern that "the ball doesn't fly straight." The device sends the video and their concern to the server. The server's motion analysis AI analyzes the video and passes the feedback result, "your backswing is too high," to the generation AI. The emotion engine also extracts "anxiety" from the user's input text and passes it to the generation AI. Based on this, the generation AI generates advice such as, "To hit the ball straight, it's important to keep your right elbow in a consistent position during the backswing. A relaxed swing will be more effective." This feedback and advice is sent to the user's device, where the user can review it and use it in their next training session.

[0957] A specific example of a prompt is as follows:

[0958] "I'd like to analyze my golf swing. I uploaded a video. Problem: The ball doesn't fly straight. Analysis result: My backswing is too high. Emotion: Anxiety."

[0959] The above is a description of a specific embodiment of the present invention. The advantage of this system is that it provides professional analysis and personalized feedback, as well as quick, customized instruction that takes into account the user's emotional state.

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

[0961] Step 1: User takes photo and uploads

[0962] A user uses a camera on a smartphone or tablet to capture a video of a sporting activity, such as a golf swing or a soccer shot.

[0963] Input: Video files of filmed sports activities.

[0964] How it works: Save the video you have taken, launch the dedicated application, select "New analysis session," and then proceed to the screen for uploading the video.

[0965] Output: A video file ready to be uploaded.

[0966] Step 2: User inputs assignment and submits data

[0967] Users fill out a form with text about their concerns or problems related to their sports activities, such as "My golf swing isn't going well" or "My soccer shots are going to the right."

[0968] Input: Text information about worries and issues entered by the user.

[0969] What it does: You fill out a form with the required information and press the submit button to prepare the data to be sent to the server.

[0970] Output: A data package containing the text information entered by the user and the video footage.

[0971] Step 3: Generate a data package on the device

[0972] The terminal combines the video file uploaded by the user and the input text information into a single data package, which includes the video file, the text information, and the user information.

[0973] Input: User's video file and text information.

[0974] Operation: This information is consolidated and prepared for transmission.

[0975] Output: A consolidated data package.

[0976] Step 4: Send data from the device to the server

[0977] The terminal transmits the compiled data package to the server over the network.

[0978] Input: Integrated data package.

[0979] Operation: Sends data to the server over the network and confirms successful transmission.

[0980] Output: The data package sent to the server.

[0981] Step 5: Server receives and separates data

[0982] The server analyzes the data package received from the terminal and separates the video file from the text information.

[0983] Input: The transmitted data package.

[0984] What it does: Analyzes the data, saves the video file to media storage, and stores the text information in a database.

[0985] Output: Separated video files and text information.

[0986] Step 6: Motion analysis by server

[0987] The server passes the video file to the motion analysis AI, which then analyzes the video frames and extracts movement characteristics.

[0988] Input: Video file.

[0989] Motion: Analyze each frame and convert motion characteristics into a numerical model, such as the backswing, top, downswing, impact, and follow-through of a golf swing.

[0990] Output: Analyzed behavioral feature data.

[0991] Step 7: Server evaluation and feedback generation

[0992] Based on the results of the motion analysis, the server passes the data to a natural language generation AI, which evaluates the analysis results in natural language and generates feedback.

[0993] Input: Behavioral feature data.

[0994] Behavior: Create feedback based on the evaluation criteria, for example, "Your backswing is too early, which can cause your body to lose balance."

[0995] Output: Generated natural language feedback.

[0996] Step 8: Server-based sentiment analysis and customization

[0997] The server has an emotion engine that recognizes emotions from the text information and video input by the user and customizes feedback and advice based on that data.

[0998] Input: The analyzed behavioral feature data and user input text information.

[0999] How it works: The emotion engine recognizes the user's psychological state and adjusts the feedback accordingly. For example, if "anxiety" is detected, the engine will say, "It's important to relax and make a smooth swing."

[1000] Output: Customized feedback and advice.

[1001] Step 9: Server generates and sends data package

[1002] The server collects the generated feedback and advice into a single response data package and transmits it to the user terminal.

[1003] Input: Customized feedback and advice.

[1004] Action: Assembles a data package and sends it to the user.

[1005] Output: The response data package sent.

[1006] Step 10: Display feedback on the device

[1007] The device receives and analyzes the response data package from the server, and the feedback and advice is displayed in the specified display location in the app.

[1008] Input: Response data package.

[1009] What it does: Analyzes the data and displays the feedback.

[1010] Output: On-screen feedback and advice that the user can see.

[1011] (Application example 2)

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

[1013] The present invention aims to improve efficiency and safety by analyzing the movements of robots and workers operating in factories. Conventional systems do not adequately integrate movement analysis and emotion recognition, making it difficult to automate and customize feedback and advice. This problem prevents users from quickly obtaining specific and appropriate improvement measures.

[1014] 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 receiving a video of a behavioral activity captured by a user, means for receiving text information related to worries and issues entered by the user, means for analyzing the motion of the received video, means for generating evaluations and feedback in natural language based on the results of the motion analysis, means for recognizing the user's emotions and customizing the generated evaluations and feedback, and means for providing the generated evaluations and feedback to the user. This enables specific guidance to efficiently and safely improve the operations of robots and workers in factories.

[1015] A "user" is a person who uses the system to record and upload videos of their behavioral activities and receives analysis results and feedback.

[1016] "Video of behavioral activity" is video data taken by a user to record a specific action.

[1017] "Text information" is written data about worries and issues entered by the user, and is input information for the system to analyze.

[1018] "Motion analysis" is the process of converting the movements in a received video into a numerical model and extracting features.

[1019] "Evaluation and feedback" refers to advice and guidance for the user that is generated in natural language based on the results of the motion analysis.

[1020] "Customization" is the process of optimizing the generated ratings and feedback for each individual based on the user's emotional data and input data.

[1021] "Emotion recognition" is the process of inferring and extracting a user's emotional state from video and text information.

[1022] A "prompt sentence" is an instruction sentence generated based on behavioral characteristic data and emotional data, and is used to customize evaluation and feedback.

[1023] The "system" refers to a computer-based platform that includes the above-mentioned means and enables users to easily receive behavioral analysis, feedback, and customized advice.

[1024] The system for implementing the present invention mainly analyzes the user's actions and provides feedback and customized advice. The specific configuration and processing of this system will be described below.

[1025] First, users film their activities with a smartphone or tablet and upload the video to a dedicated application. Next, they use an input form within the application to enter text information about their concerns and issues. This video and text information is then sent from the device to a server.

[1026] The server receives the video file and text information and first performs a motion analysis of the video. This motion analysis uses image processing libraries such as OpenCV and Keras and deep learning libraries. Each frame in the video is analyzed, and key frames and motion characteristics are converted into a numerical model. The results of this motion analysis provide detailed data on the user's actions.

[1027] The server then recognizes the worker's emotions from the video. For emotion recognition, it uses facial expression recognition algorithms and voice analysis technology to estimate the user's emotional state. It is recommended to use a deep learning model for this. The estimated emotion data is then used to generate feedback.

[1028] The behavior analysis results and emotion data are passed to a natural language generation AI on the server, which generates evaluations and feedback. The generation AI evaluates the data in natural language and provides feedback in a form that is easy for the user to understand. This process includes generating appropriate prompt sentences.

[1029] For example, the generated prompt text is:

[1030] "The robot's behavioral characteristics are as follows: [behavior characteristic data]. The worker's emotions are as follows: [emotion data]. Please tell us the best way to improve it."

[1031] Based on this prompt, the generative AI generates specific advice, such as "Slow down the welding speed a little to allow the worker to relax."

[1032] Finally, the generated evaluations and feedback are sent from the server to the user's device, where they can view the information through the application. Through this process, users can quickly obtain specific and customized advice to improve the efficiency and safety of robots and workers in their factories.

[1033] The advantage of this system is that it provides a user-friendly interface while utilizing advanced technology. In addition, by combining motion analysis and emotion recognition, it can provide feedback that takes into account the user's psychological state.

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

[1035] Step 1:

[1036] Users use their smartphones or tablets to record robot operations and worker movements in the factory. Next, they launch a dedicated application and open an input screen for uploading the video file they have recorded. By selecting the video file and pressing the upload button, the video file is sent from the device to the server.

[1037] Input: Video files capturing robot operations and worker movements in a factory

[1038] Output: Video file uploaded to the server

[1039] Step 2:

[1040] Users enter their concerns or problems as text into the application's input form. By entering a specific problem, such as "The robot's welding is misaligned," and pressing the send button, the text information is sent from the device to the server.

[1041] Input: Text information about worries and issues entered by the user

[1042] Output: Text information sent to the server

[1043] Step 3:

[1044] The server then passes the received video file to the motion analysis unit, which uses OpenCV and Keras to sequentially analyze each frame in the video, extract key frames, and convert motion characteristics into numerical data.

[1045] Input: Video file

[1046] Output: Numerical data that indicates the characteristics of the behavior

[1047] Step 4:

[1048] The server analyzes the user's facial expressions and voice from the received video file to extract emotional information. Emotion recognition is performed using a facial expression recognition algorithm and voice analysis technology. A deep learning model is used to generate emotional data.

[1049] Input: Video file

[1050] Output: User emotion data

[1051] Step 5:

[1052] The server then uses the generative AI model to generate prompts based on the results of the motion analysis and the emotion data. The generated prompts are instructions that include both the motion characteristic data and the emotion data.

[1053] Input: Motion analysis results, emotion data

[1054] Output: prompt statement

[1055] Step 6:

[1056] The server uses the generated prompt sentences to have the generative AI model generate evaluations and feedback, which include specific advice for the user's concerns and challenges.

[1057] Input: prompt statement

[1058] Output: Rating and feedback

[1059] Step 7:

[1060] The server compiles the generated evaluations and feedback into a data package and sends it to the user's device, which analyzes the received data and displays the feedback and advice in a designated display location of the application.

[1061] Input: Rating and feedback data package

[1062] Output: Feedback and advice displayed on the application

[1063] Step 8:

[1064] Users can review the feedback and advice provided through the application and incorporate it into their next work or training.

[1065] Input: Feedback and advice displayed on the application

[1066] Output: Improvements reflected in future work and training

[1067] This series of processing steps allows users to quickly obtain specific and customized advice to improve the efficiency and safety of robot operation and work movements within their factories.

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

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

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

[1071] [Fourth embodiment]

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

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

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

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

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

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

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

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

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

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

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

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

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

[1085] The present invention provides a system that allows users to easily analyze and receive feedback on their sports activities. Specifically, users can receive professional feedback by inputting video footage and their concerns in text format. Specific embodiments of this system are described below.

[1086] Explaining program processing in natural language

[1087] 1. User operations

[1088] First, users film their sporting activities with their smartphone or tablet camera, such as a golf swing or a soccer shot. Once filming is complete, they open the dedicated application, select "New Analysis Session" within the app, and proceed to the screen where they can upload the video they filmed.

[1089] Next, the user fills in the form with their concerns or problems in text format. For example, "My golf swing isn't going well" or "My soccer shots are going to the right." The text and video are then paired and ready to be sent from the device to the server.

[1090] 2. Terminal Processing

[1091] The device combines the video file uploaded by the user and the input text information into a single data package, which is then prepared to be processed as a set. This data package is then sent to the server via the network.

[1092] 3. Server Processing

[1093] The server analyzes the received data package and separates the video file from the text information. The video file is then passed to the motion analysis AI, which then begins the analysis. The motion analysis AI analyzes each frame of the video and extracts movement characteristics. For example, in the case of a golf swing, the backswing, top, downswing, impact, and follow-through phases are analyzed.

[1094] Based on the results of the motion analysis, the server passes the data to a natural language generation AI, which evaluates the analysis results in natural language and generates feedback, such as, "Your backswing is too early, which can cause your body to lose balance."

[1095] In parallel, the server generates specific advice based on the user's input text about their problem, such as "To hit the ball straight, it is important to keep your shoulders aligned at the start of your backswing."

[1096] The generated evaluations and advice are again compiled into a data package and sent to the user terminal.

[1097] 4. Feedback from the server to the device

[1098] The device receives and analyzes the response data package from the server. Feedback text and advice are displayed in the app's designated display area. For example, specific instruction such as "Make sure your right elbow does not exceed waist height during the backswing" is displayed.

[1099] Users can check this feedback and advice through the app and incorporate it into their next practice or training. In this way, users can receive specific guidance to improve their sports skills without having to take professional lessons.

[1100] Specific examples

[1101] For example, in a specific example of golf swing analysis, a user takes a video of a driver shot and inputs their concern that "the ball doesn't fly straight." The device sends the video and their concern to the server. The server's motion analysis AI analyzes the video and provides feedback that "your backswing is too high" to the generation AI. Meanwhile, the user's concern is also passed to the generation AI, which generates advice such as "to make the ball fly straight, it is important that your right elbow does not exceed shoulder height during the backswing." This feedback and advice is sent to the user's device, where the user can review it and use it in their training.

[1102] The above is a description of a specific embodiment of the present invention. The advantage of this system is that users can easily receive professional analysis and individual feedback.

[1103] The processing flow will be explained below.

[1104] Step 1:

[1105] User – Captures their sports activities with a smartphone or tablet camera, for example, recording videos including golf swings and soccer shots.

[1106] Step 2:

[1107] User – Open the dedicated application and select “New Analysis Session.” Select the video file you shot and proceed to the upload screen.

[1108] Step 3:

[1109] User – Enters their concerns or problems into a form within the application. For example, they might write, "My golf swing isn't going well" or "My soccer shots are going to the right."

[1110] Step 4:

[1111] Terminal – The video file uploaded by the user and the input text information are combined into a single data package, so that the video and the text information about the user's concerns are processed together.

[1112] Step 5:

[1113] Terminal – Constructs a network request to send a data package to the server and sends it to the server in an HTTP POST request.

[1114] Step 6:

[1115] Server – Analyzes the received data package and separates the video file from the text information. The separated video file is passed to the motion analysis AI.

[1116] Step 7:

[1117] Server (Motion Analysis AI) – Analyzes each frame in a video file and extracts movement characteristics, such as recognizing the backswing, top, impact, and follow-through stages of a golf swing.

[1118] Step 8:

[1119] Server (Motion Analysis AI) – Once feature extraction is complete, it converts it into a mathematical model. The extracted keyframes are also represented as mathematical models.

[1120] Step 9:

[1121] Server - Sends the extracted behavioral data to a natural language generation AI and generates feedback that expresses the analysis results in natural language.

[1122] Step 10:

[1123] Server (Natural Language Generation AI) - Based on the analysis results, it generates evaluation comments such as, "Your backswing is too early, which can cause your body to lose balance."

[1124] Step 11:

[1125] Server – At the same time, the server passes the received text information about the user's concerns to a natural language generation AI, which then generates specific advice for that concern. For example, it generates advice such as, "To hit the ball straight, it is important to keep your shoulders aligned as you start your backswing."

[1126] Step 12:

[1127] Server – Combines the generated feedback and advice into a single response data package and sends the data package to the user device.

[1128] Step 13:

[1129] Device – Receives the response data package from the server, parses it, and displays the feedback text and advice in the specified display location in the app.

[1130] Step 14:

[1131] User – The user can check the feedback and advice through the application and use it for their next practice or training. For example, they can incorporate specific instruction such as, "Make sure your right elbow does not exceed waist height during the backswing."

[1132] This series of processes allows the user to effectively improve their sports skills without having to take specialized lessons.

[1133] Example 1

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

[1135] Conventional sports analysis systems require specialized knowledge to obtain advanced analysis and feedback, making them difficult for general users to use. Furthermore, the feedback is general and cannot address the concerns and issues of individual users. Furthermore, when handling large amounts of data, data optimization and efficient processing are required.

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

[1137] In this invention, the server includes means for receiving videos of sports activities filmed by the user, means for receiving text information about worries and challenges entered by the user, means for combining the received videos and text information into a single data package, means for transmitting the data package to the server, means for analyzing the received data package on the server side and separating the videos and text information, means for analyzing the videos using a motion analysis AI and extracting movement characteristics, means for generating evaluations and feedback using a natural language generation AI based on the analysis results, and means for combining the generated evaluations and feedback into a data package and providing it to the user. This allows the user to easily receive professional analysis and individual feedback.

[1138] "User" refers to a person who uses the system to analyze their own sports activities and obtain feedback.

[1139] "Video of filmed sports activity" refers to video data that a user has filmed with a camera device to record their own sports performance.

[1140] "Text information" refers to descriptions of the user's concerns and problems that the user enters into the system.

[1141] A "data package" refers to data in a format that combines a video file and text information into one.

[1142] "Motion analysis AI" refers to artificial intelligence technology that analyzes videos of sports activities and extracts movement characteristics.

[1143] "Natural language generation AI" refers to artificial intelligence technology that generates evaluations and feedback in natural language based on analysis results.

[1144] "Feedback" refers to evaluations and advice regarding a user's sports performance generated by motion analysis and generative AI.

[1145] "Optimizing data capacity" refers to the process of increasing data transfer efficiency by compressing the size of video files.

[1146] "Server" refers to a central computing system that receives data packages sent by users and performs analysis and feedback generation.

[1147] The present invention provides a system that allows a user to easily analyze and receive feedback on their sports activities. Specific embodiments will be described below.

[1148] User operations

[1149] Users use the camera on their smartphone or tablet to film their own sports activities. For example, a golf swing or a soccer shot. After filming is complete, they launch the dedicated application and select "New Analysis Session." Next, they move to the video upload screen, select the video, and upload it. They then enter their concerns or issues in text form into the form. For example, "My golf swing isn't going well" or "My soccer shots are going to the right." The device is then ready to send the video and text information as a set from the device to the server.

[1150] Terminal handling

[1151] The device combines the video file uploaded by the user and the input text information into a single data package. This data package is then compressed to optimize data size and packaged in JSON format. This data package is then sent to the server via the network. This operation improves data transfer efficiency and optimizes performance.

[1152] Server Processing

[1153] The server analyzes the received data package and separates the video file from the text information. Specifically, it analyzes the received JSON data and extracts the data corresponding to "video_file" and "text_info." The video file is then passed to the motion analysis AI, which begins analysis. The motion analysis AI analyzes each frame in the video and extracts movement characteristics. For example, in the case of a golf swing, the backswing, top, downswing, impact, and follow-through stages are analyzed.

[1154] Once the analysis is complete, the server passes the analysis results to the generation AI. The generation AI generates feedback in natural language based on the analysis results. For example, it may generate feedback such as, "Your backswing is too early, which can cause your body to lose balance." At the same time, the text information about the user's concerns is passed to the generation AI, which generates specific advice. For example, it may say, "To hit the ball straight, it is important to keep your shoulders aligned as you start your backswing." The generated feedback and advice are then compiled into a data package again and sent to the user's device.

[1155] Feedback from the server to the device

[1156] The device receives the response data package from the server and parses it again in JSON format. Once the feedback message and advice are extracted, they are displayed in the specified location in the application. For example, specific instruction content such as "Make sure your right elbow does not exceed waist height during the backswing" is displayed. The user can review this feedback and advice and use it to improve their next practice or training.

[1157] Specific examples

[1158] For example, suppose a user takes a video of their driver shot and inputs their concern that "the ball doesn't fly straight." The device sends the video and text information to the server. The server's motion analysis AI analyzes the video and provides feedback that "your backswing is too high" to the generation AI. The server also passes the user's concern to the generation AI, which generates advice such as "to make the ball fly straight, it is important that your right elbow does not exceed shoulder height during the backswing." This feedback and advice is sent to the user's device, where the user can review it and use it in their training.

[1159] As described above, the embodiments of the present invention allow users to easily receive professional analysis and individual feedback, and effectively improve their sports skills.

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

[1161] Step 1:

[1162] A user uses a smartphone or tablet camera to record their own sports activities. The input is a video of the sports activities recorded by the camera, and the output is a video file. Specifically, the user launches the device's camera app, records the sports activities, and saves the video.

[1163] Step 2:

[1164] The user launches a dedicated application and selects "New Analysis Session." The input is the user's actions and the captured video file, and the output is the "New Analysis Session" screen of the application. Specifically, the user opens the app and taps the button to start a new session.

[1165] Step 3:

[1166] Users navigate to the screen where they can upload the videos they have taken, select the video, and upload it. The input is the video file to be uploaded, and the output is the video data that is temporarily saved on the device. Specifically, the user selects the video file and taps the upload button.

[1167] Step 4:

[1168] The user enters their worries or issues in text format into the form. The input is text information describing the user's worries, and the output is text data that is saved on the device. Specifically, the user enters their worries or issues into the text input field.

[1169] Step 5:

[1170] The device combines the video file and text information obtained from the user into a single data package. The input is the video file and text information, and the output is a data package (JSON format). Specifically, the device compresses the video file and packages it together with the text information in JSON format.

[1171] Step 6:

[1172] The terminal transmits a data package to the server. The input is the data package, and the output is a transmission completion notification to the server. Specifically, the terminal uploads the data package to the server via the network.

[1173] Step 7:

[1174] The server parses the received data package and separates the video file and text information. The input is the data package, and the output is the video file and text information. Specifically, the server parses the JSON data and extracts each element.

[1175] Step 8:

[1176] The server passes the video file to the motion analysis AI, which then begins the analysis. The input is the video file, and the output is motion feature extraction data. For specific movements, the motion analysis AI analyzes each frame of the video and extracts the movement features as a numerical model.

[1177] Step 9:

[1178] The server passes the data to the generation AI based on the analysis results, which generates evaluations and feedback in natural language. The input is movement feature extraction data and text information, and the output is the generated feedback and advice. For specific movements, the generation AI generates feedback messages based on the movement analysis data and text information.

[1179] Step 10:

[1180] The server compiles the generated feedback and advice into a data package and sends it to the user's device. The input is the generated feedback and advice, and the output is a notification of completion of transmission to the user's device. Specifically, the server packages the feedback and advice in JSON format and sends it to the device.

[1181] Step 11:

[1182] The terminal receives the response data package from the server and parses and displays the feedback and advice. The input is the response data package, and the output is the displayed feedback and advice. Specifically, the terminal parses the JSON data and displays the feedback message and advice in the application.

[1183] Step 12:

[1184] The user can review the provided feedback and advice and use it to improve their next practice or training. The input is the displayed feedback and advice, and the output is the user's understanding and action they can take. Specific actions include the user reading the feedback and advice on the application screen and applying it to their sports activities.

[1185] (Application example 1)

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

[1187] Conventional sports activity analysis systems have had the problem of making it difficult for users to receive feedback to improve their skills. In particular, when using them in a physical store, users need specialized equipment and expert guidance, making it difficult to easily receive analysis and feedback. The present invention aims to provide a system that allows users to easily analyze their own sports activities in a physical store and receive instant feedback.

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

[1189] In this invention, the server includes means for receiving a video of a sports activity filmed by a user, means for receiving text information regarding worries or issues entered by the user, means for analyzing the motion of the received video, means for generating an evaluation and feedback in natural language based on the motion analysis results, means for providing the generated evaluation and feedback to the user, and means for displaying the evaluation and feedback to the user in real time using an augmented reality device for use in a physical store. This allows users to easily analyze their own sports activity in the physical store and receive instant feedback.

[1190] A "user" is an entity that provides video and text information for analyzing sports activities.

[1191] "Video" is video data of a sports activity taken by a user.

[1192] "Text information" is character information about worries or issues entered by the user.

[1193] "Motion analysis" is the process of analyzing received video and extracting specific movement characteristics.

[1194] The "evaluation" is an analysis result of the user's motion based on the results obtained by the motion analysis.

[1195] "Feedback" is advice for improvement given based on motion analysis and the concerns and issues input by the user.

[1196] An "augmented reality device" is a digital device that displays ratings and feedback to users in real time within a physical store.

[1197] "Brick and Mortar Store" means a physical location that sells sports-related products and has facilities for users to view and analyze their sports activities.

[1198] This invention relates to a system that allows users to easily analyze their own sports activities in a physical store and receive instant feedback. The system uses hardware such as smartphones, tablets, augmented reality devices, and servers, and software such as motion analysis AI and natural language generation AI.

[1199] First, users film their sports activities (for example, a golf swing or tennis stroke) using the camera on their smartphone or tablet. Next, they open a dedicated application and upload the video. They then fill in a form with their concerns and problems in text format. Examples of this text include, "My golf swing isn't going well" or "My tennis forehand isn't stable."

[1200] The terminal receives this data and combines the video file and text information into a single data package, which is then sent to a server via the Internet.

[1201] The server analyzes the received data package. First, it separates the video file from the text information and passes the video file to the motion analysis AI. The motion analysis AI extracts the characteristics of the movements in the video for each frame and analyzes the movements. For example, in the case of a golf swing, it analyzes each stage: backswing, top, downswing, impact, and follow-through.

[1202] Based on the motion analysis results, the server passes the data to a natural language generation AI. This generation AI evaluates the analysis results in natural language and generates feedback. For example, it may evaluate the result as "Your backswing is too early, causing your body balance to be off" or provide specific advice such as "Pay attention to the position of your right elbow during the backswing."

[1203] The generated ratings and feedback are then packaged again and sent to the device, which then instantly displays the received feedback to the user using an augmented reality device, allowing the user to see the feedback in real time.

[1204] For example, suppose a user practicing their golf driver shot inputs their concern that "the ball veers to the right" and sends the video to a server. The server analyzes the video and obtains the analysis result that "your right elbow is positioned too high during the backswing." Based on this analysis result, the AI ​​generates feedback such as "To hit the ball straight, it is important that your right elbow does not exceed shoulder height during the backswing," and sends this to the device. The user can view this feedback in real time through an augmented reality device and use it to improve their future practice.

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

[1206] "My golf swing isn't going well. The specific problem is that the ball keeps going to the right. Based on the results of video analysis, please give me some advice on what the problem is and how I can improve it."

[1207] The above is a specific embodiment of the present invention.

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

[1209] Step 1:

[1210] Users film their sports activities using the camera on their smartphone or tablet. They select the video file they have filmed using a dedicated application and enter text information about their concerns or problems. The input content includes specific problems such as "My golf swing is not going well." Input data: Video of sports activities, text information about concerns or problems. Output data: Video files and text information uploaded by the user.

[1211] Step 2:

[1212] The terminal combines the video file uploaded by the user and the input text information into a single data package. This allows the video and text information to be processed as a set. The data package is sent to the server via the Internet. Input data: Video file and text information from the user. Output data: A data package that combines the video file and text information.

[1213] Step 3:

[1214] The server analyzes the received data package and separates the video file from the text information. The video file is passed to the motion analysis AI, which analyzes each frame in the video and extracts movement characteristics. For example, in the case of a golf swing, it analyzes each stage: backswing, top, downswing, impact, and follow-through. Input data: video file, text information. Output data: video analysis results (movement characteristic data).

[1215] Step 4:

[1216] The server passes data based on the results of the motion analysis to a natural language generation AI. This generation AI evaluates the analysis results in natural language and generates feedback. For example, it may generate an evaluation such as "Your backswing is too early, causing your body balance to be off" or specific advice such as "Pay attention to the position of your right elbow during your backswing." Input data: Video analysis results. Output data: Evaluation, feedback, and advice in natural language.

[1217] Step 5:

[1218] The server then assembles the generated evaluations and feedback into a data package and sends it to the terminal. The user's terminal analyzes the received data package and displays the feedback and advice in the display location specified by the application. For example, specific instruction content such as "When you backswing, make sure your right elbow does not exceed waist height" is displayed. Input data: Evaluation, feedback, and advice in natural language. Output data: Feedback and advice displayed on the user's terminal.

[1219] Step 6:

[1220] Users can check the feedback and advice provided through the application and reflect it in their next practice or training. This allows users to receive specific guidance to improve their sports skills without having to take professional lessons. Input data: Feedback and advice displayed on the user's device. Output data: Reflection in the user's training plan.

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

[1222] The present invention provides a system that allows users to easily receive analysis of their sports activities, feedback, and personalized advice based on their emotions. Specific embodiments of this system will be described below.

[1223] Explaining program processing in natural language

[1224] 1. User operations

[1225] First, users film their sporting activities with their smartphone or tablet camera, such as a golf swing or a soccer shot. Once filming is complete, they open the dedicated application, select "New Analysis Session" within the app, and proceed to the screen where they can upload the video they filmed.

[1226] Next, the user fills in the form with their concerns or problems in text format. For example, "My golf swing isn't going well" or "My soccer shots are going to the right." The text and video are then paired and ready to be sent from the device to the server.

[1227] 2. Terminal Processing

[1228] The device combines the video file uploaded by the user and the input text information into a single data package, which is then prepared to be processed as a set. This data package is then sent to the server via the network.

[1229] 3. Server Processing

[1230] The server analyzes the received data package and separates the video file from the text information. The video file is then passed to the motion analysis AI, which then begins the analysis. The motion analysis AI analyzes each frame of the video and extracts movement characteristics. For example, in the case of a golf swing, the backswing, top, downswing, impact, and follow-through phases are analyzed.

[1231] Based on the results of the motion analysis, the server passes the data to a natural language generation AI, which evaluates the analysis results in natural language and generates feedback, such as, "Your backswing is too early, which can cause your body to lose balance."

[1232] In parallel, the server generates specific advice based on the user's input text about their concerns. For example, it generates advice such as, "To hit the ball straight, it is important to keep your shoulders aligned at the start of your backswing." This generation process uses an emotion engine.

[1233] 4. Emotion Engine Processing

[1234] The server (emotion engine) recognizes the user's emotions from the text information and video input. For example, it extracts emotions such as "anxiety" or "confidence" from facial expressions and voice characteristics in the video. It also learns the user's reactions to past feedback and feeds them forward to the next feedback.

[1235] The emotion engine customizes feedback and advice based on the analysis results and emotional data. For example, if the user is nervous, it generates a message such as, "It's important to relax and make a smooth swing."

[1236] 5. Feedback from the server to the device

[1237] The server assembles the generated evaluations and advice into a single response data package and transmits it to the user terminal.

[1238] The device receives and analyzes the response data package from the server. Feedback text and advice are displayed in the app's designated display location. For example, specific instruction such as "Make sure your right elbow does not exceed waist height during the backswing" is displayed.

[1239] Users can check this feedback and advice through the application and incorporate it into their next practice or training. In this way, users can receive specific guidance to improve their sports skills without having to take professional lessons.

[1240] Specific examples

[1241] For example, in a specific example of golf swing analysis, a user takes a video of a driver shot and inputs their concern that "the ball doesn't fly straight." The device sends the video and their concern to the server. The server's motion analysis AI analyzes the video and passes the feedback result that "your backswing is too high" to the generation AI. The emotion engine also extracts "anxiety" from the user's input text and passes this information to the generation AI. Based on this, the generation AI generates advice such as "To hit the ball straight, it is important to keep your right elbow in a consistent position during the backswing. A relaxed swing will be more effective." This feedback and advice is sent to the user's device, where the user can review it and use it in their next training session.

[1242] The above is a description of a specific embodiment of the present invention. The advantage of this system is that it provides professional analysis and personalized feedback, as well as quick, customized instruction that takes into account the user's emotional state.

[1243] The processing flow will be explained below.

[1244] Step 1:

[1245] User – Captures their sports activities with a smartphone or tablet camera, for example, recording videos including golf swings and soccer shots.

[1246] Step 2:

[1247] User – Open the dedicated application and select “New Analysis Session.” Select the video file you shot and proceed to the upload screen.

[1248] Step 3:

[1249] User – Enters their concerns or problems into a form within the application. For example, they might write, "My golf swing isn't going well" or "My soccer shots are going to the right."

[1250] Step 4:

[1251] Terminal – The video file uploaded by the user and the input text information are combined into a single data package, so that the video and the text information about the user's concerns are processed together.

[1252] Step 5:

[1253] Terminal – Constructs a network request to send a data package to the server and sends it to the server in an HTTP POST request.

[1254] Step 6:

[1255] Server – Analyzes the received data package and separates the video file from the text information. The separated video file is passed to the motion analysis AI.

[1256] Step 7:

[1257] Server (Motion Analysis AI) – Analyzes each frame in a video file and extracts movement characteristics, such as recognizing the backswing, top, downswing, impact, and follow-through stages of a golf swing.

[1258] Step 8:

[1259] Server (Motion Analysis AI) – Once feature extraction is complete, it converts it into a mathematical model. The extracted keyframes are also represented as mathematical models.

[1260] Step 9:

[1261] Server - Sends the extracted behavioral data to a natural language generation AI and generates feedback that expresses the analysis results in natural language.

[1262] Step 10:

[1263] Server (Natural Language Generation AI) - Based on the analysis results, it generates evaluation comments such as, "Your backswing is too early, which can cause your body to lose balance."

[1264] Step 11:

[1265] Server – At the same time, the server passes the received text information about the user's concerns to a natural language generation AI, which then generates specific advice for that concern. For example, it generates advice such as, "To hit the ball straight, it is important to keep your shoulders aligned as you start your backswing."

[1266] Step 12:

[1267] Server – The emotion engine recognizes the user’s emotions from the input text and video. It extracts emotions from facial expressions and voice features in the video. For example, it identifies emotions such as “anxiety” or “confidence.”

[1268] Step 13:

[1269] Server (Emotion Engine) – Customizes the generated feedback and advice based on the extracted emotion data, for example, if the user is nervous, additional advice to relax may be included.

[1270] Step 14:

[1271] Server – Repackages the customized ratings and feedback into a single response data package and sends it to the user's device.

[1272] Step 15:

[1273] Device – Receives and parses the response data package from the server. The feedback text and advice are displayed in the app's designated display location.

[1274] Step 16:

[1275] User – The user can check the feedback and advice through the application and use it for their next practice or training. For example, they can incorporate specific instruction such as, "Make sure your right elbow does not exceed waist height during the backswing."

[1276] This process allows users to receive quick, customized feedback and advice, helping them to effectively improve their sports skills.

[1277] Example 2

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

[1279] Conventional sports activity analysis systems can analyze videos of a user's sports activities and provide certain feedback, but it is difficult to provide personalized feedback that takes into account the user's individual concerns and emotional state. Furthermore, due to a lack of learning based on the user's input concerns and past feedback, it is not possible to provide effective guidance. Therefore, there is a need for a system that provides analysis and feedback that takes into account the user's emotional state and individual concerns.

[1280] The identification process by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes means for receiving a video of a sports activity filmed by a user, means for receiving text information related to worries and issues input by the user, means for performing motion analysis on the received video, means for generating evaluations and feedback in natural language based on the motion analysis results, means for recognizing emotions from the text information and video input by the user and customizing feedback and advice based on the information, means for learning the user's reactions to past feedback and feeding the feedback forward to the next feedback, and means for providing the generated evaluations and feedback to the user. This makes it possible to provide personalized feedback that takes into account the user's emotions and worries.

[1281] "User" refers to the person whose sports activity is analyzed using this system.

[1282] "Video" refers to a video file taken by a user to record their sports activities.

[1283] "Text information" refers to explanatory text about worries or issues entered by the user.

[1284] "Motion analysis" refers to the process of analyzing movements in a video and extracting their characteristics.

[1285] "Evaluation" refers to the analysis results and feedback information generated based on the results of motion analysis.

[1286] "Feedback" refers to instruction or advice provided to a user based on motion analysis and evaluation.

[1287] "Emotion" refers to the psychological state or mood that a user expresses in input text information and video.

[1288] "Customization" refers to tailoring the content of feedback and advice to a specific user's situation and needs.

[1289] "Feedforward" refers to the process of learning from the user's reactions to past feedback and reflecting that in the next feedback.

[1290] "Means" refers to the functions and methods used within the system to perform each of the above processes.

[1291] "System" refers to a set of devices and software that integrates all of the above means to provide analysis and feedback of sports activities to users.

[1292] The present invention provides a system that allows users to easily receive analysis of their sports activities, feedback, and customized advice based on their emotions. Specific embodiments of this system will be described below.

[1293] The system is operated through application software that runs on devices such as smartphones and tablets. Users film their sports activities with the device's camera and upload the videos to the application. For example, this includes golf swings and soccer shots.

[1294] User operations

[1295] First, users film their sporting activities with the camera on their smartphone or tablet. Once filming is complete, they open a dedicated application. Within the app, they select "New Analysis Session" and move to the screen where they can upload the filmed video. Next, users fill in a form with their concerns or problems in text form. For example, "My golf swing isn't going well" or "My soccer shots are going to the right." This text and video are then paired and ready to be sent from the device to the server.

[1296] Terminal handling

[1297] The terminal combines the video file uploaded by the user and the input text information into a single data package, which includes the video file, the text information about the user's worries, and the user information, and is then transmitted to the server via the network.

[1298] Server Processing

[1299] The server analyzes the received data package and separates the video file from the text information. The video file is then passed to the motion analysis AI, which then begins the analysis. The motion analysis AI analyzes each frame of the video and extracts movement characteristics. For example, in the case of a golf swing, each stage of the swing—backswing, top, downswing, impact, and follow-through—is analyzed in detail.

[1300] Next, the server passes the data to a natural language generation AI based on the results of the motion analysis, which evaluates the analysis results in natural language and generates feedback. For example, the feedback might be, "Your backswing is too early, which can cause your body to lose balance." The server then generates specific advice based on the text of the user's concerns. For example, the advice might be, "To hit the ball straight, it's important to keep your shoulders aligned at the start of your backswing." An emotion engine is used in this generation process.

[1301] Emotion engine processing

[1302] The server has an emotion engine that recognizes the user's emotions from the text information and video input. For example, emotions such as "anxiety" or "confidence" are extracted from facial expressions and voice characteristics in the video. This information is reflected in the analysis results and used to customize feedback and advice. Furthermore, the server learns the user's reactions to past feedback and feeds this forward to the next feedback. This allows for the generation of personalized feedback that takes into account the user's emotions and concerns.

[1303] Display feedback on device

[1304] The server compiles the generated evaluations and advice into a single response data package and sends it to the user's device. The device receives the response data package from the server and analyzes it. The feedback text and advice are displayed in a specified display location on the app. For example, specific instruction content such as "Make sure your right elbow does not exceed waist height during your backswing" is displayed. The user can check this feedback and advice through the app and incorporate it into their next practice or training session.

[1305] Specific examples

[1306] For example, in a specific example of golf swing analysis, a user takes a video of a driver shot and inputs their concern that "the ball doesn't fly straight." The device sends the video and their concern to the server. The server's motion analysis AI analyzes the video and passes the feedback result, "your backswing is too high," to the generation AI. The emotion engine also extracts "anxiety" from the user's input text and passes it to the generation AI. Based on this, the generation AI generates advice such as, "To hit the ball straight, it's important to keep your right elbow in a consistent position during the backswing. A relaxed swing will be more effective." This feedback and advice is sent to the user's device, where the user can review it and use it in their next training session.

[1307] A specific example of a prompt is as follows:

[1308] "I'd like to analyze my golf swing. I uploaded a video. Problem: The ball doesn't fly straight. Analysis result: My backswing is too high. Emotion: Anxiety."

[1309] The above is a description of a specific embodiment of the present invention. The advantage of this system is that it provides professional analysis and personalized feedback, as well as quick, customized instruction that takes into account the user's emotional state.

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

[1311] Step 1: User takes photo and uploads

[1312] A user uses a camera on a smartphone or tablet to capture a video of a sporting activity, such as a golf swing or a soccer shot.

[1313] Input: Video files of filmed sports activities.

[1314] How it works: Save the video you have taken, launch the dedicated application, select "New analysis session," and then proceed to the screen for uploading the video.

[1315] Output: A video file ready to be uploaded.

[1316] Step 2: User inputs assignment and submits data

[1317] Users fill out a form with text about their concerns or problems related to their sports activities, such as "My golf swing isn't going well" or "My soccer shots are going to the right."

[1318] Input: Text information about worries and issues entered by the user.

[1319] What it does: You fill out a form with the required information and press the submit button to prepare the data to be sent to the server.

[1320] Output: A data package containing the text information entered by the user and the video footage.

[1321] Step 3: Generate a data package on the device

[1322] The terminal combines the video file uploaded by the user and the input text information into a single data package, which includes the video file, the text information, and the user information.

[1323] Input: User's video file and text information.

[1324] Operation: This information is consolidated and prepared for transmission.

[1325] Output: A consolidated data package.

[1326] Step 4: Send data from the device to the server

[1327] The terminal transmits the compiled data package to the server over the network.

[1328] Input: Integrated data package.

[1329] Operation: Sends data to the server over the network and confirms successful transmission.

[1330] Output: The data package sent to the server.

[1331] Step 5: Server receives and separates data

[1332] The server analyzes the data package received from the terminal and separates the video file from the text information.

[1333] Input: The transmitted data package.

[1334] What it does: Analyzes the data, saves the video file to media storage, and stores the text information in a database.

[1335] Output: Separated video files and text information.

[1336] Step 6: Motion analysis by server

[1337] The server passes the video file to the motion analysis AI, which then analyzes the video frames and extracts movement characteristics.

[1338] Input: Video file.

[1339] Motion: Analyze each frame and convert motion characteristics into a numerical model, such as the backswing, top, downswing, impact, and follow-through of a golf swing.

[1340] Output: Analyzed behavioral feature data.

[1341] Step 7: Server evaluation and feedback generation

[1342] Based on the results of the motion analysis, the server passes the data to a natural language generation AI, which evaluates the analysis results in natural language and generates feedback.

[1343] Input: Behavioral feature data.

[1344] Behavior: Create feedback based on the evaluation criteria, for example, "Your backswing is too early, which can cause your body to lose balance."

[1345] Output: Generated natural language feedback.

[1346] Step 8: Server-based sentiment analysis and customization

[1347] The server has an emotion engine that recognizes emotions from the text information and video input by the user and customizes feedback and advice based on that data.

[1348] Input: The analyzed behavioral feature data and user input text information.

[1349] How it works: The emotion engine recognizes the user's psychological state and adjusts the feedback accordingly. For example, if "anxiety" is detected, the engine will say, "It's important to relax and make a smooth swing."

[1350] Output: Customized feedback and advice.

[1351] Step 9: Server generates and sends data package

[1352] The server collects the generated feedback and advice into a single response data package and transmits it to the user terminal.

[1353] Input: Customized feedback and advice.

[1354] Action: Assembles a data package and sends it to the user.

[1355] Output: The response data package sent.

[1356] Step 10: Display feedback on the device

[1357] The device receives and analyzes the response data package from the server, and the feedback and advice is displayed in the specified display location in the app.

[1358] Input: Response data package.

[1359] What it does: Analyzes the data and displays the feedback.

[1360] Output: On-screen feedback and advice that the user can see.

[1361] (Application example 2)

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

[1363] The present invention aims to improve efficiency and safety by analyzing the movements of robots and workers operating in factories. Conventional systems do not adequately integrate movement analysis and emotion recognition, making it difficult to automate and customize feedback and advice. This problem prevents users from quickly obtaining specific and appropriate improvement measures.

[1364] 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 receiving a video of a behavioral activity captured by a user, means for receiving text information related to worries and issues entered by the user, means for analyzing the motion of the received video, means for generating evaluations and feedback in natural language based on the results of the motion analysis, means for recognizing the user's emotions and customizing the generated evaluations and feedback, and means for providing the generated evaluations and feedback to the user. This enables specific guidance to efficiently and safely improve the operations of robots and workers in factories.

[1365] A "user" is a person who uses the system to record and upload videos of their behavioral activities and receives analysis results and feedback.

[1366] "Video of behavioral activity" is video data taken by a user to record a specific action.

[1367] "Text information" is written data about worries and issues entered by the user, and is input information for the system to analyze.

[1368] "Motion analysis" is the process of converting the movements in a received video into a numerical model and extracting features.

[1369] "Evaluation and feedback" refers to advice and guidance for the user that is generated in natural language based on the results of the motion analysis.

[1370] "Customization" is the process of optimizing the generated ratings and feedback for each individual based on the user's emotional data and input data.

[1371] "Emotion recognition" is the process of inferring and extracting a user's emotional state from video and text information.

[1372] A "prompt sentence" is an instruction sentence generated based on behavioral characteristic data and emotional data, and is used to customize evaluation and feedback.

[1373] The "system" refers to a computer-based platform that includes the above-mentioned means and enables users to easily receive behavioral analysis, feedback, and customized advice.

[1374] The system for implementing the present invention mainly analyzes the user's actions and provides feedback and customized advice. The specific configuration and processing of this system will be described below.

[1375] First, users film their activities with a smartphone or tablet and upload the video to a dedicated application. Next, they use an input form within the application to enter text information about their concerns and issues. This video and text information is then sent from the device to a server.

[1376] The server receives the video file and text information and first performs a motion analysis of the video. This motion analysis uses image processing libraries such as OpenCV and Keras and deep learning libraries. Each frame in the video is analyzed, and key frames and motion characteristics are converted into a numerical model. The results of this motion analysis provide detailed data on the user's actions.

[1377] The server then recognizes the worker's emotions from the video. For emotion recognition, it uses facial expression recognition algorithms and voice analysis technology to estimate the user's emotional state. It is recommended to use a deep learning model for this. The estimated emotion data is then used to generate feedback.

[1378] The behavior analysis results and emotion data are passed to a natural language generation AI on the server, which generates evaluations and feedback. The generation AI evaluates the data in natural language and provides feedback in a form that is easy for the user to understand. This process includes generating appropriate prompt sentences.

[1379] For example, the generated prompt text is:

[1380] "The robot's behavioral characteristics are as follows: [behavior characteristic data]. The worker's emotions are as follows: [emotion data]. Please tell us the best way to improve it."

[1381] Based on this prompt, the generative AI generates specific advice, such as "Slow down the welding speed a little to allow the worker to relax."

[1382] Finally, the generated evaluations and feedback are sent from the server to the user's device, where they can view the information through the application. Through this process, users can quickly obtain specific and customized advice to improve the efficiency and safety of robots and workers in their factories.

[1383] The advantage of this system is that it provides a user-friendly interface while utilizing advanced technology. In addition, by combining motion analysis and emotion recognition, it can provide feedback that takes into account the user's psychological state.

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

[1385] Step 1:

[1386] Users use their smartphones or tablets to record robot operations and worker movements in the factory. Next, they launch a dedicated application and open an input screen for uploading the video file they have recorded. By selecting the video file and pressing the upload button, the video file is sent from the device to the server.

[1387] Input: Video files capturing robot operations and worker movements in a factory

[1388] Output: Video file uploaded to the server

[1389] Step 2:

[1390] Users enter their concerns or problems as text into the application's input form. By entering a specific problem, such as "The robot's welding is misaligned," and pressing the send button, the text information is sent from the device to the server.

[1391] Input: Text information about worries and issues entered by the user

[1392] Output: Text information sent to the server

[1393] Step 3:

[1394] The server then passes the received video file to the motion analysis unit, which uses OpenCV and Keras to sequentially analyze each frame in the video, extract key frames, and convert motion characteristics into numerical data.

[1395] Input: Video file

[1396] Output: Numerical data that indicates the characteristics of the behavior

[1397] Step 4:

[1398] The server analyzes the user's facial expressions and voice from the received video file to extract emotional information. Emotion recognition is performed using a facial expression recognition algorithm and voice analysis technology. A deep learning model is used to generate emotional data.

[1399] Input: Video file

[1400] Output: User emotion data

[1401] Step 5:

[1402] The server then uses the generative AI model to generate prompts based on the results of the motion analysis and the emotion data. The generated prompts are instructions that include both the motion characteristic data and the emotion data.

[1403] Input: Motion analysis results, emotion data

[1404] Output: prompt statement

[1405] Step 6:

[1406] The server uses the generated prompt sentences to have the generative AI model generate evaluations and feedback, which include specific advice for the user's concerns and challenges.

[1407] Input: prompt statement

[1408] Output: Rating and feedback

[1409] Step 7:

[1410] The server compiles the generated evaluations and feedback into a data package and sends it to the user's device, which analyzes the received data and displays the feedback and advice in a designated display location of the application.

[1411] Input: Rating and feedback data package

[1412] Output: Feedback and advice displayed on the application

[1413] Step 8:

[1414] Users can review the feedback and advice provided through the application and incorporate it into their next work or training.

[1415] Input: Feedback and advice displayed on the application

[1416] Output: Improvements reflected in future work and training

[1417] This series of processing steps allows users to quickly obtain specific and customized advice to improve the efficiency and safety of robot operation and work movements within their factories.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

[1439] The following is further disclosed regarding the above embodiment.

[1440] (Claim 1)

[1441] means for receiving a video of a sports activity taken by a user;

[1442] A means for receiving text information regarding worries or issues input by a user;

[1443] means for motion analyzing the received video;

[1444] A means to generate evaluations and feedback in natural language based on the motion analysis results, and

[1445] a means for providing the generated ratings and feedback to the user;

[1446] A system including:

[1447] (Claim 2)

[1448] 2. The system of claim 1, wherein the motion analysis means includes means for extracting key frames in the video and converting the motion into a numerical model.

[1449] (Claim 3)

[1450] 10. The system of claim 1, further comprising means for customizing the generated feedback and advice based on the user's input text information.

[1451] "Example 1"

[1452] (Claim 1)

[1453] means for receiving a video of a sports activity taken by a user;

[1454] A means for receiving text information regarding worries or issues input by a user;

[1455] A means for combining received video and text information into a single data package;

[1456] means for transmitting the data package to a server;

[1457] A means for analyzing the received data package on the server side and separating the video and text information;

[1458] A method to analyze videos using motion analysis AI and extract movement characteristics,

[1459] A method for generating evaluations and feedback using natural language generation AI based on the analysis results, and

[1460] a means for compiling the generated evaluations and feedback into a data package and providing it to the user;

[1461] A system including:

[1462] (Claim 2)

[1463] 2. The system according to claim 1, further comprising means for compressing the video file and optimizing the data volume before transmission.

[1464] (Claim 3)

[1465] 10. The system of claim 1, further comprising means for customizing the generated feedback and advice based on the user's input text information.

[1466] "Application Example 1"

[1467] (Claim 1)

[1468] means for receiving a video of a sports activity taken by a user;

[1469] A means for receiving text information regarding worries or issues input by a user;

[1470] means for motion analyzing the received video;

[1471] A means to generate evaluations and feedback in natural language based on the motion analysis results, and

[1472] a means for providing the generated ratings and feedback to the user;

[1473] A means to display ratings and feedback to users in real time through an augmented reality device for use in physical stores;

[1474] A system including:

[1475] (Claim 2)

[1476] 2. The system of claim 1, wherein the motion analysis means includes means for extracting key frames in the video and converting the motion into a numerical model.

[1477] (Claim 3)

[1478] 10. The system of claim 1, further comprising means for customizing the generated feedback and advice based on the user's input text information.

[1479] "Example 2: Combining Emotion Engines"

[1480] (Claim 1)

[1481] means for receiving a video of a sports activity taken by a user;

[1482] A means for receiving text information regarding worries or issues input by a user;

[1483] means for motion analyzing the received video;

[1484] A means to generate evaluations and feedback in natural language based on the motion analysis results, and

[1485] A means for recognizing emotions from the user's input text information and video, and customizing feedback and advice based on that information;

[1486] a means for providing the generated ratings and feedback to the user;

[1487] A system including:

[1488] (Claim 2)

[1489] 2. The system of claim 1, wherein the motion analysis means includes means for extracting key frames in the video and converting the motion into a numerical model.

[1490] (Claim 3)

[1491] 2. The system according to claim 1, further comprising means for learning a user's reaction to past feedback and feeding it forward to the next feedback.

[1492] "Application example 2 when combining emotion engines"

[1493] (Claim 1)

[1494] means for receiving video of a user's captured behavioral activity;

[1495] A means for receiving text information regarding worries or issues input by a user;

[1496] means for performing motion analysis on the received video;

[1497] A means of generating evaluations and feedback in natural language based on the results of motion analysis;

[1498] a means for recognizing user emotions and customizing the ratings and feedback generated;

[1499] a means for providing the generated ratings and feedback to the user;

[1500] A system including:

[1501] (Claim 2)

[1502] 2. The system of claim 1, wherein the motion analysis means includes means for extracting key frames in the video and converting the motion into a numerical model.

[1503] (Claim 3)

[1504] 2. The system according to claim 1, further comprising means for generating prompt sentences based on the behavior characteristic data and the emotion data, and customizing evaluations and feedback based thereon. [Explanation of symbols]

[1505] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Device 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robot< / url:> < / url:> < / url:> < / url:>

Claims

1. means for receiving a video of a sports activity taken by a user; A means for receiving text information regarding worries or issues input by a user; means for motion analyzing the received video; A means to generate evaluations and feedback in natural language based on the motion analysis results, and a means for providing the generated ratings and feedback to the user; A system including:

2. 2. The system of claim 1, wherein the motion analysis means includes means for extracting key frames in the video and converting the motion into a numerical model.

3. 10. The system of claim 1, further comprising means for customizing the generated feedback and advice based on the user's input text information.

Citation Information

Patent Citations

  • Persona chatbot control method and system

    JP2022180282A