System and method for identifying phases of breathing activity and managing exercises in real time
The system accurately identifies and tracks respiratory phases using a wearable device with IMU sensors and machine learning, addressing the incomplete characterization of breathing patterns by providing real-time feedback and reducing resource dependence.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- ZANSORS LLC
- Filing Date
- 2026-01-07
- Publication Date
- 2026-07-16
AI Technical Summary
Existing respiratory monitoring devices fail to accurately identify and track all phases of the respiratory cycle, including inhalation, breath holding, and exhalation, leading to incomplete or inaccurate characterization of breathing patterns.
A system and method using a wearable device with a microphone and inertial measurement unit (IMU) sensors, combined with machine learning models, to preprocess and decode breath phases in real time, employing algorithms like Viterbi decoding to identify inhalation, exhalation, and breath holding, and detect posture changes and stability.
Enables precise and continuous representation of the respiratory cycle, providing real-time feedback and reducing dependence on external computing resources by local processing, enhancing the accuracy of breath phase identification.
Smart Images

Figure US2026010375_16072026_PF_FP_ABST
Abstract
Description
SYSTEM AND METHOD FOR IDENTIFYING PHASES OF BREATHING ACTIVITY AND MANAGING EXERCISES IN REAL TIMECROSS REFERENCE TO RELATED APPLICATIONThis application claims the priority benefit of the U.S. Provisional Patent Application No. 63 / 742,499 titled “SYSTEM INCORPORATED WITH REALTIME BREATH PHASE DECODING ALGORITHM” filed on January 07, 2025, the contents of which are hereby incorporated by reference in their entirety.TECHNICAL FIELD
[0001] The present invention generally relates to data processing in respiratory monitoring. More particularly, the present invention relates to a system and method for identifying phases of breathing activity and managing exercises in real time during guided breathing exercises using a low-frequency accelerometer.BACKGROUND
[0002] Breath monitoring refers to the observation and analysis of breathing patterns to gain insights into physiological state, health, and behavior. The respiration is closely linked to the cardiovascular, nervous, and metabolic systems and changes in breathing could reveal a wide range of information about a person’s condition in both clinical and everyday contexts. Breath monitoring is an essential in assessing respiratory health, supporting applications ranging from clinical diagnosis and disease management to fitness tracking and human-computer interaction.
[0003] A conventional respiratory monitoring device includes a microphonebased sensing to capture breathing sounds, inertial sensing, and chest motion. The microphone-based sensing is used to estimate chest motion associated with respiration and accelerometer data are used to estimate respiratory rate accurately. In addition, machine-learning techniques applied to accelerometer and acoustic signals enable high-accuracy detection of abnormal respiratory sounds, such as wheezes, and recognition of chest movement patterns using multiple sensors placed around the chest region.
[0004] However, the existing device is configured to quantify respiratory rate and broadly classify breathing patterns, but fails to provide identification of each breath phases. The device is further configured to analyze respiration on a breath-by-breath basis using accelerometer signals. The accelerometer signal is utilized to detect the onset of exhalation through signal peak identification. As a result, the device fails to capture the phases between inhalation, breath holding, and exhalation leading to incomplete or inaccurate characterization of the respiratory cycle.
[0005] Therefore, there is a need for a system that is configured to robustly and accurately identify and track all phases, including, inhalation, breath holding, and exhalation of respiration in real time. The identification of all phases helps to provide a comprehensive and continuous representation of the respiratory cycle.SUMMARY
[0006] The present invention discloses a system and method for identifying phases of breathing activity and managing exercises in real time. The system comprises a computing device is in communication with the wearable device and a database via a network. The wearable device is configured to capture physiological data. The physiological data comprises at least one of sounddata and inertial measurement unit (IMU) data. The sound data comprises acoustic signals associated with inhalation, exhalation, and breath holding, and the IMU data comprises accelerometer data, gyroscope data, and magnetometer data. The accelerometer data comprises a motion data related to a breath activity of the user. The wearable device further comprises a microphone and an inertial measurement unit (IMU) sensor. The microphone is configured to receive the sound data, and the IMU sensor is configured to receive the IMU data.
[0007] The database is configured to store user data and one or more trained models. The trained models comprise a probabilistic breath phase model, a breath phase transition model, a posture model, and a stability model. The computing device is in communication with the wearable device and the database via a network. The computing device comprises one or more memories configured to store a set of program modules and one or more processors configured to execute the program modules. The program modules comprise an input module, a preprocessing module, a feature extraction module, a breath decoding module, a breath segmentation module, a breath phase output module, a posture detection module, and a stability scoring module. In another aspect, the wearable device comprises the computing device and includes one or more processors and one or more memories configured to store and execute at least a portion of the program modules described herein. In such aspects, the wearable device is configured to locally process the physiological data captured by the sensors, including executing one or more of the preprocessing, feature extraction, breath decoding, breath segmentation, posture detection, and stability scoring modules on the wearable device itself. Local execution may reduce latency, enable real-time feedback, and reduce dependence on external computing resources. In other aspects, execution of the program modules may be distributed between the wearable device and one or more externalcomputing devices, such that some modules are executed locally on the wearable device while other modules are executed remotely. The described systems are therefore not limited to a particular allocation of computational functions between devices.
[0008] The input module is configured to receive physiological data from the wearable device. The preprocessing module is configured to preprocess the sound data by filtering the sound data to generate filtered sound data. The sound data is filtered to remove low-frequency components via a high-pass filter (HPF), and to remove systematic artifacts and resonance frequency components via a notch filter. The preprocessing module is further configured to preprocess accelerometer data by converting multi-axis accelerometer data into one-dimensional motion data and filtering the one-dimensional motion data to generate filtered motion data. The one-dimensional motion data is filtered to remove high-frequency components irrelevant to breath activity via a low-pass filter (LPF).
[0009] The feature extraction module is configured to convert the filtered sound data into Mel-frequency cepstral coefficient (MFCC) features. The MFCC is configured to classify breath sounds into the breath phases. The feature extraction module is further configured to convert the filtered motion data into slope features representing changes in accelerometer data per unit time. The slope features are configured to represent changes in motion corresponding to chest expansion and contraction associated with breath activity.
[0010] The breath decoding module is configured to predict a current breath phase at a current sampling time based on the at least one or more features and a breath phase predicted at a previous sampling time using the trainedprobabilistic breath phase model and the breath phase transition model. The breath phases include inhalation, holding, and exhalation.
[0011] The breath segmentation module is configured to analyze motion data accumulated over a time interval corresponding to at least one breath cycle to identify breath cycles, and to apply a probabilistic sequence decoding algorithm within each identified breath cycle to determine breath phases and timings of transitions between breath phases. The probabilistic sequence decoding algorithm comprises a Viterbi decoding algorithm. The breath cycle includes the onset of a first inhalation to an onset of a subsequent inhalation.
[0012] The breath phase is output module configured to output a breath phase corresponding to inhalation, holding, and exhalation using at least one of the breath decoding module and the breath segmentation module. The breath segmentation module is configured to identify the breath cycle in an order including inhalation, holding, exhalation, and holding, thereby enabling to detection of more precise prediction of breath phases.
[0013] The posture change detection module is configured to analyze the gyroscope data of the user in real time to detect posture changes. The posture change detection module is further configured to convert multi-axis gyroscope data into a magnitude signal. The posture change detection module is further configured to process the magnitude signal using a sliding window method to generate windowed posture data. Further, the posture change detection module is configured to determine an average magnitude value for each window. The posture change detection module is further configured to detect at least one of the posture change and instability by determining whether the average magnitude value falls outside a predefined normative range derived from training data.
[0014] The stability scoring module is configured to capture and analyze a motion data of the user during an exercise and generate a shakiness score. The shakiness score is indicative of movement instability of the user. The stability scoring module is further configured to process accelerometer data of the user during a exercise by converting multi-axis accelerometer data into one-dimensional, processed motion data, segmenting the processed motion data into time windows, determining an average motion value for each time window, comparing the average motion value against a normative motion distribution derived from training data, and generating a shakiness score based on a statistical distance between the average motion value and a mean of the normative motion distribution.
[0015] In one embodiment, a method for identifying phases of breathing activity and managing exercises in real time is disclosed. The method is executed in the system comprising the wearable device, the database and the computing device is in communication with the wearable device and the database.
[0016] The wearable device is configured to capture physiological data. The physiological data comprising at least one of sound data and inertial measurement unit (IMU) data. The sound data comprises acoustic signals associated with inhalation, exhalation, and breath holding and the IMU data comprises accelerometer data, gyroscope data, and magnetometer data. The accelerometer data comprises a motion data related to breath activity of the user. The wearable device comprises a microphone and an inertial measurement unit (IMU) sensor. The microphone is configured to receive the sound data and the IMU sensor is configured to receive the IMU data. The database is configured to store user data and one or more trained models. The trained models comprise a probabilistic breath phase model, a breath phase transition model, a posture model, and a stability model. Thecomputing device comprises one or more memories configured to store a set of program modules and one or more processors configured to execute the program modules.
[0017] At one step, the input module is configured to receive physiological data from the wearable device. At another step, the preprocessing module is configured to preprocess the sound data by filtering the sound data to generate filtered sound data, and preprocess accelerometer data by converting multi-axis accelerometer data into one-dimensional motion data and filtering the one-dimensional motion data to generate filtered motion data. The sound data is filtered to remove low-frequency components via a high-pass filter (HPF), and to remove systematic artifacts and resonance frequency components via a notch filter. The one-dimensional motion data is filtered to remove high-frequency components irrelevant to breath activity via a low-pass filter (LPF).
[0018] At yet another step, the feature extraction module is configured to convert the filtered sound data into Mel-frequency cepstral coefficient (MFCC) features, and convert the filtered motion data into slope features representing changes in accelerometer data per unit time. The MFCC is configured to classify breath sounds into the breath phases. The slope features represent changes in motion corresponding to chest expansion and contraction associated with breath activity.
[0019] At yet another step, the breath decoding module is configured to predict a current breath phase at a current sampling time based on the slope features and a breath phase predicted at a previous sampling time using the trained probabilistic breath phase model and the breath phase transition model. The breath phases include inhalation, holding, and exhalation.
[0020] At yet another step, the breath segmentation module is configured to analyze motion data accumulated over a time interval corresponding to at least one breath cycle to identify breath cycles, and to apply a probabilistic sequence decoding algorithm within each identified breath cycle to determine breath phases and timings of transitions between breath phases. In one embodiment, the probabilistic sequence decoding algorithm comprises a Viterbi decoding algorithm. The breath cycle includes the onset of a first inhalation to an onset of a subsequent inhalation. The breath segmentation module is configured to identify the breath cycle in an order including inhalation, holding, exhalation, and holding, thereby enabling to detection of more precise prediction of breath phases.
[0021] At yet another step, the breath phase output module is configured to output a breath phase corresponding to inhalation, holding, and exhalation using at least one of the breath decoding module and the breath segmentation module.
[0022] At yet another step, the posture detection module is configured to analyze the gyroscope data of the user in real time to detect posture changes. The posture detection module is configured to convert multi-axis gyroscope data into a magnitude signal. The posture detection module is further configured to process the magnitude signal using a sliding window method to generate windowed posture data. The posture detection module is further configured to determine an average magnitude value for each window, and detect at least one of the posture change and instability by determining whether the average magnitude value falls outside a predefined normative range derived from training data.
[0023] At yet another step, the stability scoring module is configured to capture and analyze a motion data of the user during an exercise andgenerate a shakiness score. The shakiness score is indicative of movement instability of the user. The stability scoring module is configured to process accelerometer data of the user during a exercise by converting multi-axis accelerometer data into one-dimensional, processed motion data, segmenting the processed motion data into time windows, determining an average motion value for each time window, comparing the average motion value against a normative motion distribution derived from training data, and generating a shakiness score based on a statistical distance between the average motion value and a mean of the normative motion distribution.
[0024] Other objects, features and advantages of the present innovation will become apparent from the following detailed description. It should be understood, however, that the detailed description and the specific examples, while indicating specific embodiments of the innovation, are given by way of illustration only, since various changes and modifications within the spirit and scope of the innovation will become apparent to those skilled in the art from this detailed description.BRIEF DESCRIPTION OF THE DRAWINGS
[0025] The foregoing summary, as well as the following detailed description of the innovation, is better understood when read in conjunction with the appended drawings. For the purpose of illustrating the innovation, exemplary constructions of the innovation are shown in the drawings. However, the innovation is not limited to the specific methods and structures disclosed herein. The description of a method step or a structure referenced by a numeral in a drawing is applicable to the description of that method step or structure shown by that same numeral in any subsequent drawing herein.
[0026] FIG. 1 exemplarily illustrates a flowchart of a system and method for identifying phases of breathing activity and managing exercises in real time, according to an embodiment of the present invention.
[0027] FIG. 2 exemplarily illustrates an environment of the system for identifying phases of breathing activity and managing exercises in real time, according to an embodiment of the present invention.
[0028] FIG. 3 exemplarily illustrates another flowchart of a method for identifying phases of breathing activity and managing exercises in real time, according to an embodiment of the present invention.
[0029] FIG. 4 exemplarily illustrates a graph showing results obtained from an expert performing a breathing exercise, according to an embodiment of the present invention.
[0030] FIG. 5 exemplarily illustrates a graph showing a confusion matrix on a box breathing technique, according to an embodiment of the present invention.
[0031] FIG. 6 exemplarily illustrates a graph showing a breath segmentation results for a breath cycle, according to an embodiment of the present invention.
[0032] FIG. 7 exemplarily illustrates a graph showing the results obtained during a user is performing a plank exercise, according to an embodiment of the present invention.
[0033] FIG. 8 exemplarily illustrates a graph showing results of time-series decoded breath phases for a box breathing technique, according to another embodiment of the present invention.
[0034] FIG. 9 exemplarily illustrates a graph showing the confusion matrix on a box breathing technique, according to another embodiment of the present invention.DETAILED DESCRIPTION OF EXAMPLE EMBODIMENTS
[0035] A description of embodiments of the present innovation will now be given with reference to the Figures. It is expected that the present innovation may be embodied in other specific forms without departing from its spirit or essential characteristics. The described embodiments are to be considered in all respects only as illustrative and not restrictive.
[0036] The present invention discloses a system and method for identifying phases of breathing activity and managing exercises in real time. The present invention introduces an advanced breath decoding algorithm, which decodes and classifies different phases of breathing in real time, using data captured by a wearable device 204. This innovation is specifically designed to cater to the needs of guided breathing exercises, offering models tailored to various breathing techniques. The invention involves machine learning models trained on three-dimensional accelerometer data, outputting one of three breath phase. The breath phases include inhalation, exhalation, and holding during breathing activity.
[0037] The invented breath decoding algorithm is designed for identifying in real time the phase of breaths recorded by the wearable device 204 in different types of guided breathing exercises. The algorithm takes accelerometer data measured by the wearable device 204 as input andoutputs one of the three breath phases in real time. The breathing techniques that the invented algorithm can process include 4-4-4-4, 3-1 -3-1 , and 5-1-5-1 breathings, where the numbers indicate the durations of inhalation, holding, exhalation, and holding in seconds. For example, 3-1 -3-1 breathing involves inhaling for 3 seconds, holding the breath for 1 second, exhaling for 3 seconds, holding the breath for 1 second, and repeating this pattern. The 4-4-4-4, 3-1 -3-1 , and 5-1 -5-1 breathing techniques are also called box, basic rhythmic, and advanced rhythmic breathing techniques, respectively.
[0038] FIG. 1 exemplarily illustrates a flowchart 100 of a system incorporated with a developed algorithm for decoding breath phases, according to an embodiment of the present invention. The system incorporated with the algorithm has two major phases: a training phase 102 and a decoding phase 104. The training phase 102 consists of training datasets 106, preprocessing 108, feature extraction 110, Gaussian mixture modeling 112, and transition modeling 114. The decoding phase 104 consists of preprocessing 116, feature extraction 118, and decoder 120.
[0039] In one embodiment, the training datasets 106 are prepared to train decoding models. Datasets for different types of breathing techniques are separately stored. Each dataset consists of time-series three-dimensional accelerometer data recorded by the wearable device, and annotations that indicate one of the breath phases at each time point. In the data collection session, subjects were asked to perform specified breathing exercises and annotate the breath phases manually using an in-house mobile app simultaneously. The breathing exercises include box, basic rhythmic or advanced rhythmic breathings.
[0040] In one embodiment, the preprocessing 108 is applied to remove any unnecessary component in the data. Accelerometer data are low-passfiltered with a cutoff frequency and to remove high-frequency noises. Considering that actual breath speed will be slightly faster, the cutoff frequency was set to to capture sufficient frequency components related to the breathing activity. Therefore, the low-pass filtering removes noise from the accelerometer data, optimizing the signal for detecting breath-related movements.
[0041] In feature extraction 110, the preprocessed data are converted into feature values. Since the accelerometer captures the chest expansion and contraction during inhalation and exhalation, respectively, the slope features, the increase or decrease in the accelerometer data per unit time, were employed. The data are first divided into a series of small segments using sliding windows and then each segment is converted into slope features. Therefore, Slope features, calculated as the rate of chest expansion or contraction, are extracted. This is done using small time-segments to capture the rise or fall in chest movement during breathing phases.
[0042] In one embodiment, Gaussian mixture modeling 112 builds probabilistic models that represent how likely observed data are generated from each breath phase. The slope features in the training sets are divided into one of the three breath phase categories based on the annotations. Since the slope features are continuous values, the probabilistic model for each breath phase is constructed based on a Gaussian distribution. Therefore, each breathing phase is modeled probabilistically using a Gaussian distribution, providing insight into how likely the input data belongs to a particular breath phase.
[0043] In one embodiment, the transition modeling 114 builds probabilistic models that represent the probabilities of transitioning from the breath phase to another. The transition probabilities are calculated using the annotationsattached to each dataset. Different transition models are prepared for each type of breath techniques. For example, when the current phase is holding, the probability that the next phase is also holding is slightly higher for the 4-4-4-4 breathing (approx. 98%) than for the 3-1 -3-1 breathing (approx. 97%). In addition, the probabilities of directory transitioning between inhalation and exhalation are almost zero regardless of breathing techniques. This transition modeling is effective to reducing the chance that decoder outputs unrealistic transitions among breath phases, leading to higher decoding accuracy. Therefore, this model calculates the likelihood of transitioning between breath phases based on the training data. Different models are built for various breathing techniques, refining the model for each specific technique.
[0044] In another embodiment, the preprocessing 116 and feature extraction 118 of the decoding phase 104 are similar to the training phase, new data is preprocessed and divided into small segments, followed by slope feature extraction. Further, the decoder 120 of the decoding phase 104 predicts the breath phases of current incoming data samples based on the Gaussian models and a user-selected transition models built in the training phase using the Viterbi algorithm. The decoder takes 1 -second accelerometer data as an input, applies the preprocessing to the data. The 1 -second data are further divided into sub-chunks using the sliding windows for slope feature extraction as explained in the feature extraction section. The decoder 120 provide output 122 as one of the three breath phase approx, every 60 milliseconds.
[0045] FIG. 2 exemplarily illustrates an environment 200 of the system for identifying phases of breathing activity and managing exercises in real time. The system comprises a computing device 202 is in communication with the wearable device 204 and a database 206 via a network 208.
[0046] The wearable device 204 is associated with a user. The wearable device 204 is configured to provide an interface to access the services provided by the computing device 202. The interface, for example, an application that allows the wearable device 204 to wirelessly connect and access the computing device 202 via the network 208. The wearable device 204 includes, but not limited to, a desktop computer, a laptop computer, a mobile phone, a personal digital assistant, and the like. The wearable device 204 is configured to capture physiological data. The physiological data comprises at least one of sound data and inertial measurement unit (IMU) data. The sound data comprises acoustic signals associated with inhalation, exhalation, and breath holding, and the IMU data comprises accelerometer data, gyroscope data, and magnetometer data. The accelerometer data comprises a motion data related to a breath activity of the user. The wearable device 204 further comprises a microphone and an inertial measurement unit (IMU) sensor. The microphone is configured to receive the sound data, and the IMU sensor is configured to receive the IMU data.
[0047] In some embodiments, the wearable device 204 comprises the computing device 202 and includes one or more processors and one or more memories configured to store and execute at least a portion of the program modules described herein. In such embodiments, the wearable device 204 is configured to locally process the physiological data captured by the sensors, including executing one or more of the preprocessing, feature extraction, breath decoding, breath segmentation, posture detection, and stability scoring modules on the wearable device itself. Local execution may reduce latency, enable real-time feedback, and reduce dependence on external computing resources. In other embodiments, execution of the program modules may be distributed between the wearable device 204 and one or more external computing devices 202, such that some modules are executed locally on the wearable device 204 while other modules are executedremotely. The described systems are therefore not limited to a particular allocation of computational functions between devices.
[0048] The network 208 generally represents one or more interconnected networks, over which the computing device 202 and the wearable device 204 could communicate with each other. The network 208 may include packetbased wide area networks (such as the Internet), local area networks (LAN), private networks, wireless networks, satellite networks, cellular networks, paging networks, and the like. A person skilled in the art will recognize that the network 208 may also be a combination of more than one type of network.
[0049] In an example, the database 206 resides in the computing device 202. In another example, the database 206 resides separately from the computing device. Regardless of the location, the database 206 comprises a memory to store and organize data for use by the computing device 202. The database 206 is configured to store user data and one or more trained models. The trained models comprise a probabilistic breath phase model, a breath phase transition model, a posture model, and a stability model.
[0050] In one embodiment, the computing device 202 is at least one of a server, a general-purpose computer, a special-purpose computer, a workstation, a desktop, a laptop, a tablet, a mobile phone, a mainframe, a supercomputer and a server farm. Although the computing device 202 is illustrated as a single device, the functions performed by the computing device 202 could be performed using any suitable number of computing devices. The computing device 202 comprises one or more processors 210 and one or more memories 212. The memory 212 is configured to store a set of program modules. The processor 210 is configured to execute one or more program modules. The program modules comprise an input module 214, a preprocessing module 216, a feature extraction module 218, a breathdecoding module 220, a breath segmentation module 222, a breath phase output module 224, a posture detection module 226, and a stability scoring module 228.
[0051] The input module 214 is configured to receive physiological data from the wearable device. The preprocessing module 216 is configured to preprocess the sound data by filtering the sound data to generate filtered sound data. The sound data is filtered to remove low-frequency components via a high-pass filter (HPF), and to remove systematic artifacts and resonance frequency components via a notch filter. The preprocessing module 216 is further configured to preprocess accelerometer data by converting multi-axis accelerometer data into one-dimensional motion data and filtering the one-dimensional motion data to generate filtered motion data. The one-dimensional motion data is filtered to remove high-frequency components irrelevant to breath activity via a low-pass filter (LPF).
[0052] The feature extraction module 218 is configured to convert the filtered sound data into Mel-frequency cepstral coefficient (MFCC) features. The MFCC is configured to classify breath sounds into the breath phases. The feature extraction module 218 is further configured to convert the filtered motion data into slope features representing changes in accelerometer data per unit time. The slope features are configured to represent changes in motion corresponding to chest expansion and contraction associated with breath activity.
[0053] The breath decoding module 220 is configured to predict a current breath phase at a current sampling time based on the slope features and a breath phase predicted at a previous sampling time using the trained probabilistic breath phase model and the breath phase transition model. The breath phases include inhalation, holding, and exhalation.
[0054] The breath segmentation module 222 is configured to analyze motion data accumulated over a time interval corresponding to at least one breath cycle to identify breath cycles, and to apply a probabilistic sequence decoding algorithm within each identified breath cycle to determine breath phases and timings of transitions between breath phases. The probabilistic sequence decoding algorithm comprises a Viterbi decoding algorithm. The breath cycle includes the onset of a first inhalation to an onset of a subsequent inhalation.
[0055] The breath phase output module 224 is configured to output a breath phase corresponding to inhalation, holding, and exhalation using at least one of the breath decoding module 220 and the breath segmentation module 222. The breath segmentation module 222 is configured to identify the breath cycle in an order including inhalation, holding, exhalation, and holding, thereby enabling to detection of more precise prediction of breath phases.
[0056] The posture detection module 226 is configured to analyze the gyroscope data of the user in real time to detect posture changes. The posture change detection module 226 is further configured to convert multiaxis gyroscope data into a magnitude signal. The posture change detection module 226 is further configured to process the magnitude signal using a sliding window method to generate windowed posture data. Further, the posture change detection module 226 is configured to determine an average magnitude value for each window. The posture change detection module 226 is further configured to detect at least one of the posture change and instability by determining whether the average magnitude value falls outside a predefined normative range derived from training data.
[0057] The stability scoring module 228 is configured to capture and analyze a motion data of the user during an exercise and generate a shakiness score.The shakiness score is indicative of movement instability of the user. The stability scoring module 228 is further configured to process accelerometer data of the user during a exercise by converting multi-axis accelerometer data into one-dimensional, processed motion data, segmenting the processed motion data into time windows, determining an average motion value for each time window, comparing the average motion value against a normative motion distribution derived from training data, and generating a shakiness score based on a statistical distance between the average motion value and a mean of the normative motion distribution.
[0058] The system further comprises an expert data corpus and a breath modeling module configured to train expert-level breath analysis models. The expert data corpus comprises one or more datasets collected from experienced breathing practitioners to train the expert models. The datasets comprise time-series audio data and / or inertial measurement unit (IMU) data, each annotated with breath phase at corresponding time points. The inertial measurement unit (IMU) data includes three-axis accelerometer, three-axis gyroscope, and three-axis magnetometer signals. During data collection sessions, expert practitioners are instructed to maintain a stable posture while performing predefined breathing exercises and advanced rhythmic breathing. The breathing exercises, including box breathing, basic rhythmic breathing. And annotate the breath phases manually using an in-house mobile app simultaneously.
[0059] The breath modeling module includes a preprocessing, a feature extraction, and a probabilistic modeling. The preprocessing is configured to remove any unnecessary from the data. The sound data are high-pass filtered with a cutoff frequency to remove low-frequency noise and notch-filtered to remove systematic artifacts and resonance frequency components. Accelerometer data are processed through a separate preprocessingpipeline in which three-axis accelerometer signals are combined into a onedimensional representation using dimension reduction techniques. Then, the time series dimension-reduced data are low-pass filtered with a cutoff frequency to remove high-frequency breath irrelevant components. Considering that actual breath speed will be slightly faster, the cutoff frequency was set to capture sufficient frequency components related to the breathing.
[0060] The feature extraction is configured to convert preprocessed sound data into frequency-domain features. The preprocessed data are divided into small segments using sliding windows with overlap. Each segment is converted frequency spectra using a discrete Fourier transform (DFT). Frequency spectra are mapped onto a Mel frequency scale using a Mel filter bank to generate Mel spectra. Further, the Mel spectra are converted into Mel-frequency cepstral coefficients (MFCCs) using a discrete cosine transform (DCT). The MFCCs are used as features to classify breath sounds into the three types of breath phases.
[0061] For accelerometer data, which capture chest expansion and contraction during inhalation and exhalation, slope-based features are extracted. Selected accelerometer signals, including individual axes or the dimension-reduced signal, are segmented using sliding windows corresponding to those applied to the audio data. For each segment, a slope feature is computed as a coefficient of a linear regression over time, representing the rate of change of the accelerometer signal.
[0062] The probabilistic modeling is configured to construct statistical models that characterize the likelihood of observed features being generated by each breath phase. The MFCC features, the slope features, or a combination thereof are selected and grouped into breath phase categoriesbased on the corresponding annotations in the expert data corpus. Because the extracted features are continuous-valued, probabilistic models for each breath phase are constructed using Gaussian-based distributions, thereby enabling estimation of breath phase likelihoods during subsequent decoding and real-time analysis.
[0063] The system further comprises a transition modeling module configured to represent the probabilities of transitioning from the breath phase to another. The transition modeling module is configured to calculate transition probabilities based on breath-phase annotations associated with each dataset. Distinct transition models are generated for each type of breathing techniques. For example, when a current breath phase corresponds to the holding phase, a probability that the next phase is also holding is higher for a 4-4-4-4 breathing technique, which is approximately 98% than for a 3-1 -3-1 breathing technique, which is approximately 97%. Additionally, probabilities of direct transitions between inhalation and exhalation are approximately zero across breathing techniques. The transition modeling module is further configured to effectively reduce the chance that decoder outputs unrealistic transition among breath phases, leading to higher decoding accuracy.
[0064] The system further comprises a posture modeling module including a preprocessing, a feature extraction, and a modelling. The preprocessing configured to extract three-axis gyroscope data are first extracted inertial measurement unit (IMU) data. The first extracted IMU data is converted into a one-dimensional time-series magnitude by computing a root mean square value at each time point. The gyroscope data represent angular velocity along pitch, roll, and yaw axes. The preprocessing is further configured to reduce computational cost by converting the three-axis gyroscope data into a single magnitude signal instead of processing each axis separately, whilepreserving abnormal motion information present on any axis to ensure detectability.
[0065] The feature extraction is configured to divide gyroscope magnitude data into a series of small segments using sliding windows having parameters consistent with those applied in breath modeling. For each segment, averaged gyroscope magnitudes are computed, thereby enabling detection of posture changes at a temporal granularity aligned with the breath phase prediction.
[0066] The modeling is configured to build a normative distribution representing gyroscope magnitude values when posture is stable. The normative distribution is defined using a Gaussian model characterized by a mean value and a standard deviation derived from gyroscope magnitude data in a training corpus.
[0067] The system further comprises a stability modeling module including a preprocessing, a feature extraction, and a modeling. The preprocessing is configured to convert the three-axis accelerometer data into the onedimensional time-series magnitude representation. Further, the time-series data are high-pass filtered using a cutoff frequency to remove breath-related and to preserve high-frequency activities. The preprocessing is further configured to rectify the filtered data by converting an alternative waveform into a direct waveform to obtain instantaneous magnitudes of high-frequency indicative of shakiness. The shakiness is defined as small, rapid, involuntary body vibrations detected by high-frequency accelerometer signals, after breathing motion and posture changes have been mathematically removed.
[0068] The feature extraction is configured to divide the rectified data into a series of small segments using sliding windows having parametersconsistent with the applied one in breath modeling. For each segment, averaged magnitudes are computed at each segment, thereby qualifying a stability score with the same granularity as the breath phase prediction.
[0069] The modeling is configured to build a normative distribution representing the magnitude of high-frequency components in accelerometer data when posture is stable. The normative distribution is defined using a Gaussian distribution, which is defined by the mean and the standard distribution of the magnitude in the training corpus.
[0070] The system further comprises a real-time analysis module including a breath analysis. The breath analysis comprises a breath decoding pipeline and a breath segmentation pipeline. The breath decoding pipeline is configured to predict the current breath phase at each sampling point based on incoming data at the current sampling point and the breath phase predicted at a previous sampling point. The breath segmentation pipeline is configured to operate on data chunks stored in a longer buffer to identify an interval between successive inhalation onsets defined as a breath cycles. Further, the system is configured to apply a Viterbi algorithm to predict the timings of transition from one phase to another within each cycle. The breath decoding pipeline is further configured to provide higher real-time responsiveness, while the breath segmentation pipeline provides semi-realtime operation with improved phase transition precision.
[0071] The real-time analysis module further includes a preprocessing and feature extraction configured to process incoming data using pipelines consistent with those applied during training. Audio data are low-pass filtered, notch-filtered, and transformed into Mel-frequency cepstral coefficient (MFCC) features. Accelerometer data are converted into one-dimensional signals, low-pass filtered, and then converted into slope-based features. The MFCC features and slope features are either separately used or combinedfor the following analysis. Additionally, the preprocessed slope features are stored in a buffer to support breath segmentation.
[0072] The breath decoding pipeline is configured to predict the breath phases of incoming data samples based on the Gaussian and the transition models built in the training phase. At each time point, the decoder estimates the current breath phase based on a current observation and a previously predicted breath phase, incorporating transition probabilities to improve prediction accuracy beyond reliance on instantaneous observations alone. The model also takes the output of posture change detection as an input which is used for ignoring the posture unstable periods and resetting the transition flow. The breath decoder outputs one of multiple predefined breath phases at approximately 30-millisecond intervals, thereby enabling real-time feedback to a user.
[0073] The breath segmentation pipeline is configured to analyze raw inertial measurement unit (IMU) data stored in the buffer are analyzed by an unsupervised approach to detect the onsets of each breath cycle. The breath cycle includes intervals from onsets of inhalation to the next ones. This approach is based on finding the significant changes in the slope values. After the onsets are detected, the Viterbi algorithm with a constraint in the transition path is applied to each breath cycle. The constraint disallows to transit to previous phases, and always identifies the breath cycles in the order: inhalation, holding, exhalation, and holding. In this way, the breath phase could be predicted more precisely than the breath decoding while compromising the real-time capability.
[0074] The system further comprises a real-time posture change detection module and a stability scoring module configured to operate during real-time analysis. The posture change detection module includes a preprocessingand feature extraction is configured to process incoming data using pipelines consistent with those applied during the training phase. Three-axis gyroscope data are converted into magnitude, sliding windowed, and then averaged within each window. The posture change detection module further includes a detection configured to identify user posture changes or instability using an anomaly detection approach. The averaged magnitude at each sliding window is assessed whether the average falls within the normative range defined in the training phase. The output is Boolean that indicates if there is a posture change at each segment.
[0075] The stability scoring module includes a preprocessing and feature extraction component. The stability scoring module is configured to process incoming data and feature extraction pipeline as the training phase. Three-axis accelerometer data are converted into one-dimensional data, high-pass filtered to preserve high-frequency components, rectified, and then averaged within each window. The stability scoring module further includes a scoring configured to quantify user shakiness during a breathing exercise based on a Mahalanobis distance computed relative to a normative distribution defined during training. The stability score represents a number of standard deviations by which the feature value lies from the mean of the normative distribution defined in the training phase. The output is a scalar value but if the score exceeds 2, that could be interpreted as indicating significant stability.
[0076] Referring to FIG. 3, a flowchart 300 illustrating a method included 2 phase process including a training phase 302 and a decoding phase 304. The decoding phase is also referred to as a real-time analysis phase. The training phase 102 includes from step 306 to step 322. At step 306, the computing device is configured to receive the expert data corpus. The expert data corpus comprises time-series sound data and the inertial measurementunit data collected from breathing practitioners via the wearable device 204. The expert data corpus includes annotated breath phases indicating inhalation, holding, and exhalation at each time point. During data collection, the practitioners maintain stable posture while performing predefined breathing techniques, and the annotations are provided via the user interface during the recording session.
[0077] At step 308, the computing device is configured to perform preprocessing for breath modelling. The preprocessing includes filtering sound signals from sound data to remove low-frequency components and systematic artifacts. Further, the preprocessing involves converting multi-axis accelerometer signals into a one-dimensional representation corresponding to the chest motion. The preprocessing is further configured to remove high-frequency breath irrelevant components and prepares the signals for feature extraction.
[0078] At step 310, the computing device is configured to perform feature extraction for breath modelling. The preprocessed sound data are segmented using overlapping sliding windows and converted into frequency spectra using the discrete Fourier transform (DFT). Further, the linear frequency scale is converted to the Mel-scale using Mel-filter banks to obtain the Mel-spectra. The Mel-spectra are then converted to Mel-frequency cepstral coefficients (MFCCs) by applying the discrete cosine transform (DCT). MFCCs are used as features to classify breath sounds into the three types of breath phases.
[0079] For the accelerometer data, preprocessing is performed to capture chest expansion during inhalation and contraction during exhalation. The multi-axis accelerometer data are first converted into one-dimensional motion data using the dimension reduction method. The resulting one-dimensionalmotion data are then filtered to remove components unrelated to the breathing activity, producing filtered motion data. The filtered motion data are segmented into the series of short windows using the sliding-window approach, and each segment is transformed into slope features that represent the rate of change of chest motion over time. The slope for each segment is calculated as the coefficient of the linear regression fitted to the data within the window. The sliding window size is set to the predefined value to achieve both high decoding accuracy and real-time performance.
[0080] At step 312, the computing device is configured to build the probabilistic model, including the Gaussian mixture models for the breath phases. The extracted features are grouped according to annotated breath phase, and probabilistic distributions are generated to represent the likelihood of observed features belonging to each breath phase. The MFCC features and the slope features are either separately selected or combined. The selected features are divided into one of the three breath phase categories based on the annotations. Since the MFCC and slope features are continuous values, the probabilistic model for each breath phase is constructed based on the Gaussian distribution.
[0081] At step 314, the computing device is configured to construct one or more transition models representing probabilities of transitioning between the breath phases. The transition probabilities are derived from the annotated expert data and are constrained based on predefined breathing techniques, thereby reducing unrealistic phase transitions during inference.
[0082] At step 316, the computing device is configured to extract three-axis gyroscope data from the IMU data and convert into the one-dimensional timeseries magnitude by computing the root mean square (RMS) across axes at each time point. The gyroscope is configured to measure the angular velocityalong the pitch, roll, and yaw axes. Converting the three-axis signals into the single magnitude signal, rather than processing each axis independently, reduces computational cost while preserving abnormal motion information occurring on any axis.
[0083] At step 318, the computing device is configured to segment the gyroscope magnitude data into small segments using a sliding-window with the same parameters as those applied in breath modeling. For each window, the average magnitude is computed to form the feature representation. This windowed averaging enables posture changes to be detected at the same granularity as the breath phase prediction.
[0084] At step 320, the computing device is configured to perform posture modelling. The computing device is further configured to constructs the normative distribution of gyroscope magnitude values corresponding to stable posture. The normative distribution is modeled as the Gaussian distribution, parameterized by the mean and standard deviation of the gyroscope magnitude derived from the training dataset. This distribution serves as the reference for identifying deviations indicative of posture changes.
[0085] At step 322, the computing device is configured to perform the shakiness modelling. Accelerometer data are converted into onedimensional signals, high-pass filtered to remove breath-related motion, rectified, and segmented using sliding windows. The normative shakiness distribution is generated based on the magnitude of high-frequency motion components.
[0086] The decoding phase 304 includes from step 324 to step 322. In decoding phase 304, the computing device is configured to perform thebreath analysis, including breath decoding and breath segmentation. Breath decoding predicts the current breath phase at each sampling point using the incoming sensor data together with the breath phase predicted at the previous sampling point. In contrast, breath segmentation operates uses data chunk stored in a longer buffer, identifies the breath cycle, including the interval between the onset of inhalation and the next one, and then applies the Viterbi algorithm to predict the timings of transition from one phase to another within each cycle. The breath decoding has high real time capability, while the breath segmentation has semi real time capability but better precision. The computing device is configured to receive input data in realtime from the audio sensing unit and the IMU. The incoming data are processed using the same preprocessing and feature extraction pipelines as defined in the training phase to ensure consistency between training and inference.
[0087] At steps 324 and 326, the computing device is configured to process the incoming data using the preprocessing and feature extraction as those used during training, during real-time analysis. Further, the sound data are low-pass filtered, notch filtered, and transformed into Mel-frequency cepstral coefficient (MFCC) features. The accelerometer data are converted into the one-dimensional signal, low-pass filtered, and transformed into slope features. The MFCC features and slope features are used either independently or in combination for subsequent analysis. In addition, the preprocessed slope features are stored in the buffer for use in breath segmentation.
[0088] At step 328, the computing device is configured to predict the breath phase of current incoming data sample based on the Gaussian observation models and transition models constructed during training. At each time point, the model infers the current breath phase using the current observation,including slope features, and the previously predicted breath phase. By incorporating transition probabilities from the prior phase, the model achieves more accurate phase prediction than approaches based solely on the current observation. The decoder also incorporates the output of posture change detection to ignore periods of unstable posture and to reset the transition flow when necessary. The system outputs one of three breath phase approximately every 30 milliseconds, enabling real-time user feedback.
[0089] At step 330, the computing device is configured to analyse the raw IMU data stored in the buffer using the unsupervised approach to detect the onset of individual breath cycles, defined as intervals from the onset of inhalation to the subsequent inhalation. Cycle onsets are identified by detecting significant changes in slope values. Once the onsets are detected, the Viterbi algorithm is applied to each breath cycle with constraints on allowable state transitions. These constraints prohibit transitions to previous phases and enforce the sequential order of inhalation, holding, exhalation, and holding. This constrained decoding yields more precise breath phase estimates than real-time breath decoding, at the cost of reduced real-time capability.
[0090] At steps 332 and 334, the computing device is configured to process incoming data using the same preprocessing and feature extraction pipeline as in the training phase, during real-time analysis. Further, the three-axis gyroscope data are converted into the one-dimensional magnitude signal, segmented using sliding windows, and averaged within each window to obtain window-level features.
[0091] At step 336 and 338, the computing device is configured to detect posture changes or instability using the anomaly detection approach. For each sliding window, the averaged gyroscope magnitude is evaluatedagainst the normative range learned during training. The output is the Boolean indicator that specifies whether the posture change is detected for each segment.
[0092] At step 340, the computing device is configured to process incoming data using the same preprocessing and feature extraction pipeline as in the training phase. Further, three-axis accelerometer data are converted into the one-dimensional signal, high-pass filtered to isolate high-frequency components, rectified to obtain instantaneous magnitudes, and then segmented using sliding windows. The average magnitude within each window is computed as the feature representation.
[0093] At steps 342 and 344, the computing device is configured to quantify user shakiness during breathing exercises based on the Mahalanobis distance from the normative distribution established during training. The shakiness score reflects the number of standard deviations by which the feature value deviates from the mean of the normative distribution. The output is the scalar value, and scores exceeding the threshold of 2 are interpreted as indicating significant shakiness.
[0094] FIG. 4 exemplarily illustrates a graph 400 showing results obtained from an expert performing a breathing exercise, according to an embodiment of the present invention. In one embodiment, the time-series of decoded breathing phases, detected posture changes, and quantified shakiness during a box breathing exercise performed by users with stable and unstable postures, along with corresponding confusion matrices. The time-series visualization comprises multiple panes, where the panes from top to bottom represent manually annotated ground-truth labels, predicted breathing phases, posture change detection outputs, and shakiness scores, respectively. The expert performing the breathing exercise is illustrated. Thedecoded breathing phases demonstrate strong agreement with the manually annotated labels, no posture changes are identified throughout the session, and the shakiness score remains consistently low over time. A corresponding confusion matrix is also shown, where each row represents the instances of an actual label and each column represents the instances of a predicted label. The values within the matrix indicate the percentage of samples from a given actual class that are classified into each predicted class.
[0095] FIG. 5 exemplarily illustrates a graph 500 showing a confusion matrix on a box breathing technique, according to an embodiment of the present invention. A confusion matrix is a performance measurement tool for machine learning algorithms, particularly in classification tasks. The matrix compares predicted labels with actual labels. Rows 502 represent the actual breath phases, while columns 504 represent the predicted phases. For instance, 80% of samples in the “Holding” class are correctly classified as “Holding,” while 1% of samples in the “Inhaling” class are misclassified as “Holding.” The overall breathing phase decoding accuracy achieved in this example is 90.61%.
[0096] FIG. 6 exemplarily illustrates a graph 600 showing a breath segmentation results for a breath cycle, according to an embodiment of the present invention. The breath segmentation results over a single breathing cycle. The breath segmentation module processes time-series accelerometer data, where the solid line represents the accelerometer signal within one cycle. The annotated onset times of each breathing phase are denoted by vertical lines. The predicted breathing phases are visualized as background colors corresponding to each time point along the signal. In contrast to the breath phase decoding results, the segmentation output does not exhibit short-term misclassifications between adjacent phases, resulting in improved temporal consistency and high segmentation precision.
[0097] FIG. 7 exemplarily illustrates a graph showing the results obtained during a user is performing a plank exercise, according to an embodiment of the present invention. The posture change detection identifies two distinct posture change events during the exercise. In addition, the stability scoring quantifies user shakiness, with the resulting shakiness score exhibiting fluctuations at relatively high values throughout the duration of the exercise.
[0098] FIG. 8 exemplarily illustrates a graph 800 showing results of timeseries decoded breath phases for a box breathing technique, according to another embodiment of the present invention. The figure presents two panes: (a) The top pane 802 shows the manually annotated phases of breathing, and (b) The bottom pane 804 shows the algorithm’s prediction of the breath phases. The x-axis represents time or sampling points, while the y-axis distinguishes between different breath phases, including inhalation, holding, exhalation. The alignment between actual and predicted phases demonstrates the effectiveness of the algorithm in capturing breathing patterns. Box breathing, as an example, involves breathing in for four seconds, holding for four seconds, exhaling for four seconds, and holding again for four seconds. The algorithm is designed to decode these phases accurately, using features such as the slopes of accelerometer data that reflect the expansion and contraction of the chest during these phases. This helps track each stage of the breathing process in real-time, allowing users to maintain correct breath patterns during exercises.
[0099] FIG. 9 exemplarily illustrates a graph 900 showing the confusion matrix on a box breathing technique, according to another embodiment of the present invention. The confusion matrix is a performance measurement tool for machine learning algorithms, particularly in classification tasks. The matrix compares predicted labels with actual labels. Rows 902 represent the actualbreath phases, while columns 904 represent the predicted phases. Each cell in the matrix shows the percentage of correctly or incorrectly classified instances. For example, the matrix indicates that 93% of data labeled as “Holding” was accurately classified as such by the algorithm, while 9% of data labeled as "Inhaling" was misclassified as “Holding”. The overall performance of the algorithm in decoding the box breathing technique achieves an accuracy of 88.9%. This high level of accuracy underscores the capability of the algorithm in distinguishing between the different breath phases, even when transitions between phases might be difficult to detect.
[0100] The present invention addresses several limitations of prior breath phase decoding algorithms. Existing algorithms mainly focus on detecting respiratory rates or general breathing patterns without the capability to identify specific breath phases in real time. For example, the existing algorithm could only detect exhalations but failed to identify transitions between phases. The present invention uses a Viterbi algorithm, which is more advanced in terms of decoding breath phases based on state transition probabilities. It is especially designed to function effectively with accelerometer data received via the wearable device 204, which has a lower sampling rate (16 Hz) compared to commercial devices. This makes the algorithm highly efficient in extracting and utilizing sparse data, delivering real-time performance while processing minimal hardware resources. Unlike one-size-fits-all models in previous approaches, the present invention uses customized models for each breathing technique. This ensures that transitions and phases specific to different techniques (e.g., 4-4-4-4 box breathing or 3-1 -3-1 rhythmic breathing) are accurately decoded, leading to reliable performance across various exercises.
[0101] The system incorporated with the developed algorithm in this invention represents a significant advancement in real-time breath phasedecoding for guided breathing exercises. By leveraging advanced signal processing and machine learning methods, particularly Gaussian mixture models and the Viterbi algorithm, the invention effectively decodes different breath phases (inhalation, holding, exhalation) with high accuracy and minimal hardware requirements. Furthermore, the algorithm is tailored to specific breathing techniques, enhancing its versatility and performance for users engaging in different mindfulness or respiratory practices.
[0102] While the disclosure has been described with reference to exemplary embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted for elements thereof without departing from the scope of the disclosure. In addition, many modifications may be made to adapt a particular system, device, or component thereof to the teachings of the disclosure without departing from the essential scope thereof. Therefore, it is intended that the disclosure not be limited to the particular embodiments disclosed for carrying out this disclosure, but that the disclosure will include all embodiments falling within the scope of the appended claims. Moreover, the use of the terms first, second, etc. do not denote any order or importance, but rather the terms first, second, etc. are used to distinguish one element from another.
[0103] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the disclosure. As used herein, the singular forms “a,” “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and / or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.
[0104] The description of the present disclosure has been presented for purposes of illustration and description, but is not intended to be exhaustive or limited to the disclosure in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope of the disclosure. The described embodiments were chosen and described in order to best explain the principles of the disclosure and the practical application, and to enable others of ordinary skill in the art to understand the disclosure for various embodiments with various modifications as are suited to the particular use contemplated.
Claims
CLAIMSWhat is claimed is:1 . A system for identifying phases of breathing activity and managing exercises in real time, comprising:a wearable device configured to capture physiological data, wherein the physiological data comprising at least one of sound data and inertial measurement unit (IMU) data, wherein the sound data comprises acoustic signals associated with inhalation, exhalation, and breath holding and the IMU data comprises accelerometer data, gyroscope data, and magnetometer data, wherein the accelerometer data comprises a motion data related to breath activity of the user;a database configured to store user data and one or more trained models, wherein the trained models comprising a probabilistic breath phase model, a breath phase transition model, a posture model, and a stability model, anda computing device in communication with the wearable device and the database via a network, wherein the computing device comprises one or more memories configured to store a set of program modules and one or more processors configured to execute the program modules, wherein the program modules comprise:an input module configured to receive physiological data from the wearable device;a preprocessing module configured to:preprocess the sound data by filtering the sound data to generate filtered sound data, andpreprocess accelerometer data by converting multi-axis accelerometer data into one-dimensional motion data and filtering the one-dimensional motion data to generate filtered motion data;a feature extraction module configured to:convert the filtered sound data into Mel-frequency cepstral coefficient (MFCC) features, andconvert the filtered motion data into slope features representing changes in accelerometer data per unit time;a breath decoding module configured to predict a current breath phase at a current sampling time based on the slope features and a breath phase predicted at a previous sampling time using the trained probabilistic breath phase model and the breath phase transition model, wherein the breath phases include inhalation, holding, and exhalation;a breath segmentation module configured to analyze motion data accumulated over a time interval corresponding to at least one breath cycle to identify breath cycles, and to apply a probabilistic sequence decoding algorithm within each identified breath cycle to determine breath phases and timings of transitions between breath phases, anda breath phase output module configured to output a breath phase corresponding to inhalation, holding, and exhalation using at least one of the breath decoding module and the breath segmentation module.
2. The system of claim 1 , further comprises a microphone and an inertial measurement unit (IMU) sensor, wherein the microphone is configured to receive the sound data and the IMU sensor is configured to receive the IMU data.
3. The system of claim 1 , wherein the sound data is filtered to remove low-frequency components via a high-pass filter (HPF), and to remove systematic artifacts and resonance frequency components via a notch filter.
4. The system of claim 1 , wherein the one-dimensional motion data is filtered to remove high-frequency components irrelevant to breath activity via a low-pass filter (LPF).
5. The system of claim 1, wherein the MFCC is configured to classify breath sounds into the breath phases.
6. The system of claim 1 , wherein the slope features is configured to represent changes in motion corresponding to chest expansion and contraction associated with breath activity.
7. The system of claim 1 , wherein the probabilistic sequence decoding algorithm comprises a Viterbi decoding algorithm, wherein the breath cycle includes an onset of a first inhalation to an onset of a subsequent inhalation.
8. The system of claim 1, wherein the breath segmentation module is configured to: identify the breath cycle in an order including inhalation, holding, exhalation, and holding, thereby enable to detect more precise prediction of breath phases.
9. The system of claim 1 , further comprises a posture change detection module configured to analyze gyroscope data of the user in real time to detect posture changes.
10. The system of claim 9, further comprising a posture detection module configured to:convert multi-axis gyroscope data into a magnitude signal;process the magnitude signal using a sliding window method to generate windowed posture data;determine an average magnitude value for each window, anddetect at least one of the posture change and instability by determining whether the average magnitude value falls outside a predefined normative range derived from training data.
11. The system of claim 1, further comprises a stability scoring module configured to capture and analyze a motion data of the user during an exercise and generate a shakiness score, wherein the shakiness score is indicative of movement instability of the user.
12. The system of claim 11, wherein the stability scoring module is configured to process accelerometer data of the user during a exercise by converting multi-axis accelerometer data into one-dimensional, processed motion data, segmenting the processed motion data into time windows, determining an average motion value for each time window, comparing the average motion value against a normative motion distribution derived from training data, and generating a shakiness score based on a statistical distance between the average motion value and a mean of the normative motion distribution.
13. The system of claim 1, wherein the wearable device comprises the computing device and executes at least a portion of the program modules locally on the wearable device.
14. A method for identifying phases of breathing activity and managing exercises in real time, comprises the steps of:capturing, via a wearable device, physiological data, wherein the physiological data comprising at least one of sound data and inertial measurement unit (IMU) data, wherein the sound data comprises acoustic signals associated with inhalation, exhalation, and breath holding and the IMU data comprises accelerometer data, gyroscope data, and magnetometer data, wherein the accelerometer data comprises a motion data related to breath activity of the user;storing, at a database, user data and one or more trained models, wherein the trained models comprising a probabilistic breath phase model, a breath phase transition model, a posture model, and a stability model, wherein the database and the wearable device are in communication with a computing device, wherein the computingdevice comprises one or more memories configured to store a set of program modules and one or more processors configured to execute the program modules;receiving, at a computing device via an input module, physiological data from the wearable device;preprocessing, at the computing device via a preprocessing module, the sound data by filtering the sound data;preprocessing, at the computing device via the preprocessing module, the accelerometer data by converting multi-axis accelerometer data into one-dimensional motion data and filtering the one-dimensional motion data to generate filtered motion data;converting, at the computing device via a feature extraction module, the filtered sound data into Mel-frequency cepstral coefficient (MFCC) features;converting, at the computing device via the feature extraction module, the filtered motion data into slope features representing changes in accelerometer data per unit time;predicting, at the computing device via a breath decoding module, a current breath phase at a current sampling time based on the slope features and a breath phase predicted at a previous sampling time using the trained probabilistic breath phase model and the breath phase transition model, wherein the breath phases include inhalation, holding, and exhalation;analyzing, at the computing device via a breath decoding module, motion data accumulated over a time interval corresponding to at least one breath cycle to identify breath cycles, and to apply a probabilistic sequence decoding algorithm within each identified breath cycle to determine breath phases and timings of transitions between breath phases, andgenerating, at the computing device via a breath phase output module, an output comprising a breath phase corresponding to inhalation, holding, and exhalation using at least one of the breath decoding module and the breath segmentation module.
15. The method of claim 14, wherein the sound data is filtered to remove low-frequency components via a high-pass filter (HPF), and to remove systematic artifacts and resonance frequency components via a notch filter.
16. The method of claim 14, wherein the one-dimensional motion data is filtered to remove high-frequency components irrelevant to breath activity via a low-pass filter (LPF).
17. The method of claim 14, wherein the MFCC is configured to classify breath sounds into the breath phases, and wherein the slope features is configured to represent changes in motion corresponding to chest expansion and contraction associated with breath activity.
18. The method of claim 14, wherein the probabilistic sequence decoding algorithm comprises a Viterbi decoding algorithm, wherein the breath cycle includes an onset of a first inhalation to an onset of a subsequent inhalation.
19. The method of claim 14, further comprising the step of:analyzing, at the computing device via a posture detection module, gyroscope data of the user in real time to detect posture changes, wherein the step of analyzing gyroscope data involves:converting multi-axis gyroscope data into a magnitude signal;processing the magnitude signal using a sliding window method to generate windowed posture data;determining an average magnitude value for each window, anddetecting at least one of the posture change and instability by determining whether the average magnitude value falls outside a predefined normative range derived from training data.
20. The method of claim 14, further comprising the step of:Capturing and analyzing, at the computing device via a stability scoring module, a motion data of the user during an exercise and generate a shakiness score, wherein the shakiness score is indicative of movement instability of the user, wherein the step of generating shakiness score further involves:processing accelerometer data of the user during a exercise by converting multi-axis accelerometer data into one-dimensional, processed motion data, segmenting the processed motion data into time windows, determining an average motion value foreach time window, comparing the average motion value against a normative motion distribution derived from training data, and generating a shakiness score based on a statistical distance between the average motion value and a mean of the normative motion distribution.