US10729960B2 - System and method for improving bowling shot performance - Google Patents
System and method for improving bowling shot performance Download PDFInfo
- Publication number
- US10729960B2 US10729960B2 US15/923,706 US201815923706A US10729960B2 US 10729960 B2 US10729960 B2 US 10729960B2 US 201815923706 A US201815923706 A US 201815923706A US 10729960 B2 US10729960 B2 US 10729960B2
- Authority
- US
- United States
- Prior art keywords
- bowling
- shot
- bowling shot
- metrics
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active, expires
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 230000033001 locomotion Effects 0.000 claims abstract description 39
- 230000001413 cellular effect Effects 0.000 claims description 6
- 230000000977 initiatory effect Effects 0.000 claims description 4
- 230000006835 compression Effects 0.000 claims description 3
- 238000007906 compression Methods 0.000 claims description 3
- 238000004458 analytical method Methods 0.000 abstract description 8
- 238000004891 communication Methods 0.000 abstract description 8
- 238000013481 data capture Methods 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 28
- 238000010586 diagram Methods 0.000 description 9
- 238000004422 calculation algorithm Methods 0.000 description 8
- 238000005259 measurement Methods 0.000 description 8
- 238000003909 pattern recognition Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 6
- 230000001133 acceleration Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000000386 athletic effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000002991 molded plastic Substances 0.000 description 1
- 230000036314 physical performance Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B69/00—Training appliances or apparatus for special sports
- A63B69/0046—Training appliances or apparatus for special sports for bowling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/1633—Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
- G06F1/1684—Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675
- G06F1/1694—Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675 the I/O peripheral being a single or a set of motion sensors for pointer control or gesture input obtained by sensing movements of the portable computer
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/103—Detecting, measuring or recording devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
- A61B5/11—Measuring movement of the entire body or parts thereof, e.g. head or hand tremor, mobility of a limb
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/103—Detecting, measuring or recording devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
- A61B5/11—Measuring movement of the entire body or parts thereof, e.g. head or hand tremor, mobility of a limb
- A61B5/1124—Determining motor skills
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/68—Arrangements of detecting, measuring or recording means, e.g. sensors, in relation to patient
- A61B5/6801—Arrangements of detecting, measuring or recording means, e.g. sensors, in relation to patient specially adapted to be attached to or worn on the body surface
- A61B5/6802—Sensor mounted on worn items
- A61B5/6804—Garments; Clothes
- A61B5/6806—Gloves
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B24/00—Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
- A63B24/0003—Analysing the course of a movement or motion sequences during an exercise or trainings sequence, e.g. swing for golf or tennis
- A63B24/0006—Computerised comparison for qualitative assessment of motion sequences or the course of a movement
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B71/00—Games or sports accessories not covered in groups A63B1/00 - A63B69/00
- A63B71/08—Body-protectors for players or sportsmen, i.e. body-protecting accessories affording protection of body parts against blows or collisions
- A63B71/14—Body-protectors for players or sportsmen, i.e. body-protecting accessories affording protection of body parts against blows or collisions for the hands, e.g. baseball, boxing or golfing gloves
- A63B71/141—Body-protectors for players or sportsmen, i.e. body-protecting accessories affording protection of body parts against blows or collisions for the hands, e.g. baseball, boxing or golfing gloves in the form of gloves
- A63B71/148—Gloves for bowling and other ball games
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/163—Wearable computers, e.g. on a belt
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
- G06F3/014—Hand-worn input/output arrangements, e.g. data gloves
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K17/00—Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations
- G06K17/0022—Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations arrangements or provisious for transferring data to distant stations, e.g. from a sensing device
-
- G06K9/00342—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
- G06V40/23—Recognition of whole body movements, e.g. for sport training
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B2503/00—Evaluating a particular growth phase or type of persons or animals
- A61B2503/10—Athletes
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B2562/00—Details of sensors; Constructional details of sensor housings or probes; Accessories for sensors
- A61B2562/02—Details of sensors specially adapted for in-vivo measurements
- A61B2562/0219—Inertial sensors, e.g. accelerometers, gyroscopes, tilt switches
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B2220/00—Measuring of physical parameters relating to sporting activity
- A63B2220/80—Special sensors, transducers or devices therefor
- A63B2220/803—Motion sensors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2200/00—Indexing scheme relating to G06F1/04 - G06F1/32
- G06F2200/16—Indexing scheme relating to G06F1/16 - G06F1/18
- G06F2200/163—Indexing scheme relating to constructional details of the computer
- G06F2200/1637—Sensing arrangement for detection of housing movement or orientation, e.g. for controlling scrolling or cursor movement on the display of an handheld computer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2218/00—Aspects of pattern recognition specially adapted for signal processing
- G06F2218/12—Classification; Matching
Definitions
- the present invention relates to a data-driven integrative system and method for improving bowling shot performance. Specifically, a system and method for improving bowling shot performance by adjusting bowling shot parameters based on a comparison of bowling shot metrics data obtained by previously targeted shots, is described.
- the method comprises the steps of initiating a bowling shot application on a mobile device, taking bowling shots in either practice or a game, obtaining bowling shot sensor data, computing bowling shot metrics from the sensor data, storing the bowling shot metrics for specific successful bowling shots, displaying the bowling shot metrics on the mobile device, comparing the bowling shot metrics for a current bowling shot with the stored metrics of successful shots and adjusting subsequent bowling shots based on the comparison.
- Embodiments of the present invention related to methods and systems for estimating motion parameters and recognizing and quantifying certain activities. More particularly, various embodiments of the invention provide methods and systems operable to estimate specific sports and athletic motion parameters utilizing 3-axis acceleration and 3-axis gyroscope measurements coupled with a wearable computing platform and mobile display devices.
- Motion parameters such as acceleration, angular velocity, and a variety of derivative performance metrics, may be utilized in the training and evaluation of athletes, the rehabilitation of injured human patients, and in various recreational activities, including but not limited to both professional and nonprofessional sports.
- sports such as bowling, tennis, golf, baseball, cricket, table tennis, badminton, basketball and soccer
- athletic motions may be decomposed into a series of specific activities, the beginning and end of which can be segmented by specific detectable events.
- specific detectable events include the beginning of the backswing, the end of the backswing or equivalently the beginning of the forward swing, and the end of the forward swing or equivalently ball release from the hand.
- motion data can be acquired during play and input into activity recognition algorithms that automatically segment the data into activities, calculate performance metrics on the activity segments, and provide the user/athlete with measurable feedback that will help them improve performance and become more consistent over time.
- While the goal of this invention is to provide a system and method by which motion parameters for a bowling shot may be measured, analyzed and compared, resulting in an improvement in a bowler's performance when such comparative information is applied to subsequent bowling shots, it is anticipated that the system and method are applicable not only to a wide range of sports where motion parameters are critical, but also in other areas where it would be beneficial to a person to be able to analyze and compare motion parameters to improve physical performance.
- the present invention is directed to a method and a bowling shot analyzing system by which a user can improve his or her bowling shot performance, comprising a wearable form factor, such as a bowling glove, wristband, or other bodily attachments or garments, further comprising a microcomputer system having embedded components, such as digital accelerometer sensors, digital gyroscope sensors, and wireless data communications, coupled to methods for body motion data capture, methods for performance metrics calculations, including ball revolutions rate at release, ball speed, force, backswing duration, front swing duration, and shot tempo and other methods for storing and displaying on a mobile device the user's current and historical performance data using the Internet.
- a wearable form factor such as a bowling glove, wristband, or other bodily attachments or garments
- a microcomputer system having embedded components, such as digital accelerometer sensors, digital gyroscope sensors, and wireless data communications, coupled to methods for body motion data capture, methods for performance metrics calculations, including ball revolutions rate at release, ball speed, force, backs
- the system includes a wearable motion sensor device, which could be a wristband, bowling glove, compression sleeve or similar device, which contains an integrated sensor/computing platform, such as digital accelerometer sensors or digital gyroscope sensors.
- Sensor/computing platform comprises computer programming configured to detect a bowling shot while it is being made and to capture data generated by the bowling shot.
- the bowling shot sensor data is transmitted via Bluetooth data communications to a mobile device, such as a smart phone or tablet computer.
- the mobile device contains application software (App) which is configured to receive the transmitted bowling shot sensor data from the wearable device and further transmits the bowling shot sensor data through a cellular or Wi-Fi connection to an Internet-connected Web server computer.
- App application software
- the Web server computer receives and stores the transmitted bowling shot sensor data.
- the Web server computer calculates bowling shot metrics from the received bowling shot sensor data and communicates the calculated metrics via cellular or Wi-Fi connection back to mobile device for display to the user.
- the Web server computer may pass the received bowling shot sensor data to an Internet-connected analytical server computer through an Application Programming Interface (API) call, so that the analytical server computer calculates the bowling shot metrics and communicates the calculated metrics bank to the mobile device through the Web server computer.
- API Application Programming Interface
- the user can determine where there may be deviations in his bowling shot performance based on a comparison of metrics from previously selected bowling shots, and adjust a subsequent bowling shot to conform more closely to stored ideal bowling shot metrics.
- FIG. 1 is a diagram illustrating the overall bowling shot analyzing system
- FIG. 2 is a schematic diagram illustrating a wearable motion sensing device in an embodiment of a bowling glove, with an integrated sensor/computing platform and attachment mechanism;
- FIG. 3 a is a block diagram illustrating an overview of the main analytical server Applications Programming Interface (API);
- FIG. 3 b is a block diagram illustrating the Input Shot Sensor Data function 310 ;
- FIG. 3 c is a flow diagram illustrating the Shot Pattern Recognition Algorithm 320 ;
- FIG. 3 d is a chart illustrating the salient sensor characteristics of a typical bowling shot
- FIG. 3 e is a block diagram illustrating the Output Shot Metrics Data function 330 ;
- FIG. 4 shows the “log on” screen for the application running on mobile device 104 ;
- FIG. 5 shows the user Welcome screen 500 for the application running on a mobile device
- FIG. 6 shows the bowling Mode Selection screen 600 for the application running on a mobile device
- FIG. 7 shows the Practice Mode bowling shot analysis screen 700 for the application running on a mobile device
- FIG. 8 shows the Tagged Shots screen 800 for the application running on a mobile device
- FIG. 9 shows the Compare Shot screen 900 for the application running on a mobile device
- FIG. 10 shows the shot comparison metrics screen 1000 for the application running on a mobile device
- FIG. 11 shows the Game Mode scoresheet screen 1100 for the application running on a mobile device
- FIG. 12 shows the Strikeball Statistics screen 1200 for the application running on a mobile device
- FIG. 13 shows the Game History screen 1300 for the application running on a mobile device
- FIG. 14 shows the Game History scoresheet screen 1400 for the application running on a mobile device.
- FIG. 15 shows the Shot History screen 1500 for the application running on a mobile device.
- FIG. 1 is a diagram illustrating the overall system 100 for analyzing a bowling shot and improving bowling performance.
- the system includes a wearable motion sensor device 101 , which could be a wristband, bowling glove 108 , compression sleeve or similar device, which contains an integrated sensor/computing platform 102 .
- Sensor/computing platform 102 may be detachably connected to motion sensor device 101 , and comprises computer programming configured to detect a bowling shot while it is being made and to capture data generated by the bowling shot, such as accelerometer and gyroscope data.
- Sensor/computing platform 102 transmits the bowling shot sensor data via Bluetooth data communications 103 to a mobile device 104 , such as a smart phone, tablet computer or similar device.
- Mobile device 104 contains application software (App) running on mobile device 104 , which is configured to receive the transmitted bowling shot sensor data from the wearable device 101 .
- Mobile device 104 is further configured to transmit the bowling shot sensor data through a cellular or Wi-Fi connection 105 to an Internet-connected Web server computer 106 .
- Web server computer 106 is configured to receive and store the transmitted bowling shot sensor data.
- Web server computer 106 calculates bowling shot metrics from the received bowling shot sensor data and communicates the calculated metrics via cellular or Wi-Fi connection 105 back to mobile device 104 for display to the user.
- Web server computer 106 is also configured to store historical user shot data in a database.
- Web server computer 106 may pass the received bowling shot sensor data to an Internet-connected analytical server computer 107 through an Application Programming Interface (API) call, wherein analytical server computer 107 calculates bowling shot metrics from the received bowling shot sensor data.
- Analytical server computer 107 then communicates the calculated metrics back to Web server computer 106 , which in turn, communicates the calculated metrics via cellular or Wi-Fi connection 105 to mobile device 104 for display to the user.
- the user can determine where there may be deviations in his bowling shot performance based on a comparison of metrics from previously selected bowling shots. Accordingly, the user can adjust a subsequent bowling shot to conform more closely to stored ideal bowling shot metrics.
- FIG. 2 is a schematic diagram illustrating an embodiment of wearable motion sensor device 101 , see also FIG. 1 , wherein wearable motion sensor device 101 comprises a bowling glove 108 , integrated sensor/computing platform 102 , and an attachment mechanism 209 , 205 .
- wearable motion sensor device 101 when worn by a bowler, motion sensor device's 101 shot recognition method stored in microprocessor 202 senses when a bowling shot has occurred and wirelessly transmits bowling shot sensor data via Bluetooth communications 103 to mobile device 104 , which can be a smart phone, tablet computer or similar mobile device.
- the embedded bowling shot recognition method conserves the power of the included sensor/computing platform 102 by only transmitting sensor data after a shot has been taken by the user, significantly increasing battery life.
- Sensor/computing platform 102 comprises a molded plastic housing to fully enclose and protect the internal electronics components.
- the housing may also include an attachment mechanism 205 to attach sensor/computer platform 102 to bowling glove 108 .
- Attachment mechanism 205 connects directly and securely to a corresponding attachment mechanism 209 , that is integral to the bowling glove 108 .
- Examples of attachment mechanisms 205 and 209 are Velcro and snaps.
- sensor/computing platform 102 comprise a microprocessor 202 , a memory 203 containing executable instructions encoding sensor/computing platform's 102 methods and data, motion type sensors 204 that include but are not limited to digital 3-axis accelerometers and digital 3-axis gyroscopes, a Bluetooth communications module 206 , Input/Output (I/O) components including a power ON/OFF switch, LED indicator, a micro-USB battery charging connector, and a Power management subsystem 208 that includes a battery and recharging circuitry.
- I/O Input/Output
- FIG. 3 a summarizes an Applications Programming Interface (API) software module 300 executing on either Web server 106 or analytical server 107 (or both), that computes bowling shot metrics, as follows.
- API software module 300 receives bowling shot sensor data via its input shot sensor data function 310 in the form of a JSON-formatted data packet sent via the Internet from a remote computer (e.g., Host Server).
- the data packet contains a date and time stamped recording of a sequential set of sensor data captured from a wearable apparatus, including 3-axis accelerometer and 3-axis gyroscope signals.
- the data packet also contains numerical values representing a) the data sampling rate in Hz of the wearable apparatus, and b) the weight of ball that was used during the bowling shot.
- Input shot sensor data function 310 passes the received sensor data to the shot pattern recognition algorithm function 320 , which comprises software that analyzes the 3-axis accelerometer sensor, 3-axis gyroscope sensor, and ball weight data and calculates the following bowling shot metrics:
- the results of the shot pattern recognition algorithm function 320 are passed to the output shot metrics data function 330 , which comprises software that first prepares a JSON-formatted data packet containing the previously calculated shot metrics, and secondly returns said metrics data to the requesting remote computer (e.g. Host Server) over the Internet using standard Internet data communications protocols.
- the requesting remote computer e.g. Host Server
- FIG. 3 b further defines input shot sensor data function 310 as comprising decode received JSON data packet sub-module 311 and configure & initialize computational data structures sub-module 312 .
- Decode received JSON data packet sub-module 311 converts the received JSON data packet from Internet data communications protocol (e.g., HTTP, TCP/IP, etc.) into internal memory storage values suitable for computer programming.
- Configure & initialize computational data structures sub-module 312 establishes internal memory data structures comprising all necessary numerical data for executing shot pattern recognition algorithm function 320 , and for computing the bowling shot metrics.
- Key computational data structures comprise arrays for sensor data, including 3-axis accelerometer measurements (X, Y, Z), 3-axis gyroscope measurements (X, Y, Z), as well as the recording timestamp associated with each sensor measurement.
- Each sensor data array represents a time-sequential data series that captures a complete bowling shot of the user, from the initiation of bowler's forward arm swing up to the point of ball release. Time duration of a typical bowling shot ranges from 3-4 seconds and shot pattern recognition algorithm 320 detects key bowling shot event segments from analysis of the sensor data arrays.
- FIG. 3 c is a flow diagram for shot pattern recognition algorithm 320 , illustrating a series of calculation functions 321 - 328 that jointly determine the aforementioned bowling shot metrics.
- the determine ball release index function 321 identifies the array index associated with the maximum magnitude value. It is expected that a peak value will occur coincident to the time of ball release.
- the ball release index thusly determined allows the maximum ball revolutions rate at ball release, herein referenced as RevRate, to be established by the calculate RevRate at ball release function 322 .
- the ball release index thusly determined also similarly allows the time of ball release to be determined by the determine time at ball release function 323 .
- the calculate maximum shot force function 324 uses the magnitude array corresponding to accelerometer sensor measurements from EQ. 1 to a) identify an array index associated with the maximum magnitude value, and b) calculate the maximum force from the magnitude array value corresponding to the index and the ball weight provided by input shot sensor data function 310 previously described.
- the magnitude array calculated from EQ. 1 corresponding the gyroscope sensor measurements is smoothed through a moving average operator to mitigate sensor measurement noise and improve metric precision.
- the key events related to bowling shot metrics include:
- the calculate duration of backswing function 325 determines the duration of the bowler's backswing as the time difference between points P 1 and P 3 as illustrated in FIG. 3 d, where the chart represents a magnitude versus time plot for a typical bowling shot preceding the ball release at point P 4 .
- point P 1 is determined through a thresholding function within a predefined search window on the gyroscope magnitude array.
- determine ball release index function 321 provides a ball release index that allows the time of ball release to be determined by determine time at ball release function 323 , herein referred to and illustrated in FIG. 3 d as point P 4 .
- a search window for recognizing point P 1 is established under the assumption that a typical bowler's shot takes X seconds from start to finish, whereby X may be assigned by either a suitable population average or by a specific bowler's learned value via some calibration function.
- the point P 1 can reliably be determined by a method that a) searches the smoothed magnitude data array from the Start Time to time(P 4 ), where said magnitude data increases from a near-zero value at the start of bowler arm swing and subsequently follows the known motion pattern as depicted in FIG. 3 d, and b) applies a simple thresholding function on magnitude values within the search time window.
- the magnitude threshold illustrated in FIG. 3 d at parameter T, may be assigned a value of approximately 5 degrees per second, although other values may also provide similar accuracy for the determination of point P 1 in time.
- the End of backswing (Start of frontswing) event is shown as point P 3 on the time scale.
- a method for recognizing point P 3 is to establish a search window who's lower boundary is approximately one second preceding the point of ball release (P 4 ) and, while searching in a backward direction from point P 4 , determine when the value of the first derivative of magnitude has a zero or negative value.
- This zero-derivative point (P 3 ) represents the End of backswing event wherein the bowler's arm changes from a backward direction to a forward direction.
- the calculate duration of frontswing function 326 determines the duration of the bowler's frontswing as the time difference between points P 3 and P 4 as illustrated in FIG. 3 d.
- Frontswing Duration time( P 4) ⁇ time( P 3) (4)
- the calculate ball speed at ball release function 328 calculates the metric of Ball Speed at Release as the numerical integral of the measured acceleration magnitude near the release time as:
- FIG. 3 e illustrates the output shot sensor data function 330 as comprising an encode shot metrics JSON data packet sub-module 331 and a send data packet in response to API request sub-module 332 .
- Encode shot metrics JSON data packet sub-module 311 formats the bowling shot metrics calculated by shot pattern recognition algorithm function 320 into a JSON data packet for transmission.
- Send data packet in response to API request sub-module 332 executes an HTTP response containing the JSON-formatted bowling shot metrics data to address issuing the API request for data.
- FIG. 4 shows the log on screen of the application running on the mobile device 104 , which allows the user to input his Username 401 and Password 402 .
- the user may click the Sign In button 403 to connect to the backend Web Server 106 .
- the user's log on credentials are posted to a validation program running on the Web Server 106 , which validates the user by searching a database table for a matching entry.
- the user gains access to the bowling shot analysis and performance improvement system and the application running on mobile device 104 displays the Welcome screen 500 , shown in FIG. 5 .
- Welcome screen 500 displays the user's first name 501 in the header as positive confirmation that the user successfully logged in.
- Welcome screen 500 then serves as the main menu for the mobile application, providing option buttons for capturing and analyzing bowling shot sensor data by an instruction to start bowling 502 , followed by the functions of viewing historical game data 503 , viewing historical shot data 504 , entering or changing bowler profile information 505 , viewing instructional media 506 , and viewing miscellaneous information about the company 507 .
- Mode Selection screen 600 for the application running on the mobile device 104 appears, as shown in FIG. 6 .
- Mode Selection screen 600 presents the user with two choices, selected by touching one of the buttons provided for Practice Mode 601 or Game Mode 602 .
- Practice Mode 601 allows the bowler to freely take as many shots as desired during a practice session.
- the motion sensor device 101 automatically detects when a shot is taken and transmits the raw motion sensor data to the application running on the mobile device 104 , whereby the mobile application calculates and displays the shot metrics, such as shown in the screen of FIG. 7 .
- FIG. 7 shows the Practice Mode bowling shot sensor data analysis screen 700 for the application running on the mobile device 104 appearing immediately after the user takes a shot.
- the mobile application timestamps and assigns a unique ID 701 to each shot, which are displayed at the top of analysis screen 700 .
- Separate gauge-style readouts are provided for each of the calculated shot metrics, including ball revolution rate at release 702 , ball speed at release 703 , shot force at release 705 , backswing duration 704 , frontswing duration 707 , and Bowler Armswing ration (BAR) 706 .
- BAR is also herein referred to as Shot Tempo.
- the mobile application allows the user to “tag” the shot for comparison to future shots taken, with the goal of developing consistency for different types of shots (e.g. strike, 10-pin, 7-pin, etc.).
- the user is provided with TAG 708 and COMPARE 709 buttons for this purpose.
- FIG. 8 shows the Tagged Shots screen 800 for the application running on the mobile device 104 .
- Tagged Shots screen 800 appears immediately after the user touches the TAG button 708 on the Practice Mode bowling shot analysis screen 700 shown in FIG. 7 .
- the mobile application allows the user to tag and store up to ten different shots.
- the Shot Name and associated metrics of a tagged shot are stored in the database on the Web Server 106 .
- the user can freely edit existing Tagged Shots 801 and enter new ones by touching an empty button. All Tagged Shot entries shown on Tagged Shots screen 800 are stored in the database on Web Server 106 when the user touches the Save button 802 .
- Compare Shot screen 900 for the application running on the mobile device 104 immediately appears.
- the Compare method allows the user to compare the metrics of the last bowling shot taken to those of a previously tagged bowling shot.
- Compare Shot screen 900 presents the date and shot ID of the last bowling shot taken and a radio button 901 corresponding to each Tagged Shot previously stored on Web Server 106 .
- the user touches one button 901 corresponding to the specific Tagged Shot to which he wishes to compare his last shot taken. Pressing the OK button 902 will trigger the Compare Shot method of the mobile application to execute, which generates the screen of FIG. 10 on the mobile device 104 .
- FIG. 10 shows the shot comparison metrics screen 1000 for the application running on the mobile device 104 , which appears immediately after the user touches the OK button 902 on Compare Shot screen 900 shown in FIG. 9 .
- the header the shot comparison metrics screen 1000 indicates the Tagged Shot being compared (in this case a Strike ball).
- Metrics screen 1000 displays two columns of metrics 1001 ; one with values for the last shot taken 1002 and one with values for Tagged Shot 1003 stored in the Web Server database 106 .
- the Compare Shot method of the mobile application also calculates and displays an overall Consistency Rating 1004 as a percentage, calculated as:
- Game Mode scoresheet screen 1100 appears on mobile device 104 .
- FIG. 11 Game Mode 602 allows the user to record his game scores, frame-by-frame and shot-by-shot, on a bowling scoresheet as part of the mobile application. In Game Mode, all shot metrics are recorded in a database on the Web Server 106 for future analysis of performance metrics and shot consistency.
- Game Mode scoresheet screen 1100 shows the game number currently being scored at the top. The user enters his score for each shot by clicking on the highlighted frame on the scoresheet 1101 .
- Scoresheet 1101 works similarly to a typical scoring system in a bowling alley, including marking strikes with an “X” symbol and spares with the “/” symbol for the second shot of any frame.
- the mobile application displays the corresponding metrics for the last shot taken, similar to the screen depicted in FIG. 7 .
- the user is able to TAG 708 and COMPARE 709 shots in Game Mode in the same manner as previously described for the Practice Mode shot screen 700 .
- the user can touch SAVE button 1103 to store all game results in the database on Web Server 106 , including metrics for all shots taken in the game.
- the mobile application automatically clears all frame scores in scoresheet 1101 and displays the next sequential game number at the top of screen 1100 .
- the user can continue playing and scoring as many games as desired while in Game Mode.
- the user can also start a game over for any reason by touching CLEAR button 1104 .
- the mobile application clears out the scores from scoresheet and is ready to accept new score entries.
- the displayed game number remains the same as it was before the user touched CLEAR 1104 .
- the user can touch the “Strike Ball Stats” button 1105 to check the consistency of his first ball shots taken so far in the game.
- the action causes the mobile application to compute the averages for all first ball metrics at that point in the game, as well as a Consistency Rating (CR) for each metric.
- CR Consistency Rating
- FIG. 12 shows the Strikeball Stats screen 1200 for the application running on the mobile device 104 that appears when the user touches the “Strike Ball Stats” button 1105 in the Game Mode scoresheet screen 1100 shown in FIG. 11 .
- the Game Date and Game Number are displayed at the top of the screen 1201 .
- the mobile application computes and displays the averages of all first ball metrics 1203 at that point in the game, as well as an individual Consistency Rating (“CR”) for each metric 1204 .
- CR Consistency Rating
- the CR displayed for each metric 1204 is based on a statistical measure of variation across all first ball shots in the game.
- FIG. 13 shows the Game History screen 1300 for the application running on the mobile device 104 that appears when the user touches the “Game History” button 503 in the Welcome screen 500 shown in FIG. 5 .
- the Game History feature allows the user to view his recorded game scores and shot metrics, including shot consistency ratings.
- This screen shows all historical games 1301 recorded by the user, listed by expandable buttons that show the game date and the number of games played 1302 .
- at the bottom of the screen is a graph of the user's consistency rating for a given metric 1304 , with Rev Rate being the initial default selection. The graph displays the average monthly Consistency Ratings for the selected metric across the year.
- the user is provided with “Select Metric” left/right arrow buttons 1303 above the graph to allow selection of a different metric for the Consistency Rating graph 1304 .
- the mobile application presents a list of recorded games, allowing the user to select any one game and drill down into the recorded data for that game.
- the mobile application displays the selected game data in a bowling scoresheet display.
- FIG. 14 shows the Game History scoresheet screen 1400 for the application running on the mobile device 104 that appears when the user drills down into one specific game from the Game History screen 1300 shown in FIG. 13 .
- the Game Date and Game Number 1401 are displayed at the top of the screen 1400 .
- this scoresheet 1402 has similar features as the scoresheet previously described for Game Mode in FIG. 11 , including viewing shot metrics for any frame 1403 and Strike Ball Stats 1404 .
- FIG. 15 shows the Shot History screen 1500 for the application running on the mobile device 104 that appears when the user touches the “Shot History” button 504 in the Welcome screen 500 shown in FIG. 5 .
- the Shot History feature allows the user to view his recorded shot metrics across monthly game play.
- the mobile application reads all recorded shot data from the Web Server 106 and displays the most recent month's of Rev Rate data on the graph 1505 .
- Control buttons are provided that allow the user to select a different date 1502 and a different metric 1504 for display.
- the Get Data button 1506 must be touched to retrieve new data from the Web Server 106 .
- the selected date 1501 and selected metric 1503 are shown on the display screen 1500 .
- the graph 1505 includes a plot for both the first and second shots.
- the first and second shot plots are time-aligned, meaning that they correspond to the same game and frame. Note that there will be no second shots for frames that the user strikes on his first shot, causing gaps in the plot for the second shot (not shown in
Landscapes
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Heart & Thoracic Surgery (AREA)
- Molecular Biology (AREA)
- Veterinary Medicine (AREA)
- Physical Education & Sports Medicine (AREA)
- Public Health (AREA)
- Animal Behavior & Ethology (AREA)
- Surgery (AREA)
- Medical Informatics (AREA)
- Biophysics (AREA)
- Pathology (AREA)
- Biomedical Technology (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Dentistry (AREA)
- Physiology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Multimedia (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
Description
magnitude=(X{circumflex over ( )}2+y{circumflex over ( )}2+z{circumflex over ( )}2){circumflex over ( )}0.5 (1)
Each sensor data array represents a time-sequential data series that captures a complete bowling shot of the user, from the initiation of bowler's forward arm swing up to the point of ball release. Time duration of a typical bowling shot ranges from 3-4 seconds and shot
Start Time=time(P4)−X (2)
Through suitable determination of the parameter X, the point P1 can reliably be determined by a method that a) searches the smoothed magnitude data array from the Start Time to time(P4), where said magnitude data increases from a near-zero value at the start of bowler arm swing and subsequently follows the known motion pattern as depicted in
Backswing Duration=time(P3)−time(P1) (3)
Similarly, the calculate duration of
Frontswing Duration=time(P4)−time(P3) (4)
The calculate shot
Shot Tempo=Backswing Duration÷Frontswing Duration (5)
The calculate ball speed at
where
-
- Mt=magnitude of acceleration,
- a=time(P4−n),
- b=time(P4),
- n=number of time samples for averaging.
where:
-
- Useri=ith metric for user's shot
- Taggedi=ith metric for tagged shot
CR i=1−CV i (8)
where:
-
- δi=standard deviation of ith metric across the game
- μi=mean of ith metric across the game
In addition to the individual CR's for each metric, the mobile application also computes an Overall Consistency Rating. TheOverall CR 1205 displayed by the mobile application on theStrikeball Stats screen 1200 is simply the average of the six individual metric CR's from EQ. 8.
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/923,706 US10729960B2 (en) | 2017-03-17 | 2018-03-16 | System and method for improving bowling shot performance |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762472800P | 2017-03-17 | 2017-03-17 | |
US15/923,706 US10729960B2 (en) | 2017-03-17 | 2018-03-16 | System and method for improving bowling shot performance |
Publications (2)
Publication Number | Publication Date |
---|---|
US20180264337A1 US20180264337A1 (en) | 2018-09-20 |
US10729960B2 true US10729960B2 (en) | 2020-08-04 |
Family
ID=63521406
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/923,706 Active 2038-07-01 US10729960B2 (en) | 2017-03-17 | 2018-03-16 | System and method for improving bowling shot performance |
Country Status (1)
Country | Link |
---|---|
US (1) | US10729960B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR3087911B1 (en) * | 2018-10-24 | 2021-11-12 | Amadeus Sas | POINTING AND CLICKING AUTHENTICATION |
US11771972B2 (en) * | 2020-06-18 | 2023-10-03 | Maceo Baston | Sports training system |
GB2615518A (en) * | 2022-01-28 | 2023-08-16 | Goalkeeper Com Ltd | Goalkeeper sensor system and method |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6110052A (en) * | 1996-02-14 | 2000-08-29 | American Bowling Congress | Apparatus and method for analyzing bowling technique |
US20080287204A1 (en) * | 2007-05-15 | 2008-11-20 | United States Bowling Congress, Inc. | System and method for analyzing bowling ball motion |
US7845225B2 (en) * | 2008-02-11 | 2010-12-07 | United States Bowling Congress, Inc. | Analyzing grip pressure of a bowler |
US20130106603A1 (en) * | 2010-11-01 | 2013-05-02 | Nike, Inc. | Wearable Device Assembly Having Athletic Functionality |
US20160217325A1 (en) * | 2010-08-26 | 2016-07-28 | Blast Motion Inc. | Multi-sensor event analysis and tagging system |
US20170039882A1 (en) * | 2014-04-22 | 2017-02-09 | Sony Corporation | Information processing apparatus, information processing method, and computer program |
US9610476B1 (en) * | 2016-05-02 | 2017-04-04 | Bao Tran | Smart sport device |
US9814928B2 (en) * | 2014-03-13 | 2017-11-14 | Jon Taylor | Arcuate motion apparatus and method |
US20180078820A1 (en) * | 2016-09-20 | 2018-03-22 | James Joseph Bundock | System and Method for Measuring Speed, Spin Rate, and Accuracy of a Sporting Device |
US20180114460A1 (en) * | 2016-10-20 | 2018-04-26 | Jimmie Rivera, JR. | Bowling feedback training device |
-
2018
- 2018-03-16 US US15/923,706 patent/US10729960B2/en active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6110052A (en) * | 1996-02-14 | 2000-08-29 | American Bowling Congress | Apparatus and method for analyzing bowling technique |
US20080287204A1 (en) * | 2007-05-15 | 2008-11-20 | United States Bowling Congress, Inc. | System and method for analyzing bowling ball motion |
US7845225B2 (en) * | 2008-02-11 | 2010-12-07 | United States Bowling Congress, Inc. | Analyzing grip pressure of a bowler |
US20160217325A1 (en) * | 2010-08-26 | 2016-07-28 | Blast Motion Inc. | Multi-sensor event analysis and tagging system |
US20130106603A1 (en) * | 2010-11-01 | 2013-05-02 | Nike, Inc. | Wearable Device Assembly Having Athletic Functionality |
US9814928B2 (en) * | 2014-03-13 | 2017-11-14 | Jon Taylor | Arcuate motion apparatus and method |
US20170039882A1 (en) * | 2014-04-22 | 2017-02-09 | Sony Corporation | Information processing apparatus, information processing method, and computer program |
US9610476B1 (en) * | 2016-05-02 | 2017-04-04 | Bao Tran | Smart sport device |
US20180078820A1 (en) * | 2016-09-20 | 2018-03-22 | James Joseph Bundock | System and Method for Measuring Speed, Spin Rate, and Accuracy of a Sporting Device |
US20180114460A1 (en) * | 2016-10-20 | 2018-04-26 | Jimmie Rivera, JR. | Bowling feedback training device |
Also Published As
Publication number | Publication date |
---|---|
US20180264337A1 (en) | 2018-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210012099A1 (en) | Sessions and Groups | |
US10366628B2 (en) | Activity recognition with activity reminders | |
KR101954042B1 (en) | Flight time | |
AU2017331639B2 (en) | A system and method to analyze and improve sports performance using monitoring devices | |
EP2782046B1 (en) | Information processing device, sensor device, information processing system, and storage medium | |
US10121065B2 (en) | Athletic attribute determinations from image data | |
US10114462B2 (en) | Device and method for entering information in sports applications | |
US10803090B2 (en) | Energy expenditure calculation using data from multiple devices | |
US10729960B2 (en) | System and method for improving bowling shot performance | |
JP2018155771A (en) | Electronic device | |
US10657156B2 (en) | Energy expenditure calculation using data from multiple devices | |
US9972141B2 (en) | Finish line sensor device | |
KR20140054983A (en) | System and method of correcting golf pose | |
US10001563B2 (en) | Tracking and virtual reconstruction of activities | |
US20230302325A1 (en) | Systems and methods for measuring and analyzing the motion of a swing and matching the motion of a swing to optimized swing equipment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY |
|
FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO SMALL (ORIGINAL EVENT CODE: SMAL); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY |