IP Library Granted Patent US 10,976,180
Granted Patent B2
US 10,976,180 · App. 16/921,292 · Granted Apr 13, 2021

Accelerometer-based systems and methods for quantifying steps

Inventors: Gregory R. Romrell (Provo, UT); Ryan J. H. Brunt (Brooklyn, NY); Jon Benjamin Griffith (Minneapolis, MN); Joseph Roxas (Talisay, PH)
Assignee: OPTUM LABS, LLC
G01C22/006A61B5/0022A61B5/1118G01P13/00A61B2562/0219
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,976,180
App. No.
16/921,292
Granted
Apr 13, 2021
Kind
B2
Abstract

Systems and methods detect steps from one or more sensed accelerometer signals. Systems comprise an accelerometer and a non-transitory computer readable medium, each of which communicates with a processor. The accelerometer is coupled to an individual and generates outputs received by the processor. The non-transitory computer readable medium stores instructions controlling the processor to perform steps of a method. The processor determines a minimum and a maximum reading for respective time periods. Counted peak heights are maxima that exceed a rest threshold. The rest threshold may be a function of the rest maximum. The processor determines a peak threshold for each time period having a counted peak height. A counted amplitude comprises the difference between the maximum reading and minimum readings of a time period in which the counted peak height exceeds the peak threshold. The processor increments a step counter when a counted amplitude exceeds an amplitude threshold.

Claims (59)

1. A method for counting steps from a plurality of accelerometer outputs of an accelerometer, the accelerometer generating the plurality of accelerometer outputs while being coupled to an individual, the method executed by a processor in communication with a non-transitory computer readable medium, the non-transitory computer readable medium storing instructions for execution by the processor to execute the method, the method comprising:

receiving the plurality of accelerometer outputs;

determining a plurality of time periods, wherein each of the plurality of time periods is a time period;

determining readings based at least in part on the plurality of accelerometer outputs;

identifying counted peak heights, wherein each of the counted peak heights comprises a maximum reading during a time period in which the maximum reading is greater than a rest threshold, wherein the rest threshold is determined by:

receiving readings for a period of rest,

identifying a rest maximum, wherein the rest maximum comprises a greatest reading generated by the accelerometer for the period of rest, and

determining the rest threshold based at least in part on the rest maximum;

determining a peak threshold for each of the plurality of time periods with a counted peak height, wherein the peak threshold comprises a weighted average of two or more counted peak heights; and

incrementing a counter responsive to the counted peak height exceeding the peak threshold associated with the time period in which the counted peak height occurred, wherein a number stored by the counter represents a number of steps taken by the individual.

2. The method of claim 1 , wherein the accelerometer measures linear acceleration along a vertical axis.

3. The method of claim 1 , wherein the method further comprises applying a data-smoothing function to the plurality of accelerometer outputs of the accelerometer to determine the readings.

4. The method of claim 3 , wherein the data-smoothing function comprises one or more of a low-pass filter, a moving average, or a curve-fitting function.

5. The method of claim 1 , wherein each of the plurality of time periods is of equal duration.

6. The method of claim 1 , wherein determining the rest threshold comprises one or more of:

multiplying the rest maximum by a coefficient greater than or equal to one; or

adding a fixed value to the rest maximum.

7. The method of claim 1 , wherein the two or more counted peak heights immediately precede each time period having a counted peak height.

8. The method of claim 1 , wherein the accelerometer measures linear acceleration along three axes and the plurality of accelerometer outputs from the three axes are combined.

9. A system for counting steps from a plurality of accelerometer outputs of an accelerometer, the accelerometer generating the plurality of accelerometer outputs while being coupled to an individual, the system comprising:

a processor in communication with a non-transitory computer-readable medium, the non-transitory computer-readable medium storing instructions for execution by the processor to cause the system to at least:

receive the plurality of accelerometer outputs;

determine a plurality of time periods, wherein each of the plurality of time periods is a time period;

determine readings based at least in part on the plurality of accelerometer outputs;

identify counted peak heights, wherein each of the counted peak heights comprises a maximum reading during a time period in which the maximum reading is greater than a rest threshold, wherein the rest threshold is determined by:

receiving readings for a period of rest,

identifying a rest maximum, wherein the rest maximum comprises a greatest reading generated by the accelerometer for the period of rest, and

determining the rest threshold based at least in part on the rest maximum;

determine a peak threshold for each of the plurality of time periods with a counted peak height, wherein the peak threshold comprises a weighted average of two or more counted peak heights; and

increment a counter responsive to the counted peak height exceeding the peak threshold associated with the time period in which the counted peak height occurred, wherein a number stored by the counter represents a number of steps taken by the individual.

10. The system of claim 9 , wherein the accelerometer measures linear acceleration along a vertical axis.

11. The system of claim 9 , wherein the non-transitory computer-readable medium storing instructions for execution by the processor to further cause the system to at least apply a data-smoothing function to the plurality of accelerometer outputs to determine the readings.

12. The system of claim 11 , wherein the data-smoothing function comprises one or more of a low-pass filter, a moving average, or a curve-fitting function.

13. The system of claim 9 , wherein each of the plurality of time periods is of equal duration.

14. The system of claim 9 , wherein determining the rest threshold comprises one or more of:

multiplying the rest maximum by a coefficient greater than or equal to one; or

adding a fixed value to the rest maximum.

15. The system of claim 9 , wherein the two or more counted peak heights are the two or more counted peak heights immediately preceding each time period having a counted peak height.

16. The system of claim 9 , wherein the system further comprises a display screen for displaying information comprising the number stored by the counter.

17. The system of claim 9 , wherein the accelerometer measures linear acceleration along three axes and the plurality of accelerometer outputs from the three axes are combined.

18. A computer program product for counting steps from a plurality of accelerometer outputs of an accelerometer, the accelerometer generating the plurality of accelerometer outputs while being coupled to an individual, the computer program product comprising at least one non-transitory computer-readable storage medium having computer-readable program code portions stored therein, the computer-readable program code portions, when executed, are configured to:

receive the plurality of accelerometer outputs;

determine a plurality of time periods, wherein each of the plurality of time periods is a time period;

determine readings based at least in part on the plurality of accelerometer outputs;

identify counted peak heights, wherein each of the counted peak heights comprises a maximum reading during a time period in which the maximum reading is greater than a rest threshold, wherein the rest threshold is determined by:

receiving readings for a period of rest,

identifying a rest maximum, wherein the rest maximum comprises a greatest reading generated by the accelerometer for the period of rest, and

determining the rest threshold based at least in part on the rest maximum;

determine a peak threshold for each of the plurality of time periods with a counted peak height, wherein the peak threshold comprises a weighted average of two or more counted peak heights; and

increment a counter responsive to the counted peak height exceeding the peak threshold associated with the time period in which the counted peak height occurred, wherein a number stored by the counter represents a number of steps taken by the individual.

19. The computer program product of claim 18 , wherein the accelerometer measures linear acceleration along a vertical axis.

20. The computer program product of claim 18 , wherein the computer-readable program code portions, when executed, are further configured to apply a data-smoothing function to the plurality of accelerometer outputs to determine the readings.

21. The computer program product of claim 20 , wherein the data-smoothing function comprises one or more of a low-pass filter, a moving average, or a curve-fitting function.

22. The computer program product of claim 18 , wherein each of the plurality of time periods is of equal duration.

23. The computer program product of claim 18 , wherein determining the rest threshold comprises one or more of:

multiplying the rest maximum by a coefficient greater than or equal to one; or

adding a fixed value to the rest maximum.

24. The computer program product of claim 18 , wherein the two or more counted peak heights are the two or more counted peak heights immediately preceding each time period having a counted peak height.

25. The computer program product of claim 18 , wherein the accelerometer measures linear acceleration along three axes and the plurality of accelerometer outputs from the three axes are combined.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 19, 2021
From: SAVVYSHERPA ASIA, INC.
To: SAVVYSHERPA, INC.
Reel/Frame 056294/0697 →
CHANGE OF NAME Recorded Jan 13, 2021
From: SAVVYSHERPA, LLC
To: OPTUM LABS, LLC
Reel/Frame 054899/0926 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 7, 2020
From: ROXAS, JOSEPH ARATEA
To: SAVVYSHERPA ASIA, INC.
Reel/Frame 053999/0210 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 7, 2020
From: SAVVYSHERPA, INC.
To: FORTIFY TECHNOLOGIES, LLC
Reel/Frame 053999/0312 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 7, 2020
From: FORTIFY TECHNOLOGIES, LLC
To: SAVVYSHERPA, INC.
Reel/Frame 053999/0390 →
CHANGE OF NAME Recorded Oct 7, 2020
From: SAVVYSHERPA, INC.
To: SAVVYSHERPA, LLC
Reel/Frame 054004/0971 →
Continuity (5)
Continuation 16710014 · Dec 11, 2019
Division 14879718 · Oct 9, 2015
Provisional Application 62106450 · Jan 22, 2015
Provisional Application 62074152 · Nov 3, 2014
Related Publication 20200333164A1 · Oct 22, 2020