Action detection and activity classification
First Claim
Patent Images
1. One or more non-transitory computer readable media storing computer readable instructions that, when executed, cause at least one computing device to:
- determine a type of physical activity associated with an athletic activity performed by a user;
based on the determined type of physical activity performed by the user, identify a plurality of activity templates associated with the physical activity;
receive raw sensor data associated with the athletic activity performed by the user, the raw sensor data being received from one or more sensing devices into a buffer;
analyze the received raw sensor data in the buffer, further comprising;
mean centering and then determining a mean of an absolute value of acceleration in each of one or more subsections of the buffer;
delay further analysis of the raw sensor data in the buffer until the raw sensor data in the one or more subsections has a threshold acceleration magnitude;
calculate a Fast Fourier Transform of raw sensor data to determine one or more events performed during the athletic activity of the user;
compare the determined one or more events to a plurality of activity templates, further comprising;
determine whether the raw sensor data indicates that a foot contact duration is within a threshold range of an average duration of one or more previously matched foot contact events of the plurality of activity templates;
determine whether the determined one or more events match one or more activity templates of the plurality of activity templates;
responsive to determining that the determined one or more events match one or more activity templates, classify the events as performance of a first action of a first type and communicate sound feedback to the user based on the first action; and
responsive to determining that the determined one or more events do not match one or more activity templates, storing the received sensor data.
5 Assignments
0 Petitions
Accused Products
Abstract
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.
26 Citations
11 Claims
-
1. One or more non-transitory computer readable media storing computer readable instructions that, when executed, cause at least one computing device to:
-
determine a type of physical activity associated with an athletic activity performed by a user; based on the determined type of physical activity performed by the user, identify a plurality of activity templates associated with the physical activity; receive raw sensor data associated with the athletic activity performed by the user, the raw sensor data being received from one or more sensing devices into a buffer; analyze the received raw sensor data in the buffer, further comprising; mean centering and then determining a mean of an absolute value of acceleration in each of one or more subsections of the buffer; delay further analysis of the raw sensor data in the buffer until the raw sensor data in the one or more subsections has a threshold acceleration magnitude; calculate a Fast Fourier Transform of raw sensor data to determine one or more events performed during the athletic activity of the user; compare the determined one or more events to a plurality of activity templates, further comprising; determine whether the raw sensor data indicates that a foot contact duration is within a threshold range of an average duration of one or more previously matched foot contact events of the plurality of activity templates; determine whether the determined one or more events match one or more activity templates of the plurality of activity templates; responsive to determining that the determined one or more events match one or more activity templates, classify the events as performance of a first action of a first type and communicate sound feedback to the user based on the first action; and responsive to determining that the determined one or more events do not match one or more activity templates, storing the received sensor data. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system comprising:
-
a sensor system including a plurality of sensors, the sensor system further including; a first processor; and memory storing computer readable instructions that, when executed, cause the first processor to; receive raw sensor data associated with athletic activity of a user into a buffer; determine, based on a signature of a signal received from the plurality of sensors, a category of athletic activity being performed; and an activity processing system, including; a second processor; and memory storing computer-readable instructions that, when executed, cause the second processor to; receive the determined category of athletic activity being performed; analyze the received raw sensor data in the buffer, further comprising; mean centering and then determining a mean of an absolute value of acceleration in each of one or more subsections of the buffer; delay further analysis of the raw sensor data in the buffer until the raw sensor data in the one or more subsections has a threshold acceleration magnitude; calculate a Fast Fourier Transform of raw sensor data to determine one or more events performed during athletic activity of a user; select a plurality of athletic activity templates for comparison, the plurality of athletic activity templates being selected based on the determined category of athletic activity being performed; compare the determined one or more events to the selected plurality of activity templates, further comprising; determine whether the raw sensor data indicates that a foot contact duration is within a threshold range of an average duration of one or more previously matched foot contact events of the plurality of activity templates; determine whether the determined one or more events match one or more activity templates of the selected plurality of activity templates; and responsive to determining that the determined one or more events match one or more activity templates, classify the events of the user as performance of a first action of a first type and communicate sound feedback to the user based on the first action. - View Dependent Claims (9, 10, 11)
-
Specification