1. Field of Invention
The present invention relates to sport movement analysis and training. More particularly, the invention relates to a sport movement analyzer and training device for detecting, analyzing, correcting, training and re-creating sport movements involving swinging a club, racket, bat, etc.
In events where an athlete moves fast and high accuracy of performance is necessary, it is of interest to be able to measure how much time it takes for an athlete to perform the phases of a movement, e.g. swing a golf club, tennis racket, baseball bat, etc. . . . The athletes practice so that they can accurately repeat the movements again and again. Consistent timing of performance is a corner stone for the repeatability. Muscle memory is the key point in several sports. When a user has done several repetitions of desired action, muscles start to remember this action and after that it is much easier to repeat in different situations. Once the correct and effective sports performance has been accomplished, it will be lost sooner or later as the muscle sense can not maintain nor remember the same movement for long time due to the fact that the freshly learned performance feels greatly different than one that has existed for longer time and the body and senses have been accustomed to it. Through training, conditioning, and improved technique, an athlete's variation in timing of the swing should be reduced. Measures of key event times during sport performances allow the coach to evaluate an individual's performance and to compare performances over the training and competition seasons.
In the field of sports performance analysis there is a lack of exact measurement tools. The video analysis is the most widespread technology for teaching sports techniques. Video analysis has always a need for human interpretation of the movements. Swing sensor technology allows exact analysis of the movements without human interpretation or third person, but the methods and technologies are lacking for utilizing the sensor data. Moreover, trainers or trainees eyes get accustomed to the slowly changing movements and the ability to detect flaws lessens in time.
The big challenge in sports is to find a correct and effective performance once. The performance can be a movement, orientation, body position, acceleration etc. Challenge is even greater in trying to repeat that correct performance repeatedly. These challenges can be overcome through constant repetitions under surveillance of a trainer 100 and/or with the usage of video where the similarity of the repetitions can be verified. This approach is vulnerable in a multitude of weak points. For example, the trainers or the trainee's eye is not flawless in detecting the changes in the performances. Use of video is limited to one viewing angle, very slow feedback (takes minutes to analyze movement), low position accuracy (only what can be extracted from video pictures), and very low picture recording frequency (30 Hz) only in normal PAL standard digital video). In addition, usage i.e. storing, organizing and analyzing in varying sports environments and is not supported by existing technology etc. However, there exist many products that guide athletes to correct performance tempo, for instance Swing-Tempo (http://www.swing-tempo.com).
A problem in sport movement analysis and training involves storing sensor parameters at certain (static) points in the movement without interfering with (touching) a measuring device that is attached to the trainer. The storing could be done remotely by using an external device, e.g. IrDA, remote control in a phone, camera, or as a separate remote control unit; Radio remote controller; Bluetooth remote control in a phone, camera, or as a separate remote control unit, and Voice commands, for example voice recognition system in user's sensor device. However, the external device adds another unit to implement the storing of the parameters.
What is needed is in the field of sports involving swinging a golf club, tennis racket, baseball bat, etc is a sport movement analyzer and training device which enables a user to detect, measure, and store swing positions or events in a sport movement in terms of parameters, e.g. time, velocity, acceleration, etc and recreate the sport performances through feedback for comparisons between target performances and current performances, where the user receives sensory signals indicative of differences between the target performance and the current performance.
Prior art related to sport movement analysis and training includes:
1. U.S. Pat. No. 5,694,340 issued Dec. 2, 1997 discloses a method of training and simulating physical skills using a digital swing analyzing device that measures the necessary and sufficient information to describe uniquely a rigid body swing. The device, comprising a programmable digital signal processor and a universal accelerometer, measures the acceleration and calculates the linear velocity, the angular velocity, the orientation, and the position of a moving object, and stores and plays back the swing using audiovisual means and compares it with other pre-recorded swings. The student can choose a model and try to imitate the model with the help of audiovisual means and biofeedback means. The device is portable. It can also be connected to a computer where the swing can be further analyzed by comparing it with a database comprising many other characteristic swings. If a projectile is involved, such as in a golf swing, the trajectory of the projectile is calculated.
2. USPA 2002/0049507, published Apr. 25, 2002 discloses a sport server includes a sport database for storing sport data. The sport server communicates with a variety of input devices for receiving the sport data. The sport server determines the type of input device and then communicates with the input device using appropriate display and communication parameters. The sport server then outputs the sport data to various output devices using appropriate parameters for each output device.
3. U.S. Pat. No. 6,778,866, issued Aug. 17, 2004 discloses method and apparatus for teaching a person how to perform a specific body swing in a consistent manner is based on electronically measuring one or more parameters of an actual body swing, comparing the one or more measured parameters with corresponding parameters of a target body swing, and providing a sensible feedback to the user based on a degree of correspondence between the one or more measured parameters and the corresponding target parameters. In a particular embodiment, the feedback is audible. More specifically the feedback is a musical tune that has a particular characteristic (such as rhythm) that is particularly suited to a particular body swing (such as a golf swing). The feedback may be in the form of electronically causing the musical tune to go off-key in proportion to a discrepancy between the actual body swing and the target body swing. In another embodiment, the feedback may be in the form of causing the musical signal to vary in perceivable clarity in proportion to a discrepancy between the actual body swing and the target body swing. The use of a stylized musical tune is also helpful because it is easily remembered, thereby aiding a user attempting a certain body swing without using the apparatus of the present invention.
4. USPA 2005/0054457, published Mar. 10, 2005 discloses a sport learning system directed to improving an individual's swing by monitoring a club, bat or racket during a swing. During the course of a swing, the system alerts the individual when the club position varies outside of a predetermined range. The system includes a device inserted into the distal end of a shaft of the club. A second device is attached to a personal computer to provide wireless data transmission with the device mounted in the club. A personal computer application enables swing data analysis and display. The inserted device employs a microprocessor, accelerometers, gyroscopes, memory and a system of buffering and filtering to provide real-time feedback during the swing. It is an additional feature of the inserted device to capture and store data required to reconstruct, display, and analyze swings and to share the data with other applications to facilitate remote instruction.
None of the cited art discloses a sport analyzer and training device that in real time (i) detects, measures, and stores swing positions or events in terms of parameters of a sport movement, e.g. a swing involving a bat, racket, club, etc.; (ii) provide real-time feedback of a performances by swing position or event along a swing path to a user via a display, (iii) re-create current performance for comparison with past performances stored in a database, (iv) provide audio commands to the analyzer for starting and stopping a performance along a swing path, and (v)) provide sensory signals to the user indicative of differences between a current performance and a past performance.
A sport performance analyzer and training device and method, in real time, detects, measures, analyzes, corrects and re-creates sport performances of a user involving swinging a club, racket, bat, etc. for practice, training and teaching relative to a target performance to achieve improved sport movement performance. A wearable analyzer secured to a user's wrist includes sensors for detecting sport movements of the user in terms of various parameters at various swing points or events along the swing path of a club, racket or bat. Signals representative of the movement are generated by the sensors for measurement of the various parameters associated with the swing. A memory in the analyzer services a processor and includes (i) stored programs for analyzing and measuring the sport movement by swing positions or events in terms of the various parameters and (ii) a history of past sport movements as target performances. A display responsive to the analysis displays a sport movement for comparison with past target performances stored in the history. A keyboard in the analyzer enables a user to select performances, i.e. swinging, putting and short game for analysis and display. A microphone enables the user to give audio commands to the analyzer in regard to starting and stopping a performance. The analyzer includes a transducer to provide feedback that is based on sensor signals to the user. Feedback can result when a practice performance departs from a target performance. A transceiver in the analyzer transmits the signals representative of the detected sport movement to a server. A memory coupled to the server stores the signals representative of each movement in a database as a history for subsequent downloading and display to the analyzer upon user request.
An aspect of the disclosed subject mater is a timing generator in the analyzer providing timing signals for alignment with swing positions of a movement for measurement purposes.
Another aspect is an automatic recording means for recording signals representative of a parameter in a swing or event in a sport movement.
Another aspect is a voice recognition system included in the analyzer responsive to an audio signal for activating the automatic recording means.
Another aspect is a user interface for downloading and displaying past sport movements from the history as a training goal for the user.
Another aspect is a display for indicating differences between a present movement in a performance and like movements stored in the history.
Another aspect is measuring performance parameters including, but not limited to, acceleration, angular velocity, swing angle, tempo, timing and rotation.
Another aspect are sensors including, but not limited to, inertial, magnetic, optical, angular rate, angular acceleration, mechanical switches, and potentiometers.
Another aspect is swing detection and measuring process for establishing swing positions and events to be detected along a swing path for measurement and analysis.
The invention will be further understood from the following detailed description of a preferred embodiment, taken in conjunction with appended drawings, in which:
The analyzer shown in
The processor 142 is also coupled to an input/output device 156 serving the display 134 and a transducer 158 responsive to the processor. The transducer provides the user with sounds or vibrations when a user's performance along the swing path does not match a target performance stored in the ROM or elsewhere. The I/O 156 is also coupled to a transceiver 160 for transmitting sensor signals and data to a server 164, either directly or via an Access Point 166 coupled to a network 168 serving the server, as shown in
Turning to
A swing movement algorithm 149, is included in the stored programs for generating and processing sensor signals received from the sensors during a swing movement 106 along the swing path. The sensor signals are provided for various parameters at various swing points or events of the club along the swing path.
Commercially available voice recognition software 151, e.g. Scansoft, available from Nuance, 1 Wayside Road, Burlington, Mass. 01803, enables the user to provide voice commands to the analyzer via the microphone 138.
A standard Operating System 153, e.g. Window, Linux and the like manage the operation of the analyzer.
The user's performance data in learning or practicing a swing is collected by the analyzer and stored in the ROM as Current Analyzer Data 155 for display to the user and for comparison with target performance data.
The swing movement algorithm 149 is described in a specification by Chapters, as follows:
Chapter 1. Sensor Data
All algorithms in this specification use rotation (angular velocity) and/or acceleration sensor data as input for sensor data shown in Table 1 below.
Chapter 2. Co-Ordinate Systems
Second during calculations there is a co-ordinate system that is aligned to the sensor box orientation at the player's address position with respect to the ball. This co-ordinate system is not moving relative to the reference co-ordinate system. This address position co-ordinate system is defined by x′, y′, and z′ axis.
Third the measurement co-ordinate system is aligned to the sensor box that is attached to wrist. Since the wrist moves during the sports exercise the measurement co-ordinate system rotates also around. This measurement co-ordinate system is defined by x″, y″, and z″ axis.
Chapter 3.0 Swing Algorithm Description
There is a general problem when analyzing and/or giving feedback during sports performance. Since the user is most of the time moving during the performance, the problem is how to detect when the user is performing sports movement that we want to guide and/or analyze. The problems that must be solved can be divided to following categories
Chapter 4.0 Swing Detection Algorithm
4.1 Full Swing Detection
Swing detection should be divided into two categories that are addressed separately. First category is the swing detection for post swing analysis. Second category is the sequential detection of the swing parts, as they happen, in order to be able to give feedback during the movement.
4.1.1 Detecting the Whole Swing
4.1.1.1 Stage 1, Detect Down Swing
Downswing is the fastest part of the movement, which makes it the easiest to detect. Downswing can be detected simply with thresholds for angular velocities and accelerations.
4.1.1.2 Stage 2, Check Start of the Swing Time
This detection is on all the time. Last detected point is kept in memory. When down swing (stage 1) is found, algorithm checks that last start of swing happened less than predefined time (Δt2) ago and not less that time ((Δt1) ago.
Start of swing has two conditions. First condition is that the device must be non moving. This means that the angular velocities are below a certain threshold (ωstart). Second condition that must be met at the same time is that the device is in orientation that corresponds to address position. The orientation that is based on earth gravitation is measured by accelerometers. This is shown in
4.1.2 Sequential Detection of the Swing Parts, as they Happen
The algorithm for sequential detection has to be flexible and recover quickly from error states so that the real swing is not missed. In addition, the algorithm must be very simple so that there is minimal latency and so that it can be implemented to a small microcontroller.
4.1.2.2 Stage 2 Start of the Swing
Specification Chapter 4.1.1.2 describes how the start of the swing is detected. This detection is on all the time when algorithm is active. The last detected point is kept in memory. Every time this detection is true the algorithm immediately starts from stage 3.
4.1.2.3 Stage 3, Angular Velocity threshold
Stage 3 is detected if three conditions are met. First and second are that the angular velocity ωx exceed predefined threshold value, and other angular velocities are in predefined range. Third condition is that non-moving location detected in stage 2 is less than time Δt2 ago. When stage 3 is detected, the algorithm moves to stage 4.
4.1.2.4 Stage 4, Swing Started to Right Direction
The swing direction can be monitored calculating cross product of arm direction in address position and during the swing. The resulting vector must point to certain direction for the swing to qualify as acceptable. Cross product is calculated
{right arrow over (s)}=armX×[1 0 0]=[0 armX(3)−armX(2)]. Eq. 1.
Stage 4 is calculated from same time point as the stage 3. When stage 4 is detected, the algorithm moves to stage 5.
4.1.2.5 Stage 5, End of Backswing
End of the backswing is detected (for right handed player) when
ωx″(i)<0
ωx″(i−1)>0 Eq. (2)
Signs are opposite for left handed player. Detection must occur within time Δt3 from the beginning of the swing.
4.1.2.6 Stage 6, Detect Downswing
Down swing detection was previously explained in specification Chapter 4.1.1.1. Detection must occur within time Δt4 from the end of the backswing.
4.1.2.7 Stage 7, Detect Hit Time
How to detect when the club hits the ball is explained in specification Chapter 5.2.7. Detection must occur within time Δt5 from the end of the backswing.
Chapter 5.0 Parameter Values Calculated from Sensor Values
This chapter describes how the different swing parameters are calculated. For instance, we calculate the 6 degrees of freedom (3 are location co-ordinates and 3 are orientation values) of the wrist during the swing. In order for the calculations to apply both left and right handed players we introduce fist variable
5.1 Angle Change
Angle change Δφ″, Δθ″, and Δψ″ are calculated from angular velocity using
where fSF is measurement frequency.
5.2 Rotation Matrix
Rotation matrix describes orientation change from previous position. Elements of the temporal rotation matrix ΔR are calculated at each measurement time step from angle change using:
The orientation change from the start position is calculated multiplying the temporal rotation matrix with previous rotation matrix after each time step.
R′(ti)=ΔR(ti)R′(ti−1) Eq. (6)
Rotation matrix at the start position t1 is
This means that co-ordinates are now aligned along the x′, y′, and z′ axis in the address position co-ordinate system. To change the co-ordinate system to vertical position we have to calculate the rotation matrix from address position to vertical position. We can do this using earth gravitation that we can measure using 3D accelerometer. Earth gravitation vector g must be calculated at start position when device is not moving. This is done averaging Δt6 seconds of acceleration sensor data before swing start time. We define that the earth gravitational direction is our new y axis direction.
and the lateral projection of the y′ axis, defines the z axis direction. Cross product of vector
y′=[0 1 0] Eq. (9)
And y gives z axis
The last co-ordinate axis x is then cross product of the other axis
Now we get the rotation matrix from earth gravitation co-ordinates to address position co-ordinates
In order to get the rotation matrix the other way from address position to gravitation, we have to calculate inverted matrix
The y-axis is now aligned to vertical direction and the z axis is aligned to direction of the y′ axis at the start. That is perpendicular to the direction of the wrist. To align x-axis along the target line. We need to rotate co-ordinates around y-axis amount β. There are several methods to determine β. β can be based on the hand orientation at address or it can be based on the hand movement during the swing.
Rotation matrix for y-axis rotation is
Now the final rotation matrix at each measured point is
R′(ti)=(ΔR(ti)R′(ti−1))Raligned Eq. (15)
5.3 Acceleration of Wrist
Acceleration in reference co-ordinate system is calculated using rotation matrix
{right arrow over (a)}x=R(ti){right arrow over (a)}x′, {right arrow over (a)}Y=R(ti){right arrow over (a)}y′, and {right arrow over (a)}Z=R(ti){right arrow over (a)}z′. Eq. (16)
This acceleration contains naturally earth gravitation, which has to be removed. The gravitation is measured at the beginning of the swing when we detected that the device is not moving.
{right arrow over (a)}X={right arrow over (a)}X−{right arrow over (g)}X, {right arrow over (a)}Y={right arrow over (a)}Y−{right arrow over (g)}Y, {right arrow over (a)}Z={right arrow over (a)}Z−{right arrow over (g)}Z Eq. (17)
5.4 Speed of Wrist
Speed in reference co-ordinate system is calculated numerically integrating
5.5 Location of Wrist
Location in reference co-ordinate system is calculated numerically integrating
5.6 Swing Angle
The swing angle is calculated from the projection of the wrist direction (x-axis of measurement co-ordinate system) into the xy-plane of the reference co-ordinate system. The swing angle is angle between vertical direction and the wrist projection to the xy-plane. For instance swing length is delivered from this calculation. It can be presented to user in many ways: as degrees from address position, as percentage of full swing or as equivalent clock position. After the rotation matrix is calculated the wrist direction becomes
armX(1:3,ti)=R(1,1:3,ti). Eq. (20)
Because the swing length is calculated from the projection of armX to the plane formed by x and y axis, the z axis component must be zero
armX(1:3,ti)=[armX(1,ti), armX(2,ti),0]. Eq. (21)
Now we get the swing angle
5.7 Left Forearm Rotation
Left arm rotation is calculated in radians rotated relative to the address position. Simple integration of the measured angle change in (1) gives
Where
armY(1:3,ti)=R(2,1:3,ti). Eq. (24)
When the left forearm rotation is combined with the swing angle we get squaring of forehand during the swing.
5.8 Steepness Relative to the Reference Swing (Shallow/Steep)
After we have calculated the swing angle α we can find the seven swing locations (αi). Then we can compare how shallow or steep we are in these positions relative to the reference swing. Comparison is done with arm vector (armX) from current swing and from reference swing. For positions 2, 3, 5, and 6 we can calculate
where φ is difference in steepness in radians between the current swing position and reference position. Here we assumed that because the angle αi is same then the x axis value is same for both arm vectors. However, for positions 1, 4, and 7 we need to first define that temporarily the x axis values for arm_refX and armX are the same
If we replace armX with arm_tempX, we can use equation (29) to calculate the steepness. The sign or the direction (shallow or steep) is calculated for the right hand players
armX(αi,3)−arm_refX(αi,3)<0, steep,
armX(αi,3)−arm_refX(αi,3)>0, shallow. Eq. (29)
for the left hand players the signs are opposite. Same way the steepness of the swing can be calculated using wrist location values. The armX vector is just replaced with unit vector that points from the swing origin to the location of selected swing position. Swing origin is explained in Chapter 5.10.
5.9 Left Arm Line (Right or Left)
Calculation of left arm line is very similar to steepness calculation. However now the z axis value of arm_refX and armX are the same
We can now calculate how much left arm is right or left from the target position
The sign or the direction (right or left) is calculated for the right hand players
armX(αi,1)−arm_refX(αi,1)<0, right,
armX(αi,3)−arm_refX(αi,3)>0, left. Eq. (34)
For left hand players the signs are opposite. Same way the left arm line of the swing can be calculated using wrist location values. The armX vector is just replaced with unit vector that points from the swing origin to the location of selected swing position. Swing origin is explained in Chapter 5.10.
5.10 Width of the Swing
Width of the swing is calculated using wrist location data (X, Y, Z) calculated in Chapter 5.5. First we have to define origin based on which width is calculated. Origin has to be selected so that it allows best comparison between players. Co-ordinates for origin are
Now we can calculate width based on
5.11 Club Head Speed
Club head speed depends from the speed of the hands, rotation of the forearm, and the wrist cocking. Clubhead speed is estimated from acceleration sensor data
νclubhead=0.175·(2|ax″max|+1.3|ay″max|+|az″|+1.2|Δax″|+2|Δay″|)D(club) Eq. (38)
Where ax″max is maximum acceleration so far in x-axis, ay″max is maximum acceleration so far in y-axis, Δax″ and Δax″ are calculated with eq (42), and D(club) is club multiplier.
Δax″=|ax″max|−|ax″|, when ax″max>ax″,
Δax″=0, when ax″max<ax″,
Δay″=|ay″max|−|ay″|, when ay″max>ay″, and
Δay″=0, when ay″max<ay″ (39)
The clubhead speed is filtered slightly with FIR filter
where m is number of filter taps, and hk are the filter taps listed in Table 2. The cut-off frequency of the FIR filter is ⅛·fSF.
5.10.1 Maximum Club Head Speed
Maximum club head speed is defined as maximum of νclubhead before the impact.
Chapter 6.0 Analyze Swing
6.1 Swing Dynamics
6.1.1 Tempo
Tempo is time values between different parts of the swing. Interesting values are:
The time values for back and downswing are achieved when different locations are detected as described in Chapter 7.2.
6.1.2 Rhythm
Rhythm is the ratio of different parts of the swing. For instance, ration of backswing and downswing times.
6.1.3 Timing
Timing means a multitude of different things in golf. The timing, as it is discussed as a golf feature that is feasible to do in a wrist stop, is timing of different actions during the swing. For instance, timing of the forearm rotation (Chapter 5.7) in backswing and the downswing. Difference between timing and the tempo is that changing the tempo does not change swing mechanics, but changing i.e. timing of forearm rotation will change the swing mechanics.
6.2 Swing Positions
We calculate the 6 degrees of freedom (3 are location co-ordinates and 3 are orientation values) of the wrist during the swing. To make the data easy for user to analyze, we present this data in only 7 points for the user. Analysis starts with detection of these seven swing points.
6.2.1 Start of Swing
Start of swing is already defined during the swing detection described in specification Chapter 4.1.1.2.
6.2.2 ¼ Swing (Back Swing)
¼ swing location and/or orientation for reference swing are defined by forearm rotation (described in Chapter 5.7). In ¼ swing position, the forearm has rotated 90 degrees compared to the start of the swing. When two ¼ positions from different swings are compared. The reference swing defines the swing angle (α1/4
6.2.3 ½ Swing (Back Swing)
½ swing location and/or orientation (in backswing) is defined as 90 degree swing angle (α1/2
6.2.3 Top of Back Swing
Top(=end) of back swing is defined as the time, location and/or orientation where the swing angle has maximum value (αtop
6.2.4 ½ Swing (Down Swing)
½ swing location and/or orientation (in down swing) is defined as 90 degree swing angle (α1/2
6.2.5 ¼ Swing (Down Swing)
¼ swing location and/or orientation for reference swing are defined by forearm rotation (described in Chapter 5.7). In the ¼ swing position (downswing), the forearm has under rotated 90 degrees compared to the end of the swing. When two ¼ swing positions from different swings are compared. The reference swing defines the swing angle (α1/4
6.2.6 Hit Time
Hit time, location and/or orientation is defined as the time and angle (αimpact
The hit time is defined when the derivate has highest value. In order for hit time to detect derivate must be at least 10/fSF2. In addition, to detect new highest value for derivate the next value must be 4/fSF2 higher than previous highest value.
A process 300 for selecting swing positions for measurement and analysis is described in
Referring to
The swing positions and measured data are shown in Table 3, as follows:
1. Table 3 Parameter calculations:
1.1 The left arm rotation is given by equation (23) in the Algorithm specification.
1.2 Distance from ball (high-low) in swing positions 1, 4 and 7 is described in the algorithm specification at Chapter 5.8. However, the unit is now degrees not inches or centimeters
1.3 Position (shallow-steep) in swing positions 2, 3, 5 and 6 is described in the algorithm specification in Chapter 5.8. However, the unit is now degrees not inch or centimeters
1.4 Left arm line (left or right) is described in specification Chapter 5.9 in the Algorithm specification. However the unit is now degrees not inch or centimeters
1.5 Width is described in specification Chapter 5.10 in the Algorithm specification. However the unit is now degrees not inch or centimeters
1.2, 1.3, 1.4 can also be calculated in inches or centimeters using values calculated by equation (23).
However, the advantage of using orientation instead of absolute location is that points can be compared between persons that have different physique. Like different height, arm lengths, etc.
The swing tempo and measured data are shown in Table 4, as follows:
Table 4, parameter calculations are as follows:
2.1 Backswing time is known if we can locate end of back swing from sensors data. This is described by equation (41) and specification Chapter 6.2.4.
2.2 Downswing time is known if we can locate ball strike from sensor data. This is described by equation (42) and in Chapter 5.2.7 in the Algorithm specification.
2.3 Total time is described by equation (42).
2.4 Backswing/Downswing ratio is self explanatory
2.5 Transition, i.e., pause at top is not described yet
2.6 Max club head speed is described by equation (40) and in Chapter 5.10.1 in the Algorithm specification.
2.7 Swing length is the value of equation 26 at the top position described in Chapter 6.2.4 in the Algorithm specification.
In
In addition to comparing a user's swing to target performance, the analyzer facilitates a user practicing his/her swing using a learning process, as follows:
The analyzer also facilitates teaching the user to improve his/her swing using a teaching process, as follows:
Alternatively, the analyzer informs user that it is ready to analyze the club movement.
In another embodiment, the analyzer may be re-programmed from new swing data provided by the user or from swing data stored in a database 170 (See
The individual best performance or other target performance is stored as raw motion sensor data or as an interpretation of that data, organized to be re-discoverable and usable form, stored for any period of time. After the desired performance is lost, the stored performance can be uploaded to the analyzer to be recreated in full detail, body positions, movements, timings, orientations, accelerations, all measured factors can be recreated with unequalled precision.
In re-creation of the stored target performances, the target values are utilized as training goals that are provided to the user through the user interface that can contain feedback methods for any senses, e.g. vibrations for sense of touch, sounds for hearing, lights or other visual elements etc.
It will be apparent to persons skilled in the relevant art that various changes in form and detail can be made therein without departing from the spirit and scope of the invention. Accordingly, the breadth and scope of the present invention should not be limited by any of the above-described exemplary embodiments, but should be defined only in accordance with the following claims and their equivalents.