IP Library Granted Patent US 9,128,521
Granted Patent B2
US 9,128,521 · App. 13/842,270 · Granted Sep 8, 2015

System and method of biomechanical posture detection and feedback including sensor normalization

Inventors: Andrew Robert Chang (Sunnyvale, CA); Monisha Perkash (Los Altos Hills, CA); C. Charles Wang (Palo Alto, CA); Andreas Martin Hauenstein (San Mateo, CA)
Assignee: LUMO Bodytech, Inc.
G06F3/011A61B5/0002A61B5/1116A61B5/1121A61B5/4561A61B5/486A61B5/067A61B5/6823
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 9,128,521
App. No.
13/842,270
Granted
Sep 8, 2015
Kind
B2
Abstract

A system and method are described herein for a sensor device which biomechanically detects in real-time a user's movement state and posture and then provides real-time feedback to the user based on the user's real-time posture. The feedback is provided through immediate sensory feedback through the sensor device (e.g., a sound or vibration) as well as through an avatar within an associated application with which the sensor device communicates. The sensor device detects the user's movement state and posture by capturing data from a tri-axial accelerometer in the sensor device. Streamed data from the accelerometer is normalized to correct for sensor errors as well as variations in sensor placement and orientation. Normalization is based on accelerometer data collected while the user is wearing the device and performing specific actions.

Claims (129)

1. A method of normalizing accelerometer data comprising:

capturing, by a tri-axial accelerometer attached to a user, first tri-axial accelerometer data over a first period of time while the user is moving as instructed;

calculating, by the microprocessor, smoothed power from the captured first tri-axial accelerometer data;

identifying, by the microprocessor, data in the captured first tri-axial accelerometer data which results in the calculated power being below a threshold;

discarding, by the microprocessor, the identified data from the captured first tri-axial accelerometer data;

averaging, by a microprocessor, the captured first tri-axial accelerometer data;

creating, by the microprocessor, a first normalization matrix based on the averaged first tri-axial accelerometer data;

capturing, by the tri-axial accelerometer attached to the user, second tri-axial accelerometer data at a second point in time; and

creating, by the microprocessor, first normalized accelerometer data by applying the first normalization matrix to the captured second tri-axial accelerometer data.

2. The method of claim 1 where the tri-axial accelerometer is attached to the user on the user's trunk, head, neck, or a limb.

3. A method of normalizing accelerometer data comprising:

capturing, by a tri-axial accelerometer attached to a user, first tri-axial accelerometer data over a first period of time while the user is moving as instructed;

averaging, by a microprocessor, the captured first tri-axial accelerometer data;

creating, by the microprocessor, a first normalization matrix based on the averaged first tri-axial accelerometer data;

capturing, by the tri-axial accelerometer attached to the user, second tri-axial accelerometer data at a second point in time;

creating, by the microprocessor, first normalized accelerometer data by applying the first normalization matrix to the captured second tri-axial accelerometer data;

capturing, by the tri-axial accelerometer attached to the user, third tri-axial accelerometer data over a third period of time, while the user is stationary as instructed;

averaging, by the microprocessor, the captured third tri-axial accelerometer data;

creating, by the microprocessor, a second normalization matrix based on the averaged third tri-axial accelerometer data; and

creating, by the microprocessor, second normalized accelerometer data by applying the second normalization matrix to the first normalized accelerometer data.

4. The method of claim 3 where moving as instructed comprises walking.

5. The method of claim 3 where stationary as instructed comprises sitting and leaning back.

6. A method of normalizing accelerometer data comprising:

capturing, by a tri-axial accelerometer attached to a user, first tri-axial accelerometer data over a first period of time while the user is moving as instructed;

averaging, by a microprocessor, the captured first tri-axial accelerometer data;

creating, by the microprocessor, a first normalization matrix based on the averaged first tri-axial accelerometer data;

capturing, by the tri-axial accelerometer attached to the user, second tri-axial accelerometer data at a second point in time;

creating, by the microprocessor, first normalized accelerometer data by applying the first normalization matrix to the captured second tri-axial accelerometer data;

recognizing, by the microprocessor, that the user is moving;

averaging, by the microprocessor, the first normalized accelerometer data;

calculating, by the microprocessor, a shift angle from the averaged first normalized accelerometer data; and

adjusting, by the microprocessor, the first normalized accelerometer data based on the calculated shift angle.

7. The method of claim 6 where recognizing by the microprocessor that the user is moving comprises comparing a smoothed power calculated from the first normalized accelerometer data to a threshold.

8. A method of normalizing accelerometer data comprising:

capturing, by a tri-axial accelerometer attached to a user, first tri-axial accelerometer data over a first period of time while the user is moving as instructed;

averaging, by a microprocessor, the captured first tri-axial accelerometer data;

creating, by the microprocessor, a first normalization matrix based on the averaged first tri-axial accelerometer data;

capturing, by the tri-axial accelerometer attached to the user, second tri-axial accelerometer data at a second point in time;

creating, by the microprocessor, first normalized accelerometer data by applying the first normalization matrix to the captured second tri-axial accelerometer data;

recognizing, by the microprocessor, that the first normalized accelerometer data indicates the tri-axial accelerometer is upside-down; and

correcting, by the microprocessor, the first normalized accelerometer data to account for the indication the tri-axial accelerometer is upside-down.

9. A postural feedback apparatus comprising:

a tri-axial accelerometer configured to be attached to a user, the tri-axial accelerometer configured to:

capture first tri-axial accelerometer data over a first period of time while the user is moving as instructed, and

capture second tri-axial accelerometer data at a second point in time; and

a microprocessor configured to:

average the captured first tri-axial accelerometer data,

create a first normalization matrix based on the averaged captured first tri-axial accelerometer data,

create first normalized accelerometer data by applying the first normalization matrix to the captured second tri-axial accelerometer data,

calculate a smoothed power from the captured first tri-axial accelerometer data,

identify data in the captured first tri-axial accelerometer data which results in the calculated smoothed power being below a threshold, and

discard the identified data from the captured first tri-axial accelerometer data, prior to averaging the captured first tri-axial accelerometer data.

10. The apparatus of claim 9 where the tri-axial accelerometer is attached to the user on the user's trunk, head, neck, or a limb.

11. A postural feedback apparatus comprising:

a tri-axial accelerometer configured to be attached to a user, the tri-axial accelerometer configured to:

capture first tri-axial accelerometer data over a first period of time while the user is moving as instructed, and

capture second tri-axial accelerometer data at a second point in time; and

a microprocessor configured to:

average the captured first tri-axial accelerometer data,

create a first normalization matrix based on the averaged captured first tri-axial accelerometer data,

create first normalized accelerometer data by applying the first normalization matrix to the captured second tri-axial accelerometer data;

where

the tri-axial accelerometer is further configured to capture third tri-axial accelerometer data over a third period of time while the user is stationary as instructed; and

the microprocessor is further configured to:

average the captured third tri-axial accelerometer data,

create a second normalization matrix based on the averaged captured third tri-axial accelerometer data, and

create second normalized accelerometer data by applying the second normalization matrix to the first normalized accelerometer data.

12. The apparatus of claim 11 where moving as instructed comprises walking.

13. The apparatus of claim 11 where stationary as instructed comprises sitting and leaning back.

14. A postural feedback apparatus comprising:

a tri-axial accelerometer configured to be attached to a user, the tri-axial accelerometer configured to:

capture first tri-axial accelerometer data over a first period of time while the user is moving as instructed, and

capture second tri-axial accelerometer data at a second point in time; and

a microprocessor configured to:

average the captured first tri-axial accelerometer data,

create a first normalization matrix based on the averaged captured first tri-axial accelerometer data,

create first normalized accelerometer data by applying the first normalization matrix to the captured second tri-axial accelerometer data;

where the microprocessor is further configured to:

recognize that the user is moving based on the first normalized accelerometer data;

average the first normalized accelerometer data;

calculate a shift angle from the averaged first normalized accelerometer data; and

adjust the first normalized accelerometer data based on the calculated shift angle.

15. A postural feedback apparatus comprising:

a tri-axial accelerometer configured to be attached to a user, the tri-axial accelerometer configured to:

capture first tri-axial accelerometer data over a first period of time while the user is moving as instructed, and

capture second tri-axial accelerometer data at a second point in time; and

a microprocessor configured to:

average the captured first tri-axial accelerometer data,

create a first normalization matrix based on the averaged captured first tri-axial accelerometer data,

create first normalized accelerometer data by applying the first normalization matrix to the captured second tri-axial accelerometer data,

recognize that the first normalized accelerometer data indicates the tri-axial accelerometer is upside-down; and

correct the first normalized accelerometer data to account for the indication that the tri-axial accelerometer is upside-down.

16. A non-transitory computer readable medium having stored thereupon computing instructions comprising:

a code segment to capture first tri-axial accelerometer data over a first period of time while the user is moving as instructed;

a code segment to calculate smoothed power from the captured first tri-axial accelerometer data;

a code segment to identify data in the captured first tri-axial accelerometer data which results in the calculated power being below a threshold;

a code segment to discard the identified data from the captured first tri-axial accelerometer data, prior to averaging by the microprocessor the captured first tri-axial accelerometer data;

a code segment to average the captured first tri-axial accelerometer data;

a code segment to create a first normalization matrix based on the averaged first tri-axial accelerometer data;

a code segment to capture second tri-axial accelerometer data at a second point in time; and

a code segment to create first normalized accelerometer data by applying the first normalization matrix to the captured second tri-axial accelerometer data.

17. A non-transitory computer readable medium having stored thereupon computing instructions comprising:

a code segment to capture first tri-axial accelerometer data over a first period of time while the user is moving as instructed;

a code segment to average the captured first tri-axial accelerometer data;

a code segment to create a first normalization matrix based on the averaged first tri-axial accelerometer data;

a code segment to capture second tri-axial accelerometer data at a second point in time;

a code segment to create first normalized accelerometer data by applying the first normalization matrix to the captured second tri-axial accelerometer data;

a code segment to capture third tri-axial accelerometer data over a third period of time, while the user is stationary as instructed;

a code segment to average the captured third tri-axial accelerometer data;

a code segment to create a second normalization matrix based on the averaged third tri-axial accelerometer data; and

a code segment to create second normalized accelerometer data by applying the second normalization matrix to the first normalized accelerometer data.

18. A non-transitory computer readable medium having stored thereupon computing instructions comprising:

a code segment to capture first tri-axial accelerometer data over a first period of time while the user is moving as instructed;

a code segment to average the captured first tri-axial accelerometer data;

a code segment to create a first normalization matrix based on the averaged first tri-axial accelerometer data;

a code segment to capture second tri-axial accelerometer data at a second point in time;

a code segment to create first normalized accelerometer data by applying the first normalization matrix to the captured second tri-axial accelerometer data;

a code segment to recognize that the user is moving by comparing a smoothed power calculated from the first normalized accelerometer data to a threshold;

a code segment to average the first normalized accelerometer data;

a code segment to calculate a shift angle from the averaged first normalized accelerometer data; and

a code segment to adjust the first normalized accelerometer data based on the calculated shift angle.

19. A non-transitory computer readable medium having stored thereupon computing instructions comprising:

a code segment to capture first tri-axial accelerometer data over a first period of time while the user is moving as instructed;

a code segment to average the captured first tri-axial accelerometer data;

a code segment to create a first normalization matrix based on the averaged first tri-axial accelerometer data;

a code segment to capture second tri-axial accelerometer data at a second point in time;

a code segment to create first normalized accelerometer data by applying the first normalization matrix to the captured second tri-axial accelerometer data;

a code segment to recognize that the first normalized accelerometer data indicates the tri-axial accelerometer is upside-down; and

a code segment to correct the first normalized accelerometer data to account for the indication the tri-axial accelerometer is upside-down.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 31, 2018
From: LUMO BODYTECH, INC.
To: LUMO LLC
Reel/Frame 047369/0710 →
RELEASE OF SECURITY INTEREST Recorded May 10, 2018
From: VENTURE LENDING & LEASING VI, INC.; VENTURE LENDING & LEASING VII, INC.
To: LUMO BODYTECH, INC.
Reel/Frame 045765/0425 →
SECURITY INTEREST Recorded Jun 12, 2014
From: LUMO BODYTECH, INC.
To: VENTURE LENDING & LEASING VI, INC.; VENTURE LENDING & LEASING VII, INC.
Reel/Frame 033135/0208 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 15, 2013
From: CHANG, ANDREW ROBERT; PERKASH, MONISHA; WANG, C. CHARLES; HAUENSTEIN, ANDREAS MARTIN
To: LUMO BODYTECH, INC.
Reel/Frame 030022/0520 →
Continuity (4)
Continuation In Part 13548093 · Jul 12, 2012
Provisional Application 61507514 · Jul 13, 2011
Provisional Application 61547590 · Oct 14, 2011
Related Publication 20130207889A1 · Aug 15, 2013