IP Library › Granted Patent US 10,130,298
Granted Patent B2
US 10,130,298 · App. 14/390,419 · Granted Nov 20, 2018

Musculoskeletal activity recognition system and method

Inventors: Frank Mokaya (Pittsburgh, PA); Pei Zhang (Mountain View, CA)
Assignee: CARNEGIE MELLON UNIVERSITY
A61B5/4519A61B5/0004A61B5/0024A61B5/1101A61B5/1107A61B5/1126A61B5/224A61B5/7203A61B5/725A61B5/7257A61B5/7267A61B5/7278A61B5/7425A61B2562/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,130,298
App. No.
14/390,419
Granted
Nov 20, 2018
Kind
B2
Abstract

A muscle activity and skeletal monitoring system and method are disclosed. A network of at least two distributed inertial sensor nodes are configured to communicate with each other over a first interface. Each of the inertial sensor nodes comprises at least one sensor configured to sense muscle vibrations and monitor body motion. A muscle activity recognition and motion tracking and visualization methods also are disclosed.

Claims (45)

1. A muscle activity recognition method, comprising:

detecting, via a network of more than one inertial sensor node distributed on a physically active muscle group of a user's body, muscle vibration data, wherein each inertial sensor node comprises at least one inertial sensor including an accelerometer;

determining, via a server communicatively coupled to each inertial sensor node, a unique vibration signature to identify the muscle group of the user's body, wherein the unique vibration signature is determined from a stream of muscle vibration data compiled from each accelerometer of each inertial sensor node, and wherein the server is configured to execute a muscle activity recognition module programmed to:

filter the stream of muscle vibration data through a high pass filter;

extract features from the filtered stream of muscle vibration data by calculating a select set of feature vectors;

combine the select set of feature vectors into a matrix, wherein the matrix constitutes the unique vibration signature associated with the muscle group of the user's body; and

identify, via a classifier, the muscle group of the user's body corresponding to the determined unique vibration signature based on the calculated select set of feature vectors; and

presenting, via a user interface, a human-like avatar comprising a plurality of visualized body parts, wherein the identified muscle group of the user's body is highlighted on its corresponding visualized body part of the human-like avatar to distinguish different physically active muscle groups of the user's body and to monitor the identified muscle group of the user's body.

2. The muscle activity recognition method of claim 1 , wherein the identifying of the muscle group of the user's body is based on classifier objects stored on the server.

3. The muscle activity recognition method of claim 1 , wherein calculating the select set of feature vectors comprises:

calculating a first number of time domain feature vectors and a second number of frequency domain feature vectors.

4. The muscle activity recognition method of claim 3 , wherein each time domain feature vector is calculated using a sliding window technique with either a fixed or a variable overlap on the filtered stream of muscle vibration data.

5. The muscle activity recognition method of claim 4 , wherein the sliding window technique with the fixed overlap is used, and wherein each frequency domain feature vector is calculated via a discrete Fourier transform on the filtered stream of muscle vibration data contained in each fixed sliding window.

6. The muscle activity recognition method of claim 1 , further comprising:

training the classifier using a supervised machine learning technique.

7. The muscle activity recognition method of claim 1 , wherein the classifier comprises a J48 decision tree classifier.

8. The muscle activity recognition method of claim 1 , further comprising:

detecting muscle vibration data for a single muscle group during an isolation exercise, wherein the muscle vibration data varies based on a fatigue status of the single muscle group;

determining a fresh vibration signature from muscle vibration data associated with the single muscle group in a fresh state and a fatigued vibration signature from muscle vibration data associated with the single muscle group in a fatigued state; and

training the classifier using a supervised machine learning technique using the fresh vibration signature and the fatigued vibration signature;

wherein the server is configured to execute the muscle activity recognition module further programmed to identify, via the classifier, the muscle group of the user's body as fresh or fatigued if the identified muscle group corresponds to the single muscle group and the determined unique vibration signature corresponds to the fresh vibration signature or the fatigued vibration signature respectively; and

wherein the method further comprises highlighting the identified muscle group of the user's body on its corresponding visualized body part of the human-like avatar in a first way if the identified muscle group of the user's body is fresh and in a second way if the identified muscle group of the user's body is fatigued to prevent over-exertion of the identified muscle group of the user's body.

9. The muscle activity recognition method of claim 1 , further comprising:

detecting, via the network of more than one inertial sensor node distributed on the physically active muscle group of the user's body, body motion data, wherein each inertial sensor node comprises a plurality of inertial sensors including the accelerometer, a gyroscope, and a magnetometer; and

tracking, via the server, an orientation of the more than one inertial sensor node over time, wherein the server is configured to execute a motion tracking and visualization module programmed to:

filter a stream of accelerometer body motion data, compiled from each accelerometer of each inertial sensor node, through a complimentary filter functioning as a low-pass filter;

filter a stream of gyroscope body motion data, compiled from each gyroscope of each inertial sensor node, through the complimentary filter functioning as a high-pass filter;

filter a stream of magnetometer body motion data, compiled from each magnetometer of each inertial sensor node, through the complimentary filter functioning as a low-pass filter;

correct drift associated with the filtered stream of accelerometer body motion data based on at least one of the filtered stream of gyroscope body motion data or the filtered stream of magnetometer body motion data;

correct drift associated with the filtered stream of gyroscope body motion data based on at least one of the filtered stream of accelerometer body motion data or the filtered stream of magnetometer body motion data; and

correct drift associated with the filtered stream of magnetometer body motion data based on at least one of the filtered stream of accelerometer body motion data or the filtered stream of gyroscope body motion data

wherein an orientation of the more than one inertial sensor node is determined based on the filtered and corrected stream of accelerometer body motion data, the filtered and corrected stream of gyroscope body motion data, and the filtered and corrected stream of magnetometer body motion data over time.

10. The muscle activity recognition method of claim 9 , wherein the server is configured to execute the motion tracking and visualization module further programmed to:

map the more than one inertial sensor node to a part of the user's body based on a location of the identified muscle group of the user's body, identified via the muscle activity recognition module to, determine a raw orientation of the part of the user's body over time; and

generate a revised orientation of the part of the user's body over time by filtering the determined raw orientation of the part of the user's body over time through a range of motion limiter to restrict the orientation of the part of the user's body to within limits of a normal human body.

11. The muscle activity recognition method of claim 10 , wherein the server is configured to execute the motion tracking and visualization module further programmed to:

animate the human-like avatar in the user interface, based on the revised orientation of the part of the user's body over time, such that the corresponding visualized body part of the human-like avatar moves to mimic actual motions of the part of the user's body to analyze motion of the part of the user's body including form.

12. The muscle activity recognition method of claim 1 , wherein the at least one inertial sensor of each inertial sensor node comprises a triple axis accelerometer, a triple axis gyroscope, and a triple axis magnetometer.

13. The muscle activity recognition method of claim 1 , wherein each inertial sensor node further comprises a microcontroller chip coupled to the at least one inertial sensor, and wherein the method further comprises:

controlling, via each microcontroller chip, a sampling of the muscle vibration data by each respective inertial sensor node.

14. The muscle activity recognition method of claim 1 , wherein the server is communicatively coupled to each inertial sensor node via a data aggregator, and wherein the method further comprises:

sampling, by the data aggregator, the muscle vibration data from each inertial sensor node;

compiling, by the data aggregator, the sampled muscle vibration data into the stream of muscle vibration data; and

transmitting, by the data aggregator, the stream of muscle vibration data to the server.

15. The muscle activity recognition method of claim 14 , wherein the transmitting comprises wirelessly transmitting the stream of muscle vibration data to the server to permit user mobility.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2015
From: MOKAYA, FRANK; ZHANG, PEI
To: CARNEGIE MELLON UNIVERSITY
Reel/Frame 036876/0779 →
Continuity (2)
Provisional Application 61686319 · Apr 3, 2012
Related Publication 20150045699A1 · Feb 12, 2015
Cited By (9)
US 12,191,018 US 12,220,201 US 12,249,410 US 12,327,623 US 12,402,804 US 12,562,243 US 12,562,271 US 12,727,784 US 12,731,685