Controller and a method to determine a swim stroke

US12533552B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12533552-B2
Application numberUS-202118043152-A
CountryUS
Kind codeB2
Filing dateJul 22, 2021
Priority dateAug 28, 2020
Publication dateJan 27, 2026
Grant dateJan 27, 2026

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

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.

First claim

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.

Assignees

Inventors

Classifications

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US12533552B2 cover?
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 paramete…
Who is the assignee on this patent?
Bosch Gmbh Robert, Robert Bosch Engineering And Business Solutions Private Ltd
What technology area does this patent fall under?
Primary CPC classification A63B24/0003. Mapped technology areas include Human Necessities.
When was this patent published?
Publication date Tue Jan 27 2026 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).