Systems and methods for processing respiratory data
An automated system using signal processing and machine learning techniques addresses the inefficiencies of manual OSA diagnosis by accurately analyzing respiratory data to enhance scalability and consistency of sleep disorder detection.
Patent Information
- Application Number
- PCT/US2025/025185
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-04-17
- Filing Date
- 2025-04-17
- Publication Date
- 2025-10-23
AI Technical Summary
Current methods for diagnosing obstructive sleep apnea (OSA) rely heavily on manual scoring of polysomnography data, which is time-consuming and prone to human error, limiting accessibility and consistency of diagnosis.
An automated system using signal processing and machine learning techniques to analyze respiratory waveform signals, applying smoothing operations and artifact detection to accurately identify breathing patterns and classify sleep disorders.
Enhances the scalability and accuracy of OSA detection, reducing variability in scoring and providing personalized treatment recommendations based on individual breathing patterns.
Smart Images

Figure US2025025185_23102025_PF_FP_ABST
Abstract
Description
SYSTEMS AND METHODS FOR PROCESSING RESPIRATORY DATACROSS-REFERENCE TO RELATED APPLICATION
[0001] This application claims priority to U.S. Provisional Patent Application No. 63 / 635,309 filed on April 17, 2024, which is incorporated herein by reference in its entirety as if fully set forth herein.FIELD OF THE DISCLOSURE
[0002] The current disclosure describes techniques for processing respiratory data, for example, data associated with a sleep study.BACKGROUND OF THE DISCLOSURE
[0003] Obstructive sleep apnea (OSA) is a common sleep disorder characterized by repeated collapses of the upper airway during sleep, leading to reduced or paused breathing. These events can happen hundreds of times per night, causing frequent arousals and preventing the individual from reaching deeper stages of restorative sleep. Over time, this sleep fragmentation and oxygen deprivation puts strain on the heart and can increase the risk for serious cardiovascular complications. It is estimated that over 22 million adults in the US have moderate to severe OSA. Given the health impacts of untreated OSA, having accessible, accurate means of diagnosis is critical.
[0004] Traditionally, diagnosis of OSA has relied on analysis of data obtained during an attended overnight polysomnography (PSG) in a sleep lab. Sensors are placed on an individual to monitor various physiological signals, including brain waves, oxygen levels, heart rate, breathing patterns, and leg movements. A trained sleep technician manually scores the PSG data based on criteria for identifying apneas, hypopneas arousals, and other events.SUMMARY OF THE DISCLOSURE
[0005] There is a need for more automated, scalable methods that can accurately analyze sleep data to detect hallmark signs of OSA and other sleep-disordered breathing. By leveraging signal processing and machine learning techniques applied directly to respiratory waveform signals, algorithms can be developed to mimic manual scoring and quantify the frequency and severity of abnormal breathing patterns during sleep. Such automated OSA detection tools can help expand access to screening and diagnosis, reduce variability in score interpretation, and provide more personalized treatment recommendations based on an individual's overnight breathing patterns.
[0006] In some aspects, the techniques described herein relate to a sleep study system, the sleep study system including: a pressure nasal airflow (Pflow) sensor configured to capture first Pflow data associated with an individual during a sleep period; an auxiliary sensor configured to capture first auxiliary data associated with the individual during the sleep period; and a computing system configured to: determine, based on the first Pflow data, an estimated cycle frequency (e.g., using a Fourier analysis); determine, based on the estimated cycle frequency, a first smoothing window size and a second smoothing window size; determining second Pflow data, wherein determining the second Pflow data includes performing a first smoothing operation on the first Pflow data based on the first smoothing window size; determining second auxiliary data, wherein determining the second auxiliary data includes performing a second smoothing operation on the first auxiliary data based on the second smoothing window size; detecting a first breathing cycle and a second breathing cycle in the second Pflow data; detecting a third breathing cycle and a fourth breathingcycle in the second auxiliary data; determining that the second breathing cycle satisfies a first artifact condition and fails to satisfy a first sigh condition; determining that the fourth breathing cycle satisfies a second artifact condition and fails to satisfy a second sigh condition; determining third Pflow data, wherein determining the third Pflow data includes, based on determining that the second breathing cycle satisfies the first artifact condition and fails to satisfy the first sigh condition, removing the second breathing cycle from the second Pflow data; determining third auxiliary data, wherein determining the third auxiliary data includes, based on determining that the fourth breathing cycle satisfies the second artifact condition and fails to satisfy the second sigh condition, removing the fourth breathing cycle from the second auxiliary data; detecting a fifth breathing cycle and a sixth breathing cycle in the third Pflow data; determining a classification for a transition segment in the third Pflow data between a peak of the fifth breathing cycle and a trough of the sixth breathing cycle; detecting, based on the classification and the third auxiliary data, a sleep disorder condition; and performing a responsive operation based on the sleep disorder condition.
[0007] In some aspects, the techniques described herein relate to a sleep study system, wherein: the classification represents whether the transition segment satisfies at least one of an expiratory pause condition or an expiratory ramp condition. The expiratory pause condition is characterized by a first slope maximum and a first duration threshold. The expiratory ramp condition is characterized by a second slope maximum and the first duration threshold. In some aspects, the first slope maximum associated with the expiratory pause condition is lower than the second slope maximum associated with the expiratory ramp condition.
[0008] In some aspects, the techniques described herein relate to a sleep study system, wherein: the expiratory pause condition represents whether a mean slope measure associated with the fifth breathing cycle falls below the first slope maximum, and the first slope maximum is determined based on a peak slope measure associated with the fifth breathing cycle.
[0009] In some aspects, the techniques described herein relate to a sleep study system, wherein: the classification represents whether the transition segment satisfies an expiratory pause condition, wherein the expiratory pause condition is characterized by a first duration minimum, and the first duration minimum is determined based on a mean of cycle frequencies associated with a set of breathing cycles including the fifth breathing cycle and a predefined number of breathing cycles neighboring the fifth breathing cycle.
[0010] In some aspects, the techniques described herein relate to a sleep study system, wherein the first smoothing window size exceeds the second smoothing window size.
[0011] In some aspects, the techniques described herein relate to a computer-implemented method including: receiving first respiratory data; determining, based on the first respiratory data, a first breathing cycle and a second breathing cycle; determining a classification for a transition segment in the first respiratory data between a peak of the first breathing cycle and a trough of the second breathing cycle; and performing a responsive operation based on determining that the first respiratory data represents the sleep disorder condition. The classification represents whether the transition segment satisfies at least one of an expiratory pause condition or an expiratory ramp condition. The expiratory pause condition is characterized by a first slope maximum. The expiratory ramp condition is characterized by a second slope maximum. The first slope maximum associated with the expiratory pause condition is lower than the second slope maximum associated with the expiratory ramp condition.
[0012] In some aspects, the techniques described herein relate to a computer-implemented method, wherein receiving the first respiratory data includes: receiving input respiratory data; determining a cycle frequency associated with the input respiratory data; determining a first window size and a second window size based on the cycle frequency; and determining the first respiratory data, wherein determining the first respiratory data includes: performing a drift removal operation on the input respiratory data based on the first window size, and performing a smoothing operation on the input respiratory data based on the second window size.
[0013] In some aspects, the techniques described herein relate to a computer-implemented method, wherein determining the cycle frequency includes: determining a first segment and a second segment associated with the input respiratory data; determining a first dominant cycle frequency associated with the first segment and a second dominant cycle frequency associated with the second segment; and determining the cycle frequency based on the first dominant cycle frequency and the second dominant cycle frequency.
[0014] In some aspects, the techniques described herein relate to a computer-implemented method, wherein receiving the first respiratory data includes: receiving input respiratory data; detecting that the input respiratory data includes a third breathing cycle and a fourth breathing cycle; determining that the third breathing cycle satisfies an artifact condition; determining that the fourth breathing cycle satisfies a sigh condition, wherein determining that the fourth breathing cycle satisfies the sigh condition includes: determining that a first amplitude measure associated with the fourth breathing cycle exceeds an amplitude threshold, determining a first count associated with a first set of local maxima associated with the fourth breathing cycle; determining that the first count falls below a first count threshold, wherein the first count threshold is determined based at least in part on a fifth breathing cycle that neighbors the fourth breathing cycle; and determining the first respiratory data, wherein determining the first respiratory data includes: based at least in part on determining that the third breathing cycle satisfies the artifact condition, removing the third breathing cycle from the input respiratory data, and based at least in part on determining that the fourth breathing cycle satisfies the sigh condition, refraining from removal of the fourth breathing cycle from the input respiratory data.
[0015] In some aspects, the techniques described herein relate to a computer-implemented method, wherein: the first respiratory data represents Pflow data; and the first breathing cycle is determined based on a zero-crossing point represented by the Pflow data.
[0016] In some aspects, the techniques described herein relate to a computer-implemented method, wherein: the first respiratory data represents at least one of chest pressure data, abdominal pressure data, or oronasal thermal airflow data; and the first breathing cycle is determined based on a segment between a trough and a subsequent peak.
[0017] In some aspects, the techniques described herein relate to a computer-implemented method, wherein the sleep disorder condition represents at least one of a central apnea, an obstructive apneas, or a hypopnea.
[0018] In some aspects, the techniques described herein relate to a computer-implemented method, wherein: the expiratory pause condition represents whether a mean slope measure associated with the first breathing cycle falls below the first slope maximum, and the first slope maximum is determined based on a peak slope measure associated with the first breathing cycle.
[0019] In some aspects, the techniques described herein relate to a computer-implemented method, wherein: the expiratory pause condition is characterized by a first duration minimum, and the first duration minimum is determined based on a mean of cycle frequencies associated with a set of breathing cycles including the first breathing cycle and a predefined number of breathing cycles neighboring the first breathing cycle.
[0020] In some aspects, the techniques described herein relate to a computer-implemented method, wherein the first respiratory data represents Pflow data, and wherein determining the sleep disorder condition includes: determining sleep disorder condition based on the Pflow data and at least one of chest pressure data, abdominal pressure data, or oronasal thermal airflow data.
[0021] In some aspects, the techniques described herein relate to a computer-implemented method including: receiving input respiratory data; determining a cycle frequency associated with the input respiratory data; determining a first window size and or a second window size based on the cycle frequency; determining transformed respiratory data, wherein determining the transformed respiratory data includes: performing a drift removal operation on the input respiratory data based on the first window size, and performing a smoothing operation on the input respiratory data based on the second window size; determining that the transformed respiratory data represents a sleep disorder condition; and performing a responsive operation based on determining that the transformed respiratory data represents the sleep disorder condition.
[0022] In some aspects, the techniques described herein relate to a computer-implemented method, wherein determining the cycle frequency includes: determining a first segment and a second segment associated with the input respiratory data; determining a first dominant cycle frequency associated with the first segment and a second dominant cycle frequency associated with the second segment; and determining the cycle frequency based on the first dominant cycle frequency and the second dominant cycle frequency.
[0023] In some aspects, the techniques described herein relate to a computer-implemented method, wherein determining the first dominant cycle frequency includes: determining a power spectrum based on the first segment; detecting a first frequency in the first segment that is associated with a maximum power in the power spectrum; and determining the first dominant cycle frequency based on the first frequency.
[0024] In some aspects, the techniques described herein relate to a computer-implemented method, wherein determining the first window size includes: multiplying the cycle frequency by a first value, wherein the first value exceeds one.
[0025] In some aspects, the techniques described herein relate to a computer-implemented method, wherein determining the second window size includes: multiplying the cycle frequency by a first value, wherein the first value falls below one.BRIEF DESCRIPTION OF THE FIGURES
[0026] FIGS. 1A-1C depict an operational example of performing smoothing operations on a Pflow data channel associated with an individual.
[0027] FIGS. 2A-2D depict an operational example of detection of artifacts and / or excessive noise in four segments of Pflow data.
[0028] FIGS. 3A-3C provide examples of detecting and analyzing breath morphology.
[0029] FIG. 4 depicts three types of breath morphologies superimposed for comparison.
[0030] FIGS. 5A and 5B provide examples of two types of analysis that may be performed on sleep study data.
[0031] FIGS. 6A and 6B depict examples of respiratory condition detections.
[0032] FIG. 7 provides a comparison between algorithm apnea detections using the techniques described herein versus practitioner apnea detections by a sleep study practitioner.
[0033] FIG. 8 provides an example of detecting the beginning and end of an expiratory ramp in a sleep cycle with an expiratory ramp but with no expiratory pause.
[0034] FIG. 9 provides an example of detecting the beginning end of an expiratory ramp and the beginning end of an expiratory pause in a sleep cycle with an expiratory ramp and an expiratory pause.
[0035] FIG. 10 provides an example of detecting the beginning end of an inspiratory ramp and the beginning end of an inspiratory pause in a sleep cycle with an inspiratory ramp and an inspiratory pause.
[0036] FIG. 11 provides a flowchart diagram of an example process for determining a sleep order condition based on pressure nasal airflow (Pflow) data and auxiliary sensor data associated with an individual during a sleep period.
[0037] FIG. 12 shows an example computer architecture for a computing device capable of executing program components for implementing the functionality described herein.DETAILED DESCRIPTION
[0038] Techniques for analyzing sleep data (e.g., respiratory data channels like a nasal airflow (Pflow) channel, a chest pressure (Chest) channel, an abdominal pressure (Abd) channel, and an oronasal thermal airflow (Therm) channel; saturation data channels; and / or electroencephalography (EEG) data channels) using a computer system and / or a computer-implemented algorithm are described herein. The techniques may be used to detect sleep events such as sleep apnea. Sleep disorders such as sleep apnea can significantly impact an individual's health and quality of life. Diagnosing these disorders often requires analyzing data from overnight sleep studies. However, manually scoring sleep study data is time-consuming and subject to human error and variability. This disclosure describes automated techniques for analyzing sleep data to detect important events and / or patterns that may indicate sleep disorders.
[0039] In some embodiments, a system first separates data associated with period(s) when a monitored individual was awake and data associated with period(s) when the individual was asleep using annotation(s) made by a practitioner during a sleep study. In some embodiments, to analyze one or more respiratory data channels, the system uses spectral power analysis to process a subset of Pflow data associated with period(s) when the individual was asleep to estimate the mean cycle frequency for the individual. The system then uses estimated cycle frequency to define one or more analysis parameters for analyzing at least one of the Pflow, Chest, Abd, or Therm channels. The system may also analyze the saturation and EEG data channels, but may use different analysis techniques for these channels.
[0040] For a repository data channel (e.g., for the Pflow, Chest, Abd, or Therm data channels) associated with an individual, the system may apply one or more of two smoothing functions: a smoothing function to remove drift and a smoothing function to remove noise. Both the smoothing function used to remove drift from a repository data channel and the smoothing function used to remove noise from a repository data channel may use a sliding window averaging function. In some embodiments, both the window size associated with the sliding window averaging function used for drift removal and the window size associated with the sliding window averaging function used for noise removal may be determined based on an estimated cycle frequency associated with the corresponding individual. As described above, the estimated cycle frequency associated with an individual may be determined by performing spectral power analysis on a subset of the individual's Pflow data associated with period(s) when the individual was asleep.
[0041] For example, the window size used for drift removal may be determined based on the estimated cycle period (e.g., may be set to six times the estimated cycle period). After the system determines the window size associated with the sliding window averaging function used for drift removal, the system may use the sliding window averaging function to calculate the drift associated with that channel and then subtract the calculated drift from the channel. As another example, the window size used for noise removal may be smaller than the window size used for drift removal. For example, the window size used for noise removal may be determined by multiplying 0.08 times the estimated cycle period. Experimental observations have demonstrated that the window size of 0.08 times the estimated cycle period may be sufficient to remove noise from the repository data channel (s) without removing critical features of those channel(s). In some cases, for at least some of the respiratory data channels (e.g., for the Pflow data channel), after applying a first smoothing function for noise removal, the system applies a second smoothing function with a larger window size (e.g., with a window size of 0.11 times the estimated cycle period) to remove noise.
[0042] FIGS. 1A-1C depict an operational example of performing smoothing operations on a Pflow data channel associated with an individual. Specifically, FIG. 1A depicts 14-seconds of the individual's Pflow data filtered using a standard smoothing filter. FIG. 1 B depicts the same Pflow data for the same period filtered using the techniques described above (e.g., using sliding window averaging function(s) whose window size(s) are determined based on the individual's estimated cycle period). FIG. 1C depicts only the filtered traces to highlight the significant differences between the standard static filtering technique and the techniques described above (e.g., using sliding window averaging function(s) whose window size(s) are determined based on the individual's estimated cycle period).
[0043] In some embodiments (e.g., after performing the smoothing operation(s)), the system processes the respiratory data channel(s) using a preliminary cycle analysis. For Pflow data, the preliminary cycle analysis may include defining the beginning of inspiration as where the smoothed Pflow data trace crosses zero. This preliminary definition of the inspiration's beginning may be used to detect sleep artifacts and / or excessive noise, so that the system may apply a more sophisticated cycle analysis to the data with artifacts removed. The preliminary cycle analysis of the Pflow data may also include defining the end of an inspiration as the peak of the Pflow cycle. For a Therm (oronasal thermal airflow), Chest (chest pressure), or Abd (abdominal pressure) channel, the preliminary cycle analysis may include defining the beginning of inspiration as the troph of the cycle and the end of inspiration as the subsequent peak of the cycle. Since the overall respiratory cycle characteristics for the individual will be measured using the Pflow channel, this definition of the inspiration beginning and the inspiration end may be sufficient for the Therm, Chest, and Abd channels for measuring relevant cycle characteristics.
[0044] In some embodiments (e.g., after performing the smoothing operation(s) and / or the preliminary cycle analysis operation(s)), the system performs artifact detection on the repository data channel(s). The system may use a complex set of conditions to detect a variety of different types of artifacts. For example, the system may use a variable threshold for the cycle-to-cycle variability of certain cycle characteristics, including inspiration duration, expiration duration, and / or amplitude. If the mean cycle-to-cycle variability of two out of three of these cycle characteristics grows beyond the threshold for a defined number of consecutive cycles (e.g., for sixteen consecutive cycles), then this section of data may be detected as an artifact and / or as having excessive noise. Another type of artifact that the system may detect may relate to sections of data that are at least ten seconds wide and in which the cycle amplitude of multiple cycles is more than three times larger than the mean cycle amplitude of the surrounding forty cycles. The system mayalso detect transitions between large-amplitude respiratory cycles and small-amplitude respiratory cycles and remove such transitions as artifacts. For example, if there are at least twenty cycles whose minimum amplitude is greater than three times the maximum amplitude of the next 20 cycles, than the system may remove the transition between these two sets of cycles as an artifact, for example because such a transition hinders accuracy and reliability of the following cycle analysis methods.
[0045] In some embodiments, the system refrains from removing cycles classified as satisfying a sigh condition. In some embodiments, a cycle is classified as a sigh if it has a threshold-exceeding amplitude and / or if the set of local maxima associated with the cycle falls below a threshold determined based on the local maxima in the cycle's neighborhood. In some embodiments, the techniques include refraining from removal of a breathing cycle that is classified as a sigh.
[0046] FIGS. 2A-2D depict an operational example of detection of artifacts and / or excessive noise in four segments of Pflow data. Specifically, FIG. 2A depicts detection of an oxygen desaturation 202, an arousal 204, and an artifact 206 in the Pflow data segment 200. Moreover, FIG. 2B depicts detection of the arousal 210, the limb movement 212, the apnea 214, and the artifact 216 in the Pflow data segment 208. Furthermore, FIG. 2C depicts detection of the hypopnea instance 220, the hypopnea instance 222, the oxygen desaturation 224, the arousal 226, and the sighing activity 228 (detected as distinct from an arousal) in the Pflow data segment 218. Moreover, FIG. 2D depicts excessive noise in the Pflow data (region 230 inside the box but outside the black region 232), which is detected and removed using the techniques described herein for both cycle analysis and event detection.
[0047] In some embodiments (e.g., after performing the smoothing operation(s), the preliminary cycle analysis operation(s), and / or the artifact and / or excessive noise removal operation(s)), the system runs cycle analysis operations on at least a subset of the respiratory data channels (e.g., on Therm, Chest, and Abd data channels). On the Pflow data channel, the system may run the preliminary cycle analysis on the data after removing artifacts and / or excessive noise to detect "pauses,” or occurrences where the respiratory data hovers around zero for some length of time during the transition from inspiration to expiration and vice versa. The system may distinguish between expiratory and inspiratory pauses. For example, the system may detect an expiratory pauses using a definition that defines an expiratory pause as sections of data between the trough of the last cycle and the peak of the next cycles whose mean slope is less than a variable threshold. The variable threshold may be determined based on the peak slope of the corresponding cycle and / or the cycle period of a set of cycles surrounding the particular cycle. For example, the threshold may be set to be determined based on the peak slope of that cycle if: (i) the cycle's duration is at least 0.09 times the mean cycle period of the surrounding twenty cycles, and (ii) the duration between the trough of the last cycle and the beginning of the pause is greater than a certain threshold and / or the duration between the end of the pause and the peak of the next cycle. The system may detect an inspiratory pause using a definition that defines inspiratory pauses as sections of data between the peak of the cycle and the subsequent troph whose mean slope is less than a variable threshold. The threshold may be determined using the same techniques as the techniques used for determining the threshold definition described above in relation to the expiratory pauses.
[0048] FIGS. 3A-3C provide examples of detecting and analyzing breath morphology. Specifically, FIG. 3A depicts detecting the beginning of an expiratory ramp 300, the beginning of an expiratory pause 302, and the end of the expiratory pause and the ramp 304. FIG. 3B depicts detecting the beginning of an expiratory ramp 306 and the end of the expiratory ramp 308. FIG. 3C depicts a smooth expiration without a pause or a ramp.
[0049] FIG. 4 depicts the three types of breath morphologies depicted in FIGS. 3A-3C (i.e., the expiratory pause morphology depicted in FIG. 3A, the expiratory ramp morphology depicted in FIG. 3B, and the smooth expiration morphology depicted in FIG. 3C) superimposed for comparison. The superimposed graph enables comparing the breath morphologies depicted in FIGS. 3A-3C.
[0050] FIGS. 5A and 5B provide examples of two types of analysis that may be performed on sleep data. Specifically, FIG. 5A is a normalized histogram of pause duration in individuals with obstructive sleep apnea. FIG. 5B is a normalized histogram of pause ratio (e.g., defined as pause duration divided by expiration duration) in individuals with obstructive sleep apnea.
[0051] In some embodiments (e.g., after performing the smoothing operation(s), the preliminary cycle analysis operation(s), the artifact and / or excessive noise removal operation(s), and / or the subsequent cycle analysis operation(s)), the system may perform final cycle analysis operations on the Pflow data. The system may classify each cycle as: a cycle with an expiratory pause before inspiration, a cycle with a slow ramp before inspiration but no pause, or a cycle that immediately shoots up from expiration to inspiration without any significant decrease in slope. For cycles with an expiratory pause or a slow ramp, the beginning of inspiration is defined as the end of the pause or ramp. The end of inspiration is defined as the peak of the Pflow cycle. The definition of a ramp may be similar to the definition of a pause, but with looser criteria. After classifying the cycles, the system may measure the means and standard deviations of the cycle characteristics, such as cycle period, duration of inspiration, duration of expiration, and / or the like.
[0052] In some embodiments (e.g., after performing the smoothing operation(s), the preliminary cycle analysis operation(s), the artifact and / or excessive noise removal operation(s), the cycle analysis operation(s), and / or the final cycle analysis operation(s)), the system detects one or more respiratory events, such as central apneas, obstructive apneas, and / or hypopneas. The system may use the respiratory event detections provided by the 2023 edition of The AASM Manual for the Scoring of Sleep and Associated Events, which was assembled by the American Academy of Sleep Medecine (AASM), to generate definitions of these respiratory events. The system may initially use the Therm channel to detect apneas and the Pflow channel to detect hypopneas. Apneas may be defined as expirations that last longer than two times the mean cycle period of the surrounding forty cycles or that last longer than twenty seconds. After detecting apneas using the Therm channel, the system may detect sections of data that were removed as artifacts in the Therm channel but not in the Pflow channel. For these sections of data, the system can use the Pflow channel to detect apneas.
[0053] The system may categorize apneas as either central, obstructive, or uncategorized, by looking at Chest and Abd activity during the apnea. The system may consider these channels as "active” during the apnea if at least one and a half cycles occur during the apnea. If at least one of those channels is active during the apnea, then the system may determine that the apnea is obstructive. The system may determine that apnea is central if neither the Chest nor the Abd channel is active and either a desaturation occurs or an arousal occurs in proximity to the apnea. If neither channel is active, but neither a desaturation nor an arousal occurs around the same time as the apnea, then the system may determine that the apnea is uncategorized and is therefore no longer counted in the overall apnea count.
[0054] FIGS. 6A and 6B depict examples of respiratory condition detections. Specifically, FIG. 6A depicts an algorithm- annotated central apnea 602 detected by the techniques described herein, a practitioner-annotated central apnea 604detected by a practitioner, an algorithm-annotated obstructive apnea 606 detected by the techniques described herein, and a practitioner-annotated obstructive apnea 608 detected by a practitioner. FIG. 6B depicts an algorithm-annotated central apnea 610 detected by the techniques described herein and an algorithm-annotated obstructive apnea 612 detected by the techniques described herein. Accordingly, FIG. 6B depicts examples of apneas that were not detected by a practitioner but were detected using the techniques described herein. FIG. 7 provides a comparison between the algorithm apnea detections using the techniques described herein and the practitioner apnea detections where the p- value is less than < 0.05.
[0055] In some embodiments, in order to detect a desaturation, the system relies on a decrease in the saturation channel of more than 3% from the beginning of the apnea. Using the saturation channel may not require any preprocessing such as drift removal or smoothing. In order to detect an arousal, the system may apply a continuous wavelet transform to the EEG channels F4-M1 , C4-M1 , and O2-M1. The system may detect an arousal by detecting a simultaneous spike in the power of frequencies between 0.1 and 1 for at least 2 out of 3 of these channels. If a desaturation and / or an arousal occurs within 30 seconds from the onset of the apnea and the other criteria are met, then the system may detect a neutral apnea. The system may detect a hypopnea based on a period of Pflow data in which there are either low-amplitude cycles or no cycles for a duration greater than 2 times the mean cycle period of the surrounding 40 cycles, if a desaturation also occurs within 30 seconds from the onset of the hypopnea. The system may consider cycles to be low-amplitude if their amplitude is less than 30% of the mean cycle amplitude of the surrounding 40 cycles.
[0056] FIG. 8 provides an example of detecting the beginning and end of an expiratory ramp in a sleep cycle with an expiratory ramp but with no expiratory pause. In some embodiments, the system detects whether a Pflow cycle contains an expiratory ramp or pause using the following approach: first, the trough and subsequent peak of the Pflow cycle are identified. Next, two points are defined: point A as the first time within this cycle that Pflow exceeds an extrema (e.g., minimum and / or maximum) threshold factor (e.g., 0.76) times the trough Pflow value, and point B as the last time Pflow exceeds the extrema threshold factor times the peak Pflow value. The analysis for ramps or pauses is then constrained between points A and B. The system then identifies all data points between A and B with slope below a ramp slope threshold factor (e.g., 0.35) times the maximum slope of that cycle. Cycles with no points meeting this slope criteria are categorized as not having a ramp or pause. For these cycles, inspiration onset is defined as the last Pflow zero-crossing point. If points within a cycle meet the slope threshold, the system determines that a ramp is present if: (I) the time difference between the first point after A below the slope threshold and last point before B below the threshold exceeds a duration threshold factor (e.g., 0.09) times the mean cycle period of the surrounding 20 cycles, and (II) the slope at point B exceeds the slope threshold. If both of the described criteria are met, the ramp is defined between the first and last sub-threshold slope points, regardless of any intermittent supra-threshold points. If the duration is too short but slope criteria are not met, no ramp is identified. The rare cases where point B slope falls below threshold are handled by finding the nearest prior point above threshold and redefining point B.
[0057] FIG. 9 provides an example of detecting the beginning end of an expiratory ramp and the beginning end of an expiratory pause in a sleep cycle with an expiratory ramp and an expiratory pause. If the system detects an expiratory ramp, then the system proceeds to determine if there is also an expiratory pause within the time range associated with the data points that have a slope less than or equal to a second slope threshold. The second slope threshold may bedetermined based on the equation (pause slope threshold factor = 0.11)*(max slope of this cycle). If the system does not detect any data points that have such a slope, the system determines that the cycle has a ramp but not a pause, and the beginning of inspiration is defined as the last point of the ramp. If there are datapoints that meet this criterion, then the time range from the first of these points (point C) to the last of these points (point D) is considered a pause if it satisfies all of the following criteria: (I) the time duration from point C to point D is greater than or equal to the duration threshold factor of 0.09 times the mean cycle period of the surrounding 20 cycles, (ii) the mean slope throughout the range is less than or equal to the pause slope threshold factor times the maximum slope of this cycle, (ill) the time duration from the trough to point C is greater than or equal to the duration threshold factor times the mean cycle period of the surrounding twenty cycles, (iv) the mean slope from point A to point C is greater than the slope-change threshold factor of 1.5 times the mean slope from point C to point D, (v) the mean slope from point D to point B is greater than the slope-change threshold factor of 1.5 times the mean slope from point C to point D, (vi) the time at point C is not equal to the time at which the ramp started, and (vii) the time at point D is not equal to the time at which the ramp ends. If all of these criteria are met, the cycle is categorized as having both a ramp and a pause, and the beginning of inspiration is defined as the last point of the pause. If any one of these criteria is not met, then the cycle is categorized as having a ramp but not a pause, and the beginning of inspiration is defined as the last point of the ramp.
[0058] FIG. 10 provides an example of detecting the beginning end of an inspiratory ramp and the beginning end of an inspiratory pause in a sleep cycle with an inspiratory ramp and an inspiratory pause. The system may detect inspiratory ramps and pauses using the same method as the method used to detect expiratory ramps and pauses, except that the system analyzes the waveform between peak and trough rather than between trough and peak (e.g., using a waveform that is inverted around the peak). Specifically, point A for inspiratory events marks where airflow first drops below a threshold factor times the peak flow, after the peak. Point B marks the last time flow falls below a threshold factor times the trough flow. To find an inspiratory ramp, the system may use contiguous points between point A and point B where the slope exceeds a ramp threshold factor times the minimum cycle slope. Unlike expiratory ramps, there is no upper limit on inspiratory ramp slope or mean slope. An inspiratory pause may be detected within the inspiratory ramp time window where points meet a pause threshold slope, defined as a pause threshold factor times the minimum cycle slope.
[0059] FIG. 11 provides a flowchart diagram of an example process 1100 for determining a sleep order condition based on Pflow data and auxiliary sensor data associated with an individual during a sleep period. As depicted, the system first receives first Pflow data and first auxiliary sensor data associated with an individual during a sleep period (step 1102). The Pflow data may be captured using a Pflow sensor. Example auxiliary sensors include chest pressure sensors, abdominal pressure sensors, and oronasal thermal airflow sensors.
[0060] The system then determines an estimated mean cycle frequency associated with the input Pflow data (e.g., using a Fast Fourier Transform analysis) (step 1104). In some embodiments, the system performs a Fast Fourier transform on segments of the Pflow data to determine a corresponding power spectrum. The system may then detect spectral peaks in the power spectrum to identify dominant frequencies. The mean of the dominant frequencies may provide the estimated cycle frequency.
[0061] Based on the estimated cycle frequency, the system determines a first smoothing window size for the Pflow data and a second smoothing window size for the auxiliary data (step 1106). The first and second smoothing window sizes may be determined based on multiples of the estimated cycle frequency. In some cases, the first smoothing window size exceeds the second smoothing window size.
[0062] The system then smooths the first Pflow data based on the first smoothing window size to determine second Pflow data (step 1108). For example, the system may apply one or more sliding window averaging functions (e.g., a sliding window averaging function for drift removal and / or a sliding window averaging function for noise removal) based on the first smoothing window size.
[0063] Similarly, the system smooths the first auxiliary data based on the second smoothing window size to determine second auxiliary data (step 1110). For example, the system may apply one or more sliding window averaging functions (e.g., a sliding window averaging function for drift removal and / or a sliding window averaging function for noise removal) based on the second smoothing window size.
[0064] The system may then detect a first breathing cycle and a second breathing cycle in the second Pflow data (step 1112). The first and second breathing cycles may be determined by determining inspiration beginnings based on locations where the second Pflow data cross zero and inspiration ends as the peak of the Pflow cycle.
[0065] The system may then detect a third breathing cycle and a fourth breathing cycle in the second auxiliary data (step 1114). The third and fourth breathing cycles may be determined by determining inspiration beginnings based on cycle trophs and inspiration ends based on subsequent cycle peaks.
[0066] The system may then determine third Pflow data and third auxiliary data by removing the second cycle from the second Pflow data and the fourth cycle from the second auxiliary data respectively (step 1116). In some cases, the system may determine that the second and fourth breathing cycles satisfy an artifact and / or excessive noise condition, but fail to satisfy a sigh condition, and remove the second and fourth breathing cycles from the second Pflow data and second auxiliary data respectively to determine third Pflow data and third auxiliary data respectively. The system may use a complex set of conditions to detect a variety of different types of artifacts. For example, the system may use a variable threshold for the cycle-to-cycle variability of certain cycle characteristics, including inspiration duration, expiration duration, and / or amplitude. The system may also detect transitions between large-amplitude respiratory cycles and small-amplitude respiratory cycles and remove such transitions as artifacts.
[0067] The system may then determine a fifth and a sixth breathing cycle in the third Pflow data (step 1118). The fifth and sixth breathing cycles may be determined by determining inspiration beginnings based on locations where the third Pflow data cross zero and inspiration ends as the peak of the Pflow cycle.
[0068] The system may then determine a classification for a transition segment between the peak of the fifth breathing cycle and the trough of the sixth breathing cycle (step 1120). In some embodiments, the classification represents whether the transition segment satisfies at least one of an expiratory pause condition or an expiratory ramp condition. The expiratory pause condition may be characterized by a first slope maximum and a first duration threshold. The expiratory ramp condition may be characterized by a second slope maximum and the first duration threshold. The first slope maximum may be lower than the second slope maximum. In some embodiments, the expiratory pause condition represents whether a mean slope measure associated with the fifth breathing cycle falls below the first slope maximum, and the first slope maximum is determined based on a peak slope measure associated with the fifth breathing cycle.
[0069] In some embodiments, the classification represents whether the transition segment satisfies an expiratory pause condition. The expiratory pause condition may be characterized by a first duration minimum. The first duration minimum may be determined based on a mean of cycle frequencies associated with a set of breathing cycles including the fifth breathing cycle and a predefined number of breathing cycles neighboring the fifth breathing cycle.
[0070] The system may detect a sleep disorder condition based on the classification and the third auxiliary data (step 1122). For example, the system may initially use the third auxiliary data to detect apneas and the third Pflow data to detect hypopneas. Apneas may be defined as expirations that last longer than two times the mean cycle period of the surrounding forty cycles or that last longer than twenty seconds. After detecting apneas using the third auxiliary data, the system may detect sections of data that were removed as artifacts in the third auxiliary data but not in the third Pflow data. For these sections of data, the system may use the third Pflow data to detect apneas.
[0071] The system may then perform a responsive condition based on the sleep disorder condition (step 1124). For example, after detecting apneas and hypopneas, the system may categorize respiratory events such as apneas as central, obstructive, or uncategorized based on associated chest and abdominal activity. The system may then generate statistics and reports summarizing the overall number and types of detected respiratory events. If potentially concerning patterns of breathing disturbances are detected that may warrant further medical evaluation, the system may send alerts to the individual or their physician based on the type and severity of detected sleep disorders. The system may also provide tailored recommendations to the individual regarding changes to their sleep environment, behavior modifications, or use of a Positive Airway Pressure (PAP) device that may help treat diagnosed conditions like obstructive sleep apnea. Additionally, the system can automate adjustment of PAP device settings over time for an actively-treated individual based on metrics indicative of overnight treatment efficacy and intra-night breathing patterns.
[0072] FIG. 12 shows an example computer architecture for a computing device (or network routing device) 1200 capable of executing program components for implementing the functionality described above. The computer architecture shown in FIG. 12 illustrates a conventional server computer, workstation, desktop computer, laptop, tablet, network appliance, e-reader, smartphone, or other computing device, and can be utilized to execute any of the software components presented herein.
[0073] The computing device 1200 includes a baseboard 1202, or "motherboard,” which is a printed circuit board to which a multitude of components or devices can be connected by way of a system bus or other electrical communication paths. In one illustrative configuration, one or more central processing units ("CPUs”) 1204 operate in conjunction with a chipset 1206. The CPUs 1204 can be standard programmable processors that perform arithmetic and logical operations necessary for the operation of the computing device 1200.
[0074] The CPUs 1204 perform operations by transitioning from one discrete, physical state to the next through the manipulation of switching elements that differentiate between and change these states. Switching elements generally include electronic circuits that maintain one of two binary states, such as flip-flops, and electronic circuits that provide an output state based on the logical combination of the states of one or more other switching elements, such as logic gates. These basic switching elements can be combined to create more complex logic circuits, including registers, adders-subtractors, arithmetic logic units, floating-point units, and the like.
[0075] The chipset 1206 provides an interface between the CPUs 1204 and the remainder of the components and devices on the baseboard 1202. The chipset 1206 can provide an interface to a RAM 1208, used as the main memory in the computing device 1200. The chipset 1206 can further provide an interface to a computer-readable storage medium such as a read-only memory ("ROM”) 1210 or non-volatile RAM ("NVRAM”) for storing basic routines that help to startup the computing device 1200 and to transfer information between the various components and devices. The ROM 1210 or NVRAM can also store other software components necessary for the operation of the computing device 1200 in accordance with the configurations described herein.
[0076] The computing device 1200 can operate in a networked environment using logical connections to remote computing devices and computer systems through a network 1224. The chipset 1206 can include functionality for providing network connectivity through a NIC 1212, such as a gigabit Ethernet adapter. The NIC 1212 is capable of connecting the computing device 1200 to other computing devices over the network. It should be appreciated that multiple NICs 1212 can be present in the computing device 1200, connecting the computer to other types of networks and remote computer systems.
[0077] The computing device 1200 can be connected to a storage device 1218 that provides non-volatile storage for the computing device 1200. The storage device 1218 can store an operating system 1220, programs 1222, and data, which have been described in greater detail herein. The storage device 1218 can be connected to the computing device 1200 through a storage controller 1214 connected to the chipset 1206. The storage device 1218 can include one or more physical storage units. The storage controller 1214 can interface with the physical storage units through a serial attached SCSI ("SAS”) interface, a serial advanced technology attachment ("SATA”) interface, a fiber channel ("FC”) interface, or other type of interface for physically connecting and transferring data between computers and physical storage units.
[0078] The computing device 1200 can store data on the storage device 1218 by transforming the physical state of the physical storage units to reflect the information being stored. The specific transformation of the physical state can depend on various factors, in different embodiments of this description. Examples of such factors include the technology used to implement the physical storage units, whether the storage device 1218 is characterized as primary or secondary storage, and the like.
[0079] For example, the computing device 1200 can store information to the storage device 1218 by issuing instructions through the storage controller 1214 to alter the magnetic characteristics of a particular location within a magnetic disk drive unit, the reflective or refractive characteristics of a particular location in an optical storage unit, or the electrical characteristics of a particular capacitor, transistor, or other discrete component in a solid-state storage unit. Other transformations of physical media are possible without departing from the scope and spirit of the present description, with the foregoing examples provided only to facilitate this description. The computing device 1200 can further read information from the storage device 1218 by detecting the physical states or characteristics of one or more particular locations within the physical storage units.
[0080] In addition to the mass storage device 1218 described above, the computing device 1200 can have access to other computer-readable storage media to store and retrieve information, such as program modules, data structures, or other data. It should be appreciated by those skilled in the art that computer-readable storage media is any available media that provides for the non-transitory storage of data and that can be accessed by the computing device 1200. Insome examples, the operations performed by a network, and / or any components included therein (e.g., a router, such as an edge router), may be supported by one or more devices similar to computing device 1200. Stated otherwise, some or all of the operations performed by the network, and or any components included therein, may be performed by one or more computing device 1200 operating in a cloud-based arrangement.
[0081] By way of example, computer-readable storage media can include volatile and non-volatile, removable and non-removable media implemented in any method or technology. Examples of computer-readable storage media includes RAM, ROM, erasable programmable ROM ("EPROM”), electrically-erasable programmable ROM ("EEPROM”), flash memory or other solid-state memory technology, compact disc ROM ("CD-ROM”), digital versatile disk ("DVD”), high definition DVD (“HD-DVD”), BLU-RAY, or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store the desired information in a non-transitory fashion.
[0082] As mentioned briefly above, the storage device 1218 can store an operating system 1220 utilized to control the operation of the computing device 1200. According to one embodiment, the operating system includes the LINUX operating system. According to another embodiment, the operating system includes the WINDOWS® SERVER operating system from MICROSOFT Corporation of Redmond, Washington. According to further embodiments, the operating system can include the UNIX operating system or one of its variants. It should be appreciated that other operating systems can also be utilized. The storage device 1218 can store other system or application programs and data utilized by the computing device 1200.
[0083] In one embodiment, the storage device 1218 or other computer-readable storage media is encoded with computer-executable instructions which, when loaded into the computing device 1200, transform the computer from a general-purpose computing system into a special-purpose computer capable of implementing the embodiments described herein. These computer-executable instructions transform the computing device 1200 by specifying how the CPUs 1204 transition between states, as described above. According to one embodiment, the computing device 1200 has access to computer-readable storage media storing computer-executable instructions which, when executed by the computing device 1200, perform the various processes described above with regard to FIGS. 1-11. The computing device 1200 can also include computer-readable storage media having instructions stored thereupon for performing any of the other computer-implemented operations described herein.
[0084] The computing device 1200 can also include one or more input / output controllers 1216 for receiving and processing input from a number of input devices, such as a keyboard, a mouse, a touchpad, a touch screen, an electronic stylus, or other type of input device. Similarly, an input / output controller 1216 can provide output to a display, such as a computer monitor, a flat-panel display, a digital projector, a printer, or other type of output device. It will be appreciated that the computing device 1200 might not include all of the components shown in FIG. 12, can include other components that are not explicitly shown in FIG. 12, or might utilize an architecture completely different than that shown in FIG. 12.
[0085] The computing device 1200 may support a virtualization layer, such as one or more components associated with a computing resource network. The virtualization layer may provide virtual machines or containers that abstract the underlying hardware resources and enable multiple operating systems or applications to run simultaneously on the same physical machine. The virtualization layer may also include components for managing the virtualized resources,such as a hypervisor or virtual machine manager, and may provide network virtualization capabilities, such as virtual switches, routers, or firewalls. By enabling the sharing and efficient utilization of physical resources, virtualization can help reduce costs, simplify management, and increase flexibility in deploying and scaling computing workloads. The computing device 1200 may also support other software layers, such as middleware, application frameworks, or databases, that provide additional abstraction and services to application developers and users. In some cases, the computing device 1200 may provide a flexible and scalable platform for hosting diverse workloads and applications, from simple web services to complex data analytics and machine learning tasks.
[0086] As will be understood by one of ordinary skill in the art, each embodiment disclosed herein can comprise, consist essentially of or consist of its particular stated element, step, or component. Thus, the terms "include” or "including” should be interpreted to recite: "comprise, consist of, or consist essentially of.” The transition term "comprise” or "comprises” means has, but is not limited to, and allows for the inclusion of unspecified elements, steps, or components, even in major amounts. The transitional phrase "consisting of' excludes any element, step, or component not specified. The transition phrase "consisting essentially of” limits the scope of the embodiment to the specified elements, steps, or components to those that do not materially affect the embodiment. A material effect would cause a statistically significant reduction in the ability to detect an apnea as described herein.
[0087] Unless otherwise indicated, all numbers expressing quantities, for example of window sizes, cycles, cycle durations, and so forth used in the specification and claims are to be understood as being modified in all instances by the term "about.” Accordingly, unless indicated to the contrary, the numerical parameters set forth in the specification and attached claims are approximations that may vary depending upon the desired properties sought to be obtained by the present invention. At the very least, and not as an attempt to limit the application of the doctrine of equivalents to the scope of the claims, each numerical parameter should at least be construed in light of the number of reported significant digits and by applying ordinary rounding techniques. When further clarity is required, the term "about” has the meaning reasonably ascribed to it by a person skilled in the art when used in conjunction with a stated numerical value or range, i.e. denoting somewhat more or somewhat less than the stated value or range, to within a range of ±20% of the stated value; ±19% of the stated value; ±18% of the stated value; ±17% of the stated value; ±16% of the stated value; ±15% of the stated value; ±14% of the stated value; ±13% of the stated value; ±12% of the stated value; ±11 % of the stated value; ±10% of the stated value; ±9% of the stated value; ±8% of the stated value; ±7% of the stated value; ±6% of the stated value; ±5% of the stated value; ±4% of the stated value; ±3% of the stated value; ±2% of the stated value; or ±1 % of the stated value.
[0088] Notwithstanding that the numerical ranges and parameters setting forth the broad scope of the invention are approximations, the numerical values set forth in the specific examples are reported as precisely as possible. Any numerical value, however, inherently contains certain errors necessarily resulting from the standard deviation found in their respective testing measurements.
[0089] The terms "a,” "an,” "the” and similar referents used in the context of describing the invention (especially in the context of the following claims) are to be construed to cover both the singular and the plural, unless otherwise indicated herein or clearly contradicted by context. Recitation of ranges of values herein is merely intended to serve as a shorthand method of referring individually to each separate value falling within the range. Unless otherwise indicated herein, each individual value is incorporated into the specification as if it were individually recited herein. All methodsdescribed herein can be performed in any suitable order unless otherwise indicated herein or otherwise clearly contradicted by context. The use of any and all examples, or exemplary language (e.g., "such as”) provided herein is intended merely to better illuminate the invention and does not pose a limitation on the scope of the invention otherwise claimed. No language in the specification should be construed as indicating any non-claimed element essential to the practice of the invention.
[0090] Groupings of alternative elements or embodiments of the invention disclosed herein are not to be construed as limitations. Each group member may be referred to and claimed individually or in any combination with other members of the group or other elements found herein. It is anticipated that one or more members of a group may be included in, or deleted from, a group for reasons of convenience and / or patentability. When any such inclusion or deletion occurs, the specification is deemed to contain the group as modified thus fulfilling the written description of all Markush groups used in the appended claims.
[0091] Certain embodiments of this invention are described herein, including the best mode known to the inventors for carrying out the invention. Of course, variations on these described embodiments will become apparent to those of ordinary skill in the art upon reading the foregoing description. The inventor expects skilled artisans to employ such variations as appropriate, and the inventors intend for the invention to be practiced otherwise than specifically described herein. Accordingly, this invention includes all modifications and equivalents of the subject matter recited in the claims appended hereto as permitted by applicable law. Moreover, any combination of the above-described elements in all possible variations thereof is encompassed by the invention unless otherwise indicated herein or otherwise clearly contradicted by context.
[0092] In closing, it is to be understood that the embodiments of the invention disclosed herein are illustrative of the principles of the present invention. Other modifications that may be employed are within the scope of the invention. Thus, by way of example, but not of limitation, alternative configurations of the present invention may be utilized in accordance with the teachings herein. Accordingly, the present invention is not limited to that precisely as shown and described.
[0093] The particulars shown herein are by way of example and for purposes of illustrative discussion of the preferred embodiments of the present invention only and are presented in the cause of providing what is believed to be the most useful and readily understood description of the principles and conceptual aspects of various embodiments of the invention. In this regard, no attempt is made to show structural details of the invention in more detail than is necessary for the fundamental understanding of the invention, the description taken with the drawings and / or examples making apparent to those skilled in the art how the several forms of the invention may be embodied in practice.
[0094] EXAMPLE CLAUSES
[0095] A: A system including: a pressure nasal airflow (Pflow) sensor configured to capture first Pflow data associated with an individual during a sleep period; an auxiliary sensor configured to capture first auxiliary data associated with the individual during the sleep period; and a computing system configured to: determine, based on the first Pflow data, an estimated cycle frequency; determine, based on the estimated cycle frequency, a first smoothing window size and a second smoothing window size; determining second Pflow data, wherein determining the second Pflow data includes performing a first smoothing operation on the first Pflow data based on the first smoothing window size; determining second auxiliary data, wherein determining the second auxiliary data includes performing a second smoothingoperation on the first auxiliary data based on the second smoothing window size; detecting a first breathing cycle and a second breathing cycle in the second Pflow data; detecting a third breathing cycle and a fourth breathing cycle in the second auxiliary data; determining that the second breathing cycle satisfies a first artifact condition and fails to satisfy a first sigh condition; determining that the fourth breathing cycle satisfies a second artifact condition and fails to satisfy a second sigh condition; determining third Pflow data, wherein determining the third Pflow data includes, based on determining that the second breathing cycle satisfies the first artifact condition and fails to satisfy the first sigh condition, removing the second breathing cycle from the second Pflow data; determining third auxiliary data, wherein determining the third auxiliary data includes, based on determining that the fourth breathing cycle satisfies the second artifact condition and fails to satisfy the second sigh condition, removing the fourth breathing cycle from the second auxiliary data; detecting a fifth breathing cycle and a sixth breathing cycle in the third Pflow data; determining a classification for a transition segment in the third Pflow data between a peak of the fifth breathing cycle and a trough of the sixth breathing cycle; detecting, based on the classification and the third auxiliary data, a sleep disorder condition; and performing a responsive operation based on the sleep disorder condition.
[0096] B: The system of paragraph A, wherein: the classification represents whether the transition segment satisfies at least one of an expiratory pause condition or an expiratory ramp condition, the expiratory pause condition is characterized by a first slope maximum and a first duration threshold and the expiratory ramp condition is characterized by a second slope maximum and the first duration threshold, and the first slope maximum is lower than the second slope maximum.
[0097] C: The system of paragraph B, wherein: the expiratory pause condition represents whether a mean slope measure associated with the fifth breathing cycle falls below the first slope maximum, and the first slope maximum is determined based on a peak slope measure associated with the fifth breathing cycle.
[0098] D: The system of any one of paragraphs A-C, wherein: the classification represents whether the transition segment satisfies an expiratory pause condition, the expiratory pause condition is characterized by a first duration minimum, and the first duration minimum is determined based on a mean of cycle frequencies associated with a set of breathing cycles including the fifth breathing cycle and a predefined number of breathing cycles neighboring the fifth breathing cycle.
[0099] E: The system of any one of paragraphs A-D, wherein the first smoothing window size exceeds the second smoothing window size.
[0100] F: A computer-implemented method including: receiving first respiratory data; determining, based on the first respiratory data, a first breathing cycle and a second breathing cycle; determining a classification for a transition segment in the first respiratory data between a peak of the first breathing cycle and a trough of the second breathing cycle, wherein: the classification represents whether the transition segment satisfies at least one of an expiratory pause condition or an expiratory ramp condition, the expiratory pause condition is characterized by a first slope maximum and the expiratory ramp condition is characterized by a second slope maximum, and the first slope maximum is lower than the second slope maximum; determining, based on the classification, that the first respiratory data represents a sleep disorder condition; and performing a responsive operation based on determining that the first respiratory data represents the sleep disorder condition.
[0101] G: The computer-implemented method of paragraph F, wherein receiving the first respiratory data includes: receiving input respiratory data; determining a cycle frequency associated with the input respiratory data; determining a first window size and a second window size based on the cycle frequency; and determining the first respiratory data, wherein determining the first respiratory data includes: performing a drift removal operation on the input respiratory data based on the first window size, and performing a smoothing operation on the input respiratory data based on the second window size.
[0102] H: The computer-implemented method of paragraph G, wherein determining the cycle frequency includes: determining a first segment and a second segment associated with the input respiratory data; determining a first dominant cycle frequency associated with the first segment and a second dominant cycle frequency associated with the second segment; and determining the cycle frequency based on the first dominant cycle frequency and the second dominant cycle frequency.
[0103] I: The computer-implemented method of either paragraph G or H, wherein receiving the first respiratory data includes: receiving input respiratory data; detecting that the input respiratory data includes a third breathing cycle and a fourth breathing cycle; determining that the third breathing cycle satisfies an artifact condition; determining that the fourth breathing cycle satisfies a sigh condition, wherein determining that the fourth breathing cycle satisfies the sigh condition includes: determining that a first amplitude measure associated with the fourth breathing cycle exceeds an amplitude threshold, determining a first count associated with a first set of local maxima associated with the fourth breathing cycle; determining that the first count falls below a first count threshold, wherein the first count threshold is determined based on a fifth breathing cycle that neighbors the fourth breathing cycle; and determining the first respiratory data, wherein determining the first respiratory data includes: based at least in part on determining that the third breathing cycle satisfies the artifact condition, removing the third breathing cycle from the input respiratory data, and based at least in part on determining that the fourth breathing cycle satisfies the sigh condition, refraining from removal of the fourth breathing cycle from the input respiratory data.
[0104] J: The computer-implemented method of any one of paragraphs G-l, wherein: the first respiratory data represents pressure nasal airflow (Pflow) data; the first breathing cycle is determined based on a zero-crossing point represented by the Pflow data.
[0105] K: The computer-implemented method of any one of paragraphs G-J, wherein: the first respiratory data represents at least one of chest pressure data, abdominal pressure data, or oronasal thermal airflow data; and the first breathing cycle is determined based on a segment between a trough and a subsequent peak.
[0106] L: The computer-implemented method of any one of paragraphs G-K, wherein the sleep disorder condition represents at least one of a central apnea, an obstructive apneas, or a hypopnea.
[0107] M: The computer-implemented method of any one of paragraphs G-L, wherein: the expiratory pause condition represents whether a mean slope measure associated with the first breathing cycle falls below the first slope maximum, and the first slope maximum is determined based on a peak slope measure associated with the first breathing cycle.
[0108] N: The computer-implemented method of any one of paragraphs G-M, wherein: the expiratory pause condition is characterized by a first duration minimum, and the first duration minimum is determined based on a mean of cycle frequencies associated with a set of breathing cycles including the first breathing cycle and a predefined number of breathing cycles neighboring the first breathing cycle.
[0109] 0: The computer-implemented method of any one of paragraphs G-N, wherein the first respiratory data represents pressure nasal airflow (Pflow) data, and wherein determining the sleep disorder condition includes: determining sleep disorder condition based on the Pflow data and at least one of chest pressure data, abdominal pressure data, or oronasal thermal airflow data.
[0110] P: A computer-implemented method including: receiving input respiratory data; determining a cycle frequency associated with the input respiratory data; determining a first window size and or a second window size based on the cycle frequency; determining transformed respiratory data, wherein determining the transformed respiratory data includes: performing a drift removal operation on the input respiratory data based on the first window size, and performing a smoothing operation on the input respiratory data based on the second window size; determining that the transformed respiratory data represents a sleep disorder condition; and performing a responsive operation based on determining that the transformed respiratory data represents the sleep disorder condition.
[0111] Q: The computer-implemented method of paragraph P, wherein determining the cycle frequency includes: determining a first segment and a second segment associated with the input respiratory data; determining a first dominant cycle frequency associated with the first segment and a second dominant cycle frequency associated with the second segment; and determining the cycle frequency based on the first dominant cycle frequency and the second dominant cycle frequency.
[0112] R: The computer-implemented method of paragraph Q, wherein determining the first dominant cycle frequency includes: determining a power spectrum based on the first segment; detecting a first frequency in the first segment that is associated with a maximum power in the power spectrum; and determining the first dominant cycle frequency based on the first frequency.
[0113] S: The computer-implemented method of either paragraph Q or R, wherein determining the first window size includes: multiplying the cycle frequency by a first value, wherein the first value exceeds one.
[0114] T : The computer-implemented method of any one of paragraphs Q-S, wherein determining the second window size includes: multiplying the cycle frequency by a first value, wherein the first value falls below one.
[0115] While the example clauses described above are described with respect to one particular implementation, it should be understood that, in the context of this document, the content of the example clauses can also be implemented via a method, device, system, computer-readable medium, and / or another implementation. Additionally, any of examples A-T may be implemented alone or in combination with any other one or more of the examples A-T.
Claims
CLAIMSWhat is claimed is:
1. A system comprising: a pressure nasal airflow (Pflow) sensor configured to capture first Pflow data associated with an individual during a sleep period; an auxiliary sensor configured to capture first auxiliary data associated with the individual during the sleep period; and a computing system configured to: determine, based on the first Pflow data, an estimated cycle frequency; determine, based on the estimated cycle frequency, a first smoothing window size and a second smoothing window size; determining second Pflow data, wherein determining the second Pflow data comprises performing a first smoothing operation on the first Pflow data based on the first smoothing window size; determining second auxiliary data, wherein determining the second auxiliary data comprises performing a second smoothing operation on the first auxiliary data based on the second smoothing window size; detecting a first breathing cycle and a second breathing cycle in the second Pflow data; detecting a third breathing cycle and a fourth breathing cycle in the second auxiliary data; determining that the second breathing cycle satisfies a first artifact condition and fails to satisfy a first sigh condition; determining that the fourth breathing cycle satisfies a second artifact condition and fails to satisfy a second sigh condition; determining third Pflow data, wherein determining the third Pflow data comprises, based on determining that the second breathing cycle satisfies the first artifact condition and fails to satisfy the first sigh condition, removing the second breathing cycle from the second Pflow data; determining third auxiliary data, wherein determining the third auxiliary data comprises, based on determining that the fourth breathing cycle satisfies the second artifact condition and fails to satisfy the second sigh condition, removing the fourth breathing cycle from the second auxiliary data; detecting a fifth breathing cycle and a sixth breathing cycle in the third Pflow data; determining a classification for a transition segment in the third Pflow data between a peak of the fifth breathing cycle and a trough of the sixth breathing cycle; detecting, based on the classification and the third auxiliary data, a sleep disorder condition; and performing a responsive operation based on the sleep disorder condition.
2. The system of claim 1 , wherein: the classification represents whether the transition segment satisfies at least one of an expiratory pause condition or an expiratory ramp condition, the expiratory pause condition is characterized by a first slope maximum and a first duration threshold and the expiratory ramp condition is characterized by a second slope maximum and the first duration threshold, and the first slope maximum is lower than the second slope maximum.
3. The system of claim 2, wherein: the expiratory pause condition represents whether a mean slope measure associated with the fifth breathing cycle falls below the first slope maximum, and the first slope maximum is determined based on a peak slope measure associated with the fifth breathing cycle.
4. The system of claim 1 , wherein: the classification represents whether the transition segment satisfies an expiratory pause condition, the expiratory pause condition is characterized by a first duration minimum, and the first duration minimum is determined based on a mean of cycle frequencies associated with a set of breathing cycles comprising the fifth breathing cycle and a predefined number of breathing cycles neighboring the fifth breathing cycle.
5. The system of claim 1 , wherein the first smoothing window size exceeds the second smoothing window size.
6. A computer-implemented method comprising: receiving first respiratory data; determining, based on the first respiratory data, a first breathing cycle and a second breathing cycle; determining a classification for a transition segment in the first respiratory data between a peak of the first breathing cycle and a trough of the second breathing cycle, wherein: the classification represents whether the transition segment satisfies at least one of an expiratory pause condition or an expiratory ramp condition, the expiratory pause condition is characterized by a first slope maximum and the expiratory ramp condition is characterized by a second slope maximum, and the first slope maximum is lower than the second slope maximum; determining, based on the classification, that the first respiratory data represents a sleep disorder condition; and performing a responsive operation based on determining that the first respiratory data represents the sleep disorder condition.
7. The computer-implemented method of claim 6, wherein receiving the first respiratory data comprises: receiving input respiratory data; determining a cycle frequency associated with the input respiratory data; determining a first window size and a second window size based on the cycle frequency; and determining the first respiratory data, wherein determining the first respiratory data comprises: performing a drift removal operation on the input respiratory data based on the first window size, and performing a smoothing operation on the input respiratory data based on the second window size.
8. The computer-implemented method of claim 7, wherein determining the cycle frequency comprises: determining a first segment and a second segment associated with the input respiratory data; determining a first dominant cycle frequency associated with the first segment and a second dominant cycle frequency associated with the second segment; and determining the cycle frequency based on the first dominant cycle frequency and the second dominant cycle frequency.
9. The computer-implemented method of claim 7, wherein receiving the first respiratory data comprises: receiving input respiratory data; detecting that the input respiratory data comprises a third breathing cycle and a fourth breathing cycle; determining that the third breathing cycle satisfies an artifact condition; determining that the fourth breathing cycle satisfies a sigh condition, wherein determining that the fourth breathing cycle satisfies the sigh condition comprises: determining that a first amplitude measure associated with the fourth breathing cycle exceeds an amplitude threshold, determining a first count associated with a first set of local maxima associated with the fourth breathing cycle; determining that the first count falls below a first count threshold, wherein the first count threshold is determined based on a fifth breathing cycle that neighbors the fourth breathing cycle; and determining the first respiratory data, wherein determining the first respiratory data comprises: based at least in part on determining that the third breathing cycle satisfies the artifact condition, removing the third breathing cycle from the input respiratory data, and based at least in part on determining that the fourth breathing cycle satisfies the sigh condition, refraining from removal of the fourth breathing cycle from the input respiratory data.
10. The computer-implemented method of claim 7, wherein: the first respiratory data represents pressure nasal airflow (Pflow) data; the first breathing cycle is determined based on a zero-crossing point represented by the Pflow data.11 . The computer-implemented method of claim 7, wherein: the first respiratory data represents at least one of chest pressure data, abdominal pressure data, or oronasal thermal airflow data; and the first breathing cycle is determined based on a segment between a trough and a subsequent peak.
12. The computer-implemented method of claim 7, wherein the sleep disorder condition represents at least one of a central apnea, an obstructive apneas, or a hypopnea.
13. The computer-implemented method of claim 7, wherein: the expiratory pause condition represents whether a mean slope measure associated with the first breathing cycle falls below the first slope maximum, and the first slope maximum is determined based on a peak slope measure associated with the first breathing cycle.
14. The computer-implemented method of claim 7, wherein: the expiratory pause condition is characterized by a first duration minimum, and the first duration minimum is determined based on a mean of cycle frequencies associated with a set of breathing cycles comprising the first breathing cycle and a predefined number of breathing cycles neighboring the first breathing cycle.
15. The computer-implemented method of claim 7, wherein the first respiratory data represents pressure nasal airflow (Pflow) data, and wherein determining the sleep disorder condition comprises: determining sleep disorder condition based on the Pflow data and at least one of chest pressure data, abdominal pressure data, or oronasal thermal airflow data.
16. A computer-implemented method comprising: receiving input respiratory data; determining a cycle frequency associated with the input respiratory data; determining a first window size and or a second window size based on the cycle frequency; determining transformed respiratory data, wherein determining the transformed respiratory data comprises: performing a drift removal operation on the input respiratory data based on the first window size, and performing a smoothing operation on the input respiratory data based on the second window size; determining that the transformed respiratory data represents a sleep disorder condition; and performing a responsive operation based on determining that the transformed respiratory data represents the sleep disorder condition.
17. The computer-implemented method of claim 16, wherein determining the cycle frequency comprises: determining a first segment and a second segment associated with the input respiratory data; determining a first dominant cycle frequency associated with the first segment and a second dominant cycle frequency associated with the second segment; and determining the cycle frequency based on the first dominant cycle frequency and the second dominant cycle frequency.
18. The computer-implemented method of claim 17, wherein determining the first dominant cycle frequency comprises: determining a power spectrum based on the first segment; detecting a first frequency in the first segment that is associated with a maximum power in the power spectrum; and determining the first dominant cycle frequency based on the first frequency.
19. The computer-implemented method of claim 17, wherein determining the first window size comprises: multiplying the cycle frequency by a first value, wherein the first value exceeds one.
20. The computer-implemented method of claim 17, wherein determining the second window size comprises: multiplying the cycle frequency by a first value, wherein the first value falls below one.
Citation Information
Patent Citations
Stimulation device for sleep apnea prevention, detection and treatment
US20030153953A1
Detection of sleep apnea using respiratory signals
US20190150788A1
Breath classification systems and methods
US20220095931A1
Passive Breathing-Rate Determination
US20230380774A1
Sleep pattern breathing detection
US20240065619A1
Cited By
Respiratory signal processing method and system
CN121598174A