Abstract:
A method, including, receiving a first group of electrocardiograph (ECG) signals derived from a single heartbeat and generated at a respective plurality of electrodes on a catheter in a heart of a subject, formulating a template relating times of annotations of the first group of the ECG signals, and assigning the template an index. The method further includes receiving a second group of ECG signals derived from a subsequent single heartbeat and generated at the electrodes, calculating times of annotations of the second group, formulating a comparison between the template and the times of annotations of the second group, and, when the comparison indicates that the times of annotations of the second group correspond to the template, assigning the index to the second group of ECG signals, and presenting graphically on a display an occurrence of the template relative to a timeline representing heartbeats from the heart.

Description:
CROSS-REFERENCE TO RELATED APPLICATION 
       [0001]    This application claims the benefit of U.S. Provisional Patent Application 62/203,422, filed Aug. 11, 2015, which is incorporated herein by reference. 
     
    
     FIELD OF THE INVENTION 
       [0002]    This invention relates generally to analysis of electrocardiograph (ECG) signals, and specifically to analysis of groups of such signals. 
       BACKGROUND OF THE INVENTION 
       [0003]    An article titled “Pattern and Timing of the Coronary Sinus Activation to Guide Rapid Diagnosis of Atrial Tachycardia After Atrial Fibrillation Ablation’ by Pascale et al, published in Circ Arrhythm Electrophysiol. 2013, is incorporated herein by reference. In the article, the authors state that atrial tachycardias (AT) during or after ablation of atrial fibrillation frequently pose a diagnostic challenge. The authors hypothesize that both the patterns and the timing of coronary sinus (CS) activation could facilitate AT mapping. 
         [0004]    U.S. Patent Application 2015/0208938, to Houben et al., whose disclosure is incorporated herein by reference, describes detection of an activation wavefront generated in the heart, using bipolar and unipolar electrograms. 
         [0005]    The description above is presented as a general overview of related art in this field and should not be construed as an admission that any of the information it contains constitutes prior art against the present patent application. 
         [0006]    Documents incorporated by reference in the present patent application are to be considered an integral part of the application except that, to the extent that any terms are defined in these incorporated documents in a manner that conflicts with definitions made explicitly or implicitly in the present specification, only the definitions in the present specification should be considered. 
       SUMMARY OF THE INVENTION 
       [0007]    An embodiment of the present invention provides a method, including: 
         [0008]    receiving a first group of electrocardiograph (ECG) signals derived from a single heartbeat and generated at a respective plurality of electrodes on a catheter in a heart of a subject; 
         [0009]    formulating a template relating times of annotations of the first group of the ECG signals, and assigning the template an index; 
         [0010]    receiving a second group of ECG signals derived from a subsequent single heartbeat and generated at the plurality of electrodes; 
         [0011]    calculating times of annotations of the second group of ECG signals; 
         [0012]    formulating a comparison between the template and the times of annotations of the second group; and 
         [0013]    when the comparison indicates that the times of annotations of the second group correspond to the template, assigning the index to the second group of ECG signals, and presenting graphically on a display an occurrence of the template relative to a timeline representing heartbeats from the heart. 
         [0014]    A disclosed embodiment includes using the first group and the second group to formulate a common map of the heart. 
         [0015]    A further disclosed embodiment includes, when the comparison indicates that the times of annotations of the second group do not correspond to the template, formulating a further template relating the times of annotations of the second group of the ECG signals, and assigning the further template a further index, and presenting graphically on the display a further occurrence of the further template relative to the timeline. Typically, the method includes using the first group to formulate a first map of the heart, and the second group to formulate a second map, different from the first map of the heart. 
         [0016]    A yet further disclosed embodiment includes receiving a stream of channel annotations, slicing the stream into segments corresponding to respective heartbeats, estimating a reference annotation as one of an average, a weighted average, or a median, of the channel annotations of the segments in the stream, and applying the reference annotation in formulating the template. Typically, the template includes differences between the times of annotations of the first group with the reference annotation. 
         [0017]    In an alternative embodiment the catheter is located in a coronary sinus of the heart. 
         [0018]    In a further alternative embodiment the plurality of electrodes are evenly spaced along the catheter. 
         [0019]    In a yet further alternative embodiment the catheter is linear. 
         [0020]    In some embodiments the template is assigned to a first type of arrhythmia, and the method further includes receiving a subsequent group of ECG signals, and monitoring if the times of annotations of the subsequent group do not correspond to the template, thus indicating that the subsequent group of ECG signals corresponds to a second type of arrhythmia, different from the first type. 
         [0021]    There is further provided, according to an embodiment of the present invention, apparatus, including: 
         [0022]    a catheter, located in a heart of a subject and configured to: 
         [0023]    receive a first group of electrocardiograph (ECG) signals derived from a single heartbeat and generated at a respective plurality of electrodes on the catheter, and 
         [0024]    receive a second group of ECG signals derived from a subsequent single heartbeat and generated at the plurality of electrodes; 
         [0025]    a processor configured to: 
         [0026]    formulate a template relating times of annotations of the first group of the ECG signals, and assign the template an index, 
         [0027]    calculate times of annotations of the second group of ECG signals, 
         [0028]    formulate a comparison between the template and the times of annotations of the second group, and 
         [0029]    when the comparison indicates that the times of annotations of the second group correspond to the template, assign the index to the second group of ECG signals; and 
         [0030]    a display configured to present graphically an occurrence of the template relative to a timeline representing heartbeats from the heart. 
         [0031]    The present disclosure will be more fully understood from the following detailed description of the embodiments thereof, taken together with the drawings, in which: 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0032]      FIG. 1  is a schematic block diagram illustrating operation of a signal analyzing algorithm, according to an embodiment of the present invention; 
           [0033]      FIG. 2  is an example of unipolar ECG signals with their annotations and their weighted average, according to an embodiment of the present invention; 
           [0034]      FIG. 3  is a graphical presentation of the time pattern of the signals of  FIG. 2 , according to an embodiment of the present invention; 
           [0035]      FIG. 4  is a flowchart illustrating steps of a template tracking mode of an algorithm, according to an embodiment of the present invention; 
           [0036]      FIG. 5  is a flowchart illustrating steps of a template matching mode of the algorithm, according to an embodiment of the present invention; 
           [0037]      FIG. 6  is a schematic graph of a template number as a function of beat, or group of annotations, number, that is presented on a display, according to an embodiment of the present invention; 
           [0038]      FIG. 7  illustrates a correlation between a template and a group of annotations, according to an embodiment of the present invention; and 
           [0039]      FIG. 8  illustrates an anti-correlation between a template and a group of annotations, according to an embodiment of the present invention. 
       
    
    
     DETAILED DESCRIPTION OF EMBODIMENTS 
     Overview 
       [0040]    The time patterns of the coronary sinus (CS) activations can be helpful in atrial tachycardia (AT) mapping. The analysis of time patterns of CS activation provides a rapid stratification, or ordering, of most likely macro-reentrant ATs, and the analysis also points toward the likely origin of focal ATs. 
         [0041]    The inventors have developed a method that analyzes multi-channel unipolar ECG signals so as to match and track time patterns of the signals. In one embodiment, the method finds, and keeps track of, certain “time configuration of activities” specific to different types of cardiac behavior. A “time configuration of activities,” also referred to herein as a “time pattern,” corresponds to specific time interrelations between unipolar annotations of the ECG signals. The annotations correspond to a local activation time (LAT) of the signal. 
         [0042]    LAT maps, derived from the ECG signals, may be used in analyzing functioning of the heart, and such maps are constructed by the CARTO® system, produced by Biosense-Webster of Diamond Bar CA. The maps typically illustrate the results produced by several mechanisms of electrical wave generation in the heart under arrhythmias. Embodiments of the present invention may automatically separate and track these different mechanisms so as to build LAT maps that may contain only a single type of the heart activation. Embodiments of the present invention enable faster and more accurate production of LAT maps. 
       Detailed Description 
     1. Introduction 
       [0043]      FIG. 1  is a schematic block diagram illustrating operation of a signal analyzing algorithm, according to an embodiment of the present invention. The algorithm is operated by a processor  10  which receives multiple electrocardiograph (ECG) signals from a reference catheter distal end  14  that is located in the coronary sinus (CS), and results of the operation of the algorithm may be presented by the processor on a display  18  of the system. Results of the operation may be incorporated into a map  21  of the heart, and/or in the form of a graph  24 , and both types of results are described below. In one embodiment catheter distal end  14  is approximately linear and has ten (10) electrodes evenly spaced along the distal end. In some embodiments the electrodes are arranged in pairs. 
         [0044]    As is described in more detail below, the algorithm analyzes incoming ECG signals of the reference catheter, and from the analysis identifies different types of uniform heart activations. The heart activations are supplied to an LAT mapping procedure, and the algorithm may also be used as a filter that indicates when to acquire a new point in the mapping procedure. Elements used to implement the algorithm, i.e., the processor, the catheter, and the display, may be present in the CARTO® system referenced above. The algorithm may be used in real-time analysis of ECG signals, and/or for analysis of recorded signals. 
         [0045]    The processor uses a time pattern tracker block  22 , to determine and keep track of “time configuration of activities” or “time patterns” that describe specific time interrelations between annotations, or LATs, of ECG signals. As is illustrated in  FIG. 1 , the processor sets a time interval, a window of interest, {ref_Anno(t i )−τ 1 WOI, ref_Anno(t i )+τ 2 WOI} when the track is to operate. (t i  is an identifying time of the time interval, τ 1 WOI is an initial time of the interval, and τ 2 WOI is a final time of the interval.) During this interval the tracker receives results of Wave Front annotation calculations performed by the processor on the ECG signals. The calculations are performed in a wave front annotation block  26 , wherein the processor operates a wavefront algorithm to calculate the annotation time for each ECG signal. A suitable algorithm is described in U.S. Patent Application 2015/0208938, referenced above. 
         [0046]    The tracker estimates a similarity of the current activation to a pre-set template (Template(n), where n, a positive integer, is a template index. A template is a descriptor of a time pattern of annotations. 
         [0047]    As described below, the algorithm run by processer  10  and tracker block  22  may operate in two modes, a template tracking (TT) mode wherein the time pattern is calculated from incoming ECG signals and is compared with an existing (pre-set) template, and a template matching (TM) mode wherein new templates may be generated from the signals. 
       2. Calculation of a Time Pattern 
       [0048]    To calculate the time pattern of a plurality of the CS reference channels the processor annotates each channel of a given heartbeat (in a given time interval comprising the heartbeat)—annUniChn(k, ti), where k is an index of the channels, forming a group of annotations. The processor then calculates a weighted average wAverage(ti) of the group of annotations according to equation (1): 
         [0000]    
       
         
           
             
               
                 
                   
                     wAverage 
                      
                     
                       ( 
                       
                         t 
                         i 
                       
                       ) 
                     
                   
                   = 
                   
                     
                       Σ 
                       k 
                       K 
                     
                     | 
                     
                       
                          
                         
                           Uni 
                            
                           
                             ( 
                             
                               k 
                               , 
                               
                                 t 
                                 i 
                               
                             
                             ) 
                           
                         
                       
                       
                          
                         t 
                       
                     
                     | 
                     
                       * 
                       
                         annUniChn 
                          
                         
                           ( 
                           
                             k 
                             , 
                             
                               t 
                               i 
                             
                           
                           ) 
                         
                       
                        
                       
                         / 
                       
                        
                       
                         Σ 
                         k 
                         K 
                       
                     
                     | 
                     
                       
                          
                         
                           Uni 
                            
                           
                             ( 
                             
                               k 
                               , 
                               
                                 t 
                                 i 
                               
                             
                             ) 
                           
                         
                       
                       
                          
                         t 
                       
                     
                     | 
                   
                 
               
               
                 
                   ( 
                   1 
                   ) 
                 
               
             
           
         
       
     
         [0049]    where Uni(k, ti) is the k th  ECG signal in the time interval {ref_Anno(t i )−τ 1 WOI, ref_Anno(t i )+τ 2 WOI}, 
         [0050]    annUniChn(k, ti) is the annotation of the k th  ECG signal, 
         [0000]    
       
         
           
             
                
               
                 Uni 
                  
                 
                   ( 
                   
                     k 
                     , 
                     
                       t 
                       i 
                     
                   
                   ) 
                 
               
             
             
                
               t 
             
           
         
       
     
         [0000]    is a derivative of the k th  ECG signal in a neighborhood of the annotation annUniChn(k, ti), 
         [0051]    and 
         [0052]    k is the total number of channels, i.e., the total number of electrodes on the CS catheter distal end. 
         [0053]    An example of unipolar ECG signals with their annotations (solid circles) and their weighted average (black vertical line) is presented in  FIG. 2 . The processor then calculates the difference between each annotation in the group and the weighted average (dT(k,ti)). The dimensional vector of the differences we call the “time pattern” of this group. A graphical presentation of the time pattern is shown in  FIG. 3 . 
       3. Algorithm Description 
       [0054]    Processor  10  uses tracker block  22  ( FIG. 1 ) to operate an algorithm working in one of two modes: the Template Tracking (TT) mode and the Template Matching (TM) mode referred to above. The TT mode is typically implemented initially. 
         [0055]      FIG. 4  is a flowchart illustrating steps of the TT mode, according to an embodiment of the present invention. In an initial step  30 , the processor initially provides block  22  with a reference annotation (ref_Anno(ti)), a window of interest ({τ1WOI, 2WOI}) and a template of the time pattern (Template(n)). Template(n) is produced in the TM mode, described below, and may be selected by a user of the algorithm. Alternatively, Template(n) may be generated by the user choosing a group of ECG signals from a selected single heartbeat, and using the TM mode to generate the time pattern which then becomes Template(n). 
         [0056]    In some embodiments the value of ref_Anno(t i ) provided by the processor is derived from an external input provided from a user of the algorithm. In alternative embodiments, the processor estimates the value of ref_Anno(t i ) automatically. The automatic estimation is typically by the processor receiving a stream of channel annotations from wave front annotation block  26 , slicing the stream into groups, each group corresponding to a heartbeat, and estimating ref_Anno(t i ) as one of an average, a weighted average, or a median, of the channel annotations of the groups in the stream. 
         [0057]    In the initial step the processor also provides block  22  with values of CS unipolar annotations. The annotations are continually calculated using the wave front algorithm of block  26 , and from the stream of the annotations the processor selects a group for a single heartbeat according to the time interval ({ref_Anno(ti)−τ1WOI, ref_Anno(ti)+τ2WOI}). 
         [0058]    In a similarity step  34  the processor calculates the time pattern for the current group, as described above in section 2. The calculation gives a k-dimensional vector for the time pattern. The processor then estimates a similarity of the current group to the pre-set template (Template(n)) received in step  30 . The similarity is determined by the following formula: 
         [0000]    
       
         
           
             
               
                 
                   
                     
                       s 
                       n 
                     
                      
                     
                       ( 
                       
                         t 
                         i 
                       
                       ) 
                     
                   
                   = 
                   
                     
                       1 
                       M 
                     
                      
                     
                       
                         ( 
                         
                           
                             ∑ 
                             m 
                             M 
                           
                            
                           
                             
                               [ 
                               
                                 
                                    
                                   
                                     T 
                                      
                                     
                                       ( 
                                       
                                         m 
                                         , 
                                         
                                           t 
                                           i 
                                         
                                       
                                       ) 
                                     
                                   
                                 
                                 - 
                                 
                                    
                                   
                                     T 
                                      
                                     
                                       ( 
                                       
                                         m 
                                         , 
                                         n 
                                       
                                       ) 
                                     
                                   
                                 
                               
                               ] 
                             
                             2 
                           
                         
                         ) 
                       
                       0.5 
                     
                   
                 
               
               
                 
                   ( 
                   2 
                   ) 
                 
               
             
           
         
       
     
         [0059]    where s n (t i ) is a value of the similarity between the calculated time pattern {dT(k,ti)} and the vector corresponding to Template(n) {dT(k,n)}, and 
         [0060]    M is the number of channels in the group of annotations received in step  30 . In some embodiments not all channels provide annotations, so that M≦K. 
         [0061]    In a decision step  38  the processor checks if s n (t i ) is less than a pre-set threshold, typically in a range of approximately 0.5—approximately 1.2, although it may be larger or smaller than this range. In this case the decision returns true and the processor recognizes that this group belongs to Template(n), and proceeds to a buffer storage step  42 . As is described below with reference to  FIG. 6 , the processor then presents the result of the identified template on display  18 . The flowchart then returns to step  30  to receive a group of annotations for a subsequent heartbeat. 
         [0062]    If decision step  38  returns false the flowchart returns to step  30  and the processor processes a new group of values of CS unipolar annotations. 
         [0063]      FIG. 5  is a flowchart illustrating steps of the TM mode, according to an embodiment of the present invention. Unlike the template tracking mode, the template matching mode doesn&#39;t get a template as an input parameter. As shown in  FIG. 5 , in the TM mode the processor repeats steps  30  and  34  of the TT mode, as described above. In a decision step  68  the TM mode seeks matching between a current time pattern and all templates that have been found before. If step  68  returns false, i.e., if the processor cannot match a template to the current pattern, then in a new template step  76  it opens a new template using the current time pattern, and the new template may be presented on display  18  (described below with reference to  FIG. 6 ). 
         [0064]    If the matching is recognized, i.e., if the processor is able to match a template to the current pattern, then in a recalculation step  72  the selected template may be re-calculated to reflect a new member of a cluster of time patterns used to generate the template. The recalculation typically comprises incorporating the values found in step  72  into the calculation of the time pattern by averaging values of dT(k,n) for a number of the groups in the cluster. In some embodiments the recalculation is only performed for the first q members in the cluster, where q may be approximately 10. 
         [0065]      FIG. 6  is a schematic graph presented on display  18 , according to an embodiment of the present invention. As explained above with reference to step  42 , identified templates may be presented on display  18  as a graph  24  ( FIG. 1 ). Graph  24  plots template number vs. group of annotations number, and the group of annotations number corresponds to a timeline of the heartbeats received. As shown in the graph approximately 430 groups have been analyzed, corresponding to the same number of heartbeats. As is also illustrated in the graph, most heartbeats of the timeline are classified as Template  2 , but some heartbeats are classified as Template  1  and some are classified as Template  3 . 
         [0066]      FIG. 7  illustrates a correlation between a template and a group of annotations, according to an embodiment of the present invention. The figure is a graph of channel number vs. dT for a template based on heartbeat  412 , the solid line, and for a group of annotations from heartbeat  463 , the broken line, and illustrates the close similarity between the template and the group of annotations being analyzed. 
         [0067]    Pairs of graphs such as those illustrated in  FIG. 7  typically depict a situation where two heartbeats originate from the same region in the heart. 
         [0068]      FIG. 8  illustrates an anti-correlation between a template and a group of annotations, according to an embodiment of the present invention. The figure illustrates how a group of annotations from heartbeat  123 , the broken line, does not correlate with the template based on heartbeat  412 , the solid line. Rather, since the slopes of the two graphs have opposite signs, there is an anti-correlation between the template and the group of annotations being analyzed. 
         [0069]    Pairs of graphs such as those illustrated in  FIG. 8  typically occur where two heartbeats originate from two regions in the heart that are separated from each other. For example, such a situation may occur when one region is in the right atrium, and the other region is in the left atrium. 
         [0070]    A cardiac electrophysiological map, such as a map of LAT in the heart chambers, is typically produced by acquiring sets of ECG signals, and incorporating results of the signals, i.e., measured LATs, into the map. However, the sets of ECG signals typically include signals having more than one template, and this leads to inaccuracies in the produced map. 
         [0071]    Embodiments of the present invention enable the different sets of signals to be separated into subsets, each subset corresponding to a different template. Each subset may be used to construct a respective LAT map of the heart. Thus, returning to  FIG. 6 , for the three different templates shown in the graph, the acquired signals may be separated into three different subsets, and a map produced for each subset. Typically the different subsets, each for a different template, correspond to different types of arrhythmia. 
         [0072]    It will also be appreciated that by analyzing sets of ECG signals as templates, as has been described above, embodiments of the present invention may be used to monitor for a change in arrhythmia, since an arrhythmia change corresponds to a change in template. 
         [0073]    It will be appreciated that the embodiments described above are cited by way of example, and that the present invention is not limited to what has been particularly shown and described hereinabove. Rather, the scope of the present invention includes both combinations and subcombinations of the various features described hereinabove, as well as variations and modifications thereof which would occur to persons skilled in the art upon reading the foregoing description and which are not disclosed in the prior art.