Numerous methods have been devised for the treatment and prevention of atrial fibrillation and other circulatory conditions. In one instance, electrocardiograms are used to analyze electrical impulses to make these determinations. Over treatment and under treatment of these conditions based on electrocardiograms can lead to additional medical complications or unanswered medical needs. Improvements to these determinations may be inefficient when performed on computing devices, preventing real-time or near real-time administration of treatment and analysis.
The present disclosure relates to the treatment and analysis of heart and other circulatory conditions. It is to be understood that both the following general description and the following detailed description provide only examples and are not restrictive.
Disclosed is a method. The method may include receiving a photoplethysmographic signal based on a photoplethysmographic sensor. The method may include determining an anomaly of the photoplethysmographic signal relative to a normal sinus rhythm according to a time-frequency representation of the photoplethysmographic signal having a first frequency component. In an example, the first frequency component may have energies within a first range of frequencies.
Also disclosed is an instrument. The instrument may include a photoplethysmographic sensor mounted on the instrument. The instrument may include an accelerometer mounted on the instrument. The instrument may include a processor operable to receive a photoplethysmographic signal based on the photoplethysmographic sensor and an acceleration signal based on the accelerometer and determine an anomaly of the photoplethysmographic signal relative to a normal sinus rhythm, the anomaly determined according to the photoplethysmographic signal and the acceleration signal.
A first example may include a computer-implemented method for estimating heart rate may. The method may include dynamically employing different peak detection methods, as a function of different arrhythmias present in a photoplethysmographic (PPG) signal, to detect peaks in the PPG signal using a combination of the different peak detection methods. The method may include estimating a heart rate based on the peaks detected by the combination. The method may include reporting the heart rate estimated.
The method may further comprise employing an initial peak detection method configured to differentiate a normal sinus rhythm (NSR) from an atrial fibrillation (AF) rhythm to detect an AF rhythm in the PPG signal.
The different peak detection methods may include a peak correction method, the peak correction method including separating fast from normal heart rate AF using a supervised classifier and a threshold value. In an event, the initial peak detection method determines that the AF rhythm is present, the peak correction method may be employed.
In an event, the initial peak detection method determines that the AF rhythm is not present, the method may further include employing a differentiator-adaptive threshold peak detection (DATPD) method.
The different peak detection methods may include a premature atrial contraction (PAC) and premature ventricular contraction (PVC) detection method. The different peak detection may include a heart rate correction method. In an event, the initial peak detection method determines either the NSR or AF rhythm to be present in the PPG signal, the PAC/PVC detection and heart rate correction methods may be employed.
The method may include detecting motion or noise artifacts in a photoplethysmographic (PPG) signal. The method may include separating corrupted PPG data segments from non-corrupted PPG data segments of a plurality of PPG segments of the PPG signal. The separation may be based on the detecting. The corrupted PPG data segments may represent portions of the PPG signal corrupted by the noise or motion artifacts. The features of the non-corrupted PPG data segments may be computed. The non-corrupted PPG data segments may be classified as being associated with an AF rhythm or a normal sinus rhythm as a function of the features computed.
As an example, the detection may include transforming the plurality of PPG segments from a time domain to a frequency domain. The detection may be function of a motion signal and time-frequency spectra (TFS) of the plurality of PPG segments transformed.
A root mean square of successive differences and entropy from beat-to-beat intervals of the non-corrupted PPG segments of the PPG signal may be computed. Classification may include employing a combination of the root mean square of successive differences and entropy computed to distinguish the AF rhythm from the normal sinus rhythm.
The features computed may include time instances, in a frequency domain, of (i) energy of an initial two dominant frequency components of the non-corrupted PPG in a frequency range of the frequency domain and (ii) energy of remaining frequency components in the frequency range.
The method may further comprise identifying premature atrial contraction (PAC) and premature ventricular contraction (PVC) patterns in the non-corrupted PPG segments of the PPG signal and the classifying may be a function of the patterns identified.
In order to provide understanding techniques described, the figures provide non-limiting examples in accordance with one or more implementations of the present disclosure, in which:
It is understood that when combinations, subsets, interactions, groups, etc. of components are described that, while specific reference of each various individual and collective combinations and permutations of these may not be explicitly described, each is specifically contemplated and described herein. This applies to all parts of this application including, but not limited to, steps in described methods. Thus, if there are a variety of additional steps that may be performed it is understood that each of these additional steps may be performed with any specific configuration or combination of configurations of the described methods.
As will be appreciated by one skilled in the art, hardware, software, or a combination of software and hardware may be implemented. Furthermore, a computer program product on a computer-readable storage medium (e.g., non-transitory) having processor-executable instructions (e.g., computer software) embodied in the storage medium. Any suitable computer-readable storage medium may be utilized including hard disks, CD-ROMs, optical storage devices, magnetic storage devices, memresistors, Non-Volatile Random Access Memory (NVRAM), flash memory, or a combination thereof.
Throughout this application reference is made to block diagrams and flowcharts. It will be understood that each block of the block diagrams and flowcharts, and combinations of blocks in the block diagrams and flowcharts, respectively, may be implemented by processor-executable instructions. These processor-executable instructions may be loaded onto a special purpose computer or other programmable data processing instrument to produce a machine, such that the processor-executable instructions which execute on the computer or other programmable data processing instrument create a device for implementing the functions specified in the flowchart block or blocks.
These processor-executable instructions may also be stored in a computer-readable memory or a computer-readable medium that may direct a computer or other programmable data processing instrument to function in a particular manner, such that the processor-executable instructions stored in the computer-readable memory produce an article of manufacture including processor-executable instructions for implementing the function specified in the flowchart block or blocks. The processor-executable instructions may also be loaded onto a computer or other programmable data processing instrument to cause a series of operational steps to be performed on the computer or other programmable instrument to produce a computer-implemented process such that the processor-executable instructions that execute on the computer or other programmable instrument provide steps for implementing the functions specified in the flowchart block or blocks.
Blocks of the block diagrams and flowcharts support combinations of devices for performing the specified functions, combinations of steps for performing the specified functions and program instruction means for performing the specified functions. It will also be understood that each block of the block diagrams and flowcharts, and combinations of blocks in the block diagrams and flowcharts, may be implemented by special purpose hardware-based computer systems that perform the specified functions or steps, or combinations of special purpose hardware and computer instructions.
Methods and systems are described for using a machine learning classifier(s) for detection and classification of objects. Machine learning (ML) is a subfield of computer science that gives computers the ability to learn through training without being explicitly programmed. Machine learning methods include, but are not limited to, deep-learning techniques, naïve Bayes classifiers, support vector machines, decision trees, neural networks, and the like.
The method steps recited throughout this disclosure may be combined, omitted, rearranged, or otherwise reorganized with any of the figures presented herein and are not intend to be limited to the four corners of each sheet presented.
Photoplethysmographic (PPG) sensors may be used to convey information from smart watches and other devices to determine heartrate, blood oxygenation, blood sugar, and other information. Light-emitting diodes can be mounted on smart watches and other devices to generate PPG signals and data. As discussed throughout this disclosure, PPG signals can be used to detect abnormalities, or an anomaly from a normal sinus rhythm, in the PPG signal for indication and treatment by medical professionals. As an example, atrial fibrillation is an irregular and often rapid heart rate that occurs when the two upper heart chambers experience chaotic electrical signals, which commonly causes poor blood flow. Consequences associated with untreated atrial fibrillation can be dire. For instance, blood clots, stroke, and heart failure are all complications of atrial fibrillation. Overtreatment of atrial fibrillation due to false positives can also lead to additional complications. In such a way, it is important to reduce predictive errors associated with PPG sensors to ensure proper treatment is administered.
Additionally, improvements to the overtreatment and undertreatment of these conditions may be inefficient, especially when used in conjunction with wearables and other devices that have processing and power constraints. As such, an improvement to the efficiency or operation of these systems that improves accuracy and reduces the overtreatment and undertreatment of these conditions is disclosed.
A patient with atrial fibrillation basal heart rate can be either within a normal normal range or fast. The detection of a heart rate with a normal sinus rhythm may noticeably different from a heart rate with atrial fibrillation leading to additional false positives and negatives. Poor signal-to-noise ratios of the PPG signal may further compound detection of heart rates and atrial fibrillation. As an example, skin complexion and blood perfusion within arteries can affect the quality of signals from the PPG sensor. Motion of the PPG sensor can further impact the determination of atrial fibrillation, especially when disguised as premature ventricular contractions (PVC) or premature atrial contractions (PAC). It is clinically important to distinguish between these different anomalies as a diverse set treatments may be prescribed and administered for atrial fibrillation subjects who present with fast heart rates but not for those with PVC or PAC. This diverse set of treatments may be administered based on confidence in the atrial fibrillation determination.
An example treatment may include electrical cardioversion where an electrical shock is delivered to the heart. As another, an anti-arrhythmic medication may be administered or prescribed. These treatments may cause side effects. As another treatment, a beta blocker, calcium channel blocker or digoxin may be administered. Notwithstanding the administration of catheter and surgical procedures that may include ablation and other treatments. As such, the accuracy of detection along with the proper treatment is paramount. This broad range of treatments, and others not mentioned, including anticoagulants, are contemplated throughout this disclosure, providing clinicians with a diverse selection of options to ward off disease. These options may be integrated and combined to improve patient outcomes.
The techniques disclosed herein improve the treatment of patients with a variety of conditions including but not limited to atrial fibrillation, rapid ventricle rates, premature atrial contraction, premature ventricle contraction, and other conditions that depart from normal sinus rhythms. As discussed herein, these conditions may or may not be specific but rather general categories of conditions that may require treatment. Additionally, a normal sinus rhythm may not be specific but rather a general category of conditions that do not require treatment.
The techniques disclosed herein may be implemented on a computing device in a way that improves the efficiency of its operation. As an example, the methods, instructions, and steps disclosed herein may improve the functioning of a computing device and also reduce error rates associated with detecting these conditions accurately. These reduced errors can improve the resulting administration of treatment by practitioners or by instruments.
Referring to
The instrument 100 may include a display 102 for providing information to patients and staff. As an example, the display 102 may include an indication bar 104 to provide indications related to raw sensory data, determined patient conditions, instrument status, or combinations thereof. The display 102 may include a graphical portion 106 configured to output electrocardiogram or PPG signals. The signals may be outputted in real-time or pseudo real-time.
In
The instrument 100 may be powered internally or externally. As an example, the instrument 100 may be powered by an internal battery 114. The internal battery 114 may be directly or indirectly connected to power the network circuitry 112, the processor 108, the memory 110, and other components associated with the instrument 100. The processor 108 may be configured to execute treatment or treatment plans based on PPG signals. As an example, the processor 108 may be associated with defibrillation circuitry 116 or other circuitry (e.g., pacemaker) configured to the treat a patient on command.
The processor 108 may be configured to communicate with or operate a PPG sensor 120. Various sensory configurations are contemplated by this disclosure. As an example, the processor 108 may be configured to send electrical signals to a light emitting diode (LED) 122. The LED 122 may emit photons or light energy to the patient. A light sensor 124 may receive the reflected photons or light energy and generate an electrical PPG signal 126 received by the processor 108. In an example, the processor 108 is operable to execute instructions to detect anomalies within the PPG signal 126 to operate the defibrillation circuitry 116 or other circuitry to treat the patient according to the received PPG signal 126. The PPG signal may be stored as a window 128. The window 128 may be 30 seconds. Other window sizes are contemplated by this disclosure. The window or segment may be sliding, that is, the oldest segment of the window is dropped according to time increment and the newest segment of the PPG signal 126 is added according to time increment. As an example, a 30-second window may contain data broken into various increments or sampling rates (e.g., 10 ms). The last 10 ms of data is dropped every time a new 10 ms of data is received. The processor may communicate with the PPG sensor 120 through various protocols including electrical signaling and digital communications.
The processor 108 may be configured to communicate with or operate an accelerometer 130 or other sensors. In an example, the accelerometer 130 provides an acceleration signal 132 to the processor 108. The acceleration signal 132 may be communicated with electrical signaling, digital communications, or combinations thereof. The acceleration signal 132 may indicate acceleration in more than one dimension. As one example, the acceleration signal 132 indicates three-dimensional components (e.g., x, y, z) of acceleration associated with the instrument 100 or the patient.
Referring to
In step 202, the noise detection may be performed to detect motion artifacts, noise, or other combinations within the PPG signal 126. Noise detection may include selection of clean segments of the PPG signal 126. As an example, noisy sections may be detected and cleaned, ignored, or discarded, as discussed herein.
In step 204, a first peak detection may be performed. As an example, the first detection of peaks may define the beats within the PPG signal 126. The first detection of peaks may be implemented with a waveform envelop peak detection (WEPD) method. Other methods are also contemplated.
In step 206, a first detection of atrial fibrillation may be determined. In one aspect, atrial fibrillation may be defined as an irregularly irregular heart rate. In other words, atrial fibrillation may be defined as a random sequence of heart beat intervals with increased beat-to-beat variability and complexity. Atrial fibrillation may be determined based on a sequence of data points taken from PPG signal 126. As an example, the data points may be defined over a thirty-second interval. As the methods described herein look for randomness and other indicators of atrial fibrillation, it should be appreciated that accurate peak intervals may be unnecessary.
In step 208, the PPG signal 126 is determined as corresponding to atrial fibrillation. In step 210, PAC and PVC determinations are performed on the PPG signal 126. The PAC and PVC detection in step 210 may be different for atrial fibrillation than compared with a signal detected to have a normal sinus rhythm. If PAC or PVC is detected the method may end. In step 212, a detection of the heart rate speed is detected. The detection may include detection of a rapid ventricle rate (RVR), or fast heart rate atrial fibrillation (FAF). In order to detect fast heart rates with atrial fibrillation, a trained classifier may be used. In some instances, the classifier is trained with a supervised process.
Based on the determination in step 212, a fast heart rate with atrial fibrillation may be determined in step 214 or a normal heart rate with atrial fibrillation in step 218. In step 216, the fast heart rate with atrial fibrillation is corrected to compensate for the fast heart rate detected in step 212. As an example, the local minima of interspersed heart rates may be missed through the preceding detection methods, fast heart beat correction in step 216 may serve to correct the heart rate errors to provide a proper indication of atrial fibrillation and an accurate heart rate. The corresponding information may be used in step 250 for treatment of the underlying disease as discussed herein.
Continuing with the non-atrial fibrillation PPG signal 126 in step 220, heart rate patterns may be detected using a differentiator-adaptive threshold peak detection algorithm. In such an instance, PAC or PVC detection is performed on the PPG signal 126 having non-atrial fibrillation characteristics. If PAC or PVC is detected as shown step 230, fast beat correction may be performed to add missed beats from the previous steps within the PPG signal 126. If a normal sinus rhythm is detected as shown in step 226, a heart rate correction may be performed to ensure that motion artifacts or noise artifacts are not providing incorrect heart rate determinations in step 228.
The treatment in step 250 may include performing operations based on the corrected heart rates and abnormal conditions detected. The method 200 may provide an indication of atrial fibrillation, with or without RVR, PAC, PVC, normal sinus rhythm, along with the detected heart rate. These factors may be used to determine and administer the proper treatment for the patient.
Referring to
In step 304, a moving average filter is applied to the PPG data. In this step or another, a bandpass filter may be applied with a passband. The passband may be 0.5 Hz to 5 Hz. As one example, the bandpass filter may be based on a fifth order zero phase elliptic filter. The bandpass filter may be applied to the window 128 of the PPG data. For example, the bandpass filter may be applied the PPG data according to the window 128.
The moving average filter may ensure the smoothness of the signal within the window 128. The moving average filter may be used to remove non-cardiac oscillations and spikes caused by motion artifacts or poor signal quality. The moving average filter may be implemented an equation (e.g., Equation 1).
where i=M, M+1, M+2 . . . N−M−1 with M=fs/10 for the first moving average process, and M=fs/9 for the remaining two times; a(j)=1, 2, 3 . . . N denotes the raw signal after bandpass filtering; and fs is the sampling rate.
In step 306, in between one of the smoothing iterations (e.g., before the final smoothing iteration), calculation of the first derivative of the filtered signal may performed to accentuate small fluctuations in the peak plateau portion of the PPG waveform in Equation 2:
c(i)=b(i+1)−b(i) (2)
In step 308, the window 128 may be normalized. The mean of c(i) is subtracted from c(i) and divided by the standard deviation of c(i). As indicated in Equation 3.
Step 308 may enable a waveform envelope calculation to remove false positive beats as described in this disclosure. Peak detection may be applied to the top portion 532 or bottom portion 534 of the window 128 of the PPG signal 126, as indicated in
In step 310 the window 128 may be screened by determining whether there are more than a quantity of peaks (e.g., 100) within the top portion 532 of the signal or the bottom portion 534 of the PPG signal 126. The top portion 532 may be defined above the mean 530 of the PPG signal 126 within the window, and the bottom portion may be defined below the average value of the PPG signal 126 within the window. If there are more than the quantity of peaks within the top portion of the signal or the bottom portion, the side with less than 100 peaks is selected. As one example, if the quantity of peaks of the top is disparate from the quantity of peaks on the bottom (e.g., greater than 10 peaks) then the side, top or bottom, of the window 128 with the fewest peaks is used. As an example,
In step 404, the quantity of beats, P, of the window 128 is determined along with the local maxima 512, p, of the segment, as shown in
In step 410, the processor 108 or another implement can determine whether the quantity of beats, P, associated with the local maxima 512 is greater than a quantity of peaks beyond a typical heart rate range. As an example, if a typical heart rate does not exceed 200 beats per minute, then the beats in a 30-second window should not exceed 100. The quantity of peaks may be set to 100. A similar quantity, but not necessarily the same, may be used with regard to the quantity of beats, Q, associated with the local minima 522. If the quantity of peaks, P or Q, is greater than the set quantity, the other side of the PPG signal 126 within the window 128 is used. For instance, if the quantity of beats, Q, associated with the local minima 522 is greater than the set quantity based on the typical heart rate range, the top portion 532 or upper side of the PPG signal 126 is used. Continuing with step 414 if P and Q are less than their respective set quantities, a determination of the absolute value of the difference between P and Q is determined and compared with a deadband quantity configured to determine whether P and Q are quantifiably different. If the absolute value of the difference is greater than the deadband quantity the top portion 532 or bottom portion 534 is selected by the lesser of the quantities P and Q in step 416. If P and Q are substantially similar, four types of amplitude gradients are calculated: |Δpeakp−1(p)|, |Δpeakp+1(p)|, |Δtroughq+1(q)|, and |Δtroughq−1(q)|. These amplitude gradients are based on the absolute amplitude changes between one sample before 510, 520 and one sample after 514, 524 the local maxima and local minima positions, respectively, where p=1, 2 . . . P and q=1, 2 . . . Q. The median of these indices is also calculated. In such a way, the sharper of the peaks may be calculated. As an example, in step 418 the median of |Δpeakp−1(p)| is compared to the median of Δtroughq−1(q).
If the median of |Δpeakp−1(p)| is less than the median of Δtroughq−1(q), the median of |Δpeakp+1(p)| is compared with the median of |Δtroughq+1(q)| in step 420. If the median of |Δpeakp+1(p)| is greater than the median of |Δtroughq+1(q)|, a mean analysis is used to determine the sharper of the peaks in step 424. Otherwise, the lower side of the PPG signal 126 is used.
If the median of |Δpeakp−1(p)| is greater than the median of Δtroughq−1(q), the median of |Δpeakp+1(p)| is compared with the median of |Δtroughq+1(q)| in step 422. If the median of |Δpeakp+1(p)| is less than the median of |Δtroughq+1(q)|, a mean analysis is used to determine the sharper of the peaks in step 424. Otherwise, the upper side of the PPG signal 126 is used.
In step 424, the median of the gradient values is not determinative. As such, the mean may be used as a tiebreaker. As an example, if the mean of the peak values is greater than the mean of the trough values the top portion of the PPG signal 126 is used, as shown in step 426. Otherwise, the bottom portion of the PPG signal 126 is used, as shown in step 428. The mean of the peak values and the mean of the trough values may be calculated according to Equations 4 and 5, respectively.
mean|peak|=median|Δpeakp−1(p)|+median|Δpeakp+1(p)| (4)
mean|trough|=median|Δtroughp−1(p)|+median|Δtroughp+1(p)| (5)
As such, referring back to step 310, if the top portion 532 of the PPG signal 126 is selected, the PPG signal 126 is inverted over the mean 530 and then the local minima 522 is estimated for the beats within the inverted top portion 532. As an example,
Step 314 of
In step 316, overlapped peaks of the PPG signal 126 may be eliminated. As an example similar to the removal of false positive beats in step 314, only the lowest amplitude peak, local maxima 512 is retained. As an example, a segment may have more than one peak. A calculation of local maxima 512 is calculated for each peak and the lowest peak is retained as the peak for that segment. A period (e.g., 0.3 seconds) may be selected to ensure that consecutive heartbeats are not too closely spaced. The period may be based on the refractory period of cardiac muscle for normal sinus rhythms. The resulting beats may be output to identify the estimated heart rate 564 in step 318.
Back to step 212, of
In
The plots 604, 606 may have an X-axis that represents the n+1 heart rate and the Y-axis representing the current heart rate. As another example, the Y-axis may represent the n−1 heart rate and the X-axis may represent the current heart rate. The centroid may be calculated by averaging the coordinates of all points plotted. In one example, the mean value of all distances of points plotted may be used separate the basal atrial fibrillation from the atrial fibrillation with RVR. The plots 600, 602 may have an X-axis that represents the n+1 heart rate difference between three consecutive heartbeats and the Y-axis representing the current heart rate difference between three consecutive heartbeats. As another example, the Y-axis may represent the n−1 heart rate difference between three consecutive heartbeats and the X-axis may represent the current heart rate difference between three consecutive heartbeats. The centroid may be calculated by averaging the coordinates of all points plotted. Although shown graphically for demonstration, the processor 108 may calculate the features without plotting, determining the feature values directly from the PPG signal 126 or derived PPG signals.
In
In step 216, for PPG signals 126 corresponding to atrial fibrillation with RVR, a fast beat correction may be implemented. This may necessitate the determination of additional peaks in the PPG signal 126 to address those that may have been missed in other steps. As shown in plots 600, 602, the heart rate difference points are separated into nine quadrants 620, 622, 624, 626, 628, 630, 632, 634, 636. Quadrant 624 represents a fast heartbeat scenario where a fast heartbeat is surrounded by two slow heartbeats, which is indicative of an atrial fibrillation with RVR. It is also possible for undetected heartbeats to occur with data points from the other eight quadrants 620, 622, 626, 628, 630, 632, 634, 636.
As an example shown in
Referring to
Such beats are detected fairly well as shown in step 204 but may incorrectly assign some of the beats. A FIR low-pass-differentiator filter with a transition band from 3.5 Hz to 8 Hz may be used to filter the PPG signal 126. This filtration may accentuate the rapid changes in the PPG signal 126 caused by motion and noise, which may lead to erroneous high amplitude peaks in the first derivative step 306 discussed herein. A few steps may be applied to improve peak detection for such a signal. As an example, variable frequency complex demodulation (VFCDM) may be applied to the signal. For example, a modulating frequency may not be fixed but varies as a function of time. For example, Equation 6.
x(t)=dc(t)+A(t)cos(2πf(τ)dτ+ϕ(t) (6)
Multiplying Equation 6 by e−j∫
z(t)=x(t)e−j∫
z(t)=−j∫0t2πf(τ)dτ+A(t)ejϕ(t)+A(t)e−j∫
If z(t) is filtered with an ideal low-pass filter with a cutoff frequency fc<f0, then the filtered signal zip (t) will be obtained with the instantaneous amplitude A(t), and instantaneous phase, ϕ(t). The instantaneous frequency is given by:
In the case of variable frequency, the center frequency, f0, is replaced with a variable frequency. We may first use a center frequency to estimate the instantaneous frequency within the arbitrarily set frequency band using Equation 9. It is reasonable to expect instantaneous frequencies that are changing, especially if the dynamics are highly time varying. An approach may be used that accounts for the possible time varying nature of the instantaneous frequency within the defined frequency bands to obtain a more precise measurement of instantaneous frequency. By changing the center frequency followed by using the variable frequency approach of Equations 6 and 9 along with a low-pass filter, the signal x(t) may be decomposed into the sinusoid modulations by complex demodulation according to:
x(t)=Σidi (10)
x(t)=dc(t)+ΣiAi(t)cos(2πf1(τ)dt+ϕ(t) (11)
The instantaneous frequency and amplitude of di can be calculated using the Hilbert transform. The time-frequency spectrum can be obtained by the calculation of the Hilbert transform of Equation 11 from time points for the obtained low-pass filtered frequency components, providing a high resolution time-frequency spectrum and accurate amplitude information. As such, a frequency components from a bandpass filtered PPG signal 126 in the frequency domain is shown in
An adaptive threshold may be applied to detect peaks. A refractory period of 300 ms and α=0.2. As an example,
With reference to
It may be necessary to correct for normal sinus rhythms with PAC or PVC. For example, highly deviated heartbeats are compared to either the previous or future heartbeats for examination. As an example, normal sinus rhythm heart beats are mostly confined within the quadrant 620 as there is not much different in heartbeats from one beat to the next. If there is any heartbeat outside quadrant 620 then the average heartbeat from neighboring heartbeats that are within quadrant 620. If all of the heartbeats are outside quadrant 620 then, the mean value of all heart beats within quadrant 620 may be used.
Referring to atrial fibrillation detection in step 206, false positives and false negatives can be pervasive on devices that are mobile, causing motion artifacts and noise. As an example, noise and motion artifacts may cause the PPG signal 126 to become corrupted. As discussed herein, the corrupted windows 128, also referred to as portions of the PPG signal 126, that are corrupted may be correct, ignored, or discarded. As an example, the corrupted windows 128 may be identified and ignored by the atrial fibrillation classification.
As an example, preprocessing of the PPG signal 126 and the acceleration signal 132. As an example, the PPG signal 126 and the acceleration signal 132 may be organized into a window 128. A sixth order Butterworth bandpass filter may be applied. The bandpass filter may have cutoff frequencies of 0.5 and 20 Hz. The PPG signal 126 and acceleration signal 132 may be downsampled. The PPG signal 126 may be downsampled to 50 Hz. The acceleration signal 132 may be downsampled to 30 Hz. The PPG signal 126 and the acceleration signal may be converted to have a set mean (e.g., zero) and unity variance. For example, the acceleration signal 132 may be augmented based on a three-directional axis according to Equation 12.
ACC=√{square root over (ax2+ay2+az2)} (12)
When there is extensive movement, the PPG signal 126 or adjusted PPG signal may be corrupted, as indicated by the acceleration signal 132, as adjusted, or the noise within the PPG signal 126. In
In
In some circumstances, including that shown in
In
As shown, the time-frequency spectrum 1502 has frequency components 1504, 1506 identified between the bands discussed above. Because of the noise 1508 interjected in signal 126 the time-frequency spectrum 1502 includes outside of the bands discussed above. As an example, the noise is represented in areas 1510, 1512. Instructions may be executed by the processor 108 to detect these energies that are less than frequencies of the primary frequency component 1504, greater than frequencies of the primary frequency component 1504 and less than frequencies of the secondary frequency component 1506, greater than frequencies of the secondary frequency component 1506, or combinations thereof. As such, noise 1508 may be detected within the signal 126 to determine whether the window 128 shown is clean or noisy.
As an example, the quantified energy within the frequency components is shown in
To quantify this property, from the time-frequency spectra 1402 in the heart rate range, counts of these energy quantities may be determined, which may be used to distinguish PPG signals 126 that are clean from PPG signals 126 that are noisy. As indicated in Equations 13 and 14, the presence of these energies may be quantified.
Q
1=count of energy of the first two dominant frequency components (13)
Q
2=count of energy of the remaining frequency components (14)
A clean signal may be indicated when Q1 is substantially high and Q2 is substantially low. As an example, the time instances of Q1 and Q2 may be counted according to a count period. If energy over an energy value is present in the first frequency component 1504, the second frequency component 1506, or a combination of the first frequency component 1504 and the second frequency component 1506, Q1 may be incremented by one or more. The energy value may be different for the first frequency component 1504 and the second frequency component 1506. If energy over another energy value is present, which may be similar or different from the energy value, in the other frequency component as shown in curve 1606, Q2 may be incremented by one or more. As such, these occurrences may be tabulated over the entire window 128. If Q1 is greater than a tabulation quantity associated with the first frequency component 1504 and the second frequency component 1506 and Q2 is less than a tabulation quantity associated with the other frequency components, the window 128 may be determined to be clean. Otherwise, the window 128 may be determined to be noisy.
As an example, a window 128 may be determined noisy if the acceleration signal 132 is indicative of corruption, based on the value indicative of corruption 1306. The window 128 may also be determined noisy based on the first frequency component 1504, the second frequency component 1506, and the other frequency components. In such a way, atrial fibrillation may be detected on clean signals that are verified according to the acceleration signal 132, the frequency components of the PPG signal 126, and combinations thereof.
In
A window 128 that has been determined clean, or another window, atrial fibrillation detection may be performed. Atrial fibrillation may be defined as an irregularly irregular heart rate. As shown in
A root mean square of successive differences (RMSSD) calculation may be performed along with sample entropy from the pulse intervals corresponding to the window 128. As such, the beat-to-beat variability may be determined by the RMSSD and high variability may be associated with atrial fibrillation, as shown in Equation 15.
RMSSD=√{square root over (Σt=1l=1(x(i+1)−x(i))2)} (15)
where x(i) is a sequence of peak-to-peak or beat-to-beat, intervals of length l. The RMSSD may be divided by the mean of the peak-to-peak time series as it may be more consistent than using RMSSD of the time series alone because the variability and mean of heart rate values differ from subject to subject and segment to segment. Sample entropy, SampEn, may also be calculated, and used, to determine atrial fibrillation.
In
Combination=w*RMSSD+(1−w)*SampEn (16)
where w is a weighting factor between RMSSD and SampEn. If the calculated weighted combination of RMSSD and SampEn is greater than a combination value (e.g., 0.94) atrial fibrillation is detected and treatment can be administered. Secondary screening of atrial fibrillation may be performed as is discussed herein.
In
PAC and PVC are generally benign cardiac arrhythmias that occur in some healthy subjects; their impact on overall cardiovascular well-being is still unclear. As irregular beats can be interspersed in PPG signals 126 having PAC and PVC characteristics, this can lead to false positives of atrial fibrillation. As an example, PAC and PVC detection may be performed on both PPG data obtained from the fingertip and PPG data obtained from the wrist. PPG signals 126 that are obtained from the wrist may be more difficult to distinguish because the skin is thicker and motion artifacts on the wrist may be less severe than motion artifacts from the fingertip.
Referring to
In
In
To distinguish between atrial fibrillation, PVC, PAC, and NSR a lookup table may be used. An example of quadrants associated with the three consecutive heartbeats is shown in Table 1.
An example of PVC and PAC patters is shown in Table 2.
In
In
PAC and PVC may be determined according to ΔHRn-1 and ΔHRn as trigeminy PAC or PVC when patterns are in quadrants 622, 624, 626, defining a “1-2-3” pattern. Bigeminy PAC or PVC may be determined according to ΔHRn-1 and ΔHRn having points in quadrants 624, 628, defining a “2-4” pattern. Additionally, a fast heart rate PAC and PVC may be determined when patters are in quadrants 628, 630, 632, defining a “6-4-5” pattern. As an example, three adjacent heart rates may be used to determine an initial point on plot 2460. This point may be located in quadrant 632 (e.g., [−40 ΔHRn, 5 ΔHRn-1]). The next adjacent heart rates, which may include two heart rates from the previous ΔHRn-1 and ΔHRn calculation, may be used to determine another point located in quadrant 628. And another set of adjacent heart rates, which may include one of the heart rates from the first ΔHRn-1 and ΔHRn calculation, may be used to determine the last point located in quadrant 630. A determination of atrial fibrillation may be improved using these indications.
In
In
In
In
In
In
A standard deviation, std123, of θ123 over the window 128 is calculated along with std645, of θ645 over the window 128 to sort out similar vectors so that those PAC and PVC occurrences that are between 2-4 or quadrants 624, 628 are identified and reclassified as PAC and PVC. That is, if the standard deviation of θ123 and θ645 are less than a first standard deviation value (e.g., 10) and a second standard deviation value (e.g., 10) then the window is flagged as PAC or PVC. The first standard deviation value and the second standard deviation value may be the same value or different values. As an example, a determination of counts n123 and n645 over a collective reference value and over respective individual reference values, the standard deviation of θ123 and θ645 is used. Otherwise, the std645 and std123 is set to zero based on the respective individual reference values. If the standard deviation of θ123 and θ645 are less than a first standard deviation value (e.g., 10) and a second standard deviation value (e.g., 10) then the window is flagged as PAC or PVC. Otherwise, rzero, the ratio of points found with quadrant 620 with respect to the quantity of points in any other quadrant 622, 624, 626, 628, 630, 632, 634, 636 is used to identify a NSR or an atrial fibrillation according to a atrial fibrillation reference value (e.g., 0.13, 0.5) because NSR rhythms are typically contained within quadrant 620 and atrial fibrillation may be more dispersed.
The collective reference value is used because PAC and PVC often occur more than once and this can improve accuracy as either random motion artifacts or noise can lead to the kite patterns disclosed.
Referring to
Of note, pseudocode 2900, 3000 takes into account 2-4 vectors for windows 128 that are predicted as a normal sinus rhythm related with regard to steps 2404, 224. In a similar way, standard deviation, std123, of θ123 over the window 128 is calculated along with std645, of θ645 over the window 128 to sort out similar vectors so that those PAC and PVC occurrences that are between 2-4 or quadrants 624, 628 are identified and reclassified as PAC and PVC. Differently, if both the std123 and std645 are less than a first standard deviation value (e.g., 10) and a second standard deviation value (e.g., 10), respectively, then the window is flagged as PAC or PVC; otherwise the window 128 is classified as atrial fibrillation, bearing in mind that previous classifications may have designated the window 128 as normal sinus rhythm or non-atrial fibrillation.
For determination between NSR and atrial fibrillation within the pseudocode 2900, 3000, two ratios, rzero and routside may be used. As an example, rzero may be the ratio of points that fall within quadrant 620 and the entire number of data points. routside may be the total number of points that fall outside of the quadrants 620, 622, 626, 630, 632, if rzero an routside may then be compared with respective ratio reference values to determine whether the window 128 is to be classified as NSR or atrial fibrillation.
1-2-3 patterns and 6-4-5 patterns may be interrupted by bigeminy or trigemini beats, which can result in 6-4-2-4-5 quadrant beats or 6-4-0-5 quadrant beats. As such, these sequences may be fragmented into individual vectors (e.g., 1-2, 2-3, 6-4, 4-5) and the standard deviations of the corresponding vector pairs (e.g., 1-2 and 2-3, 6-4 and 4-5) may be used to determine if the window 128 contains PAC or PVC, as indicated by pseudocode 3000. Accordingly, pseudocode 2900, 3000 may provide distinguished results indicative of windows 128 corresponding to atrial fibrillation in step 2218, PAC and PVC in step 2308, and NSR in step 2310.
In step 2308 of
It should be appreciated that normal sinus rhythm (NSR) as discussed herein refers to PPG signals that are not either PAC, PVC, or atrial fibrillation. This application contemplates that NSR may not always be entirely normal or non-indicative of other anomalies not discussed herein.
In
Although methods of atrial fibrillation, PAC, PVC, and NSR have been discussed, those techniques, may be replaced, improved, or otherwise augmented with feature-based classification for noise detection and denoising techniques. As an example, temporal, morphological, and statistical features may be extracted in time and time-frequency domains. Skewness (Skew), kurtosis (Kurt), pNN40 (percentage of successive beat intervals that differ by more than 40 msec), pNN70, and sample entropy (SampEn) of the PPG signal 126 or windows 128 may be calculated. The RMSSD may be extracted from the intervals between the detected peaks, also known as interbeat intervals (IBI). Further, by transforming the signals from the original time domain to the time-frequency domain, it is possible to observe the variability in the spectral power of the different frequencies over time. In one or more aspects, an applied wavelet transform for each PPG beat after the preprocessing and segmentation procedures to perform time-frequency transformation, in which the approximation and detail coefficients may be obtained. Feature extraction may be obtained by applying wavelet transform on PPG beats: standard deviation (W-STD), skewness (W-Skew), kurtosis (W-Kurt), and average of sub-band energy (W-MSubEn) of the transformed PPG beats.
In
To extract the template-based features from each window 128 or portion thereof, a congruous PPG signal 126 may be necessary over the window 128. Such a window 128 or portion thereof may be used to extract the template baseline values and construct the template beat. An adaptive framework may help to select the template segment, which may also be compatible with the subsequent windows 128 or portions thereof. As an example, a clean PPG segment from the PPG signal 126 may be selected as a template. The PPG segment may be updated contemporaneously to indicate different dynamic characteristics during time. And, the template may be updated for predefined number of segments.
Selecting a clean segment may be achieved through various methods, or combinations thereof, discussed here in. As an example, PPG signal 126 may be scanned for peaks, and number of such peaks may be more than 80% of the length (in sec.) of the window 128 or alternative portion thereof. Amplitudes of the peaks over clean segment may be assumed constant or substantially constant. As such, peak amplitude dispersion may be used as an index to identify the signal quality. Normalized dispersion of the peak amplitudes may be calculated according to Equation 16.
where s and μ are the standard deviation and mean of the peak amplitudes within the window 128, respectively. D, referred to as the Coefficient of Variation (CV) or relative standard deviation (RSD), can indicated the extent of variability in relation to the mean of the peak amplitudes. In a PPG signal, such as PPG signal 126, the CV may be calculated to both the positive and negative peaks according to Equation 17.
D
comb
=e
−(|D
|+|D
|) (17)
where D1 and D2 are CV values for positive and negative peaks.
The first window 128 of the PPG signal 126 may not be determined as clean. As such, a search to find the first segment may be performed to meet the clean segment criteria. Having the clean segment as the template, the features may be extracted from the previous and subsequent segments, until the next PPG segment satisfies the clean segment criteria to update the template.
Baseline values may be extracted from the uncovered clean template based on Equations 18 and 19.
where Ap−p
where Ai-Temp. is the absolute value of amplitude change from a negative peak to next positive peak, or a positive peak to the next negative peak, in the template and M is the sum of negative and positive peak numbers in the template.
Using these baselines, features may be extracted as the normalized pulse duration, normalized peak-to-peak amplitude change, and normalized negative to positive, or positive to negative, peak amplitude change for each beat of the PPG signal 126. The normalized pulse duration of a beat, ∇Tp−p
where Tp−p
To obtain ∇Tp−p
where Ap−p
∇A can be considered the normalized negative to positive, or positive to negative, peak change and may be determined according to Equation 22.
where Ai and ∇ABaseline are absolute value of amplitude change from a negative peak to next positive peak, or positive peak to next negative peak, for a beat and the template, respectively.
The similarity or dissimilarity may be measured between an averaged beat of the template and each PPG beat as a statistical feature. As an example, dynamic time warping (DTW) may be used to correct the non-stationary time lags between two beats. DTW is a method to calculate the optimal matching between two sequences. All beat waveforms in the PPG segment are normalized into range (e.g., [0 1]) and then, DTW is applied to provide alignment between each normalized beat (B) and average template waveform (T). To extract the similarities, Kullback-Leibler Divergence (KL) divergence is applied to measure the similarity of the aligned waveforms. KL divergence, or relative entropy can quantify how much one probability distribution differs from another distribution.
If P and Q are the n-dimensional probability distribution of discrete random variables, the KL divergence may be determined as shown in Equation 23.
KL divergence may then be used to extract dissimilarity or a difference between aligned waveforms B and T as a feature represented by D(B,T).
The resulting feature set may contain a total of 134 features, which may be divided into three categories as shown in Table 3. To identify the best feature subset, a comprehensive feature set is desired, and the likelihood of selecting the optimum feature subset when there is a large number of features in the feature set. As such, different types of features may be extracted to constitute the initial feature set.
where cA4, cD2, cD3, and cD4 represent the approximation coefficients scale 4, detail coefficients scale 2, detail coefficients scale 3, and detail coefficients scale 4, respectively.
As the features ∇Tp−p
Once initial features are extracted from the PPG signals, feature selection may be performed to specify which features are important for noise detection. Two schemes may be used. As an example, filter schemes, the criterion function, may evaluates candidate subsets that are independent of learning algorithms. As another, wrapper schemes may use the performance measure of a classifier model based on the testing results of the candidate subsets to assess the quality of selected features. Embedded methods may use an intrinsic model building measure during learning to embed feature selection into the classification model. A hybrid filter-wrapper feature selection method based on IWSSr algorithm may be used that incorporates a particular classifier.
Referring to
An example efficiency improvement may include removing features of the subset selection that do not improve accuracy. As an example, a backward search may be performed to revise the subset selection. As such, as with other techniques disclosed herein, higher computational efficiency is achieved during model training and generalization error is reduced by eliminating the irrelevant features. Another improving technique may include using minimum redundancy and maximum relevance criteria to remove redundant features and rank the features according to relevance before the selection method 3300 commences, which may be performed in step 3606, 3706 with reference to
As an example, after application of the MRMR method, one relevant feature is added iteratively to the subset selection to create a selected subset of features, which may include replacement of existing features, which may be performed in steps 3608, 3708 with reference to
It should be appreciated that bootstrap sampling may be performed, which may be performed in steps 3614 with reference to
With reference to
For the encoder, the PPG signal x∈[0,1]d is mapped to a hidden representation y∈[0,1]d′ using a deterministic mapping in Equation 24.
y=f
θ(x)=s(Wx+b) (24)
where s can be any nonlinear function, W is a d′×d weight matrix, b is a bias vector, and θ={W, b}. Using similar mapping, y is then decoded into a reconstruction z of Equation 25, which is the same shape as x.
z=g
θ′(y)=s(W′y+b′) (25)
where W′ is a weight matrix, b′ is a bias vector, and θ′={W′, b′}.
The parameters of this model are optimized to minimize the reconstruction error, which can be evaluated using various loss functions (e.g., squared error, cross-entropy shown in Equation 26).
The autoencoder 3400 may be trained to reconstruct a signal as noise-free as possible, given the PPG signal 126 as the input and less noisy version as the output. The autoencoder 3400 may have 24 layers and 4 skip connections 3406.
The PPG signal 126 may be transformed into the time-frequency domain using Short-time Fourier transform (STFT) or other methods disclosed herein. Then, the real and imaginary parts of the time-frequency coefficients are obtained and applied as an autoencoder input. The encoder 3402 contains a series of layers, where each individual layer is composed of a convolutional layer, Rectified Linear Unit (ReLU) as activation function, and a batch normalization layer.
The decoder 3404 may be symmetric (in size and operation) to the encoder 3402. Convolutional and transposed convolutional layers may be used in the decoder 3404 to up-sample the feature maps and reconstruct the details. In addition, skip connections 3406 from convolutional layers to their corresponding transposed convolutional layer may be used to enhance the signal recovery performance. Skip connections help to provide the structural details and improve the robustness of the network. The final layer of the model may be a regression model or another model, which generates the output with the real and imaginary parts of the time-frequency coefficients of denoised signal. The denoised PPG signal may be provided by transforming the output into the time domain using the inverse STFT.
In
In
While the methods and systems have been described in connection with preferred embodiments and specific examples, it is not intended that the scope be limited to the particular embodiments set forth, as the embodiments herein are intended in all respects to be illustrative rather than restrictive.
Unless otherwise expressly stated, it is in no way intended that any method set forth herein be construed as requiring that its steps be performed in a specific order. Accordingly, where a method claim does not actually recite an order to be followed by its steps or it is not otherwise specifically stated in the claims or descriptions that the steps are to be limited to a specific order, it is in no way intended that an order be inferred, in any respect. This holds for any possible non-express basis for interpretation, including: matters of logic with respect to arrangement of steps or operational flow; plain meaning derived from grammatical organization or punctuation; the number or type of embodiments described in the specification.
It will be apparent to those skilled in the art that various modifications and variations can be made without departing from the scope or spirit. Other embodiments will be apparent to those skilled in the art from consideration of the specification and practice disclosed herein. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit being indicated by the following claims.
This application claims the benefit of U.S. Provisional Application No. 63/046,670, filed Jun. 30, 2020, U.S. Provisional Application No. 63/046,668, filed Jun. 30, 2020, and U.S. Provisional Application No. 63/046,664, filed Jun. 30, 2020, which are incorporated herein by reference in their entirety.
This invention was made with government support under R01HL137734-01 from National Institutes of Health and also under 1522087 from National Science Foundation. The government has certain rights in the invention.
Number | Date | Country | |
---|---|---|---|
63046670 | Jun 2020 | US | |
63046668 | Jun 2020 | US | |
63046664 | Jun 2020 | US |