Activity identification and tracking
US-2018338709-A1 · Nov 29, 2018 · US
US12533552B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-12533552-B2 |
| Application number | US-202118043152-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jul 22, 2021 |
| Priority date | Aug 28, 2020 |
| Publication date | Jan 27, 2026 |
| Grant date | Jan 27, 2026 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A controller is connected to receive an input signal from at least one accelerometer. The controller comprises an interface facilitating input and output pins/ports, and a filter module to filter the input signal from at least one accelerometer. The controller includes a stroke segmentation module configured to determine at least two parameters comprising a first parameter and a second parameter from the filtered input signal, generate an envelope signal using the at least two parameters and the filtered input signal, and determine the swim stroke of the swimmer based on the filtered input signal and the envelope signal. Further, an activity detection module is used in combination with the stroke segmentation module.
Opening claim text (preview).
We claim: 1 . A controller for determining a swim stroke of a swimmer, the controller comprising: a non-transitory memory storing program instructions that implement a filter module and a stroke segmentation module; and a processor operably connected to the non-transitory memory, the processor being configured to: receive an input signal from at least one accelerometer; execute the filter module to filter the input signal; and execute the stroke segmentation module to: determine at least two parameters comprising a first parameter and a second parameter from the filtered input signal, the first parameter being local minima of peaks in the filtered input signal, the second parameter being relative amplitudes of the peaks, the relative amplitudes being differences between the local minima of the peaks and local maxima of the peaks, generate an envelope signal using the at least two parameters and the filtered input signal, the envelope signal coinciding with the local maxima of the peaks and decaying between the local maxima of the peaks, and determine the swim stroke of the swimmer based on the filtered input signal and the envelope signal. 2 . The controller as claimed in claim 1 , wherein the processor further executes the stroke segmentation module to: generate the envelope signal based on a fall rate and a state of an internal state machine having two states, the envelope signal generated with reference to the filtered input signal, identify an instant of a raw stroke segment based on the envelope signal and the filtered input signal, and determine a true instant of the identified raw stroke segment after validation. 3 . The controller as claimed in claim 2 , wherein: the non-transitory memory further stores program instructions that implement an activity detection module; and the processor is configured to execute the activity detection module to: extract features vectors from the input signal and the filtered input signal, and process the extracted feature vectors to determine the identified raw stroke segment to be one of a swim activity and a non-swim activity. 4 . The controller as claimed in claim 3 , wherein the feature vectors extracted using the activity detection module include at least one of (i) a maximum value of a velocity of a current stroke segment, (ii) a difference between the maximum value of the velocity of the current stroke segment and a maximum value of a velocity of a previous stroke segment, (iii) a difference between a mean of acceleration data of the current stroke segment and a mean of acceleration data of a second previous stroke segment, (iv) a difference between a peak point of filtered acceleration data of the current stroke segment and a peak point of filtered acceleration data of the previous stroke segment, (v) a difference between a maximum value of filtered acceleration data and a minimum value of filtered acceleration data for a stroke segment, and (vi) a rate of change of acceleration. 5 . A method for determining a swim stroke of a swimmer, the method comprising: receiving, with a processor, an input signal from at least one accelerometer, the processor being operably connected to a non-transitory memory storing program instructions that implement a filter module and a stroke segmentation module; filtering the input signal using the filter module with the processor; determining, using the stroke segmentation module with the processor, at least two parameters comprising a first parameter and a second parameter from the filtered input signal, the first parameter being local minima of peaks in the filtered input signal, the second parameter being a relative amplitude of the peaks, the relative amplitudes being differences between the local minima of the peaks and local maxima of the peaks; generating, using the stroke segmentation module with the processor, an envelope signal using the at least two parameters and the filtered input signal, the envelope signal coinciding with the local maxima of the peaks and decaying between the local maxima of the peaks; and determining, using the stroke segmentation module with the processor, the swim stroke of the swimmer based on the filtered input signal and the envelope signal. 6 . The method as claimed in claim 5 , further comprising: generating, using the stroke segmentation module with the processor, the envelope signal based on a fall rate and a state of an internal state machine having two states, the envelope signal generated with reference to the filtered input signal, and identifying, using the stroke segmentation module with the processor, a raw instant of a stroke segment followed by determining the raw instant to be a true instant of stroke segment after validation. 7 . The method as claimed in claim 6 , wherein the non-transitory memory further stores program instructions that implement an activity detection module, the method further comprising: validating the identified stroke segment, using an activity detection module with the processor, by: extracting feature vectors from the filtered input signal, and processing the extracted feature vectors to determine the identified stroke segment to be one of a swim activity and a non-swim activity. 8 . The method as claimed in claim 7 , wherein the feature vectors extracted using the activity detection module include at least one of (i) a maximum value of a velocity of a current stroke segment, (ii) a difference between the maximum value of the velocity of the current stroke segment and a maximum value of a velocity of a previous stroke segment, (iii) a difference between a mean of acceleration data of the current stroke segment and a mean of acceleration data of a second previous stroke segment, (iv) a difference between a peak point of filtered acceleration data of the current stroke segment and a peak point of filtered acceleration data of the previous stroke segment, (v) a difference between a maximum value of filtered acceleration data and a minimum value of filtered acceleration data for a stroke segment, and (vi) a rate of change of acceleration.
Swimming · CPC title
Apparatus used in water · CPC title
Sensors arranged on the body of the user · CPC title
Acceleration · CPC title
Distinction between different activities, movements, or kind of sports performed · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.