ELECTROCARDIOGRAM SIGNAL DETECTION
20200138316 ยท 2020-05-07
Inventors
Cpc classification
A61B5/02438
HUMAN NECESSITIES
A61B5/352
HUMAN NECESSITIES
A61B5/364
HUMAN NECESSITIES
International classification
A61B5/00
HUMAN NECESSITIES
Abstract
Apparatuses and methods for extracting, de-noising, and analyzing electrocardiogram signals. Any of the apparatuses described herein may be implemented as a (or as part of a) computerized system. For example, described herein are apparatuses and methods of using them or performing the methods, for extracting and/or de-noising ECG signals from a starting signal. Also described herein are apparatuses and methods for analyzing an ECG signal, for example, to generate one or more indicators or markers of cardiac fitness, including in particular indicators of atrial fibrillation. Described herein are apparatuses and method for determining if a patient is experiencing a cardiac event, such as an arrhythmia.
Claims
1. A method of filtering a sensed electrocardiogram (ECG), comprising: identifying a QRS interval in the sensed ECG; identifying a PQ interval in the sensed ECG; identifying an ST interval in the sensed ECG; filtering the QRS interval using a first filtering regime to generate a filtered QRS interval; filtering both the PQ and ST intervals with a second filtering regime to generate filtered PQ and ST intervals; and combining the filtered QRS interval and the filtered PQ and ST intervals.
2. The method of claim 1, comprising: identifying an R-R interval in the sensed ECG; and filtering the R-R interval of the ECG with a third filtering regime.
3. The method of claim 1, comprising pre-filtering the sensed ECG before identifying the QRS interval in the sensed ECG.
4. The method of claim 1, comprising removing 50 Hz or 60 Hz noise in the signal before identifying the QRS interval in the sensed ECG.
5. The method of claim 1, comprising performing wavelet filtering on the sensed ECG before identifying the QRS interval in the sensed ECG.
6. The method of claim 1, comprising identifying the QRS interval in the sensed ECG by filtering the sensed ECG, setting a threshold, and identifying a spike above the threshold as an R-spike component of the QRS interval.
7. The method of claim 6, comprising calculating a heart rate (HR) from the R-spike and using the HR to modify the sensed ECG to remove baseline wander.
8. The method of claim 1, comprising determining a QRS interval of the sensed ECG when a peak correlation between a first region of the sensed ECG and a second region of the sensed ECG is above a correlation threshold and their amplitudes vary by less than an amplitude threshold.
9. The method of claim 8, wherein the correlation threshold is about 0.8 and the amplitude threshold is about 40%.
10. The method of claim 1, further comprising: determining that there are fewer than a minimum number of QRS intervals; and indicating that there are fewer than a minimum number of QRS intervals.
11. The method of claim 10, wherein the minimum number of QRS intervals is 6.
12. The method of claim 1, comprising removing the QRS interval from the sensed ECG to form a subtracted signal.
13. The method of claim 1, wherein the first filtering regime comprises a Principle Component Analysis (PCA).
14. The method of claim 1, wherein the second filtering regime comprises a polynomial fit.
15. The method of claim 1, comprising displaying the filtered PQ, QRS, and ST intervals.
16. The method of claim 1, comprising constructing an R-R matrix of normalized RR intervals from the sensed ECG.
17. The method of claim 16, comprising cross-correlating every normalized R-R interval in the R-R matrix against every other normalized R-R interval in the matrix.
18. The method of claim 17, comprising correlating R-R intervals when a correlation coefficient threshold between R-R intervals is above an R-R correlation threshold.
19. The method of claim 18, wherein the R-R correlation threshold is about 0.7.
20. The method of claim 18, wherein the third filtering regime comprises a Principle Component Analysis (PCA).
21. The method of claim 1, comprising determining if the sensed ECG is indicative of an atrial fibrillation.
22. The method of claim 1, comprising comparing a beat-to-beat variability of the sensed ECG.
23. The method claim 1, comprising calculating an average beat by averaging correlated QRS regions that overlap on either side by correlated R-R intervals to form an intermediate average, and then correlating the intermediate average with correlated QRS regions that overlap on either side by correlated R-R intervals, and averaging those correlated QRS regions that overlap on either side by correlated R-R intervals that correlate with the intermediate average by greater than a threshold of about 0.85, to form the average beat.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0080]
[0081]
[0082]
[0083]
[0084]
[0085]
[0086]
[0087]
[0088]
[0089]
DETAILED DESCRIPTION
[0090] Described herein are apparatuses and methods for extracting (e.g., de-noising, cleaning, filtering, etc.) an ECG signal from a starting signal, as well as apparatuses and methods for determining one or more indicator of cardiac health/function (including, but not limited to atrial fibrillation). In general, the apparatuses described herein (including systems and devices) may perform all or some of the procedures described herein. A device may receive a starting signal (e.g., an ECG recording) either directly (from connected electrodes) or indirectly, by receiving an ECG signal and/or digital file including ECG information. ECG information maybe single lead or multiple lead. For example, ECG information may be single-channel ECG information. The system or device may then operate on this information and provide novel and specific output based thereon. For example, a system may display one or more signals indicative of one or more cardiac properties, functions or dysfunctions, including atrial fibrillation. In some variations the system may analyze the ECG information and modify it for later review, including appending comments and/or analysis regarding the ECG information. In some variations, the system organized the ECG signals (or sub-regions of the ECG signals) in some manner, e.g., collecting similar (correlated) signals or sub-regions of signals. The system may be configured to alert the user, medical professional, or other (including other systems) of the results of the operations on the ECG information.
[0091] In general, the apparatuses and methods described herein operate on a starting signal such as a signal read from a single lead of a pair of ECG electrodes, and extracts a cleaned-up version of an ECG trace, which may include multiple ECG beats by identifying putative sub-regions of in the signal, cross-correlating these sub-regions against each other, and using the correlation information to determine correlated sub-regions that are then differentially processed relative to the rest of the signal. Thus the correlated putative sub-regions are processed (filtered, amplified, fit, etc.) differently than the non-correlated putative sub-regions and the rest of the waveform except for the putative correlated sub-regions. The resulting signal includes both the correlated sub-regions and the rest of the signal. In general, a sub-region of an ECG signal may include any characteristic region of an ECG beat or beats, such as those illustrated in
[0092] Any of the processes described herein may be performed on a dedicated device that is configured specifically to perform some or all of these functions. Also included herein are software, hardware and/or firmware configured to perform these functions. Any of the data or information derived may be stored and/or operated on using non-volatile memory, hardcopy, printouts, or other storage, analysis and communication techniques.
[0093] For example,
[0094] For example, described below are techniques that may be performed by any of the apparatuses described herein and may part of any method. Examples of these techniques include pre-filtering (such as detection of mains, filtering of mains, wavelet filtering, etc.), sub-region detection (e.g., QRS detection, R-R detection), baseline wander removal, cross-correlation (QRS correlation, R-R correlation), differential processing (QRS filtering, R-R filtering, subtracted signal filtering, etc.), average beat calculation, interval calculation, and cardiac health analysis (e.g., atrial fibrillation detection, etc.). Performance of any of these techniques may be implemented in any of the apparatuses described, and/or any of the methods described. Some of these techniques may be omitted. Sections 1-12 below illustrate one example of some of these techniques, and are not intended to be limiting. The order of performance, and/or the inclusion, of any of these techniques may be varied. In addition, where specific ECG sub-regions are indicated (e.g., QRS, R-R, etc.) the technique may be adapted to any other sub-region.
1. Pre-Filtering
[0095] Analysis and pre-filtering may be included. For example, 50 Hz or 60 Hz signals may be analyzed. In some variations, data (a starting signal or starting ECG signal) is received by the apparatus for processing. Fourier coefficients at 9 different frequencies are calculated ranging from 10 to 100 Hz. If the 50 Hz component is larger than the others then mains noise is set at 50 Hz. The same check is done for 60 Hz. If neither 50 Hz nor 60 Hz components are larger than the other components, then no mains filtering is performed. Notch filter is implemented at 50 Hz, 60 Hz, or not at all. This may be done, for example, using MatLab's filter function, implementing a standard, second-order, IIR filter.
2. Pre-Filtering 2: Wavelet Filtering
[0096] The starting signal may be filtered by wavelet decomposition using soft thresholding on the wavelet coefficients down to level 5. Matlab's wavelet toolbox may be used for this, specifically the function cmddenoise. Because a wavelet can be chosen which resembles the main features in an ECG, this process does not distort the signal as much as a standard low-pass or bandpass filter. This technique does not required MatLab, as it may be implement using other similar functions or may be implemented by hand. Wavelet filtering of the entire signal may improve subsequent QRS detection.
3. Sub-Region Detection: QRS Detection
[0097] In general, any of the apparatuses may be configured to determine the time/locations of various sub-regions of the ECG in the signal. This may be done by identifying putative R-regions, for example. In one example, the method of detecting R-waves is derived from a method based: Band Pass IIR filter->derivative->square->moving window integrator. In this example, the MatLab function filter is used, implementing a series of standard FIR filters.
[0098] The resulting signal may be dynamically thresholded. Spikes extending above the threshold indicate R-spikes (see
[0099] Based on all of the detected R-spikes, an average RR interval may be found and a preliminary heart rate (HR) calculated.
4. Baseline Wander Removal
[0100] Using the HR from step (3), a certain wavelet level is calculated and used to remove baseline wander. Wavelet coefficients at the calculated level are set to zero and the signal is reconstructed. The resulting ECG signal with baseline wander removed is called ybw. The MatLab internal functions wavedec and waverec are used. These functions deconstruct/reconstruct a signal using dyadic scales.
5. Correlations
[0101] In this example, the apparatus cross-correlates every putative sub-region (e.g., QRS) with every other putative QRS to identify the highly (above a predetermine QRS correlation threshold (e.g., 0.85). For the correlation, the QRS's are assumed to be 30 samples long, centered on the R-spikes. For every two QRS's, a sliding correlation is calculated by offsetting the QRS's from one to 32 samples. The location of maximum correlations is found as well as possible offsets (if max correlation doesn't occur with the R-spikes perfectly aligned). Shown in
[0102] In this example, QRS's are considered to be correlated if their peak correlation is greater than 0.8 and their amplitudes vary by less than 40%. The longest sequence of consecutive, correlated QRS's is found, and the QRS's which comprise this sequence are considered good QRS's. All other QRS's that correlate with at least 3 of these good QRS's are also considered good.
[0103] If the initial good sequence is less than 6 beats long, the apparatus may tell you that the data may be too noisy, or too short. The apparatus may still proceed though, and finds the QRS which correlates with the most other QRS's. This QRS is taken to be good, and all other QRS's which correlate to it are found and called good.
[0104] During this technique, all of the R-spikes are corrected for possible offsets.
[0105] Correlating all of the detected QRS's in this way allows for the rejection of QRS's which are contaminated with noise.
[0106] It may be desired that contaminated QRS's not be used in any average beat. Furthermore, any other noise which was detected initially as a QRS will be rejected. This allows the initial QRS detection to be over sensitive.
6. Average Sub-Region (e.g., QRS)
[0107] An average QRS is found from all the correlated good QRS's, each of which are 30 samples long. The onset and offset of the average QRS are found.
7. Primary (Differential) Filtering or Correlated Sub-Regions
[0108] Using the onset and offset of the average QRS, all of the correlated QRS's can be removed from the signal ybw. The QRS's may be filtered using Principal Component Analysis (PCA), and the remaining QRS-removed signal is polynomial filtered with Matlab's sgolayfilt function, which consists of fitting polynomials to a signal. The QRS's are then added back in.
[0109] A local averaging is implemented around the points where the QRS's were removed and added back in, resulting in signal yf.
8. Building a Matrix (R-R Beat Matrix)
[0110] R-R beats are defined as intervals between two adjacent R-spikes. The signal yf is broken up into R-R beats. Every R-R beat is scaled to a given sample length, and an NM matrix may be constructed, where M is the number of RR-beats and N is the given sample length.
[0111] Every scaled RR-beat is correlated to every other scaled RR-beat. A second matrix is also constructed which gives the square of the difference in duration of two given RR-beats. Any two given RR-beats that have a correlation coefficient of more than 0.75 and vary by less than 30% in duration are considered correlated. The RR-beat which correlates with the most other RR-beats is found, and considered good. All other RR-beats which correlate with this beat are also considered good. Shown in
[0112] This process if repeated using a correlation coefficient threshold of 0.7 and no time duration constraint, resulting in another set of RR-beats which are used for AF detection, see section 12. There are two main purposes of correlating RR-beats. First, noise may be introduced in the ECG signal between two QRS complexes and this noise may distort a final average beat. RR-beat correlation corrects for this. Second, PCA analysis is performed on all of the good RR-beats, and this further cleans up the ECG signal.
9. Secondary Filtering: PCA on Good RR-Beats
[0113] PCA is implemented on all of the good RR-beats, and then the RR-beats are re-scaled to their original length. This does not have a direct effect on the final average beat displayed in the pdf reports, interval measurements, or HR calculation or AF determination. However this further cleans up an ECG signal. This process operates on the signal yf, producing signal yfinal, which is the signal displayed in the pdf reports.
10. Average Beat Calculation
[0114] Good P-QRS-T beats are taken to be beats in which a good QRS is surrounded on either side by good RR-beats. All of these good P-QRS-T beats are averaged.
[0115] All of the good P-QRS-T beats are then correlated to the average. Ones with lower than 0.85 correlations are rejected, and the average is re-calculated. This gives the final average beat displayed in the pdf reports and shown in
11. Interval Calculation
[0116] Using the average beat, the QRS onset and offset, and T-wave offset are found. These intervals are marked in the pdf reports.
12. AF Detection
[0117] AF detection may be broken up into 3 parts. First, if the number of QRS complexes is less than 35, four AF indicators are calculated based on beat variability. The first indicator is a measure of beat-to-beat variability. The second is a measure of beat-to-every-other-beat variability, and the third is a measure of beat-to-every-third-beat variability. The fourth indicator is the number of turning points of the RR-intervals. A signal with AF is likely to have larger values of the first 3 indicators. It is also likely to not have a small or large number of turning points. Thresholds for all 4 indicators are chosen for a given ECG signal, and all 4 indicators must be within/above threshold for an AF call.
[0118] If the number of QRS complexes is above 35, Sluter's algorithm is used along with the above-mentioned turning point value. This algorithm is based on using a 10 beat window before any given beat, and calculating the best predictor beat within that window for the given beat. This 10 beat window is moved across the entire signal yfinal, and the best average predictor beat is found. The error of this predictor beat is calculated, and if it is large-enough and the turning point value is within threshold, AF is called.
[0119] Finally, P-waves are searched for. This is done using a template P-wave and correlating it with the average-beat signal before the QRS onset. The maximum value in the signal before the Q wave is found that is also a local maximum, and is taken to be the peak of the proposed p-wave and is used as the correlation point. The standard deviation of the proposed P-wave is also calculated and compared to the standard deviation of the rest of the average-beat signal before the Q-wave. The ratio of the std of the proposed P-wave to the std of the remaining signal is used as a weighting factor in determining the probability that the proposed P-wave is a P-wave. A final statistic is calculated for P-wave probability for which 1 means perfect P-wave, while 0 and negative numbers indicate there is no P-wave.
[0120] If the P-wave statistic is below 0.25, AF is automatically called even if it was not called based on the RR-statistic indicators. If the P-wave statistic is above 0.7 and the ratio of standard deviations is large-enough, a signal that was called AF based on the RR-statistics is corrected and called non-AF.
[0121]
[0122] In
[0123] When a feature or element is herein referred to as being on another feature or element, it can be directly on the other feature or element or intervening features and/or elements may also be present. In contrast, when a feature or element is referred to as being directly on another feature or element, there are no intervening features or elements present. It will also be understood that, when a feature or element is referred to as being connected, attached or coupled to another feature or element, it can be directly connected, attached or coupled to the other feature or element or intervening features or elements may be present. In contrast, when a feature or element is referred to as being directly connected, directly attached or directly coupled to another feature or element, there are no intervening features or elements present. Although described or shown with respect to one embodiment, the features and elements so described or shown can apply to other embodiments. It will also be appreciated by those of skill in the art that references to a structure or feature that is disposed adjacent another feature may have portions that overlap or underlie the adjacent feature.
[0124] Terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. For example, as used herein, the singular forms a, an and the are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms comprises and/or comprising, when used in this specification, specify the presence of stated features, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, steps, operations, elements, components, and/or groups thereof. As used herein, the term and/or includes any and all combinations of one or more of the associated listed items and may be abbreviated as /.
[0125] Spatially relative terms, such as under, below, lower, over, upper and the like, may be used herein for ease of description to describe one element or feature's relationship to another element(s) or feature(s) as illustrated in the figures. It will be understood that the spatially relative terms are intended to encompass different orientations of the device in use or operation in addition to the orientation depicted in the figures. For example, if a device in the figures is inverted, elements described as under or beneath other elements or features would then be oriented over the other elements or features. Thus, the exemplary term under can encompass both an orientation of over and under. The device may be otherwise oriented (rotated 90 degrees or at other orientations) and the spatially relative descriptors used herein interpreted accordingly. Similarly, the terms upwardly, downwardly, vertical, horizontal and the like are used herein for the purpose of explanation only unless specifically indicated otherwise.
[0126] Although the terms first and second may be used herein to describe various features/elements, these features/elements should not be limited by these terms, unless the context indicates otherwise. These terms may be used to distinguish one feature/element from another feature/element. Thus, a first feature/element discussed below could be termed a second feature/element, and similarly, a second feature/element discussed below could be termed a first feature/element without departing from the teachings of the present invention.
[0127] As used herein in the specification and claims, including as used in the examples and unless otherwise expressly specified, all numbers may be read as if prefaced by the word about or approximately, even if the term does not expressly appear. The phrase about or approximately may be used when describing magnitude and/or position to indicate that the value and/or position described is within a reasonable expected range of values and/or positions. For example, a numeric value may have a value that is +/0.1% of the stated value (or range of values), +/1% of the stated value (or range of values), +/2% of the stated value (or range of values), +/5% of the stated value (or range of values), +/10% of the stated value (or range of values), etc. Any numerical range recited herein is intended to include all sub-ranges subsumed therein.
[0128] Although various illustrative embodiments are described above, any of a number of changes may be made to various embodiments without departing from the scope of the invention as described by the claims. For example, the order in which various described method steps are performed may often be changed in alternative embodiments, and in other alternative embodiments one or more method steps may be skipped altogether. Optional features of various device and system embodiments may be included in some embodiments and not in others. Therefore, the foregoing description is provided primarily for exemplary purposes and should not be interpreted to limit the scope of the invention as it is set forth in the claims.
[0129] The examples and illustrations included herein show, by way of illustration and not of limitation, specific embodiments in which the subject matter may be practiced. As mentioned, other embodiments may be utilized and derived there from, such that structural and logical substitutions and changes may be made without departing from the scope of this disclosure. Such embodiments of the inventive subject matter may be referred to herein individually or collectively by the term invention merely for convenience and without intending to voluntarily limit the scope of this application to any single invention or inventive concept, if more than one is, in fact, disclosed. Thus, although specific embodiments have been illustrated and described herein, any arrangement calculated to achieve the same purpose may be substituted for the specific embodiments shown. This disclosure is intended to cover any and all adaptations or variations of various embodiments. Combinations of the above embodiments, and other embodiments not specifically described herein, will be apparent to those of skill in the art upon reviewing the above description.