Action detection and activity classification
Activities, actions and events during user performance of physical activity may be detected using various algorithms and templates. Templates may include an arrangement of one or more states that may identify particular event types and timing between events. Templates may be specific to a particular type of activity (e.g., types of sports, drills, events, etc.), user, terrain, time of day and the like.
1. A computer-implemented method comprising:
receiving, by a sensor system having at least a processor and a memory, raw sensor data associated with athletic activity of a user, the raw sensor data being received from one or more sensing devices;
determining, by the sensor system and based on a signature of a signal received from the one or more sensing devices, a category of athletic activity being performed;
analyzing, by an activity processing system, the raw sensor data and the category of activity to determine one or more events performed during the athletic activity of the user;
selecting, by the activity processing system, a plurality of athletic activity templates for comparison, the plurality of athletic activity templates being selected based on the category of athletic activity being performed;
comparing, by the activity processing system, the determined one or more events to the selected plurality of activity templates;
determining, by the activity processing system, whether the determined one or more events match one or more activity templates of the selected plurality of activity templates;
responsive to determining that the determined one or more events match one or more activity templates, classifying the events of the user as performance of a first action of a first type and communicating sound feedback to the user based on the first action;
determining, by the activity processing system, a quality of the first action;
determining, by the activity processing system, whether the quality of the first action is below a predetermined threshold; and
responsive to determining that the quality of the first action is below the predetermined threshold, providing, by the activity processing system, coaching information to the user, wherein the coaching information includes at least a coaching instruction related to heel weight.
2. The computer-implemented method of claim 1 , wherein determining the quality of the first action includes determining a strength of a match between the determined one or more events and the one or more activity templates.
3. The computer-implemented method of claim 1 , wherein determining the quality of the first action includes:
identifying, by the activity processing system, one or more optional events associated with the one or more matching activity templates;
determining, by the activity processing system, whether a match exists between the one or more optional events associated with the one or more matching activity templates and the determined one or more events.
4. The computer-implemented method of claim 1 , wherein determining the quality of the first action further includes weighting at least one portion of the one or more matching activity templates more than at least one other portion of the one or more matching activity templates.
5. The computer-implemented method of claim 1 , wherein providing coaching information to the user further includes providing recommendations for improving the quality of the first type of action.
6. The computer-implemented method of claim 1 , wherein the coaching information provided to the user is specific to at least one of the one or more determined events.
7. The computer-implemented method of claim 1 , wherein the coaching information is generated based, at least in part, on data associated with weather and terrain at a location of performance of the athletic activity.
8. The computer-implemented method of claim 1 , wherein at least one sensor of the one or more sensing devices is arranged in an article of footwear of the user.