system
The system addresses the lack of tactical training in conventional sports systems by analyzing match data to generate personalized scenarios and provide real-time feedback, improving amateur players' situational judgment and positioning through virtual reality training.
Patent Information
- Application Number
- JP2024140511
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-21
- Publication Date
- 2026-03-06
AI Technical Summary
Conventional sports training systems fail to adequately address the understanding and application of tactical movements and positioning in matches, limiting opportunities for amateur players to learn from professional players and improve their situational judgment and positioning in real-time.
A system that collects and analyzes match data, generates personalized practice scenarios, and provides real-time simulation feedback using virtual reality, allowing users to train by mimicking professional players' movements and receiving immediate feedback on areas for improvement.
Enables effective training in situational judgment and strategy by allowing users to learn professional gameplay in real-time, enhancing their understanding of match management and positioning through personalized scenarios and immediate feedback.
Smart Images

Figure 2026037486000001_ABST
Abstract
Description
[Technical Field]
[0001] The technology of the present disclosure relates to a system. [Background technology]
[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]
[0004] Conventional sports training systems focus on improving the technical and physical abilities of individual players, but do not adequately address the understanding and application of tactical movements and positioning in matches. Furthermore, there are limited opportunities to directly learn from professional players, posing a major challenge for amateur players and players who have already reached a certain level when aiming to further improve. In particular, there are few opportunities to learn situational judgment and appropriate positioning during matches in real time, making effective training difficult. [Means for solving the problem]
[0005] The present invention solves these problems by developing a system that collects and analyzes match data, generates practice scenarios, captures and analyzes user movements in real time, and provides simulation feedback using virtual reality. This system collects professional match data, analyzes that data, and extracts tactical information for each player. It also generates optimal practice scenarios based on the user's skill level, allowing the user to train by following those scenarios in real time through virtual reality goggles. Furthermore, the system analyzes the user's performance and provides feedback on comparisons with professional players and areas for improvement, deepening their understanding of match management and appropriate positioning, and providing practical training.
[0006] "Game data" refers to data that includes information such as the series of actions performed by a player during a game, the course of the ball, positioning, and score.
[0007] "Analysis means" refers to processing devices and algorithms for analyzing collected match data and extracting specific information such as player movements, tactics, positioning, and ball trajectory.
[0008] A "practice scenario" refers to a series of procedures and content designed for a user's training program or a simulation in a virtual environment based on analyzed match data.
[0009] "Input data acquisition means" refers to sensors or devices that capture the physical actions of a user (e.g., swinging a racket) and collect and transmit that data.
[0010] "Simulation generation means" refers to a device and program for visually and dynamically generating a virtual reality environment based on user input data and a practice scenario, and providing it to the user.
[0011] "Virtual reality goggles" refers to a head-mounted display that provides a user with a visual representation of a virtual reality environment and enables the user to train within that environment.
[0012] "Feedback providing means" refers to a device and program for analyzing a user's performance data and notifying the user of areas for improvement and evaluation based on the results. [Brief explanation of the drawings]
[0013] [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
[0014] 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.
[0015] First, the terms used in the following description will be explained.
[0016] 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).
[0017] 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.
[0018] 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.
[0019] 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.
[0020] 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."
[0021] [First embodiment]
[0022] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0023] 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.
[0024] 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).
[0025] 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.
[0026] 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.
[0027] 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.
[0028] 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.
[0029] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0030] 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.
[0031] 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.
[0032] 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.
[0033] 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."
[0034] The present invention relates to a system that allows users to learn professional gameplay in real time and effectively train. Based on the following aspects, we will specifically explain the system that collects and analyzes game data, generates practice scenarios, acquires and analyzes user movements in real time, and provides simulation and feedback using virtual reality.
[0035] Program processing
[0036] 1. Data Collection:
[0037] The server collects match data of professional tennis players from external sources, including match footage, player movement data, ball trajectory data, and positioning data.
[0038] 2. Data Analysis:
[0039] The server applies video analysis algorithms to analyze the collected game footage, recognizing player movements, positioning, and ball trajectory. Specifically, it identifies the player's position for each frame and tracks the ball's trajectory.
[0040] This allows players' characteristic movements and tactical patterns to be extracted and recorded in a database.
[0041] 3. Building the learning model:
[0042] The server applies machine learning algorithms to the analyzed data to model the course of a match, specifically creating a model that predicts the actions of professional players in specific situations.
[0043] This allows the user to generate practice scenarios in a format that is easy for them to learn.
[0044] 4. Generating practice scenarios:
[0045] The server generates personalized practice scenarios based on the user's practice data and skill level, including practice content based on specific situations during a match (e.g., break points, service games, etc.).
[0046] 5. Setting up the VR environment:
[0047] The device performs an initial calibration of the sensors and rackets used by the user to obtain accurate position data.
[0048] The device transmits the user's captured movements to a server in real time, and the simulation data from the server is displayed on the VR goggles.
[0049] 6. Practical exercises:
[0050] Users put on VR goggles and practice swinging a racket in a virtual reality environment, trying out the same movements as professional players and receiving real-time feedback.
[0051] The device uses sensors to capture the user's movements and transmits the data to a server in real time.
[0052] 7. Feedback and Improvement:
[0053] The server analyzes the user's movements and compares them with those of professional players, specifically evaluating the ball's angle, speed, positioning, and other factors.
[0054] The device displays feedback data from the server on the VR goggles, allowing users to see the results and understand areas for improvement.
[0055] Specific examples
[0056] For example, consider a scenario in which a user is learning how a professional tennis player plays a match.
[0057] 1. The server collects match data from well-known players and identifies long rallies and important points.
[0058] 2. The server analyzes the data and extracts player movements, positioning, and in-game strategies.
[0059] 3. The server selects a specific scene (e.g., a tactic for a return game) to be practiced next based on User B's past practice data.
[0060] 4. The device accurately records User B's racket movements and completes the calibration.
[0061] 5. The user puts on the VR goggles and swings the racket in a virtual reality environment, mimicking the movements of a professional, for example, practicing the transition from a serve return to net play.
[0062] 6. The server analyzes User B's movements and provides specific feedback (e.g., "Your weight is too far back when you return").
[0063] 7. The device displays the feedback on the VR goggles, allowing User B to practice again while checking areas for improvement in real time.
[0064] In this way, the present invention provides an effective means for learning how a professional plays a game and for practical training in situational judgment and strategy during a game.
[0065] The processing flow will be explained below.
[0066] Step 1:
[0067] The server collects match data of professional tennis players from external sources, including match footage, player movement data, ball trajectory data, and positioning data.
[0068] Step 2:
[0069] The server applies video analysis algorithms to analyze the collected game footage, recognizing player movements, positioning, and ball trajectory. Specifically, it identifies the player's position for each frame and tracks the ball's trajectory.
[0070] Step 3:
[0071] The server applies machine learning algorithms to the analyzed data to model the course of a match, specifically creating a model that predicts the actions of professional players in specific situations.
[0072] Step 4:
[0073] The server generates personalized training scenarios based on the user's training data and skill level, including training content based on specific situations during a match.
[0074] Step 5:
[0075] The device performs an initial calibration of the sensors and rackets used by the user to obtain accurate position data.
[0076] Step 6:
[0077] The device transmits the user's captured movements to the server in real time, and the simulation data from the server is displayed on the VR goggles.
[0078] Step 7:
[0079] Users put on VR goggles and practice swinging a racket in a virtual reality environment, trying out the same movements as professional players and receiving real-time feedback.
[0080] Step 8:
[0081] The device uses sensors to capture the user's movements and transmits the data to a server in real time.
[0082] Step 9:
[0083] The server analyzes the user's movements and compares them with those of professional players, specifically evaluating the ball's angle, speed, positioning, and other factors.
[0084] Step 10:
[0085] The device displays feedback data from the server on the VR goggles, allowing users to see the results and understand areas for improvement.
[0086] Example 1
[0087] 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."
[0088] Conventional training systems using match data make it difficult for users to learn match progress in real time and train effectively. Furthermore, there is a lack of methods for generating practice scenarios tailored to individual users. This often results in users being unable to train according to their own skills and weaknesses, slowing their progress. Furthermore, the lack of real-time feedback makes it difficult for users to immediately understand areas for improvement in their movements and tactics.
[0089] 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.
[0090] In this invention, the server includes a means for collecting game data, a means for analyzing the collected game data to extract information on each player's ball trajectory, positioning, and tactics, and a means for generating a practice scenario optimized for the user based on the extracted information. This allows the user to study the game data in real time and train efficiently with a practice scenario customized based on their individual skill level and practice data. Furthermore, by including a means for measuring the user's movements in real time and transmitting the results to the server, immediate feedback is provided, allowing the user to quickly understand areas for improvement in their movements and tactics.
[0091] "Match data" includes all information related to a professional tennis player's match, specifically including match footage, player movement data, ball trajectory data, positioning data, and the like.
[0092] "Means for collecting" refers to the methods and devices for obtaining match data from external sources and storing it on a server.
[0093] "Means for analyzing" refers to a method and device for processing collected match data and extracting necessary information (player movements, ball trajectory, positioning, tactical patterns).
[0094] "Means for generating practice scenarios" refers to a method and system for creating individually customized practice content based on the user's skill level and past practice data.
[0095] "Means for obtaining user input data" refers to sensors or devices for reading the operations and actions that users perform on the system.
[0096] "Means for transmitting to a server in real time" refers to communication means and devices for instantly transmitting data acquired from a user to a server.
[0097] "Means for generating a game simulation" refers to a method and system for constructing a virtual game environment based on analyzed data and user movements.
[0098] "Means for displaying in virtual reality goggles" refers to methods and apparatus that allow a user to visually experience the generated simulation in a VR environment.
[0099] "Means for providing feedback" refers to methods and systems for analyzing a user's performance and informing the user of comparison results, areas for improvement, and advice.
[0100] "Means for customization" refers to methods and systems for tailoring and optimizing practice scenarios based on a user's practice data and skill level.
[0101] "Means for measuring movements in real time" refers to a method and device that uses sensors or the like to instantly measure a user's movements and collect them as data.
[0102] "Movement transmitting means" refers to communication means and devices for transferring user movement data measured in real time to a server.
[0103] This invention relates to a system that allows users to learn professional gameplay in real time and effectively train. The system mainly consists of three main components: a server, a terminal, and a user.
[0104] server
[0105] The server first collects match data from professional tennis players. This data includes match footage, player movement data, ball trajectory data, and positioning data. During the data collection process, API requests are sent to the official ATP and WTA databases to obtain the necessary data. The collected data is then stored in a local database.
[0106] Next, the collected game footage is analyzed. Specifically, using the OpenCV library, a video analysis algorithm is applied to identify player movements, positioning, and ball trajectory. A deep learning model is then used to detect the ball's trajectory. Based on the analyzed data, characteristic player movements and tactical patterns are extracted and recorded in a database.
[0107] Based on the analysis data, the server uses the TENSORFLOW® library to build a machine learning model, which can predict the actions that professional players will take in specific situations. This model is then used to generate individually customized practice scenarios based on the user's practice data and skill level. For example, if a user is weak at backhand returns, a scenario will be created that focuses on practicing that aspect.
[0108] Terminal
[0109] The device performs initial calibration of the sensors and racket to obtain accurate position data. The device then uses the Kinect sensor and motion capture system to calibrate the position information of the user's body and racket, completing the initial setup. After that, the sensor information continues to be sent to the server in real time.
[0110] Next, the terminal displays the simulation data from the server on the VR goggles. This can be done using a VR device such as Oculus Rift. The user puts on the VR goggles and practices swinging the racket in a virtual reality environment. The user can practice by imitating the movements of professional players and receive feedback in real time.
[0111] User
[0112] Users wear VR goggles and practice in a virtual reality environment. For example, they can experience a simulated transition from a serve return to a net play performed by a professional player, imitating their movements. During the actual practice, the user's movements are captured via a Kinect sensor and a motion capture system.
[0113] The real-time collected movement data is sent to a server, which analyzes it and compares it with the data of professional players. The server generates feedback based on the results and displays it on the VR goggles via the device. This allows users to receive real-time advice on how to improve their movements and tactics.
[0114] Specific examples
[0115] For example, if a user wants to learn how a professional tennis player plays a game, the server collects match data from famous players and identifies long rallies and important points. The server analyzes the data to extract players' movements, positioning, and in-match strategies. Based on the user's past practice data, it selects the specific scene to practice next (e.g., return game tactics). The device accurately records the user's racket movements and completes calibration. The user puts on VR goggles and swings the racket in a virtual reality environment, imitating the movements of a professional. The server analyzes the user's movements and provides feedback. The device displays the feedback in real time, allowing the user to review and practice again.
[0116] Examples of prompt statements
[0117] "Can you give me an example of Python code that analyzes video footage of professional tennis players and builds a model that learns their tactics and player movements during a match?"
[0118] Thus, the present invention provides an effective means for learning how professional players play a game and for practical training in situational judgment and strategy during a game.
[0119] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0120] Step 1:
[0121] Match data collection
[0122] The server collects professional tennis players' match data from external sources. Specifically, it sends API requests to the official ATP and WTA databases to retrieve past match data. The input data are API request parameters, and the output data are the captured match footage, player movement data, ball trajectory data, and positioning data. This data is stored in a local database.
[0123] Step 2:
[0124] Game footage analysis
[0125] The server applies a video analysis algorithm to analyze the collected game footage. Specifically, it uses the OpenCV library to identify the player's position for each frame and a deep learning model to detect the ball's trajectory. The input data is the collected game footage, and the output data is data on player movements, positioning, and ball trajectory. This allows players' characteristic movements and tactical patterns to be extracted and recorded in a database.
[0126] Step 3:
[0127] Extracting player movements and tactics
[0128] The server extracts the players' characteristic movements and tactical patterns based on the analyzed video data. For example, it uses a clustering algorithm to classify the players' positioning during a rally and the course of the ball. The input data is the analyzed video data, and the output data is the extracted characteristic movements and tactical patterns. This data is recorded in a database.
[0129] Step 4:
[0130] Building a machine learning model
[0131] The server applies a machine learning algorithm to the extracted data to model the progress of the game. Specifically, it uses the TensorFlow library to generate a model for predicting the behavior of professional players. The input data is the extracted feature data, and the output data is the model for predicting the behavior of professional players. This makes it possible to predict the behavior of professional players under specific circumstances.
[0132] Step 5:
[0133] Generating individual practice scenarios
[0134] The server generates an individually customized practice scenario based on the user's practice data and skill level. For example, if the user is not good at backhand returns, it creates a practice scenario that corresponds to that situation. The input data is the user's practice data and skill level, and the output data is the customized practice scenario.
[0135] Step 6:
[0136] Setting up the VR environment
[0137] The device performs initial calibration of the sensors and racket used by the user to obtain accurate position data. Specifically, it calibrates the position information of the user's body and racket using a Kinect sensor and motion capture system. The input data is the user's initial position information, and the output data is the calibrated position data.
[0138] Step 7:
[0139] Sending real-time data
[0140] The device captures the user's movements in real time and sends the data to the server. The input data is the user's movement data, and the output data is the real-time movement data sent to the server, which includes sensor information and user behavior data.
[0141] Step 8:
[0142] Generate and view simulations
[0143] The server generates a match simulation based on the user's movements and displays the generated simulation on the device's VR goggles. The input data is the user's movement data transmitted in real time, and the output data is the simulation data displayed on the VR goggles.
[0144] Step 9:
[0145] Providing Feedback
[0146] The server analyzes the user's performance and provides feedback by comparing it with data from professional players. Specifically, it evaluates the ball's angle, speed, positioning, etc. in detail and generates areas for improvement and advice. The input data is the user's performance data, and the output data is feedback data. The device displays this feedback on the VR goggles, allowing the user to check it in real time.
[0147] (Application example 1)
[0148] 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."
[0149] In conventional driving skill improvement and autonomous vehicle testing, it has been difficult to efficiently learn and reproduce the advanced driving skills and emergency response capabilities of professional drivers. Furthermore, there have been limited systems that provide real-time feedback to help users improve their driving skills. This has hindered the acquisition of driving skills and the improvement of autonomous driving systems.
[0150] 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.
[0151] In this invention, the server includes a means for collecting driving data from professional drivers, a means for analyzing the collected driving data and extracting information on each driver's steering, braking, and accelerator operations and vehicle behavior, and a means for generating an optimal driving training scenario for the user based on the extracted information. This allows users to learn professional driver driving techniques and emergency response methods in real time and repeatedly practice them in a virtual reality environment.
[0152] "Match data" refers to information relating to the movements of players in sports competitions, the trajectory of the ball, positioning, tactics, and so on.
[0153] A "professional driver" is a driver who drives a vehicle professionally and has advanced driving skills and experience.
[0154] "Driving data" refers to a series of information related to vehicle driving, and specifically includes data on steering operation, braking operation, accelerator operation, vehicle behavior, and the like.
[0155] "Virtual reality goggles" are a device that allows users to experience a virtual reality environment and is a head-mounted display that provides visual and auditory information.
[0156] "Data analysis" is the act of processing collected data using analytical techniques to find necessary patterns and relationships.
[0157] A "driving training scenario" is a series of exercises and training content designed to improve driving skills and is customized to suit the user's skills and requirements.
[0158] "Real-time feedback" refers to evaluations and advice provided instantly in response to a user's actions and reactions.
[0159] "Steering operation" refers to the operation of the steering wheel to control the direction of travel of the vehicle.
[0160] "Brake operation" means the operation of the brake mechanism to slow or stop the vehicle.
[0161] "Accelerator operation" refers to operation of the accelerator pedal to increase the speed of the vehicle.
[0162] "Vehicle behavior" refers to the movement and behavior of a vehicle while driving, and specifically includes acceleration, deceleration, turning, stability, etc.
[0163] A "virtual reality environment" is a computer-generated, three-dimensional virtual world in which a user is visually and auditorily immersed.
[0164] The system that realizes this application example is an advanced virtual reality system for learning and efficiently training driving skills of professional drivers. The system includes the following means:
[0165] The server collects driving data from professional drivers, including game footage, steering, braking, and acceleration data, and vehicle behavior data. To analyze the collected driving data, the server uses a video analysis algorithm (specifically, OpenCV). Through video analysis, the server extracts the professional drivers' characteristic operations and driving patterns and records them in a database.
[0166] The server then builds machine learning models (specifically TensorFlow and Scikit-learn) based on the extracted data to generate driving scenarios that are tailored to each user and include training content for emergency responses and challenging driving situations (e.g., merging onto a highway, driving in bad weather).
[0167] The device includes virtual reality goggles and a driving simulator. Users wear the virtual reality goggles and operate the driving simulator to train. Operation data from the driving simulator is sent to a server in real time. The server analyzes the user's driving data and compares it with that of professional drivers. The analysis results are fed back to the user, providing them with suggestions for improvement and appropriate advice.
[0168] For program processing, a high-performance server (such as AWS (registered trademark) EC2 or Google (registered trademark) Cloud Compute Engine) is used. The video analysis algorithm OpenCV is applied for data analysis, and TensorFlow or Scikit-learn is used to build the machine learning model. MySQL (registered trademark) or MongoDB is used for the database, and Unity or Unreal Engine is used to display feedback.
[0169] As a concrete example, consider a scenario in which a user learns emergency braking operations from a professional driver. The server collects and analyzes emergency braking operation data. It then records emergency braking patterns in a database. The user puts on virtual reality goggles and uses a driving simulator to train in emergency braking operations. The server analyzes the user's operation data and compares it with the operations of the professional driver to provide feedback. The user receives the feedback and retrains to improve their driving skills.
[0170] An example prompt is:
[0171] "Collect and analyze data on emergency braking maneuvers performed by professional drivers on highways, and model their operation patterns using a machine learning model. Then, use that model to generate customized practice scenarios and create a program to train users in a VR environment."
[0172] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0173] Step 1:
[0174] The server collects driving data from professional drivers. The collected data includes driving footage, steering, braking, and acceleration operations, as well as vehicle behavior. This data is obtained from external sources and stored in a database. The input is the driving data of professional drivers, and the output is driving data organized for analysis.
[0175] Step 2:
[0176] The server applies a video analysis algorithm (specifically, OpenCV) to analyze the collected driving data. It identifies the driver's actions and vehicle movements for each frame and obtains detailed data on steering, braking, accelerating, and vehicle behavior. The input is the collected driving data, and the output is the analyzed specific actions and behavior data.
[0177] Step 3:
[0178] The server uses the analyzed data to build a machine learning model (specifically, TensorFlow or Scikit-learn). The model is used to predict the actions a professional driver will take in a specific driving situation. The input is the analyzed driving data, and the output is a machine learning model that predicts driving patterns.
[0179] Step 4:
[0180] The server generates driving training scenarios based on the user's driving data and skill level. The generated scenarios include training content for emergency response methods and difficult driving situations. The input is a machine learning model and the user's skill data, and the output is a customized driving training scenario.
[0181] Step 5:
[0182] The terminal performs initial calibration of the driving simulator used by the user, and performs settings to accurately acquire the user's operation data. The input is the calibration data of the driving simulator, and the output is the initially configured driving simulator.
[0183] Step 6:
[0184] The user wears virtual reality goggles and operates a driving simulator to train. The device transmits the user's operation data to the server in real time. The input is the user's operation data during training, and the output is the data transmitted to the server.
[0185] Step 7:
[0186] The server analyzes the user's operation data and compares it with that of professional drivers. It then makes a specific evaluation and generates appropriate advice and suggestions for improvement. The input is the user's operation data, and the output is the analysis results and feedback data.
[0187] Step 8:
[0188] The terminal displays the feedback data from the server on the virtual reality goggles. The user checks the feedback and understands the areas for improvement. The input is the feedback data from the server, and the output is the feedback displayed on the virtual reality goggles.
[0189] Through the above process, users can learn the driving techniques of professional drivers in real time and repeatedly practice in a virtual reality environment.
[0190] 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.
[0191] The present invention relates to a system that allows users to learn professional gameplay in real time and train effectively. Furthermore, by combining this system with an emotion engine, feedback can be provided based on the user's emotional state, allowing them to maintain motivation while practicing. Based on the following configuration, we will specifically explain the collection and analysis of game data, the generation of practice scenarios, the real-time acquisition and analysis of user movements, the simulation and feedback using virtual reality, and the implementation of the emotion engine.
[0192] Program processing
[0193] 1. Data Collection:
[0194] The server collects match data of professional tennis players from external sources, including match footage, player movement data, ball trajectory data, and positioning data.
[0195] 2. Data Analysis:
[0196] The server applies video analysis algorithms to analyze the collected game footage, recognizing player movements, positioning, and ball trajectory. Specifically, it identifies the player's position for each frame and tracks the ball's trajectory.
[0197] The analysis results are stored in a database, and detailed information about each point (e.g., ball angle, speed, position, etc.) is recorded.
[0198] 3. Building the learning model:
[0199] The server then applies machine learning algorithms to the analyzed data to model the course of a match, for example, creating a model that predicts the actions of a professional player in a given situation.
[0200] 4. Generating practice scenarios:
[0201] The server generates personalized training scenarios based on the user's training data and skill level, including training content based on specific situations during a match.
[0202] 5. Setting up the VR environment:
[0203] The device performs an initial calibration of the sensors and rackets used by the user to obtain accurate position data.
[0204] The device transmits the user's captured movements to a server in real time, and the simulation data from the server is displayed on the VR goggles.
[0205] 6. Practical exercises:
[0206] Users put on VR goggles and practice swinging a racket in a virtual reality environment, trying out the same movements as professional players and receiving real-time feedback.
[0207] The device uses sensors to capture the user's movements and transmits the data to a server in real time.
[0208] 7. Feedback and Improvement:
[0209] The server analyzes the user's movements and compares them with those of professional players, specifically evaluating the ball's angle, speed, positioning, and other factors.
[0210] The server generates feedback based on the user's performance and displays it on the VR goggles via the device.
[0211] 8. Emotion engine integration:
[0212] The terminal captures the user's facial expressions, voice, and biometric information and sends them to the emotion engine.
[0213] The emotion engine analyzes this information and recognizes the user's emotional state.
[0214] The server adjusts the feedback content based on the analysis results of the emotion engine and provides appropriate advice according to the user's emotions.
[0215] Specific examples
[0216] For example, consider a scenario in which a user is learning how a professional tennis player plays a match.
[0217] 1. The server collects match data from well-known players and identifies long rallies and important points.
[0218] 2. The server analyzes the data and extracts player movements, positioning, and in-game strategies.
[0219] 3. The server selects a specific scene (e.g., return game tactics) to practice next based on user C's past practice data.
[0220] 4. The device accurately records User C's racket movements and completes the calibration.
[0221] 5. The user puts on the VR goggles and swings the racket in a virtual reality environment, mimicking the movements of a professional, for example, practicing the transition from a serve return to net play.
[0222] 6. The device captures user C's facial expressions, voice, and biometric information and sends them to the server.
[0223] 7. The emotion engine analyzes the data and recognizes that User C is feeling impatient or anxious.
[0224] 8. The server generates feedback based on user C's emotional state (e.g., "Relax and try again") and displays it on the VR goggles via the terminal.
[0225] In this way, the present invention provides an effective means for learning how professional players play games and for practical training in situational judgment and strategy during a game, and furthermore, it can utilize an emotion engine to maintain the user's motivation.
[0226] The processing flow will be explained below.
[0227] Step 1:
[0228] The server collects match data of professional tennis players, including match footage, player movement data, ball trajectory data, and positioning data, from external sources.
[0229] Step 2:
[0230] The server applies video analysis algorithms to analyze the collected game footage, identifying the player's position and tracking the ball's trajectory for each frame to recognize the player's movements, positioning, and ball trajectory.
[0231] Step 3:
[0232] The server then applies machine learning algorithms to model the course of a match, creating a model that predicts how a professional player will act in a given situation.
[0233] Step 4:
[0234] The server generates personalized training scenarios based on the user's training data and skill level, including training content tailored to specific situations during a match.
[0235] Step 5:
[0236] The device will perform an initial calibration of the sensors and rackets used by the user to obtain accurate position data, and after calibration is complete, it will be able to accurately track the user's movements.
[0237] Step 6:
[0238] The device transmits the user's captured movements to the server in real time, and simultaneously displays the simulation data from the server on the VR goggles.
[0239] Step 7:
[0240] Users put on VR goggles and practice swinging a racket in a virtual reality environment, trying out the same movements as professional players and receiving real-time feedback.
[0241] Step 8:
[0242] The device uses sensors to capture the user's movements and transmits the data in real time to a server, including detailed data such as the user's ball-hitting angle, speed, and positioning.
[0243] Step 9:
[0244] The device captures the user's facial expressions, voice, and biometric information using devices such as cameras, microphones, and heart rate sensors to gather data to recognize the user's emotional state.
[0245] Step 10:
[0246] The emotion engine analyzes collected facial expressions, voice, and biometric information to recognize the user's emotional state, for example, determining whether the user is feeling anxious or impatient.
[0247] Step 11:
[0248] The server adjusts the feedback content based on the analysis results of the emotion engine. For example, if the user is feeling impatient, it generates advice that takes into account the user's emotions, such as "Relax and try again."
[0249] Step 12:
[0250] The device displays the feedback data from the server on the VR goggles, allowing the user to see the results and understand areas for improvement. Appropriate feedback based on emotions is provided to maintain the user's motivation.
[0251] Example 2
[0252] 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."
[0253] Conventional training systems do not adequately provide users with the means to effectively learn how professional players play. Furthermore, they do not provide feedback that takes into account the user's emotional state, making it difficult to maintain motivation. The present invention aims to solve these problems by providing a system that allows users to learn how professional players play in real time and train effectively.
[0254] The identification processing 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 collecting game data, means for analyzing the collected game data and extracting information on the ball trajectory, positioning, and tactics of each player, means for generating an optimal practice scenario for the user based on the extracted information, means for acquiring user input data and transmitting it to the server in real time, means for generating a game simulation based on the user's movements, means for displaying the generated simulation on a virtual reality display device, means for analyzing the user's performance and providing feedback, and means for analyzing the user's emotional state and adjusting the feedback. This allows the user to learn how professional players play in real time and train effectively, and also provides feedback according to the user's emotional state, allowing the user to practice while maintaining motivation.
[0255] "Match data" refers to video footage of professional tennis players' matches, player movement data, ball trajectory data, positioning data, and other tactical information.
[0256] "Collection Method" means any combination of hardware and software used to automatically obtain and store Match Data from external sources.
[0257] "Means of analysis" refers to technology that applies image analysis algorithms to collected match data to extract information such as each player's positioning and the trajectory of the ball.
[0258] "Means for generating a practice scenario" refers to an algorithm and processing device for creating optimal practice content for the user based on the information obtained through analysis.
[0259] "Means for acquiring input data and transmitting it in real time" refers to devices and technologies for capturing user movements with sensors and transmitting that data to a server in real time.
[0260] "Means for generating a match simulation" refers to a processing device and algorithms for generating a match simulation in a virtual reality environment based on user movement data.
[0261] "Virtual reality display device" refers to a device such as a head-mounted display or goggles that allows a user to visually experience a simulation in a virtual reality environment.
[0262] "Means for analyzing performance and providing feedback" refers to processing devices and algorithms for analyzing the user's movement data, comparing it with professional athletes, and providing feedback of the results to the user.
[0263] "Means for analyzing emotional state and adjusting feedback" refers to technology and devices for analyzing a user's emotional state from facial expressions, voice, biometric information, etc., and adjusting the feedback content based on that.
[0264] The present invention relates to a system that allows users to learn professional gameplay in real time and train effectively. This system incorporates an emotion engine that provides feedback according to the user's emotional state, allowing the user to maintain motivation while practicing. Specific embodiments are described below.
[0265] First, the server collects match data from professional tennis players. Match data includes match footage, player movement data, ball trajectory data, and positioning data. This data is automatically obtained from external sources and stored in cloud storage (e.g., AWS S3). Web scraping technology (e.g., BeautifulSoup) is used to collect the data.
[0266] The server then applies a video analysis algorithm (e.g., OpenCV) to analyze the collected game footage to recognize player movements, positioning, and ball trajectory. The analysis is performed by identifying the player's position for each frame and tracking the ball's trajectory. The analysis results are stored in a database (e.g., MySQL), recording details such as ball angle, speed, and location.
[0267] The server then applies machine learning algorithms (e.g., TensorFlow) to the analyzed data to create a model that predicts the behavior of professional players. The model learns the players' movement patterns and predicts their reactions to specific situations.
[0268] The server then generates a personalized practice scenario based on the user's practice data and skill level, including analyzing the user's past practice data to identify areas for improvement.
[0269] The device performs an initial calibration of the sensors and racket used by the user and obtains accurate position data. The user completes the calibration by performing a predetermined movement using a sensor (e.g., Kinect) connected to the device. The device transmits the captured movement to a server in real time, and the simulation data from the server is displayed on a virtual reality display device (e.g., Oculus Rift).
[0270] The user wears a virtual reality display device and practices swinging a racket in a virtual reality environment. They try out the same movements as professional players and receive real-time feedback. The device captures the user's movements with sensors and sends the data to a server in real time.
[0271] The server analyzes the user's movements and compares them with those of professional players. It performs detailed evaluations of the ball's angle, speed, positioning, etc., and generates feedback that is displayed on a virtual reality display device via the device. The device also captures the user's facial expressions, voice, and biometric information, and sends it to an emotion engine (e.g., IBM Watson (registered trademark) Tone Analyzer). The emotion engine analyzes this information and recognizes the user's emotional state.
[0272] Based on the analysis results of the emotion engine, the server adjusts the feedback content and provides appropriate advice according to the user's emotions.
[0273] To illustrate, consider the following scenario:
[0274] 1. The server collects match data from professional tennis players and identifies long rallies and important points from the data.
[0275] 2. The server analyzes the data and extracts player movements, positioning, and in-game strategies.
[0276] 3. The server selects a specific scene (e.g., return game tactics) to practice next based on user C's past practice data.
[0277] 4. The device accurately records User C's racket movements and completes the calibration.
[0278] 5. The user wears a virtual reality display device and swings a racket in a virtual reality environment, mimicking the movements of a professional, for example, practicing the transition from a serve return to a net play.
[0279] 6. The device captures user C's facial expressions, voice, and biometric information and sends them to the server.
[0280] 7. The emotion engine analyzes this data and recognizes that User C is feeling impatient or anxious.
[0281] 8. The server generates feedback based on the emotional state of user C (e.g., "Relax and try again") and displays it on the virtual reality display device via the terminal.
[0282] An example of a prompt sentence to be input to the generative AI model is shown below.
[0283] Create a VR simulation that recreates specific scenes from a professional tennis match and allows users to practice in those scenes. Generate practice scenarios tailored to the user's skill level and provide real-time feedback. Also, analyze the user's emotional state and provide motivational advice based on the results.
[0284] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0285] Program processing steps
[0286] Step 1: Gathering match data
[0287] 1. The server automatically retrieves professional tennis player match data from external sources.
[0288] Input: Match URL or API endpoint
[0289] Processing: Gather game footage and statistics using web scraping technology (e.g. BeautifulSoup).
[0290] Output: Collected match data (video files, movement data, ball trajectory data, positioning data)
[0291] Specific operation: The server downloads the video file from the specified URL and saves it in AWS S3 cloud storage.
[0292] Step 2: Analyzing match data
[0293] 2. The server applies image analysis algorithms (e.g., OpenCV) to analyze the collected game footage.
[0294] Input: Collected game footage
[0295] Processing: Track player location and ball trajectory for each frame to recognize ball launch angle, speed, positioning, etc.
[0296] Output: Detailed match data as analysis results (stored in a database)
[0297] Specific operation: The server analyzes the video file frame by frame and writes the results to a MySQL database.
[0298] Step 3: Building a learning model
[0299] 3. The server applies a machine learning algorithm (e.g., TensorFlow) to the analyzed data to create a model.
[0300] Input: Match data for analysis results
[0301] Processing: Using machine learning algorithms to train models that predict how players will behave in specific situations.
[0302] Output: Behavioral prediction model
[0303] What happens: The server executes the machine learning task and saves the training results as a model file.
[0304] Step 4: Generate a training scenario
[0305] 4. The server generates an individually customized practice scenario based on the user's practice data and skill level.
[0306] Input: User's past practice data and skill assessment
[0307] Processing: Algorithms analyze user data, identify needed improvements, and generate practice scenarios.
[0308] Output: A customized training scenario
[0309] Specific operation: The server retrieves the user's data through a query and compiles the generated scenario in HTML format.
[0310] Step 5: Setting up the VR environment
[0311] 5. The device performs an initial calibration of the sensors and rackets used by the user.
[0312] Input: Sensor capture data and a series of user actions
[0313] Processing: The calibration algorithm corrects the sensor position and performs the initial setup.
[0314] Output: Accurate position data after calibration is complete
[0315] Specific operation: The device software acquires data from the sensor and prompts the user to perform calibration.
[0316] Step 6: Practice
[0317] 6. The user wears the virtual reality display device and practices swinging a racket in the virtual reality environment.
[0318] Input: User movement, virtual reality environment settings
[0319] Processing: User movements are captured in real time and combined with simulation data.
[0320] Output: User movement data in the VR environment
[0321] Specific actions: The user wears the virtual reality display device and performs an action, which is captured by the device's sensors.
[0322] Step 7: Feedback and Improvement
[0323] 7. The server analyzes the user's movements and compares them with those of professional players.
[0324] Input: User behavior data
[0325] Processing: Analysis algorithms evaluate the ball's angle, speed, positioning, etc. and compare it with professional data.
[0326] Output: Improvements and Feedback
[0327] Specific operation: The server generates feedback content based on the analysis results and sends it to the device in real time.
[0328] Step 8: Integrating the Emotion Engine
[0329] 8. The device captures the user's facial expressions, voice, and biometric information and sends them to the emotion engine.
[0330] Input: User's facial expression data, voice data, biometric information
[0331] Processing: Apply sentiment analysis algorithms to recognize the user's emotional state.
[0332] Output: Emotion analysis results
[0333] Specific operation: The device sends the captured data to the emotion engine and obtains the analysis results.
[0334] Step 9: Adjust your feedback based on your emotions
[0335] 9. The server adjusts the feedback content based on the analysis results of the emotion engine.
[0336] Input: Sentiment analysis results
[0337] Processing: Adjusting the feedback to fit your emotional state.
[0338] Output: User-friendly feedback
[0339] Specific operation: The server adjusts the feedback content and displays it on the virtual reality display device via the terminal.
[0340] (Application example 2)
[0341] 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."
[0342] In current training systems, it is difficult for users to learn professional movements in real time and accurately reproduce them. Furthermore, to maintain users' motivation and continue effective training, appropriate feedback based on their emotional state is required. However, current systems have difficulty accurately analyzing a user's emotional state and providing feedback based on that analysis. Therefore, there is a need for a system that allows users to receive appropriate advice based on their emotions, enabling them to train effectively while maintaining their motivation.
[0343] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0344] In this invention, the server includes means for collecting game data, means for analyzing the collected game data to extract information on each player's hitting trajectory, positioning, and tactics, means for generating an optimal practice scenario for the user based on the extracted information, means for acquiring user input data and transmitting it to the server in real time, means for generating a game simulation based on the user's movements, means for displaying the generated simulation on virtual reality goggles, means for analyzing the user's performance and providing feedback, an emotion engine for capturing the user's facial expressions, voice, and biological information and analyzing the user's emotional state, and means for adjusting the feedback content based on the analysis results of the emotion engine and providing appropriate advice. This allows the user to learn the movements of professional players in real time and receive appropriate feedback according to their emotional state, thereby enabling them to train effectively while maintaining their motivation.
[0345] "Game Data" means data containing information about an athlete's game, including game footage, player movements, strike trajectories, positioning, tactics, etc.
[0346] The "analysis means" is a means for analyzing the collected match data and extracting information such as each player's movements, ball trajectory, positioning, tactics, etc.
[0347] A "practice scenario" is a training plan customized based on the user's skill level and practice data.
[0348] "Input data" refers to data such as actions and performance entered by the user, and is sent to the server in real time.
[0349] "Game Simulation" allows users to practice in virtual reality in a virtual game environment that is generated based on the user's movements.
[0350] "Virtual reality goggles" are devices worn by users to visually experience a virtual environment.
[0351] "Feedback" is information or messages that evaluate a user's performance and provide suggestions or advice for improvement.
[0352] The "emotion engine" is software that analyzes the user's facial expressions, voice, and biometric information to recognize their emotional state.
[0353] "Appropriate advice" is messages of improvement and motivation provided based on the user's performance and emotional state.
[0354] This invention relates to a system that allows users to learn professional fitness instruction in real time and train effectively. Based on the following aspects, we will specifically explain data collection and analysis, creation of training scenarios, real-time acquisition and analysis of user movements, simulation and feedback using virtual reality, and implementation of an emotion engine.
[0355] First, the server collects training data from professional fitness coaches from external sources. This includes training footage, instructional content, and movement data. The collected data is analyzed using video analysis algorithms (such as OpenCV or dlib) to recognize the coach's movements for each frame and extract detailed information such as form, speed, and position. The analysis results are stored in a database.
[0356] The server uses this analysis data to build a learning model using a generative AI model (such as TensorFlow) to model a professional coaching style. Based on the user's past training data, the server generates a personalized training scenario, including specific exercises to practice next and fitness tips.
[0357] The device performs initial calibration of the sensors used by the user to obtain accurate position data, captures the user's movements in real time, and transmits the data to a server, which then displays the simulated data on the VR goggles (e.g., Oculus Rift or HTC Vive).
[0358] The user wears VR goggles and performs exercises in a virtual reality environment under the guidance of a fitness coach, such as training the correct form for plank exercises or squats. The user's movements are captured by sensors and the data is sent to a server in real time.
[0359] The server analyzes the user's performance and compares it with the movements of a professional coach. Detailed evaluations are made of form accuracy, speed, position, and other factors, and feedback is generated. This feedback is displayed on the VR goggles via the device, providing the user with areas for improvement and appropriate advice.
[0360] Furthermore, the emotion engine captures and analyzes the user's facial expressions, voice, and biometric information. Based on this information, the emotion engine recognizes the user's emotional state (e.g., impatience or anxiety) and sends it to the server. The server then adjusts the feedback content based on the emotion engine's analysis and generates appropriate messages to maintain the user's motivation. For example, the message might be, "Relax and try again" or "You're doing well, keep going."
[0361] Specific examples
[0362] For example, consider a scenario in which a user is learning a plank exercise from a fitness coach.
[0363] The server collects training footage of fitness coaches from an extensive database and identifies the correct plank form from the footage.
[0364] The server analyzes the collected footage and extracts the coach's movements and form.
[0365] The server selects a plank exercise practice scenario based on the user's past training data.
[0366] The device will accurately record the user's movements and complete the calibration.
[0367] The user puts on VR goggles and performs planks in a virtual reality environment following the coach's instructions.
[0368] The device captures the user's facial expressions, voice, and biometric information and sends it to the server.
[0369] The emotion engine analyzes this data and recognizes that the user is feeling impatient.
[0370] The server generates feedback based on the user's emotional state and displays it on the VR goggles via the device, saying, "Relax and try again."
[0371] Example prompt sentence:
[0372] "I want to learn plank exercises from a fitness coach and get feedback to help me maintain proper form. I also want emotional analysis based on my heart rate and facial expressions."
[0373] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0374] Step 1:
[0375] Match data collection
[0376] Input: Training footage and instructional content of professional fitness coaches from an external data source.
[0377] Output: The raw training data.
[0378] Specific operation: The server collects training footage, movement data, and instructional content of professional fitness coaches from external data sources (e.g., fitness community APIs) and stores them in a database.
[0379] Step 2:
[0380] Data analysis
[0381] Input: Unparsed training data.
[0382] Output: Analysis results for each frame (details on form, speed, position, etc.).
[0383] Specific operation: The server analyzes the collected training footage using video analysis algorithms such as OpenCV and dlib to recognize the coach's movements for each frame. It also extracts detailed information such as form, speed, and position and records it in a database.
[0384] Step 3:
[0385] Building a learning model
[0386] Input: Training data with analysis results.
[0387] Output: A learning model that models a professional coaching style.
[0388] Specific operation: The server uses machine learning algorithms such as TensorFlow to build a learning model based on the analyzed data and models the coaching style of the professional. This creates a model that can predict the coach's teaching methods and movements in specific situations.
[0389] Step 4:
[0390] Generating practice scenarios
[0391] Input: Learning model, user's past training data.
[0392] Output: The optimal practice scenario for the user.
[0393] Specific Movements: The server combines the learning model with the user's past training data to generate personalized practice scenarios, including, for example, proper form for a plank exercise and specific exercise content.
[0394] Step 5:
[0395] Setting up the VR environment
[0396] Input: User sensor data.
[0397] Output: Initial calibrated sensor data.
[0398] What happens: The device initializes the sensors you use and calibrates them to obtain accurate location data. This configuration allows the device to accurately capture your movements.
[0399] Step 6:
[0400] Actual training
[0401] Input: Practice scenario, user's real-time behavior data.
[0402] Output: User behavior data during training.
[0403] Specific Action: The user wears VR goggles and performs exercises in a virtual reality environment under the guidance of a fitness coach, such as practicing the correct form for plank exercises or squats. The device also captures the user's movements and transmits the data to a server in real time.
[0404] Step 7:
[0405] Providing Feedback
[0406] Input: User performance data.
[0407] Output: Feedback and advice.
[0408] Specific Actions: The server analyzes the user's performance and compares it with the movements of a professional coach. Specifically, it evaluates the accuracy of the form, speed, position, etc. in detail and generates feedback. This feedback is displayed on the VR goggles via the device, providing the user with areas for improvement and appropriate advice.
[0409] Step 8:
[0410] Emotion engine integration
[0411] Input: User's facial, voice and biometric information.
[0412] Output: Analysis of the user's emotional state and tailored feedback.
[0413] Specific operation: The device captures the user's facial expressions, voice, and biometric information and sends them to the emotion engine. The emotion engine analyzes this information and recognizes the user's emotional state (e.g., impatience or anxiety). The server adjusts the feedback content based on the emotion engine's analysis results and generates appropriate messages to maintain the user's motivation.
[0414] 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.
[0415] 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.
[0416] 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.
[0417] [Second embodiment]
[0418] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0419] 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.
[0420] 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).
[0421] 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.
[0422] 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.
[0423] 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).
[0424] 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.
[0425] 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.
[0426] 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.
[0427] 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.
[0428] 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.
[0429] 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."
[0430] The present invention relates to a system that allows users to learn professional gameplay in real time and effectively train. Based on the following aspects, we will specifically explain the system that collects and analyzes game data, generates practice scenarios, acquires and analyzes user movements in real time, and provides simulation and feedback using virtual reality.
[0431] Program processing
[0432] 1. Data Collection:
[0433] The server collects match data of professional tennis players from external sources, including match footage, player movement data, ball trajectory data, and positioning data.
[0434] 2. Data Analysis:
[0435] The server applies video analysis algorithms to analyze the collected game footage, recognizing player movements, positioning, and ball trajectory. Specifically, it identifies the player's position for each frame and tracks the ball's trajectory.
[0436] This allows players' characteristic movements and tactical patterns to be extracted and recorded in a database.
[0437] 3. Building the learning model:
[0438] The server applies machine learning algorithms to the analyzed data to model the course of a match, specifically creating a model that predicts the actions of professional players in specific situations.
[0439] This allows the user to generate practice scenarios in a format that is easy for them to learn.
[0440] 4. Generating practice scenarios:
[0441] The server generates personalized practice scenarios based on the user's practice data and skill level, including practice content based on specific situations during a match (e.g., break points, service games, etc.).
[0442] 5. Setting up the VR environment:
[0443] The device performs an initial calibration of the sensors and rackets used by the user to obtain accurate position data.
[0444] The device transmits the user's captured movements to a server in real time, and the simulation data from the server is displayed on the VR goggles.
[0445] 6. Practical exercises:
[0446] Users put on VR goggles and practice swinging a racket in a virtual reality environment, trying out the same movements as professional players and receiving real-time feedback.
[0447] The device uses sensors to capture the user's movements and transmits the data to a server in real time.
[0448] 7. Feedback and Improvement:
[0449] The server analyzes the user's movements and compares them with those of professional players, specifically evaluating the ball's angle, speed, positioning, and other factors.
[0450] The device displays feedback data from the server on the VR goggles, allowing users to see the results and understand areas for improvement.
[0451] Specific examples
[0452] For example, consider a scenario in which a user is learning how a professional tennis player plays a match.
[0453] 1. The server collects match data from well-known players and identifies long rallies and important points.
[0454] 2. The server analyzes the data and extracts player movements, positioning, and in-game strategies.
[0455] 3. The server selects a specific scene (e.g., a tactic for a return game) to be practiced next based on User B's past practice data.
[0456] 4. The device accurately records User B's racket movements and completes the calibration.
[0457] 5. The user puts on the VR goggles and swings the racket in a virtual reality environment, mimicking the movements of a professional, for example, practicing the transition from a serve return to net play.
[0458] 6. The server analyzes User B's movements and provides specific feedback (e.g., "Your weight is too far back when you return").
[0459] 7. The device displays the feedback on the VR goggles, allowing User B to practice again while checking areas for improvement in real time.
[0460] In this way, the present invention provides an effective means for learning how a professional plays a game and for practical training in situational judgment and strategy during a game.
[0461] The processing flow will be explained below.
[0462] Step 1:
[0463] The server collects match data of professional tennis players from external sources, including match footage, player movement data, ball trajectory data, and positioning data.
[0464] Step 2:
[0465] The server applies video analysis algorithms to analyze the collected game footage, recognizing player movements, positioning, and ball trajectory. Specifically, it identifies the player's position for each frame and tracks the ball's trajectory.
[0466] Step 3:
[0467] The server applies machine learning algorithms to the analyzed data to model the course of a match, specifically creating a model that predicts the actions of professional players in specific situations.
[0468] Step 4:
[0469] The server generates personalized training scenarios based on the user's training data and skill level, including training content based on specific situations during a match.
[0470] Step 5:
[0471] The device performs an initial calibration of the sensors and rackets used by the user to obtain accurate position data.
[0472] Step 6:
[0473] The device transmits the user's captured movements to the server in real time, and the simulation data from the server is displayed on the VR goggles.
[0474] Step 7:
[0475] Users put on VR goggles and practice swinging a racket in a virtual reality environment, trying out the same movements as professional players and receiving real-time feedback.
[0476] Step 8:
[0477] The device uses sensors to capture the user's movements and transmits the data to a server in real time.
[0478] Step 9:
[0479] The server analyzes the user's movements and compares them with those of professional players, specifically evaluating the ball's angle, speed, positioning, and other factors.
[0480] Step 10:
[0481] The device displays feedback data from the server on the VR goggles, allowing users to see the results and understand areas for improvement.
[0482] Example 1
[0483] 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."
[0484] Conventional training systems using match data make it difficult for users to learn match progress in real time and train effectively. Furthermore, there is a lack of methods for generating practice scenarios tailored to individual users. This often results in users being unable to train according to their own skills and weaknesses, slowing their progress. Furthermore, the lack of real-time feedback makes it difficult for users to immediately understand areas for improvement in their movements and tactics.
[0485] 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.
[0486] In this invention, the server includes a means for collecting game data, a means for analyzing the collected game data to extract information on each player's ball trajectory, positioning, and tactics, and a means for generating a practice scenario optimized for the user based on the extracted information. This allows the user to study the game data in real time and train efficiently with a practice scenario customized based on their individual skill level and practice data. Furthermore, by including a means for measuring the user's movements in real time and transmitting the results to the server, immediate feedback is provided, allowing the user to quickly understand areas for improvement in their movements and tactics.
[0487] "Match data" includes all information related to a professional tennis player's match, specifically including match footage, player movement data, ball trajectory data, positioning data, and the like.
[0488] "Means for collecting" refers to the methods and devices for obtaining match data from external sources and storing it on a server.
[0489] "Means for analyzing" refers to a method and device for processing collected match data and extracting necessary information (player movements, ball trajectory, positioning, tactical patterns).
[0490] "Means for generating practice scenarios" refers to a method and system for creating individually customized practice content based on the user's skill level and past practice data.
[0491] "Means for obtaining user input data" refers to sensors or devices for reading the operations and actions that users perform on the system.
[0492] "Means for transmitting to a server in real time" refers to communication means and devices for instantly transmitting data acquired from a user to a server.
[0493] "Means for generating a game simulation" refers to a method and system for constructing a virtual game environment based on analyzed data and user movements.
[0494] "Means for displaying in virtual reality goggles" refers to methods and apparatus that allow a user to visually experience the generated simulation in a VR environment.
[0495] "Means for providing feedback" refers to methods and systems for analyzing a user's performance and informing the user of comparison results, areas for improvement, and advice.
[0496] "Means for customization" refers to methods and systems for tailoring and optimizing practice scenarios based on a user's practice data and skill level.
[0497] "Means for measuring movements in real time" refers to a method and device that uses sensors or the like to instantly measure a user's movements and collect them as data.
[0498] "Movement transmitting means" refers to communication means and devices for transferring user movement data measured in real time to a server.
[0499] This invention relates to a system that allows users to learn professional gameplay in real time and effectively train. The system mainly consists of three main components: a server, a terminal, and a user.
[0500] server
[0501] The server first collects match data from professional tennis players. This data includes match footage, player movement data, ball trajectory data, and positioning data. During the data collection process, API requests are sent to the official ATP and WTA databases to obtain the necessary data. The collected data is then stored in a local database.
[0502] Next, the collected game footage is analyzed. Specifically, using the OpenCV library, a video analysis algorithm is applied to identify player movements, positioning, and ball trajectory. A deep learning model is then used to detect the ball's trajectory. Based on the analyzed data, characteristic player movements and tactical patterns are extracted and recorded in a database.
[0503] Based on the analysis data, the server uses the TensorFlow library to build a machine learning model, which can predict the actions that professional players will take in specific situations. This model is then used to generate individually customized practice scenarios based on the user's practice data and skill level. For example, if a user is weak at backhand returns, the server will create a scenario that focuses on practicing that aspect.
[0504] Terminal
[0505] The device performs initial calibration of the sensors and racket to obtain accurate position data. The device then uses the Kinect sensor and motion capture system to calibrate the position information of the user's body and racket, completing the initial setup. After that, the sensor information continues to be sent to the server in real time.
[0506] Next, the terminal displays the simulation data from the server on the VR goggles. This can be done using a VR device such as Oculus Rift. The user puts on the VR goggles and practices swinging the racket in a virtual reality environment. The user can practice by imitating the movements of professional players and receive feedback in real time.
[0507] User
[0508] Users wear VR goggles and practice in a virtual reality environment. For example, they can experience a simulated transition from a serve return to a net play performed by a professional player, imitating their movements. During the actual practice, the user's movements are captured via a Kinect sensor and a motion capture system.
[0509] The real-time collected movement data is sent to a server, which analyzes it and compares it with the data of professional players. The server generates feedback based on the results and displays it on the VR goggles via the device. This allows users to receive real-time advice on how to improve their movements and tactics.
[0510] Specific examples
[0511] For example, if a user wants to learn how a professional tennis player plays a game, the server collects match data from famous players and identifies long rallies and important points. The server analyzes the data to extract players' movements, positioning, and in-match strategies. Based on the user's past practice data, it selects the specific scene to practice next (e.g., return game tactics). The device accurately records the user's racket movements and completes calibration. The user puts on VR goggles and swings the racket in a virtual reality environment, imitating the movements of a professional. The server analyzes the user's movements and provides feedback. The device displays the feedback in real time, allowing the user to review and practice again.
[0512] Examples of prompt statements
[0513] "Can you give me an example of Python code that analyzes video footage of professional tennis players and builds a model that learns their tactics and player movements during a match?"
[0514] Thus, the present invention provides an effective means for learning how professional players play a game and for practical training in situational judgment and strategy during a game.
[0515] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0516] Step 1:
[0517] Match data collection
[0518] The server collects professional tennis players' match data from external sources. Specifically, it sends API requests to the official ATP and WTA databases to retrieve past match data. The input data are API request parameters, and the output data are the captured match footage, player movement data, ball trajectory data, and positioning data. This data is stored in a local database.
[0519] Step 2:
[0520] Game footage analysis
[0521] The server applies a video analysis algorithm to analyze the collected game footage. Specifically, it uses the OpenCV library to identify the player's position for each frame and a deep learning model to detect the ball's trajectory. The input data is the collected game footage, and the output data is data on player movements, positioning, and ball trajectory. This allows players' characteristic movements and tactical patterns to be extracted and recorded in a database.
[0522] Step 3:
[0523] Extracting player movements and tactics
[0524] The server extracts the players' characteristic movements and tactical patterns based on the analyzed video data. For example, it uses a clustering algorithm to classify the players' positioning during a rally and the course of the ball. The input data is the analyzed video data, and the output data is the extracted characteristic movements and tactical patterns. This data is recorded in a database.
[0525] Step 4:
[0526] Building a machine learning model
[0527] The server applies a machine learning algorithm to the extracted data to model the progress of the game. Specifically, it uses the TensorFlow library to generate a model for predicting the behavior of professional players. The input data is the extracted feature data, and the output data is the model for predicting the behavior of professional players. This makes it possible to predict the behavior of professional players under specific circumstances.
[0528] Step 5:
[0529] Generating individual practice scenarios
[0530] The server generates an individually customized practice scenario based on the user's practice data and skill level. For example, if the user is not good at backhand returns, it creates a practice scenario that corresponds to that situation. The input data is the user's practice data and skill level, and the output data is the customized practice scenario.
[0531] Step 6:
[0532] Setting up the VR environment
[0533] The device performs initial calibration of the sensors and racket used by the user to obtain accurate position data. Specifically, it calibrates the position information of the user's body and racket using a Kinect sensor and motion capture system. The input data is the user's initial position information, and the output data is the calibrated position data.
[0534] Step 7:
[0535] Sending real-time data
[0536] The device captures the user's movements in real time and sends the data to the server. The input data is the user's movement data, and the output data is the real-time movement data sent to the server, which includes sensor information and user behavior data.
[0537] Step 8:
[0538] Generate and view simulations
[0539] The server generates a match simulation based on the user's movements and displays the generated simulation on the device's VR goggles. The input data is the user's movement data transmitted in real time, and the output data is the simulation data displayed on the VR goggles.
[0540] Step 9:
[0541] Providing Feedback
[0542] The server analyzes the user's performance and provides feedback by comparing it with data from professional players. Specifically, it evaluates the ball's angle, speed, positioning, etc. in detail and generates areas for improvement and advice. The input data is the user's performance data, and the output data is feedback data. The device displays this feedback on the VR goggles, allowing the user to check it in real time.
[0543] (Application example 1)
[0544] 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."
[0545] In conventional driving skill improvement and autonomous vehicle testing, it has been difficult to efficiently learn and reproduce the advanced driving skills and emergency response capabilities of professional drivers. Furthermore, there have been limited systems that provide real-time feedback to help users improve their driving skills. This has hindered the acquisition of driving skills and the improvement of autonomous driving systems.
[0546] 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.
[0547] In this invention, the server includes a means for collecting driving data from professional drivers, a means for analyzing the collected driving data and extracting information on each driver's steering, braking, and accelerator operations and vehicle behavior, and a means for generating an optimal driving training scenario for the user based on the extracted information. This allows users to learn professional driver driving techniques and emergency response methods in real time and repeatedly practice them in a virtual reality environment.
[0548] "Match data" refers to information relating to the movements of players in sports competitions, the trajectory of the ball, positioning, tactics, and so on.
[0549] A "professional driver" is a driver who drives a vehicle professionally and has advanced driving skills and experience.
[0550] "Driving data" refers to a series of information related to vehicle driving, and specifically includes data on steering operation, braking operation, accelerator operation, vehicle behavior, and the like.
[0551] "Virtual reality goggles" are a device that allows users to experience a virtual reality environment and is a head-mounted display that provides visual and auditory information.
[0552] "Data analysis" is the act of processing collected data using analytical techniques to find necessary patterns and relationships.
[0553] A "driving training scenario" is a series of exercises and training content designed to improve driving skills and is customized to suit the user's skills and requirements.
[0554] "Real-time feedback" refers to evaluations and advice provided instantly in response to a user's actions and reactions.
[0555] "Steering operation" refers to the operation of the steering wheel to control the direction of travel of the vehicle.
[0556] "Brake operation" means the operation of the brake mechanism to slow or stop the vehicle.
[0557] "Accelerator operation" refers to operation of the accelerator pedal to increase the speed of the vehicle.
[0558] "Vehicle behavior" refers to the movement and behavior of a vehicle while driving, and specifically includes acceleration, deceleration, turning, stability, etc.
[0559] A "virtual reality environment" is a computer-generated, three-dimensional virtual world in which a user is visually and auditorily immersed.
[0560] The system that realizes this application example is an advanced virtual reality system for learning and efficiently training driving skills of professional drivers. The system includes the following means:
[0561] The server collects driving data from professional drivers, including game footage, steering, braking, and acceleration data, and vehicle behavior data. To analyze the collected driving data, the server uses a video analysis algorithm (specifically, OpenCV). Through video analysis, the server extracts the professional drivers' characteristic operations and driving patterns and records them in a database.
[0562] The server then builds machine learning models (specifically TensorFlow and Scikit-learn) based on the extracted data to generate driving scenarios that are tailored to each user and include training content for emergency responses and challenging driving situations (e.g., merging onto a highway, driving in bad weather).
[0563] The device includes virtual reality goggles and a driving simulator. Users wear the virtual reality goggles and operate the driving simulator to train. Operation data from the driving simulator is sent to a server in real time. The server analyzes the user's driving data and compares it with that of professional drivers. The analysis results are fed back to the user, providing them with suggestions for improvement and appropriate advice.
[0564] For program processing, a high-performance server (such as AWS EC2 or Google Cloud Compute Engine) is used. The video analysis algorithm OpenCV is applied for data analysis, and TensorFlow and Scikit-learn are used to build machine learning models. MySQL and MongoDB are used for databases, and Unity and Unreal Engine are used to display feedback.
[0565] As a concrete example, consider a scenario in which a user learns emergency braking operations from a professional driver. The server collects and analyzes emergency braking operation data. It then records emergency braking patterns in a database. The user puts on virtual reality goggles and uses a driving simulator to train in emergency braking operations. The server analyzes the user's operation data and compares it with the operations of the professional driver to provide feedback. The user receives the feedback and retrains to improve their driving skills.
[0566] An example prompt is:
[0567] "Collect and analyze data on emergency braking maneuvers performed by professional drivers on highways, and model their operation patterns using a machine learning model. Then, use that model to generate customized practice scenarios and create a program to train users in a VR environment."
[0568] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0569] Step 1:
[0570] The server collects driving data from professional drivers. The collected data includes driving footage, steering, braking, and acceleration operations, as well as vehicle behavior. This data is obtained from external sources and stored in a database. The input is the driving data of professional drivers, and the output is driving data organized for analysis.
[0571] Step 2:
[0572] The server applies a video analysis algorithm (specifically, OpenCV) to analyze the collected driving data. It identifies the driver's actions and vehicle movements for each frame and obtains detailed data on steering, braking, accelerating, and vehicle behavior. The input is the collected driving data, and the output is the analyzed specific actions and behavior data.
[0573] Step 3:
[0574] The server uses the analyzed data to build a machine learning model (specifically, TensorFlow or Scikit-learn). The model is used to predict the actions a professional driver will take in a specific driving situation. The input is the analyzed driving data, and the output is a machine learning model that predicts driving patterns.
[0575] Step 4:
[0576] The server generates driving training scenarios based on the user's driving data and skill level. The generated scenarios include training content for emergency response methods and difficult driving situations. The input is a machine learning model and the user's skill data, and the output is a customized driving training scenario.
[0577] Step 5:
[0578] The terminal performs initial calibration of the driving simulator used by the user, and performs settings to accurately acquire the user's operation data. The input is the calibration data of the driving simulator, and the output is the initially configured driving simulator.
[0579] Step 6:
[0580] The user wears virtual reality goggles and operates a driving simulator to train. The device transmits the user's operation data to the server in real time. The input is the user's operation data during training, and the output is the data transmitted to the server.
[0581] Step 7:
[0582] The server analyzes the user's operation data and compares it with that of professional drivers. It then makes a specific evaluation and generates appropriate advice and suggestions for improvement. The input is the user's operation data, and the output is the analysis results and feedback data.
[0583] Step 8:
[0584] The terminal displays the feedback data from the server on the virtual reality goggles. The user checks the feedback and understands the areas for improvement. The input is the feedback data from the server, and the output is the feedback displayed on the virtual reality goggles.
[0585] Through the above process, users can learn the driving techniques of professional drivers in real time and repeatedly practice in a virtual reality environment.
[0586] 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.
[0587] The present invention relates to a system that allows users to learn professional gameplay in real time and train effectively. Furthermore, by combining this system with an emotion engine, feedback can be provided based on the user's emotional state, allowing them to maintain motivation while practicing. Based on the following configuration, we will specifically explain the collection and analysis of game data, the generation of practice scenarios, the real-time acquisition and analysis of user movements, the simulation and feedback using virtual reality, and the implementation of the emotion engine.
[0588] Program processing
[0589] 1. Data Collection:
[0590] The server collects match data of professional tennis players from external sources, including match footage, player movement data, ball trajectory data, and positioning data.
[0591] 2. Data Analysis:
[0592] The server applies video analysis algorithms to analyze the collected game footage, recognizing player movements, positioning, and ball trajectory. Specifically, it identifies the player's position for each frame and tracks the ball's trajectory.
[0593] The analysis results are stored in a database, and detailed information about each point (e.g., ball angle, speed, position, etc.) is recorded.
[0594] 3. Building the learning model:
[0595] The server then applies machine learning algorithms to the analyzed data to model the course of a match, for example, creating a model that predicts the actions of a professional player in a given situation.
[0596] 4. Generating practice scenarios:
[0597] The server generates personalized training scenarios based on the user's training data and skill level, including training content based on specific situations during a match.
[0598] 5. Setting up the VR environment:
[0599] The device performs an initial calibration of the sensors and rackets used by the user to obtain accurate position data.
[0600] The device transmits the user's captured movements to a server in real time, and the simulation data from the server is displayed on the VR goggles.
[0601] 6. Practical exercises:
[0602] Users put on VR goggles and practice swinging a racket in a virtual reality environment, trying out the same movements as professional players and receiving real-time feedback.
[0603] The device uses sensors to capture the user's movements and transmits the data to a server in real time.
[0604] 7. Feedback and Improvement:
[0605] The server analyzes the user's movements and compares them with those of professional players, specifically evaluating the ball's angle, speed, positioning, and other factors.
[0606] The server generates feedback based on the user's performance and displays it on the VR goggles via the device.
[0607] 8. Emotion engine integration:
[0608] The terminal captures the user's facial expressions, voice, and biometric information and sends them to the emotion engine.
[0609] The emotion engine analyzes this information and recognizes the user's emotional state.
[0610] The server adjusts the feedback content based on the analysis results of the emotion engine and provides appropriate advice according to the user's emotions.
[0611] Specific examples
[0612] For example, consider a scenario in which a user is learning how a professional tennis player plays a match.
[0613] 1. The server collects match data from well-known players and identifies long rallies and important points.
[0614] 2. The server analyzes the data and extracts player movements, positioning, and in-game strategies.
[0615] 3. The server selects a specific scene (e.g., return game tactics) to practice next based on user C's past practice data.
[0616] 4. The device accurately records User C's racket movements and completes the calibration.
[0617] 5. The user puts on the VR goggles and swings the racket in a virtual reality environment, mimicking the movements of a professional, for example, practicing the transition from a serve return to net play.
[0618] 6. The device captures user C's facial expressions, voice, and biometric information and sends them to the server.
[0619] 7. The emotion engine analyzes the data and recognizes that User C is feeling impatient or anxious.
[0620] 8. The server generates feedback based on user C's emotional state (e.g., "Relax and try again") and displays it on the VR goggles via the terminal.
[0621] In this way, the present invention provides an effective means for learning how professional players play games and for practical training in situational judgment and strategy during a game, and furthermore, it can utilize an emotion engine to maintain the user's motivation.
[0622] The processing flow will be explained below.
[0623] Step 1:
[0624] The server collects match data of professional tennis players, including match footage, player movement data, ball trajectory data, and positioning data, from external sources.
[0625] Step 2:
[0626] The server applies video analysis algorithms to analyze the collected game footage, identifying the player's position and tracking the ball's trajectory for each frame to recognize the player's movements, positioning, and ball trajectory.
[0627] Step 3:
[0628] The server then applies machine learning algorithms to model the course of a match, creating a model that predicts how a professional player will act in a given situation.
[0629] Step 4:
[0630] The server generates personalized training scenarios based on the user's training data and skill level, including training content tailored to specific situations during a match.
[0631] Step 5:
[0632] The device will perform an initial calibration of the sensors and rackets used by the user to obtain accurate position data, and after calibration is complete, it will be able to accurately track the user's movements.
[0633] Step 6:
[0634] The device transmits the user's captured movements to the server in real time, and simultaneously displays the simulation data from the server on the VR goggles.
[0635] Step 7:
[0636] Users put on VR goggles and practice swinging a racket in a virtual reality environment, trying out the same movements as professional players and receiving real-time feedback.
[0637] Step 8:
[0638] The device uses sensors to capture the user's movements and transmits the data in real time to a server, including detailed data such as the user's ball-hitting angle, speed, and positioning.
[0639] Step 9:
[0640] The device captures the user's facial expressions, voice, and biometric information using devices such as cameras, microphones, and heart rate sensors to gather data to recognize the user's emotional state.
[0641] Step 10:
[0642] The emotion engine analyzes collected facial expressions, voice, and biometric information to recognize the user's emotional state, for example, determining whether the user is feeling anxious or impatient.
[0643] Step 11:
[0644] The server adjusts the feedback content based on the analysis results of the emotion engine. For example, if the user is feeling impatient, it generates advice that takes into account the user's emotions, such as "Relax and try again."
[0645] Step 12:
[0646] The device displays the feedback data from the server on the VR goggles, allowing the user to see the results and understand areas for improvement. Appropriate feedback based on emotions is provided to maintain the user's motivation.
[0647] Example 2
[0648] 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."
[0649] Conventional training systems do not adequately provide users with the means to effectively learn how professional players play. Furthermore, they do not provide feedback that takes into account the user's emotional state, making it difficult to maintain motivation. The present invention aims to solve these problems by providing a system that allows users to learn how professional players play in real time and train effectively.
[0650] The identification processing 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 collecting game data, means for analyzing the collected game data and extracting information on the ball trajectory, positioning, and tactics of each player, means for generating an optimal practice scenario for the user based on the extracted information, means for acquiring user input data and transmitting it to the server in real time, means for generating a game simulation based on the user's movements, means for displaying the generated simulation on a virtual reality display device, means for analyzing the user's performance and providing feedback, and means for analyzing the user's emotional state and adjusting the feedback. This allows the user to learn how professional players play in real time and train effectively, and also provides feedback according to the user's emotional state, allowing the user to practice while maintaining motivation.
[0651] "Match data" refers to video footage of professional tennis players' matches, player movement data, ball trajectory data, positioning data, and other tactical information.
[0652] "Collection Method" means any combination of hardware and software used to automatically obtain and store Match Data from external sources.
[0653] "Means of analysis" refers to technology that applies image analysis algorithms to collected match data to extract information such as each player's positioning and the trajectory of the ball.
[0654] "Means for generating a practice scenario" refers to an algorithm and processing device for creating optimal practice content for the user based on the information obtained through analysis.
[0655] "Means for acquiring input data and transmitting it in real time" refers to devices and technologies for capturing user movements with sensors and transmitting that data to a server in real time.
[0656] "Means for generating a match simulation" refers to a processing device and algorithms for generating a match simulation in a virtual reality environment based on user movement data.
[0657] "Virtual reality display device" refers to a device such as a head-mounted display or goggles that allows a user to visually experience a simulation in a virtual reality environment.
[0658] "Means for analyzing performance and providing feedback" refers to processing devices and algorithms for analyzing the user's movement data, comparing it with professional athletes, and providing feedback of the results to the user.
[0659] "Means for analyzing emotional state and adjusting feedback" refers to technology and devices for analyzing a user's emotional state from facial expressions, voice, biometric information, etc., and adjusting the feedback content based on that.
[0660] The present invention relates to a system that allows users to learn professional gameplay in real time and train effectively. This system incorporates an emotion engine that provides feedback according to the user's emotional state, allowing the user to maintain motivation while practicing. Specific embodiments are described below.
[0661] First, the server collects match data from professional tennis players. Match data includes match footage, player movement data, ball trajectory data, and positioning data. This data is automatically obtained from external sources and stored in cloud storage (e.g., AWS S3). Web scraping technology (e.g., BeautifulSoup) is used to collect the data.
[0662] The server then applies a video analysis algorithm (e.g., OpenCV) to analyze the collected game footage to recognize player movements, positioning, and ball trajectory. The analysis is performed by identifying the player's position for each frame and tracking the ball's trajectory. The analysis results are stored in a database (e.g., MySQL), recording details such as ball angle, speed, and location.
[0663] The server then applies machine learning algorithms (e.g., TensorFlow) to the analyzed data to create a model that predicts the behavior of professional players. The model learns the players' movement patterns and predicts their reactions to specific situations.
[0664] The server then generates a personalized practice scenario based on the user's practice data and skill level, including analyzing the user's past practice data to identify areas for improvement.
[0665] The device performs an initial calibration of the sensors and racket used by the user and obtains accurate position data. The user completes the calibration by performing a predetermined movement using a sensor (e.g., Kinect) connected to the device. The device transmits the captured movement to a server in real time, and the simulation data from the server is displayed on a virtual reality display device (e.g., Oculus Rift).
[0666] The user wears a virtual reality display device and practices swinging a racket in a virtual reality environment. They try out the same movements as professional players and receive real-time feedback. The device captures the user's movements with sensors and sends the data to a server in real time.
[0667] The server analyzes the user's movements and compares them with those of professional players. It performs detailed evaluations of the ball's angle, speed, positioning, etc., and generates feedback that is displayed on a virtual reality display via the device. The device also captures the user's facial expressions, voice, and biometric information, and sends it to an emotion engine (e.g., IBM Watson Tone Analyzer). The emotion engine analyzes this information and recognizes the user's emotional state.
[0668] Based on the analysis results of the emotion engine, the server adjusts the feedback content and provides appropriate advice according to the user's emotions.
[0669] To illustrate, consider the following scenario:
[0670] 1. The server collects match data from professional tennis players and identifies long rallies and important points from the data.
[0671] 2. The server analyzes the data and extracts player movements, positioning, and in-game strategies.
[0672] 3. The server selects a specific scene (e.g., return game tactics) to practice next based on user C's past practice data.
[0673] 4. The device accurately records User C's racket movements and completes the calibration.
[0674] 5. The user wears a virtual reality display device and swings a racket in a virtual reality environment, mimicking the movements of a professional, for example, practicing the transition from a serve return to a net play.
[0675] 6. The device captures user C's facial expressions, voice, and biometric information and sends them to the server.
[0676] 7. The emotion engine analyzes this data and recognizes that User C is feeling impatient or anxious.
[0677] 8. The server generates feedback based on the emotional state of user C (e.g., "Relax and try again") and displays it on the virtual reality display device via the terminal.
[0678] An example of a prompt sentence to be input to the generative AI model is shown below.
[0679] Create a VR simulation that recreates specific scenes from a professional tennis match and allows users to practice in those scenes. Generate practice scenarios tailored to the user's skill level and provide real-time feedback. Also, analyze the user's emotional state and provide motivational advice based on the results.
[0680] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0681] Program processing steps
[0682] Step 1: Gathering match data
[0683] 1. The server automatically retrieves professional tennis player match data from external sources.
[0684] Input: Match URL or API endpoint
[0685] Processing: Gather game footage and statistics using web scraping technology (e.g. BeautifulSoup).
[0686] Output: Collected match data (video files, movement data, ball trajectory data, positioning data)
[0687] Specific operation: The server downloads the video file from the specified URL and saves it in AWS S3 cloud storage.
[0688] Step 2: Analyzing match data
[0689] 2. The server applies image analysis algorithms (e.g., OpenCV) to analyze the collected game footage.
[0690] Input: Collected game footage
[0691] Processing: Track player location and ball trajectory for each frame to recognize ball launch angle, speed, positioning, etc.
[0692] Output: Detailed match data as analysis results (stored in a database)
[0693] Specific operation: The server analyzes the video file frame by frame and writes the results to a MySQL database.
[0694] Step 3: Building a learning model
[0695] 3. The server applies a machine learning algorithm (e.g., TensorFlow) to the analyzed data to create a model.
[0696] Input: Match data for analysis results
[0697] Processing: Using machine learning algorithms to train models that predict how players will behave in specific situations.
[0698] Output: Behavioral prediction model
[0699] What happens: The server executes the machine learning task and saves the training results as a model file.
[0700] Step 4: Generate a training scenario
[0701] 4. The server generates an individually customized practice scenario based on the user's practice data and skill level.
[0702] Input: User's past practice data and skill assessment
[0703] Processing: Algorithms analyze user data, identify needed improvements, and generate practice scenarios.
[0704] Output: A customized training scenario
[0705] Specific operation: The server retrieves the user's data through a query and compiles the generated scenario in HTML format.
[0706] Step 5: Setting up the VR environment
[0707] 5. The device performs an initial calibration of the sensors and rackets used by the user.
[0708] Input: Sensor capture data and a series of user actions
[0709] Processing: The calibration algorithm corrects the sensor position and performs the initial setup.
[0710] Output: Accurate position data after calibration is complete
[0711] Specific operation: The device software acquires data from the sensor and prompts the user to perform calibration.
[0712] Step 6: Practice
[0713] 6. The user wears the virtual reality display device and practices swinging a racket in the virtual reality environment.
[0714] Input: User movement, virtual reality environment settings
[0715] Processing: User movements are captured in real time and combined with simulation data.
[0716] Output: User movement data in the VR environment
[0717] Specific actions: The user wears the virtual reality display device and performs an action, which is captured by the device's sensors.
[0718] Step 7: Feedback and Improvement
[0719] 7. The server analyzes the user's movements and compares them with those of professional players.
[0720] Input: User behavior data
[0721] Processing: Analysis algorithms evaluate the ball's angle, speed, positioning, etc. and compare it with professional data.
[0722] Output: Improvements and Feedback
[0723] Specific operation: The server generates feedback content based on the analysis results and sends it to the device in real time.
[0724] Step 8: Integrating the Emotion Engine
[0725] 8. The device captures the user's facial expressions, voice, and biometric information and sends them to the emotion engine.
[0726] Input: User's facial expression data, voice data, biometric information
[0727] Processing: Apply sentiment analysis algorithms to recognize the user's emotional state.
[0728] Output: Emotion analysis results
[0729] Specific operation: The device sends the captured data to the emotion engine and obtains the analysis results.
[0730] Step 9: Adjust your feedback based on your emotions
[0731] 9. The server adjusts the feedback content based on the analysis results of the emotion engine.
[0732] Input: Sentiment analysis results
[0733] Processing: Adjusting the feedback to fit your emotional state.
[0734] Output: User-friendly feedback
[0735] Specific operation: The server adjusts the feedback content and displays it on the virtual reality display device via the terminal.
[0736] (Application example 2)
[0737] 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."
[0738] In current training systems, it is difficult for users to learn professional movements in real time and accurately reproduce them. Furthermore, to maintain users' motivation and continue effective training, appropriate feedback based on their emotional state is required. However, current systems have difficulty accurately analyzing a user's emotional state and providing feedback based on that analysis. Therefore, there is a need for a system that allows users to receive appropriate advice based on their emotions, enabling them to train effectively while maintaining their motivation.
[0739] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0740] In this invention, the server includes means for collecting game data, means for analyzing the collected game data to extract information on each player's hitting trajectory, positioning, and tactics, means for generating an optimal practice scenario for the user based on the extracted information, means for acquiring user input data and transmitting it to the server in real time, means for generating a game simulation based on the user's movements, means for displaying the generated simulation on virtual reality goggles, means for analyzing the user's performance and providing feedback, an emotion engine for capturing the user's facial expressions, voice, and biological information and analyzing the user's emotional state, and means for adjusting the feedback content based on the analysis results of the emotion engine and providing appropriate advice. This allows the user to learn the movements of professional players in real time and receive appropriate feedback according to their emotional state, thereby enabling them to train effectively while maintaining their motivation.
[0741] "Game Data" means data containing information about an athlete's game, including game footage, player movements, strike trajectories, positioning, tactics, etc.
[0742] The "analysis means" is a means for analyzing the collected match data and extracting information such as each player's movements, ball trajectory, positioning, tactics, etc.
[0743] A "practice scenario" is a training plan customized based on the user's skill level and practice data.
[0744] "Input data" refers to data such as actions and performance entered by the user, and is sent to the server in real time.
[0745] "Game Simulation" allows users to practice in virtual reality in a virtual game environment that is generated based on the user's movements.
[0746] "Virtual reality goggles" are devices worn by users to visually experience a virtual environment.
[0747] "Feedback" is information or messages that evaluate a user's performance and provide suggestions or advice for improvement.
[0748] The "emotion engine" is software that analyzes the user's facial expressions, voice, and biometric information to recognize their emotional state.
[0749] "Appropriate advice" is messages of improvement and motivation provided based on the user's performance and emotional state.
[0750] This invention relates to a system that allows users to learn professional fitness instruction in real time and train effectively. Based on the following aspects, we will specifically explain data collection and analysis, creation of training scenarios, real-time acquisition and analysis of user movements, simulation and feedback using virtual reality, and implementation of an emotion engine.
[0751] First, the server collects training data from professional fitness coaches from external sources. This includes training footage, instructional content, and movement data. The collected data is analyzed using video analysis algorithms (such as OpenCV or dlib) to recognize the coach's movements for each frame and extract detailed information such as form, speed, and position. The analysis results are stored in a database.
[0752] The server uses this analysis data to build a learning model using a generative AI model (such as TensorFlow) to model a professional coaching style. Based on the user's past training data, the server generates a personalized training scenario, including specific exercises to practice next and fitness tips.
[0753] The device performs initial calibration of the sensors used by the user to obtain accurate position data, captures the user's movements in real time, and transmits the data to a server, which then displays the simulated data on the VR goggles (e.g., Oculus Rift or HTC Vive).
[0754] The user wears VR goggles and performs exercises in a virtual reality environment under the guidance of a fitness coach, such as training the correct form for plank exercises or squats. The user's movements are captured by sensors and the data is sent to a server in real time.
[0755] The server analyzes the user's performance and compares it with the movements of a professional coach. Detailed evaluations are made of form accuracy, speed, position, and other factors, and feedback is generated. This feedback is displayed on the VR goggles via the device, providing the user with areas for improvement and appropriate advice.
[0756] Furthermore, the emotion engine captures and analyzes the user's facial expressions, voice, and biometric information. Based on this information, the emotion engine recognizes the user's emotional state (e.g., impatience or anxiety) and sends it to the server. The server then adjusts the feedback content based on the emotion engine's analysis and generates appropriate messages to maintain the user's motivation. For example, the message might be, "Relax and try again" or "You're doing well, keep going."
[0757] Specific examples
[0758] For example, consider a scenario in which a user is learning a plank exercise from a fitness coach.
[0759] The server collects training footage of fitness coaches from an extensive database and identifies the correct plank form from the footage.
[0760] The server analyzes the collected footage and extracts the coach's movements and form.
[0761] The server selects a plank exercise practice scenario based on the user's past training data.
[0762] The device will accurately record the user's movements and complete the calibration.
[0763] The user puts on VR goggles and performs planks in a virtual reality environment following the coach's instructions.
[0764] The device captures the user's facial expressions, voice, and biometric information and sends it to the server.
[0765] The emotion engine analyzes this data and recognizes that the user is feeling impatient.
[0766] The server generates feedback based on the user's emotional state and displays it on the VR goggles via the device, saying, "Relax and try again."
[0767] Example prompt sentence:
[0768] "I want to learn plank exercises from a fitness coach and get feedback to help me maintain proper form. I also want emotional analysis based on my heart rate and facial expressions."
[0769] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0770] Step 1:
[0771] Match data collection
[0772] Input: Training footage and instructional content of professional fitness coaches from an external data source.
[0773] Output: The raw training data.
[0774] Specific operation: The server collects training footage, movement data, and instructional content of professional fitness coaches from external data sources (e.g., fitness community APIs) and stores them in a database.
[0775] Step 2:
[0776] Data analysis
[0777] Input: Unparsed training data.
[0778] Output: Analysis results for each frame (details on form, speed, position, etc.).
[0779] Specific operation: The server analyzes the collected training footage using video analysis algorithms such as OpenCV and dlib to recognize the coach's movements for each frame. It also extracts detailed information such as form, speed, and position and records it in a database.
[0780] Step 3:
[0781] Building a learning model
[0782] Input: Training data with analysis results.
[0783] Output: A learning model that models a professional coaching style.
[0784] Specific operation: The server uses machine learning algorithms such as TensorFlow to build a learning model based on the analyzed data and models the coaching style of the professional. This creates a model that can predict the coach's teaching methods and movements in specific situations.
[0785] Step 4:
[0786] Generating practice scenarios
[0787] Input: Learning model, user's past training data.
[0788] Output: The optimal practice scenario for the user.
[0789] Specific Movements: The server combines the learning model with the user's past training data to generate personalized practice scenarios, including, for example, proper form for a plank exercise and specific exercise content.
[0790] Step 5:
[0791] Setting up the VR environment
[0792] Input: User sensor data.
[0793] Output: Initial calibrated sensor data.
[0794] What happens: The device initializes the sensors you use and calibrates them to obtain accurate location data. This configuration allows the device to accurately capture your movements.
[0795] Step 6:
[0796] Actual training
[0797] Input: Practice scenario, user's real-time behavior data.
[0798] Output: User behavior data during training.
[0799] Specific Action: The user wears VR goggles and performs exercises in a virtual reality environment under the guidance of a fitness coach, such as practicing the correct form for plank exercises or squats. The device also captures the user's movements and transmits the data to a server in real time.
[0800] Step 7:
[0801] Providing Feedback
[0802] Input: User performance data.
[0803] Output: Feedback and advice.
[0804] Specific Actions: The server analyzes the user's performance and compares it with the movements of a professional coach. Specifically, it evaluates the accuracy of the form, speed, position, etc. in detail and generates feedback. This feedback is displayed on the VR goggles via the device, providing the user with areas for improvement and appropriate advice.
[0805] Step 8:
[0806] Emotion engine integration
[0807] Input: User's facial, voice and biometric information.
[0808] Output: Analysis of the user's emotional state and tailored feedback.
[0809] Specific operation: The device captures the user's facial expressions, voice, and biometric information and sends them to the emotion engine. The emotion engine analyzes this information and recognizes the user's emotional state (e.g., impatience or anxiety). The server adjusts the feedback content based on the emotion engine's analysis results and generates appropriate messages to maintain the user's motivation.
[0810] 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.
[0811] 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.
[0812] 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.
[0813] [Third embodiment]
[0814] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0815] 5, the data processing system 310 includes the data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.
[0816] 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).
[0817] 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.
[0818] 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.
[0819] 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).
[0820] 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.
[0821] 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.
[0822] 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.
[0823] 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.
[0824] 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.
[0825] 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."
[0826] The present invention relates to a system that allows users to learn professional gameplay in real time and effectively train. Based on the following aspects, we will specifically explain the system that collects and analyzes game data, generates practice scenarios, acquires and analyzes user movements in real time, and provides simulation and feedback using virtual reality.
[0827] Program processing
[0828] 1. Data Collection:
[0829] The server collects match data of professional tennis players from external sources, including match footage, player movement data, ball trajectory data, and positioning data.
[0830] 2. Data Analysis:
[0831] The server applies video analysis algorithms to analyze the collected game footage, recognizing player movements, positioning, and ball trajectory. Specifically, it identifies the player's position for each frame and tracks the ball's trajectory.
[0832] This allows players' characteristic movements and tactical patterns to be extracted and recorded in a database.
[0833] 3. Building the learning model:
[0834] The server applies machine learning algorithms to the analyzed data to model the course of a match, specifically creating a model that predicts the actions of professional players in specific situations.
[0835] This allows the user to generate practice scenarios in a format that is easy for them to learn.
[0836] 4. Generating practice scenarios:
[0837] The server generates personalized practice scenarios based on the user's practice data and skill level, including practice content based on specific situations during a match (e.g., break points, service games, etc.).
[0838] 5. Setting up the VR environment:
[0839] The device performs an initial calibration of the sensors and rackets used by the user to obtain accurate position data.
[0840] The device transmits the user's captured movements to a server in real time, and the simulation data from the server is displayed on the VR goggles.
[0841] 6. Practical exercises:
[0842] Users put on VR goggles and practice swinging a racket in a virtual reality environment, trying out the same movements as professional players and receiving real-time feedback.
[0843] The device uses sensors to capture the user's movements and transmits the data to a server in real time.
[0844] 7. Feedback and Improvement:
[0845] The server analyzes the user's movements and compares them with those of professional players, specifically evaluating the ball's angle, speed, positioning, and other factors.
[0846] The device displays feedback data from the server on the VR goggles, allowing users to see the results and understand areas for improvement.
[0847] Specific examples
[0848] For example, consider a scenario in which a user is learning how a professional tennis player plays a match.
[0849] 1. The server collects match data from well-known players and identifies long rallies and important points.
[0850] 2. The server analyzes the data and extracts player movements, positioning, and in-game strategies.
[0851] 3. The server selects a specific scene (e.g., a tactic for a return game) to be practiced next based on User B's past practice data.
[0852] 4. The device accurately records User B's racket movements and completes the calibration.
[0853] 5. The user puts on the VR goggles and swings the racket in a virtual reality environment, mimicking the movements of a professional, for example, practicing the transition from a serve return to net play.
[0854] 6. The server analyzes User B's movements and provides specific feedback (e.g., "Your weight is too far back when you return").
[0855] 7. The device displays the feedback on the VR goggles, allowing User B to practice again while checking areas for improvement in real time.
[0856] In this way, the present invention provides an effective means for learning how a professional plays a game and for practical training in situational judgment and strategy during a game.
[0857] The processing flow will be explained below.
[0858] Step 1:
[0859] The server collects match data of professional tennis players from external sources, including match footage, player movement data, ball trajectory data, and positioning data.
[0860] Step 2:
[0861] The server applies video analysis algorithms to analyze the collected game footage, recognizing player movements, positioning, and ball trajectory. Specifically, it identifies the player's position for each frame and tracks the ball's trajectory.
[0862] Step 3:
[0863] The server applies machine learning algorithms to the analyzed data to model the course of a match, specifically creating a model that predicts the actions of professional players in specific situations.
[0864] Step 4:
[0865] The server generates personalized training scenarios based on the user's training data and skill level, including training content based on specific situations during a match.
[0866] Step 5:
[0867] The device performs an initial calibration of the sensors and rackets used by the user to obtain accurate position data.
[0868] Step 6:
[0869] The device transmits the user's captured movements to the server in real time, and the simulation data from the server is displayed on the VR goggles.
[0870] Step 7:
[0871] Users put on VR goggles and practice swinging a racket in a virtual reality environment, trying out the same movements as professional players and receiving real-time feedback.
[0872] Step 8:
[0873] The device uses sensors to capture the user's movements and transmits the data to a server in real time.
[0874] Step 9:
[0875] The server analyzes the user's movements and compares them with those of professional players, specifically evaluating the ball's angle, speed, positioning, and other factors.
[0876] Step 10:
[0877] The device displays feedback data from the server on the VR goggles, allowing users to see the results and understand areas for improvement.
[0878] Example 1
[0879] 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."
[0880] Conventional training systems using match data make it difficult for users to learn match progress in real time and train effectively. Furthermore, there is a lack of methods for generating practice scenarios tailored to individual users. This often results in users being unable to train according to their own skills and weaknesses, slowing their progress. Furthermore, the lack of real-time feedback makes it difficult for users to immediately understand areas for improvement in their movements and tactics.
[0881] 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.
[0882] In this invention, the server includes a means for collecting game data, a means for analyzing the collected game data to extract information on each player's ball trajectory, positioning, and tactics, and a means for generating a practice scenario optimized for the user based on the extracted information. This allows the user to study the game data in real time and train efficiently with a practice scenario customized based on their individual skill level and practice data. Furthermore, by including a means for measuring the user's movements in real time and transmitting the results to the server, immediate feedback is provided, allowing the user to quickly understand areas for improvement in their movements and tactics.
[0883] "Match data" includes all information related to a professional tennis player's match, specifically including match footage, player movement data, ball trajectory data, positioning data, and the like.
[0884] "Means for collecting" refers to the methods and devices for obtaining match data from external sources and storing it on a server.
[0885] "Means for analyzing" refers to a method and device for processing collected match data and extracting necessary information (player movements, ball trajectory, positioning, tactical patterns).
[0886] "Means for generating practice scenarios" refers to a method and system for creating individually customized practice content based on the user's skill level and past practice data.
[0887] "Means for obtaining user input data" refers to sensors or devices for reading the operations and actions that users perform on the system.
[0888] "Means for transmitting to a server in real time" refers to communication means and devices for instantly transmitting data acquired from a user to a server.
[0889] "Means for generating a game simulation" refers to a method and system for constructing a virtual game environment based on analyzed data and user movements.
[0890] "Means for displaying in virtual reality goggles" refers to methods and apparatus that allow a user to visually experience the generated simulation in a VR environment.
[0891] "Means for providing feedback" refers to methods and systems for analyzing a user's performance and informing the user of comparison results, areas for improvement, and advice.
[0892] "Means for customization" refers to methods and systems for tailoring and optimizing practice scenarios based on a user's practice data and skill level.
[0893] "Means for measuring movements in real time" refers to a method and device that uses sensors or the like to instantly measure a user's movements and collect them as data.
[0894] "Movement transmitting means" refers to communication means and devices for transferring user movement data measured in real time to a server.
[0895] This invention relates to a system that allows users to learn professional gameplay in real time and effectively train. The system mainly consists of three main components: a server, a terminal, and a user.
[0896] server
[0897] The server first collects match data from professional tennis players. This data includes match footage, player movement data, ball trajectory data, and positioning data. During the data collection process, API requests are sent to the official ATP and WTA databases to obtain the necessary data. The collected data is then stored in a local database.
[0898] Next, the collected game footage is analyzed. Specifically, using the OpenCV library, a video analysis algorithm is applied to identify player movements, positioning, and ball trajectory. A deep learning model is then used to detect the ball's trajectory. Based on the analyzed data, characteristic player movements and tactical patterns are extracted and recorded in a database.
[0899] Based on the analysis data, the server uses the TensorFlow library to build a machine learning model, which can predict the actions that professional players will take in specific situations. This model is then used to generate individually customized practice scenarios based on the user's practice data and skill level. For example, if a user is weak at backhand returns, the server will create a scenario that focuses on practicing that aspect.
[0900] Terminal
[0901] The device performs initial calibration of the sensors and racket to obtain accurate position data. The device then uses the Kinect sensor and motion capture system to calibrate the position information of the user's body and racket, completing the initial setup. After that, the sensor information continues to be sent to the server in real time.
[0902] Next, the terminal displays the simulation data from the server on the VR goggles. This can be done using a VR device such as Oculus Rift. The user puts on the VR goggles and practices swinging the racket in a virtual reality environment. The user can practice by imitating the movements of professional players and receive feedback in real time.
[0903] User
[0904] Users wear VR goggles and practice in a virtual reality environment. For example, they can experience a simulated transition from a serve return to a net play performed by a professional player, imitating their movements. During the actual practice, the user's movements are captured via a Kinect sensor and a motion capture system.
[0905] The real-time collected movement data is sent to a server, which analyzes it and compares it with the data of professional players. The server generates feedback based on the results and displays it on the VR goggles via the device. This allows users to receive real-time advice on how to improve their movements and tactics.
[0906] Specific examples
[0907] For example, if a user wants to learn how a professional tennis player plays a game, the server collects match data from famous players and identifies long rallies and important points. The server analyzes the data to extract players' movements, positioning, and in-match strategies. Based on the user's past practice data, it selects the specific scene to practice next (e.g., return game tactics). The device accurately records the user's racket movements and completes calibration. The user puts on VR goggles and swings the racket in a virtual reality environment, imitating the movements of a professional. The server analyzes the user's movements and provides feedback. The device displays the feedback in real time, allowing the user to review and practice again.
[0908] Examples of prompt statements
[0909] "Can you give me an example of Python code that analyzes video footage of professional tennis players and builds a model that learns their tactics and player movements during a match?"
[0910] Thus, the present invention provides an effective means for learning how professional players play a game and for practical training in situational judgment and strategy during a game.
[0911] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0912] Step 1:
[0913] Match data collection
[0914] The server collects professional tennis players' match data from external sources. Specifically, it sends API requests to the official ATP and WTA databases to retrieve past match data. The input data are API request parameters, and the output data are the captured match footage, player movement data, ball trajectory data, and positioning data. This data is stored in a local database.
[0915] Step 2:
[0916] Game footage analysis
[0917] The server applies a video analysis algorithm to analyze the collected game footage. Specifically, it uses the OpenCV library to identify the player's position for each frame and a deep learning model to detect the ball's trajectory. The input data is the collected game footage, and the output data is data on player movements, positioning, and ball trajectory. This allows players' characteristic movements and tactical patterns to be extracted and recorded in a database.
[0918] Step 3:
[0919] Extracting player movements and tactics
[0920] The server extracts the players' characteristic movements and tactical patterns based on the analyzed video data. For example, it uses a clustering algorithm to classify the players' positioning during a rally and the course of the ball. The input data is the analyzed video data, and the output data is the extracted characteristic movements and tactical patterns. This data is recorded in a database.
[0921] Step 4:
[0922] Building a machine learning model
[0923] The server applies a machine learning algorithm to the extracted data to model the progress of the game. Specifically, it uses the TensorFlow library to generate a model for predicting the behavior of professional players. The input data is the extracted feature data, and the output data is the model for predicting the behavior of professional players. This makes it possible to predict the behavior of professional players under specific circumstances.
[0924] Step 5:
[0925] Generating individual practice scenarios
[0926] The server generates an individually customized practice scenario based on the user's practice data and skill level. For example, if the user is not good at backhand returns, it creates a practice scenario that corresponds to that situation. The input data is the user's practice data and skill level, and the output data is the customized practice scenario.
[0927] Step 6:
[0928] Setting up the VR environment
[0929] The device performs initial calibration of the sensors and racket used by the user to obtain accurate position data. Specifically, it calibrates the position information of the user's body and racket using a Kinect sensor and motion capture system. The input data is the user's initial position information, and the output data is the calibrated position data.
[0930] Step 7:
[0931] Sending real-time data
[0932] The device captures the user's movements in real time and sends the data to the server. The input data is the user's movement data, and the output data is the real-time movement data sent to the server, which includes sensor information and user behavior data.
[0933] Step 8:
[0934] Generate and view simulations
[0935] The server generates a match simulation based on the user's movements and displays the generated simulation on the device's VR goggles. The input data is the user's movement data transmitted in real time, and the output data is the simulation data displayed on the VR goggles.
[0936] Step 9:
[0937] Providing Feedback
[0938] The server analyzes the user's performance and provides feedback by comparing it with data from professional players. Specifically, it evaluates the ball's angle, speed, positioning, etc. in detail and generates areas for improvement and advice. The input data is the user's performance data, and the output data is feedback data. The device displays this feedback on the VR goggles, allowing the user to check it in real time.
[0939] (Application example 1)
[0940] 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."
[0941] In conventional driving skill improvement and autonomous vehicle testing, it has been difficult to efficiently learn and reproduce the advanced driving skills and emergency response capabilities of professional drivers. Furthermore, there have been limited systems that provide real-time feedback to help users improve their driving skills. This has hindered the acquisition of driving skills and the improvement of autonomous driving systems.
[0942] 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.
[0943] In this invention, the server includes a means for collecting driving data from professional drivers, a means for analyzing the collected driving data and extracting information on each driver's steering, braking, and accelerator operations and vehicle behavior, and a means for generating an optimal driving training scenario for the user based on the extracted information. This allows users to learn professional driver driving techniques and emergency response methods in real time and repeatedly practice them in a virtual reality environment.
[0944] "Match data" refers to information relating to the movements of players in sports competitions, the trajectory of the ball, positioning, tactics, and so on.
[0945] A "professional driver" is a driver who drives a vehicle professionally and has advanced driving skills and experience.
[0946] "Driving data" refers to a series of information related to vehicle driving, and specifically includes data on steering operation, braking operation, accelerator operation, vehicle behavior, and the like.
[0947] "Virtual reality goggles" are a device that allows users to experience a virtual reality environment and is a head-mounted display that provides visual and auditory information.
[0948] "Data analysis" is the act of processing collected data using analytical techniques to find necessary patterns and relationships.
[0949] A "driving training scenario" is a series of exercises and training content designed to improve driving skills and is customized to suit the user's skills and requirements.
[0950] "Real-time feedback" refers to evaluations and advice provided instantly in response to a user's actions and reactions.
[0951] "Steering operation" refers to the operation of the steering wheel to control the direction of travel of the vehicle.
[0952] "Brake operation" means the operation of the brake mechanism to slow or stop the vehicle.
[0953] "Accelerator operation" refers to operation of the accelerator pedal to increase the speed of the vehicle.
[0954] "Vehicle behavior" refers to the movement and behavior of a vehicle while driving, and specifically includes acceleration, deceleration, turning, stability, etc.
[0955] A "virtual reality environment" is a computer-generated, three-dimensional virtual world in which a user is visually and auditorily immersed.
[0956] The system that realizes this application example is an advanced virtual reality system for learning and efficiently training driving skills of professional drivers. The system includes the following means:
[0957] The server collects driving data from professional drivers, including game footage, steering, braking, and acceleration data, and vehicle behavior data. To analyze the collected driving data, the server uses a video analysis algorithm (specifically, OpenCV). Through video analysis, the server extracts the professional drivers' characteristic operations and driving patterns and records them in a database.
[0958] The server then builds machine learning models (specifically TensorFlow and Scikit-learn) based on the extracted data to generate driving scenarios that are tailored to each user and include training content for emergency responses and challenging driving situations (e.g., merging onto a highway, driving in bad weather).
[0959] The device includes virtual reality goggles and a driving simulator. Users wear the virtual reality goggles and operate the driving simulator to train. Operation data from the driving simulator is sent to a server in real time. The server analyzes the user's driving data and compares it with that of professional drivers. The analysis results are fed back to the user, providing them with suggestions for improvement and appropriate advice.
[0960] For program processing, a high-performance server (such as AWS EC2 or Google Cloud Compute Engine) is used. The video analysis algorithm OpenCV is applied for data analysis, and TensorFlow and Scikit-learn are used to build machine learning models. MySQL and MongoDB are used for databases, and Unity and Unreal Engine are used to display feedback.
[0961] As a concrete example, consider a scenario in which a user learns emergency braking operations from a professional driver. The server collects and analyzes emergency braking operation data. It then records emergency braking patterns in a database. The user puts on virtual reality goggles and uses a driving simulator to train in emergency braking operations. The server analyzes the user's operation data and compares it with the operations of the professional driver to provide feedback. The user receives the feedback and retrains to improve their driving skills.
[0962] An example prompt is:
[0963] "Collect and analyze data on emergency braking maneuvers performed by professional drivers on highways, and model their operation patterns using a machine learning model. Then, use that model to generate customized practice scenarios and create a program to train users in a VR environment."
[0964] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0965] Step 1:
[0966] The server collects driving data from professional drivers. The collected data includes driving footage, steering, braking, and acceleration operations, as well as vehicle behavior. This data is obtained from external sources and stored in a database. The input is the driving data of professional drivers, and the output is driving data organized for analysis.
[0967] Step 2:
[0968] The server applies a video analysis algorithm (specifically, OpenCV) to analyze the collected driving data. It identifies the driver's actions and vehicle movements for each frame and obtains detailed data on steering, braking, accelerating, and vehicle behavior. The input is the collected driving data, and the output is the analyzed specific actions and behavior data.
[0969] Step 3:
[0970] The server uses the analyzed data to build a machine learning model (specifically, TensorFlow or Scikit-learn). The model is used to predict the actions a professional driver will take in a specific driving situation. The input is the analyzed driving data, and the output is a machine learning model that predicts driving patterns.
[0971] Step 4:
[0972] The server generates driving training scenarios based on the user's driving data and skill level. The generated scenarios include training content for emergency response methods and difficult driving situations. The input is a machine learning model and the user's skill data, and the output is a customized driving training scenario.
[0973] Step 5:
[0974] The terminal performs initial calibration of the driving simulator used by the user, and performs settings to accurately acquire the user's operation data. The input is the calibration data of the driving simulator, and the output is the initially configured driving simulator.
[0975] Step 6:
[0976] The user wears virtual reality goggles and operates a driving simulator to train. The device transmits the user's operation data to the server in real time. The input is the user's operation data during training, and the output is the data transmitted to the server.
[0977] Step 7:
[0978] The server analyzes the user's operation data and compares it with that of professional drivers. It then makes a specific evaluation and generates appropriate advice and suggestions for improvement. The input is the user's operation data, and the output is the analysis results and feedback data.
[0979] Step 8:
[0980] The terminal displays the feedback data from the server on the virtual reality goggles. The user checks the feedback and understands the areas for improvement. The input is the feedback data from the server, and the output is the feedback displayed on the virtual reality goggles.
[0981] Through the above process, users can learn the driving techniques of professional drivers in real time and repeatedly practice in a virtual reality environment.
[0982] 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.
[0983] The present invention relates to a system that allows users to learn professional gameplay in real time and train effectively. Furthermore, by combining this system with an emotion engine, feedback can be provided based on the user's emotional state, allowing them to maintain motivation while practicing. Based on the following configuration, we will specifically explain the collection and analysis of game data, the generation of practice scenarios, the real-time acquisition and analysis of user movements, the simulation and feedback using virtual reality, and the implementation of the emotion engine.
[0984] Program processing
[0985] 1. Data Collection:
[0986] The server collects match data of professional tennis players from external sources, including match footage, player movement data, ball trajectory data, and positioning data.
[0987] 2. Data Analysis:
[0988] The server applies video analysis algorithms to analyze the collected game footage, recognizing player movements, positioning, and ball trajectory. Specifically, it identifies the player's position for each frame and tracks the ball's trajectory.
[0989] The analysis results are stored in a database, and detailed information about each point (e.g., ball angle, speed, position, etc.) is recorded.
[0990] 3. Building the learning model:
[0991] The server then applies machine learning algorithms to the analyzed data to model the course of a match, for example, creating a model that predicts the actions of a professional player in a given situation.
[0992] 4. Generating practice scenarios:
[0993] The server generates personalized training scenarios based on the user's training data and skill level, including training content based on specific situations during a match.
[0994] 5. Setting up the VR environment:
[0995] The device performs an initial calibration of the sensors and rackets used by the user to obtain accurate position data.
[0996] The device transmits the user's captured movements to a server in real time, and the simulation data from the server is displayed on the VR goggles.
[0997] 6. Practical exercises:
[0998] Users put on VR goggles and practice swinging a racket in a virtual reality environment, trying out the same movements as professional players and receiving real-time feedback.
[0999] The device uses sensors to capture the user's movements and transmits the data to a server in real time.
[1000] 7. Feedback and Improvement:
[1001] The server analyzes the user's movements and compares them with those of professional players, specifically evaluating the ball's angle, speed, positioning, and other factors.
[1002] The server generates feedback based on the user's performance and displays it on the VR goggles via the device.
[1003] 8. Emotion engine integration:
[1004] The terminal captures the user's facial expressions, voice, and biometric information and sends them to the emotion engine.
[1005] The emotion engine analyzes this information and recognizes the user's emotional state.
[1006] The server adjusts the feedback content based on the analysis results of the emotion engine and provides appropriate advice according to the user's emotions.
[1007] Specific examples
[1008] For example, consider a scenario in which a user is learning how a professional tennis player plays a match.
[1009] 1. The server collects match data from well-known players and identifies long rallies and important points.
[1010] 2. The server analyzes the data and extracts player movements, positioning, and in-game strategies.
[1011] 3. The server selects a specific scene (e.g., return game tactics) to practice next based on user C's past practice data.
[1012] 4. The device accurately records User C's racket movements and completes the calibration.
[1013] 5. The user puts on the VR goggles and swings the racket in a virtual reality environment, mimicking the movements of a professional, for example, practicing the transition from a serve return to net play.
[1014] 6. The device captures user C's facial expressions, voice, and biometric information and sends them to the server.
[1015] 7. The emotion engine analyzes the data and recognizes that User C is feeling impatient or anxious.
[1016] 8. The server generates feedback based on user C's emotional state (e.g., "Relax and try again") and displays it on the VR goggles via the terminal.
[1017] In this way, the present invention provides an effective means for learning how professional players play games and for practical training in situational judgment and strategy during a game, and furthermore, it can utilize an emotion engine to maintain the user's motivation.
[1018] The processing flow will be explained below.
[1019] Step 1:
[1020] The server collects match data of professional tennis players, including match footage, player movement data, ball trajectory data, and positioning data, from external sources.
[1021] Step 2:
[1022] The server applies video analysis algorithms to analyze the collected game footage, identifying the player's position and tracking the ball's trajectory for each frame to recognize the player's movements, positioning, and ball trajectory.
[1023] Step 3:
[1024] The server then applies machine learning algorithms to model the course of a match, creating a model that predicts how a professional player will act in a given situation.
[1025] Step 4:
[1026] The server generates personalized training scenarios based on the user's training data and skill level, including training content tailored to specific situations during a match.
[1027] Step 5:
[1028] The device will perform an initial calibration of the sensors and rackets used by the user to obtain accurate position data, and after calibration is complete, it will be able to accurately track the user's movements.
[1029] Step 6:
[1030] The device transmits the user's captured movements to the server in real time, and simultaneously displays the simulation data from the server on the VR goggles.
[1031] Step 7:
[1032] Users put on VR goggles and practice swinging a racket in a virtual reality environment, trying out the same movements as professional players and receiving real-time feedback.
[1033] Step 8:
[1034] The device uses sensors to capture the user's movements and transmits the data in real time to a server, including detailed data such as the user's ball-hitting angle, speed, and positioning.
[1035] Step 9:
[1036] The device captures the user's facial expressions, voice, and biometric information using devices such as cameras, microphones, and heart rate sensors to gather data to recognize the user's emotional state.
[1037] Step 10:
[1038] The emotion engine analyzes collected facial expressions, voice, and biometric information to recognize the user's emotional state, for example, determining whether the user is feeling anxious or impatient.
[1039] Step 11:
[1040] The server adjusts the feedback content based on the analysis results of the emotion engine. For example, if the user is feeling impatient, it generates advice that takes into account the user's emotions, such as "Relax and try again."
[1041] Step 12:
[1042] The device displays the feedback data from the server on the VR goggles, allowing the user to see the results and understand areas for improvement. Appropriate feedback based on emotions is provided to maintain the user's motivation.
[1043] Example 2
[1044] 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."
[1045] Conventional training systems do not adequately provide users with the means to effectively learn how professional players play. Furthermore, they do not provide feedback that takes into account the user's emotional state, making it difficult to maintain motivation. The present invention aims to solve these problems by providing a system that allows users to learn how professional players play in real time and train effectively.
[1046] The identification processing 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 collecting game data, means for analyzing the collected game data and extracting information on the ball trajectory, positioning, and tactics of each player, means for generating an optimal practice scenario for the user based on the extracted information, means for acquiring user input data and transmitting it to the server in real time, means for generating a game simulation based on the user's movements, means for displaying the generated simulation on a virtual reality display device, means for analyzing the user's performance and providing feedback, and means for analyzing the user's emotional state and adjusting the feedback. This allows the user to learn how professional players play in real time and train effectively, and also provides feedback according to the user's emotional state, allowing the user to practice while maintaining motivation.
[1047] "Match data" refers to video footage of professional tennis players' matches, player movement data, ball trajectory data, positioning data, and other tactical information.
[1048] "Collection Method" means any combination of hardware and software used to automatically obtain and store Match Data from external sources.
[1049] "Means of analysis" refers to technology that applies image analysis algorithms to collected match data to extract information such as each player's positioning and the trajectory of the ball.
[1050] "Means for generating a practice scenario" refers to an algorithm and processing device for creating optimal practice content for the user based on the information obtained through analysis.
[1051] "Means for acquiring input data and transmitting it in real time" refers to devices and technologies for capturing user movements with sensors and transmitting that data to a server in real time.
[1052] "Means for generating a match simulation" refers to a processing device and algorithms for generating a match simulation in a virtual reality environment based on user movement data.
[1053] "Virtual reality display device" refers to a device such as a head-mounted display or goggles that allows a user to visually experience a simulation in a virtual reality environment.
[1054] "Means for analyzing performance and providing feedback" refers to processing devices and algorithms for analyzing the user's movement data, comparing it with professional athletes, and providing feedback of the results to the user.
[1055] "Means for analyzing emotional state and adjusting feedback" refers to technology and devices for analyzing a user's emotional state from facial expressions, voice, biometric information, etc., and adjusting the feedback content based on that.
[1056] The present invention relates to a system that allows users to learn professional gameplay in real time and train effectively. This system incorporates an emotion engine that provides feedback according to the user's emotional state, allowing the user to maintain motivation while practicing. Specific embodiments are described below.
[1057] First, the server collects match data from professional tennis players. Match data includes match footage, player movement data, ball trajectory data, and positioning data. This data is automatically obtained from external sources and stored in cloud storage (e.g., AWS S3). Web scraping technology (e.g., BeautifulSoup) is used to collect the data.
[1058] The server then applies a video analysis algorithm (e.g., OpenCV) to analyze the collected game footage to recognize player movements, positioning, and ball trajectory. The analysis is performed by identifying the player's position for each frame and tracking the ball's trajectory. The analysis results are stored in a database (e.g., MySQL), recording details such as ball angle, speed, and location.
[1059] The server then applies machine learning algorithms (e.g., TensorFlow) to the analyzed data to create a model that predicts the behavior of professional players. The model learns the players' movement patterns and predicts their reactions to specific situations.
[1060] The server then generates a personalized practice scenario based on the user's practice data and skill level, including analyzing the user's past practice data to identify areas for improvement.
[1061] The device performs an initial calibration of the sensors and racket used by the user and obtains accurate position data. The user completes the calibration by performing a predetermined movement using a sensor (e.g., Kinect) connected to the device. The device transmits the captured movement to a server in real time, and the simulation data from the server is displayed on a virtual reality display device (e.g., Oculus Rift).
[1062] The user wears a virtual reality display device and practices swinging a racket in a virtual reality environment. They try out the same movements as professional players and receive real-time feedback. The device captures the user's movements with sensors and sends the data to a server in real time.
[1063] The server analyzes the user's movements and compares them with those of professional players. It performs detailed evaluations of the ball's angle, speed, positioning, etc., and generates feedback that is displayed on a virtual reality display via the device. The device also captures the user's facial expressions, voice, and biometric information, and sends it to an emotion engine (e.g., IBM Watson Tone Analyzer). The emotion engine analyzes this information and recognizes the user's emotional state.
[1064] Based on the analysis results of the emotion engine, the server adjusts the feedback content and provides appropriate advice according to the user's emotions.
[1065] To illustrate, consider the following scenario:
[1066] 1. The server collects match data from professional tennis players and identifies long rallies and important points from the data.
[1067] 2. The server analyzes the data and extracts player movements, positioning, and in-game strategies.
[1068] 3. The server selects a specific scene (e.g., return game tactics) to practice next based on user C's past practice data.
[1069] 4. The device accurately records User C's racket movements and completes the calibration.
[1070] 5. The user wears a virtual reality display device and swings a racket in a virtual reality environment, mimicking the movements of a professional, for example, practicing the transition from a serve return to a net play.
[1071] 6. The device captures user C's facial expressions, voice, and biometric information and sends them to the server.
[1072] 7. The emotion engine analyzes this data and recognizes that User C is feeling impatient or anxious.
[1073] 8. The server generates feedback based on the emotional state of user C (e.g., "Relax and try again") and displays it on the virtual reality display device via the terminal.
[1074] An example of a prompt sentence to be input to the generative AI model is shown below.
[1075] Create a VR simulation that recreates specific scenes from a professional tennis match and allows users to practice in those scenes. Generate practice scenarios tailored to the user's skill level and provide real-time feedback. Also, analyze the user's emotional state and provide motivational advice based on the results.
[1076] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1077] Program processing steps
[1078] Step 1: Gathering match data
[1079] 1. The server automatically retrieves professional tennis player match data from external sources.
[1080] Input: Match URL or API endpoint
[1081] Processing: Gather game footage and statistics using web scraping technology (e.g. BeautifulSoup).
[1082] Output: Collected match data (video files, movement data, ball trajectory data, positioning data)
[1083] Specific operation: The server downloads the video file from the specified URL and saves it in AWS S3 cloud storage.
[1084] Step 2: Analyzing match data
[1085] 2. The server applies image analysis algorithms (e.g., OpenCV) to analyze the collected game footage.
[1086] Input: Collected game footage
[1087] Processing: Track player location and ball trajectory for each frame to recognize ball launch angle, speed, positioning, etc.
[1088] Output: Detailed match data as analysis results (stored in a database)
[1089] Specific operation: The server analyzes the video file frame by frame and writes the results to a MySQL database.
[1090] Step 3: Building a learning model
[1091] 3. The server applies a machine learning algorithm (e.g., TensorFlow) to the analyzed data to create a model.
[1092] Input: Match data for analysis results
[1093] Processing: Using machine learning algorithms to train models that predict how players will behave in specific situations.
[1094] Output: Behavioral prediction model
[1095] What happens: The server executes the machine learning task and saves the training results as a model file.
[1096] Step 4: Generate a training scenario
[1097] 4. The server generates an individually customized practice scenario based on the user's practice data and skill level.
[1098] Input: User's past practice data and skill assessment
[1099] Processing: Algorithms analyze user data, identify needed improvements, and generate practice scenarios.
[1100] Output: A customized training scenario
[1101] Specific operation: The server retrieves the user's data through a query and compiles the generated scenario in HTML format.
[1102] Step 5: Setting up the VR environment
[1103] 5. The device performs an initial calibration of the sensors and rackets used by the user.
[1104] Input: Sensor capture data and a series of user actions
[1105] Processing: The calibration algorithm corrects the sensor position and performs the initial setup.
[1106] Output: Accurate position data after calibration is complete
[1107] Specific operation: The device software acquires data from the sensor and prompts the user to perform calibration.
[1108] Step 6: Practice
[1109] 6. The user wears the virtual reality display device and practices swinging a racket in the virtual reality environment.
[1110] Input: User movement, virtual reality environment settings
[1111] Processing: User movements are captured in real time and combined with simulation data.
[1112] Output: User movement data in the VR environment
[1113] Specific actions: The user wears the virtual reality display device and performs an action, which is captured by the device's sensors.
[1114] Step 7: Feedback and Improvement
[1115] 7. The server analyzes the user's movements and compares them with those of professional players.
[1116] Input: User behavior data
[1117] Processing: Analysis algorithms evaluate the ball's angle, speed, positioning, etc. and compare it with professional data.
[1118] Output: Improvements and Feedback
[1119] Specific operation: The server generates feedback content based on the analysis results and sends it to the device in real time.
[1120] Step 8: Integrating the Emotion Engine
[1121] 8. The device captures the user's facial expressions, voice, and biometric information and sends them to the emotion engine.
[1122] Input: User's facial expression data, voice data, biometric information
[1123] Processing: Apply sentiment analysis algorithms to recognize the user's emotional state.
[1124] Output: Emotion analysis results
[1125] Specific operation: The device sends the captured data to the emotion engine and obtains the analysis results.
[1126] Step 9: Adjust your feedback based on your emotions
[1127] 9. The server adjusts the feedback content based on the analysis results of the emotion engine.
[1128] Input: Sentiment analysis results
[1129] Processing: Adjusting the feedback to fit your emotional state.
[1130] Output: User-friendly feedback
[1131] Specific operation: The server adjusts the feedback content and displays it on the virtual reality display device via the terminal.
[1132] (Application example 2)
[1133] 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."
[1134] In current training systems, it is difficult for users to learn professional movements in real time and accurately reproduce them. Furthermore, to maintain users' motivation and continue effective training, appropriate feedback based on their emotional state is required. However, current systems have difficulty accurately analyzing a user's emotional state and providing feedback based on that analysis. Therefore, there is a need for a system that allows users to receive appropriate advice based on their emotions, enabling them to train effectively while maintaining their motivation.
[1135] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[1136] In this invention, the server includes means for collecting game data, means for analyzing the collected game data to extract information on each player's hitting trajectory, positioning, and tactics, means for generating an optimal practice scenario for the user based on the extracted information, means for acquiring user input data and transmitting it to the server in real time, means for generating a game simulation based on the user's movements, means for displaying the generated simulation on virtual reality goggles, means for analyzing the user's performance and providing feedback, an emotion engine for capturing the user's facial expressions, voice, and biological information and analyzing the user's emotional state, and means for adjusting the feedback content based on the analysis results of the emotion engine and providing appropriate advice. This allows the user to learn the movements of professional players in real time and receive appropriate feedback according to their emotional state, thereby enabling them to train effectively while maintaining their motivation.
[1137] "Game Data" means data containing information about an athlete's game, including game footage, player movements, strike trajectories, positioning, tactics, etc.
[1138] The "analysis means" is a means for analyzing the collected match data and extracting information such as each player's movements, ball trajectory, positioning, tactics, etc.
[1139] A "practice scenario" is a training plan customized based on the user's skill level and practice data.
[1140] "Input data" refers to data such as actions and performance entered by the user, and is sent to the server in real time.
[1141] "Game Simulation" allows users to practice in virtual reality in a virtual game environment that is generated based on the user's movements.
[1142] "Virtual reality goggles" are devices worn by users to visually experience a virtual environment.
[1143] "Feedback" is information or messages that evaluate a user's performance and provide suggestions or advice for improvement.
[1144] The "emotion engine" is software that analyzes the user's facial expressions, voice, and biometric information to recognize their emotional state.
[1145] "Appropriate advice" is messages of improvement and motivation provided based on the user's performance and emotional state.
[1146] This invention relates to a system that allows users to learn professional fitness instruction in real time and train effectively. Based on the following aspects, we will specifically explain data collection and analysis, creation of training scenarios, real-time acquisition and analysis of user movements, simulation and feedback using virtual reality, and implementation of an emotion engine.
[1147] First, the server collects training data from professional fitness coaches from external sources. This includes training footage, instructional content, and movement data. The collected data is analyzed using video analysis algorithms (such as OpenCV or dlib) to recognize the coach's movements for each frame and extract detailed information such as form, speed, and position. The analysis results are stored in a database.
[1148] The server uses this analysis data to build a learning model using a generative AI model (such as TensorFlow) to model a professional coaching style. Based on the user's past training data, the server generates a personalized training scenario, including specific exercises to practice next and fitness tips.
[1149] The device performs initial calibration of the sensors used by the user to obtain accurate position data, captures the user's movements in real time, and transmits the data to a server, which then displays the simulated data on the VR goggles (e.g., Oculus Rift or HTC Vive).
[1150] The user wears VR goggles and performs exercises in a virtual reality environment under the guidance of a fitness coach, such as training the correct form for plank exercises or squats. The user's movements are captured by sensors and the data is sent to a server in real time.
[1151] The server analyzes the user's performance and compares it with the movements of a professional coach. Detailed evaluations are made of form accuracy, speed, position, and other factors, and feedback is generated. This feedback is displayed on the VR goggles via the device, providing the user with areas for improvement and appropriate advice.
[1152] Furthermore, the emotion engine captures and analyzes the user's facial expressions, voice, and biometric information. Based on this information, the emotion engine recognizes the user's emotional state (e.g., impatience or anxiety) and sends it to the server. The server then adjusts the feedback content based on the emotion engine's analysis and generates appropriate messages to maintain the user's motivation. For example, the message might be, "Relax and try again" or "You're doing well, keep going."
[1153] Specific examples
[1154] For example, consider a scenario in which a user is learning a plank exercise from a fitness coach.
[1155] The server collects training footage of fitness coaches from an extensive database and identifies the correct plank form from the footage.
[1156] The server analyzes the collected footage and extracts the coach's movements and form.
[1157] The server selects a plank exercise practice scenario based on the user's past training data.
[1158] The device will accurately record the user's movements and complete the calibration.
[1159] The user puts on VR goggles and performs planks in a virtual reality environment following the coach's instructions.
[1160] The device captures the user's facial expressions, voice, and biometric information and sends it to the server.
[1161] The emotion engine analyzes this data and recognizes that the user is feeling impatient.
[1162] The server generates feedback based on the user's emotional state and displays it on the VR goggles via the device, saying, "Relax and try again."
[1163] Example prompt sentence:
[1164] "I want to learn plank exercises from a fitness coach and get feedback to help me maintain proper form. I also want emotional analysis based on my heart rate and facial expressions."
[1165] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1166] Step 1:
[1167] Match data collection
[1168] Input: Training footage and instructional content of professional fitness coaches from an external data source.
[1169] Output: The raw training data.
[1170] Specific operation: The server collects training footage, movement data, and instructional content of professional fitness coaches from external data sources (e.g., fitness community APIs) and stores them in a database.
[1171] Step 2:
[1172] Data analysis
[1173] Input: Unparsed training data.
[1174] Output: Analysis results for each frame (details on form, speed, position, etc.).
[1175] Specific operation: The server analyzes the collected training footage using video analysis algorithms such as OpenCV and dlib to recognize the coach's movements for each frame. It also extracts detailed information such as form, speed, and position and records it in a database.
[1176] Step 3:
[1177] Building a learning model
[1178] Input: Training data with analysis results.
[1179] Output: A learning model that models a professional coaching style.
[1180] Specific operation: The server uses machine learning algorithms such as TensorFlow to build a learning model based on the analyzed data and models the coaching style of the professional. This creates a model that can predict the coach's teaching methods and movements in specific situations.
[1181] Step 4:
[1182] Generating practice scenarios
[1183] Input: Learning model, user's past training data.
[1184] Output: The optimal practice scenario for the user.
[1185] Specific Movements: The server combines the learning model with the user's past training data to generate personalized practice scenarios, including, for example, proper form for a plank exercise and specific exercise content.
[1186] Step 5:
[1187] Setting up the VR environment
[1188] Input: User sensor data.
[1189] Output: Initial calibrated sensor data.
[1190] What happens: The device initializes the sensors you use and calibrates them to obtain accurate location data. This configuration allows the device to accurately capture your movements.
[1191] Step 6:
[1192] Actual training
[1193] Input: Practice scenario, user's real-time behavior data.
[1194] Output: User behavior data during training.
[1195] Specific Action: The user wears VR goggles and performs exercises in a virtual reality environment under the guidance of a fitness coach, such as practicing the correct form for plank exercises or squats. The device also captures the user's movements and transmits the data to a server in real time.
[1196] Step 7:
[1197] Providing Feedback
[1198] Input: User performance data.
[1199] Output: Feedback and advice.
[1200] Specific Actions: The server analyzes the user's performance and compares it with the movements of a professional coach. Specifically, it evaluates the accuracy of the form, speed, position, etc. in detail and generates feedback. This feedback is displayed on the VR goggles via the device, providing the user with areas for improvement and appropriate advice.
[1201] Step 8:
[1202] Emotion engine integration
[1203] Input: User's facial, voice and biometric information.
[1204] Output: Analysis of the user's emotional state and tailored feedback.
[1205] Specific operation: The device captures the user's facial expressions, voice, and biometric information and sends them to the emotion engine. The emotion engine analyzes this information and recognizes the user's emotional state (e.g., impatience or anxiety). The server adjusts the feedback content based on the emotion engine's analysis results and generates appropriate messages to maintain the user's motivation.
[1206] 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.
[1207] 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.
[1208] 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.
[1209] [Fourth embodiment]
[1210] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1211] 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.
[1212] 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).
[1213] 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.
[1214] 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.
[1215] 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).
[1216] 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.
[1217] 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.
[1218] 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.
[1219] 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.
[1220] 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.
[1221] 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.
[1222] 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."
[1223] The present invention relates to a system that allows users to learn professional gameplay in real time and effectively train. Based on the following aspects, we will specifically explain the system that collects and analyzes game data, generates practice scenarios, acquires and analyzes user movements in real time, and provides simulation and feedback using virtual reality.
[1224] Program processing
[1225] 1. Data Collection:
[1226] The server collects match data of professional tennis players from external sources, including match footage, player movement data, ball trajectory data, and positioning data.
[1227] 2. Data Analysis:
[1228] The server applies video analysis algorithms to analyze the collected game footage, recognizing player movements, positioning, and ball trajectory. Specifically, it identifies the player's position for each frame and tracks the ball's trajectory.
[1229] This allows players' characteristic movements and tactical patterns to be extracted and recorded in a database.
[1230] 3. Building the learning model:
[1231] The server applies machine learning algorithms to the analyzed data to model the course of a match, specifically creating a model that predicts the actions of professional players in specific situations.
[1232] This allows the user to generate practice scenarios in a format that is easy for them to learn.
[1233] 4. Generating practice scenarios:
[1234] The server generates personalized practice scenarios based on the user's practice data and skill level, including practice content based on specific situations during a match (e.g., break points, service games, etc.).
[1235] 5. Setting up the VR environment:
[1236] The device performs an initial calibration of the sensors and rackets used by the user to obtain accurate position data.
[1237] The device transmits the user's captured movements to a server in real time, and the simulation data from the server is displayed on the VR goggles.
[1238] 6. Practical exercises:
[1239] Users put on VR goggles and practice swinging a racket in a virtual reality environment, trying out the same movements as professional players and receiving real-time feedback.
[1240] The device uses sensors to capture the user's movements and transmits the data to a server in real time.
[1241] 7. Feedback and Improvement:
[1242] The server analyzes the user's movements and compares them with those of professional players, specifically evaluating the ball's angle, speed, positioning, and other factors.
[1243] The device displays feedback data from the server on the VR goggles, allowing users to see the results and understand areas for improvement.
[1244] Specific examples
[1245] For example, consider a scenario in which a user is learning how a professional tennis player plays a match.
[1246] 1. The server collects match data from well-known players and identifies long rallies and important points.
[1247] 2. The server analyzes the data and extracts player movements, positioning, and in-game strategies.
[1248] 3. The server selects a specific scene (e.g., a tactic for a return game) to be practiced next based on User B's past practice data.
[1249] 4. The device accurately records User B's racket movements and completes the calibration.
[1250] 5. The user puts on the VR goggles and swings the racket in a virtual reality environment, mimicking the movements of a professional, for example, practicing the transition from a serve return to net play.
[1251] 6. The server analyzes User B's movements and provides specific feedback (e.g., "Your weight is too far back when you return").
[1252] 7. The device displays the feedback on the VR goggles, allowing User B to practice again while checking areas for improvement in real time.
[1253] In this way, the present invention provides an effective means for learning how a professional plays a game and for practical training in situational judgment and strategy during a game.
[1254] The processing flow will be explained below.
[1255] Step 1:
[1256] The server collects match data of professional tennis players from external sources, including match footage, player movement data, ball trajectory data, and positioning data.
[1257] Step 2:
[1258] The server applies video analysis algorithms to analyze the collected game footage, recognizing player movements, positioning, and ball trajectory. Specifically, it identifies the player's position for each frame and tracks the ball's trajectory.
[1259] Step 3:
[1260] The server applies machine learning algorithms to the analyzed data to model the course of a match, specifically creating a model that predicts the actions of professional players in specific situations.
[1261] Step 4:
[1262] The server generates personalized training scenarios based on the user's training data and skill level, including training content based on specific situations during a match.
[1263] Step 5:
[1264] The device performs an initial calibration of the sensors and rackets used by the user to obtain accurate position data.
[1265] Step 6:
[1266] The device transmits the user's captured movements to the server in real time, and the simulation data from the server is displayed on the VR goggles.
[1267] Step 7:
[1268] Users put on VR goggles and practice swinging a racket in a virtual reality environment, trying out the same movements as professional players and receiving real-time feedback.
[1269] Step 8:
[1270] The device uses sensors to capture the user's movements and transmits the data to a server in real time.
[1271] Step 9:
[1272] The server analyzes the user's movements and compares them with those of professional players, specifically evaluating the ball's angle, speed, positioning, and other factors.
[1273] Step 10:
[1274] The device displays feedback data from the server on the VR goggles, allowing users to see the results and understand areas for improvement.
[1275] Example 1
[1276] 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."
[1277] Conventional training systems using match data make it difficult for users to learn match progress in real time and train effectively. Furthermore, there is a lack of methods for generating practice scenarios tailored to individual users. This often results in users being unable to train according to their own skills and weaknesses, slowing their progress. Furthermore, the lack of real-time feedback makes it difficult for users to immediately understand areas for improvement in their movements and tactics.
[1278] 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.
[1279] In this invention, the server includes a means for collecting game data, a means for analyzing the collected game data to extract information on each player's ball trajectory, positioning, and tactics, and a means for generating a practice scenario optimized for the user based on the extracted information. This allows the user to study the game data in real time and train efficiently with a practice scenario customized based on their individual skill level and practice data. Furthermore, by including a means for measuring the user's movements in real time and transmitting the results to the server, immediate feedback is provided, allowing the user to quickly understand areas for improvement in their movements and tactics.
[1280] "Match data" includes all information related to a professional tennis player's match, specifically including match footage, player movement data, ball trajectory data, positioning data, and the like.
[1281] "Means for collecting" refers to the methods and devices for obtaining match data from external sources and storing it on a server.
[1282] "Means for analyzing" refers to a method and device for processing collected match data and extracting necessary information (player movements, ball trajectory, positioning, tactical patterns).
[1283] "Means for generating practice scenarios" refers to a method and system for creating individually customized practice content based on the user's skill level and past practice data.
[1284] "Means for obtaining user input data" refers to sensors or devices for reading the operations and actions that users perform on the system.
[1285] "Means for transmitting to a server in real time" refers to communication means and devices for instantly transmitting data acquired from a user to a server.
[1286] "Means for generating a game simulation" refers to a method and system for constructing a virtual game environment based on analyzed data and user movements.
[1287] "Means for displaying in virtual reality goggles" refers to methods and apparatus that allow a user to visually experience the generated simulation in a VR environment.
[1288] "Means for providing feedback" refers to methods and systems for analyzing a user's performance and informing the user of comparison results, areas for improvement, and advice.
[1289] "Means for customization" refers to methods and systems for tailoring and optimizing practice scenarios based on a user's practice data and skill level.
[1290] "Means for measuring movements in real time" refers to a method and device that uses sensors or the like to instantly measure a user's movements and collect them as data.
[1291] "Movement transmitting means" refers to communication means and devices for transferring user movement data measured in real time to a server.
[1292] This invention relates to a system that allows users to learn professional gameplay in real time and effectively train. The system mainly consists of three main components: a server, a terminal, and a user.
[1293] server
[1294] The server first collects match data from professional tennis players. This data includes match footage, player movement data, ball trajectory data, and positioning data. During the data collection process, API requests are sent to the official ATP and WTA databases to obtain the necessary data. The collected data is then stored in a local database.
[1295] Next, the collected game footage is analyzed. Specifically, using the OpenCV library, a video analysis algorithm is applied to identify player movements, positioning, and ball trajectory. A deep learning model is then used to detect the ball's trajectory. Based on the analyzed data, characteristic player movements and tactical patterns are extracted and recorded in a database.
[1296] Based on the analysis data, the server uses the TensorFlow library to build a machine learning model, which can predict the actions that professional players will take in specific situations. This model is then used to generate individually customized practice scenarios based on the user's practice data and skill level. For example, if a user is weak at backhand returns, the server will create a scenario that focuses on practicing that aspect.
[1297] Terminal
[1298] The device performs initial calibration of the sensors and racket to obtain accurate position data. The device then uses the Kinect sensor and motion capture system to calibrate the position information of the user's body and racket, completing the initial setup. After that, the sensor information continues to be sent to the server in real time.
[1299] Next, the terminal displays the simulation data from the server on the VR goggles. This can be done using a VR device such as Oculus Rift. The user puts on the VR goggles and practices swinging the racket in a virtual reality environment. The user can practice by imitating the movements of professional players and receive feedback in real time.
[1300] User
[1301] Users wear VR goggles and practice in a virtual reality environment. For example, they can experience a simulated transition from a serve return to a net play performed by a professional player, imitating their movements. During the actual practice, the user's movements are captured via a Kinect sensor and a motion capture system.
[1302] The real-time collected movement data is sent to a server, which analyzes it and compares it with the data of professional players. The server generates feedback based on the results and displays it on the VR goggles via the device. This allows users to receive real-time advice on how to improve their movements and tactics.
[1303] Specific examples
[1304] For example, if a user wants to learn how a professional tennis player plays a game, the server collects match data from famous players and identifies long rallies and important points. The server analyzes the data to extract players' movements, positioning, and in-match strategies. Based on the user's past practice data, it selects the specific scene to practice next (e.g., return game tactics). The device accurately records the user's racket movements and completes calibration. The user puts on VR goggles and swings the racket in a virtual reality environment, imitating the movements of a professional. The server analyzes the user's movements and provides feedback. The device displays the feedback in real time, allowing the user to review and practice again.
[1305] Examples of prompt statements
[1306] "Can you give me an example of Python code that analyzes video footage of professional tennis players and builds a model that learns their tactics and player movements during a match?"
[1307] Thus, the present invention provides an effective means for learning how professional players play a game and for practical training in situational judgment and strategy during a game.
[1308] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1309] Step 1:
[1310] Match data collection
[1311] The server collects professional tennis players' match data from external sources. Specifically, it sends API requests to the official ATP and WTA databases to retrieve past match data. The input data are API request parameters, and the output data are the captured match footage, player movement data, ball trajectory data, and positioning data. This data is stored in a local database.
[1312] Step 2:
[1313] Game footage analysis
[1314] The server applies a video analysis algorithm to analyze the collected game footage. Specifically, it uses the OpenCV library to identify the player's position for each frame and a deep learning model to detect the ball's trajectory. The input data is the collected game footage, and the output data is data on player movements, positioning, and ball trajectory. This allows players' characteristic movements and tactical patterns to be extracted and recorded in a database.
[1315] Step 3:
[1316] Extracting player movements and tactics
[1317] The server extracts the players' characteristic movements and tactical patterns based on the analyzed video data. For example, it uses a clustering algorithm to classify the players' positioning during a rally and the course of the ball. The input data is the analyzed video data, and the output data is the extracted characteristic movements and tactical patterns. This data is recorded in a database.
[1318] Step 4:
[1319] Building a machine learning model
[1320] The server applies a machine learning algorithm to the extracted data to model the progress of the game. Specifically, it uses the TensorFlow library to generate a model for predicting the behavior of professional players. The input data is the extracted feature data, and the output data is the model for predicting the behavior of professional players. This makes it possible to predict the behavior of professional players under specific circumstances.
[1321] Step 5:
[1322] Generating individual practice scenarios
[1323] The server generates an individually customized practice scenario based on the user's practice data and skill level. For example, if the user is not good at backhand returns, it creates a practice scenario that corresponds to that situation. The input data is the user's practice data and skill level, and the output data is the customized practice scenario.
[1324] Step 6:
[1325] Setting up the VR environment
[1326] The device performs initial calibration of the sensors and racket used by the user to obtain accurate position data. Specifically, it calibrates the position information of the user's body and racket using a Kinect sensor and motion capture system. The input data is the user's initial position information, and the output data is the calibrated position data.
[1327] Step 7:
[1328] Sending real-time data
[1329] The device captures the user's movements in real time and sends the data to the server. The input data is the user's movement data, and the output data is the real-time movement data sent to the server, which includes sensor information and user behavior data.
[1330] Step 8:
[1331] Generate and view simulations
[1332] The server generates a match simulation based on the user's movements and displays the generated simulation on the device's VR goggles. The input data is the user's movement data transmitted in real time, and the output data is the simulation data displayed on the VR goggles.
[1333] Step 9:
[1334] Providing Feedback
[1335] The server analyzes the user's performance and provides feedback by comparing it with data from professional players. Specifically, it evaluates the ball's angle, speed, positioning, etc. in detail and generates areas for improvement and advice. The input data is the user's performance data, and the output data is feedback data. The device displays this feedback on the VR goggles, allowing the user to check it in real time.
[1336] (Application example 1)
[1337] 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."
[1338] In conventional driving skill improvement and autonomous vehicle testing, it has been difficult to efficiently learn and reproduce the advanced driving skills and emergency response capabilities of professional drivers. Furthermore, there have been limited systems that provide real-time feedback to help users improve their driving skills. This has hindered the acquisition of driving skills and the improvement of autonomous driving systems.
[1339] 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.
[1340] In this invention, the server includes a means for collecting driving data from professional drivers, a means for analyzing the collected driving data and extracting information on each driver's steering, braking, and accelerator operations and vehicle behavior, and a means for generating an optimal driving training scenario for the user based on the extracted information. This allows users to learn professional driver driving techniques and emergency response methods in real time and repeatedly practice them in a virtual reality environment.
[1341] "Match data" refers to information relating to the movements of players in sports competitions, the trajectory of the ball, positioning, tactics, and so on.
[1342] A "professional driver" is a driver who drives a vehicle professionally and has advanced driving skills and experience.
[1343] "Driving data" refers to a series of information related to vehicle driving, and specifically includes data on steering operation, braking operation, accelerator operation, vehicle behavior, and the like.
[1344] "Virtual reality goggles" are a device that allows users to experience a virtual reality environment and is a head-mounted display that provides visual and auditory information.
[1345] "Data analysis" is the act of processing collected data using analytical techniques to find necessary patterns and relationships.
[1346] A "driving training scenario" is a series of exercises and training content designed to improve driving skills and is customized to suit the user's skills and requirements.
[1347] "Real-time feedback" refers to evaluations and advice provided instantly in response to a user's actions and reactions.
[1348] "Steering operation" refers to the operation of the steering wheel to control the direction of travel of the vehicle.
[1349] "Brake operation" means the operation of the brake mechanism to slow or stop the vehicle.
[1350] "Accelerator operation" refers to operation of the accelerator pedal to increase the speed of the vehicle.
[1351] "Vehicle behavior" refers to the movement and behavior of a vehicle while driving, and specifically includes acceleration, deceleration, turning, stability, etc.
[1352] A "virtual reality environment" is a computer-generated, three-dimensional virtual world in which a user is visually and auditorily immersed.
[1353] The system that realizes this application example is an advanced virtual reality system for learning and efficiently training driving skills of professional drivers. The system includes the following means:
[1354] The server collects driving data from professional drivers, including game footage, steering, braking, and acceleration data, and vehicle behavior data. To analyze the collected driving data, the server uses a video analysis algorithm (specifically, OpenCV). Through video analysis, the server extracts the professional drivers' characteristic operations and driving patterns and records them in a database.
[1355] The server then builds machine learning models (specifically TensorFlow and Scikit-learn) based on the extracted data to generate driving scenarios that are tailored to each user and include training content for emergency responses and challenging driving situations (e.g., merging onto a highway, driving in bad weather).
[1356] The device includes virtual reality goggles and a driving simulator. Users wear the virtual reality goggles and operate the driving simulator to train. Operation data from the driving simulator is sent to a server in real time. The server analyzes the user's driving data and compares it with that of professional drivers. The analysis results are fed back to the user, providing them with suggestions for improvement and appropriate advice.
[1357] For program processing, a high-performance server (such as AWS EC2 or Google Cloud Compute Engine) is used. The video analysis algorithm OpenCV is applied for data analysis, and TensorFlow and Scikit-learn are used to build machine learning models. MySQL and MongoDB are used for databases, and Unity and Unreal Engine are used to display feedback.
[1358] As a concrete example, consider a scenario in which a user learns emergency braking operations from a professional driver. The server collects and analyzes emergency braking operation data. It then records emergency braking patterns in a database. The user puts on virtual reality goggles and uses a driving simulator to train in emergency braking operations. The server analyzes the user's operation data and compares it with the operations of the professional driver to provide feedback. The user receives the feedback and retrains to improve their driving skills.
[1359] An example prompt is:
[1360] "Collect and analyze data on emergency braking maneuvers performed by professional drivers on highways, and model their operation patterns using a machine learning model. Then, use that model to generate customized practice scenarios and create a program to train users in a VR environment."
[1361] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1362] Step 1:
[1363] The server collects driving data from professional drivers. The collected data includes driving footage, steering, braking, and acceleration operations, as well as vehicle behavior. This data is obtained from external sources and stored in a database. The input is the driving data of professional drivers, and the output is driving data organized for analysis.
[1364] Step 2:
[1365] The server applies a video analysis algorithm (specifically, OpenCV) to analyze the collected driving data. It identifies the driver's actions and vehicle movements for each frame and obtains detailed data on steering, braking, accelerating, and vehicle behavior. The input is the collected driving data, and the output is the analyzed specific actions and behavior data.
[1366] Step 3:
[1367] The server uses the analyzed data to build a machine learning model (specifically, TensorFlow or Scikit-learn). The model is used to predict the actions a professional driver will take in a specific driving situation. The input is the analyzed driving data, and the output is a machine learning model that predicts driving patterns.
[1368] Step 4:
[1369] The server generates driving training scenarios based on the user's driving data and skill level. The generated scenarios include training content for emergency response methods and difficult driving situations. The input is a machine learning model and the user's skill data, and the output is a customized driving training scenario.
[1370] Step 5:
[1371] The terminal performs initial calibration of the driving simulator used by the user, and performs settings to accurately acquire the user's operation data. The input is the calibration data of the driving simulator, and the output is the initially configured driving simulator.
[1372] Step 6:
[1373] The user wears virtual reality goggles and operates a driving simulator to train. The device transmits the user's operation data to the server in real time. The input is the user's operation data during training, and the output is the data transmitted to the server.
[1374] Step 7:
[1375] The server analyzes the user's operation data and compares it with that of professional drivers. It then makes a specific evaluation and generates appropriate advice and suggestions for improvement. The input is the user's operation data, and the output is the analysis results and feedback data.
[1376] Step 8:
[1377] The terminal displays the feedback data from the server on the virtual reality goggles. The user checks the feedback and understands the areas for improvement. The input is the feedback data from the server, and the output is the feedback displayed on the virtual reality goggles.
[1378] Through the above process, users can learn the driving techniques of professional drivers in real time and repeatedly practice in a virtual reality environment.
[1379] 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.
[1380] The present invention relates to a system that allows users to learn professional gameplay in real time and train effectively. Furthermore, by combining this system with an emotion engine, feedback can be provided based on the user's emotional state, allowing them to maintain motivation while practicing. Based on the following configuration, we will specifically explain the collection and analysis of game data, the generation of practice scenarios, the real-time acquisition and analysis of user movements, the simulation and feedback using virtual reality, and the implementation of the emotion engine.
[1381] Program processing
[1382] 1. Data Collection:
[1383] The server collects match data of professional tennis players from external sources, including match footage, player movement data, ball trajectory data, and positioning data.
[1384] 2. Data Analysis:
[1385] The server applies video analysis algorithms to analyze the collected game footage, recognizing player movements, positioning, and ball trajectory. Specifically, it identifies the player's position for each frame and tracks the ball's trajectory.
[1386] The analysis results are stored in a database, and detailed information about each point (e.g., ball angle, speed, position, etc.) is recorded.
[1387] 3. Building the learning model:
[1388] The server then applies machine learning algorithms to the analyzed data to model the course of a match, for example, creating a model that predicts the actions of a professional player in a given situation.
[1389] 4. Generating practice scenarios:
[1390] The server generates personalized training scenarios based on the user's training data and skill level, including training content based on specific situations during a match.
[1391] 5. Setting up the VR environment:
[1392] The device performs an initial calibration of the sensors and rackets used by the user to obtain accurate position data.
[1393] The device transmits the user's captured movements to a server in real time, and the simulation data from the server is displayed on the VR goggles.
[1394] 6. Practical exercises:
[1395] Users put on VR goggles and practice swinging a racket in a virtual reality environment, trying out the same movements as professional players and receiving real-time feedback.
[1396] The device uses sensors to capture the user's movements and transmits the data to a server in real time.
[1397] 7. Feedback and Improvement:
[1398] The server analyzes the user's movements and compares them with those of professional players, specifically evaluating the ball's angle, speed, positioning, and other factors.
[1399] The server generates feedback based on the user's performance and displays it on the VR goggles via the device.
[1400] 8. Emotion engine integration:
[1401] The terminal captures the user's facial expressions, voice, and biometric information and sends them to the emotion engine.
[1402] The emotion engine analyzes this information and recognizes the user's emotional state.
[1403] The server adjusts the feedback content based on the analysis results of the emotion engine and provides appropriate advice according to the user's emotions.
[1404] Specific examples
[1405] For example, consider a scenario in which a user is learning how a professional tennis player plays a match.
[1406] 1. The server collects match data from well-known players and identifies long rallies and important points.
[1407] 2. The server analyzes the data and extracts player movements, positioning, and in-game strategies.
[1408] 3. The server selects a specific scene (e.g., return game tactics) to practice next based on user C's past practice data.
[1409] 4. The device accurately records User C's racket movements and completes the calibration.
[1410] 5. The user puts on the VR goggles and swings the racket in a virtual reality environment, mimicking the movements of a professional, for example, practicing the transition from a serve return to net play.
[1411] 6. The device captures user C's facial expressions, voice, and biometric information and sends them to the server.
[1412] 7. The emotion engine analyzes the data and recognizes that User C is feeling impatient or anxious.
[1413] 8. The server generates feedback based on user C's emotional state (e.g., "Relax and try again") and displays it on the VR goggles via the terminal.
[1414] In this way, the present invention provides an effective means for learning how professional players play games and for practical training in situational judgment and strategy during a game, and furthermore, it can utilize an emotion engine to maintain the user's motivation.
[1415] The processing flow will be explained below.
[1416] Step 1:
[1417] The server collects match data of professional tennis players, including match footage, player movement data, ball trajectory data, and positioning data, from external sources.
[1418] Step 2:
[1419] The server applies video analysis algorithms to analyze the collected game footage, identifying the player's position and tracking the ball's trajectory for each frame to recognize the player's movements, positioning, and ball trajectory.
[1420] Step 3:
[1421] The server then applies machine learning algorithms to model the course of a match, creating a model that predicts how a professional player will act in a given situation.
[1422] Step 4:
[1423] The server generates personalized training scenarios based on the user's training data and skill level, including training content tailored to specific situations during a match.
[1424] Step 5:
[1425] The device will perform an initial calibration of the sensors and rackets used by the user to obtain accurate position data, and after calibration is complete, it will be able to accurately track the user's movements.
[1426] Step 6:
[1427] The device transmits the user's captured movements to the server in real time, and simultaneously displays the simulation data from the server on the VR goggles.
[1428] Step 7:
[1429] Users put on VR goggles and practice swinging a racket in a virtual reality environment, trying out the same movements as professional players and receiving real-time feedback.
[1430] Step 8:
[1431] The device uses sensors to capture the user's movements and transmits the data in real time to a server, including detailed data such as the user's ball-hitting angle, speed, and positioning.
[1432] Step 9:
[1433] The device captures the user's facial expressions, voice, and biometric information using devices such as cameras, microphones, and heart rate sensors to gather data to recognize the user's emotional state.
[1434] Step 10:
[1435] The emotion engine analyzes collected facial expressions, voice, and biometric information to recognize the user's emotional state, for example, determining whether the user is feeling anxious or impatient.
[1436] Step 11:
[1437] The server adjusts the feedback content based on the analysis results of the emotion engine. For example, if the user is feeling impatient, it generates advice that takes into account the user's emotions, such as "Relax and try again."
[1438] Step 12:
[1439] The device displays the feedback data from the server on the VR goggles, allowing the user to see the results and understand areas for improvement. Appropriate feedback based on emotions is provided to maintain the user's motivation.
[1440] Example 2
[1441] 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."
[1442] Conventional training systems do not adequately provide users with the means to effectively learn how professional players play. Furthermore, they do not provide feedback that takes into account the user's emotional state, making it difficult to maintain motivation. The present invention aims to solve these problems by providing a system that allows users to learn how professional players play in real time and train effectively.
[1443] The identification processing 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 collecting game data, means for analyzing the collected game data and extracting information on the ball trajectory, positioning, and tactics of each player, means for generating an optimal practice scenario for the user based on the extracted information, means for acquiring user input data and transmitting it to the server in real time, means for generating a game simulation based on the user's movements, means for displaying the generated simulation on a virtual reality display device, means for analyzing the user's performance and providing feedback, and means for analyzing the user's emotional state and adjusting the feedback. This allows the user to learn how professional players play in real time and train effectively, and also provides feedback according to the user's emotional state, allowing the user to practice while maintaining motivation.
[1444] "Match data" refers to video footage of professional tennis players' matches, player movement data, ball trajectory data, positioning data, and other tactical information.
[1445] "Collection Method" means any combination of hardware and software used to automatically obtain and store Match Data from external sources.
[1446] "Means of analysis" refers to technology that applies image analysis algorithms to collected match data to extract information such as each player's positioning and the trajectory of the ball.
[1447] "Means for generating a practice scenario" refers to an algorithm and processing device for creating optimal practice content for the user based on the information obtained through analysis.
[1448] "Means for acquiring input data and transmitting it in real time" refers to devices and technologies for capturing user movements with sensors and transmitting that data to a server in real time.
[1449] "Means for generating a match simulation" refers to a processing device and algorithms for generating a match simulation in a virtual reality environment based on user movement data.
[1450] "Virtual reality display device" refers to a device such as a head-mounted display or goggles that allows a user to visually experience a simulation in a virtual reality environment.
[1451] "Means for analyzing performance and providing feedback" refers to processing devices and algorithms for analyzing the user's movement data, comparing it with professional athletes, and providing feedback of the results to the user.
[1452] "Means for analyzing emotional state and adjusting feedback" refers to technology and devices for analyzing a user's emotional state from facial expressions, voice, biometric information, etc., and adjusting the feedback content based on that.
[1453] The present invention relates to a system that allows users to learn professional gameplay in real time and train effectively. This system incorporates an emotion engine that provides feedback according to the user's emotional state, allowing the user to maintain motivation while practicing. Specific embodiments are described below.
[1454] First, the server collects match data from professional tennis players. Match data includes match footage, player movement data, ball trajectory data, and positioning data. This data is automatically obtained from external sources and stored in cloud storage (e.g., AWS S3). Web scraping technology (e.g., BeautifulSoup) is used to collect the data.
[1455] The server then applies a video analysis algorithm (e.g., OpenCV) to analyze the collected game footage to recognize player movements, positioning, and ball trajectory. The analysis is performed by identifying the player's position for each frame and tracking the ball's trajectory. The analysis results are stored in a database (e.g., MySQL), recording details such as ball angle, speed, and location.
[1456] The server then applies machine learning algorithms (e.g., TensorFlow) to the analyzed data to create a model that predicts the behavior of professional players. The model learns the players' movement patterns and predicts their reactions to specific situations.
[1457] The server then generates a personalized practice scenario based on the user's practice data and skill level, including analyzing the user's past practice data to identify areas for improvement.
[1458] The device performs an initial calibration of the sensors and racket used by the user and obtains accurate position data. The user completes the calibration by performing a predetermined movement using a sensor (e.g., Kinect) connected to the device. The device transmits the captured movement to a server in real time, and the simulation data from the server is displayed on a virtual reality display device (e.g., Oculus Rift).
[1459] The user wears a virtual reality display device and practices swinging a racket in a virtual reality environment. They try out the same movements as professional players and receive real-time feedback. The device captures the user's movements with sensors and sends the data to a server in real time.
[1460] The server analyzes the user's movements and compares them with those of professional players. It performs detailed evaluations of the ball's angle, speed, positioning, etc., and generates feedback that is displayed on a virtual reality display via the device. The device also captures the user's facial expressions, voice, and biometric information, and sends it to an emotion engine (e.g., IBM Watson Tone Analyzer). The emotion engine analyzes this information and recognizes the user's emotional state.
[1461] Based on the analysis results of the emotion engine, the server adjusts the feedback content and provides appropriate advice according to the user's emotions.
[1462] To illustrate, consider the following scenario:
[1463] 1. The server collects match data from professional tennis players and identifies long rallies and important points from the data.
[1464] 2. The server analyzes the data and extracts player movements, positioning, and in-game strategies.
[1465] 3. The server selects a specific scene (e.g., return game tactics) to practice next based on user C's past practice data.
[1466] 4. The device accurately records User C's racket movements and completes the calibration.
[1467] 5. The user wears a virtual reality display device and swings a racket in a virtual reality environment, mimicking the movements of a professional, for example, practicing the transition from a serve return to a net play.
[1468] 6. The device captures user C's facial expressions, voice, and biometric information and sends them to the server.
[1469] 7. The emotion engine analyzes this data and recognizes that User C is feeling impatient or anxious.
[1470] 8. The server generates feedback based on the emotional state of user C (e.g., "Relax and try again") and displays it on the virtual reality display device via the terminal.
[1471] An example of a prompt sentence to be input to the generative AI model is shown below.
[1472] Create a VR simulation that recreates specific scenes from a professional tennis match and allows users to practice in those scenes. Generate practice scenarios tailored to the user's skill level and provide real-time feedback. Also, analyze the user's emotional state and provide motivational advice based on the results.
[1473] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1474] Program processing steps
[1475] Step 1: Gathering match data
[1476] 1. The server automatically retrieves professional tennis player match data from external sources.
[1477] Input: Match URL or API endpoint
[1478] Processing: Gather game footage and statistics using web scraping technology (e.g. BeautifulSoup).
[1479] Output: Collected match data (video files, movement data, ball trajectory data, positioning data)
[1480] Specific operation: The server downloads the video file from the specified URL and saves it in AWS S3 cloud storage.
[1481] Step 2: Analyzing match data
[1482] 2. The server applies image analysis algorithms (e.g., OpenCV) to analyze the collected game footage.
[1483] Input: Collected game footage
[1484] Processing: Track player location and ball trajectory for each frame to recognize ball launch angle, speed, positioning, etc.
[1485] Output: Detailed match data as analysis results (stored in a database)
[1486] Specific operation: The server analyzes the video file frame by frame and writes the results to a MySQL database.
[1487] Step 3: Building a learning model
[1488] 3. The server applies a machine learning algorithm (e.g., TensorFlow) to the analyzed data to create a model.
[1489] Input: Match data for analysis results
[1490] Processing: Using machine learning algorithms to train models that predict how players will behave in specific situations.
[1491] Output: Behavioral prediction model
[1492] What happens: The server executes the machine learning task and saves the training results as a model file.
[1493] Step 4: Generate a training scenario
[1494] 4. The server generates an individually customized practice scenario based on the user's practice data and skill level.
[1495] Input: User's past practice data and skill assessment
[1496] Processing: Algorithms analyze user data, identify needed improvements, and generate practice scenarios.
[1497] Output: A customized training scenario
[1498] Specific operation: The server retrieves the user's data through a query and compiles the generated scenario in HTML format.
[1499] Step 5: Setting up the VR environment
[1500] 5. The device performs an initial calibration of the sensors and rackets used by the user.
[1501] Input: Sensor capture data and a series of user actions
[1502] Processing: The calibration algorithm corrects the sensor position and performs the initial setup.
[1503] Output: Accurate position data after calibration is complete
[1504] Specific operation: The device software acquires data from the sensor and prompts the user to perform calibration.
[1505] Step 6: Practice
[1506] 6. The user wears the virtual reality display device and practices swinging a racket in the virtual reality environment.
[1507] Input: User movement, virtual reality environment settings
[1508] Processing: User movements are captured in real time and combined with simulation data.
[1509] Output: User movement data in the VR environment
[1510] Specific actions: The user wears the virtual reality display device and performs an action, which is captured by the device's sensors.
[1511] Step 7: Feedback and Improvement
[1512] 7. The server analyzes the user's movements and compares them with those of professional players.
[1513] Input: User behavior data
[1514] Processing: Analysis algorithms evaluate the ball's angle, speed, positioning, etc. and compare it with professional data.
[1515] Output: Improvements and Feedback
[1516] Specific operation: The server generates feedback content based on the analysis results and sends it to the device in real time.
[1517] Step 8: Integrating the Emotion Engine
[1518] 8. The device captures the user's facial expressions, voice, and biometric information and sends them to the emotion engine.
[1519] Input: User's facial expression data, voice data, biometric information
[1520] Processing: Apply sentiment analysis algorithms to recognize the user's emotional state.
[1521] Output: Emotion analysis results
[1522] Specific operation: The device sends the captured data to the emotion engine and obtains the analysis results.
[1523] Step 9: Adjust your feedback based on your emotions
[1524] 9. The server adjusts the feedback content based on the analysis results of the emotion engine.
[1525] Input: Sentiment analysis results
[1526] Processing: Adjusting the feedback to fit your emotional state.
[1527] Output: User-friendly feedback
[1528] Specific operation: The server adjusts the feedback content and displays it on the virtual reality display device via the terminal.
[1529] (Application example 2)
[1530] 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."
[1531] In current training systems, it is difficult for users to learn professional movements in real time and accurately reproduce them. Furthermore, to maintain users' motivation and continue effective training, appropriate feedback based on their emotional state is required. However, current systems have difficulty accurately analyzing a user's emotional state and providing feedback based on that analysis. Therefore, there is a need for a system that allows users to receive appropriate advice based on their emotions, enabling them to train effectively while maintaining their motivation.
[1532] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[1533] In this invention, the server includes means for collecting game data, means for analyzing the collected game data to extract information on each player's hitting trajectory, positioning, and tactics, means for generating an optimal practice scenario for the user based on the extracted information, means for acquiring user input data and transmitting it to the server in real time, means for generating a game simulation based on the user's movements, means for displaying the generated simulation on virtual reality goggles, means for analyzing the user's performance and providing feedback, an emotion engine for capturing the user's facial expressions, voice, and biological information and analyzing the user's emotional state, and means for adjusting the feedback content based on the analysis results of the emotion engine and providing appropriate advice. This allows the user to learn the movements of professional players in real time and receive appropriate feedback according to their emotional state, thereby enabling them to train effectively while maintaining their motivation.
[1534] "Game Data" means data containing information about an athlete's game, including game footage, player movements, strike trajectories, positioning, tactics, etc.
[1535] The "analysis means" is a means for analyzing the collected match data and extracting information such as each player's movements, ball trajectory, positioning, tactics, etc.
[1536] A "practice scenario" is a training plan customized based on the user's skill level and practice data.
[1537] "Input data" refers to data such as actions and performance entered by the user, and is sent to the server in real time.
[1538] "Game Simulation" allows users to practice in virtual reality in a virtual game environment that is generated based on the user's movements.
[1539] "Virtual reality goggles" are devices worn by users to visually experience a virtual environment.
[1540] "Feedback" is information or messages that evaluate a user's performance and provide suggestions or advice for improvement.
[1541] The "emotion engine" is software that analyzes the user's facial expressions, voice, and biometric information to recognize their emotional state.
[1542] "Appropriate advice" is messages of improvement and motivation provided based on the user's performance and emotional state.
[1543] This invention relates to a system that allows users to learn professional fitness instruction in real time and train effectively. Based on the following aspects, we will specifically explain data collection and analysis, creation of training scenarios, real-time acquisition and analysis of user movements, simulation and feedback using virtual reality, and implementation of an emotion engine.
[1544] First, the server collects training data from professional fitness coaches from external sources. This includes training footage, instructional content, and movement data. The collected data is analyzed using video analysis algorithms (such as OpenCV or dlib) to recognize the coach's movements for each frame and extract detailed information such as form, speed, and position. The analysis results are stored in a database.
[1545] The server uses this analysis data to build a learning model using a generative AI model (such as TensorFlow) to model a professional coaching style. Based on the user's past training data, the server generates a personalized training scenario, including specific exercises to practice next and fitness tips.
[1546] The device performs initial calibration of the sensors used by the user to obtain accurate position data, captures the user's movements in real time, and transmits the data to a server, which then displays the simulated data on the VR goggles (e.g., Oculus Rift or HTC Vive).
[1547] The user wears VR goggles and performs exercises in a virtual reality environment under the guidance of a fitness coach, such as training the correct form for plank exercises or squats. The user's movements are captured by sensors and the data is sent to a server in real time.
[1548] The server analyzes the user's performance and compares it with the movements of a professional coach. Detailed evaluations are made of form accuracy, speed, position, and other factors, and feedback is generated. This feedback is displayed on the VR goggles via the device, providing the user with areas for improvement and appropriate advice.
[1549] Furthermore, the emotion engine captures and analyzes the user's facial expressions, voice, and biometric information. Based on this information, the emotion engine recognizes the user's emotional state (e.g., impatience or anxiety) and sends it to the server. The server then adjusts the feedback content based on the emotion engine's analysis and generates appropriate messages to maintain the user's motivation. For example, the message might be, "Relax and try again" or "You're doing well, keep going."
[1550] Specific examples
[1551] For example, consider a scenario in which a user is learning a plank exercise from a fitness coach.
[1552] The server collects training footage of fitness coaches from an extensive database and identifies the correct plank form from the footage.
[1553] The server analyzes the collected footage and extracts the coach's movements and form.
[1554] The server selects a plank exercise practice scenario based on the user's past training data.
[1555] The device will accurately record the user's movements and complete the calibration.
[1556] The user puts on VR goggles and performs planks in a virtual reality environment following the coach's instructions.
[1557] The device captures the user's facial expressions, voice, and biometric information and sends it to the server.
[1558] The emotion engine analyzes this data and recognizes that the user is feeling impatient.
[1559] The server generates feedback based on the user's emotional state and displays it on the VR goggles via the device, saying, "Relax and try again."
[1560] Example prompt sentence:
[1561] "I want to learn plank exercises from a fitness coach and get feedback to help me maintain proper form. I also want emotional analysis based on my heart rate and facial expressions."
[1562] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1563] Step 1:
[1564] Match data collection
[1565] Input: Training footage and instructional content of professional fitness coaches from an external data source.
[1566] Output: The raw training data.
[1567] Specific operation: The server collects training footage, movement data, and instructional content of professional fitness coaches from external data sources (e.g., fitness community APIs) and stores them in a database.
[1568] Step 2:
[1569] Data analysis
[1570] Input: Unparsed training data.
[1571] Output: Analysis results for each frame (details on form, speed, position, etc.).
[1572] Specific operation: The server analyzes the collected training footage using video analysis algorithms such as OpenCV and dlib to recognize the coach's movements for each frame. It also extracts detailed information such as form, speed, and position and records it in a database.
[1573] Step 3:
[1574] Building a learning model
[1575] Input: Training data with analysis results.
[1576] Output: A learning model that models a professional coaching style.
[1577] Specific operation: The server uses machine learning algorithms such as TensorFlow to build a learning model based on the analyzed data and models the coaching style of the professional. This creates a model that can predict the coach's teaching methods and movements in specific situations.
[1578] Step 4:
[1579] Generating practice scenarios
[1580] Input: Learning model, user's past training data.
[1581] Output: The optimal practice scenario for the user.
[1582] Specific Movements: The server combines the learning model with the user's past training data to generate personalized practice scenarios, including, for example, proper form for a plank exercise and specific exercise content.
[1583] Step 5:
[1584] Setting up the VR environment
[1585] Input: User sensor data.
[1586] Output: Initial calibrated sensor data.
[1587] What happens: The device initializes the sensors you use and calibrates them to obtain accurate location data. This configuration allows the device to accurately capture your movements.
[1588] Step 6:
[1589] Actual training
[1590] Input: Practice scenario, user's real-time behavior data.
[1591] Output: User behavior data during training.
[1592] Specific Action: The user wears VR goggles and performs exercises in a virtual reality environment under the guidance of a fitness coach, such as practicing the correct form for plank exercises or squats. The device also captures the user's movements and transmits the data to a server in real time.
[1593] Step 7:
[1594] Providing Feedback
[1595] Input: User performance data.
[1596] Output: Feedback and advice.
[1597] Specific Actions: The server analyzes the user's performance and compares it with the movements of a professional coach. Specifically, it evaluates the accuracy of the form, speed, position, etc. in detail and generates feedback. This feedback is displayed on the VR goggles via the device, providing the user with areas for improvement and appropriate advice.
[1598] Step 8:
[1599] Emotion engine integration
[1600] Input: User's facial, voice and biometric information.
[1601] Output: Analysis of the user's emotional state and tailored feedback.
[1602] Specific operation: The device captures the user's facial expressions, voice, and biometric information and sends them to the emotion engine. The emotion engine analyzes this information and recognizes the user's emotional state (e.g., impatience or anxiety). The server adjusts the feedback content based on the emotion engine's analysis results and generates appropriate messages to maintain the user's motivation.
[1603] 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.
[1604] 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.
[1605] 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.
[1606] 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.
[1607] 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.
[1608] 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.
[1609] 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).
[1610] 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.
[1611] 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."
[1612] 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.
[1613] 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).
[1614] 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.
[1615] 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.
[1616] 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.
[1617] 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.
[1618] 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.
[1619] 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.
[1620] 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.
[1621] 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.
[1622] 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.
[1623] 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.
[1624] The following is further disclosed regarding the above embodiment.
[1625] (Claim 1)
[1626] a means for collecting match data;
[1627] A means of analyzing the collected match data to extract information about each player's hitting course, positioning, and tactics;
[1628] A means for generating an optimal practice scenario for a user based on the extracted information;
[1629] A means for acquiring user input data and transmitting it to a server in real time;
[1630] means for generating a match simulation based on a user's movements;
[1631] means for displaying the generated simulation on virtual reality goggles;
[1632] a means for analyzing user performance and providing feedback;
[1633] A system including:
[1634] (Claim 2)
[1635] 2. The system according to claim 1, wherein the analysis means uses a video analysis algorithm to recognize the movements of the players and obtain data on their positioning and ball trajectory.
[1636] (Claim 3)
[1637] 2. The system according to claim 1, wherein the feedback providing means displays a comparison result between the user's movements and those of a professional, and provides points for improvement and appropriate advice.
[1638] "Example 1"
[1639] (Claim 1)
[1640] a means for collecting match data;
[1641] A means of analyzing the collected match data to extract information about each player's hitting course, positioning, and tactics;
[1642] A means for generating an optimal practice scenario for a user based on the extracted information;
[1643] A means for acquiring user input data and transmitting it to a server in real time;
[1644] means for generating a match simulation based on a user's movements;
[1645] means for displaying the generated simulation on virtual reality goggles;
[1646] a means for analyzing user performance and providing feedback;
[1647] a means for customizing practice scenarios based on a user's practice data and skill level;
[1648] A means for measuring user movements in real time and transmitting the data to a server;
[1649] A system including:
[1650] (Claim 2)
[1651] 2. The system according to claim 1, wherein the analysis means uses a video analysis algorithm to recognize the movements of the players and obtain data on their positioning and ball trajectory.
[1652] (Claim 3)
[1653] 2. The system according to claim 1, wherein the feedback providing means displays a comparison result between the user's movements and those of a professional, and provides points for improvement and appropriate advice.
[1654] "Application Example 1"
[1655] (Claim 1)
[1656] a means for collecting match data;
[1657] A means of analyzing the collected match data to extract information about each player's hitting course, positioning, and tactics;
[1658] A means for generating an optimal practice scenario for a user based on the extracted information;
[1659] A means for acquiring user input data and transmitting it to a server in real time;
[1660] means for generating a match simulation based on a user's movements;
[1661] means for displaying the generated simulation on virtual reality goggles;
[1662] a means for analyzing user performance and providing feedback;
[1663] A means for collecting driving data from professional drivers;
[1664] A means for analyzing the collected driving data and extracting information regarding each driver's steering operation, braking operation, accelerator operation, and vehicle behavior;
[1665] A means for generating an optimal driving training scenario for a user based on the extracted information;
[1666] A means for acquiring operation data of the user's driving simulator and transmitting the data to a server in real time;
[1667] means for generating a driving simulation based on a user's operation;
[1668] a means for displaying the generated driving simulation on virtual reality goggles;
[1669] A system including:
[1670] (Claim 2)
[1671] 2. The system according to claim 1, wherein the analysis means recognizes driver operations using a video analysis algorithm and acquires data on steering operations, braking operations, accelerator operations, and vehicle behavior.
[1672] (Claim 3)
[1673] 2. The system according to claim 1, wherein the feedback providing means displays a comparison result between the user's driving operation and that of a professional driver, and provides points for improvement and appropriate advice.
[1674] "Example 2: Combining Emotion Engines"
[1675] (Claim 1)
[1676] a means for collecting match data;
[1677] A means of analyzing the collected match data to extract information about each player's hitting course, positioning, and tactics;
[1678] A means for generating an optimal practice scenario for a user based on the extracted information;
[1679] A means for acquiring user input data and transmitting it to a server in real time;
[1680] means for generating a match simulation based on a user's movements;
[1681] means for displaying the generated simulation on a virtual reality display device;
[1682] a means for analyzing user performance and providing feedback;
[1683] means for analyzing the user's emotional state and adjusting the feedback;
[1684] A system including:
[1685] (Claim 2)
[1686] 2. The system according to claim 1, wherein the analysis means uses an image analysis algorithm to recognize the movement of the player and obtain data on positioning and ball trajectory.
[1687] (Claim 3)
[1688] 2. The system according to claim 1, wherein the feedback providing means displays a comparison result between the user's movements and those of a professional, and provides points for improvement and appropriate advice.
[1689] "Application example 2 when combining emotion engines"
[1690] (Claim 1)
[1691] a means for collecting match data;
[1692] A means of analyzing the collected match data to extract information about each player's hitting course, positioning, and tactics;
[1693] A means for generating an optimal practice scenario for a user based on the extracted information;
[1694] A means for acquiring user input data and transmitting it to a server in real time;
[1695] means for generating a match simulation based on a user's movements;
[1696] means for displaying the generated simulation on virtual reality goggles;
[1697] a means for analyzing user performance and providing feedback;
[1698] An emotion engine that captures the user's facial expressions, voice, and biometric information and analyzes their emotional state;
[1699] A means for adjusting the feedback content based on the analysis results of the emotion engine and providing appropriate advice;
[1700] A system including:
[1701] (Claim 2)
[1702] 2. The system according to claim 1, wherein the analysis means uses a video analysis algorithm to recognize the movements of the players and obtain data on their positioning and ball trajectory.
[1703] (Claim 3)
[1704] 2. The system according to claim 1, wherein the feedback providing means displays a comparison result between the user's movements and those of a professional, and provides points for improvement and appropriate advice.
[1705] (Claim 4)
[1706] 2. The system of claim 1, wherein the emotion engine adjusts feedback content based on the user's emotional state and provides appropriate messages to maintain the user's motivation. [Explanation of symbols]
[1707] 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. a means for collecting match data; A means of analyzing the collected match data to extract information about each player's hitting course, positioning, and tactics; A means for generating an optimal practice scenario for a user based on the extracted information; A means for acquiring user input data and transmitting it to a server in real time; means for generating a match simulation based on a user's movements; means for displaying the generated simulation on virtual reality goggles; a means for analyzing user performance and providing feedback; A system including:
2. 2. The system according to claim 1, wherein the analysis means uses an image analysis algorithm to recognize the movement of the player and obtain data on the positioning and course of the ball.
3. 2. The system according to claim 1, wherein the feedback providing means displays a comparison result between the user's movements and those of a professional, and provides points for improvement and appropriate advice.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A