Golf sports analysis method, device, wearable device and storage medium
By collecting and analyzing golf motion sensor data, the problem of relying on manpower in the judgment of movement standards in the prior art is solved, and the effect of users to facilitate understanding of the details of their swing movements is achieved.
Patent Information
- Application Number
- CN202211323525.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-10-27
- Publication Date
- 2025-03-07
- Estimated Expiration
- 2042-10-27
AI Technical Summary
In the current golf training, the judgment of movement standards depends on manpower, which makes it difficult for players to grasp the accuracy of movement in a timely manner, and outsiders help correct it inaccurately.
By collecting motion sensor data in the wearable device, determining the current motion data of the user's wrist, calculating the motion sequence, and data analysis of the sequence to obtain the analysis results.
Users can easily and quickly understand the details of their golf swing, obtain analysis and feedback, and thus facilitate golfing exercise training.
Smart Images

Figure CN115645887B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of golf motion analysis, and in particular to a golf motion analysis method, apparatus, wearable device and computer-readable storage medium. Background Art
[0002] At present, with the progress of people's production and life and the continuous improvement of living standards, outdoor sports in leisure time have become the choice of more and more people. Among various outdoor sports, golf is a sport that is close to nature and suitable for all ages and is deeply loved by many people. In golf, whether the action is standard often affects the quality of the results. Being able to make a perfect set of golf hitting actions is the goal of many golf practitioners.
[0003] In existing golf training, the judgment of whether the movements are standard is often done by humans. It is difficult for players to grasp the information of whether their movements are standard in time, and prompts from others are likely to be inaccurate. Players often cannot grasp enough information about their movements during practice, which brings a lot of inconvenience to golf training. Summary of the invention
[0004] In view of the above problems, the present application provides a golf motion analysis method to solve the problems existing in the prior art.
[0005] According to one aspect of the present application, a golf motion analysis method is provided, which is characterized by comprising: collecting current sensor data of a motion sensor in a wearable device, and determining current motion data of a user's wrist based on the current sensor data; calculating a motion sequence based on the current motion data; and performing data analysis on the motion sequence to obtain an analysis result.
[0006] In an optional manner, the current sensor data of the motion sensor in the wearable device is collected, and the current motion data of the user's wrist is determined based on the current sensor data, including: collecting the first current three-axis acceleration in the gyroscope carrier coordinate system in the wearable device; calculating the first current three-axis acceleration according to the quaternion method to obtain a first differential matrix; updating the first differential matrix according to the fourth-order Runge-Kutta method to obtain a rotation quaternion matrix; normalizing the rotation quaternion matrix to obtain a normalized quaternion; calculating the normalized quaternion according to the strapdown matrix to obtain a first current attitude angle in the geographic coordinate system, and using the first current attitude angle as the current motion data, wherein the first current attitude angle includes a first pitch angle, a first roll angle, and a first heading angle.
[0007] In an optional manner, the current sensor data of the motion sensor in the wearable device is collected, and the current motion data of the user's wrist is determined based on the current sensor data, including: collecting a first current three-axis magnetic induction intensity in a magnetometer carrier coordinate system and a second current three-axis acceleration in an accelerometer carrier coordinate system in the wearable device; calculating the second current three-axis acceleration according to a strapdown matrix to obtain a second pitch angle and a second roll angle in a geographic coordinate system; converting and calculating the first current three-axis magnetic induction intensity into a second current three-axis magnetic induction intensity in the geographic coordinate system; calculating a second heading angle based on the second current three-axis magnetic induction intensity, taking the second pitch angle, the second roll angle, and the second heading angle together as a second current attitude angle, and taking the second current attitude angle as current motion data.
[0008] In an optional manner, the current sensor data of the motion sensor in the wearable device is collected, and the current motion data of the user's wrist is determined based on the current sensor data, including: collecting the first current three-axis acceleration in the gyroscope carrier coordinate system, the second current three-axis acceleration in the accelerometer carrier coordinate system, and the first current three-axis magnetic induction intensity in the magnetometer carrier coordinate system in the wearable device; calculating the first current three-axis acceleration according to the quaternion method to obtain a first differential matrix; updating the first differential matrix according to the fourth-order Runge-Kutta method to obtain a rotation quaternion matrix; normalizing the rotation quaternion matrix to obtain a normalized quaternion; calculating the normalized quaternion according to the strapdown matrix to obtain a ground The first pitch angle, the first roll angle and the first heading angle in the geographic coordinate system are obtained, and the first pitch angle, the first roll angle and the first heading angle are taken together as the first current attitude angle; the second current three-axis acceleration is calculated according to the strapdown matrix to obtain the second pitch angle and the second roll angle in the geographic coordinate system; the first current three-axis magnetic induction intensity is converted and calculated into the second current three-axis magnetic induction intensity in the geographic coordinate system; the second heading angle is calculated according to the second current three-axis magnetic induction intensity, and the second pitch angle, the second roll angle and the second heading angle are taken together as the second current attitude angle; the first current attitude angle and the second current attitude angle are fused and calculated to obtain the third current attitude angle, and the third current attitude angle is taken as the current motion data.
[0009] In an optional manner, the motion sequence is calculated based on the current motion data, including: calculating the current motion data according to a first-order difference method to obtain a velocity sequence; calculating the velocity sequence according to a first-order difference method to obtain a position sequence; and taking the velocity sequence and the position sequence together as the motion sequence.
[0010] In an optional manner, the current sensor data of the motion sensor in the wearable device is collected, and the current motion data of the user's wrist is determined based on the current sensor data, including: collecting time data of a timer in the wearable device; performing data analysis on the motion sequence to obtain an analysis result, including: performing data extraction on the motion sequence to obtain an angle coefficient and a speed coefficient; obtaining a time coefficient based on the time data and the motion sequence; using the time coefficient, the angle coefficient, and the speed coefficient together as a motion coefficient, and comparing the motion coefficient with the sample coefficient to obtain an analysis result.
[0011] In an optional manner, before the time coefficient, angle coefficient and speed coefficient are used together as motion coefficients and the motion coefficients are compared with the sample coefficients to obtain the analysis results, the golf motion analysis method further includes: acquiring sample angle data, sample time data and sample speed data as sample sensor data through a sample sensor, and determining sample motion data of the user's wrist according to the sample sensor data; calculating a sample motion sequence according to the sample motion data, the sample motion sequence including a sample speed sequence and a sample position sequence; calculating a sample angle coefficient, a sample time coefficient and a sample speed coefficient of the sample motion sequence, and using the sample angle coefficient, the sample time coefficient and the sample speed coefficient together as the sample coefficients; the time coefficient, angle coefficient and speed coefficient are used together as motion coefficients, and the motion coefficients are compared with the sample coefficients to obtain the analysis results, including: comparing the angle coefficient with the sample angle coefficient to obtain an angle analysis result; comparing the time coefficient with the sample time coefficient to obtain a time analysis result; comparing the speed coefficient with the sample speed coefficient to obtain a speed analysis result; and obtaining the analysis result according to the angle analysis result, the time analysis result and the speed analysis result.
[0012] According to another aspect of the present application, a golf motion analysis device is provided, including: a determination module, used to collect current sensor data of a motion sensor in a wearable device, and determine current motion data of a user's wrist based on the current sensor data; a calculation module, used to calculate a motion sequence based on the current motion data; and an analysis module, used to perform data analysis on the motion sequence to obtain an analysis result.
[0013] According to another aspect of the present application, a wearable device is provided, comprising: a dial body and a strap, the strap being connected to the dial body and being used to fix the dial body on the user's wrist; the dial body comprising a processor, a memory and a communication bus, the processor and the memory being arranged in the dial body; the processor and the memory communicating with each other via the communication bus; the memory being used to store at least one program, the program enabling the processor to perform operations such as the above-mentioned golf motion analysis method.
[0014] According to another aspect of the present application, a computer-readable storage medium is provided, in which at least one program is stored, and the program enables a wearable device to perform operations corresponding to the above-mentioned golf motion analysis method.
[0015] According to the golf motion analysis method proposed in the present application, the current sensor data is first obtained, the current motion data of the user's wrist is determined based on the current sensor data, and then the motion sequence is calculated based on the current motion data, and data analysis is performed on the motion sequence to obtain analysis results. In this way, the user can quickly and easily know the details of his or her own golf swing and obtain analysis feedback, which brings convenience to the motion training of golf players, beginners or enthusiasts.
[0016] The above description is only an overview of the technical solution of the present application. In order to more clearly understand the technical means of the present application, it can be implemented in accordance with the contents of the specification. In order to make the above and other purposes, features and advantages of the present application more obvious and easy to understand, the specific implementation methods of the present invention are listed below. BRIEF DESCRIPTION OF THE DRAWINGS
[0017] The accompanying drawings are only used to illustrate the embodiments and are not to be considered as limiting the present invention. In addition, the same reference symbols are used to represent the same components throughout the accompanying drawings. In the accompanying drawings:
[0018] Figure 1 A schematic diagram of the process of the golf motion analysis method provided by the present application is shown;
[0019] Figure 2 A schematic diagram of an embodiment of a golf motion analysis method provided by the present application is shown;
[0020] Figure 3 A schematic diagram of a second embodiment of the golf motion analysis method provided by the present application is shown;
[0021] Figure 4 Another embodiment of the golf motion analysis method provided by the present application is shown;
[0022] Figure 5 A schematic diagram showing a flow chart of another embodiment of the golf motion analysis method provided by the present application is shown;
[0023] Figure 6 A schematic flow chart of another embodiment of the golf motion analysis method provided by the present application is shown;
[0024] Figure 7 A schematic flow chart of yet another embodiment of a golf motion analysis method provided by the present application is shown;
[0025] Figure 8The structure diagram of the golf motion analysis device provided by the present application is shown;
[0026] Fig. 9 A schematic diagram showing the structure of the dial body in the wearable device provided by the present application is shown;
[0027] The reference numerals in the specific implementation manner are as follows:
[0028] 902, dial body; 904, strap; 906, processor; 908, memory; 910, communication bus; 912, program. DETAILED DESCRIPTION
[0029] Exemplary embodiments of the present invention will be described in more detail below with reference to the accompanying drawings. Although exemplary embodiments of the present invention are shown in the drawings, it should be understood that the present invention can be implemented in various forms and should not be limited to the embodiments set forth herein.
[0030] In view of the current common golf sports mode, the inventors have noticed that the existing golf training methods often rely on manual inspection to check whether the various golf movements are standard. It is often difficult for people to directly realize whether their swing movements are accurate, and outsiders may not be able to correct them in time when they help to check the movements, which is inconvenient in golf training. Therefore, it is particularly important to develop a golf sports analysis method that can record the player's movements and perform data analysis to obtain analysis results so that the players can check and correct them themselves.
[0031] In order to solve the above problems, the inventor of the present invention has designed a golf motion analysis method after research. The method determines the current motion data of the user's wrist by acquiring the current sensor data, calculates the motion sequence based on the current motion data, performs data analysis on the motion sequence, and obtains analysis results, so that the user can more conveniently understand the details of his or her golf swing and obtain analysis feedback, which facilitates the user's golf motion training.
[0032] Figure 1 FIG. 4 shows a flowchart of the golf motion analysis method provided by the present application. Figure 1 As shown, the method comprises the following steps:
[0033] Step 110: Collect current sensor data of the motion sensor in the wearable device, and determine current motion data of the user's wrist based on the current sensor data.
[0034] In this step, the wearable device refers to a device that can be fixed to a certain part of the user's wrist in any way and moves with the wrist. The purpose is to enable the motion sensor in the wearable device to obtain effective motion data of the user's wrist. Therefore, the wearable device should not be a device that is fixed by a suspension line, but should be a device that is fixed to the wrist in a relatively tighter fit so that the motion sensor can obtain more effective current sensor data that can reflect the user's wrist movement. For example, the wearable device can be a watch, wristband, waistband, armband, etc. It only needs to facilitate the motion sensor to obtain effective current sensor data of the user's wrist. The embodiments of the present application do not make any special limitations on this.
[0035] In this step, the motion sensor refers to a combination of multiple sensors, and the data obtained can reflect the movement of the user's wrist. For example, the motion sensor is composed of an accelerometer, a gyroscope and a magnetometer. According to actual needs, the motion sensor can be composed of more sensors of the same or different types to achieve more functions or obtain more detailed current sensor data. The embodiments of the present application do not specifically limit this.
[0036] In this step, the current sensor data is the motion data acquired by the motion sensor, which refers to the data of the user's current wrist motion, and is used to provide a basis for subsequent calculations. The motion sensor may include an accelerometer, a gyroscope, and a magnetometer, etc., which are used to acquire the current sensor data of the user's wrist. The current motion data is the data of the user's wrist that can reflect the motion process obtained through the current sensor data. Different types of sensors can be used to acquire different data according to actual needs, as long as the current motion data of the user's wrist can be conveniently obtained directly or calculated, and this application does not make any special restrictions on this.
[0037] In this step, the current motion data of the user's wrist is determined according to the current sensor data by filtering and error compensating the current sensor data, and the obtained denoised and compensated data is the current motion data.
[0038] In this step, the current motion data of the user's wrist refers to the motion data of the user's wrist when the user plays golf, that is, it can be understood as the motion data of the user's wrist when the user uses a golf club, which may include speed data, magnetic data, position data, azimuth data, etc.
[0039] Among them, since the movement trajectory of the wrist of the user is often highly consistent with the movement trajectory of the golf club when playing golf, those skilled in the art understand that when it is necessary to obtain the movement data of a certain target, the movement data of the target can often be obtained by installing the sensor on other objects with similar movement trajectory to the target. Therefore, in some embodiments, the current movement data of the wrist can be obtained by setting the current sensor on the golf club and obtaining the movement data of the golf club. The current movement data of the wrist can be obtained in disguise by measuring the movement data of different targets according to actual conditions. It is only necessary to conveniently obtain the current movement data of the wrist, and the embodiments of the present application do not make any special limitations on this.
[0040] In the case where the sensor is disposed on a golf club, the sensor includes at least one of an accelerometer, a gyroscope, a magnetometer, or other sensors that can obtain motion data of the golf club.
[0041] In the case where the sensor is set on the user's wrist, the sensor includes at least one of an accelerometer, a gyroscope, a magnetometer, a camera, or other sensors that can obtain the movement of the golf club, wherein the sensor can be set on the user's wrist, or on the user's arm, or set at other locations, for example, the camera can be set on the user's upper body, such as the head. If there is a sensor at the user's wrist, the sensor data of the wrist is the sensor data of the user's wrist, so that the movement data of the user's wrist is calculated based on the sensor data of the wrist.
[0042] In the case where the sensor is set at other locations, a camera can be set outside the golf club and the user's used part to capture the motion image of the user playing golf, thereby calculating and determining the motion data of the user's wrist.
[0043] By acquiring the current sensor data of the user's wrist, the current motion data of the user's wrist when the user is playing golf can be obtained after processing and optimization based on the current sensor data, so that the current motion data has less noise and the data is more accurate, providing a data basis for subsequent steps.
[0044] Step 120: Calculate the motion sequence according to the current motion data.
[0045] In this step, the motion sequence is a data set that can reflect the speed and position data of the current motion data. The motion sequence can be calculated by a variety of methods, such as using a first-order difference method to calculate the acceleration and attitude angle in the current motion data to obtain a speed sequence, and then using a first-order difference method to calculate the speed sequence to obtain a position sequence, and combining the speed sequence and the position sequence to form a motion sequence. According to actual conditions, different methods can be used to calculate and obtain corresponding data from the current motion data to form a motion sequence, and the embodiments of the present application do not specifically limit this.
[0046] By calculating the motion sequence based on the current motion data, the obtained data is made more regular, the one-to-one correspondence of the data is more convenient, and it is easy to perform analysis in subsequent steps.
[0047] Step 130: Perform data analysis on the motion sequence to obtain analysis results.
[0048] In this step, there can be many ways to perform data analysis on the motion sequence, such as comparing the motion sequence with a set of pre-set standard value data, analyzing the difference between the motion sequence and the standard value data as the analysis result, or using pre-acquired data of other users as samples, and comparing the motion sequence with the data of other users to obtain the analysis result. The data of the motion sequence itself can also be analyzed by machine learning to obtain the analysis result. It is only necessary to obtain data that can provide users with certain information so that users can understand their own swing movements. This application does not make any special limitations on this.
[0049] The analysis results may be in various forms, for example, data similarity, preset custom statements, scores or Boolean values, etc. Depending on the data analysis method, the form of the analysis results obtained will also be different. Additional settings may also be made to the generation of the analysis results to obtain analysis results that are easier for users to understand. The embodiments of the present application do not impose any special limitations on this.
[0050] Through the combination of the above steps 110, 120 and 130, it can be known that according to the golf motion analysis method provided by the present invention, the current sensor data of the motion sensor in the wearable device can be collected, the current motion data of the user's wrist can be determined according to the current sensor data, and then the motion sequence can be calculated according to the current motion data, and the motion sequence can be analyzed to obtain the analysis result. In this way, the user can quickly and easily know the details of his or her own golf swing action, which brings convenience to the action training of golf players, beginners or enthusiasts.
[0051] like Figure 2 As shown, in one embodiment of the present invention, step 110 includes:
[0052] Step a101: collecting the first current three-axis acceleration in the gyroscope carrier coordinate system in the wearable device as current motion data;
[0053] Step a103: Calculate the first current three-axis acceleration according to the quaternion method to obtain a first differential matrix;
[0054] Step a105: updating and calculating the first differential matrix according to the fourth-order Runge-Kutta method to obtain a rotation quaternion matrix;
[0055] Step a107: normalizing the rotation quaternion matrix to obtain a normalized quaternion;
[0056] Step a109: Calculate the normalized quaternion according to the strapdown matrix to obtain a first current attitude angle in the geographic coordinate system, and use the first current attitude angle as the current attitude angle, wherein the first current attitude angle includes a first pitch angle, a first roll angle, and a first heading angle.
[0057] In step a101, a first current three-axis acceleration in a gyroscope carrier coordinate system is acquired as current motion data through a motion sensor in the wearable device, where the motion sensor includes a gyroscope.
[0058] Among them, the carrier coordinate system refers to a coordinate system with the center of mass of the carrier as the origin, generally referring to a coordinate system formed by x along the longitudinal axis of the carrier, z along the lateral axis of the carrier, and y along the vertical axis of the carrier. The carrier refers to an object carrying the motion sensor, and the origin of the carrier coordinate system moves with the movement of the carrier. In the embodiments of the present application, the definition of the carrier coordinate system is consistent with the above description.
[0059] In step a103, the first differential matrix is obtained by calculating the first current three-axis acceleration according to the quaternion method, and the formula is:
[0060]
[0061] in, Refers to the differential matrix of the rotation quaternion of the carrier coordinate system relative to the geographic coordinate system, ω bx ,ω by With ω bz Refers to the output value of the first current three-axis acceleration in the gyroscope carrier coordinate system.
[0062] In step a105, the first differential matrix is updated and calculated according to the fourth-order Runge-Kutta method to obtain a rotation quaternion matrix, the formula of which is:
[0063]
[0064]
[0065]
[0066]
[0067]
[0068] Among them, K1, K2, K3 and K4 refer to the intermediate output matrices of the fourth-order Runge-Kutta method, Q k Refers to the rotation quaternion matrix of the carrier coordinate system relative to the geographic coordinate system, ω bk Refers to the first current three-axis acceleration sampling value matrix of the gyroscope at time k, ω b(k+1) It refers to the first current three-axis acceleration sampling value matrix of the gyroscope at time k+1, and h refers to the update period of the quaternion, that is, the gyroscope sampling period T s twice as much.
[0069] In step a107, the rotation quaternion matrix is normalized to obtain a normalized quaternion, the formula of which is:
[0070]
[0071] Among them, Q normalized refers to the normalized quaternion, Q refers to the rotation quaternion of the carrier coordinate system relative to the geographic coordinate system, and ||Q|| refers to the modulus of the rotation quaternion of the carrier coordinate system relative to the geographic coordinate system.
[0072] In step a109, the strapdown matrix equation described by quaternion is:
[0073]
[0074] According to the updated and normalized quaternion, the first pitch angle θ1, the first roll angle γ1 and the first heading angle are determined The value of is:
[0075]
[0076]
[0077]
[0078] Among them, θ main refers to the principal value of the first pitch angle θ1, γ main refers to the principal value of the first rolling angle γ1, Refers to the first heading angle The main value of .
[0079] In step a109, the first pitch angle, the first roll angle and the first heading angle are expressed by the formula:
[0080] θ1=θ main
[0081]
[0082]
[0083] Among them, θ1 is the first pitch angle, γ1 is the first roll angle, is the first heading angle, the first pitch angle θ1, the first roll angle γ1 and the first heading angle Together they form the first current posture angle.
[0084] Since the gyroscope has good dynamic performance, the first differential matrix is calculated by the first current three-axis acceleration and the quaternion method, and the first current attitude angle with excellent dynamic performance can be obtained by calculating the normalized quaternion through the fourth-order Runge-Kutta method.
[0085] like Figure 3 As shown, in one embodiment of the present invention, step 110 includes:
[0086] Step a102: collecting the first current three-axis magnetic induction intensity in the magnetometer carrier coordinate system and the second current three-axis acceleration in the accelerometer carrier coordinate system in the wearable device;
[0087] Step a104: calculating the second current three-axis acceleration according to the strapdown matrix to obtain a second pitch angle and a second roll angle in the geographic coordinate system;
[0088] Step a106: converting and calculating the first current three-axis magnetic induction intensity into the second current three-axis magnetic induction intensity in the geographic coordinate system;
[0089] Step a108: Calculate the second heading angle according to the second current three-axis magnetic induction intensity, use the second pitch angle, the second roll angle and the second heading angle together as the second current attitude angle, and use the second current attitude angle as the current motion data.
[0090] In step a102, a first current three-axis magnetic induction intensity in a magnetometer carrier coordinate system and a second current three-axis acceleration in an accelerometer carrier coordinate system are obtained through a motion sensor in the wearable device, where the motion sensor includes a magnetometer and an accelerometer.
[0091] In step a104, the second current three-axis acceleration is calculated according to the strapdown matrix to obtain the second pitch angle and the second roll angle in the geographic coordinate system:
[0092] When the geographic coordinate system is stationary, the output of the acceleration measured by the accelerometer is:
[0093] a n =ab =[0 0 g] T
[0094] Among them, a n Refers to the second current three-axis acceleration value matrix in the geographic coordinate system, a b Refers to the second current three-axis acceleration value matrix in the carrier coordinate system, and g refers to the local gravity acceleration value.
[0095] When the geographic coordinate system changes, the output of the acceleration measured by the accelerometer is:
[0096] a b =[a bx a by a bz ] T
[0097] Among them, a b Refers to the second current three-axis acceleration value matrix in the carrier coordinate system, a bx 、a by with a bz They are the acceleration components of the x-axis, y-axis and z-axis in the carrier coordinate system respectively.
[0098] According to the strapdown matrix of the second current three-axis acceleration in the geographic coordinate system, the acceleration of the carrier coordinate system and the geographic coordinate system satisfies the formula:
[0099]
[0100] in, refers to the strapdown matrix represented by quaternion, a n Refers to the second current three-axis acceleration value matrix in the geographic coordinate system, a b Refers to the second current three-axis acceleration value matrix in the carrier coordinate system.
[0101] At this time, the second pitch angle θ2 and the second roll angle γ2 are obtained, and the formula is:
[0102]
[0103]
[0104] Among them, a bx 、a by and a bz They are the acceleration components of the x-axis, y-axis and z-axis in the carrier coordinate system respectively.
[0105] In step a106, the first current three-axis magnetic induction intensity is converted and calculated into the second current three-axis magnetic induction intensity in the geographic coordinate system as follows:
[0106] The formula for converting the first current three-axis magnetic induction intensity into the second current three-axis magnetic induction intensity in the geographic coordinate system is:
[0107] m nx =m bx cosθ2+m by sinθ2sinγ2+m bz sinθ2cosγ2
[0108] m ny =m by cosγ2-m bz sinγ2
[0109] Among them, m nx 、m ny and m nz Refers to the second current triaxial magnetic induction intensity in the geographic coordinate system, m bx 、m by and m bz refers to the first current three-axis magnetic induction intensity in the carrier coordinate system, θ2 refers to the second pitch angle, γ2 refers to the second roll angle, Refers to the second heading angle.
[0110] In step a108, the second heading angle is calculated according to the second current three-axis magnetic induction intensity, the second pitch angle, the second roll angle and the second heading angle are used as the second current attitude angle, and the second current attitude angle is used as the current motion data, specifically:
[0111] The second heading angle is calculated according to the second current three-axis magnetic induction intensity, and the formula is:
[0112]
[0113] in, Refers to the second heading angle, m nx 、m ny and m nz Refers to the second current three-axis magnetic induction intensity in the geographic coordinate system.
[0114] The second heading angle is corrected according to the true north of the current geographic coordinate system and the magnetic declination Δβ of the magnetic north. The formula is:
[0115]
[0116] in, Refers to the corrected second heading angle, the second pitch angle θ2, the second roll angle γ2 and the corrected second heading angle Recorded as the second current posture angle, as the current posture angle.
[0117] Since the combination of an accelerometer and a magnetometer has better static performance, the second current attitude angle calculated by combining the second current three-axis acceleration measured by the accelerometer and the first current three-axis magnetic induction intensity measured by the magnetometer can make up for the poor static performance of the first current attitude angle obtained by the gyroscope in step a103, and the second current attitude angle is used as the current motion data to make the obtained current motion data more accurate.
[0118] like Figure 4 As shown, in one embodiment of the present invention, step 110 includes:
[0119] Step a110: collecting the first current three-axis acceleration in the gyroscope carrier coordinate system, the second current three-axis acceleration in the accelerometer carrier coordinate system, and the first current three-axis magnetic induction intensity in the magnetometer carrier coordinate system in the wearable device;
[0120] Step a111: Calculate the first current three-axis acceleration according to the quaternion method to obtain a first differential matrix;
[0121] Step a112: updating and calculating the first differential matrix according to the fourth-order Runge-Kutta method to obtain a rotation quaternion matrix;
[0122] Step a113: normalizing the rotation quaternion matrix to obtain a normalized quaternion;
[0123] Step a114: Calculate the normalized quaternion according to the strapdown matrix to obtain a first pitch angle, a first roll angle and a first heading angle in the geographic coordinate system, and use the first pitch angle, the first roll angle and the first heading angle together as a first current attitude angle;
[0124] Step a115: calculating the second current three-axis acceleration according to the strapdown matrix to obtain a second pitch angle and a second roll angle in the geographic coordinate system;
[0125] Step a116: converting and calculating the first current three-axis magnetic induction intensity into the second current three-axis magnetic induction intensity in the geographic coordinate system;
[0126] Step a117: Calculate a second heading angle according to the second current three-axis magnetic induction intensity, and use the second pitch angle, the second roll angle and the second heading angle together as the second current attitude angle;
[0127] Step a118: The first current posture angle and the second current posture angle are merged and calculated to obtain a third current posture angle, and the third current posture angle is used as the current motion data.
[0128] In step a110, the first current three-axis acceleration in the gyroscope carrier coordinate system, the second current three-axis acceleration in the accelerometer carrier coordinate system, and the first current three-axis magnetic induction intensity in the magnetometer carrier coordinate system are obtained through the motion sensor in the wearable device, and the motion sensor includes a gyroscope, an accelerometer and a magnetometer.
[0129] In step a111, step a112, step a113 and step a114, the calculation method of the first current attitude angle is the same as the above-mentioned steps a103, steps a105, a107 and a109. The purpose is to calculate the first current attitude angle with good dynamic performance through the first current three-axis acceleration obtained by the gyroscope, thereby providing a data basis for the fusion calculation of subsequent steps.
[0130] In step a115, step a116 and step a117, the calculation method of the second current posture angle is the same as the above-mentioned step a104, step a106 and step a108. The purpose is to calculate the second current posture angle with good static performance through the second current three-axis acceleration measured by the accelerometer and the first current three-axis magnetic induction intensity measured by the magnetometer, thereby providing a data basis for the fusion calculation of subsequent steps.
[0131] In step a118, the first current posture angle and the second current posture angle can be fused and calculated using the extended Kalman filter method, or other sensor fusion filtering methods can be used instead of the extended Kalman filter algorithm to fuse the first current posture angle and the second current posture angle. For example, a particle filter algorithm, a grid filter algorithm, an interpolation filter algorithm, an unscented Kalman filter algorithm, a Gauss-Hermite filter algorithm, a factorization filter algorithm, an anti-error adaptive filter algorithm or a Kalman consistent filter algorithm can be used to fuse the first current posture angle and the second current posture angle. The purpose is to fuse the first current posture angle with the second current posture angle so that the obtained third current posture angle has certain characteristics of both. Different fusion algorithms can be used according to actual conditions, and the present application does not make any special restrictions on this.
[0132] In steps a110 to a118, step a110, step a111, step a112, step a113 and step a114 are executed in sequence, step a115, step a116, step a117 and step a118 are executed in sequence, and there is no limit on the execution order between steps a110 to step a114 and steps a115 to step a118, that is, steps a115 to step a118 may be executed first and then steps a110 to step a114, or steps a110 to step a114 may be executed first and then steps a115 to step a118, or both may be executed simultaneously.
[0133] Since the gyroscope has good dynamic performance and the combination of the accelerometer and the magnetometer has good static performance, the third current attitude angle is obtained by fusing the first current attitude angle with the second current attitude angle, and the third current attitude angle is used as the current motion data. The third current attitude angle can have good dynamic and static performance at the same time, thereby making the current motion data more accurate and improving the accuracy of swing feature and putting feature recognition.
[0134] like Figure 5 As shown, in one embodiment of the present invention, step 120 includes:
[0135] Step b121: Calculate the current motion data according to the first-order difference method to obtain a velocity sequence;
[0136] Step b122: Calculate the velocity sequence according to the first-order difference method to obtain the position sequence;
[0137] Step b123: Take the velocity sequence and the position sequence together as a motion sequence.
[0138] In step b121, the current motion data is calculated according to the first-order difference method, and the speed sequence is obtained as follows:
[0139] According to the current acceleration in the current motion data, let:
[0140] ν n =[ν nx ν ny ν nz ] T
[0141] Among them, ν nx , ν ny and ν nz They refer to the velocity components of the x, y and z axes in the geographic coordinate system, ν n Refers to the matrix composed of the velocity components of the x, y and z axes in the geographic coordinate system.
[0142] Calculate the differential values of the velocity components of the x, y and z axes in the geographic coordinate system:
[0143]
[0144] Among them, θ refers to the pitch angle, γ refers to the roll angle, Refers to the heading angle, pitch angle θ, roll angle γ and heading angle The posture angle data together constitute the current motion data. The posture angle data can be the first current posture angle obtained through step a101, step a102, step a105, step a107 and step a109, or the second current posture angle obtained through step a102, step a104, step a106 and step a108, or the fused third current posture angle obtained through step a110 to step a118. The posture angle data obtained in different ways can be selected according to the actual situation, and the embodiment of the present application does not make any special limitation on this. and They refer to the differential values of the velocity components of the x, y and z axes in the geographic coordinate system, respectively. bx 、a by and a bz They are the acceleration components of the x-axis, y-axis, and z-axis in the carrier coordinate system, and g refers to the local gravitational acceleration value.
[0145] The velocity integral is approximately discretized using the first-order difference method to obtain the velocity sequence:
[0146]
[0147]
[0148] ν nzk =v nz(k-1) -sinθ k a bxk T s +sinγ k cosθ k a byk T s +cosγ k cosθ k a bzk T s -gT s
[0149] Among them, ν nxk Refers to the velocity value at time k in the geographic coordinate system, T s refers to the sampling frequency of the accelerometer, θ k , γ k and They refer to the values of pitch angle, roll angle and heading angle at time k, respectively. bxk 、a byk and a bzk Refers to the three-axis acceleration sampling value at time k.
[0150] In step b122, the velocity sequence is calculated according to the first-order difference method, and the position sequence is obtained as follows:
[0151] Integrate the velocity series to get the position series:
[0152] x nxk =x nx(k-1) +(ν nxk -ν nx(k-1) )T s
[0153] x nyk =x ny(k-1) +(ν nyk -ν ny(k-1) )T s
[0154] x nzk =x ny(k-1) +(ν nzk -ν nz(k-1) )T s
[0155] Among them, x nxk 、x nyk and x nzk Refers to the current position of the x, y and z axes at time k in the geographic coordinate system, T s Refers to the sampling frequency of the accelerometer.
[0156] In step b123, the speed sequence and the position sequence are taken together as a motion sequence, that is, the speed sequence and the position sequence can both reflect the user's motion situation to a certain extent, and can be used together for data comparison in subsequent motion analysis.
[0157] like Figure 6 As shown, in one embodiment of the present invention, step 110 includes:
[0158] Step b111: collecting time data of the timer in the wearable device;
[0159] Step 130 includes:
[0160] Step b112: extracting data from the motion sequence to obtain angle coefficients and speed coefficients;
[0161] Step b113: Obtaining a time coefficient according to the time data and the motion sequence;
[0162] Step b114: Take the time coefficient, angle coefficient and speed coefficient together as the motion coefficient, compare the motion coefficient with the sample coefficient, and obtain the analysis result.
[0163] In step b111, the timer in the wearable device refers to an instrument that can be used to record time. By recording time while other sensors are working, the obtained data can correspond to the time. The embodiment of the present application does not specifically limit the type of timer.
[0164] In step b112, data extraction of the motion sequence refers to obtaining specific data from the motion sequence and classifying it to convert it into one or more groups of data that are convenient for further processing and analysis. This can be achieved through a classification algorithm, such as the decision tree classification algorithm, random forest classification algorithm, K nearest neighbor classification algorithm and K-Means clustering algorithm in machine learning. The data set can also be converted by a data extraction method, such as converting it to a python type and extracting specific data therefrom. Different methods can be used for data extraction depending on the data type or format of the motion sequence. The learning model generated by machine learning can also be used to identify and extract data such as angle, time and speed in the motion sequence, or the data in the motion sequence can be weighted and integrated to obtain one or more weighted data as motion coefficients. This application does not make any special limitations on this.
[0165] In step b112, the angle coefficient and speed coefficient obtained may be one or more groups of data that can reflect the user's movement conditions, which are used for comparison in subsequent steps. For example, the angle coefficient may be: rad1=60; rad2=220. The speed coefficient may be: ms1=120; ms2=160. Among them, rad1 refers to the angle of the lead-in process, rad2 refers to the angle of the swing process, ms1 refers to the maximum speed of the finish, and ms2 refers to the maximum speed of the shot. At the same time, the units of the same type of data should be unified. For example, the units in the angle coefficient are all angle units (°), and the units in the speed coefficient are all meters per second (m / s). Different units or data references may be used according to actual conditions, and the embodiments of the present application do not make special limitations on this.
[0166] In step b113, according to the time data and the motion sequence, the time coefficient is obtained, which means that according to the time data obtained by the timer in the wearable device, combined with the motion sequence, the time taken by the user to perform each action in the golf sport, or the time taken to perform a complete action, can be obtained, so that the time data can be combined with the user's action to obtain the corresponding data, that is, the time coefficient. The time coefficient can be one or more groups of data that can reflect the time taken by the user to exercise, which is used for comparison in subsequent steps. For example, the time coefficient can be: time1=1; time2=3; time3=0.5. Among them, time1 refers to the lead-in time, time2 refers to the swing time, and time3 refers to the time from the lead-in to the hitting time. At the same time, the units of the same type of data in the time coefficient should be unified. For example, the units in the time coefficient are all seconds (s). Different units or data can be used according to actual conditions. The embodiment of the present application does not make special restrictions on this.
[0167] In step b114, the time coefficient, the angle coefficient and the speed coefficient are taken together as the motion coefficient, that is, the motion coefficient is a data group of multiple data combinations, which is used for overall comparison to facilitate data analysis and processing.
[0168] Among them, comparing the motion coefficient with the sample coefficient to obtain the analysis result means comparing the motion coefficient composed of the time coefficient, the angle coefficient and the speed coefficient with the sample coefficient acquired or set in advance to obtain the analysis result. In order to obtain a valid analysis result, the sample coefficient should contain one or more groups of data corresponding to the data in the motion coefficient. For example, if the motion coefficient contains the time coefficient, the angle coefficient and the speed coefficient, the sample coefficient should contain at least one group of data among the time coefficient, the angle coefficient and the speed coefficient.
[0169] The sample coefficient refers to a set of pre-set motion coefficients used as standard values for comparison. For example, the motion coefficient includes a golf swing time of 2 seconds, and the sample coefficient is set to 1 second. When the motion coefficient is compared with the sample coefficient, the conclusion that the golf swing time in the motion coefficient is too long compared to the standard value can be obtained as the analysis result. If there are multiple groups of undefined data for the motion coefficient, the data similarity can be compared with the preset data as the analysis result. There are many methods for calculating the similarity, such as bit variance, minimum hashing method, and local sensitive hashing method, etc. It only needs to reflect the similarity or difference between the motion coefficient and the sample coefficient. The embodiment of the present application does not make any special restrictions on this.
[0170] The sample coefficient can be obtained or generated by a variety of means, such as directly setting data by professionals familiar with golf, or obtaining the sports coefficients of multiple users in advance and then obtaining the average, median or fusion algorithm to obtain a data group as the sample coefficient. The purpose is to make the sample coefficient used for comparison reflect the standard level of golf, which can be understood as a result of quantifying the level of golf. For example, if the source object or setting target of the sample coefficient is a high-end golf player, the sample coefficient can reflect the high-level data in golf. If the source object or setting target of the sample coefficient is an entry-level golf player, the sample coefficient can reflect the entry-level data in golf. Different sample data can be used to compare with the sports coefficient to obtain the analysis result according to the actual situation, and the embodiment of the present application does not make any special limitation on this.
[0171] The form and generation method of the analysis result can be in a variety of ways. The analysis result can be directly displayed in the form of data, for example, a data table is generated by comparing the motion coefficient with the sample coefficient as the analysis result. The corresponding text can also be generated as the analysis result according to the difference between the data in the motion coefficient and the sample coefficient. The text generation method can be realized by pre-setting a template. The obtained analysis results can be: the angle of the lead-in process is too large or too small, that is, the angle of the lead-in process at the maximum position is too large or too small; the angle of the swing process is too large or too small, that is, the angle of the swing from hitting the ball to the end of the close is too large or too small; The lead-in time is too long or too short, that is, the time spent from the beginning to the maximum position of the lead-in is too long or too short; the swing time is too long or too short, that is, the time spent from the beginning to the end of the swing is too long or too short; the time from the lead-in to the shot is too long or too short, that is, the time from the lead-in to the maximum position to the shot is too long or too short; the time from the shot to the end of the swing is too long or too short, that is, the time spent from the shot to the end of the swing is too long or too short; the maximum speed from the shot to the end of the swing is too fast or too slow, that is, the maximum speed from the start of the shot to the end of the swing is too fast or too slow; the maximum speed from the lead-in to the shot is too fast or too slow, that is, the maximum speed from the lead-in to the maximum position to the shot is too fast or too slow.
[0172] Among them, the lead-in refers to the beginning part of the player's swing action in golf. The player uses the lead-in action to make the shoulders and arms form a stable triangle, which helps to stabilize the shot. Hitting refers to the action of the player controlling the golf club to hit the golf ball in golf. In the above analysis results, hitting refers to the moment when the golf club touches the golf ball, which serves as a time anchor point to facilitate the user's understanding of the analysis results. Finishing refers to the action of the player unloading the force on the club and stopping the swing after hitting the ball in golf. Using different finishing actions to a certain extent helps the player to grasp the direction and distance of the golf ball and make the entire swing action more coherent and beautiful. It can be understood that no matter what action the user uses to play golf, as long as a complete swing and hitting action is formed, the corresponding motion coefficient can be analyzed and calculated and compared and analyzed. In the embodiment of the present application, no special restrictions are made on the user's lead-in, hitting and finishing actions. According to actual needs, different methods and forms of generating analysis results can be used, and the embodiment of the present application does not make special restrictions on this.
[0173] By comparing the motion coefficient with the sample coefficient, the user's golf level can be analyzed through the difference between the motion coefficient from the user and the pre-acquired or set sample coefficient. It is also possible to analyze whether a certain aspect of the user's ability needs to be further improved through the difference between the motion coefficient and the specific data in the sample coefficient, so that the user can locate his or her own training direction in golf according to the analysis results.
[0174] like Figure 7 As shown, in one embodiment of the present invention, before step b114, the method further includes:
[0175] Step b115: acquiring sample angle data, sample time data and sample speed data as sample sensor data through the sample sensor, and determining sample motion data of the user's wrist according to the sample sensor data;
[0176] Step b116: Calculate a sample motion sequence according to the sample motion data, where the sample motion sequence includes a sample speed sequence and a sample position sequence;
[0177] Step b117: Calculate the sample angle coefficient, sample time coefficient and sample speed coefficient of the sample motion sequence, and use the sample angle coefficient, sample time coefficient and sample speed coefficient together as the sample coefficient;
[0178] Step b114 includes:
[0179] Step b118: Compare the angle coefficient with the sample angle coefficient to obtain an angle analysis result;
[0180] Step b119: Compare the time coefficient with the sample time coefficient to obtain the time analysis result;
[0181] Step b120: Compare the speed coefficient with the sample speed coefficient to obtain a speed analysis result;
[0182] Step b121: Obtain analysis results based on the angle analysis results, time analysis results and speed analysis results.
[0183] In step b115, the sample sensor is a sensor group composed of multiple sensors, and different sensors can obtain corresponding different data. For example, the sample speed data is obtained by the accelerometer in the sample sensor, and the sample time data is obtained by the timer in the sample sensor. The acquired data can reflect the movement of the user's wrist as a sample. For example, the sample sensor is composed of an accelerometer, a gyroscope, a timer and a magnetometer. According to actual needs, the sample sensor can be composed of more sensors of the same or different types to achieve more functions or obtain more detailed sample sensor data. The embodiment of the present application does not make any special limitation on this.
[0184] Specifically, determining the sample motion data of the user's wrist based on the sample sensor data includes filtering and error compensation processing on the sample sensor data, and the obtained denoised and compensated data is the sample motion data.
[0185] In step b116 , the calculation method of the sample motion sequence is consistent with steps b121 , b122 , and b123 .
[0186] In step b117, the calculation method of the sample angle coefficient, sample time coefficient and sample speed coefficient in the sample motion sequence is consistent with steps b112 and b113, and the calculation method of the sample speed sequence in the sample motion sequence is consistent with step b123. The difference between the sample motion sequence and the motion sequence in step 120 is that the motion sequence reflects the motion of the current user, while the sample motion sequence reflects the motion of the user as a sample, and the sample motion sequence is used to compare with the motion sequence.
[0187] By calculating the sample angle coefficient, sample time coefficient and sample speed coefficient and taking them together as the sample coefficient, the sample coefficient can correspond one-to-one with the angle coefficient, time coefficient and speed coefficient of the motion coefficient, which is more convenient for subsequent comparison and analysis.
[0188] In step b118, the angle coefficient is compared with the sample angle coefficient, and the angle analysis result can be obtained by comparing the angle coefficient with the sample angle coefficient to obtain a comparison result of whether the angle coefficient is larger or smaller than the sample angle coefficient as the angle analysis result. Different comparison methods or methods for generating angle analysis can also be used according to actual conditions, such as determining the numerical similarity between the angle coefficient and the sample angle coefficient, and using the similarity result as the angle analysis result, which is not particularly limited in the present embodiment of the application.
[0189] In step b119, the time coefficient is compared with the sample time coefficient, and the time analysis can be obtained by comparing the length of the time coefficient with the sample time coefficient, and obtaining a comparison result of whether the time coefficient is longer or shorter than the sample time coefficient as the time analysis result. Different comparison methods or methods for generating time analysis can also be used according to actual conditions, such as determining the numerical similarity between the time coefficient and the sample time coefficient, and using the similarity result as the time analysis result, which is not particularly limited in the embodiment of the present application.
[0190] In step b120, the speed coefficient is compared with the sample speed coefficient, and the speed analysis can be obtained by comparing the speed coefficient with the sample speed coefficient, and obtaining a comparison result of whether the speed coefficient is faster or slower than the sample speed coefficient as the speed analysis result. Different comparison methods or methods for generating speed analysis can also be used according to actual conditions, such as determining the numerical similarity between the speed coefficient and the sample speed coefficient, and using the similarity result as the speed analysis result, which is not particularly limited in the embodiment of the present application.
[0191] In step b121, according to the angle analysis result, the time analysis result and the speed analysis result, the analysis result is obtained, which means that the angle analysis result, the time analysis result and the speed analysis result obtained in the above steps b118, b119 and b120 are combined to obtain an overall analysis result that integrates multiple data. The analysis result can be generated by directly superimposing the angle analysis result, the time analysis result and the speed analysis result. For example, the analysis result is: the angle is too large, the time is too long, and the speed is too slow, wherein "the angle is too large" is the angle analysis result, "the time is too long" is the time analysis result, and "the speed is too slow" is the speed analysis result. More refined analysis results can also be obtained through machine learning, for example, an analysis model is obtained through machine learning, and the angle analysis result, the time analysis result and the speed analysis result are identified to obtain the analysis result that the user should increase the batting speed. Those skilled in the art can process the angle analysis result, the time analysis result and the speed analysis result in different ways according to the actual situation to obtain the analysis result, the purpose of which is to enable the user to directly obtain the overall analysis results in many aspects, and the embodiment of the present application does not make special restrictions on this.
[0192] By combining the angle analysis results, time analysis results and speed analysis results together to obtain the analysis results, the analysis results can include various analysis data, which is easier for users to read and understand, saving users time in viewing the results and conducting an overall analysis.
[0193] Figure 8 FIG. 8 is a functional block diagram of a golf motion analysis device 800 according to an embodiment of the present invention. Figure 8 As shown, the golf motion analysis device includes: a determination module 810, a calculation module 820 and an analysis module 830;
[0194] The determination module 810 is used to collect the current sensor data of the motion sensor in the wearable device, and determine the current motion data of the user's wrist according to the current sensor data; the calculation module 820 is used to calculate the motion sequence according to the current motion data; the analysis module 830 is used to perform data analysis on the motion sequence to obtain the analysis result;
[0195] In some embodiments, the determination module 810 further includes: a first calculation unit, used to collect the first current three-axis acceleration in the gyroscope carrier coordinate system in the wearable device as the current motion data; a second calculation unit, used to calculate the first current three-axis acceleration according to the quaternion method to obtain a first differential matrix; a third calculation unit, used to update the first differential matrix according to the fourth-order Runge-Kutta method to obtain a rotation quaternion matrix; a fourth calculation unit, used to normalize the rotation quaternion matrix to obtain a normalized quaternion; a fifth calculation unit, used to calculate the normalized quaternion according to the strapdown matrix to obtain a first current attitude angle in the geographic coordinate system, and use the first current attitude angle as the current motion data, the first current attitude angle including a first pitch angle, a first roll angle and a first heading angle.
[0196] In some embodiments, the determination module 810 further includes: a sixth calculation unit, used to collect the first current three-axis magnetic induction intensity in the magnetometer carrier coordinate system and the second current three-axis acceleration in the accelerometer carrier coordinate system in the wearable device; a seventh calculation unit, used to calculate the second current three-axis acceleration according to the strapdown matrix to obtain the second pitch angle and the second roll angle in the geographic coordinate system; an eighth calculation unit, used to convert the first current three-axis magnetic induction intensity into the second current three-axis magnetic induction intensity in the geographic coordinate system; a first generation unit, used to calculate the second heading angle according to the second current three-axis magnetic induction intensity, and use the second pitch angle, the second roll angle and the second heading angle together as the second current attitude angle, and use the second current attitude angle as the current motion data.
[0197] In some embodiments, the determination module 810 further includes: a ninth calculation unit, which is used to collect the first current three-axis acceleration in the gyroscope carrier coordinate system, the second current three-axis acceleration in the accelerometer carrier coordinate system, and the first current three-axis magnetic induction intensity in the magnetometer carrier coordinate system in the wearable device; a tenth calculation unit, which is used to calculate the first current three-axis acceleration according to the quaternion method to obtain a first differential matrix; an eleventh calculation unit, which is used to update the first differential matrix according to the fourth-order Runge-Kutta method to obtain a rotation quaternion matrix; a twelfth calculation unit, which is used to normalize the rotation quaternion matrix to obtain a normalized quaternion; a thirteenth calculation unit, which is used to calculate the normalized quaternion according to the strapdown matrix to obtain a first pitch angle and a first roll angle in the geographic coordinate system. angle and the first heading angle, and taking the first pitch angle, the first roll angle and the first heading angle together as the first current attitude angle; a fourteenth calculation unit, for calculating the second current three-axis acceleration according to the strapdown matrix, to obtain the second pitch angle and the second roll angle in the geographic coordinate system; a fifteenth calculation unit, for converting the first current three-axis magnetic induction intensity into the second current three-axis magnetic induction intensity in the geographic coordinate system; a sixteenth calculation unit, for calculating the second heading angle according to the second current three-axis magnetic induction intensity, and taking the second pitch angle, the second roll angle and the second heading angle together as the second current attitude angle; a seventeenth calculation unit, for fusing the first current attitude angle with the second current attitude angle to obtain a third current attitude angle, and taking the third current attitude angle as the current motion data.
[0198] In some embodiments, the calculation module 820 further includes: an eighteenth calculation unit, used to calculate the current motion data according to the first-order difference method to obtain a velocity sequence; a nineteenth calculation unit, used to calculate the velocity sequence according to the first-order difference method to obtain a position sequence; and a twentieth calculation unit, used to take the velocity sequence and the position sequence together as a motion sequence.
[0199] In some embodiments, the determination module 810 further includes: a twenty-first calculation unit, used to collect time data of a timer in the wearable device.
[0200] In some embodiments, the analysis module 830 further includes: a twenty-second calculation unit, used to extract data from the motion sequence to obtain an angle coefficient and a speed coefficient; a twenty-third calculation unit, used to obtain a time coefficient based on the time data and the motion sequence; a twenty-fourth calculation unit, used to use the time coefficient, the angle coefficient and the speed coefficient together as the motion coefficient, compare the motion coefficient with the sample coefficient, and obtain an analysis result.
[0201] In some embodiments, the wearable device 800 further includes: a first processing module, used to obtain sample angle data, sample time data and sample speed data as sample sensor data through a sample sensor, and determine the sample motion data of the user's wrist based on the sample sensor data; a second processing module, used to calculate a sample motion sequence based on the sample motion data, the sample motion sequence includes a sample speed sequence and a sample position sequence; a third processing module, used to calculate the sample angle coefficient, sample time coefficient and sample speed coefficient of the sample motion sequence, and use the sample angle coefficient, sample time coefficient and sample speed coefficient together as the sample coefficient.
[0202] In some embodiments, the analysis module 830 further includes: a twenty-fifth calculation unit, used to compare the angle coefficient with the sample angle coefficient to obtain an angle analysis result; a twenty-sixth calculation unit, used to compare the time coefficient with the sample time coefficient to obtain a time analysis result; a twenty-seventh calculation unit, used to compare the speed coefficient with the sample speed coefficient to obtain a speed analysis result; and a twenty-eighth calculation unit, used to obtain an analysis result based on the angle analysis result, the time analysis result and the speed analysis result.
[0203] Fig. 9 A schematic diagram of the structure of a wearable device according to the present application is shown, and the specific embodiment of the present invention does not limit the specific implementation of the wearable device.
[0204] like Fig. 9 As shown, the wearable device may include: a dial body 902, a strap 904, a processor 906, a memory 908 and a communication bus 910, wherein the strap 904 is connected to the dial body 902, and the strap 904 is used to fix the dial body 902 on the user's wrist;
[0205] The dial body 902 includes a processor 906, a memory 908 and a communication bus 910, and the processor 906 and the memory 908 are disposed in the dial body 902;
[0206] The processor 906 and the memory 908 communicate with each other via a communication bus 910 .
[0207] The memory 908 is used to store at least one program 912. The program 912 enables the processor 906 to execute the relevant steps in the above-mentioned golf motion analysis method embodiment.
[0208] The present application also provides a computer-readable storage medium, in which at least one program is stored. When the program is run on a wearable device, the wearable device can execute the golf motion analysis method in any of the above method embodiments.
[0209] The algorithm or display provided herein is not inherently related to any particular computer, virtual system or other device. Various general purpose systems can also be used together with the teachings based on this. According to the above description, it is obvious to construct the structure required for this type of system. In addition, the application is not directed to any specific programming language yet. It should be understood that various programming languages can be utilized to realize the content of the present invention described herein, and the description made to specific languages above is for disclosing the best mode of the present invention.
[0210] In the description provided herein, a large number of specific details are described. However, it is understood that embodiments of the present invention can be practiced without these specific details. In some instances, well-known methods, structures and techniques are not shown in detail so as not to obscure the understanding of this description.
[0211] Similarly, it should be understood that in order to streamline the present invention and aid in understanding one or more of the various inventive aspects, in the above description of exemplary embodiments of the present invention, various features of the present application are sometimes grouped together into a single embodiment, figure, or description thereof. However, this method of disclosure should not be interpreted as reflecting an intention that the claimed invention requires more features than those expressly recited in each claim.
[0212] Those skilled in the art will appreciate that the modules in the devices in the embodiments may be adaptively changed and arranged in one or more devices different from the embodiments. The modules or units or components in the embodiments may be combined into one module or unit or component, and may be divided into a plurality of submodules or subunits or subcomponents. Except that at least some of such features and / or processes or units are mutually exclusive, all features disclosed in this specification (including the accompanying claims, abstracts and drawings) and all processes or units of any method or device disclosed in this manner may be combined in any combination. Unless otherwise expressly stated, each feature disclosed in this specification (including the accompanying claims, abstracts and drawings) may be replaced by an alternative feature providing the same, equivalent or similar purpose.
[0213] It should be noted that the above embodiments illustrate the present invention rather than limit it, and that those skilled in the art may devise alternative embodiments without departing from the scope of the appended claims. In the claims, any reference symbol between brackets shall not be construed as a limitation on the claims. The word "comprising" does not exclude the presence of elements or steps not listed in the claims. The word "one" or "an" preceding an element does not exclude the presence of a plurality of such elements. The present invention may be implemented by means of hardware comprising a number of different elements and by means of a suitably programmed computer. In a unit claim enumerating a number of devices, several of these devices may be embodied by the same hardware item. The use of the words first, second, and third, etc. does not indicate any order. These words may be interpreted as names. The steps in the above embodiments, unless otherwise specified, should not be understood as limitations on the order of execution.
Claims
1. A golf motion analysis method, characterized in that: include: Collecting current sensor data of a motion sensor in the wearable device, and determining current motion data of the user's wrist according to the current sensor data, wherein the current sensor data includes time data of a timer in the wearable device; Calculating the current motion data according to a first-order difference method to obtain a velocity sequence; Calculating the velocity sequence according to the first-order difference method to obtain a position sequence; taking the velocity sequence and the position sequence together as a motion sequence; Extracting data from the motion sequence to obtain an angle coefficient and a speed coefficient; Obtaining a time coefficient according to the time data and the motion sequence; The time coefficient, the angle coefficient and the speed coefficient are taken together as motion coefficients, and the motion coefficients are compared with sample coefficients to obtain analysis results.
2. The golf motion analysis method according to claim 1, characterized in that: The collecting current sensor data of the motion sensor in the wearable device and determining the current motion data of the user's wrist according to the current sensor data includes: Collecting a first current three-axis acceleration in a gyroscope carrier coordinate system in the wearable device; Calculating the first current three-axis acceleration according to the quaternion method to obtain a first differential matrix; The first differential matrix is updated and calculated according to the fourth-order Runge-Kutta method to obtain a rotation quaternion matrix; Normalizing the rotation quaternion matrix to obtain a normalized quaternion; The normalized quaternion is calculated according to the strapdown matrix to obtain a first current attitude angle in a geographic coordinate system, and the first current attitude angle is used as the current motion data, wherein the first current attitude angle includes a first pitch angle, a first roll angle and a first heading angle.
3. The golf motion analysis method according to claim 1, characterized in that: The collecting current sensor data of the motion sensor in the wearable device and determining the current motion data of the user's wrist according to the current sensor data includes: Collecting a first current three-axis magnetic induction intensity in a magnetometer carrier coordinate system and a second current three-axis acceleration in an accelerometer carrier coordinate system in the wearable device; Calculating the second current three-axis acceleration according to the strapdown matrix to obtain a second pitch angle and a second roll angle in the geographic coordinate system; Convert and calculate the first current three-axis magnetic induction intensity into a second current three-axis magnetic induction intensity in a geographic coordinate system; A second heading angle is calculated according to the second current three-axis magnetic induction intensity, the second pitch angle, the second roll angle and the second heading angle are collectively used as a second current attitude angle, and the second current attitude angle is used as the current motion data.
4. The golf motion analysis method according to claim 1, characterized in that: The collecting current sensor data of the motion sensor in the wearable device and determining the current motion data of the user's wrist according to the current sensor data further includes: Collecting a first current three-axis acceleration in the gyroscope carrier coordinate system, a second current three-axis acceleration in the accelerometer carrier coordinate system, and a first current three-axis magnetic induction intensity in the magnetometer carrier coordinate system in the wearable device; Calculating the first current three-axis acceleration according to the quaternion method to obtain a first differential matrix; The first differential matrix is updated and calculated according to the fourth-order Runge-Kutta method to obtain a rotation quaternion matrix; Normalizing the rotation quaternion matrix to obtain a normalized quaternion; Calculate the normalized quaternion according to the strapdown matrix to obtain a first pitch angle, a first roll angle, and a first heading angle in a geographic coordinate system, and use the first pitch angle, the first roll angle, and the first heading angle together as a first current attitude angle; Calculating the second current three-axis acceleration according to the strapdown matrix to obtain a second pitch angle and a second roll angle in the geographic coordinate system; Convert and calculate the first current three-axis magnetic induction intensity into a second current three-axis magnetic induction intensity in a geographic coordinate system; Calculate a second heading angle according to the second current three-axis magnetic induction intensity, and use the second pitch angle, the second roll angle and the second heading angle together as a second current attitude angle; The first current posture angle and the second current posture angle are fused and calculated to obtain a third current posture angle, and the third current posture angle is used as the current motion data.
5. The golf motion analysis method according to claim 1, characterized in that: Before taking the time coefficient, the angle coefficient and the speed coefficient together as a motion coefficient and comparing the motion coefficient with a sample coefficient to obtain an analysis result, the golf motion analysis method further includes: Acquire sample angle data, sample time data and sample speed data as sample sensor data through a sample sensor, and determine sample motion data of the user's wrist according to the sample sensor data; Calculate a sample motion sequence according to the sample motion data, wherein the sample motion sequence includes a sample speed sequence and a sample position sequence; Calculating a sample angle coefficient, a sample time coefficient and a sample speed coefficient of the sample motion sequence, and taking the sample angle coefficient, the sample time coefficient and the sample speed coefficient together as the sample coefficient; The time coefficient, the angle coefficient and the speed coefficient are taken together as motion coefficients, and the motion coefficients are compared with sample coefficients to obtain analysis results, including: Comparing the angle coefficient with the sample angle coefficient to obtain an angle analysis result; Comparing the time coefficient with the sample time coefficient to obtain a time analysis result; Comparing the speed coefficient with the sample speed coefficient to obtain a speed analysis result; The analysis result is obtained according to the angle analysis result, the time analysis result and the speed analysis result.
6. A golf motion analysis device, characterized in that: include: The determination module is used to collect current sensor data of the motion sensor in the wearable device, and determine the current motion data of the user's wrist according to the current sensor data, wherein the current sensor data includes time data of the timer in the wearable device; the calculation module includes: an eighteenth calculation unit, configured to calculate the current motion data according to a first-order difference method to obtain a velocity sequence; A nineteenth calculation unit, used for calculating the velocity sequence according to a first-order difference method to obtain a position sequence; a twentieth calculation unit, configured to use the velocity sequence and the position sequence together as a motion sequence; The analysis modules include: A twenty-second calculation unit, used for extracting data from the motion sequence to obtain an angle coefficient and a speed coefficient; A twenty-third calculation unit, configured to obtain a time coefficient according to the time data and the motion sequence; The twenty-fourth calculation unit is used to use the time coefficient, the angle coefficient and the speed coefficient together as a motion coefficient, compare the motion coefficient with a sample coefficient, and obtain an analysis result.
7. A wearable device, characterized in that: include: A watch dial body and a watch strap, wherein the watch strap is connected to the watch dial body and is used to fix the watch dial body on the user's wrist; The dial body includes a processor, a memory and a communication bus, and the processor and the memory are arranged in the dial body; The processor and the memory communicate with each other via the communication bus; The memory is used to store at least one program, and the program enables the processor to perform the operation of the golf motion analysis method according to any one of claims 1-5.
8. A computer-readable storage medium, characterized in that: The storage medium stores at least one program, and when the program is executed on the wearable device, the wearable device executes the operation of the golf motion analysis method according to any one of claims 1 to 5.
Citation Information
Patent Citations
Multimode motion measurement and analysis system
CN103759739A