Training program customization using sensor-equipped athletic garments
Claim Score by NHIP
Abstract
An exercise feedback system monitors the performance of athletes wearing a garment with sensors while exercising. The sensors generate physiological data such as muscle activation data, heart rate data, or data describing the athlete's movement. The system extracts features from the physiological data and compares the features with reference exercise data to determine metrics of performance and biofeedback. Based on the physiological data, the system may also modify exercise training programs for the athlete. The exercise feedback system can display the biofeedback using visuals or audio, as well as modified exercise training programs, via the athlete's client device in real time while the athlete is exercising. By reviewing the biofeedback, the athlete may correct the athlete's exercise form to properly use the target muscles for the exercise, or change the certain workouts to personalize the training program.

Term
Projected expiry 8 February 2039.
- Priority and filed
- Published
- Today
- Projected expiry
20 claims: 3 independent, 17 dependent
- 1A method comprising:generating an exercise training program for a user including a plurality of exercises based at least in part on user information received from the user;receiving physiological data from a garment worn by the user, the physiological data describing muscle activation of a plurality of muscles of the user while performing an exercise of the plurality of exercises, the garment including a plurality of sensors configured to generate the physiological data;generating metrics of performance of the exercise by the user;modifying the exercise training program based on the generated metrics of performance;and providing information representative of the modified exercise training program to a client device for display to the user.
- 12Broadest claimClaim Score 67, broad(NHIP)A method comprising:receiving physiological data from a garment worn by a user, the physiological data describing muscle activation of a plurality of muscles of the user while performing an exercise, the garment including a plurality of sensors configured to generate the physiological data;generating metrics of performance of the exercise by the user;modifying an exercise training program for the user based on the generated metrics of performance, the exercise training program including a plurality of exercises;and providing information representative of the modified exercise training program to a client device for display to the user.
- 15A computer program product comprising a non-transitory computer readable storage medium having instructions encoded thereon that, when executed by a processor, cause the processor to:generate an exercise training program for a user including a plurality of exercises based at least in part on user information received from the user;receive physiological data from a garment worn by the user, the physiological data describing muscle activation of a plurality of muscles of the user while performing an exercise of the plurality of exercises, the garment including a plurality of sensors configured to generate the physiological data;generate metrics of performance of the exercise by the user;modify the exercise training program based on the generated metrics of performance;and provide information representative of the modified exercise training program to a client device for display to the user.
Independent claims3
101 paragraphs in 4 sections, as filed
BACKGROUND
1. Field of Art
0001This description generally relates to sensor-equipped athletic garments, and specifically to detecting athletic performance using sensor-equipped athletic garments and modifying an exercise training program in response.
2. Description of the Related Art
0002Sensors record a variety of information about the human body. For example, electrocardiograph (ECG) electrodes can measure electrical signals from the skin of a person that are used to determine the person's heart rate. In addition, electromyography (EMG) electrodes can measure electrical activity generated by a person's muscles. Heart rate and muscle movement information may be useful for evaluating the person's physiological condition, for instance, while exercising. This information may also be used to evaluate the performance of an athlete during strength and conditioning training.
0003When exercising, athletes and coaches may not be able to determine whether the athlete is properly performing certain types of exercises. For example, a bench press exercise has a proper form that requires an athlete to focus on exerting a particular set of muscles in the upper body. Performing exercises with improper form results in suboptimal exercise training for athletes, and may even cause injury to an athlete. Also, without proper form, the athlete may not be gaining the intended benefit from an exercise (e.g., strengthening a specific muscle group targeted by the exercise). Additionally, athletes may not recognize when they reach a level of fatigue that is negatively impacting their exercise performance. Currently, an athlete can work with a coach who observes the athlete's performance and provides feedback. However, it may not be practical for an athlete to exercise with a coach at all times. Further, feedback provided by coaches can be subjective, based on how the athlete feels at a given time, or a rough observation by the human eye of the motion of the athlete.
SUMMARY
0004An exercise feedback system builds exercise training programs for athletes. Athletes wear a garment with sensors while exercising. The sensors generate physiological data such as muscle activation data, heart rate data, or data describing the athlete's movement. Based on the physiological data for an athlete, the exercise feedback system modifies an exercise training program for the athlete. For example, if the physiological data indicates that the athlete is performing a squat exercise with improper balance (leaning too much on the left or right side), the exercise feedback system adds exercises that help improve the user's balance to the exercise training program. The exercise feedback system displays the modified exercise training program on the athlete's mobile device so that the athlete can change the athlete's exercise workouts. Incorporating physiological data, muscle usage data, exertion data, timing data, and/or fatigue data into the process of executing a training program personalizes the athlete's training to improve training results.
BRIEF DESCRIPTION OF DRAWINGS
<figref idref="DRAWINGS">FIG. 1</figref> is a diagram of a system environment for monitoring exercise data according to one embodiment.
<figref idref="DRAWINGS">FIG. 2</figref> is a diagram of a sensor-equipped athletic garment according to one embodiment.
<figref idref="DRAWINGS">FIG. 3</figref> is a diagram of an exercise plan model used by the exercise feedback system according to one embodiment.
<figref idref="DRAWINGS">FIG. 4A</figref> is a block diagram of an exercise feedback system according to one embodiment.
<figref idref="DRAWINGS">FIG. 4B</figref> is a block diagram of a client device according to one embodiment.
<figref idref="DRAWINGS">FIG. 5A</figref> is a diagram of an athlete performing a squat exercise while wearing a sensor-equipped garment according to one embodiment.
<figref idref="DRAWINGS">FIG. 5B</figref> is a user interface showing muscle activation feedback according to one embodiment.
<figref idref="DRAWINGS">FIG. 5C</figref> is a user interface showing exercise balance feedback according to one embodiment.
<figref idref="DRAWINGS">FIG. 5D</figref> is a user interface showing exercise set score feedback according to one embodiment.
<figref idref="DRAWINGS">FIG. 5E</figref> is a user interface showing an exercise training program according to one embodiment.
<figref idref="DRAWINGS">FIG. 5F</figref> is a user interface showing a modified version of the exercise training program shown in <figref idref="DRAWINGS">FIG. 5E</figref> according to one embodiment.
<figref idref="DRAWINGS">FIG. 6A</figref> is a diagram of an athlete performing a bench press exercise while wearing a sensor-equipped garment according to one embodiment.
<figref idref="DRAWINGS">FIG. 6B</figref> is a user interface showing muscle activation feedback according to one embodiment.
<figref idref="DRAWINGS">FIG. 6C</figref> is a user interface showing target muscle feedback according to one embodiment.
<figref idref="DRAWINGS">FIG. 6D</figref> is a user interface showing exercise set score feedback according to one embodiment.
<figref idref="DRAWINGS">FIG. 6E</figref> is a user interface showing an exercise training program according to one embodiment.
<figref idref="DRAWINGS">FIG. 6F</figref> is a user interface showing a modified version of the exercise training program shown in <figref idref="DRAWINGS">FIG. 6E</figref> according to one embodiment.
<figref idref="DRAWINGS">FIG. 7</figref> is a flowchart of a process for providing exercise feedback according to one embodiment.
<figref idref="DRAWINGS">FIG. 8</figref> is a flowchart of a process for modifying an exercise training program according to one embodiment.
<figref idref="DRAWINGS">FIG. 9A</figref> is a user interface showing muscle activation feedback for upper body muscles according to one embodiment.
<figref idref="DRAWINGS">FIG. 9B</figref> is a user interface showing muscle activation feedback for lower body muscles according to one embodiment.
<figref idref="DRAWINGS">FIG. 9C</figref> is another user interface showing muscle activation feedback for lower body muscles according to one embodiment.
<figref idref="DRAWINGS">FIG. 9D</figref> is a user interface showing muscle contribution over time according to one embodiment.
0028The figures depict embodiments of the present invention for purposes of illustration only. One skilled in the art will readily recognize from the following discussion that alternative embodiments of the structures and methods illustrated herein may be employed without departing from the principles of the invention described herein.
DETAILED DESCRIPTION
I. System Overview
0029<figref idref="DRAWINGS">FIG. 1</figref> is a diagram of a system environment for monitoring exercise data according to one embodiment. The system architecture includes an exercise feedback system <b>100</b>, client device <b>110</b> (also referred to as an “athlete's device”), client device <b>120</b> (also referred to as a “coach's device”), and athletic garment <b>130</b> communicatively coupled together via a network <b>140</b>. Users of the exercise feedback system <b>100</b> are also referred to herein as “athletes.” In other embodiments, different and/or additional entities can be included in the system architecture.
0030The client devices <b>110</b> and <b>120</b> are computing devices capable of receiving user input as well as transmitting and/or receiving data via the network <b>140</b>. A client device is a device having computer functionality, such as a smartphone, personal digital assistant (PDA), a mobile telephone, tablet, laptop computer, desktop computer, or another suitable device. In one embodiment, a client device executes an application allowing a user of the client device to interact with the exercise feedback system <b>100</b>. For example, a client device executes a browser application to enable interaction between the client device and the exercise feedback system <b>100</b> via the network <b>140</b>. In another embodiment, a client device interacts with the exercise feedback system <b>100</b> through an application programming interface (API) running on a native operating system of the client device, such as IOS® or ANDROID™.
0031The network <b>140</b> includes any combination of local area and/or wide area networks, including both wired and/or wireless communication systems. In one embodiment, the network <b>140</b> uses standard communications technologies and/or protocols. For example, the network <b>140</b> includes communication links using technologies such as Ethernet, 802.11, worldwide interoperability for microwave access (WiMAX), 3G, 4G, code division multiple access (CDMA), digital subscriber line (DSL), BLUETOOTH®, Wi-Fi, ZIGBEE®, other suitable close-range networks, etc. Examples of networking protocols used for communicating via the network <b>140</b> include multiprotocol label switching (MPLS), transmission control protocol/Internet protocol (TCP/IP), hypertext transport protocol (HTTP), simple mail transfer protocol (SMTP), and file transfer protocol (FTP). Data exchanged over the network <b>140</b> may be represented using any suitable format, such as hypertext markup language (HTML) or extensible markup language (XML). In some embodiments, all or some of the communication links of the network <b>140</b> may be encrypted using any suitable technique or techniques.
0032An athlete <b>150</b> wears the athletic garment <b>130</b> while performing exercises. The athletic garment <b>130</b> records physiological data, e.g., muscle activation data, heart rate data, or motion data, of the athlete. Based on the physiological data, the exercise feedback system <b>100</b> generates exercise feedback personalized for the athlete. Further, a coach of the athlete can view the exercise feedback on the coach's device <b>120</b> and provide additional feedback for the athlete. The athlete can view the exercise feedback and any additional feedback displayed on a user interface of the athlete's device <b>110</b>.
II. Athletic Garment
0033<figref idref="DRAWINGS">FIG. 2</figref> is a diagram of a sensor-equipped athletic garment <b>130</b> according to one embodiment. The athletic garment <b>130</b> includes sensors that contact the skin of an athlete wearing the athletic garment <b>130</b>. For example, the sensors can be electrodes that measure electromyography (EMG) signals (electrical signals caused by muscle cells) also referred to as muscle activation data or electrocardiograph (ECG) signals (electrical signals caused by depolarization of the user's heart muscle in particular) also referred to as heart rate data. The sensors may also include other types of sensors such as accelerometers and gyroscopes (which generate motion data based on the athlete's movement), temperature sensors, pressure sensors, humidity sensors, etc. The sensors generate physiological data of the athlete based on the measured signals. The sensors are communicatively coupled to a processing unit <b>290</b>. The processing unit <b>290</b> can aggregate and analyze the physiological data from the sensors. The processing unit <b>290</b> can also provide the physiological data to the athlete's device <b>110</b>, coach's device <b>120</b>, or exercise feedback system <b>100</b> via the network <b>140</b>.
0034In the embodiment shown in <figref idref="DRAWINGS">FIG. 2</figref>, the athletic garment <b>130</b> includes eight sensors that record muscle activation data from the athlete's muscles nearby each sensor. In particular, sensors <b>210</b> and <b>220</b> located on the right and left shoulder of the athletic garment <b>130</b> can record muscle activation data of the athlete's deltoid muscles. Sensors <b>230</b> and <b>240</b> located on the right and left sleeves of the athletic garment <b>130</b> can record muscle activation data of the athlete's triceps and/or bicep muscles. Sensors <b>250</b> and <b>260</b> located on the right and left chest of the athletic garment <b>130</b> can record muscle activation data of the athlete's pectoral muscles. Sensors <b>270</b> and <b>280</b> located on the right and left abdomen of the athletic garment <b>130</b> can record muscle activation data of the athlete's abdominal and oblique muscles. Though the athletic garment <b>130</b> shown in <figref idref="DRAWINGS">FIG. 2</figref> includes eight sensors and the processing unit <b>290</b>, in other embodiments, the athletic garment <b>130</b> can include any number of sensors or other types of components or electronics at any location or configuration within the athletic garment <b>130</b>.
0035It should be noted that while the athletic garment <b>130</b> shown in <figref idref="DRAWINGS">FIG. 2</figref> is a long sleeve shirt, the principles described herein apply equally to any garment, including but not limited to a short sleeved shirt, a tank top, pants, shorts, or any other suitable garment. In embodiments where the athletic garment <b>130</b> is a pant, sensors of the athletic garment <b>130</b> can record muscle activation data from muscles on an athlete's lower body, e.g., quadriceps (also referred to herein as “quad” or “quads”), gluteus maximus (also referred to herein as “glute” or “glutes”), hamstrings, calves, and the like.
III. Exercise Plan Model
0036<figref idref="DRAWINGS">FIG. 3</figref> is a diagram of an exercise plan model used by the exercise feedback system <b>100</b> according to one embodiment. The exercise plan model is a hierarchal model with a goal, programs, workouts, exercises, and sets. The goal <b>300</b> is an objective that an athlete wants to work towards or achieve. The goal can describe a general athletic characteristic, e.g., power, strength, hypertrophy, endurance, speed, or flexibility. Additionally, the goal can describe more specific athletic characteristics, e.g., vertical leap height, a long distance running metric, or arm dexterity. Goals can describe a training objective for a particular sport, e.g., football or basketball, or player position for a sport, e.g., lineman for football or point guard for basketball. Further, goals can describe other objectives that the athlete is pursuing, e.g., losing weight, gaining muscle mass, or toning arm muscles.
0037A goal is associated with one or more programs. An athlete can complete programs, also referred to as exercise training programs, to help achieve the corresponding goal. In the embodiment shown in <figref idref="DRAWINGS">FIG. 3</figref>, the goal <b>300</b> is associated with the programs <b>310</b>A and <b>310</b>B. In one example where the goal is strength, the programs can include “upper body strength,” “lower body strength,” and “core body strength.” In another example where an athlete's goal is to train to play as a football lineman, the programs can include “lateral movement,” “explosive power,” and “upper body strength,” e.g., because these programs focus on athletic skills that are useful for football linemen. In yet another example where an athlete's goal is to train to play as a basketball point guard, the programs can include “lateral movement,” “basketball dribbling,” and “arm strength,” e.g., because these programs focus on athletic skills that are useful for basketball point guards. Thus, the programs are customized for an athlete based on the athlete's specific goals.
0038Each program is associated with one or more workouts. Workouts are sets of exercises that an athlete can complete consecutively or in one activity session as part of the corresponding program. In the embodiment shown in <figref idref="DRAWINGS">FIG. 3</figref>, the program <b>310</b>A is associated with the workouts <b>320</b>A, <b>320</b>B, and <b>320</b>C. In one example where the program is “upper body strength,” the workouts can include “shoulder strength,” “upper back strength,” and “chest strength,” e.g., because these workouts each help develop strength in upper body muscles. In another example where the program is “lateral movement,” the workouts can include “lateral speed,” “lateral agility,” and “lateral explosiveness,” e.g., because these workouts each help develop different lateral movement skills.
0039Each workout is associated with one or more exercises. An athlete can complete exercises as part of the corresponding workout. In the embodiment shown in <figref idref="DRAWINGS">FIG. 3</figref>, the workout <b>320</b>A is associated with the exercises <b>330</b>A, <b>330</b>B, <b>330</b>C, and <b>330</b>D. In one example where the workout is “upper body strength,” the exercises can include “bench press” and “overhead squat”. In another example where the workout is “lateral speed,” the exercises can include “lateral lunge” and “lateral shuffle.”
0040Each exercise is associated with one or more sets. An athlete can complete sets as part of the corresponding exercise. In the embodiment shown in <figref idref="DRAWINGS">FIG. 3</figref>, the exercise <b>330</b>A is associated with the sets <b>340</b>A, <b>340</b>B, <b>340</b>C, and <b>340</b>D. Depending on the type of a set, the set is associated with at least one of a weight, a number of repetitions, a distance, or a duration in time for an athlete to perform the exercise. In one example where the exercise is “bench press,” the set indicates that the athlete should perform eight repetitions lifting 180 pounds per repetition. In another example where the exercise is “lateral shuffle,” the set indicates that the athlete should perform a lateral shuffle for 5 meters in both the left and right directions for 5 repetitions, or perform a lateral shuffle back and forth for 3 consecutive minutes.
IV. Exercise Feedback System
0041<figref idref="DRAWINGS">FIG. 4A</figref> is a block diagram of the exercise feedback system <b>100</b> according to one embodiment. The exercise feedback system <b>100</b> includes a data processing module <b>400</b>, biofeedback module <b>410</b>, exercise program builder <b>430</b>, exercise data store <b>440</b>, and athlete data store <b>450</b>. In other embodiments, the exercise feedback system <b>100</b> may include additional, fewer, or different components for various applications, which are not shown so as to not obscure the details of the system architecture.
0042The data processing module <b>400</b> processes physiological data generated by sensors of an athletic garment (e.g., athletic garment <b>130</b> shown in <figref idref="DRAWINGS">FIG. 2</figref>). The exercise feedback system can receive the physiological data from the athlete's device <b>110</b> or the processing unit <b>290</b> of the athletic garment <b>130</b>. The data processing module <b>400</b> can process the physiological data by performing noise filtering or feature extraction. Features can include a heart rate or level of muscle activation for a certain muscle of an athlete. For example, the data processing module <b>400</b> determines the heart rate, e.g., in beats per minute, of an athlete based on parameters from electrocardiograph data. In another example, the data processing module <b>400</b> calculates the amount of time that the heart rate of the athlete was within a predetermined percentage range of the athlete's maximum heart rate. In another example, the data processing module <b>400</b> determines a level of muscle activation for a particular muscle of an athlete based on the muscle activation data, e.g., an average of the muscle activation data or a peak amplitude of the muscle activation data. The level of muscle activation can be represented as “low,” “medium,” or “high,” a percentage value, or another other suitable range of values.
0043In one embodiment, the data processing module <b>400</b> extracts features that represent the comparative contribution of different muscle groups to an exercise. The activation of a muscle over time can be accumulated to represent the energy or work expended by the muscle during the movement (e.g., of the exercise). The data processing module <b>400</b> may calculate the percentage contribution of the muscle to the movement based on the ratio of work calculated for a given muscle to the sum of work calculated for all muscles measured.
0044Further, the data processing module <b>400</b> can extract temporal patterns from the physiological data. For example, the data processing module <b>400</b> determines the time difference between a first muscle activation and a second muscle activation, which may indicate how closely an athlete is performing an exercise with proper form and whether the athlete is using the correct sequence of muscles. The data processing module <b>400</b> may determine sequencing and form of an athlete's performance of an exercise by comparing the time difference between different events of muscle activation data such as the start, end, or peak amplitude for each muscle. Additionally, the data processing module <b>400</b> determines timestamps of an athlete's movements based on motion data, e.g., a timestamp corresponding to when the athlete started an exercise, ended an exercise, or performed a certain athletic movement such as a jump, sprint, lift of an arm, or specific phases of a movement such as the lowering or raising phase of a squat. The data processing module <b>400</b> can store the extracted features in the athlete data store <b>450</b> along with information identifying the corresponding athlete.
0045The data processing module <b>400</b> can determine features based on a computation of one or more other features of physiological data. For example, the data processing module <b>400</b> computes a ratio of a first level of muscle activation (of an athlete's left biceps muscle) to a second level of muscle activation (of an athlete's right biceps muscle), which can indicate the athlete's balance, form, or other types of metrics.
0046As another example, the data processing module <b>400</b> computes a level of aerobic fatigue or endurance based on an athlete's heart rate and/or the duration of time spent within different percentage ranges of the athlete's maximum heart rate. Additionally, the data processing module <b>400</b> may determine a level of anaerobic fatigue or endurance based on an accumulation of muscle activation over a predetermined period of time, e.g., representing a rep, set, workout, or program. The accumulation of muscle activation over time represents the energy or work expended by the muscle and may be aggregated across all muscle groups measured to calculate an overall total work or load placed on the athlete's body. The data processing module <b>400</b> may use this information to predict athlete fatigue.
0047The biofeedback module <b>410</b> generates biofeedback for users of the exercise feedback system <b>100</b> based on features extracted by the data processing module <b>400</b>. The biofeedback indicates a metric of performance (e.g., satisfactory or unsatisfactory) of an athlete performing exercises. The biofeedback module <b>410</b> can store the biofeedback in the athlete data store <b>450</b> along with information identifying the corresponding athlete. The biofeedback module <b>410</b> can compare the extracted features with features based on reference exercise data from the exercise data store <b>440</b>. In one example, the reference exercise data indicates a target range of heart rate (e.g., heart rate after exercising or heart rate while performing high intensity exercises) based on demographic information of an athlete (e.g., age or gender). If the athlete's heart rate indicated by the extracted features falls within the corresponding target range, then the biofeedback module <b>410</b> generates biofeedback indicating that the athlete has a satisfactory heart rate.
0048In another example, the reference exercise data indicates target muscle activation levels based on a given type of exercise. For instance, for a squat exercise, the reference exercise data indicates that the quadriceps or glutes should fall within a given range of muscle activation. Additionally, for a bench press exercise, the reference exercise data indicates that the pectorals and deltoids should have a high level of muscle activation and that the triceps should have a medium to high level of muscle activation. The biofeedback module <b>410</b> can compare the athlete's actual muscle activation to the target muscle activation information. If the extracted features indicate that an athlete's muscle activation levels do not meet the target muscle activation levels, biofeedback module <b>410</b> generates biofeedback indicating that the athlete performed the exercise with an unsatisfactory effort. If the extracted features indicate that an athlete's muscle activation levels are not balanced between corresponding muscles (e.g., quadriceps in the left leg and quadriceps in the right leg), biofeedback module <b>410</b> generates biofeedback indicating that the athlete has unsatisfactory balance. Further, the biofeedback can indicate that the athlete is activating the incorrect muscles for a particular exercise, e.g., the deltoids are activated more than the pectorals or triceps during a bench press exercise.
0049In yet another example, the reference exercise data indicates baseline motion profiles for various types of exercises. The baseline motion profiles are based on motion data generated by sensors (e.g., accelerometers or gyroscopes) worn by a reference athlete, e.g., an expert that previously performed a given exercise. The baseline motion profiles can include a first profile generated when the reference athlete performed the given exercise using proper form and second profile generated when the reference athlete performed the given exercise using an improper form. The biofeedback module <b>410</b> can compare the athlete's actual motion profiles to the baseline motion profiles. If the extracted features match features of the first profile, the biofeedback module <b>410</b> generates biofeedback indicating that the athlete is performing the exercise using proper form. If the extracted features match features of the second profile, the biofeedback module <b>410</b> generates biofeedback indicating aspects of the athlete's form that deviate from desired proper form (e.g., for a squat exercise, the athlete is not keeping their shins straight, sitting back, and pushing through their heels when raising out of the squat position). In addition to baseline motion profiles, the reference exercise data can also include baseline muscle activation data, timing data, fatigue data, or heart rate data of an expert while performing a particular exercise. The biofeedback module <b>410</b> can use any of the baseline data for comparison with the features extracted from the user's performance of an exercise.
0050In one embodiment, by leveraging muscle activation, timing, fatigue, or heart rate data across populations of different athletic skill, the exercise feedback system <b>100</b> determines targets associated with muscle activation, timing, fatigue, or heart rate metrics to provide an understanding to the athlete regarding how a given metric should change to demonstrate progression. For example, based on data of a population of athletes that have well trained lower body posterior chains and proficiency in completing a deadlift movement, the exercise feedback system <b>100</b> determines that the target (e.g., average) percentage contribution of the glute and hamstring muscles (e.g., based on the work metric) to the deadlift movement are approximately 40% and 30%, respectively. In an example use case, a given athlete is loading more of their quadriceps muscles, resulting in lower glute and hamstring contributions, e.g., 25% and 20%, respectively. The exercise feedback system <b>100</b> provides the given athlete with feedback to show their muscle contribution during the deadlift movement set-by-set to track progress towards the target percentage contributions.
0051The biofeedback module <b>410</b> can generate biofeedback indicating a level of fatigue of the athlete. For example, the athlete performs the first bench press exercise of a set using proper form and performs the fifth bench press exercise of the set (e.g., a set of eight total exercises) using improper form. As the athlete fatigues, the athlete's quality of movement may suffer and the athlete deviates from the proper form. Using the bench press exercise as an example, as the athlete fatigues, if the athlete's chest and triceps muscle are weak, the athlete's deltoids may compensate and thus have a much greater contribution during the fifth set as compared to the first set. The biofeedback module <b>410</b> may alert the athlete about this change and provide biofeedback to correct the athlete's form. Further, the biofeedback module <b>410</b> may provide an alert to a client device of the athlete's coach. The biofeedback module <b>410</b> can also determine the level of fatigue based on heart rate data and muscle activation data.
0052The biofeedback module <b>410</b> can generate biofeedback indicating that the athlete violated one or more exercise rules while performing an exercise. The biofeedback module <b>410</b> retrieves exercise rules from the exercise data store <b>440</b>. For example, an exercise rule indicates that the athlete should use the pectorals as the primary source of strength and the triceps as a secondary source of strength when performing bench press exercises. Exercise rules may be categorized based on a level of priority. For example, an exercise rule indicating that an athlete is using improper form (e.g., exerting quad muscles too much when performing a deadlift exercise) is high priority, e.g., because failing to correct improper form could injure the athlete. In contrast, an exercise rule indicating that the user is slightly unbalanced when performing an exercise may have a lower priority. In some embodiments, the biofeedback module <b>410</b> generates biofeedback based on higher priority exercise rules before generating biofeedback based on lower priority exercise rules.
0053The biofeedback module <b>410</b> can generate biofeedback for an athlete based on the athlete's previously saved biofeedback in the athlete data store <b>450</b> and based on performance trends determined from the saved biofeedback. Thus, the biofeedback module <b>410</b> can compare the athlete's current performance to past performances and determine performance trends over a period of time (e.g., a week, month, or year). For example, the performance trends indicate that the athlete's form for a squat exercise is gradually becoming more similar to the target proper form based on reference exercise data. As another example, the performance trends indicate that the athlete is achieving satisfactory metrics of performance for bench press exercises while increasing the amount of weight lifted per exercise by an average of five pounds per month for the last six months. The biofeedback module <b>410</b> may compare performance trends between sets within a given workout for a given exercise, or across multiple workouts. The biofeedback module <b>410</b> may also compare overall workout level data, e.g., accumulated muscle activation data over the workout. Based on the work metric, the biofeedback module <b>410</b> can compare loading on different muscles between workouts and evaluate if certain muscle groups are being over-trained or under-trained with respect to other muscle groups.
0054The biofeedback module <b>410</b> can generate biofeedback for an athlete based on information from a population of athletes of the exercise feedback system <b>100</b>, e.g., stored in the athlete data store <b>450</b>. The biofeedback module <b>410</b> can compare the athlete's performance with comparable other athletes categorized by demographic data, geographic data, athletic skill level (e.g., amateur or professional), or other types of athlete data, e.g., one or more given sports played by athletes, or position played by the athlete in the sport. For example, the biofeedback module <b>410</b> generates biofeedback indicating that the athlete is lifting ten pounds more than the average weight lifted by other athletes who are also males and in the same weight group, e.g., 150 to 180 pounds. In another example, the biofeedback indicates that the athlete's heart rate while performing a given cardio exercise is 10% lower on average than those other athletes while performing the given cardio exercise who are in a same age range, e.g., 20 to 30 years old. In another example, the biofeedback module <b>410</b> compares the athlete's performance to more proficient or advanced athletes to understand the difference and target for a given metric, e.g. decrease the contribution of the quads by 10% and increase the contribution of the glutes by 10%.
0055In one embodiment, the biofeedback module <b>410</b> generates a set score indicating a metric of performance of a set of exercises performed by an athlete. The biofeedback module <b>410</b> may generate the set score based on aggregate data of muscle effort, balance, and form. A high set score can indicate that the athlete is consistently achieving or exceeding satisfactory metrics of performance for the set of exercises, e.g., by performing exercises with proper form and muscle activation. On the other hand, a low set score can indicate that the athlete has unsatisfactory metrics of performance throughout exercises in the set, e.g., by performing exercises with improper form and unbalanced muscle activation. In one embodiment, the set score is a numerical value between zero and ten. A high set score would be in the range of seven to ten, a low set score would be in the range of zero to three, and a medium (or neutral) set score would be in the range of three to seven. In other embodiments, the set score can be represented in other forms, e.g., a percentage value, a value between 0 and 100, or a letter grade such as “A,” “B,” “C,” “B,” or “F.”
0056In one embodiment, the biofeedback module <b>410</b> generates set scores based on target metrics associated with a given exercise, e.g., whether data values indicating the athlete's exertion level, balance, and form are within a target range of values associated with the given exercise. The exertion level may be proportional to the athlete's muscle activation during the given exercise. The balance for a particular muscle group is based on whether the left and right muscles of the group have approximately the same muscle activation or exertion levels. The form is based on whether the athlete is exerting the target muscles, and in a target sequence, for the given exercise.
0057The exercise program builder <b>430</b> generates exercise training programs (e.g., corresponding to a program shown in <figref idref="DRAWINGS">FIG. 3</figref>) for athletes of the exercise feedback system <b>100</b>. The exercise program builder <b>430</b> can generate an exercise training program based on a certain goal provided by an athlete, or can generate a set of predetermined exercise training programs that athletes can choose from. The exercise training program can include one or more workouts per day, scheduled over a duration of time, e.g., a week, month, year, etc.
0058The exercise program builder <b>430</b> can modify exercise training programs over time based on biofeedback from the biofeedback module <b>410</b>, input information from an athlete received via the athlete's device <b>110</b>, or input information from a coach of the athlete received via the coach's device <b>120</b>. For example, the input information indicates that the athlete wants a more challenging exercise training program, so the exercise program builder <b>430</b> modifies exercise training programs to include more workouts, more sets of exercises, or exercises with greater amounts of weights. In another example, the input information indicates that the coach wants to reduce the number of workouts per week for an athlete because the coach views biofeedback indicating that the athlete is frequently becoming too fatigued during workouts. Thus, the program builder <b>430</b> modifies exercise training programs to include fewer workouts, fewer sets per workout, or exercises with smaller amounts of weights.
0059<figref idref="DRAWINGS">FIG. 4B</figref> is a block diagram of the client device <b>110</b> according to one embodiment. The client device <b>110</b> includes an interface manager <b>460</b>, exercise program module <b>470</b>, local exercise data store <b>480</b>, and local athlete data store <b>490</b>. In other embodiments, the client device <b>110</b> may include additional, fewer, or different components for various applications, which are not shown so as to not obscure the details of the system architecture. The client device <b>120</b> is substantially the same as the client device <b>110</b>, though as previously noted, the client device <b>120</b> is used by a coach of the athlete using the client device <b>110</b>.
0060In some embodiments, some or all of the functionality of the exercise feedback system <b>100</b> may be performed by or implemented within the client device <b>110</b>. For example, the client device may include a biofeedback module to generate biofeedback based on physiological data received from the athletic garment <b>130</b>. This can be advantageous because the client device <b>110</b> may not always have a network connection while an athlete is exercising (e.g., the athlete's gym does not have internet available). Thus, the biofeedback is generated locally on the client device <b>110</b> without having to upload the physiological data to the exercise feedback system <b>100</b> for processing.
0061The interface manager <b>460</b> receives physiological data from the athletic garment <b>130</b> and can provide the physiological data to the exercise feedback system <b>100</b> for further processing. The interface manager <b>460</b> receives biofeedback, set scores, exercise training programs, and other information from the exercise feedback system <b>100</b>, e.g., reference exercise data or extracted features from the data processing module <b>400</b>. Based on the received information, the interface manager <b>460</b> generates graphical user interfaces (further described in Sections V, VI, and VIII with reference to <figref idref="DRAWINGS">FIGS. 5A-F</figref>, <figref idref="DRAWINGS">FIGS. 6A-F</figref>, and <figref idref="DRAWINGS">FIGS. 9A-D</figref>) depicting the biofeedback, set scores, or exercise training programs. The interface manager <b>460</b> can store physiological data, biofeedback, set scores, or exercise training programs in the local athlete data store <b>490</b>. The interface manager <b>460</b> stores the reference exercise data and extracted features in the local exercise data store <b>480</b>.
0062The interface manager <b>460</b> can receive athlete information input by the athlete via the client device <b>110</b>. The interface manager <b>460</b> can store the athlete information in the local athlete data store <b>490</b> or provide the athlete information to the exercise feedback system <b>100</b> to be stored in the athlete data store <b>450</b>. The athlete information can describe, e.g., a goal of the athlete, demographic data (age or gender), geographical location, one or more sports that the athlete plays, history of injuries of the athlete, other types of data such as biometrics including weight and height. Additionally, the interface manager <b>460</b> can receive information input by a coach of the athlete via the client device <b>120</b>, and provide the input information to the exercise feedback system <b>100</b>.
0063The exercise program module <b>470</b> can modify exercise training programs received from the exercise feedback system <b>100</b>. Similar to the exercise program builder <b>430</b>, the exercise program module <b>470</b> modifies the exercise training programs based on physiological data, biofeedback, set scores, or input from athletes or coaches. However, the exercise program module <b>470</b> modifies the exercise training programs locally on the athlete's device <b>110</b> or coach's device <b>120</b>. The exercise program module <b>470</b> can provide the modified exercise training programs to the exercise feedback system <b>100</b>. In one example use case, the athlete provides input to modify an exercise training program. The exercise program module <b>470</b> modifies the exercise training program locally, but does not immediately provide the modifications to the exercise feedback system <b>100</b> because the athlete's device <b>110</b> does not have a network connection. The exercise program module <b>470</b> stores the modifications in the local athlete data store <b>490</b> and provides the modifications to the exercise feedback system <b>100</b> at a later time when the athlete's device <b>110</b> has a network connection. Afterwards, the exercise feedback system <b>100</b> can also provide the modified exercise training program to a coach's device <b>120</b> for display to the athlete's coach.
V. Example Use Case: Squat
0064<figref idref="DRAWINGS">FIG. 5A</figref> is a diagram of an athlete <b>150</b> performing a squat exercise while wearing a sensor-equipped garment <b>130</b> according to one embodiment. The athlete <b>150</b> is wearing the sensor-equipped athletic garment <b>130</b> (a pair of shorts) including sensors that generate muscle activation data about the athlete's lower body muscles, e.g., quadriceps and glutes. The athlete <b>150</b> may be performing a set of the squat exercise with a barbell, e.g., a set of ten repetitions with 45 pounds of weight on the barbell per repetition. <figref idref="DRAWINGS">FIGS. 5B-D</figref> show user interfaces generated by the interface manager <b>460</b> in real time while the athlete <b>150</b> performs the squat exercise.
0065<figref idref="DRAWINGS">FIG. 5B</figref> is a user interface <b>500</b> showing muscle activation feedback according to one embodiment. The muscle activation feedback is represented by a depiction of muscles overlaid on an image <b>505</b> of the athlete <b>150</b>, e.g., based on biofeedback generated by the biofeedback module <b>410</b>. In particular, the image <b>505</b> shows a metric for the athlete's right quadriceps <b>510</b> and left quadriceps <b>515</b>. The metrics shown in <figref idref="DRAWINGS">FIG. 5B</figref> are depictions of the levels of exertion of each of the two muscles. The level of exertion may be represented as an activation intensity, contribution based on work, or any other metric output by the data processing module <b>400</b>. For example, the depiction of the right quadriceps <b>510</b> is smaller than that of the left quadriceps <b>515</b> because the athlete is exerting with higher activation intensity on the left quadriceps <b>515</b>. The user interface <b>500</b> may include percentages alongside the different muscles to indicate activation intensity or contribution of the corresponding muscle to the movement. For example, the percentages of 8% and 20% correspond to the right quadriceps <b>510</b> and left quadriceps <b>515</b>, respectively. In addition, the depiction of level of exertion on image <b>505</b> may be shown in near real-time while the athlete is performing the exercise or may be presented as a set or workout summary after completing the exercise. <figref idref="DRAWINGS">FIG. 5B</figref> also shows another user interface <b>502</b> showing muscle activation feedback including a depiction of muscles on the backside of the athlete, which is also overlaid on an image <b>505</b> of the athlete <b>150</b>. For example, the user interface <b>502</b> shows activation intensity of the athlete's hamstrings <b>512</b> and glutes <b>514</b>, which are also activated with the quads <b>510</b> and <b>515</b> while the athlete performs a squat exercise.
0066<figref idref="DRAWINGS">FIG. 5C</figref> is a user interface <b>520</b> showing exercise balance feedback according to one embodiment. The user interface <b>520</b> shows a depiction, e.g., based on biofeedback generated by the biofeedback module <b>410</b>, of three categories <b>525</b> of exercise feedback: effort, balance, and muscles. The categories <b>525</b> shown in <figref idref="DRAWINGS">FIG. 5C</figref> indicate that the athlete <b>150</b> is has a satisfactory metric (e.g., as indicated by the checkmark) for effort and muscles, but not for balance (e.g., as indicated by the X mark). Balance has an unsatisfactory metric, e.g., because the athlete <b>150</b> leans too far to the left when performing squat exercises. Further, the graph <b>530</b> indicates that the athlete <b>150</b> is “20% leaning left,” for example, the athlete <b>150</b> is exerting approximately 20% more energy using the left quadriceps than using the right quadriceps, which is outside of a target range for balance (e.g., no more than 10% based on an exercise rule in the exercise data store <b>440</b>). In other embodiments, the metric for balance may be based on other types of data such as the athlete's acceleration of each leg when jumping and landing while performing the squats, or the timing between muscle activation of the athlete's right and left quadriceps (e.g., whether one quadriceps is activated slower than the other quadriceps when jumping).
0067<figref idref="DRAWINGS">FIG. 5D</figref> is a user interface <b>535</b> showing exercise set score feedback according to one embodiment. In particular, the user interface <b>535</b> shows the set score <b>540</b> of “8.5” generated by the biofeedback module <b>410</b>. In one embodiment, the set score <b>540</b> is point value out of a total possible 10 points, where a greater point value corresponds to a higher quality performance. If the athlete's metric for balance was satisfactory, then the set score <b>540</b> would be a greater point value, e.g., “9” or “10.”
0068<figref idref="DRAWINGS">FIG. 5E</figref> is a user interface showing an exercise training program according to one embodiment. The exercise program builder <b>430</b> generates the exercise training program for an athlete, e.g., the athlete <b>150</b> shown in <figref idref="DRAWINGS">FIG. 5A</figref> performing squats, and includes workouts scheduled on a Monday, Wednesday, and Friday of given week. On Monday, the exercise training program includes a warm up workout <b>545</b> and a strength workout <b>550</b>. On Monday, the exercise training program includes a cardio workout <b>555</b>. On Friday, the exercise training program includes a warm up workout <b>560</b> and a strength workout <b>565</b>. The strength workouts <b>550</b> and <b>565</b> each include three sets of free squat exercises and squat exercises. Each set also include 1 minute of rest time. The free squat exercise has ten repetitions, and the squats exercise has ten repetitions with 45 pounds (e.g., weight on a barbell during each squat) per repetition. The cardio workout <b>555</b> has one set of four repetitions of a treadmill run exercise for 1 mile per repetition.
0069<figref idref="DRAWINGS">FIG. 5F</figref> is a user interface showing a modified version of the exercise training program shown in <figref idref="DRAWINGS">FIG. 5E</figref> according to one embodiment. Compared to the exercise training program shown in <figref idref="DRAWINGS">FIG. 5E</figref>, the modified version has an additional balance workout <b>570</b> scheduled on Wednesday and a modified strength workout <b>565</b> scheduled on Friday. The balance workout <b>570</b> includes four sets of alternating lunges. The alternating lunge exercise is a unilateral exercise focusing on each of the left and right sides separately. This unilateral exercise allows the athlete to train the athlete's left quad, independently of the right quad, to strengthen the left quad muscle rather than completing bilateral exercises such as squats where the athlete may be biased toward one side of muscles over the other side. The alternating lunge exercise has five repetitions per side per set. The modified strength workout <b>565</b> includes an additional single leg squat BOSU® ball exercise with ten repetitions per side (e.g., right leg and left leg).
0070The exercise program builder <b>430</b> generates the modified version of the exercise training program for the athlete <b>150</b> performing squats based on metrics of performance by the athlete <b>150</b>. For example, as shown in the user interfaces in <figref idref="DRAWINGS">FIGS. 5B-D</figref>, the athlete <b>150</b> has an unsatisfactory metric for balance. Thus, the exercise program builder <b>430</b> automatically modifies (e.g., without requiring user input) the original exercise training program shown in <figref idref="DRAWINGS">FIG. 5E</figref> by adding exercises that help develop the athlete's balance in the lower body, specifically, the alternating lunges and the single leg squat BOSU® ball exercise.
VI. Example Use Case: Bench Press
0071<figref idref="DRAWINGS">FIG. 6A</figref> is a diagram of an athlete <b>150</b> performing a bench press exercise while wearing a sensor-equipped garment <b>130</b> according to one embodiment. The athlete <b>150</b> is wearing the athletic garment <b>130</b> which is a shirt including sensors that generate muscle activation data about the athlete's upper body muscles, e.g., pectorals, deltoids, and triceps. The athlete <b>150</b> performs a set of the bench press exercise with a barbell, e.g., a set of eight repetitions with 180 pounds of weight on the barbell per repetition. <figref idref="DRAWINGS">FIGS. 6B-D</figref> show user interfaces generated by the interface manager <b>460</b> in real time while the athlete <b>150</b> performs the bench press exercise.
0072<figref idref="DRAWINGS">FIG. 6B</figref> is a user interface <b>600</b> showing muscle activation feedback according to one embodiment. The muscle activation feedback is represented by a depiction of muscles overlaid on an image <b>605</b> of the athlete <b>150</b>. In particular, the image <b>605</b> shows a metric for the athlete's right deltoids <b>610</b>, right pectorals <b>615</b>, and right triceps <b>620</b>. The depiction of the right deltoids <b>610</b> is larger than those of the right pectorals <b>615</b> and right triceps <b>620</b> because the athlete is using a higher contribution of the right deltoid compared to the chest or triceps to complete a movement of an exercise.
0073<figref idref="DRAWINGS">FIG. 6C</figref> is a user interface <b>625</b> showing target muscle feedback according to one embodiment. The user interface <b>625</b> shows a depiction, e.g., based on biofeedback generated by the biofeedback module <b>410</b>, of three categories <b>630</b> of exercise feedback: effort, balance, and muscles. The categories <b>630</b> shown in <figref idref="DRAWINGS">FIG. 6C</figref> indicate that the athlete <b>150</b> has a satisfactory metric for effort and balance, but not for muscles (also referred to as target muscles). The target muscles has an unsatisfactory metric, e.g., because the athlete <b>150</b> is focusing on using the incorrect types of muscles for the bench press exercise. In particular, the checkmark and X marks in the depiction of target muscles <b>635</b> indicate that the athlete is using the deltoid muscles more than the pectorals and triceps.
0074<figref idref="DRAWINGS">FIG. 6D</figref> is a user interface <b>640</b> showing exercise set score feedback according to one embodiment. In particular, the user interface <b>640</b> shows the set score <b>645</b> of “6.0” generated by the biofeedback module <b>410</b>. If the athlete's metric for target muscles was satisfactory, then the set score <b>645</b> would be a greater value.
0075<figref idref="DRAWINGS">FIG. 6E</figref> is a user interface showing an exercise training program according to one embodiment. The exercise program builder <b>430</b> generates the exercise training program for an athlete, e.g., the athlete <b>150</b> shown in <figref idref="DRAWINGS">FIG. 6A</figref> performing bench presses, and includes workouts scheduled over two weeks. On the first week, the exercise training program includes a strength workout <b>650</b> on Monday and a strength workout <b>655</b> on Friday. On the Monday of the second week, the exercise training program includes a strength workout <b>660</b>. The strength workouts each include three sets of bench press exercises and 1 minute of rest time. The number of repetitions per set of bench press exercises is eight for each of the three strength workouts, though the weight gradually increases. Specifically, the weights in strength workouts <b>650</b>, <b>655</b>, and <b>660</b> are 180 pounds, 190 pounds, and 200 pounds, respectively.
0076<figref idref="DRAWINGS">FIG. 6F</figref> is a user interface showing a modified version of the exercise training program shown in <figref idref="DRAWINGS">FIG. 6E</figref> according to one embodiment. Compared to the exercise training program shown in <figref idref="DRAWINGS">FIG. 6E</figref>, the modified version has an additional strength workout <b>665</b> scheduled on Wednesday of the first week and another additional strength workout <b>670</b> scheduled on Friday of the second week. The strength workout <b>665</b> includes three sets of overhead press exercises and 1 minute of rest. Each set of overhead press exercises has five repetitions of 85 pounds. The strength workout <b>670</b> is substantially the same as the strength workouts <b>650</b>, <b>655</b>, and <b>660</b>, but with a different weight. The weights for the sets of bench press exercises are lower relative to those shown in <figref idref="DRAWINGS">FIG. 6E</figref>. Specifically, the weights in strength workouts <b>655</b>, <b>660</b>, and <b>670</b> are 150 pounds, 160 pounds, and 170 pounds, respectively.
0077The exercise program builder <b>430</b> generates the modified version of the exercise training program for the athlete <b>150</b> performing bench presses based on metrics of performance by the athlete <b>150</b>. For example, as shown in the user interfaces in <figref idref="DRAWINGS">FIGS. 6B-D</figref>, the athlete <b>150</b> has an unsatisfactory metric for target muscles. In particular, the athlete <b>150</b> has weak deltoid muscles, so the athlete's deltoids are over exerted when the athlete performs the bench press exercise. Thus, the exercise program builder <b>430</b> automatically modifies (e.g., without requiring user input) the original exercise training program shown in <figref idref="DRAWINGS">FIG. 6E</figref> by adding exercises (e.g., overhead press exercises) that help develop the athlete's deltoid muscle strength. Further, the exercise program builder <b>430</b> modifies the existing strength exercises by reducing the amount of weight per bench press exercise. Adjusting the amount of weight to a suitable level for the athlete <b>150</b> helps the athlete exercise without under-exerting or over-exerting beyond the athlete's capabilities.
VII. Example Process Flows
0078<figref idref="DRAWINGS">FIG. 7</figref> is a flowchart of a process <b>700</b> for providing exercise feedback according to one embodiment. In some embodiments, the process <b>700</b> is performed by the exercise feedback system <b>100</b>—e.g., modules of the exercise feedback system <b>100</b> described with reference to <figref idref="DRAWINGS">FIG. 4A</figref>—within the system environment in <figref idref="DRAWINGS">FIG. 1</figref>. The process <b>700</b> may include different or additional steps than those described in conjunction with <figref idref="DRAWINGS">FIG. 7</figref> in some embodiments or perform steps in different orders than the order described in conjunction with <figref idref="DRAWINGS">FIG. 7</figref>.
0079The exercise feedback system <b>100</b> receives <b>710</b> physiological data from a garment worn by a user, e.g., the athlete <b>150</b> wearing garment <b>130</b> shown in <figref idref="DRAWINGS">FIG. 5A</figref>, while performing an exercise, e.g., squats. The physiological data is generated by sensors of the garment (e.g., sensors <b>210</b>-<b>280</b> shown in <figref idref="DRAWINGS">FIG. 2</figref>) and can describe muscle activation data of particular muscles of the user, heart rate data, or other types of data such as motion data. The biofeedback module <b>410</b> compares <b>720</b> the physiological data to reference data selected based on the exercise. For example, the reference data includes a target muscle data or a baseline motion profile for squat exercises. The reference data can also be based on previously generated physiological data of the user, e.g., during exercises that the user performed in the past. The biofeedback module <b>410</b> generates <b>730</b> biofeedback based on the comparison. The biofeedback may indicate a metric of performance of the exercise by the user, e.g., whether the user performed the exercise with a satisfactory level of effort or balance, or using the proper form or target muscles. The exercise feedback system <b>100</b> provides <b>740</b> the biofeedback to a mobile device of the user, e.g., the athlete's device <b>110</b> shown in <figref idref="DRAWINGS">FIG. 1</figref>. The biofeedback is displayed on a graphical user interface to the user. The graphical user interface can include a depiction of the particular muscles of the user, e.g., the depiction of the right quadriceps <b>510</b> and left quadriceps <b>520</b> in the user interface <b>500</b> shown in <figref idref="DRAWINGS">FIG. 5B</figref>. In other embodiments, the athlete's device <b>110</b> communicates the metric of performance of the user in other suitable formats, e.g., as an audio feedback via speakers of the athlete's device <b>110</b>, or visual feedback including text presented on a display screen of the athlete's device <b>110</b>.
0080<figref idref="DRAWINGS">FIG. 8</figref> is a flowchart of a process <b>800</b> for modifying an exercise training program according to one embodiment. In some embodiments, the process <b>800</b> is used by the exercise feedback system <b>100</b>—e.g., modules of the exercise feedback system <b>100</b> described with reference to <figref idref="DRAWINGS">FIG. 4A</figref>—within the system environment in <figref idref="DRAWINGS">FIG. 1</figref>. The process <b>800</b> may include different or additional steps than those described in conjunction with <figref idref="DRAWINGS">FIG. 8</figref> in some embodiments or perform steps in different orders than the order described in conjunction with <figref idref="DRAWINGS">FIG. 8</figref>.
0081The exercise program builder <b>430</b> generates <b>810</b> an exercise training program for a user, e.g., the athlete <b>150</b> shown in <figref idref="DRAWINGS">FIG. 6A</figref>. The exercise feedback system <b>100</b> receives <b>820</b> physiological data from a garment worn by the user while performing an exercise of the exercise training program, e.g., the bench press exercise of a workout of the exercise training program shown in <figref idref="DRAWINGS">FIG. 6E</figref>. The biofeedback module <b>410</b> generates <b>830</b> a metric of performance of the exercise by the user. For example, the metric of performance indicates that the user is not using all of the target muscles for the bench press exercise, as shown in <figref idref="DRAWINGS">FIG. 6C</figref>. The exercise program builder <b>430</b> modifies <b>840</b> the exercise training program based on the generated metric of performance. For example, the exercise program builder <b>430</b> modifies the exercise training program shown in <figref idref="DRAWINGS">FIG. 6E</figref>, which to help the athlete train to use all of the target muscles for bench press exercises. The exercise feedback system <b>100</b> provides <b>850</b> information representative of the modified exercise training program (e.g., the user interface shown in <figref idref="DRAWINGS">FIG. 6F</figref>) to a mobile device (e.g., the athlete's device <b>110</b> shown in <figref idref="DRAWINGS">FIG. 1</figref>) for display to the user. To improve the efficiency of exercise training, it is important for the athlete to understand whether the athlete is gaining the intended training adaptation from the exercise or training program (e.g., improving power, strength, hypertrophy, endurance, speed, etc.)
VIII. Additional Example User Interfaces
0082<figref idref="DRAWINGS">FIG. 9A</figref> is a user interface <b>900</b> showing muscle activation feedback for upper body muscles according to one embodiment. The user interface <b>900</b> shows the peak muscle activation (e.g., based on the amplitude of physiological data generated by sensors) for a set of muscles during a particular set completed by an athlete. For instance, the peak muscle activations for the left and right pectorals are 99% and 124%, respectively. In some embodiments, the peak muscle activation may be a percentage greater than 100% because the percentage is relative to a baseline calibration value for the corresponding muscle. In some embodiments, the peak muscle activation is greater when the athlete is performing exercises with power movements, e.g., lifting heavy weights at a high velocity.
0083<figref idref="DRAWINGS">FIG. 9B</figref> is a user interface <b>910</b> showing muscle activation feedback for lower body muscles according to one embodiment. The user interface <b>910</b> indicates that the muscle contributions for the inner quads, outer quads, glutes, and hamstrings are 73%, 18%, 6%, and 3%, respectively. The biofeedback module <b>410</b> determines the muscle contributions based on the work (i.e., energy expenditure) of the muscles over a period of time (e.g., corresponding to a set of an exercise). In one embodiment, the biofeedback module <b>410</b> determines the muscle contributions based on the ratio of work for a given muscle to the total accumulated work for a set of muscles (e.g., the lower body muscles: inner quads, outer quads, glutes, and hamstrings). The user interface <b>910</b> also indicates the muscle contributions distributed between the left and right sides of each muscle.
0084<figref idref="DRAWINGS">FIG. 9C</figref> is another user interface <b>920</b> showing muscle activation feedback for lower body muscles according to one embodiment. The user interface <b>920</b> indicates that the total work exerted by the athlete's muscles during training sessions on October 21, October 25, November 3, and November 4 are 346, 411, N/A (athlete did not complete a training session that day), and 821. The height of each bar in the graph is proportional to the total work for the corresponding session. The user interface <b>920</b> also indicates percentages representing the contribution of each muscle in the group of lower body muscles shown in <figref idref="DRAWINGS">FIG. 9C</figref> to the total work. For instance, the contribution for the inner quads, outer quads, glutes, and hamstrings are 51%, 28%, 11%, and 10%, respectively, for the session on November 4.
0085<figref idref="DRAWINGS">FIG. 9D</figref> is a user interface <b>930</b> showing muscle contribution over time according to one embodiment. In particular, the user interface <b>930</b> shows a bar graph and lines graphs on the same time axis. The bar graph indicates how much weight an athlete lifted for each set of an exercise on a given day (e.g., session). For instance, during the session of October 5, the athlete performed three sets of a squat exercise with 30 pounds for each set. The overlaying line graphs indicate the percentage muscle contributions for the outer quads and the glutes, according to the legend of the graph. In one example use case, the outer quad muscle contribution increases and the glutes muscle contribution decreases when the athlete performs sets of squat exercises using greater weights, as shown in the section of the graph corresponding to the session on October 13. The changes in muscle contributions may help show a breakdown of proper squat exercise form at greater weights because the athlete is compensating for weaker glutes by exerting more energy using the outer quads. The muscle contributions may also change as result of the athlete's fatigue over time. Thus, the athlete or a coach may use the biofeedback shown in the user interface <b>930</b> to modify future workouts, e.g., by reducing the weights for squats.
IX. Additional Considerations
0086The foregoing description of the embodiments of the invention has been presented for the purpose of illustration; it is not intended to be exhaustive or to limit the invention to the precise forms disclosed. Persons skilled in the relevant art can appreciate that many modifications and variations are possible in light of the above disclosure.
0087Some portions of this description describe the embodiments of the invention in terms of algorithms and symbolic representations of operations on information. These algorithmic descriptions and representations are commonly used by those skilled in the data processing arts to convey the substance of their work effectively to others skilled in the art. These operations, while described functionally, computationally, or logically, are understood to be implemented by computer programs or equivalent electrical circuits, microcode, or the like. Furthermore, it has also proven convenient at times, to refer to these arrangements of operations as modules, without loss of generality. The described operations and their associated modules may be embodied in software, firmware, hardware, or any combinations thereof.
0088Any of the steps, operations, or processes described herein may be performed or implemented with one or more hardware or software modules, alone or in combination with other devices. In one embodiment, a software module is implemented with a computer program product including a computer-readable non-transitory medium containing computer program code, which can be executed by a computer processor for performing any or all of the steps, operations, or processes described.
0089Embodiments of the invention may also relate to a product that is produced by a computing process described herein. Such a product may include information resulting from a computing process, where the information is stored on a non-transitory, tangible computer readable storage medium and may include any embodiment of a computer program product or other data combination described herein.
0090Finally, the language used in the specification has been principally selected for readability and instructional purposes, and it may not have been selected to delineate or circumscribe the inventive subject matter. It is therefore intended that the scope of the invention be limited not by this detailed description, but rather by any claims that issue on an application based hereon. Accordingly, the disclosure of the embodiments of the invention is intended to be illustrative, but not limiting, of the scope of the invention, which is set forth in the following claims.
Contents4
14 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10 Sheet 11 Sheet 12 Sheet 13 Sheet 14
Every citation, both ways
| Document | Relation | Office | Category | Cited during | Relevant claims |
|---|---|---|---|---|---|
| US11103750B2 | Cited by | United States of America | – | Applicant | – |
| US11246531B2 | Cited by | United States of America | – | Applicant | – |
| WO2021168109A1 | Cited by | World Intellectual Property Organization (WIPO) | – | International search | – |
| US11673024B2 | Cited by | United States of America | – | Applicant | – |
| US11151857B2 | Cited by | United States of America | – | Search report | – |
| US11364427B2 | Cited by | United States of America | – | Search report | – |
| US2022047181A1 | Cited by | United States of America | – | Search report | – |
| CN115837147A | Cited by | China | – | Search report | – |
| US2020179757A1 | Cited by | United States of America | – | Search report | – |
| US2016199693A1 | Cited by | United States of America | – | Search report | – |
| US11589782B2 | Cited by | United States of America | – | Search report | – |
| US11977095B2 | Cited by | United States of America | – | Applicant | – |
| US10569134B2 | Cited by | United States of America | – | Search report | – |
| US11179601B2 | Cited by | United States of America | – | Applicant | – |
| US11097157B2 | Cited by | United States of America | – | Applicant | – |
| US2016199693A1 | Cited by | United States of America | – | Pre-grant | – |
| US12376765B2 | Cited by | United States of America | – | Search report | – |
| US12090365B2 | Cited by | United States of America | – | Applicant | – |
| US12393263B2 | Cited by | United States of America | – | Applicant | – |
| US2023277092A1 | Cited by | United States of America | – | Search report | – |
| WO2021110913A1 | Cited by | World Intellectual Property Organization (WIPO) | – | International search | – |
| US11325004B2 | Cited by | United States of America | – | Search report | – |
| KR20240022768A | Cited by | Republic of Korea | – | Search report | – |
| US12295746B2 | Cited by | United States of America | – | Applicant | – |
| CN113643789A | Cited by | China | – | Search report | – |
| US10918908B2 | Cited by | United States of America | – | Search report | – |
| US2016199693A1 | Cited by | United States of America | – | Search report | – |
| US11033776B2 | Cited by | United States of America | – | Applicant | – |
| US10065074B1 | Cites | United States of America | X | Search report | 1-3, 9-12, 15 , 4-8, 13-14, 16-20 |
| US2012271143A1 | Cites | United States of America | Y | Search report | 4-8, 13-14, 16-20 |
3 members in 1 office; this record represents the family
Priority claims2
| Document | Office | Kind | Date |
|---|---|---|---|
| 201615356362 | United States of America | A | |
| US201615356362 | – | – | – |
Members3
| Document | Office | Kind | |
|---|---|---|---|
| US2018140902A1 | United States of America | A1 | |
| US11179601B2 | United States of America | B2 | |
| US2022016483A1 | United States of America | A1 |
88 transactions on the USPTO file
Allowed after 2 non-final rejections, 1 final rejection and 1 RCE.
- Non-final rejections
- 2
- Final rejections
- 1
- RCEs
- 1
- Appeals
- 0
Over time
Point at a mark for the transactionTransactions
| Event | Code | |
|---|---|---|
| Maintenance Fee Reminder MailedREM. | REM. | |
| Recordation of Patent Grant MailedPGM/ | PGM/ | |
| Patent Issue Date Used in PTA CalculationAllowedPTAC | PTAC | |
| Email NotificationEML_NTR | EML_NTR | |
| Issue Notification MailedAllowedWPIR | WPIR | |
| Dispatch to FDCD1935 | D1935 | |
| Application Is Considered Ready for IssuePILS | PILS | |
| Issue Fee Payment VerifiedN084 | N084 | |
| Issue Fee Payment ReceivedIFEE | IFEE | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Notice of AllowanceAllowedMN/=. | MN/=. | |
| Notice of Allowance Data Verification CompletedAllowedN/=. | N/=. | |
| Reasons for AllowanceEX.R | EX.R | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Response after Non-Final ActionA... | A... | |
| Request for Extension of Time - GrantedXT/G | XT/G | |
| Email NotificationEML_NTR | EML_NTR | |
| Mail Examiner Interview Summary (PTOL - 413)MEXIN | MEXIN | |
| Interview Summary - Applicant Initiated - TelephonicEXAT | EXAT | |
| Interview Summary RecordEXIN | EXIN | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Electronic Information Disclosure StatementEIDS. | EIDS. | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Disposal for a RCE / CPA / R129AbandonedABN9 | ABN9 | |
| Request for Continued Examination (RCE)RCEX | RCEX | |
| Workflow - Request for RCE - BeginBRCE | BRCE | |
| Email NotificationEML_NTR | EML_NTR | |
| Mail Examiner Interview Summary (PTOL - 413)MEXIN | MEXIN | |
| Interview Summary - Applicant Initiated - TelephonicEXAT | EXAT | |
| Interview Summary RecordEXIN | EXIN | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Final Rejection (PTOL - 326)Final rejectionMCTFR | MCTFR | |
| Final RejectionFinal rejectionCTFR | CTFR | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Email NotificationEML_NTR | EML_NTR | |
| Mail Applicant Initiated Interview SummaryMEXIA | MEXIA | |
| Response after Non-Final ActionA... | A... | |
| Request for Extension of Time - GrantedXT/G | XT/G | |
| Incoming Letter Pertaining to the DrawingsLTDR | LTDR | |
| Interview Summary - Applicant Initiated - TelephonicEXAT | EXAT | |
| Interview Summary- Applicant InitiatedEXIA | EXIA | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Electronic Information Disclosure StatementEIDS. | EIDS. | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| to Close the A/R Record and Reset the Status for Expired Suspensions.EOSP | EOSP | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Electronic Information Disclosure StatementEIDS. | EIDS. | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Email NotificationEML_NTR | EML_NTR | |
| Application ready for PDX access by participating foreign officesCCRDY | CCRDY | |
| PG-Pub Issue NotificationPG-ISSUE | PG-ISSUE | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Email NotificationEML_NTR | EML_NTR | |
| Mail Letter Suspending Prosecution at Applicant's RequestMAISP | MAISP | |
| Suspension Letter- Applicant InitiatedAISP | AISP | |
| Letter Requesting Suspension of ProsecutionM856 | M856 | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Application Dispatched from OIPEOIPE | OIPE | |
| Email NotificationEML_NTR | EML_NTR | |
| Application Is Now CompleteCOMP | COMP | |
| Filing ReceiptFLRCPT.O | FLRCPT.O | |
| Application Is Now CompleteCOMP | COMP | |
| Sent to Classification ContractorPGPC | PGPC | |
| FITF set to YES - revise initial settingFTFS | FTFS | |
| Applicant Has Filed a Verified Statement of Small Entity Status in Compliance with 37 CFR 1.27SMAL | SMAL | |
| Cleared by OIPE CSRL194 | L194 | |
| Patent Term Adjustment - Ready for ExaminationPTA.RFE | PTA.RFE | |
| Applicants have given acceptable permission for participating foreignAPPERMS | APPERMS | |
| PTO/SB/69-Authorize EPO Access to Search ResultsSREXR141 | SREXR141 | |
| IFW Scan & PACR Auto Security ReviewSCAN | SCAN | |
| Entity Status Set To Undiscounted (Initial Default Setting or Status Change)BIG. | BIG. | |
| Initial Exam Team nnIEXX | IEXX |
15 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Lapsed due to failure to pay maintenance feeLapsedFP | FP | |
| Lapse for failure to pay maintenance feesLapsedPATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: SMALL ENTITYLAPS | LAPS | |
| Information on status: patent discontinuationPATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362STCH | STCH | |
| Fee payment procedureMAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: SMALL ENTITYFEPP | FEPP | |
| Information on status: patent grantGrantedPATENTED CASESTCF | STCF | |
| Information on status: patent application and granting procedure in generalPUBLICATIONS -- ISSUE FEE PAYMENT VERIFIEDSTPP | STPP | |
| Information on status: patent application and granting procedure in generalNOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONSSTPP | STPP | |
| Information on status: patent application and granting procedure in generalRESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINERSTPP | STPP | |
| Information on status: patent application and granting procedure in generalNON FINAL ACTION MAILEDSTPP | STPP | |
| Information on status: patent application and granting procedure in generalFINAL REJECTION MAILEDSTPP | STPP | |
| Information on status: patent application and granting procedure in generalNON FINAL ACTION MAILEDSTPP | STPP | |
| AssignmentAS | AS | |
| Information on status: patent application and granting procedure in generalDOCKETED NEW CASE - READY FOR EXAMINATIONSTPP | STPP | |
| Information on status: administrative procedure adjustmentPROSECUTION SUSPENDEDSTCT | STCT | |
| AssignmentAS | AS |
Numbers
- Publication
- 20180140902
- Publication, DOCDB
- 2018140902
- Publication, EPODOC
- US2018140902
- Application
- 15356362
- Application, DOCDB
- 201615356362
- Application, EPODOC
- US201615356362
Titles
- English
- TRAINING PROGRAM CUSTOMIZATION USING SENSOR-EQUIPPED ATHLETIC GARMENTS
Patent term adjustment
- A delay
- +742 daysthe office missed an examination deadline
- B delay
- +517 dayspendency past three years
- Overlap
- −73 daysdelays counted once
- Applicant delay
- −374 days
- Net adjustment
- 812 days
Classification
- CPC, 38
- A63B24/0075
- G09B19/0038
- A41D1/002
- A63B71/0619
- A63B24/0062
- A63B2225/50
- A63B2230/60
- G09B19/003
- A63B2220/836
- A63B2220/75
- A63B2220/56
- A63B2220/51
- A63B71/0622
- A63B2230/06
- A63B2220/72
- A63B2220/40
- A63B71/0669
- A63B2230/08
- A63B2208/0223
- A63B2230/50
- A63B2230/04
- A63B2225/20
- A63B2071/0675
- A63B2071/0652
- A63B2220/803
- A63B2220/62
- A63B2220/80
- A61B2503/10
- A61B2505/09
- A61B5/224
- A61B5/6804
- A61B5/486
- A61B5/1118
- A61B5/1121
- A61B2562/0219
- G16H20/30
- A61B5/318
- A61B5/389
- IPC, 4
- A63B24 00
- A63B71 06
- A41D1 00
- G09B19 00
- USPC, 1
- 001001000