IP Library Granted Patent US 12,676,225
Granted Patent B2
US 12,676,225 · App. 17/607,629 · Granted Jul 7, 2026

System for measuring breath and for adapting breath exercises

Inventors: Anne-Marie Denault (Montreal, CA); Osman Zeki Tekelioglu (Montreal, CA); Irene Pylypenko (Montreal, CA)
Assignee: MOON FACTORY INC.
G16H20/30A63B23/185A63B24/0075A63B71/0622G06T13/00G10L25/21G10L25/51A63B2024/0068A63B2024/0096A63B2220/808A63B2230/405
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 12,676,225
App. No.
17/607,629
Granted
Jul 7, 2026
Kind
B2
Abstract

There is described a method for coaching a breathing exercise to a user using a computing device. The method provides a sequence of user instructions for the breathing exercise and determines an expected pattern of breathing intensity from the user in accordance with the sequence of user instructions. Raw audio data stream is retrieved from a microphone associated to the computing device. The raw audio data stream is processed, and breathing events are then detected. By comparing a timing of the detected breathing events with the expected pattern of breathing intensity, compliance with the breathing exercise and future exercises can be adapted within a session or over the length of a program.

Claims (64)

1 . A computer-implemented method for acquiring a raw audio data stream and detecting breathing events on a computing device, the method comprising:

providing a microphone, wherein the microphone is a built-in microphone integrated to the computing device, to collect the raw audio data stream;

providing an operating system installed on the computing device;

by the operating system, preprocessing the raw audio data stream collected by the microphone by default for access to the preprocessed raw audio data stream by any application installed on the computing device;

by the computing device, providing a sequence of user instructions for the breathing exercise;

determining an expected pattern of breathing intensity from the user in accordance with the sequence of user instructions;

retrieving the raw audio data stream collected by the microphone from the computing device, wherein the step of retrieving the raw audio data stream comprises:

using OS-specific instructions directed to the operating system to avoid receiving the preprocessed raw audio data stream and instead retrieving the raw audio data stream, not preprocessed, directly, by preventing any alteration by the operating system on the raw audio data stream before retrieval, and therefore different from the preprocessed raw audio data stream;

detecting breathing events from the raw audio data stream,

wherein the raw audio data stream is transformed into a formatted raw audio data stream by dividing the raw audio data stream in independently treated sample windows of a duration between 50 ms and 200 ms, converting the raw audio data stream from 16-bit to double and wherein the formatted raw audio data stream is transformed into a formatted sound intensity by decomposing the formatted raw audio data stream into Intrinsic Mode Functions using Empirical Mode Decomposition;

wherein the detecting comprises:

detecting that the formatted sound intensity has crossed over a threshold, wherein the threshold is based on a moving averaging window of the formatted sound intensity of a duration between 1 s and 2 s;

integrating the formatted sound intensity over a continuous period of time covering a detected breath event to evaluate a volume of air that was inspired or expired during the detected breath event; and

comparing the formatted sound intensity over a continuous period of time with the expected pattern of breathing intensity.

2 . The method of claim 1 , wherein detecting breathing events further comprises:

determining the threshold for each of the sample windows based on the moving averaging window and identifying intersections of the threshold with an envelope of the Intrinsic Mode Functions;

for each of the sample windows, calculating an average standard deviation and the threshold to discriminate between a start and an end of the detected breath event; and

recording and time-stamping each start of the detected breath event.

3 . The method of claim 1 , further comprising:

based on the comparing of the timing of the detected breathing events with the expected pattern of breathing intensity to determine compliance with the breathing exercise, generating a score indicative of the compliance; and

among a library of possible breathing exercises, automatically proposing a future breathing exercise with an adjusted level of difficulty which is based on a level of difficulty of the breathing exercise which was performed and on the score indicative of the compliance.

4 . The method of claim 1 , further comprising:

using a game engine, animating an animated character according to the expected pattern of breathing intensity in timing with the instructions, and displaying the character on the computing device.

5 . The method of claim 1 , further comprising:

adapting future instructions of the breathing exercise based on the step of comparing such that if the step of comparing indicates a low compliance with the expected pattern of breathing intensity, a level of difficulty of the future instructions is lowered within a single session of the breathing exercise.

6 . The method of claim 1 , further comprising:

using a game engine, animating an animated character according to the expected pattern of breathing intensity in timing with the instructions, and displaying the animated character on the computing device; and

using the same game engine, displaying a plot of the formatted sound intensity in comparison with the expected pattern of breathing intensity over the continuous period of time simultaneously with the animated character or at an end of presentation of the animated character.

7 . A computing device for acquiring a raw audio data stream and detecting breathing events, the computing device comprising a microphone, a memory storing instructions and a processor executing the instructions to execute steps of:

providing, on the computing device, a sequence of user instructions for the breathing exercise;

determining an expected pattern of breathing intensity from the user in accordance with the sequence of user instructions;

retrieving the raw audio data stream from the microphone;

detecting breathing events from the raw audio data stream,

wherein the raw audio data stream is transformed into a formatted raw audio data stream by dividing the raw audio data stream in independently treated sample windows of a duration between 50 ms and 200 ms, converting the raw audio data stream from 16-bit to double and wherein the formatted raw audio data stream is transformed into a formatted sound intensity by decomposing the formatted raw audio data stream into Intrinsic Mode Functions using Empirical Mode Decomposition;

wherein the detecting comprises:

detecting that the formatted sound intensity has crossed over a threshold, wherein the threshold is based on a moving averaging window of the formatted sound intensity of a duration between 1s and 2s;

integrating the formatted sound intensity over a continuous period of time covering a detected breath event to evaluate a volume of air that was inspired or expired during the detected breath event; and

comparing the formatted sound intensity over a continuous period of time with the expected pattern of breathing intensity,

wherein the microphone is a built-in microphone integrated to the computing device,

wherein the computing device comprises an operating system which preprocesses the raw audio data stream from the microphone by default for access to the preprocessed raw audio data stream by any application installed on the computing device, and wherein the step of retrieving the raw audio data stream comprises:

using OS-specific instructions directed to the operating system to avoid receiving the preprocessed raw audio data stream and retrieving the raw audio data stream, not preprocessed, directly, by preventing any alteration by the operating system on the raw audio data stream before retrieval.

8 . The computing device of claim 7 , wherein detecting breathing events comprises:

determining the threshold for each of the sample windows based on the moving averaging window and identifying intersections of the threshold with an envelope of the Intrinsic Mode Functions;

for each of the sample windows, calculating an average standard deviation and the threshold to discriminate between a start and an end of the detected breath event; and

recording and time-stamping each start of the detected breath event.

9 . The computing device of claim 7 , further comprising:

based on the comparing of the timing of the detected breathing events with the expected pattern of breathing intensity to determine compliance with the breathing exercise, generating a score indicative of the compliance; and

among a library of possible breathing exercises, automatically proposing a future breathing exercise with an adjusted level of difficulty which is based on a level of difficulty of the breathing exercise which was performed and on the score.

10 . The computing device of claim 7 , further comprising:

using a game engine, animating an animated character according to the expected pattern of breathing intensity in timing with the instructions, and displaying the animated character on the computing device; and

using the same game engine, displaying a plot of the formatted sound intensity in comparison with the expected pattern of breathing intensity over the continuous period of time simultaneously with the animated character or at an end of presentation of the animated character.

11 . A computer-implemented method for acquiring a raw audio data stream and detecting breathing events using a computing device, the method comprising:

providing a microphone which collects the raw audio data stream, wherein the microphone is a built-in microphone integrated to the computing device;

providing an associated logic module on the microphone, by the associated logic module on the microphone, preprocessing the raw audio data stream from the microphone by default for access to the preprocessed raw audio data stream by any application installed on the computing device;

by the computing device, providing a sequence of user instructions for the breathing exercise;

determining an expected pattern of breathing intensity from the user in accordance with the sequence of user instructions;

retrieving the raw audio data stream collected by the microphone from the computing device, wherein the step of retrieving the raw audio data stream comprises:

using instructions directed to the associated logic module of the microphone to avoid receiving the preprocessed raw audio data stream and instead retrieving the raw audio data stream, not preprocessed, directly, by preventing any alteration by the logic module of the microphone on the raw audio data stream before retrieval, and therefore different from the preprocessed raw audio data stream;

detecting breathing events from the raw audio data stream,

wherein the raw audio data stream is transformed into a formatted raw audio data stream by dividing the raw audio data stream in independently treated sample windows of a duration between 50 ms and 200 ms, converting the raw audio data stream from 16-bit to double and wherein the formatted raw audio data stream is transformed into a formatted sound intensity by decomposing the formatted raw audio data stream into Intrinsic Mode Functions using Empirical Mode Decomposition;

wherein the detecting comprises:

detecting that the formatted sound intensity has crossed over a threshold, wherein the threshold is based on a moving averaging window of the formatted sound intensity of a duration between 1s and 2s;

integrating the formatted sound intensity over a continuous period of time covering a detected breath event to evaluate a volume of air that was inspired or expired during the detected breath event; and

comparing the formatted sound intensity over a continuous period of time with the expected pattern of breathing intensity.