Implantable medical devices (IMDs), such as implantable pacemakers, cardioverters, defibrillators, or pacemaker-cardioverter-defibrillators, provide therapeutic electrical stimulation to the heart. IMDs may provide pacing to address bradycardia, or pacing or shocks in order to terminate tachyarrhythmia, such as tachycardia or fibrillation. In some cases, the medical device may sense intrinsic depolarizations of the heart, detect arrhythmia based on the intrinsic depolarizations (or absence thereof), and control delivery of electrical stimulation to the heart if arrhythmia is detected based on the intrinsic depolarizations.
IMDs may also provide cardiac resynchronization therapy (CRT), which is a form of pacing. CRT involves the delivery of pacing to the left ventricle, or both the left and right ventricles. The timing and location of the delivery of pacing pulses to the ventricle(s) may be selected to improve the coordination and efficiency of ventricular contraction.
IMDs sense signals and deliver therapeutic stimulation via electrodes. Implantable pacemakers, cardioverters, defibrillators, or pacemaker-cardioverter-defibrillators are typically coupled to one or more subcutaneous electrodes or intracardiac leads that carry electrodes for cardiac sensing and delivery of therapeutic stimulation. The signals sensed via the electrodes may be referred to as a cardiac electrogram (EGM) and may include the depolarizations, repolarizations, and other intrinsic electrical activity of the heart.
Systems for implanting medical devices may include workstations or other equipment in addition to the medical device itself. In some cases, these other pieces of equipment assist the physician or other technician with placing the intracardiac leads at particular locations on the heart. In some cases, the equipment provides information to the physician about the electrical activity of the heart and the location of the intracardiac lead. The equipment may perform similar functions as the medical device, including delivering electrical stimulation to the heart and sensing the depolarizations of the heart. In some cases, the equipment may include equipment for obtaining an electrocardiogram (ECG) via skin electrodes placed on the surface of the patient. In addition, the patient may have a plurality of electrodes on an ECG belt or vest that surrounds the torso of the patient. After the vest has been secured to the torso, a physician can perform a series of tests to evaluate a patient's cardiac response.
During the evaluation process, a physician typically needs to review the onset of cardiac depolarization waves in the rhythms using a computing apparatus. Numerous methods are used to detect onset of depolarization waves. U.S. Pat. No. 8,781,580B2 to Sven-Erik Hedberg et al. is directed to pacing sequence optimization applied through the multipolar LV lead based on a particular optimization criterion which is the time point of the onset of activation of the left ventricle until closure of the mitral valve of the heart. The pacing sequence that minimizes the time interval from onset of LV activation until the mitrel valve closure is identified and used as currently optimal pacing sequence for the IMD. An activation detector is configured to detect onset of activation of the left ventricle for a cardiac cycle. The activation detector is configured to detect onset of contraction of the left ventricle for the cardiac cycle based on i) a signal received by the connector for a connectable sensor or ii) an impedance signal determined by the activity detector based on an electric signal received by the connector from a connectable pacing electrode. Nowhere in this method does it eliminate polarization artifacts to ensure the best channel is selected or adjust detection of the onset of cardiac depolarization to ensure beats are not missed.
Additionally, the Sven-Erik Hedberg method does not address ambiguous cardiac signals. U.S. Pat. No. 7,953,489 B2 to Warren et al. Warren et al does correct for ambiguous signals, defined as sensed cardiac electrical signal that are difficult to comprehend, understand, or classify by an implantable medical device (IMD) (e.g. ICD etc.) system's detection architecture. Warren et al. addresses ambiguous signals by counting to characteristic features, comparing the ambiguous signal to a threshold, and then sensing alternate cardiac signals. This method can be cumbersome since the characteristic features need to be parsed and counted.
It is therefore desirable to develop additional methods and systems for signal processing that allows the system to acquire cardiac signals with little or no artifacts and/or ambiguous signals thereby allowing physicians to more accurately determine therapy for a patient.
The present disclosure assists in eliminating ambiguous signals associated with cardiac signals acquired from one or more electrodes associated with an electrode apparatus. By eliminating ambiguous signals, techniques and methods described herein substantially increase the accuracy of the onset of each heart depolarization over conventional threshold detection methods.
One or more embodiments relate to a system and associated method for determining whether a signal is ambiguous. The system comprises an electrode apparatus comprising a plurality of electrodes configured to be located proximate tissue of a patient. A display apparatus comprises a graphical user interface. The graphical user interface is configured to present information to a user. A computing apparatus coupled to the electrode apparatus and display apparatus, is configured to determine whether a signal acquired from a channel associated with an electrode from the plurality of electrodes is ambiguous. The computing apparatus is configured to calculate a first derivative of the signal, determine a first minimum from the first derivative, determine a second minimum from the second derivative and a second index within a window, calculate a ratio of the first and second derivatives, calculate a difference between a first and second index. In response to determining the ratio and the difference between the first and second index, the display apparatus displays whether the signal is ambiguous.
Exemplary systems, methods, and interfaces shall be described with reference to
One or more embodiments of the present disclosure is embodied in methods 100-300, depicted in
One or more other embodiments depicted in
Processor 72 may include any one or more of a microprocessor, a controller, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or equivalent discrete or analog logic circuitry. In some examples, processor 72 may include multiple components, such as any combination of one or more microprocessors, one or more controllers, one or more DSPs, one or more ASICs, or one or more FPGAs, as well as other discrete or integrated logic circuitry. The functions attributed to processor 72 herein may be embodied as software, firmware, hardware or any combination thereof. Generally, processor 72 controls cardiac electrogram module 70, peak detection module 76, wave detection module 78, and motion sensing module 80 to determine timings of the onsets and offsets of heart depolarization and/or repolarizations waves. Processor 72 can perform calculations, determinations, comparisons of data etc.
In general, a heart produces a repetitive electrical signal which causes the heart to mechanically contract, thereby pumping blood throughout the body. Generally, the signal may be detected and displayed as a cardiac electrogram signal. Although the exact representation may differ depending on the placement of leads on or within the body to detect the heart signal, among other factors, a common cardiac electrogram includes several recognizable features. The initial deflections of the signal represent the P-wave and the QRS complex. The P-wave represents the depolarization of the atria and the QRS complex represents the depolarization of the ventricles. The Q-wave of the QRS complex is the initial downward deflection of the signal during the complex. Following the Q-wave is the R-wave, which is an upward deflection of the signal. Finally, the S-wave is another downward deflection. The next portion of the signal represents repolarization of the atria and ventricles. More specifically, what is generally called the T-wave represents the repolarization of the ventricles. There is no specific wave or feature of the signal that represents the repolarization of the atria because the generated signal is small in comparison to the T-wave. Together, the P-wave, the Q, R, and S waves, and the T-wave represent the depolarization and repolarization waves of a heart electrical signal.
Memory 74 includes computer-readable instructions that, when executed by processor 72, causes system 10 and processor 72 to perform various functions attributed to system 10 and processor 72 herein. Memory 74 may include any volatile, non-volatile, magnetic, optical, or electrical media, such as a random access memory (RAM), read-only memory (ROM), non-volatile RAM (NVRAM), electrically-erasable programmable ROM (EEPROM), flash memory, or any other digital or analog media.
Generally, cardiac electrogram module 70 is configured sense or acquire electrical signals from a patient. Cardiac electrogram module 70 is electrically coupled to one or more electrodes 2, 4, 6, 8, 10, 12, 14 . . . n by one or more leads. In some examples, the one or more electrodes 2, 4, 6, 8, 10, 12, 14 . . . n may be external electrodes, e.g., attached to the surface of a patient, or implanted at various locations within a patient, e.g., on or within a heart.
Peak detection module 76 may be configured to determine a maximum value of a particular signal. For example, peak detection module 76 may be configured to receive the electrical signal from cardiac electrogram module 70 and determine the maximum value. In another example, as illustrated in
Wave detection module 78 determines the onsets and/or offsets on the heart depolarization and repolarizations waves. Wave detection module 78 may be configured to receive an electrical signal. For example, wave detection module 78 may be configured to receive an electrical signal sensed by cardiac electrogram module 70. Motion sensing module 80 may detect mechanical motion of a heart, e.g., during contraction of the heart. Motion sensing module 80 may comprise one or more sensors that generate a signal that varies based on cardiac contraction or motion generally, such as one or more accelerometers, pressure sensors, impedance sensors, or flow sensors. Motion sensing module 80 may provide an indication of the timing of motion, e.g., contraction, to device 60, e.g., to processor 72. The detected contraction may be contraction of cardiac tissue at a particular location, e.g., a particular portion of a ventricular wall.
In some examples, motion sensing module 80 may be configured to image the heart, or electrodes, catheters, wires, or other radio-opaque markers in or on the heart and identify motion associated with contraction based on images of the heart. In some examples, motion sensing module 80 may be configured to direct ultrasound energy toward a patient's heart. Motion sensing module 80 may also be configured to detect any ultrasonic energy deflected back toward motion sensing module 80 by the patient's heart. In this manner, motion sensing module 80 may capture information about the mechanical motion (i.e. the contracting and relaxing of the ventricles and/or atria) of the heart. Systems and methods for identifying heart mechanical contractions are described in U.S. Pat. No. 7,587,074 to Zarkh et al., which issued on Sep. 8, 2009 and is entitled, “METHOD AND SYSTEM FOR IDENTIFYING OPTIMAL IMAGE WITHIN A SERIES OF IMAGES THAT DEPICT A MOVING ORGAN,” and is incorporated herein by reference in its entirety.
Processor 72 may determine values of one or more metrics, such as cardiac intervals or cardiac electromechanical delay, based on the timing of onset and/or offset of a wave, as determined by wave detection module 78, and/or the timing of contraction, as determined by motion sensing module 80. For example, processor 72 may determine QRS width based on an onset and offset of the QRS complex as identified by wave detection module 78. As another example, processor 72 may determine a QT interval based on a QRS onset and T-wave onset identified by wave detection module 78. The processor may also determine the interval between the onset of depolarization on a surface ECG lead and the time of local electrical activation as sensed by a lead or a mapping catheter or guidewire at a site within the heart. Furthermore, as described in greater detail below, processor 72 may determine electromechanical delay based on a QRS onset identified by wave detection module 78 and an indication of the timing of cardiac contraction received from motion sensing module 80.
Although in
Furthermore, although processor 72, peak detection module 76 and wave detection module 78 are depicted as separate functional modules in the example of
Low pass filter 90 may generally be any low-pass filter designed to reduce or eliminate the high frequency components of electrical signals. Some examples of low-pass filters embodied in hardware include capacitive low-pass filters and inductive low-pass filters. Other low-pass filters may be embodied entirely within software. In some embodiments, low-pass filter 90 is embodied as a combination of hardware and software. Low-pass filter 90 may be a first, second, or higher order filter. In some examples, low-pass filter 90 comprises multiple filters placed in a succession in order to create a desired frequency response. In some examples, the low-pass filter 90 is a linear filter with a maximally flat group delay or maximally linear phase response. A constant group delay is a characteristic of phase response of an analog or a digital filter, which helps preserve the shape of the signal in the pass-band. In at least one example, the low-pass filter is a Bessel filter with a cut-off frequency of 15 Hz.
Window module 92 may generally window received signals. In some examples, window module 92 may receive cardiac electrograms, and in further examples, some of the cardiac electrograms may include a marker or markers indicating one or more points of interest. Some example of points of interest could be the R-wave, the P-wave, or any other wave of the cardiac electrogram. In some examples, peak detection module 76 may detect the locations of R-waves in a cardiac electrogram, according to techniques that are well known in the art, for example using a varying threshold. Peak detection module 76 may then place a marker within the cardiac electrogram identifying the location of the R-wave. In other examples, other modules or devices may detect and mark waves in the cardiac electrogram. In examples where the signal includes at least one marker, window module 92 may window the received electrical signal around the marker. For example, window module 92 may multiply the received electrical signal by zero outside of the area around the marker and by one inside of the area around the marker. In this way, window module 92 may modify the received electrical signal to only contain information in an area around the marker. In some examples, window module 92 may isolate the QRS complex. In some examples, window module 92 may window an area of interest of equal length around the marker, for instance 150 ms before the marker and 150 ms after the marker. In other examples, the area in front of the marker may be longer or shorter than the area behind the marker. In one or more embodiments, the algorithm detects the local maximums as information for each beat. Specifically, each beat includes several local maximums which can represent, for example, the P wave, the QRS wave, and the Twave. Based on the beat information, the channels to update the onset of cardiac depolarization are selected. After updating the onset of cardiac depolarization, a window, extending a certain amount of time (e.g. 220 ms) is used to detect the activation time. The window can be adjusted by using the onset of cardiac depolarization. Since the window is dependent on the onset of cardiac depolarization, the window also changes with any changes to the onset of cardiac depolarization.
Slope module 94 may generally determine the slope of a received electrical signal. Some example techniques for determining a slope that slope module 94 may use are taking the simple difference between adjacent points on the received electrical signal, or determining the first derivative of the received electrical signal.
Rectifier module 96 may generally rectify a received electrical signal. For example, rectifier module 96 may half-wave rectify the received electrical signal to produce a resulting signal with information only where the original signal was above zero. In another example, rectifier module 96 may full-wave rectify the received electrical signal to produce a resulting signal where all the negative values of the original signal are now positive. Smoothing module 98 may generally smooth a received electrical signal.
For example, smoothing module 98 may be configured to increase the values of certain points and decrease the values of certain points so as to create a smoother signal. Some example smoothing algorithms include rectangular or un-weighted sliding average smoothing, triangular smoothing, and Savitzky-Golay smoothing. The smoothing algorithms may be implemented through one or more filters. In at least one example, the smoothing filter is 10-order median filter. In another example, the smoothing filter is a n-order median filter where n is an increasing linear function of the sampling frequency used to digitize the electrogram or electrocardiogram signals.
Threshold detection module 99 may generally be configured to determine a threshold and at what points a received electrical signal crosses a pre-determined threshold. The threshold may be determined based on a maximum value of the signal received from smoothing module 98. For example, as illustrated in
Methods 100-300, depicted in
Method 100 is directed to validating ECG data acquired from a plurality of channels and eliminating channels that are deemed to acquire invalid data such as channels in which the electrode is detached from the surface of skin of a patient. Electrodes detached from the skin produces noise.
The total number of channels used in method 100 is automatically preset or set by the user and stored into memory. For the sake of illustration, in one example, the total number of channels, from which time sampled signal data is acquired, is set to N1 (e.g. 55). In one or more embodiments, a preferred range of 30 to 50 channels are employed. It should be understood however, that the total number of channels could be any integer in the range of 1-500 channels. In one or more embodiments, the total number of channels can be less than or equal to the following number of total channels: 500 channels, 450 channels, 400 channels, 350 channels, 300 channels, 250 channels, 200 channels, 150 channels, 100 channels, 90 channels, 80 channels, 70 channels, 60 channels, 50 channels, 40 channels, 30 channels, 20 channels, etc. Additionally, method 100 requires counters to be automatically initialized by setting each counter to preselected values (e.g. I counter is set to 0, etc.).
Referring to block 102 of
Block 104 verifies whether the total number N1 of channel data has been processed through method 100. For example, a determination is made as to whether the channel number, presently being processed, is less than the total number N1 of channels. If all of the channel data has been processed, then the present channel number being processed is greater or equal to N1. Therefore, the NO path can be followed to block 106 in which the channel data is completed. In contrast, if the channel number is less than N1, the YES path can be followed from block 104 to block 108 which allows data sampled from the ECG signal to be indexed. Indexed samples means that each sample is assigned a consecutive number relative to the time each sample is located on the signal for that particular channel. The first sample (Sample 1 or S1) is located closest to time zero while the last sample (end Sample or Send). For example, 30 samples could be indexed relative to the time each sample appears in the signal. The first sample would be referred to as sample 1 at time 1, sample 2 is at time 2 and so on . . . sample 30 would be at time 30. Exemplary indexed data, sampled from an invalid ECG signal 103b, is depicted in
At block 110, a voltage threshold N2, depicted perpendicular to the Y-axis and horizontal to the X axis in
The elimination process at block 112 begins with setting N2. N2 can be set at 1×104 micro-volts, but the N2 can be set at any number greater than 1×104 micro-volts such as 2×104 micro-volts 3×104 micro-volts, 4×104 micro-volts, 5×104 micro-volts . . . to 10×104 micro-volts. To determine which indexed samples are deleted, all samples that possess a voltage that is at least equal to N2, as is shown in
If the value (I)−value (I+200) is less than N4 (e.g. 10), then the YES path is followed to block 116 in which a I counter is decreased by 1 which allows the samples to be evaluated from the last sample that was recorded or stored into memory. For example, the counter I is decremented by the equation I=I−1 which allows the samples to be processed from the last sample to the first sample stored into memory. If the VALUE(I)−VALUE (I+N3) is not less than N4 (e.g. 10), then the NO path can be followed from block 114 to block 118.
At block 118, samples from “I”, referred to relative to block 116, are deleted to the end. While the samples that remain in block 116 are different from the samples at block 112, the same or similar concept is applied to deleting samples as that which was described relative to
At decision block 120, a determination is made as to whether the samples, that remain after deleting samples at block 118, are greater than a preselected number such as N3. If less than or equal to N3 remain, then the YES path continues to block 134 which causes the data acquired from that channel to be declared invalid. Invalid data from a channel is not a good channel to update onset of QRS wave data. Invalid channel data can be designated by “0” which is distinguished from valid data designated as “1”. The designation of channel data as valid or invalid is stored in a data register that is associated with each channel.
If greater than a preselected number N3 of samples remain, the YES path can be followed to block 122. At block 122, the first derivative is determined. The first derivative along with the amplitude of the signal determine whether the signal is sufficiently strong. The first derivative can be determined by calculating the change or delta of the Y-axis divided by the change or delta of the X-axis as to the signal data. At block 124, the second derivative is determined. The second derivative can be calculated by determining the change or delta of two points along the Y-axis divided by the delta of the two points on the X-axis of the Y derivative.
At block 126, a determination is made as to whether the second derivative data is less than N5. N5 is data dependent and is a very small value. For example, N5 can be set at 1×10−6 microvolts. Sample data, having second derivative data greater than N5, are kept while the remaining samples are deleted. Specifically, any second derivative data less than or equal to N5 is eliminated from further processing of data. Block 126 eliminates flat-line signals such as that which is shown by an exemplary second derivative of an ECG signal of
If the sample data being processed indicates greater than X1% of the total samples have been processed through method 200, then the YES path continues to block 132 in which the channel data is deemed invalid and the process continues on to block 104. In contrast, if the sample is not greater than X1%, then the channel data is considered valid. A good channel can be designated by “1” while a bad channel can be designated with a “0” which is stored in the data register and the control logic is returned to block 102.
Method 200, depicted in
Generally, method 200 assigns a “leadchannel” for each a channel connected to an electrode. Each beat sensed via a channel is assigned a “beat sign” to distinguish beats within a set of beats sensed through the channel. Starting from the first channel, a set of beats are acquired within a pre-specified time frame. Beat information is captured by local maximums. After separating the one-channel signal by beats, local maximums are checked for each beat. Local maximum is a maximum (e.g. amplitude) associated with a beat within a time window.
At block 202, N6 valid channel signals were determined from method 100 and are stored into memory. N6, determined through method 100, can be set to an integer such as 10, 20, 30, 40, 50, 56, 60, 70 etc.
At block 204, a determination is made as to whether a counter, referred to as I2, is less than N6+1. I2 is the number of channels that has been updated in
If I2 is not less than N6+1, the NO path can be followed from block 204 to block 206, which indicates that data from all of the valid channels have been processed; therefore, the process of checking all channel data is completed. If I2 is less than N6+1, then the YES path can be followed from block 204 to block 208, which requires data to be accessed from memory for that particular channel in order to determine the strength of the slew rate. Data accessed from memory for block 208 was generated from instructions executed in
At block 210, a determination is made as to whether a mean of the local maximums beat to beat is greater than N8 such as 200 mV. Typically, N8 can range from about 3.5 mV to about 200 mV. Mean is the average of all of the local maximums within a window. If the mean of the local maximum for each beat is not greater than N8, the NO path can be followed from block 210 to block 214 which indicates that the channel data is valid based on method 100, but the signal acquired from the channel is not strong enough to be used for updating onset data. If the mean of the maximum of each beat is greater than N8, then the YES path can be followed from block 210 to block 212, which requires a determination to be made as to whether the number of sampled beats from a channel is greater than N9 beats (e.g. 50 beats) within a predetermined time period such as 30 seconds. N9 is set to a substantially high number such as 50 beats per 30 seconds compared to a normal heart beat of 30 beats per 30 seconds. A substantially high number of beats within 30 seconds causes the YES path to be followed to block 214, which indicates that particular channel data is considered valid but is not strong enough to be used for updating onset data If the number of beats per 30 seconds is not greater than N9 beats, then the NO path can be followed from block 214 to block 216, which sets a beat counter, referred to as BEAT, equal to 1.
Block 218, requires the processor to store and/or acquire from memory, beat to beat data that is compared to M. For example, local maximum information corresponding to each beat for a channel signal is stored into memory. Thereafter, block 218 determines whether all of the beat and local maximum data has been processed and stored into memory. Exemplary local maximum data within one beat is shown in the window of
According to block 218, if BEAT<M, the YES path indicates that all of the beat and local maximum data has been processed and stored into memory. The YES path from block 218 can be followed to decision block 220. At block 220, a determination is made as to whether the beat to beat data stored in memory indicates greater than a preselected percentage X2% (e.g. 75%, 80%, 85%, 90%, 95% etc.) of beat data is considered valid. If greater than, for example, 75% of beat data for a particular channel is considered valid, then that channel is deemed valid at block 222 and the channel can be used to update the onset on a one time only basis or on a continuous basis. In contrast, at block 220, if the beat to beat data stored in memory indicates equal to or less than a preselected percentage of (e.g. 75%, 80%, 85%, 90%, 95% etc.) beat data is considered valid, then the data acquired from that particular channel is considered valid but not sufficiently strong at block 214 and will not be used to update the onset data.
Returning to block 218, if BEAT is not less than M (i.e. last beat number or the total number of beats) the NO path to block 224 indicates that the beat data is still being processed and stored into memory.
Each beat is checked to determine how many local maximum in each beat is larger than 10% of the mean at block 210. After a determination is made as to whether any local maximums exist over 10% of the mean of the local maximums for each beat are present, the number of local maximums, if any, over 10% are stored into memory (e.g. memory of the programmer).
After acquiring information for each beat, blocks 225-230 determine how many local maximums are within a designated region. For example, at block 225, if there is one local maximum within a window, then the YES path can be followed to block 232. At block 232, after deleting the present maximum value within the window, any remaining local maximums are located and counted that are within the window.
At block 234, a determination is made as to whether greater than two local maximums are within X3% (e.g. 90% etc.) of the maximum amplitude of the remaining local maximums. Essentially, block 234 determines which local maximum is the largest within the window and then also determines whether greater than two local maximums are within X5% (e.g. 90% etc.) of the maximum amplitude of the signal. If there are greater than two local maximums, the beat counter is set equal to zero at block 236. The beat counter is incremented by 1 through the equation BEAT=BEAT+1 at block 238. Thereafter, the process continues to block 218.
Returning to block 225, the NO path indicates that the beat data has been processed and can now be classified with respect to detection of beats per window at blocks 226, 228, and 230. Decision block 226 determines whether two local maximums are present in a window. If so, then the YES path can be followed from block 226 continues to decision block 242 in which another determination is made as to whether a minimum between the present two local maximums is less than a preselected percentage X4% (e.g. 5%) of the local maximum.
The NO path can be followed from block 242 to block 236 in which BEAT counter is set equal to zero. In contrast, the YES path can be followed from block 242 to block 240 in which the BEAT is set equal to one. Thereafter, the BEAT counter is incremented at block 238 and then the process continues at block 218.
Returning to block 226, the NO path continues to block 228 in which a determination is made as to whether three local maximums are located and counted within a window. If so, then the YES path continues to decision block 244. At block 244, the value of the smallest local maximum within a window is determined. It is then determined whether more local maximums within a window are within a preselected percentage of the value of the smallest local maximum. Through the comparison, a determination can be made as to whether the local maximum is within the preselected percentage of the smallest local maximum within a window. The YES path can be followed from block 244 to block 236 in which the BEAT counter is set equal to zero. The NO path can be followed from block 244 to block 240 in which the BEAT counter is set equal to one.
The NO path from block 228 continues to block 230 in which a determination is made as whether four local maximums within a window then the process continues to block 236 in which the BEAT counter is equal zero. In contrast, the NO path can be followed from block 244 continues to block 240 which causes BEAT=1.
Data, stored into memory as a result of execution of computer instructions generally depicted in
Method 300, depicted in
In order to eliminate unnecessary artifacts and/or ensure beats are not missed, a ratio value R is adjusted in method 300. For example, if the difference of the time sample indexes of the neighboring local maximum is larger than N10 (e.g. sample index 1500) then beats were missed or skipped. In order not to skip beats, the ratio value R is decreased to obtain a new R so that beats are not skipped. Additionally or alternatively, if the difference of the indexes of the neighboring local maximum is smaller than N11 (e.g. sample index 400). unnecessary artifacts are found between two beats. In order to eliminate unnecessary artifacts, the ratio value is increased to a new R at block 326.
Method 300 begins at block 302 in which a series of calculations are performed. For example, the first derivative can be calculated, as previously described or through any other suitable method. The square of the first derivative is then determined.
Block 304 ensures every signal datum are computed. For example, a determination is made as to whether I<N9, in which N9 was previously defined. The NO path can be followed from block 304 to block 312 in which the second derivative is calculated as previously described or through any other suitable method. The YES path from block 304 continues to block 306 in which another determination is made as to whether the square of the first derivative value is greater than R*M2where R is a ratio value (e.g. 0.10) can be selected as any other number based on data statistics. M2, shown in
For signals that are similar to the signal depicted in
The YES path from block 306 continues to block 310 in which the counter I is incremented by 1 and the process continues to block 304. The NO path from block 306 continues to block 308 in which the differential equation is set equal to zero. Setting the differential equation equal to zero locates the critical points such as local maximums and minimums, referred to as local extrema, on a function's graph. Local extrema occur at critical points of the function such as where the derivative is zero or undefined.
Returning to block 312, after the second derivative has been calculated, the local maximums within a window can be determined at block 316. The second derivative test can be used to find critical points such as local maximums or minimums. The local maximums are found by using the sign of the second derivative. The sign of the second derivative test is provide as follows:
If df/dx(p)=0 and d2f/dx2(p)<0, and d2f/dx2(p+1)>0 then f(x) has a local minimum at x=p.
If df/dx(p)=0 and df/dx(p)>0, and df/dx(p+1)<0 then f(x) has a local maximum at x=p.
Rectified signals, shown in the
At block 316, a determination is made as to whether local maximums exist within a window. The NO path from block 316 continues to block 318 in which the channel is considered a bad channel or an unacceptable channel from which to update onset data. A channel designated as a bad channel is stored into memory and will not be used to update the onset. The YES path from block 316 continues to block 320. At block 320, the second derivative is calculated as previously described and stored into memory. At block 322, the index of the first local maximum of a preselected number of samples is stored into memory. Exemplary first local maximum 317d is shown in
At block 324, a determination is made as to whether a difference from an index of one local maximum to another is larger than N10 or smaller than N11.The NO path from block 324 continues to block 328 whereas the YES path continues to block 326.
At block 326, the ratio is changed. The ratio is changed if the difference of the indexes of the neighboring local maximum is larger than N10, as shown in
At block 328, the local maximum in each beat is located using the newly modified ratio. The local maximums are found by determining the first derivative of the ECG signal, as previously explained. At block 330, the mean of local maximums in a beat are determined. The mean is obtained by adding local maximum values together and dividing by the number of local maximums within the time window.
At block 332, local maximum(s) larger than twice the mean is deleted or eliminated since the much larger local maximums are likely to be an artifact. Referring to
At block 336, a determination is made as to whether a first loop had occurred. The NO path from block 336 continues to block 338 and the process is stopped. The YES path from block 336 returns to block 302. After the computer instructions for
For each beat, the process starts from the first local maximum which is updated by the methods described herein. The data is searched backwards until the square of first derivative is smaller than a pre-specified number (e.g. 10% or less 8% or less, 6% or less, 5% or less, 4% or less, or 2% or less) of the first local maximum associated with a particular beat, such as the first local maximum 317d depicted in
Once the square of first derivative is smaller than 5% of the first local maximum, a determination is made that the onset of depolarization has been found and further searching for the onset is terminated. The onset of depolarization is set equal to the square of the first derivative that is less than the pre-selected percentage of the first local maximum. Once the onset of depolarization of the ECG has been found, the onset of depolarization is updated (e.g. stored in the memory of the programmer) in the system, which will increase the accuracy for determining the activation time calculation and distribution display. In one or more embodiments, the onset of cardiac depolarization is determined solely using implantable electrodes. The IMD is then updated with a more accurate onset of cardiac depolarization. Therefore, accurate onset data helps a physician to make the best decisions in choosing the proper treatment for the patients.
Exemplary instructions for one or more embodiments of the entire algorithm are presented below.
1. Identify valid channels and eliminate invalid channels as shown and described relative to
a. Start from the first channel (box 104).
b. Start from the last sample for a particular channel, search for the indexes until the value of the sample is smaller than threshold level such as 1×104 microvolts. Thereafter, eliminate samples from the smallest indexed sample to the end (box 112).
c. Continue searching backwards (i.e. last sample to first sample). If the value change is less than 10 within 200 samples (i.e. 10 checks how the signal changes in magnitude within the 200 samples), continue until larger than 10, and delete those samples until the end (box 112, 114).
d. Then determine if more than 200 samples are still left (box 114). If not, set channelsign to 0 and stop.
e. If larger than 200 samples, calculate the second derivative of the signal (boxes 122, 124). Search from the last sample until the second derivative is larger than 10−6 microvolts (box 126) and record the number of samples. If the number is larger than 90% of the number of all samples, set channelsign to 0. Otherwise, set channelsign to 1.
2. The channel number is increased by one. Determine whether the channel number is larger than the total number of channels (i.e. 56) being processed (box 104). If yes, stop (box 106). Otherwise, go to step b.
3. Referring to
a. Start from the first channel and find how many beats are in this data set.
b. If the mean (box 210) of the maximums for each beat is less than 200, then the channel is not used to update onset. Go to step f.
c. If there is more than 50 beats found (box 212), then the channel is not used to update onset. Go to step f.
d. Check through each beat. Find how many local maximum in each beat are larger than 10% of the mean (210).
If the number is 1 (box 225), delete this local maximum and find the local maximum after the elimination of this local maximum. If more than or equal to three local maximums are larger than the 90% of the maximum of the remaining data in this beat, assign beatsign as 0; otherwise, beatsign will be 1.
If the number is 2 (box 226), check if the minimum between these two local maximums is less than pre-selected amount (e.g. 5%) of the maximum. If yes, assign beatsign as 1, otherwise beatsign=0.
If the number is larger than or equal to 4 (box 230), assign beatsign as 0.
If the number is 3 (box 228), find the value of the smallest local maximum and search to see if there are a fourth or even more local maximums those values are within 80% of the smallest local maximum value. If yes, beatsign is set to 0. Otherwise, beatsign is set to 1.
e. If more than 75% of the beatsign are 1, then the lead can be used and assign leadsign as 1 for this lead (box 220). Otherwise, assign leadsign as 0.
f. Go to the next valid channel. Check if the channel being processed is the last one of the total number of channels being processed. If yes, stop. Otherwise go to step b.
4.
a. Calculate the square of the first derivative of the signal (box 302).
b. Find samples that are larger than 10% of the maximum of square of first derivative (box 306). Those smaller ones are set to zero and assigned to another matrix.
c. Find the second derivative of these samples (box 312). Use the first derivative to find local maximums (box 314). If no local maximum exists (box 318), give a sign to the function “isgoodlead” to set leadsign for this channel as 0, and stop.
d. Set the indexes of those local maximum to the same values if they are within 500 samples. After “unique” command, the rest are the indexes of the first local maximum in each beat.
e. If the difference of these indexes are larger or smaller than 1500 or 400, change the ratio to 7.5% or 12.5% and re-process (box 324).
f. After that, find the maximum in each beat. The maximum in each beat is not the value of the first local maximum. Calculate mean of these maximums. Delete maximums which are larger than twice of the mean (box 332). Re-calculate the mean (box 334). Also, use the recalculated mean as the criterion, instead of the maximum of the first derivative, and re-do the procedure from step b (box 336).
5. Update onset data.
For each beat, start from the first local maximum, which is updated in step 3, and search backwards until the square of first derivative data is smaller than 5% of this first local maximum.
Method 1200 begins at block 1202 in which the onset of the depolarization is updated, as described herein with respect to methods 100-300. At block 1204, a determination is made as to whether each channel connected to an electrode has had its signal processed. The total number of channels used in method 1200 is automatically preset or set by the user and stored into memory. For the sake of illustration, in one example, the total number of channels, from which time sampled signal data is acquired, is set to N1 (e.g. 55). In one or more embodiments, a preferred range of 30 to 50 channels are employed. Additionally, method 1200 requires a counter to be automatically initialized by setting the counter to a preselected value (e.g. set to 0, etc.) that allows each channel to be counted in order to ensure data, from each channel, is processed. The NO path from 1204 continues to block 1220 which indicates all channels have finished being processed through method 1200 and are deemed to acquire either valid or invalid signals. The YES path from block 1204 indicates that a channel still must undergo method 1200 operations and therefore continues to block 1206.
At block 1206, a first derivative is calculated from a signal acquired from an electrode (e.g. surface electrode etc.) and stored into memory.
At block 1208, a determination is made as to whether the signs are different for the waveform. If the signs are the same, the NO path continues to block 1216 where the signal is declared invalid. If the signs are different, the YES path from block 1208 continues to block 1210. Different signs are shown by the exemplary waveform depicted in
At block 1210, a ratio is calculated of the absolute value taken of the larger one of derivatives in the numerator over the smaller one of the derivatives in the denominator. Accordingly, the magnitude of the maximum and minimum of the derivative determine the numerator and denominator for the ratio calculation. An exemplary ratio calculation can be shown with respect to
At block 1212, a determination is made as to whether the ratio calculated at block 1210 is greater than a preselected number C (e.g. 5). C can range from 2 to 12. If the ratio is not greater than the preselected number C from block 1208, then the NO path from block 1212 continues to block 1214 in which the signal acquired from a channel is considered valid. If the ratio is greater than the preselected number from block 1210, then the NO path from block 1212 to block 1214 indicates the signal is considered valid.
Signals from blocks 1214 and 1216 continue to block 1218. At block 1218, the channel number counter is increased by 1 then checked at block 1204 to ensure all of the channels are processed. Blocks 1202-1212 are repeatedly performed until each channel of the total channels N1 are completed. Skilled artisans understand that method 100 and/or method 1200 can be applied to any signal to eliminate artifacts. For example, methods 100 and 1200 can also be used with any physiological signal (e.g. cardiac signal, neural signal etc.) acquired from the body of the patient using surface electrodes and/or implanted electrodes.
In addition to eliminating artifacts, other embodiments of the present disclosure can be implemented to determine whether an ambiguous signal is being detected from an electrode during any activation mapping used in a variety of electrophysiologic procedures. Activation mapping can involve mapping directly from the surface of the heart, from within the cavity of the heart or from the body belt developed for cardiac resynchronization. Other examples may include multi-electrode arrays (e.g. constellation baskets) in combination with a catheter that can then be deployed in the intracardiac space for simultaneous or sequential mapping of electrical activity of the heart surface using surface electrodes.
Skilled artisans will appreciate that method 1300 can be applied to any biosensed signals. For example, method 1300 can be applied to electrical signals acquired from an electrode apparatus described herein and/or electrodes implanted in the patient's body and/or subcutaneous electrodes. Method 1300 also can be applied to a constellation or basket. Method 1300 can also be applied to a balloon on a delivery tool or catheter. Additionally, method 1300 can be implemented using a moving probe.
The data, generated by implementing blocks 1302-1310, are previously described herein and incorporated by reference in their entirety. The data is automatically stored in memory immediately after being generated. Computer instructions e.g. firmware can be used to automatically store data generated from any one of the blocks in any of the flow diagrams presented herein.
Method 1300 begins at block 1302 in which the onset data is determined and stored into memory. Onset data can be obtained from
At block 1306, the local maximum and local minimums are located within a window using know techniques. One exemplary technique involves comparing one point to another point along the curve until all the points along the curve have been processed. The technique may include a sorting operation and/or swapping operation to determine minimum and maximum derivative data points. For example, two of the largest local minimum in a window should have at least one local maximum therebetween. Derivative data for local maximums and local minimums is helpful to define regions since first derivative maximums and minimum should be zero.
At block 1308, the value of minimum of the first derivative and its corresponding time index in each region is recorded. The time index relates to the indexed sample as described relative to
At block 1308, two minimum derivatives are located within a window extending a pre-specified time period (e.g. 200 ms). The two minimum derivatives having the largest magnitudes (i.e. absolute values) among a set of minimum derivatives are located within the window. Sorting and/or swapping operations may be used to determine two minimum derivatives.
At block 1312, a ratio is calculated. The ratio uses the following formula:
ratio=abs(larger one of the minimum derivatives)/abs(smaller one of the minimum derivatives) where “abs” represents the absolute value.
Additionally, the timing difference (“dis”) between the absolute (“abs”) value of the difference between a first and second index are calculated using the following equation where index1 and index 2 are the time indices corresponding to the two minimum derivatives:
dis=abs(index1−index2)
where index1 relates to the derivative data with the larger magnitude (i.e. “larger one” block 1210
At decision block 1314, a determination is made as to whether the distance between the two indices is less than a pre-selected number such as 10 ms. The pre-selected number is typically in a range of about 5 to about 15 ms. The YES path from block 1314 continues to block 1316 which indicates the signal is valid. The process is completed or finished at block 1322. The NO path from block 1314 continues to decision block 1318.
The YES path from block 1318 continues to block 1316 which indicates the signal is non-ambiguous (from the standpoint of derivative-based activation time determination). After determining whether a signal acquired from a channel is ambiguous or non-ambiguous, the process is finished at block 1322 for that particular channel. Method 1300 is repeated for each channel connected to an electrode until each signal channel has been processed.
The present disclosure can identify the timing of steepest negative slope of an unipolar ECG/cardiac signal for determining the activation time corresponding to a particular electrode. If the cardiac unipolar signal has a morphology with multiple negative slopes of comparable magnitudes, the present disclosure is able to identify the activation-time uniquely from that electrode, and reviews activation times from neighboring electrodes to determine the correct activation time.
In some examples, programmer 924 takes the form of a handheld computing device, computer workstation, or networked computing device that includes a user interface for presenting information to and receiving input from a user. A user, such as a physician, technician, surgeon, electrophysiologist, or other clinician, may interact with programmer 924 to communicate with IMD 916. For example, the user may interact with programmer 924 to retrieve physiological or diagnostic information from IMD 916. A user may also interact with programmer 924 to program IMD 916, e.g., select values for operational parameters of the IMD.
IMD 916 and programmer 924 may communicate via wireless communication using any techniques known in the art. Examples of communication techniques may include, for example, low frequency or radiofrequency (RF) telemetry, but other techniques are also contemplated. In some examples, programmer 924 may include a programming head that may be placed proximate to the patient's body near the IMD 916 implant site in order to improve the quality or security of communication between IMD 916 and programmer 924. In other examples, programmer 924 may be located remotely from IMD 916, and communicate with IMD 916 via a network.
The techniques for identifying onsets and/or offsets of cardiac electrogram waves may be performed by IMD 916, e.g., by a processor of IMD 916, based on one or more cardiac electrograms sensed by the IMD. In other examples, as described previously, some or all of the functions ascribed to IMD 916 or a processor thereof may be performed by one or more other devices, such as programmer 294 or a workstation (not shown), or a processor thereof. For example, programmer 924 may process EGM signals received from IMD 916 and/or cardiac mechanical contraction information to according to the techniques described herein. Furthermore, although described herein with respect to an IMD, in other examples, the techniques described herein may be performed by or implemented in an external medical device, which may be coupled to a patient via percutaneous or transcutaneous leads.
Although in the example of
Electrodes 1002 may surround heart 912 of patient 914 and record the electrical signals associated with the depolarization and repolarization of heart 912 after the signals have propagated through the torso of patient 914. Each of electrodes 1002 may be used in a unipolar configuration to sense the torso-surface potentials that reflect the cardiac signals. Device 60 may also be coupled to a return or indifferent electrode (not shown) which may be used in combination with each of electrodes 1002 for unipolar sensing. In some examples, there may be 12 to 16 electrodes 1002 spatially distributed around the torso of patient 914. Other configurations may have more or fewer electrodes 1002.
Processing unit 60 may record and analyze the torso-surface potential signals sensed by electrodes 1002. As described herein, device 60 may be configured to provide an output to a user. The user may make a diagnosis, prescribe CRT, position therapy devices, e.g., leads, or adjust or select treatment parameters based on the indicated output.
In some examples, the analysis of the torso-surface potential signals by device 60 may take into consideration the location of electrodes 1002 on the surface of the torso of patient 914. In such examples, device 60 may be communicatively coupled to a motion sensing module 80 such as a programmer, which may provide an image that allows device 60 to determine coordinate locations of each of electrodes 1002 on the surface of patient 914. Electrodes 1002 may be visible, or made transparent through the inclusion or removal of certain materials or elements, in the image provided by motion sensing module 80.
Sensing device 10006 may comprise a fabric vest 1006 with electrodes 1002 attached to the fabric. Sensing device 10006 may maintain the position and spacing of electrodes 1002 on the torso of patient 914. Sensing device 1000B may be marked to assist in determining the location of electrodes 1002 on the surface of the torso of patient 914. In some examples, there may be 150 to 256 electrodes 1002 distributed around the torso of patient 914 using sensing device 10006, though other configurations may have more or fewer electrodes 1002.
The ECG data is mapped to a generic, graphical model of a patient's torso and/or heart and a graphical display is produced on a graphical user interface without taking an actual image, such as an MRI or CT image, from the patient. The resolution of the ECG data mapped to a graphical anatomical model depends on the number and spacing of surface electrodes 1002 used. In some examples, there may be 12 to 16 electrodes spatially distributed around the torso of patient 914. Each electrode is associated with a channel that is connected in a processor. Other configurations may have more or fewer electrodes. In one embodiment, a minimum number of electrodes includes twelve electrodes arranged in two rows extending along the posterior torso and twelve electrodes arranged in two rows extending along the anterior torso for a total of twenty-four electrodes, which may be equally distributed circumferentially around the torso. The number of electrodes can be greater than 12 electrodes. In one or more examples presented in methods 100-300, 56 channels associated with 56 electrodes are used but skilled artisans will understand that more or less electrodes can be used to with these methods. Another exemplary system with a computing apparatus or processor, electrode apparatus and display apparatus that can be used is described in U.S. patent application Ser. No. 14/227,955 filed on Mar. 27, 2014 entitled SYSTEMS, METHODS, AND INTERFACES FOR IDENTIFYING EFFECTIVE ELECTRODES, by Ghosh et al. and incorporated by reference in its entirety. Reliable detection of depolarization waves assists the physician in setting parameters for optimal delivery of CRT.
In the illustrated example, electrodes 940, 944 and 948 take the form of ring electrodes, and electrodes 942, 946 and 950 may take the form of extendable helix tip electrodes mounted retractably within insulative electrode heads 952, 954 and 956, respectively. Leads 918, 920, 922 also include elongated electrodes 962, 964, 966, respectively, which may take the form of a coil. In some examples, each of the electrodes 940, 942, 944, 946, 948, 950, 962, 964 and 966 is electrically coupled to a respective conductor within the lead body of its associated lead 918, 920, 922, and thereby coupled circuitry within IMD 916.
In some examples, IMD 916 includes one or more housing electrodes, such as housing electrode 904 illustrated in
As described in further detail with reference to
IMD 916 senses electrical signals attendant to the depolarization and repolarization of heart 912 via electrodes 904, 940, 942, 944, 946, 948, 950, 962, 964 and 966. IMD 916 may sense such electrical signals via any bipolar combination of electrodes 940, 942, 944, 946, 948, 950, 962, 964 and 966. Furthermore, any of the electrodes 940, 942, 944, 946, 948, 950, 962, 964 and 966 may be used for unipolar sensing in combination with housing electrode 904.
In some examples, IMD 916 delivers pacing pulses via bipolar combinations of electrodes 940, 942, 944, 946, 948 and 950 to produce depolarization of cardiac tissue of heart 912. In some examples, IMD 16 delivers pacing pulses via any of electrodes 940, 942, 944, 946, 948 and 950 in combination with housing electrode 904 in a unipolar configuration. Furthermore, IMD 916 may deliver cardioversion or defibrillation pulses to heart 12 via any combination of elongated electrodes 962, 964, 966, and housing electrode 904.
The illustrated numbers and configurations of leads 918, 920, and 922 and electrodes are merely examples. Other configurations, i.e., number and position of leads and electrodes, are possible. In some examples, system 910 may include an additional lead or lead segment having one or more electrodes positioned at different locations in the cardiovascular system for sensing and/or delivering therapy to patient 914. For example, instead of or in addition to intracardiac leads 918, 920 and 922, system 910 may include one or more epicardial or subcutaneous leads not positioned within the heart. In some examples, the subcutaneous leads may sense a subcutaneous cardiac electrogram, for example the far-field electrogram between the SVC coil and the can. The subcutaneous cardiac electrogram may substitute for the surface ECG in determining the global electromechanical delay.
Processor 970 may include any one or more of a microprocessor, a controller, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or equivalent discrete or analog logic circuitry. In some examples, processor 970 may include multiple components, such as any combination of one or more microprocessors, one or more controllers, one or more DSPs, one or more ASICs, or one or more FPGAs, as well as other discrete or integrated logic circuitry. The functions attributed to processor 970 herein may be embodied as software, firmware, hardware or any combination thereof. Generally, processor 970 controls signal generator 974 to deliver stimulation therapy to heart 912 of patient 914 according to a selected one or more of therapy programs or parameters, which may be stored in memory 972. As an example, processor 970 may control signal generator 974 to deliver electrical pulses with the amplitudes, pulse widths, frequency, or electrode polarities specified by the selected one or more therapy programs.
Signal generator 974 is configured to generate and deliver electrical stimulation therapy to patient 912. As shown in
Signal generator 974 may include a switch module (not shown) and processor 970 may use the switch module to select, e.g., via a data/address bus, which of the available electrodes are used to deliver the electrical stimulation. The switch module may include a switch array, switch matrix, multiplexer, or any other type of switching device suitable to selectively couple stimulation energy to selected electrodes. Electrical sensing module 976 monitors electrical cardiac signals from any combination of electrodes 904, 940, 942, 944, 946, 948, 950, 962, 964, and 966. Sensing module 976 may also include a switch module which processor 970 controls to select which of the available electrodes are used to sense the heart activity, depending upon which electrode combination is used in the current sensing configuration.
Sensing module 976 may include one or more detection channels, each of which may comprise an amplifier. The detection channels may be used to sense the cardiac signals. Some detection channels may detect events, such as R-waves or P-waves, and provide indications, such as wave markers, of the occurrences of such events to processor 970. One or more other detection channels may provide the signals to an analog-to-digital converter, for conversion into a digital signal for processing or analysis by processor 970.
For example, sensing module 976 may comprise one or more narrow band channels, each of which may include a narrow band filtered sense-amplifier that compares the detected signal to a threshold. If the filtered and amplified signal is greater than the threshold, the narrow band channel indicates that a certain electrical cardiac event, e.g., depolarization, has occurred. Processor 970 then uses that detection in measuring frequencies of the sensed events.
In one example, at least one narrow band channel may include an R-wave or P-wave amplifier. In some examples, the R-wave and P-wave amplifiers may take the form of an automatic gain controlled amplifier that provides an adjustable sensing threshold as a function of the measured R-wave or P-wave amplitude. Examples of R-wave and P-wave amplifiers are described in U.S. Pat. No. 5,117,824 to Keimel et al., which issued on Jun. 2, 1992 and is entitled, “APPARATUS FOR MONITORING ELECTRICAL PHYSIOLOGIC SIGNALS,” and is incorporated herein by reference in its entirety.
In some examples, sensing module 976 includes a wide band channel which may comprise an amplifier with a relatively wider pass band than the narrow band channels. Signals from the electrodes that are selected for coupling to this wide-band amplifier may be converted to multi-bit digital signals by an analog-to-digital converter (ADC) provided by, for example, sensing module 976 or processor 970. Processor 970 may analyze the digitized versions of signals from the wide band channel. Processor 970 may employ digital signal analysis techniques to characterize the digitized signals from the wide band channel to, for example, detect and classify the patient's heart rhythm.
Processor 970 may detect and classify the patient's heart rhythm based on the cardiac electrical signals sensed by sensing module 976 employing any of the numerous signal processing methodologies known in the art. For example, processor 970 may maintain escape interval counters that may be reset upon sensing of R-waves by sensing module 976. The value of the count present in the escape interval counters when reset by sensed depolarizations may be used by processor 970 to measure the durations of R-R intervals, which are measurements that may be stored in memory 972. Processor 970 may use the count in the interval counters to detect a tachyarrhythmia, such as ventricular fibrillation or ventricular tachycardia. A portion of memory 972 may be configured as a plurality of recirculating buffers, capable of holding series of measured intervals, which may be analyzed by processor 970 to determine whether the patient's heart 912 is presently exhibiting atrial or ventricular tachyarrhythmia.
In some examples, processor 970 may determine that tachyarrhythmia has occurred by identification of shortened R-R interval lengths. Generally, processor 970 detects tachycardia when the interval length falls below 360 milliseconds (ms) and fibrillation when the interval length falls below 320 ms. These interval lengths are merely examples, and a user may define the interval lengths as desired, which may then be stored within memory 972. This interval length may need to be detected for a certain number of consecutive cycles, for a certain percentage of cycles within a running window, or a running average for a certain number of cardiac cycles, as examples.
In some examples, an arrhythmia detection method may include any suitable tachyarrhythmia detection algorithms. In one example, processor 970 may utilize all or a subset of the rule-based detection methods described in U.S. Pat. No. 5,545,186 to Olson et al., entitled, “PRIORITIZED RULE BASED METHOD AND APPARATUS FOR DIAGNOSIS AND TREATMENT OF ARRHYTHMIAS,” which issued on Aug. 13, 1996, or in U.S. Pat. No. 5,755,736 to Gillberg et al., entitled, “PRIORITIZED RULE BASED METHOD AND APPARATUS FOR DIAGNOSIS AND TREATMENT OF ARRHYTHMIAS,” which issued on May 26, 1998. U.S. Pat. No. 5,545,186 to Olson et al. U.S. Pat. No. 5,755,736 to Gillberg et al. is incorporated herein by reference in their entireties. However, other arrhythmia detection methodologies may also be employed by processor 970 in other examples. For example, EGM morphology may be considered in addition to or instead of interval length for detecting tachyarrhythmias.
Generally, processor 970 detects a treatable tachyarrhythmia, such as VF, based on the EGM, e.g., the R-R intervals and/or morphology of the EGM, and selects a therapy to deliver to terminate the tachyarrhythmia, such as a defibrillation pulse of a specified magnitude. The detection of the tachyarrhythmia may include a number of phases or steps prior to delivery of the therapy, such as first phase, sometimes referred to as detection, in which a number of consecutive or proximate R-R intervals satisfies a first number of intervals to detect (NID) criterion, a second phase, sometimes referred to as confirmation, in which a number of consecutive or proximate R-R intervals satisfies a second, more restrictive NID criterion. Tachyarrhythmia detection may also include confirmation based on EGM morphology or other sensors subsequent to or during the second phase.
In the illustrated example, IMD 916 also includes peak detection module 980, wave detection module 982, and motion sensing module 984. Peak detection module 980 and wave detection module 982 may be configured and provide the functionality ascribed to peak detection module 76 and wave detection module 78 herein. Peak detection module 980 may be configured to determine a maximum value of a particular signal. For example, peak detection module 980 may be configured to receive an electrical signal from wave detection module 982 or processor 970 and determine a maximum value of the received signal. Peak detection module 980 may, in some examples, comprise a narrow-band channel of sensing module 976 that is configured to detect R-waves, P-waves, or T-waves in cardiac electrogram signals, e.g., using an amplifier with automatically adjusting threshold.
Generally, wave detection module 982 determines the onsets and/or offsets on the heart depolarization and repolarizations waves. Wave detection module 982 may be similar to the wave detection module described previously, e.g. wave detection module 78, and more accurately described in
Peak detection module 980 and wave detection module 982 may receive a cardiac electrogram from sensing module 976, e.g., from a wide-band channel of the sensing module. In some examples, the cardiac electrogram may be a far-field cardiac electrogram, e.g., between superior vena cava coil 766 and housing electrode 904. A far-field cardiac electrogram may be used in the manner described herein with respect to a surface ECG, e.g., to determine a global electromechanical delay. In some examples, the cardiac electrogram may be a unipolar cardiac electrogram between housing electrode 906 and any of electrodes 942, 944, 946 and 950. The unipolar cardiac electrogram may be received from sensing module 976, e.g., via a wide-band channel of the sensing module, and may be used in the manner described herein with respect to local cardiac electrogram signals, e.g., to determine local electromechanical delays.
Motion sensing module 984 may sense the mechanical contraction of the heart, e.g., at one or more cardiac sites. Motion sensing module 984 may be electrically coupled to one or more sensors that generate a signal that varies based on cardiac contraction or motion generally, such as one or more accelerometers, pressure sensors, impedance sensors, or flow sensors. The detected contraction may be contraction of cardiac tissue at a particular location, e.g., a particular portion of a ventricular wall.
Although processor 970 and wave detection module 982 are illustrated as separate modules in
Telemetry module 978 includes any suitable hardware, firmware, software or any combination thereof for communicating with another device, such as programmer 924 (
Implementation of the methods disclosed herein requires a plurality of body-surface electrodes such as an ECG belt or vest be placed around the torso of the patient. An exemplary ECG belt or vest is described in U.S. patent application Ser. No. 13/462,404, filed May 2, 2012, entitled “Assessing Intra-Cardiac Activation Patterns And Electrical Dyssynchrony” and assigned to the assignee of the present invention, the disclosure of which is incorporated by reference in its entirety herein. After the vest or belt is secured around the patient's torso, the programmer is activated. Exemplary programmers that can be used to acquire signals from implanted and surface electrodes includes the Medtronic Carelink Programmer Model 2090 and the Model 2290 Analyzer or the CARELINK ENCORE™. Medtronic Vitatron Reference Manual CARELINK ENCORE™ (2013) available from Medtronic.
An exemplary system 1100 can be used to acquire data to determine the most onset of cardiac depolarization and or offset of repolarization waves. System 1100 including electrode apparatus 1110, imaging apparatus 1120, display apparatus 1130, and computing apparatus 1140 is depicted in
The imaging apparatus 1120 may be any type of imaging apparatus configured to image, or provide images of, at least a portion of the patient in a non-invasive manner. For example, the imaging apparatus 1120 may not use any components or parts that may be located within the patient to provide images of at least a portion of the patient except non-invasive tools such as contrast solution. It is to be understood that the exemplary systems, methods, and interfaces described herein may noninvasively assist a user (e.g., a physician) in selecting a location proximate a patient's heart for an implantable electrode, and after the exemplary systems, methods, and interfaces have provided noninvasive assistance, the exemplary systems, methods, and interfaces may then provide assistance to implant, or navigate, an implantable electrode into the patient, e.g., proximate the patient's heart.
For example, after the exemplary systems, methods, and interfaces have provided noninvasive assistance, the exemplary systems, methods, and interfaces may then provide image guided navigation that may be used to navigate leads including electrodes, leadless electrodes, wireless electrodes, catheters, etc., within the patient's body. Further, although the exemplary systems, methods, and interfaces are described herein with reference to a patient's heart, it is to be understood that the exemplary systems, methods, and interfaces may be applicable to any other portion of the patient's body.
The imaging apparatus 1120 may be configured to capture, or take, x-ray images (e.g., two dimensional x-ray images, three dimensional x-ray images, etc.) of the patient. The imaging apparatus 1120 may be operatively coupled (e.g., through one or more wired electrical connections, wirelessly, etc.) to the computing apparatus 140 such that the images captured by the imaging apparatus1120 may be transmitted to the computing apparatus 1140. Further, the computing apparatus 1140 may be configured to control the imaging apparatus 1120 to, e.g., configure the imaging apparatus 1120 to capture images, change one or more settings of the imaging apparatus 1120, etc. It will be recognized that while the imaging apparatus 1120 as shown in
The display apparatus 1130 and the computing apparatus 140 may be configured to display and analyze data such as, e.g., surrogate electrical activation data, image data, mechanical motion data, etc. gathered, or collected, using the electrode apparatus 1110 and the imaging apparatus 1120 to noninvasively assist a user in location selection of an implantable electrode. In at least one embodiment, the computing apparatus 140 may be a server, a personal computer, or a tablet computer. The computing apparatus 140 may be configured to receive input from input apparatus 1142 and transmit output to the display apparatus 1130. Further, the computing apparatus 1140 may include data storage that may allow for access to processing programs or routines and/or one or more other types of data, e.g., for driving a graphical user interface configured to noninvasively assist a user in location selection of an implantable electrode, etc.
The computing apparatus 1140 may be operatively coupled to the input apparatus 1142 and the display apparatus 1130 to, e.g., transmit data to and from each of the input apparatus 1142 and the display apparatus 1130. For example, the computing apparatus 1140 may be electrically coupled to each of the input apparatus 1142 and the display apparatus 1130 using, e.g., analog electrical connections, digital electrical connections, wireless connections, bus-based connections, network-based connections, internet-based connections, etc. As described further herein, a user may provide input to the input apparatus 1142 to manipulate, or modify, one or more graphical depictions displayed on the display apparatus 1130 to view and/or select one or more target or candidate locations of a portion of a patient's heart as further described herein.
Although as depicted the input apparatus 1142 is a keyboard, it is to be understood that the input apparatus 1142 may include any apparatus capable of providing input to the computing apparatus 1140 to perform the functionality, methods, and/or logic described herein. For example, the input apparatus 1142 may include a mouse, a trackball, a touchscreen (e.g., capacitive touchscreen, a resistive touchscreen, a multi-touch touchscreen, etc.), etc. Likewise, the display apparatus 1130 may include any apparatus capable of displaying information to a user, such as a graphical user interface 132 including graphical depictions of anatomy of a patient's heart, images of a patient's heart, graphical depictions of locations of one or more electrodes, graphical depictions of one or more target or candidate locations, alphanumeric representations of one or more values, graphical depictions or actual images of implanted electrodes and/or leads, etc. For example, the display apparatus 1130 may include a liquid crystal display, an organic light-emitting diode screen, a touchscreen, a cathode ray tube display, etc.
The graphical user interfaces 1132 displayed by the display apparatus 130 may include, or display, one or more regions used to display graphical depictions, to display images, to allow selection of one or more regions or areas of such graphical depictions and images, etc. As used herein, a “region” of a graphical user interface 1132 may be defined as a portion of the graphical user interface 1132 within which information may be displayed or functionality may be performed. Regions may exist within other regions, which may be displayed separately or simultaneously. For example, smaller regions may be located within larger regions, regions may be located side-by-side, etc. Additionally, as used herein, an “area” of a graphical user interface 1132 may be defined as a portion of the graphical user interface 1132 located with a region that is smaller than the region it is located within. Exemplary systems and interfaces may be described in U.S. Provisional Patent Application 61/913,743 entitled “Noninvasive Cardiac Therapy Evaluation” and filed on Dec. 9, 2013 and U.S. Patent Application entitled “Noninvasive Cardiac Therapy Evaluation” and filed on even date herewith (Docket No. C00006745.USU2 (134.0794 0101)), each of which is incorporated herein by reference in its entirety.
The processing programs or routines stored and/or executed by the computing apparatus 1140 may include programs or routines for computational mathematics, matrix mathematics, decomposition algorithms, compression algorithms (e.g., data compression algorithms), calibration algorithms, image construction algorithms, signal processing algorithms (e.g., Fourier transforms, fast Fourier transforms, etc.), standardization algorithms, comparison algorithms, vector mathematics, or any other processing required to implement one or more exemplary methods and/or processes described herein. Data stored and/or used by the computing apparatus 1140 may include, for example, image data from the imaging apparatus 1120, electrical signal data from the electrode apparatus 1110, graphics (e.g., graphical elements, icons, buttons, windows, dialogs, pull-down menus, graphic areas, graphic regions, 3D graphics, etc.), graphical user interfaces, results from one or more processing programs or routines employed according to the disclosure herein, or any other data that may be necessary for carrying out the one and/or more processes or methods described herein.
Far-field EGMs, ECG, or ECG-like signals are acquired from an electrode that is the greatest distance away from the pacing electrode. If an IMD is implanted, electrodes that can produce far field signals include superior vena cava (SVC) electrode-pulse generator housing (also referred to as a “can”), right ventricle (RV) coil-can etc.).
Additionally, pre-specified windows can be defined as extending from the atrial marker to the ventricular marker.
A low pass filter is then applied to the ECG signal within the pre-specified window. The low-pass filter can be a Bessel filter with a cut-off frequency of 15 Hz, 20 Hz or a frequency value between 15 Hz and 20 Hz. The signal(s) acquired from the plurality of surface electrodes and/or the electrodes associated with the implantable medical device is passed through the low pass filter, which causes the removal of any spurious high-frequency artifacts or components from the far-field ECG-like signal.
A rectified slope of the signal within the window is determined at block 1108 using module 96 depicted in
The techniques described in this disclosure, including those attributed to IMD wave detection module 80, programmer 24, or various constituent components, may be implemented, at least in part, in hardware, software, firmware or any combination thereof. For example, various aspects of the techniques may be implemented within one or more processors, including one or more microprocessors, digital signal processors (DSPs), application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), or any other equivalent integrated or discrete logic circuitry, as well as any combinations of such components, embodied in programmers, such as physician or patient programmers, stimulators, image processing devices or other devices. The term “processor” or “processing circuitry” may generally refer to any of the foregoing logic circuitry, alone or in combination with other logic circuitry, or any other equivalent circuitry.
Such hardware, software, firmware may be implemented within the same device or within separate devices to support the various operations and functions described in this disclosure. In addition, any of the described units, modules or components may be implemented together or separately as discrete but interoperable logic devices. Depiction of different features as modules or units is intended to highlight different functional aspects and does not necessarily imply that such modules or units must be realized by separate hardware or software components. Rather, functionality associated with one or more modules or units may be performed by separate hardware or software components, or integrated within common or separate hardware or software components. Additionally, skilled artisans understand that the system and/or method automatically store any result from a calculation or determination.
There are a variety of other embodiments that can be employed for the pre-specified window used in
Exemplary systems that can be employ one or more methods described herein include U.S. Pat. No. 8,887,736, U.S. Pat. No. 8,532,734B2, U.S. Pat. No. 8,457,371B2, U.S. Pat. No. 8,442,625B2, U.S. Pat. No. 8,424,536B2, U.S. Pat. No. 8,421,799B2, U.S. Pat. No. 8,391,965B2, U.S. Pat. No. 8364252B2, U.S. Pat. No. 8345067B2, US20120130232A1, U.S. Pat. No. 8,185,192B2, U.S. Pat. No. 8106905B2, US20090265128A1, US20090264751A1, US20090264750A1, US20090264749A1, US20090264748A1, US20090264747A1, US20090264746A1, US20090264727A1, US20090262992A1, US20090262109A1, U.S. Pat. No. 8,843,189B2, U.S. Pat. No. 8,839,798B2, U.S. Pat. No. 8,839,798B2, U.S. Pat. No. 8,663,120B2, U.S. Pat. No. 8,660,640B2, U.S. Pat. No. 8,560,042B2, U.S. Pat. No. 8,494,608B2, U.S. Pat. No. 8,340,751B2, U.S. Pat. No. 8,260,395B2, US20120190993A1, U.S. Pat. No. 8,214,018B2, U.S. Pat. No. 8,208,991B2, US20090297001A1, US20090264777A1, US20090264752A1, US20090264743A1, US20090264742A1, U.S. Pat. No. 8,831,701B2,U.S. Pat. No. 8,494,614B2, US20100004724A1, U.S. Pat. No. 6,263,235 B1 all of which are incorporated by reference in their entirety.
Exemplary embodiments are as follows:
Embodiment 1 is system for use in monitoring cardiac signals comprising:
an electrode apparatus comprising a plurality of electrodes configured to be located proximate tissue of a patient;
Embodiment 2 is a system according to embodiment 1 wherein in response to determining the difference between the first and second index is less than a preselected number, the signal is indicated as potentially ambiguous.
Embodiment 3 is a system according to embodiments 1 or 2 wherein the signal is confirmed as being ambiguous in response to determining that the ratio is less than a preselected number.
Embodiment 4 is a system according to embodiments 1 through 3 wherein the signal is confirmed as being ambiguous in response to determining that the ratio is greater than a preselected number.
Embodiment 5 is a system according to embodiments 1 through 4 wherein in response to determining the difference between the first and second index being greater or equal to a preselected number, the signal being indicated as non-ambiguous.
Embodiment 6 is a system according to embodiments 2 through 5 wherein the signal is non-ambiguous in response to determining that the ratio is greater than or equal to a preselected number.
Embodiment 7 is a system of embodiments 1-6 wherein the electrode apparatus is located around the patient's torso.
Embodiment 8 is the system of embodiments 1-7 wherein determining whether a signal is ambiguous occurs during ablation of human tissue.
Embodiment 9 is the system of embodiments 1-8 wherein the signal is acquired from a patient diagnosed with atrial fibrillation.
Embodiment 10 is the system of embodiments 1-9 wherein the system is used to locate optimal electrode placement for cardiac therapy.
Embodiment 11 is a method for a multichannel mapping system comprising a processor connected to an electrode apparatus and a display apparatus, the electrode apparatus located proximate tissue of a patient, wherein the processor is configured to determine whether a signal is ambiguous, the method comprising:
When implemented in software, the functionality ascribed to the systems, devices and techniques described in this disclosure may be embodied as instructions on a computer-readable medium such as random access memory (RAM), read-only memory (ROM), non-volatile random access memory (NVRAM), electrically erasable programmable read-only memory (EEPROM), FLASH memory, magnetic data storage media, optical data storage media, or the like. The instructions may be executed to support one or more aspects of the functionality described in this disclosure.
This is a continuation application of U.S. patent application Ser. No. 14/815,478, filed Jul. 31, 2015, the disclosure of which is incorporated herein by reference thereto. Cross-reference is hereby made to U.S. patent application Ser. No. 14/815,506, filed Jul. 31, 2015, now issued as U.S. Pat. No. 9,737,223 on Aug. 22, 2017 (Attorney Docket Number C00008453.USU2) entitled “DETERMINING ONSET OF CARDIAC DEPOLARIZATION AND REPOLARIZATION WAVES FOR SIGNAL PROCESSING”, U.S. patent application Ser. No. 14/815,537, filed July 31, 2015, now issued as U.S. Pat. No. 9,610,045 on Apr. 4, 2017 (Attorney Docket Number C00008453.USU3) entitled “DETECTION OF VALID SIGNALS VERSUS ARTIFACTS”, all incorporated by reference in their entirety.
Number | Date | Country | |
---|---|---|---|
Parent | 14815478 | Jul 2015 | US |
Child | 15720119 | US |