IP Library Granted Patent US 10,293,239
Granted Patent B2
US 10,293,239 · App. 15/984,732 · Granted May 21, 2019

Action detection and activity classification

Inventors: Santoshkumar Balakrishnan (Hillsboro, OR); Jordan M. Rice (Portland, OR); Steven H. Walker (Camas, WA); Adam S. Carroll (Bend, OR); Corey C. Dow-Hygelund (Sunriver, OR); Aaron K. Goodwin (Bend, OR); James M. Mullin (Bend, OR); Tye L. Rattenbury (New York, NY); Joshua M. Rooke-Ley (New York, NY); John M. Schmitt (Bend, OR)
Assignee: NIKE, Inc.
A63B71/06A41D1/002A43B3/0005A61B5/0002A61B5/0004A61B5/0022A61B5/0059A61B5/0077A61B5/01A61B5/02438A61B5/1112A61B5/1118A61B5/1123A61B5/486A61B5/681A61B5/6807A61B5/7246A61B5/7257A61B5/7264A61B5/7282A61B5/742A61B5/7475A63B24/0003A63B24/0062A63B24/0075G06F19/00G06F19/3418G06F19/3481G09B5/00G09B5/02G09B5/125G09B19/003G09B19/0038G16H20/30G16H20/40G16H40/67A61B2503/10A61B2562/029A61B2562/0219A61B2562/0252A61B2562/08A63B2024/0065
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,293,239
App. No.
15/984,732
Granted
May 21, 2019
Kind
B2
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.

Claims (54)

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.

2. The one or more non-transitory computer readable media of claim 1 , further including instructions that, when executed, cause the at least one computing device to:

determine a quality of the first action;

determine 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, provide coaching information to the user.

3. The one or more non-transitory computer-readable media of claim 2 , wherein determining the quality of the first action further includes instructions that, when executed, cause the computing device to:

determine a strength of a match between the determined one or more events and the one or more activity templates.

4. The one or more non-transitory computer-readable media of claim 2 , wherein determining the quality of the first action further includes instructions that, when executed, cause the computing device to:

identify one or more optional events associated with the one or more matching activity templates;

determine 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.

5. The one or more non-transitory computer-readable media of claim 2 , wherein providing coaching information to the user further includes instructions that, when executed, cause the computing device to:

provide recommendations for improving the quality of the first type of action.

6. The one or more non-transitory computer-readable media of claim 2 , wherein the coaching information provided to the user is specific to at least one of the one or more determined events.

7. The one or more non-transitory computer-readable media 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.

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.

9. The system of claim 8 , the activity processing system further including instructions that, when executed, cause the second processor to:

determine a quality of the first action;

determine 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, provide coaching information to the user.

10. The system of claim 9 , wherein determining the quality of the first action further includes instructions that, when executed, cause the second processor to:

determine a strength of a match between the determined one or more events and the one or more activity templates.

11. The system of claim 9 , wherein determining the quality of the first action includes instructions that, when executed, cause the second processor to:

identify one or more optional events associated with the one or more matching activity templates;

determine 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.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 21, 2020
From: BALAKRISHNAN, SANTOSHKUMAR; RICE, JORDAN M.; WALKER, STEVEN H.
To: NIKE, INC.
Reel/Frame 054130/0353 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 21, 2020
From: CARROLL, ADAM S.; DOW-HYGELUND, COREY C.; GOODWIN, AARON K.; MULLIN, JAMES M.; SCHMITT, JOHN M.
To: BEND RESEARCH, INC.
Reel/Frame 054130/0529 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 21, 2020
From: RATTENBURY, TYE L.; ROOKE-LEY, JOSHUA M.
To: R/GA
Reel/Frame 054130/0694 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 21, 2020
From: BEND RESEARCH, INC.
To: NIKE, INC.
Reel/Frame 054130/0747 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 21, 2020
From: R/GA
To: NIKE, INC.
Reel/Frame 054130/0777 →
Continuity (7)
Continuation 15610176 · May 31, 2017
Continuation 15263774 · Sep 13, 2016
Continuation 15019366 · Feb 9, 2016
Continuation 14639282 · Mar 5, 2015
Continuation 13401592 · Feb 21, 2012
Provisional Application 61588608 · Jan 19, 2012
Related Publication 20180333611A1 · Nov 22, 2018
Cited By (2)
US 12,396,545 US 12,593,908