[go: up one dir, main page]

WO2024173270A2 - Stimulation device location identification system - Google Patents

Stimulation device location identification system Download PDF

Info

Publication number
WO2024173270A2
WO2024173270A2 PCT/US2024/015434 US2024015434W WO2024173270A2 WO 2024173270 A2 WO2024173270 A2 WO 2024173270A2 US 2024015434 W US2024015434 W US 2024015434W WO 2024173270 A2 WO2024173270 A2 WO 2024173270A2
Authority
WO
WIPO (PCT)
Prior art keywords
library
simulated
patient
organ
device location
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/US2024/015434
Other languages
French (fr)
Other versions
WO2024173270A3 (en
Inventor
Christopher J. T. VILLONGCO
Robert Joseph Krummen
David E. KRUMMEN
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Vektor Group Inc
University of California Berkeley
University of California San Diego UCSD
Original Assignee
Vektor Group Inc
University of California Berkeley
University of California San Diego UCSD
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Vektor Group Inc, University of California Berkeley, University of California San Diego UCSD filed Critical Vektor Group Inc
Publication of WO2024173270A2 publication Critical patent/WO2024173270A2/en
Publication of WO2024173270A3 publication Critical patent/WO2024173270A3/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/50ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for simulation or modelling of medical disorders
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61NELECTROTHERAPY; MAGNETOTHERAPY; RADIATION THERAPY; ULTRASOUND THERAPY
    • A61N1/00Electrotherapy; Circuits therefor
    • A61N1/18Applying electric currents by contact electrodes
    • A61N1/32Applying electric currents by contact electrodes alternating or intermittent currents
    • A61N1/36Applying electric currents by contact electrodes alternating or intermittent currents for stimulation
    • A61N1/372Arrangements in connection with the implantation of stimulators
    • A61N1/37211Means for communicating with stimulators
    • A61N1/37235Aspects of the external programmer
    • A61N1/37247User interfaces, e.g. input or presentation means
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H20/00ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance
    • G16H20/30ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance relating to physical therapies or activities, e.g. physiotherapy, acupressure or exercising
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H30/00ICT specially adapted for the handling or processing of medical images
    • G16H30/20ICT specially adapted for the handling or processing of medical images for handling medical images, e.g. DICOM, HL7 or PACS
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/60ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices
    • G16H40/67ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices for remote operation
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/20ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for computer-aided diagnosis, e.g. based on medical expert systems
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/70ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for mining of medical data, e.g. analysing previous cases of other patients

Definitions

  • the localization process to determine the activation location requires depolarization of cardiac tissue either during the arrhythmia or during pacing, such that an electrical depolarization event or “heartbeat” in the chamber being mapped may be observed with the surface electrocardiogram (ECG).
  • ECG surface electrocardiogram
  • pacing is often unable to effectively stimulate the heart to induce depolarization because the electrodes of a stimulation device (e.g., of a pacing catheter) are unable to “capture” the cardiac tissue.
  • the inability to capture the cardiac tissue results from an inadequate contact of one or more electrodes with healthy cardiac tissue such as no or poor contact with healthy cardiac tissue or contact with damaged cardiac tissue (e.g., tissue with advanced cardiac fibrosis or scar tissue).
  • a first technology determines the device location within the body using electrical impedance and/or references to external magnets but requires additional mapping patches to be placed on the patient and/or external magnets to be placed near the patient during a procedure.
  • a second technology uses fluoroscopy to determine the device location but exposes patients and operators to x-rays and requires rotating the imaging plane during sterile procedures.
  • a third technology employs intracardiac echocardiography (ICE) imaging to visualize cardiac chambers and the device location but requires manual adjustment of the image plane to perform the mapping process.
  • ICE intracardiac echocardiography
  • Figure 1 is a diagram that illustrates a graphic of a heart with the location of the electrodes indicated.
  • Figure 2 is a diagram that illustrates a graphic generated by the SDLI system corresponding to the graphic of Figure 1 .
  • Figure 3 illustrates an ECG with a spike portion during activation of a stimulation device in the left atrium.
  • Figure 4 is a diagram that illustrates a vectorcardiogram corresponding to the spike portion of Figure 3.
  • Figure 5 is a diagram that illustrates an ECG with a spike portion during activation of the stimulation device in the right ventricle.
  • Figure 6 is a diagram that illustrates a vectorcardiogram corresponding to the spike portion of Figure 4.
  • Figure 7 is a flow diagram that illustrates the processing of an identify location component of the SDLI system in some embodiments.
  • Figure 8 is a block diagram that illustrates components of the SDLI system in some embodiments.
  • Figure 9 is a flow diagram that illustrates the processing of a run simulation component of the SDLI system in some embodiments.
  • Figure 10 is a flow diagram that illustrates the processing of a train machine learning (ML) model component of the SDLI system in some embodiments.
  • ML train machine learning
  • Figure 11 is a flow diagram that illustrates the processing of a determine device location based on an ML component of SDLI system in some embodiments.
  • Figure 12 is a flow diagram that illustrates the processing of a determine device location based on an ML component of the SDLI system in some embodiments.
  • Methods and systems are provided for determining the device location of a stimulation device within a heart when cardiac tissue is not captured without the disadvantages of prior technologies.
  • a catheter is in the heart and cardiac tissue is not captured, knowledge of the device location may be helpful in guiding the catheter and reducing complications from catheter manipulations such as cardiac perforations and tamponade.
  • knowledge of the device location can be helpful in guiding the catheter from peripheral access sites (e.g., internal jugular vein, femoral vein, femoral artery) through vascular structures such as the superior vena cava, inferior vena cava, or aorta which do not contain cardiac tissue.
  • a stimulation device location identification (SDLI) system identifies the location of a stimulation device of a catheter within a body when activation of the stimulation device does not capture tissue of an organ.
  • SDLI stimulation device location identification
  • the SDLI system may be employed to determine the location of a stimulation device in the cardiovascular system more generally in other organs such as the gastrointestinal tract and in non-human patients (e.g., a dog and a horse).
  • the SDLI system accesses a patient electrogram (e.g., ECG or gastroenterogram) collected from a patient and identifies a patient device location based on a library of associations between library electrograms and library device locations.
  • a library electrogram represents an electrogram that would be collected when a stimulation device is activated while at the associated library device location.
  • a device location may include electrode locations of multiple electrodes of the stimulation device.
  • the library may include simulated electrograms and simulated device locations and/or clinical electrograms (i.e., collected from a patient) and clinical device locations.
  • the simulated electrograms may be generated by simulating electrical activity within a pool of blood of the organ during simulated activation while a simulated stimulation device is at the associated simulated device location.
  • the clinical electrograms may be collected while a clinical stimulation device is within a pool of blood of the organ during activation while the clinical stimulation device is at the associated clinical device location.
  • the SDLI system may compare the patient electrogram to the library electrograms to find a similar library electrogram, that is, satisfies a similarity criterion (e.g., based on a Pearson correlation, cosine similarity, an ML model such as a twin neural network) and output the library device location associated with the similar library electrogram as an indication of the patient device location.
  • a similarity criterion e.g., based on a Pearson correlation, cosine similarity, an ML model such as a twin neural network
  • the SDLI system may alternatively employ a machine learning (ML) model that inputs the patient electrogram and outputs a device location as an indication of the patient device location.
  • the ML model may be trained using training data that includes library electrograms that are each labeled with the associated library device location.
  • the SDLI system To generate a simulated ECG, the SDLI system employs a computational model to simulate electrical activity of a heart and of blood assuming activation of a simulated device location that does not capture tissue.
  • a computational model is described in Villongco, C. V., et al., “Patient-Specific Modeling of Ventricular Activation Pattern using Surface ECG-derived Vectorcardiogram in Bundle Branch Block,” Progress in Biophysics and Molecular Biology, vol. 115, iss. 2-3, August 2014, p. 305- 313, which is hereby incorporated by reference.
  • the SDLI system then generates a simulated ECG based on the simulated electrical activity.
  • the SDLI system To run a simulation, the SDLI system generates a cardiac three-dimensional mesh with vertices (e.g., 70,000 vertices) corresponding to locations within the heart having a simulated cardiac geometry. Each vertex is associated with one or more values that indicate electrical activity at that location based on electrophysiological characteristics (e.g., conduction velocity) of the heart near the location of the vertex. The simulations may represent normal sinus rhythm since activation of the simulated stimulation device will likely not induce depolarization. [0021] Each simulation is based on simulated organ characteristics of the organ.
  • vertices e.g., 70,000 vertices
  • the simulated cardiac characteristics may include cardiac geometry (e.g., atrial and ventricular size and shape and heart orientation in the thorax), rotor location, focal source location, ventricular myofiber orientation, cardiomyocyte intracellular potential electrogenesis and propagation, and so on.
  • a simulated cardiac characteristic is specified by a characteristic value such as 66 mm for the longitudinal dimension of the right ventricle.
  • Each cardiac characteristic may have a set or range of possible characteristic values. For example, a rotor location within the right ventricle may have 78 possible characteristic values corresponding to different locations within the right ventricle.
  • a simulated heart is represented by a cardiac description that is a collection of characteristic values for cardiac characteristics.
  • the SDLI system also simulates electrical activity (e.g., based on current flowing from the anode to the cathode) within the blood near the simulated device location based on blood characteristics and stimulation device characteristics (e.g., strength (e.g., voltage), duration (e.g., milliseconds), and electrode type).
  • the SDLI system may employ a blood three-dimensional mesh (e.g., prism shaped) enclosing a line or lines between a simulated anode and cathode at the simulated device location. Each vertex of the blood three-dimensional mesh is associated with one or more values that indicate electrical activity near that vertex.
  • the SDLI system may generate values for points between the vertices of the mesh, rather than just at the vertices. For example, the SDLI system may calculate the values for such points using a Gaussian quadrature technique.
  • a computational model is described in Villongco, C. V., et al., “Patient-Specific Modeling of Ventricular Activation Pattern using Surface ECG-derived Vectorcardiogram in Bundle Branch Block,” Progress in Biophysics and Molecular Biology, Vol. 115, Iss. 2-3, August 2014, p. 305-313, which is hereby incorporated by reference.
  • the SDLI system runs a simulation by recalculating the values at simulated time intervals (e.g., 1 millisecond) for a simulated length of cardiac activity (e.g., 6 seconds).
  • the SDLI system assumes that the simulated device is activated during some simulated time interval(s) and calculates values of the blood three-dimensional mesh for that simulated time interval and subsequent simulated time intervals.
  • the SDLI system may calculate a dipole based on the electrical activity of the heart and a dipole based on the electrical activity within the blood. The dipoles may be combined to generate an overall simulated VCG.
  • the SDLI system may also generate a simulated ECG that represents an ECG that would be collected from a patient who had same electrical activity as the simulated electrical activity.
  • the SDLI system may separately generate each lead of the ECG.
  • the SDLI system assumes a body composition when calculating an ECG to factor in the influence of, for example, body fat, muscle, and skeletal composition on the electrical field detected by a simulated ECG electrode.
  • the SDLI system may generate multiple simulated ECGs for a simulation that is each based on a different body composition.
  • the ECGs may represent, for example, one-lead, three-lead, six-lead, or twelve-lead ECGs or a 252- lead body surface (ECG) vest.
  • the SDLI system may only run simulations to simulate electrical activity within the blood and not within cardiac tissue.
  • the ECG derived from a simulation (referred to as a spike signature) can be superimposed on prior ECGs representing electrical activity of cardiac tissue to generate combined ECGs.
  • the SDLI system may superimpose the spike signature on each prior ECG at different offsets within the cardiac cycle resulting in combined ECG for each combination of spike signature, prior each prior cardiogram, and each offset.
  • the system estimates effects on a cardiogram resulting from current flowing through blood that is induced by electrodes in the blood of cardiac chamber.
  • the effects are based on the electric field created by the flow of current.
  • the effects may be modeled by solving the Laplace or Poisson equations for electric potential in a conductive medium such as blood.
  • the electric field E is the negative gradient of the electric potential as represented by the following equation:
  • E - (j> where represents the gradient of the electric potential represented as a vector with a direction based on the greatest rate of increase of the electric potential and with a magnitude based on the rate of increase.
  • the electric field may also be based on an electric dipole moment created by a bipolar catheter with electrodes separated by distance d.
  • the electric dipole moment may be represented by the following equation: p - q- d where p is the electric dipole moment, q is the magnitude of the charges, d is the displacement vector pointing from the negative charge to the positive charge.
  • the electric field at a point in space due to an electric dipole may be represented by the following equation: where E is the electric field vector at the point, r is a position vector of the point from the center of the dipole, r is a unit vector in the direction of f , r is the magnitude of r , and is the vacuum permittivity ( ⁇ 8.8 x 10' 12 F/m).
  • the clinical ECGs and clinical device locations may be collected from patients during an electrophysiology procedure such as an ablation procedure to terminate an arrhythmia.
  • the clinical ECGs may be collected by a standard ECG device, and the clinical device location may be determined using one of the prior technologies discussed on the Background section.
  • the SDLI system stores the association between the clinical ECGs and the clinical device locations in the library.
  • the SDLI system may generate multiple simulated ECGs that each assume a different ECG specification.
  • An ECG specification may specify a simulated thorax configuration and a simulated lead placement.
  • a thorax configuration specifies thorax characteristics such as body size and body composition. Body composition includes fat and muscle characteristics (e.g., distribution), bone density, and so on.
  • a lead placement specifies a number of leads (e.g., 3, 5, 8, or 12) and, for each lead, the location of one or more electrodes used to generate that lead. For example, one lead placement may be 10 standard lead locations of a standard ECG, and another may be 8 standard lead locations and 2 nonstandard lead locations, for example, resulting from a placement error.
  • the SDLI system maintains, for each simulated ECG, an association between that simulated ECG and the ECG specification that it was generated based on. As an example, if 1 ,000 simulations are run and there are 50 ECG specifications (e.g., 5 different thorax configurations and 10 different lead placements), then the SDLI system would generate 50,000 simulated ECGs.
  • a patient ECG is more likely to match a simulated ECG based on a simulated thorax configuration and simulated lead placement that are similar to the patient thorax configuration and the patient lead placement.
  • the corresponding simulated device location associated with that matching simulated ECG is likely a better match to the actual device location.
  • the SDLI system may only compare the patient ECG to simulated ECGs generated based simulated thorax configurations and simulated lead placements that are similar in those aspects.
  • Figure 1 is a diagram that illustrates a graphic of a heart with the location of the electrodes indicated.
  • Graphic 100 of a heart illustrates the superior vena cava 101 , the right atrium 102, the descending aorta 103, the right ventricle 104, the left ventricle 105, and the right ventricular outflow tract 106.
  • the graphic also illustrates path 111 of the catheter and the locations of the anode 112 and a cathode 113 which have a 5 mm spacing.
  • the catheter entered the right jugular vein (not shown) and was advanced through the superior vena cava into the right atrium.
  • FIG. 2 is a diagram that illustrates a graphic generated by the SDLI system corresponding to the graphic of Figure 1 .
  • Graphic 200 may be generated based on a three-dimensional mesh representing the geometry of the patient heart.
  • the catheter was periodically activated. If the stimulation device did not capture cardiac tissue, the SDLI system was employed to determine the locations of the electrodes of the stimulation device. If the stimulation device did capture cardiac tissue to induce depolarization, a computational mapping system based on induced depolarization may be employed to determine the locations of the electrodes.
  • a computational mapping system is described in U.S. Pat. No. 10,856,816 entitled “Machine Learning using Simulated Cardiograms” and issued on December s, 2020, which is hereby incorporated by reference.
  • the SDLI system may employ a library that includes mappings of electrograms to device locations for electrograms collected with capture and without capture.
  • the SDLI system may calculate the orientation of the stimulation device relative to the cardiac tissue.
  • the most effective orientation of a stimulation device for capturing cardiac tissue may be when the distal end of the stimulation device (where an electrode is located) is perpendicular to the cardiac wall.
  • the SDLI determines the angle of between a device line between the anode location and the cathode location and the slope of the cardiac wall (represented by a three- dimensional mesh) at the point the line intersects the cardiac wall.
  • the SDLI system may output an indication of the angle to help in maneuvering the stimulation device to a near 90-degree angle so that cardiac tissue may be captured.
  • the SDLI system may display a highlighted device line and a highlighted slope line to assist in the maneuvering.
  • the SDLI system identifies the “spike” portion of the patient ECG that represents the spike in electrical activity resulting from activation of the stimulation device without capture.
  • the spike portion corresponds to the time intervals from the start of activation of the stimulation device until the end of the activation.
  • the library ECGs represent the spike portions of ECGs.
  • FIG. 3 illustrates an ECG with a spike portion during activation of a stimulation device in the left atrium.
  • the ECG 300 includes spike portion 301 resulting from activation of the stimulation device without capture. The activation occurred when the electrodes were located near the upper pulmonary vein and the catheter tip was oriented upward toward the left side of the patient.
  • the SDLI system may allow a person to manually demarcate the spike portion, apply an ML model to the patient ECG to identify the spike portion, and so on.
  • the ML model may be trained using training data that includes simulated ECGs labeled with the spike portions of the ECGs.
  • the SDLI system may also employ a matched filter to identify a spike portion in a patient ECG using the spike portions of the library ECGs as templates.
  • the QRS wave may obfuscate the spike portion. So, the SDLI system may identify device locations based on spike portions of an ECG that are in the TP segment.
  • Figure 4 is a diagram that illustrates a vectorcardiogram corresponding to the spike portion of Figure 3. The orientation of the VCG 400 is downward and to the patient’s right (e.g., opposite from the orientation of the catheter tip) from the plot origin 401 point (0, 0, 0).
  • FIG 5 is a diagram that illustrates an ECG with a spike portion during activation of the stimulation device in the right ventricle.
  • the ECG 500 includes spike portion 501 resulting from activation of the catheter without capture.
  • the catheter tip (distal end) is oriented anteriorly, inferiorly, and to the left of the patient.
  • Figure 6 is a diagram that illustrates a vectorcardiogram corresponding to the spike portion of Figure 4.
  • the orientation of the VCG 600 is posterior, superior, and rightward away from the plot origin 601 point (0, 0, 0).
  • the SDLI system may also store additional library characteristics data in the library for each association.
  • the library characteristics data may be, for example, images (e.g., x-ray or ultrasound images) of a thorax, body composition data, prior ablation locations, cardiac segment of the device location (e.g., left atrium), cardiac geometry, stimulation device characteristics, patient demographic data (e.g., sex), arrhythmia type, and so on.
  • the SDLI system may generate simulated images, for example, based on projecting x-rays through a simulated thorax factoring in the linear attenuation coefficients of structures (e.g., bones and liver) within the thorax.
  • the stimulation device characteristics may include manufacturer, electrode count, electrode spacing, activation duration and strength, and so on.
  • the SDLI system may determine the device location factoring in the library characteristics data by effectively calibrating or filtering the library based on library characteristic data that is similar to patient characteristics data (e.g., including characteristics of the clinical stimulation device).
  • the SDLI system may also generate separate libraries for subsets of the library characteristics data such as a library for atrial fibrillation, a library for ventricular tachycardia, a library for the stimulation device of a certain manufacturer, and so on. (See, 754 patent.)
  • the SDLI system may train the ML model using training data that includes feature vectors that include a library ECG and library characteristic data labeled with a library device location.
  • the features of the feature vector may include an image of a spike portion and/or characteristics derived from the spike portion such as average voltage, width, or maximum slope of the spike portion.
  • the features may also include anatomical structural information (e.g., images such as CT, x-ray, MR, echocardiography of the heart, vessels, and stomach), pacing maneuvers, stimulation device characteristics, and so on.
  • the ML model may be based on various machine learning architectures such as a convolutional neural network (CNN) that inputs a spike portion and outputs the location of electrodes.
  • CNN convolutional neural network
  • a CNN may be employed to process each type of image (e.g., of pacing spikes and anatomical structures) and a neural network (NN) may process outputs of the CNNs and the non-image features.
  • the CNNs may be autoencoders that are separately trained.
  • the NN may be trained with features that that include the latent vectors of the CNNs and the non-image features. Alternatively, the CNNs and the NN may be trained in parallel. Additional machine learning architectures that may be employed by the SDLI system are described below.
  • the SDLI system may be used in a variety of applications such as the following example applications.
  • the first application is the guiding and manipulating of medical instruments within the body such as during an ablation procedure during which knowledge of the precise location of a pacing, a mapping, or an ablation catheter may be advantageous.
  • a second application is during a pacemaker implantation procedure as the electrical leads or leadless pacemaker devices are advanced through the vascular system and through the cardiac chambers prior to or between periods of contact with cardiac tissue.
  • the SDLI system may be used during a left bundle branch (LBB) pacing procedure to determine the location of the catheter.
  • LBB left bundle branch
  • a third application is the determining of the location of each of the electrodes during a cardiac resynchronization therapy.
  • a fourth application is the tracking of a catheter as it is advanced through vascular structures to perform coronary or peripheral angiograph. Such tracking may shorten overall procedure time, reduce fluoroscopy use, and decrease patient exposure to anesthesia.
  • the SDLI system may interface with a navigation device that controls the movement of the catheter within the heart.
  • the navigation device may be supplied with a path to a target location within the heart.
  • the navigation device moves the catheter and activates the stimulation device.
  • the SDLI system determines a location and provides the location of the electrodes to the navigation device.
  • the navigation device then controls movement of the catheter and activates the stimulation device and continues to repeat this process.
  • the navigation device may employ a mechanism to direct movement of the catheter (e.g., push, pull, twist, and bend) in a manner similar to how a cardiac electrophysiologist would control movement of the catheter.
  • An example navigation device is the Niobe® Magnetic Navigation System provided by Stereotaxis, Inc.
  • a machine learning (ML) model may be any of a variety or combination of supervised, semi-supervised, self-supervised, unsupervised, or reinforcement learning ML models including a neural network such as fully connected, convolutional, recurrent, or autoencoder neural network, or restricted Boltzmann machine, a support vector machine, a Bayesian classifier, k-means clustering, decision tree, generative adversarial networks, transformer, and so on.
  • a neural network such as fully connected, convolutional, recurrent, or autoencoder neural network, or restricted Boltzmann machine, a support vector machine, a Bayesian classifier, k-means clustering, decision tree, generative adversarial networks, transformer, and so on.
  • the ML model is a deep neural network, the model is trained using training data that includes features derived from data and labels corresponding to the data.
  • the data may be images of ECGs with a feature being the image itself, and the labels may be a characteristic indicated by the ECGs (e.g., normal sinus rhythm or stimulation device location).
  • the training results in a set of weights for the activation functions of the layers of the deep neural network.
  • the trained deep neural network can then be applied to new data to generate a label for that new data.
  • a hyper-surface is found to divide the space of possible inputs. For example, the hypersurface attempts to split the positive examples (e.g., images of normal sinus rhythm ECGs) from the negative examples (e.g., images of ECGs with a stimulation device spike) by maximizing the distance between the nearest of the positive and negative examples to the hyper-surface.
  • the trained support vector machine can then be applied to new data to generate a classification (e.g., normal sinus rhythm or stimulation device location) for the new data.
  • a ML model may generate values of discrete domain (e.g., classification), probabilities, and/or values of a continuous domain (e.g., regression value, classification probability).
  • Adaptive boosting transforms a weak learning algorithm (an algorithm that performs at a level only slightly better than chance) into a strong learning algorithm (an algorithm that displays a low error rate).
  • the weak learning algorithm is run on different subsets of the training data.
  • the algorithm concentrates increasingly on those examples in which its predecessors tended to show mistakes.
  • the algorithm corrects the errors made by earlier weak learners.
  • the algorithm is adaptive because it adjusts to the error rates of its predecessors.
  • Adaptive boosting combines rough and moderately inaccurate rules of thumb to create a high-performance algorithm.
  • Adaptive boosting combines the results of each separately run test into a single, very accurate classifier.
  • Adaptive boosting may use weak classifiers that are single-split trees with only two leaf nodes.
  • a neural network model has three major components: architecture, loss function, and search algorithm.
  • the architecture defines the functional form relating the inputs to the outputs (in terms of network topology, unit connectivity, and activation functions).
  • the search in weight space for a set of weights that minimizes the loss function is the training process.
  • a neural network model may use a radial basis function (RBF) network and a standard or stochastic gradient descent as the search technique with backpropagation.
  • RBF radial basis function
  • a convolutional neural network has multiple layers such as a convolutional layer, a rectified linear unit (ReLU) layer, a pooling layer, a fully connected (FC) layer, and so on.
  • Some more complex CNNs may have multiple convolutional layers, pooling layers, and FC layers.
  • Each layer includes a neuron for each output of the layer.
  • a neuron inputs outputs of prior layers (or original input) and applies an activation function to the inputs to generate an output.
  • a convolutional layer may include multiple filters (also referred to as kernels or activation functions).
  • a filter inputs a convolutional window, for example, of an image, applies weights to each pixel of the convolutional window, and outputs value for that convolutional window. For example, if the static image is 256 by 256 pixels, the convolutional window may be 8 by 8 pixels.
  • the filter may apply a different weight to each of the 64 pixels in a convolutional window to generate the value.
  • An activation function has a weight for each input and generates an output by combining the inputs based on the weights.
  • the activation function may be a rectified linear unit (ReLU) that sums the values of each input times its weight to generate a weighted value and outputs max(0, weighted value) to ensure that the output is not negative.
  • the weights of the activation functions are learned when training a ML model.
  • the ReLU function of max(0, weighted value) may be represented as a separate ReLU layer with a neuron for each output of the prior layer that inputs that output and applies the ReLU function to generate a corresponding “rectified output.”
  • a pooling layer may be used to reduce the size of the outputs of the prior layer by downsampling the outputs. For example, each neuron of a pooling layer may input 16 outputs of the prior layer and generate one output resulting in a 16-to-1 reduction in outputs.
  • An FC layer includes neurons that each input all the outputs of the prior layer and generate a weighted combination of those inputs. For example, if the penultimate layer generates 256 outputs and the FC layer inputs a neuron for each of three classifications (e.g., AF, VF, AFL), each neuron inputs the 256 outputs and applies weights to generate value for its classification.
  • three classifications e.g., AF, VF, AFL
  • the U-Net ML model includes a contracting path and an expansive path.
  • the contracting path includes a series of max pooling layers to reduce spatial information of the input image and increase feature information.
  • the expansive path includes a series of upsampling layers to convert the feature information to the output image.
  • the input and output of a U-Net represent an image such as an image of patient ECG as input and an image of a base region as output.
  • Multimodal ML combines different modalities of input data to make a prediction.
  • the modalities may be, for example, images, extracted features, latent vectors, arrhythmia type, patient demographics, and so on.
  • data of the different modalities is combined at the input stage, and one ML model is then trained on the multimodal data.
  • the training data for this modality may include a collection of sets of training data (e.g., images and derived features).
  • the training data may be used in its original form or preprocessed, for example, to reduce its dimensionality by compressing the data into byte arrays.
  • the concatenated bytes may be then processed by a cross-attention mechanism to condense the concatenated bytes into a vector of a fixed size.
  • the vectors are then used to train an ML model primarily using supervised approaches although self-supervised or unsupervised approaches may also be used.
  • data from different modalities may be kept separate at the input stage and used as inputs to different, modality-specific ML models (e.g., a CNN for image data and a recurrent neural network (RNN) for sequential data).
  • modality-specific ML models may be trained jointly such that information from across different modalities is combined to make predictions, and the combined (cross-modality) loss is used to adjust model weights.
  • the modalityspecific ML models may also be trained separately using a separate loss function for each modality.
  • a combined ML is then trained based on the outputs of the modality specific models.
  • the training data for each modalityspecific ML model may be based on its data along with a label.
  • the combined ML model is then trained with the outputs of the modality-specific ML models with a final label.
  • Transformer ML employs an attention mechanism to process tokens representing the input in parallel. For example, if a transformer ML model is used to process an ECG represented as a voltage-time series with portions of the series represented as a token that includes a representation of the portion and its positional information.
  • a transformer ML model includes encoders with a neural network and selfattention mechanism and decoders with an attention mechanism, a self-attention mechanism, and a neural network.
  • the first layer of the encoder inputs the tokens, and each other layer inputs the encodings of the previous layer.
  • the self-attention mechanism inputs the encodings of the previous layer (or tokens for the first encoder) and weighs the relevance of each encoding to each other to generate input for the neural network which generates the encodings.
  • the first layer of decoder inputs data based on the tokens, and each other layer inputs the decoding of the prior layer.
  • Each layer of the decoder also inputs the encodings of the encoder.
  • the attention and self-attention mechanisms input the decodings (or tokens for the first layer) and weigh the relevance of each decoding to each other to generate input for the neural network.
  • transformers Although initially developed to process sentences, transformers have been adapted for other application such as image recognition.
  • the input to the transformer is a representation of fixed-size patches of the image (e.g., ECG).
  • the representation of a patch may be, for each pixel of the patch, an encoding of its row, column, and color.
  • the output of the transformer may be, for example, a classification of the image.
  • a kNN model provides information relating to an entity.
  • the training data for a kNN model may be training feature vectors (e.g., ECG images) and a label (e.g., stimulation device location) for each feature vector indicating information relating to an entity (e.g., ECG) having the values of the features of that feature vector.
  • a kNN model may be used without a training phase that is without learning weights or other parameters to represent the training data. In such a case, the patient feature vector is compared to the training feature vectors to identify a number (e.g., represented by the “k” in kNN) of similar training feature vectors.
  • the labels associated with the similar training feature vectors are analyzed to provide information for the entity.
  • the labels of the training feature vectors that are more similar to an entity feature vector may be given a higher weight than those that are less similar. For example, if k is 10 and four training feature vectors are very similar and six are less similar, similarity weights of 0.9 may be assigned to the very similar training feature vectors and 0.2 to the less similar. If three of the four and one of the six have the same information, then the information for the entity is primarily based on that information even though most of the 10 have different information.
  • training feature vectors that are very similar are closer to the entity feature vector in a multi-dimensional space of features and a similarity weight is based on distance between the feature vectors.
  • Various techniques may be employed to calculate a similarity metric indicating similarity between a candidate feature vector and a training feature vector such as a dot product, cosine similarity, a Pearson’s correlation, and so on.
  • a clustering technique may be employed to identify clusters of training feature vectors that are similar and have the same label.
  • a training feature vector may be generated for each cluster (e.g., one from the cluster or one based on mean values for the features) as a cluster feature vector and assign a cluster weight to it based on number of training feature vectors in the cluster.
  • the ML models generate label for cardiogram (e.g., ECG or VCG) input a feature vector of one or more features derived from the cardiogram.
  • the features may include an image of the cardiogram, a time-voltage series specifying voltages and time increments of the cardiogram, images and time-voltage series of portions of the cardiogram (e.g., QRS complex), length in seconds of various intervals (e.g., R-R interval, QRS complex, T wave, T-Q interval, and Q-R interval), QRS integral, maximum, minimum, mean, and variance of voltages of portions of the ECG, a maximal vector of QRS loop and angle of the vector derived from a VCG, location of a peak (Q peak) or zero crossing relative to a maximum peak (T peak) in an interval, and so on.
  • QRS complex e.g., QRS complex
  • length in seconds of various intervals e.g., R-R interval, QRS complex, T wave, T-Q interval, and Q-R interval
  • the features used by an ML model may be manually or automatically selected.
  • An assessment of which features may be useful in providing an accurate output for a ML model are referred to as informative feature.
  • the assessment of which features are informative may be based on various feature selection techniques such as a predictive power score, a lasso regression, a mutual information analysis, and so on.
  • the features may also be latent vectors generated using a ML model such as an autoencoder.
  • an autoencoder may be trained using ECG images.
  • the latent vector that is generated is a feature vector that represents the ECG image. That feature vector can be input into another trained ML model such as a neural network or support vector machine to generate an output.
  • the training ECG images are input to the autoencoder to generate training feature vectors that are labeled with a stimulation device location.
  • the other ML model is then trained using the labeled feature vectors.
  • the autoencoder may be trained using the training ECG images or may have been previously trained using a collection of ECG images. Rather than pre-training an autoencoder, only the portion of the autoencoder that generates the latent vector may be trained in parallel with the other ML model using a combined loss function. In such a case, no autoencoding is performed. Rather, the latent vector represents features of an ECG image that are particularly relevant to generating the output of the other ML model. Such an ML architecture may be used, for example, when the other ML model (e.g., transformer) is not designed to process ECG images directly.
  • the other ML model e.g., transformer
  • FIG. 7 is a flow diagram that illustrates the processing of an identify location component of the SDLI system in some embodiments.
  • the identify location component 700 is invoked to determine the device location based on a patient ECG.
  • the component receives a patient ECG.
  • the component identifies the patient spike portion of the patient ECG.
  • the component determines a device location based on the patient spike portion. The device location may be determined based on similar library spike portions of library ECGs or based on an ML model trained using library spiked portions labeled with library device locations.
  • the component displays a graphic of a heart.
  • the graphic may be based on a three-dimensional mesh representing anatomical characteristics of the patient heart or on an image collected from the patient.
  • the component adds an indication of the device location to the graphic and then completes.
  • the identify location component may be invoked for each patient ECG collected during an electrophysiological procedure (e.g., an ablation procedure) to identify a device location and update the graphic of the heart.
  • the resulting graphic indicates the path of the catheter within the heart of the patient.
  • the graphic of the heart may be displayed initially, and each device location can then be added to the graphic to illustrate the path of the stimulation device.
  • FIG. 8 is a block diagram that illustrates components of the SDLI system in some embodiments.
  • the SDLI system 800 includes a generate library component 810, a train ML model component 820, and an identify location component 830.
  • the generate library component invokes the run simulations component 811 and/or the collect clinical ECG/data component 812 to generate the library.
  • the identify location component identifies a device location given an ECG by invoking either the determine device location based on matching component 831 or the determine device location based on machine learning component 832.
  • the train ML model component trains an ML model using the data of the library data store 842 as training data and stores the learned model weights in the ML weights data store 843.
  • the run simulations component runs simulations based on characteristics specified a characteristics data store 841 . Characteristics may include device characteristics, cardiac chamber, cardiac anatomical characteristics, cardiac electrophysiological characteristics, and so on.
  • Characteristics may include device characteristics, cardiac chamber, cardiac anatomical characteristics, cardiac electrophysiological characteristics, and so on.
  • the results of the simulations are stored in the library data store.
  • the collect clinical ECG/data component collects clinical data and stores it in the library data store.
  • the determine device location based on matching component identifies library spike portions of library ECGs within the library data store that match the patient spike portions of a patient ECG and outputs an indication of the device location associated with the matching library spike portions.
  • the determine device location component based on machine learning inputs a patient ECG and patient characteristic data and applies the ML model based on the model weights of the model weights data store to generate a device location.
  • the computing systems may include a central processing unit, input devices, output devices (e.g., display devices and speakers), storage devices (e.g., memory and disk drives), network interfaces, graphics processing units, communications links (e.g., Ethernet, Wi-Fi, cellular, and Bluetooth), global positioning system devices, and so on.
  • the input devices may include keyboards, pointing devices, touch screens, gesture recognition devices (e.g., for air gestures), head and eye tracking devices, microphones for voice recognition, and so on.
  • the computing systems may include high-performance computing systems, distributed systems, cloud-based computing systems, client computing systems that interact with cloud-based computing system, desktop computers, laptops, tablets, e-readers, personal digital assistants, smartphones, gaming devices, servers, and so on.
  • the computing systems may access computer- readable media that include computer-readable storage mediums and data transmission mediums.
  • the computer-readable storage mediums are tangible storage means that do not include a transitory, propagating signal. Examples of computer- readable storage mediums include memory such as primary memory, cache memory, and secondary memory (e.g., DVD), and other storage.
  • the computer-readable storage media may have recorded on them or may be encoded with computer-executable instructions or logic that implements the SDLI system and the other described systems.
  • the data transmission media are used for transmitting data via transitory, propagating signals or carrier waves (e.g., electromagnetism) via a wired or wireless connection.
  • the computing systems may include a secure crypto processor as part of a central processing unit (e.g., Intel Secure Guard Extension (SGX)) for generating and securely storing keys and for encrypting and decrypting data using the keys and for securely executing all or some of the computer-executable instructions of the SDLI system.
  • SGX Intel Secure Guard Extension
  • Some of the data sent by and received by the SDLI system may be encrypted, for example, to preserve patient privacy (e.g., to comply with government regulations such the European General Data Protection Regulation (GDPR) or the Health Insurance Portability and Accountability Act (HIPAA) of the United States).
  • GDPR European General Data Protection Regulation
  • HIPAA Health Insurance Portability and Accountability Act
  • the SDLI system may employ asymmetric encryption (e.g., using private and public keys of the Rivest-Shamir- Adleman (RSA) standard) or symmetric encryption (e.g., using a symmetric key of the Advanced Encryption Standard (AES)).
  • RSA Rivest-Shamir- Adleman
  • AES Advanced Encryption Standard
  • the one or more computing systems may include client-side computing systems and cloud-based computing systems (e.g., public or private) that each executes computer-executable instructions of the SDLI system.
  • a client-side computing system may send data to and receive data from one or more servers of the cloud-based computing systems of one or more cloud data centers.
  • a client-side computing system may send a request to a cloud-based computing system to perform tasks such as run a patient-specific simulation of electrical activity of a heart or train a patient-specific ML model.
  • a cloud-based computing system may respond to the request by sending to the client-side computing system data derived from performing the task such as a source location of an arrhythmia.
  • the servers may perform computationally expensive tasks in advance of processing by a client-side computing system such as training an ML model or in response to data received from a client-side computing system.
  • a client-side computing system may provide a user experience (e.g., user interface) to a user of the SDLI system.
  • the user experience may originate from a client computing device or a server computing device.
  • a client computing device may generate a patient-specific graphic of a heart and display the graphic.
  • a cloud-based computing system may generate the graphic (e.g., in a Hyper-Text Markup Language (HTML) format or an extensible Markup Language (XML) format) and provide it to the client-side computing system for display.
  • HTML Hyper-Text Markup Language
  • XML extensible Markup Language
  • a clientside computing system may also send data to and receive data from various medical devices such as an ECG monitor, an ablation therapy device, an ablation planning device, and so on.
  • the data received from the medical devices may include an ECG, actual ablation characteristics (e.g., ablation location and ablation pattern), and so on.
  • the data sent to a medical device may include data, for example, data in a Digital Imaging and Communications in Medicine (DICOM) format.
  • a client-side computing device may also send data to and receive data from medical computing systems that store patient medical history data, descriptions of medical devices (e.g., type, manufacturer, and model number) of a medical facility, that store, medical facility device descriptions, that store results of procedures, and so on.
  • the term cloud-based computing system may encompass computing systems of a public cloud data center provided by a cloud provider (e.g., Azure provided by Microsoft Corporation) or computing systems of a private server farm (e.g., operated by the provider of the SDLI system.
  • the SDLI system and the other described systems may be described in the general context of computer-executable instructions, such as program modules and components, executed by one or more computers, processors, or other devices.
  • program modules or components include routines, programs, objects, data structures, and so on that perform tasks or implement data types of the SDLI system and the other described systems.
  • the functionality of the program modules may be combined or distributed as desired in various examples.
  • Aspects of the SDLI system and the other described systems may be implemented in hardware using, for example, an application-specific integrated circuit (ASIC) or a field programmable gate array (FPGA).
  • ASIC application-specific integrated circuit
  • FPGA field programmable gate array
  • Figure 9 is a flow diagram that illustrates the processing of a run simulation component of the SDLI system in some embodiments.
  • the run simulation component 900 is invoked to run simulations of electrical activity resulting from activation of a stimulation devices and store associations of simulated spike portions of simulated ECGs to simulated device locations in library data store.
  • the component selects the next set of characteristics that may be specified in characteristics data store.
  • decision block 902 if all the sets of characteristics have already been selected, then the component completes, else the component continues at block 903.
  • the component selects a simulated device location.
  • decision block 904 if all the simulated device locations have already been selected, then the component loops to block 901 to select the next set of characteristics, else the component continues at block 905. In block 905, the component selects the next simulated time interval of the simulation. In decision block 906, if all the simulated time intervals of already been selected, then the component continues at block 910, else the component continues at block 907. In block 907, the component selects the next vertex of the three-dimensional mesh that is based on anatomical characteristics. In decision block 908, if all the vertices have already been selected, then the component loops to block 905 to select the next simulated time interval, else the component continues at block 909. In block 904, if all the simulated device locations have already been selected, then the component loops to block 901 to select the next set of characteristics, else the component continues at block 905. In block 905, the component selects the next simulated time interval of the simulation. In decision block 906, if all the simulated time intervals of already been selected, then the component continues at block
  • the component updates the vertex values based on electrophysiological characteristics of the vertex and loops to block 907 to select the next vertex.
  • the component updates the vertex values based on electrophysiological characteristics of the vertex and loops to block 907 to select the next vertex.
  • the component generates a simulated spike portion of a simulated ECG based on the values of the vertices for the simulated time intervals.
  • the component stores the simulated spike portion in association with the simulated device location in the library and loops to block 903 to select the next simulated device location.
  • FIG 10 is a flow diagram that illustrates the processing of a train ML model component of the SDLI system in some embodiments.
  • the train ML model component 1000 trains an ML model based on the data of the library data store.
  • the component trains a CNN autoencoder using the library ECGs.
  • the component selects the next library association of the library data store.
  • decision block 1003 if all the associations have already been selected, then the component continues at block 1009, else the component continues at block 1004.
  • the component applies the CNN to the library ECG to generate a latent vector representing library ECG.
  • the component adds the latent vector to the feature vector.
  • FIG. 1006 the component adds the data or characteristics of the characteristics data store to the feature vector.
  • the component generates a label based on library device location.
  • the component adds the feature vector and label to the training data and loops to block 1002 to select the next library association.
  • the component trains a neural network using the training data.
  • the component stores the neural network weights in the ML weights data store and completes.
  • Figure 11 is a flow diagram that illustrates the processing of a determine device location based on machine learning component of SDLI system in some embodiments. The determine device location based on machine learning component 1100 accesses a patient ECG and characteristic data and applies the ML model to determine the device location.
  • the component accesses the patient ECG and characteristic data.
  • the component identifies the patient spike portion of the patient ECG.
  • the component applies the CNN to the patient spike portion to generate a latent vector representing patient spike portion.
  • the component selects a neural network based on the patient characteristic data that is training with characteristic data that is similar to the patient characteristic data.
  • the component generates a feature vector that includes the latent vector and the patient characteristic data.
  • the component applies the neural network to the feature vector to determine device location and then completes.
  • Figure 12 is a flow diagram that illustrates the processing of a determine device location based on matching component of the SDLI system in some embodiments.
  • the determine device location based on matching component 1200 determines a device location based on similarity of a patient ECG to library ECGs.
  • the component accesses the patient ECG and patient characteristic data.
  • the component identifies the patient spike portion of the patient ECG.
  • the component selects a library based on patient characteristic data.
  • the library is associated with clinical or simulated data that is similar to the patient characteristic data.
  • the component selects the next association of the library.
  • decision block 1205 if all the associations have already been selected, then the component continues at block 1209, else the component continues at block 1206.
  • the component calculates a similarity score between the library spike portion of the association and the patient spike portion.
  • decision block 1207 if the similarity score satisfies similarity criterion (e g., above a threshold level), then the component continues at block 1208, else the component loops to block 1204 to select the next association.
  • the component adds an indication of the association to a matching set and then loops to block 1204 to select the next association.
  • block 1209 the component selects the top associations of the matching set.
  • the component outputs an indication of the device locations of the selected associations and then completes.
  • An implementation of the SDLI system may employ any combination or sub-combination of the aspects and may employ additional aspects.
  • the processing of the aspects may be performed by one or more computing systems with one or more processors that execute computer-executable instructions that implement the aspects and that are stored on one or more computer-readable storage mediums.
  • the techniques described herein relate to a method performed by one or more computing devices for identifying a patient device location of a patient stimulation device within an organ of patient, the method including: receiving a patient electrogram that is collected while the patient stimulation device is activated within the patient and while organ tissue is not captured, the electrogram reflecting current through blood within the organ; determining a device location based on an association between library electrograms and library device locations and based on similarity between the library electrograms and the patient electrogram, a library electrogram representing an electrogram that would be collected when a stimulation device is activated within the organ of a patient at the associated library device location; and outputting an indication of the determined device location to indicate the patient device location of the patient stimulation device when the patient electrogram was collected.
  • the techniques described herein relate to a method wherein the determining includes: for each of a plurality of library electrograms, determining similarity between that library electrogram and the patient electrogram; and selecting a library electrogram based on the determined similarities wherein the determined device location is based on the library device location associated with the selected library electrogram.
  • the techniques described herein relate to a method wherein the determining includes applying a machine learning model that inputs the patient electrogram and outputs a device location, the machine learning model trained with training data that includes library electrograms labeled with associated library device locations.
  • the techniques described herein relate to a method wherein the patient device location and the library device locations indicate the location of multiple electrodes of the stimulation device.
  • the techniques described herein relate to a method wherein at least some of the library electrograms are simulated electrograms generated based on simulations of electrical activity resulting from simulated activation of a simulated stimulation device having a simulated device location. In some aspects, the techniques described herein relate to a method wherein at least some of the library electrograms are clinical electrograms and the library device locations are clinical device locations, the clinical electrograms collected from patients when a stimulation device is activated at the clinical device location. In some aspects, the techniques described herein relate to a method wherein the patient electrogram is a spike portion of a longer patient electrogram, the spike portion corresponds to a spike resulting from activation of the stimulation device.
  • the techniques described herein relate to a method wherein the organ is a heart and the electrogram is a cardiogram. In some aspects, the techniques described herein relate to a method wherein the organ is a gastrointestinal tract and the electrogram is a gastroenterogram. In some aspects, the techniques described herein relate to a method wherein the organ is a heart and the library is specific to a cardiac segment. In some aspects, the techniques described herein relate to a method wherein a cardiac segment is selected from a group consisting of superior vena cava, inferior vena cava, right atrium, left atrium, right ventricle, left ventricle, and coronary sinus. In some aspects, the techniques described herein relate to a method wherein the library is specific to an organ characteristic.
  • the techniques described herein relate to a method wherein the organ is a heart and the organ characteristic is an arrhythmia type. In some aspects, the techniques described herein relate to a method further including displaying a heart graphic along with an indication of the determined device location. In some aspects, the techniques described herein relate to a method wherein the indication of the determined device locations includes an indication of electrodes of the stimulation device. In some aspects, the techniques described herein relate to a method wherein each library electrogram is associated with library device characteristics of the stimulation device and the determining is further based on similarity between patient device characteristics and library device characteristics. In some aspects, the techniques described herein relate to a method wherein when organ tissue is not captured, activation of the stimulation device does not induce depolarization of the organ. In some aspects, the techniques described herein relate to a method wherein the outputting includes displaying a graphic of the organ with the device location indicated.
  • the techniques described herein relate to a method performed by one or more computing systems for simulating electrical activity of an organ of a patient, the method including: for each of a plurality of organ characteristics, for each of a plurality of simulated device locations of a stimulation device within the organ, simulating electrical activity of tissue of the organ and of blood within the organ based on activation of the stimulation device at the simulated device location and when the stimulation device does cause depolarization of tissue of the organ; generating a simulated electrogram based on the simulated electrical activity; and storing in a library an association between the simulated electrogram and the simulated device location.
  • the techniques described herein relate to a method wherein the organ is represented by a three-dimensional mesh with vertices corresponding to locations within the organ, wherein the simulating for each of a plurality of simulated time intervals, calculates a value indicating electrical activity at locations within the organ and calculates a value indicating electrical activity within blood within the organ resulting from activation of the stimulation device, and wherein the simulated electrogram is generated based on the electrical activity within the organ and the electrical activity within the blood.
  • the techniques described herein relate to a method wherein the generating of the simulated electrogram includes, for each simulated time interval, generating an organ dipole vector representing a dipole resulting from the simulated electrical activity within the organ and a blood dipole vector representing a dipole resulting from the simulated electrical activity within the blood. In some aspects, the techniques described herein relate to a method further including, for each simulated time interval, generating a combined dipole vector based on the organ dipole vector and the blood dipole vector.
  • the techniques described herein relate to a method further including: for at least some of the simulations, for each of a plurality of simulated thoraxes, generating a simulated electrogram factoring simulated thoracic characteristics of that simulated thorax.
  • the techniques described herein relate to a method wherein the simulated thoracic characteristics include anatomical characteristics, electrophysiological characteristics, and body composition characteristics.
  • the techniques described herein relate to a method further including training a machine learning model with training data that includes the simulated electrograms labeled with the associated simulated device locations.
  • the techniques described herein relate to a method wherein a simulation is further based on simulated device characteristics.
  • the techniques described herein relate to a method performed by one or more computing systems for simulating electrical activity of blood within organ of a person, the method including: for each of a plurality of organ characteristics, for each of a plurality of simulated device locations of a stimulation device within the blood, simulating electrical activity of the blood within the organ based on a simulated activation of the stimulation device at the simulated device location wherein the simulated activation does not capture tissue of the organ; generating a simulated spike signature based on the simulated electrical activity; and storing in a library an association between the simulated spike signature and the simulated device location.
  • the techniques described herein relate to a method further including identifying a simulated spike signature within a patient cardiogram of a patient collected during activation of the stimulation device within blood of the organ of the patient. In some aspects, the techniques described herein relate to a method further including outputting an indication of the simulated device location associated with the identified simulated spike signature. In some aspects, the techniques described herein relate to a method wherein for each simulation, a plurality of simulated spiked signatures are generated based on a plurality of thorax configurations and/or lead placements.
  • the techniques described herein relate to a method performed by one or more computing systems for generating a machine learning model to identify a device location relative to an organ, the method including: accessing a library of associations between library electrograms and library device locations, each library electrogram representing electrical activity resulting from activation of a stimulation device at a library device location relative to the organ wherein the activation does not capture tissue of the organ; generating training data that includes library electrograms labeled with the associated library device locations; and training the machine learning model with the training data.
  • the techniques described herein relate to a method wherein the associations further include library anatomical characteristics of the organ and the training data includes library electrograms along with the associated library anatomical characteristics labeled with library device locations.
  • the techniques described herein relate to a method wherein the library anatomical characteristics specify a segmentation of the organ. In some aspects, the techniques described herein relate to a method wherein the machine learning model includes a convolution neural network that inputs one or more features derived from an image of a patient electrogram and outputs a patient device location. In some aspects, the techniques described herein relate to a method wherein the training data further includes an image of a simulated organ labeled with a simulated device location. In some aspects, the techniques described herein relate to a method wherein a library device location is within the organ. In some aspects, the techniques described herein relate to a method wherein a library device location is outside the organ.
  • the techniques described herein relate to one or more computing systems for identifying a device location of a stimulation device within the heart of a patient, the one or more computing systems including: one or more computer- readable storage mediums that store computer-executable instructions for controlling the one or more computing systems to: access a patient cardiogram that is collected while the stimulation device is activated within the heart and while cardiac tissue is not captured, the cardiogram reflecting current through blood resulting from the activation; determine a device location based on an association between library cardiograms and library device locations and based on similarity between the library cardiograms and the patient cardiogram, a library cardiogram representing a cardiogram that would be collected when a stimulation device is activated within the heart of a patient at the associated library device location; and output an indication of the determined device location to indicate the device location of the stimulation device when the cardiogram was collected; and one or more processors for controlling the one or more computing systems to execute one or more of the computer-executable instructions.
  • the techniques described herein relate to one or more computing systems wherein the instructions that determine further include instructions that: for each of a plurality of library cardiogram, determine similarity between that library cardiogram and the patient cardiogram; and select a library cardiogram based on the determined similarities wherein the determined device location is based on the library device location associated with the selected library cardiogram.
  • the techniques described herein relate to one or more computing systems wherein the instructions that determine further include instructions that apply a machine learning model that inputs the patient cardiogram and outputs a device location, the machine learning model trained with training data that includes library cardiograms labeled with associated library device locations.
  • the techniques described herein relate to one or more computing systems wherein the patient cardiogram represents a cardiac cycle that includes a spike resulting from the current through blood within a cardiac chamber.

Landscapes

  • Health & Medical Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Public Health (AREA)
  • Medical Informatics (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Epidemiology (AREA)
  • Primary Health Care (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Pathology (AREA)
  • Radiology & Medical Imaging (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
  • Veterinary Medicine (AREA)
  • General Business, Economics & Management (AREA)
  • Business, Economics & Management (AREA)
  • Animal Behavior & Ethology (AREA)
  • Human Computer Interaction (AREA)
  • Biophysics (AREA)
  • Physical Education & Sports Medicine (AREA)
  • Measurement And Recording Of Electrical Phenomena And Electrical Characteristics Of The Living Body (AREA)
  • Electrotherapy Devices (AREA)

Abstract

A system for identifying a patient device location of a patient stimulation device within the heart of a patient. The system receives a patient electrocardiogram that is collected while the patient stimulation device is activated and while cardiac tissue is not captured. The electrocardiogram reflects current through blood within the heart resulting from the activation. The system determines a device location based on an association between library electrocardiograms and library device locations and based on similarity between the library electrocardiograms and the patient electrocardiogram. A library electrocardiogram represents an electrocardiogram that would be collected when a stimulation device is activated within the heart of a patient at the associated library device location. The system outputs an indication of the determined device location to indicate the patient device location of the patient stimulation device when the patient electrocardiogram was collected.

Description

STIMULATION DEVICE LOCATION IDENTIFICATION SYSTEM
CROSS-REFERENCE TO RELATED APPLICATION(S)
[0001] This application claims priority to U.S. Patent Application No. 63/446,510 filed on February 17, 2023, which is hereby incorporated by reference in its entirety.
BACKGROUND
[0002] Recent studies have demonstrated the effectiveness of forward-solution computational mapping to identify the origins of cardiac arrhythmias and pacing sites (referred to as activation locations) within the human heart. (See, Krummen D.E., et al., “Forward-Solution Noninvasive Computational Arrhythmia Mapping: The VMAP Study,” Circulation: Arrhythmia and Electrophysiology, 15.9 (2022): e010857.) By using a large simulation library of simulated arrhythmias and cardiac pacing (e.g., mappings of simulated vectorcardiograms to simulated activation locations), the computational mapping process compares a patient cardiogram collected during an arrhythmia or pacing with simulated cardiograms of the simulation library to identify the likely activation location (e.g., origin of the arrhythmia or pacing site). This process has proven to be a key enabling technology to facilitate delivery of targeted arrhythmia therapy, for example, which targets the activation location.
[0003] The localization process to determine the activation location requires depolarization of cardiac tissue either during the arrhythmia or during pacing, such that an electrical depolarization event or “heartbeat” in the chamber being mapped may be observed with the surface electrocardiogram (ECG). But pacing is often unable to effectively stimulate the heart to induce depolarization because the electrodes of a stimulation device (e.g., of a pacing catheter) are unable to “capture” the cardiac tissue. The inability to capture the cardiac tissue results from an inadequate contact of one or more electrodes with healthy cardiac tissue such as no or poor contact with healthy cardiac tissue or contact with damaged cardiac tissue (e.g., tissue with advanced cardiac fibrosis or scar tissue). When depolarization is not induced, forward-solution computational mapping cannot be used to identify an activation location, that is, the location of the electrodes of the stimulation device. [0004] Several prior technologies have been used to determine the device location of the electrodes of a stimulation device, but they have disadvantages. A first technology determines the device location within the body using electrical impedance and/or references to external magnets but requires additional mapping patches to be placed on the patient and/or external magnets to be placed near the patient during a procedure. A second technology uses fluoroscopy to determine the device location but exposes patients and operators to x-rays and requires rotating the imaging plane during sterile procedures. A third technology employs intracardiac echocardiography (ICE) imaging to visualize cardiac chambers and the device location but requires manual adjustment of the image plane to perform the mapping process.
BRIEF DESCRIPTION OF THE DRAWINGS
[0005] Figure 1 is a diagram that illustrates a graphic of a heart with the location of the electrodes indicated.
[0006] Figure 2 is a diagram that illustrates a graphic generated by the SDLI system corresponding to the graphic of Figure 1 .
[0007] Figure 3 illustrates an ECG with a spike portion during activation of a stimulation device in the left atrium.
[0008] Figure 4 is a diagram that illustrates a vectorcardiogram corresponding to the spike portion of Figure 3.
[0009] Figure 5 is a diagram that illustrates an ECG with a spike portion during activation of the stimulation device in the right ventricle.
[0010] Figure 6 is a diagram that illustrates a vectorcardiogram corresponding to the spike portion of Figure 4.
[0011 ] Figure 7 is a flow diagram that illustrates the processing of an identify location component of the SDLI system in some embodiments.
[0012] Figure 8 is a block diagram that illustrates components of the SDLI system in some embodiments.
[0013] Figure 9 is a flow diagram that illustrates the processing of a run simulation component of the SDLI system in some embodiments. [0014] Figure 10 is a flow diagram that illustrates the processing of a train machine learning (ML) model component of the SDLI system in some embodiments.
[0015] Figure 11 is a flow diagram that illustrates the processing of a determine device location based on an ML component of SDLI system in some embodiments.
[0016] Figure 12 is a flow diagram that illustrates the processing of a determine device location based on an ML component of the SDLI system in some embodiments.
DETAILED DESCRIPTION
[0017] Methods and systems are provided for determining the device location of a stimulation device within a heart when cardiac tissue is not captured without the disadvantages of prior technologies. When a catheter is in the heart and cardiac tissue is not captured, knowledge of the device location may be helpful in guiding the catheter and reducing complications from catheter manipulations such as cardiac perforations and tamponade. In addition, when the catheter has not yet reached the heart, knowledge of the device location can be helpful in guiding the catheter from peripheral access sites (e.g., internal jugular vein, femoral vein, femoral artery) through vascular structures such as the superior vena cava, inferior vena cava, or aorta which do not contain cardiac tissue.
[0018] In some embodiments, a stimulation device location identification (SDLI) system identifies the location of a stimulation device of a catheter within a body when activation of the stimulation device does not capture tissue of an organ. Although described primarily in the context of an organ that is the heart of a person, the SDLI system may be employed to determine the location of a stimulation device in the cardiovascular system more generally in other organs such as the gastrointestinal tract and in non-human patients (e.g., a dog and a horse). The SDLI system accesses a patient electrogram (e.g., ECG or gastroenterogram) collected from a patient and identifies a patient device location based on a library of associations between library electrograms and library device locations. A library electrogram represents an electrogram that would be collected when a stimulation device is activated while at the associated library device location. A device location may include electrode locations of multiple electrodes of the stimulation device. [0019] The library may include simulated electrograms and simulated device locations and/or clinical electrograms (i.e., collected from a patient) and clinical device locations. The simulated electrograms may be generated by simulating electrical activity within a pool of blood of the organ during simulated activation while a simulated stimulation device is at the associated simulated device location. The clinical electrograms may be collected while a clinical stimulation device is within a pool of blood of the organ during activation while the clinical stimulation device is at the associated clinical device location. To identify the patient device location, the SDLI system may compare the patient electrogram to the library electrograms to find a similar library electrogram, that is, satisfies a similarity criterion (e.g., based on a Pearson correlation, cosine similarity, an ML model such as a twin neural network) and output the library device location associated with the similar library electrogram as an indication of the patient device location. The SDLI system may alternatively employ a machine learning (ML) model that inputs the patient electrogram and outputs a device location as an indication of the patient device location. The ML model may be trained using training data that includes library electrograms that are each labeled with the associated library device location.
[0020] To generate a simulated ECG, the SDLI system employs a computational model to simulate electrical activity of a heart and of blood assuming activation of a simulated device location that does not capture tissue. A computational model is described in Villongco, C. V., et al., “Patient-Specific Modeling of Ventricular Activation Pattern using Surface ECG-derived Vectorcardiogram in Bundle Branch Block,” Progress in Biophysics and Molecular Biology, vol. 115, iss. 2-3, August 2014, p. 305- 313, which is hereby incorporated by reference. The SDLI system then generates a simulated ECG based on the simulated electrical activity. To run a simulation, the SDLI system generates a cardiac three-dimensional mesh with vertices (e.g., 70,000 vertices) corresponding to locations within the heart having a simulated cardiac geometry. Each vertex is associated with one or more values that indicate electrical activity at that location based on electrophysiological characteristics (e.g., conduction velocity) of the heart near the location of the vertex. The simulations may represent normal sinus rhythm since activation of the simulated stimulation device will likely not induce depolarization. [0021] Each simulation is based on simulated organ characteristics of the organ. When the organ is a heart, the simulated cardiac characteristics may include cardiac geometry (e.g., atrial and ventricular size and shape and heart orientation in the thorax), rotor location, focal source location, ventricular myofiber orientation, cardiomyocyte intracellular potential electrogenesis and propagation, and so on. A simulated cardiac characteristic is specified by a characteristic value such as 66 mm for the longitudinal dimension of the right ventricle. Each cardiac characteristic may have a set or range of possible characteristic values. For example, a rotor location within the right ventricle may have 78 possible characteristic values corresponding to different locations within the right ventricle. A simulated heart is represented by a cardiac description that is a collection of characteristic values for cardiac characteristics.
[0022] The SDLI system also simulates electrical activity (e.g., based on current flowing from the anode to the cathode) within the blood near the simulated device location based on blood characteristics and stimulation device characteristics (e.g., strength (e.g., voltage), duration (e.g., milliseconds), and electrode type). The SDLI system may employ a blood three-dimensional mesh (e.g., prism shaped) enclosing a line or lines between a simulated anode and cathode at the simulated device location. Each vertex of the blood three-dimensional mesh is associated with one or more values that indicate electrical activity near that vertex. In some embodiments, the SDLI system may generate values for points between the vertices of the mesh, rather than just at the vertices. For example, the SDLI system may calculate the values for such points using a Gaussian quadrature technique. A computational model is described in Villongco, C. V., et al., “Patient-Specific Modeling of Ventricular Activation Pattern using Surface ECG-derived Vectorcardiogram in Bundle Branch Block,” Progress in Biophysics and Molecular Biology, Vol. 115, Iss. 2-3, August 2014, p. 305-313, which is hereby incorporated by reference.
[0023] The SDLI system runs a simulation by recalculating the values at simulated time intervals (e.g., 1 millisecond) for a simulated length of cardiac activity (e.g., 6 seconds). The SDLI system assumes that the simulated device is activated during some simulated time interval(s) and calculates values of the blood three-dimensional mesh for that simulated time interval and subsequent simulated time intervals. Based on the calculated values, the SDLI system may calculate a dipole based on the electrical activity of the heart and a dipole based on the electrical activity within the blood. The dipoles may be combined to generate an overall simulated VCG. The SDLI system may also generate a simulated ECG that represents an ECG that would be collected from a patient who had same electrical activity as the simulated electrical activity. The SDLI system may separately generate each lead of the ECG. The SDLI system assumes a body composition when calculating an ECG to factor in the influence of, for example, body fat, muscle, and skeletal composition on the electrical field detected by a simulated ECG electrode. The SDLI system may generate multiple simulated ECGs for a simulation that is each based on a different body composition. The ECGs may represent, for example, one-lead, three-lead, six-lead, or twelve-lead ECGs or a 252- lead body surface (ECG) vest. In some embodiments, the SDLI system may only run simulations to simulate electrical activity within the blood and not within cardiac tissue. In such a case, the ECG derived from a simulation (referred to as a spike signature) can be superimposed on prior ECGs representing electrical activity of cardiac tissue to generate combined ECGs. For example, each spike signature, the SDLI system may superimpose the spike signature on each prior ECG at different offsets within the cardiac cycle resulting in combined ECG for each combination of spike signature, prior each prior cardiogram, and each offset.
[0024] The system estimates effects on a cardiogram resulting from current flowing through blood that is induced by electrodes in the blood of cardiac chamber. The effects are based on the electric field created by the flow of current. The effects may be modeled by solving the Laplace or Poisson equations for electric potential in a conductive medium such as blood. The Poisson equation may be represented by the following: v = - where V2 is the Laplacian operator, </> is the electric potential, p is the charge density, and e is the permittivity of blood (e.g., relative permittivity of range of 50-70). The electric field E is the negative gradient of the electric potential as represented by the following equation:
E = - (j> where represents the gradient of the electric potential represented as a vector with a direction based on the greatest rate of increase of the electric potential and with a magnitude based on the rate of increase.
[0025] The electric field may also be based on an electric dipole moment created by a bipolar catheter with electrodes separated by distance d. The electric dipole moment may be represented by the following equation: p - q- d where p is the electric dipole moment, q is the magnitude of the charges, d is the displacement vector pointing from the negative charge to the positive charge. The electric field at a point in space due to an electric dipole may be represented by the following equation:
Figure imgf000009_0001
where E is the electric field vector at the point, r is a position vector of the point from the center of the dipole, r is a unit vector in the direction of f , r is the magnitude of r , and is the vacuum permittivity (~8.8 x 10'12 F/m).
[0026] The clinical ECGs and clinical device locations may be collected from patients during an electrophysiology procedure such as an ablation procedure to terminate an arrhythmia. The clinical ECGs may be collected by a standard ECG device, and the clinical device location may be determined using one of the prior technologies discussed on the Background section. The SDLI system stores the association between the clinical ECGs and the clinical device locations in the library.
[0027] From the simulated electrical activity of each simulation, the SDLI system may generate multiple simulated ECGs that each assume a different ECG specification. An ECG specification may specify a simulated thorax configuration and a simulated lead placement. A thorax configuration specifies thorax characteristics such as body size and body composition. Body composition includes fat and muscle characteristics (e.g., distribution), bone density, and so on. A lead placement specifies a number of leads (e.g., 3, 5, 8, or 12) and, for each lead, the location of one or more electrodes used to generate that lead. For example, one lead placement may be 10 standard lead locations of a standard ECG, and another may be 8 standard lead locations and 2 nonstandard lead locations, for example, resulting from a placement error. The SDLI system maintains, for each simulated ECG, an association between that simulated ECG and the ECG specification that it was generated based on. As an example, if 1 ,000 simulations are run and there are 50 ECG specifications (e.g., 5 different thorax configurations and 10 different lead placements), then the SDLI system would generate 50,000 simulated ECGs.
[0028] Because the ECGs are specific to an ECG specification, a patient ECG is more likely to match a simulated ECG based on a simulated thorax configuration and simulated lead placement that are similar to the patient thorax configuration and the patient lead placement. As a result, the corresponding simulated device location associated with that matching simulated ECG is likely a better match to the actual device location. Also, if aspects of the patient thorax configuration and patient lead placement are known (e.g., fat distribution and lead placement derived from imaging data), the SDLI system may only compare the patient ECG to simulated ECGs generated based simulated thorax configurations and simulated lead placements that are similar in those aspects. (See, U.S. Pat. No. 10,860,754 entitled “Calibration of Simulated Cardiograms” and issued on December s, 2020 and U.S. Pat. No. 10,713,791 entitled “Computational Simulations of Anatomical Structures and Body Surface Electrode Positioning” and issued on July 14, 2020, which are hereby incorporated by reference.)
[0029] Figure 1 is a diagram that illustrates a graphic of a heart with the location of the electrodes indicated. Graphic 100 of a heart illustrates the superior vena cava 101 , the right atrium 102, the descending aorta 103, the right ventricle 104, the left ventricle 105, and the right ventricular outflow tract 106. The graphic also illustrates path 111 of the catheter and the locations of the anode 112 and a cathode 113 which have a 5 mm spacing. The catheter entered the right jugular vein (not shown) and was advanced through the superior vena cava into the right atrium.
[0030] Figure 2 is a diagram that illustrates a graphic generated by the SDLI system corresponding to the graphic of Figure 1 . Graphic 200 may be generated based on a three-dimensional mesh representing the geometry of the patient heart. As the catheter advanced, the catheter was periodically activated. If the stimulation device did not capture cardiac tissue, the SDLI system was employed to determine the locations of the electrodes of the stimulation device. If the stimulation device did capture cardiac tissue to induce depolarization, a computational mapping system based on induced depolarization may be employed to determine the locations of the electrodes. One such computational mapping system is described in U.S. Pat. No. 10,856,816 entitled “Machine Learning using Simulated Cardiograms” and issued on December s, 2020, which is hereby incorporated by reference. Alternatively, the SDLI system may employ a library that includes mappings of electrograms to device locations for electrograms collected with capture and without capture.
[0031] In some embodiments, the SDLI system may calculate the orientation of the stimulation device relative to the cardiac tissue. The most effective orientation of a stimulation device for capturing cardiac tissue may be when the distal end of the stimulation device (where an electrode is located) is perpendicular to the cardiac wall. Given the device location which may include an anode location and a cathode location, the SDLI determines the angle of between a device line between the anode location and the cathode location and the slope of the cardiac wall (represented by a three- dimensional mesh) at the point the line intersects the cardiac wall. The SDLI system may output an indication of the angle to help in maneuvering the stimulation device to a near 90-degree angle so that cardiac tissue may be captured. The SDLI system may display a highlighted device line and a highlighted slope line to assist in the maneuvering.
[0032] In some embodiments, the SDLI system identifies the “spike” portion of the patient ECG that represents the spike in electrical activity resulting from activation of the stimulation device without capture. (See, PCT App. No. PCT/US23/72866 entitled “Automatic Refinement of Electrogram Selection” and filed on August 23, 2023, which is hereby incorporated by reference.) The spike portion corresponds to the time intervals from the start of activation of the stimulation device until the end of the activation. The library ECGs represent the spike portions of ECGs.
[0033] Figure 3 illustrates an ECG with a spike portion during activation of a stimulation device in the left atrium. The ECG 300 includes spike portion 301 resulting from activation of the stimulation device without capture. The activation occurred when the electrodes were located near the upper pulmonary vein and the catheter tip was oriented upward toward the left side of the patient. To identify the spike portion of a patient ECG, the SDLI system may allow a person to manually demarcate the spike portion, apply an ML model to the patient ECG to identify the spike portion, and so on. The ML model may be trained using training data that includes simulated ECGs labeled with the spike portions of the ECGs. The SDLI system may also employ a matched filter to identify a spike portion in a patient ECG using the spike portions of the library ECGs as templates. When the stimulation device is activated during ventricular depolarization, the QRS wave may obfuscate the spike portion. So, the SDLI system may identify device locations based on spike portions of an ECG that are in the TP segment. Figure 4 is a diagram that illustrates a vectorcardiogram corresponding to the spike portion of Figure 3. The orientation of the VCG 400 is downward and to the patient’s right (e.g., opposite from the orientation of the catheter tip) from the plot origin 401 point (0, 0, 0).
[0034] Figure 5 is a diagram that illustrates an ECG with a spike portion during activation of the stimulation device in the right ventricle. The ECG 500 includes spike portion 501 resulting from activation of the catheter without capture. The catheter tip (distal end) is oriented anteriorly, inferiorly, and to the left of the patient. Figure 6 is a diagram that illustrates a vectorcardiogram corresponding to the spike portion of Figure 4. The orientation of the VCG 600 is posterior, superior, and rightward away from the plot origin 601 point (0, 0, 0).
[0035] In some embodiments, the SDLI system may also store additional library characteristics data in the library for each association. The library characteristics data may be, for example, images (e.g., x-ray or ultrasound images) of a thorax, body composition data, prior ablation locations, cardiac segment of the device location (e.g., left atrium), cardiac geometry, stimulation device characteristics, patient demographic data (e.g., sex), arrhythmia type, and so on. For simulated characteristic data of the library, the SDLI system may generate simulated images, for example, based on projecting x-rays through a simulated thorax factoring in the linear attenuation coefficients of structures (e.g., bones and liver) within the thorax. (See, 791 patent.) The stimulation device characteristics may include manufacturer, electrode count, electrode spacing, activation duration and strength, and so on. The SDLI system may determine the device location factoring in the library characteristics data by effectively calibrating or filtering the library based on library characteristic data that is similar to patient characteristics data (e.g., including characteristics of the clinical stimulation device). The SDLI system may also generate separate libraries for subsets of the library characteristics data such as a library for atrial fibrillation, a library for ventricular tachycardia, a library for the stimulation device of a certain manufacturer, and so on. (See, 754 patent.)
[0036] In some embodiments, the SDLI system may train the ML model using training data that includes feature vectors that include a library ECG and library characteristic data labeled with a library device location. The features of the feature vector may include an image of a spike portion and/or characteristics derived from the spike portion such as average voltage, width, or maximum slope of the spike portion. The features may also include anatomical structural information (e.g., images such as CT, x-ray, MR, echocardiography of the heart, vessels, and stomach), pacing maneuvers, stimulation device characteristics, and so on. The ML model may be based on various machine learning architectures such as a convolutional neural network (CNN) that inputs a spike portion and outputs the location of electrodes. When additional features are used in the training, a CNN may be employed to process each type of image (e.g., of pacing spikes and anatomical structures) and a neural network (NN) may process outputs of the CNNs and the non-image features. The CNNs may be autoencoders that are separately trained. The NN may be trained with features that that include the latent vectors of the CNNs and the non-image features. Alternatively, the CNNs and the NN may be trained in parallel. Additional machine learning architectures that may be employed by the SDLI system are described below.
[0037] The SDLI system may be used in a variety of applications such as the following example applications. The first application is the guiding and manipulating of medical instruments within the body such as during an ablation procedure during which knowledge of the precise location of a pacing, a mapping, or an ablation catheter may be advantageous. A second application is during a pacemaker implantation procedure as the electrical leads or leadless pacemaker devices are advanced through the vascular system and through the cardiac chambers prior to or between periods of contact with cardiac tissue. For example, the SDLI system may be used during a left bundle branch (LBB) pacing procedure to determine the location of the catheter. A third application is the determining of the location of each of the electrodes during a cardiac resynchronization therapy. A fourth application is the tracking of a catheter as it is advanced through vascular structures to perform coronary or peripheral angiograph. Such tracking may shorten overall procedure time, reduce fluoroscopy use, and decrease patient exposure to anesthesia.
[0038] In some embodiments, the SDLI system may interface with a navigation device that controls the movement of the catheter within the heart. The navigation device may be supplied with a path to a target location within the heart. The navigation device moves the catheter and activates the stimulation device. Given an ECG collected during the activation, the SDLI system determines a location and provides the location of the electrodes to the navigation device. The navigation device then controls movement of the catheter and activates the stimulation device and continues to repeat this process. The navigation device may employ a mechanism to direct movement of the catheter (e.g., push, pull, twist, and bend) in a manner similar to how a cardiac electrophysiologist would control movement of the catheter. An example navigation device is the Niobe® Magnetic Navigation System provided by Stereotaxis, Inc.
[0039] A machine learning (ML) model may be any of a variety or combination of supervised, semi-supervised, self-supervised, unsupervised, or reinforcement learning ML models including a neural network such as fully connected, convolutional, recurrent, or autoencoder neural network, or restricted Boltzmann machine, a support vector machine, a Bayesian classifier, k-means clustering, decision tree, generative adversarial networks, transformer, and so on. When the ML model is a deep neural network, the model is trained using training data that includes features derived from data and labels corresponding to the data. For example, the data may be images of ECGs with a feature being the image itself, and the labels may be a characteristic indicated by the ECGs (e.g., normal sinus rhythm or stimulation device location). The training results in a set of weights for the activation functions of the layers of the deep neural network. The trained deep neural network can then be applied to new data to generate a label for that new data. When the ML model is a support vector machine, a hyper-surface is found to divide the space of possible inputs. For example, the hypersurface attempts to split the positive examples (e.g., images of normal sinus rhythm ECGs) from the negative examples (e.g., images of ECGs with a stimulation device spike) by maximizing the distance between the nearest of the positive and negative examples to the hyper-surface. The trained support vector machine can then be applied to new data to generate a classification (e.g., normal sinus rhythm or stimulation device location) for the new data. A ML model may generate values of discrete domain (e.g., classification), probabilities, and/or values of a continuous domain (e.g., regression value, classification probability).
[0040] Various techniques can be used to train a support vector machine such as adaptive boosting, which is an iterative process that runs multiple tests on a collection of training data. Adaptive boosting transforms a weak learning algorithm (an algorithm that performs at a level only slightly better than chance) into a strong learning algorithm (an algorithm that displays a low error rate). The weak learning algorithm is run on different subsets of the training data. The algorithm concentrates increasingly on those examples in which its predecessors tended to show mistakes. The algorithm corrects the errors made by earlier weak learners. The algorithm is adaptive because it adjusts to the error rates of its predecessors. Adaptive boosting combines rough and moderately inaccurate rules of thumb to create a high-performance algorithm. Adaptive boosting combines the results of each separately run test into a single, very accurate classifier. Adaptive boosting may use weak classifiers that are single-split trees with only two leaf nodes.
[0041] A neural network model has three major components: architecture, loss function, and search algorithm. The architecture defines the functional form relating the inputs to the outputs (in terms of network topology, unit connectivity, and activation functions). The search in weight space for a set of weights that minimizes the loss function is the training process. A neural network model may use a radial basis function (RBF) network and a standard or stochastic gradient descent as the search technique with backpropagation.
[0042] A convolutional neural network (CNN) has multiple layers such as a convolutional layer, a rectified linear unit (ReLU) layer, a pooling layer, a fully connected (FC) layer, and so on. Some more complex CNNs may have multiple convolutional layers, pooling layers, and FC layers. Each layer includes a neuron for each output of the layer. A neuron inputs outputs of prior layers (or original input) and applies an activation function to the inputs to generate an output.
[0043] A convolutional layer may include multiple filters (also referred to as kernels or activation functions). A filter inputs a convolutional window, for example, of an image, applies weights to each pixel of the convolutional window, and outputs value for that convolutional window. For example, if the static image is 256 by 256 pixels, the convolutional window may be 8 by 8 pixels. The filter may apply a different weight to each of the 64 pixels in a convolutional window to generate the value.
[0044] An activation function has a weight for each input and generates an output by combining the inputs based on the weights. The activation function may be a rectified linear unit (ReLU) that sums the values of each input times its weight to generate a weighted value and outputs max(0, weighted value) to ensure that the output is not negative. The weights of the activation functions are learned when training a ML model. The ReLU function of max(0, weighted value) may be represented as a separate ReLU layer with a neuron for each output of the prior layer that inputs that output and applies the ReLU function to generate a corresponding “rectified output.”
[0045] A pooling layer may be used to reduce the size of the outputs of the prior layer by downsampling the outputs. For example, each neuron of a pooling layer may input 16 outputs of the prior layer and generate one output resulting in a 16-to-1 reduction in outputs.
[0046] An FC layer includes neurons that each input all the outputs of the prior layer and generate a weighted combination of those inputs. For example, if the penultimate layer generates 256 outputs and the FC layer inputs a neuron for each of three classifications (e.g., AF, VF, AFL), each neuron inputs the 256 outputs and applies weights to generate value for its classification.
[0047] One example of a CNN is a U-Net ML model. The U-Net ML model includes a contracting path and an expansive path. The contracting path includes a series of max pooling layers to reduce spatial information of the input image and increase feature information. The expansive path includes a series of upsampling layers to convert the feature information to the output image. The input and output of a U-Net represent an image such as an image of patient ECG as input and an image of a base region as output.
[0048] Multimodal ML combines different modalities of input data to make a prediction. The modalities may be, for example, images, extracted features, latent vectors, arrhythmia type, patient demographics, and so on. [0049] In one multimodal ML approach, referred to as “early fusion,” data of the different modalities is combined at the input stage, and one ML model is then trained on the multimodal data. The training data for this modality may include a collection of sets of training data (e.g., images and derived features). The training data may be used in its original form or preprocessed, for example, to reduce its dimensionality by compressing the data into byte arrays. The concatenated bytes may be then processed by a cross-attention mechanism to condense the concatenated bytes into a vector of a fixed size. The vectors are then used to train an ML model primarily using supervised approaches although self-supervised or unsupervised approaches may also be used.
[0050] In a second multimodal ML approach, data from different modalities may be kept separate at the input stage and used as inputs to different, modality-specific ML models (e.g., a CNN for image data and a recurrent neural network (RNN) for sequential data). The modality-specific ML models may be trained jointly such that information from across different modalities is combined to make predictions, and the combined (cross-modality) loss is used to adjust model weights. Alternatively, the modalityspecific ML models may also be trained separately using a separate loss function for each modality. A combined ML is then trained based on the outputs of the modality specific models. Continuing with the example, the training data for each modalityspecific ML model may be based on its data along with a label. The combined ML model is then trained with the outputs of the modality-specific ML models with a final label.
[0051] Transformer ML employs an attention mechanism to process tokens representing the input in parallel. For example, if a transformer ML model is used to process an ECG represented as a voltage-time series with portions of the series represented as a token that includes a representation of the portion and its positional information.
[0052] A transformer ML model includes encoders with a neural network and selfattention mechanism and decoders with an attention mechanism, a self-attention mechanism, and a neural network.
[0053] The first layer of the encoder inputs the tokens, and each other layer inputs the encodings of the previous layer. The self-attention mechanism inputs the encodings of the previous layer (or tokens for the first encoder) and weighs the relevance of each encoding to each other to generate input for the neural network which generates the encodings.
[0054] The first layer of decoder inputs data based on the tokens, and each other layer inputs the decoding of the prior layer. Each layer of the decoder also inputs the encodings of the encoder. The attention and self-attention mechanisms input the decodings (or tokens for the first layer) and weigh the relevance of each decoding to each other to generate input for the neural network.
[0055] Although initially developed to process sentences, transformers have been adapted for other application such as image recognition. The input to the transformer is a representation of fixed-size patches of the image (e.g., ECG). The representation of a patch may be, for each pixel of the patch, an encoding of its row, column, and color. The output of the transformer may be, for example, a classification of the image.
[0056] In some embodiments, a kNN model provides information relating to an entity. The training data for a kNN model may be training feature vectors (e.g., ECG images) and a label (e.g., stimulation device location) for each feature vector indicating information relating to an entity (e.g., ECG) having the values of the features of that feature vector. A kNN model may be used without a training phase that is without learning weights or other parameters to represent the training data. In such a case, the patient feature vector is compared to the training feature vectors to identify a number (e.g., represented by the “k” in kNN) of similar training feature vectors. Once the number of similar training feature vectors are identified, the labels associated with the similar training feature vectors are analyzed to provide information for the entity. The labels of the training feature vectors that are more similar to an entity feature vector may be given a higher weight than those that are less similar. For example, if k is 10 and four training feature vectors are very similar and six are less similar, similarity weights of 0.9 may be assigned to the very similar training feature vectors and 0.2 to the less similar. If three of the four and one of the six have the same information, then the information for the entity is primarily based on that information even though most of the 10 have different information. Conceptually, training feature vectors that are very similar are closer to the entity feature vector in a multi-dimensional space of features and a similarity weight is based on distance between the feature vectors. Various techniques may be employed to calculate a similarity metric indicating similarity between a candidate feature vector and a training feature vector such as a dot product, cosine similarity, a Pearson’s correlation, and so on.
[0057] If the number of training feature vectors is large, various techniques may be employed to effectively “compress” the training data during a training phase. For example, a clustering technique may be employed to identify clusters of training feature vectors that are similar and have the same label. A training feature vector may be generated for each cluster (e.g., one from the cluster or one based on mean values for the features) as a cluster feature vector and assign a cluster weight to it based on number of training feature vectors in the cluster.
[0058] The ML models generate label for cardiogram (e.g., ECG or VCG) input a feature vector of one or more features derived from the cardiogram. The features may include an image of the cardiogram, a time-voltage series specifying voltages and time increments of the cardiogram, images and time-voltage series of portions of the cardiogram (e.g., QRS complex), length in seconds of various intervals (e.g., R-R interval, QRS complex, T wave, T-Q interval, and Q-R interval), QRS integral, maximum, minimum, mean, and variance of voltages of portions of the ECG, a maximal vector of QRS loop and angle of the vector derived from a VCG, location of a peak (Q peak) or zero crossing relative to a maximum peak (T peak) in an interval, and so on. The features used by an ML model may be manually or automatically selected. An assessment of which features may be useful in providing an accurate output for a ML model are referred to as informative feature. The assessment of which features are informative may be based on various feature selection techniques such as a predictive power score, a lasso regression, a mutual information analysis, and so on.
[0059] The features may also be latent vectors generated using a ML model such as an autoencoder. For example, an autoencoder may be trained using ECG images. In such a case, when an ECG image is input into the trained autoencoder, the latent vector that is generated is a feature vector that represents the ECG image. That feature vector can be input into another trained ML model such as a neural network or support vector machine to generate an output. When training the other ML model, for example, to identify a stimulation device location, the training ECG images are input to the autoencoder to generate training feature vectors that are labeled with a stimulation device location. The other ML model is then trained using the labeled feature vectors. The autoencoder may be trained using the training ECG images or may have been previously trained using a collection of ECG images. Rather than pre-training an autoencoder, only the portion of the autoencoder that generates the latent vector may be trained in parallel with the other ML model using a combined loss function. In such a case, no autoencoding is performed. Rather, the latent vector represents features of an ECG image that are particularly relevant to generating the output of the other ML model. Such an ML architecture may be used, for example, when the other ML model (e.g., transformer) is not designed to process ECG images directly.
[0060] Figure 7 is a flow diagram that illustrates the processing of an identify location component of the SDLI system in some embodiments. The identify location component 700 is invoked to determine the device location based on a patient ECG. In block 701 , the component receives a patient ECG. In block 702, the component identifies the patient spike portion of the patient ECG. In block 703, the component determines a device location based on the patient spike portion. The device location may be determined based on similar library spike portions of library ECGs or based on an ML model trained using library spiked portions labeled with library device locations. In block 704, the component displays a graphic of a heart. The graphic may be based on a three-dimensional mesh representing anatomical characteristics of the patient heart or on an image collected from the patient. In block 705, the component adds an indication of the device location to the graphic and then completes. The identify location component may be invoked for each patient ECG collected during an electrophysiological procedure (e.g., an ablation procedure) to identify a device location and update the graphic of the heart. The resulting graphic indicates the path of the catheter within the heart of the patient. The graphic of the heart may be displayed initially, and each device location can then be added to the graphic to illustrate the path of the stimulation device.
[0061 ] Figure 8 is a block diagram that illustrates components of the SDLI system in some embodiments. The SDLI system 800 includes a generate library component 810, a train ML model component 820, and an identify location component 830. The generate library component invokes the run simulations component 811 and/or the collect clinical ECG/data component 812 to generate the library. The identify location component identifies a device location given an ECG by invoking either the determine device location based on matching component 831 or the determine device location based on machine learning component 832. The train ML model component trains an ML model using the data of the library data store 842 as training data and stores the learned model weights in the ML weights data store 843. The run simulations component runs simulations based on characteristics specified a characteristics data store 841 . Characteristics may include device characteristics, cardiac chamber, cardiac anatomical characteristics, cardiac electrophysiological characteristics, and so on. The results of the simulations are stored in the library data store. The collect clinical ECG/data component collects clinical data and stores it in the library data store. The determine device location based on matching component identifies library spike portions of library ECGs within the library data store that match the patient spike portions of a patient ECG and outputs an indication of the device location associated with the matching library spike portions. The determine device location component based on machine learning inputs a patient ECG and patient characteristic data and applies the ML model based on the model weights of the model weights data store to generate a device location.
[0062] The computing systems (e.g., network nodes or collections of network nodes) on which the SDLI system and the other described systems may be implemented may include a central processing unit, input devices, output devices (e.g., display devices and speakers), storage devices (e.g., memory and disk drives), network interfaces, graphics processing units, communications links (e.g., Ethernet, Wi-Fi, cellular, and Bluetooth), global positioning system devices, and so on. The input devices may include keyboards, pointing devices, touch screens, gesture recognition devices (e.g., for air gestures), head and eye tracking devices, microphones for voice recognition, and so on. The computing systems may include high-performance computing systems, distributed systems, cloud-based computing systems, client computing systems that interact with cloud-based computing system, desktop computers, laptops, tablets, e-readers, personal digital assistants, smartphones, gaming devices, servers, and so on. The computing systems may access computer- readable media that include computer-readable storage mediums and data transmission mediums. The computer-readable storage mediums are tangible storage means that do not include a transitory, propagating signal. Examples of computer- readable storage mediums include memory such as primary memory, cache memory, and secondary memory (e.g., DVD), and other storage. The computer-readable storage media may have recorded on them or may be encoded with computer-executable instructions or logic that implements the SDLI system and the other described systems. The data transmission media are used for transmitting data via transitory, propagating signals or carrier waves (e.g., electromagnetism) via a wired or wireless connection. The computing systems may include a secure crypto processor as part of a central processing unit (e.g., Intel Secure Guard Extension (SGX)) for generating and securely storing keys and for encrypting and decrypting data using the keys and for securely executing all or some of the computer-executable instructions of the SDLI system. Some of the data sent by and received by the SDLI system may be encrypted, for example, to preserve patient privacy (e.g., to comply with government regulations such the European General Data Protection Regulation (GDPR) or the Health Insurance Portability and Accountability Act (HIPAA) of the United States). The SDLI system may employ asymmetric encryption (e.g., using private and public keys of the Rivest-Shamir- Adleman (RSA) standard) or symmetric encryption (e.g., using a symmetric key of the Advanced Encryption Standard (AES)).
[0063] The one or more computing systems may include client-side computing systems and cloud-based computing systems (e.g., public or private) that each executes computer-executable instructions of the SDLI system. A client-side computing system may send data to and receive data from one or more servers of the cloud-based computing systems of one or more cloud data centers. For example, a client-side computing system may send a request to a cloud-based computing system to perform tasks such as run a patient-specific simulation of electrical activity of a heart or train a patient-specific ML model. A cloud-based computing system may respond to the request by sending to the client-side computing system data derived from performing the task such as a source location of an arrhythmia. The servers may perform computationally expensive tasks in advance of processing by a client-side computing system such as training an ML model or in response to data received from a client-side computing system. A client-side computing system may provide a user experience (e.g., user interface) to a user of the SDLI system. The user experience may originate from a client computing device or a server computing device. For example, a client computing device may generate a patient-specific graphic of a heart and display the graphic. Alternatively, a cloud-based computing system may generate the graphic (e.g., in a Hyper-Text Markup Language (HTML) format or an extensible Markup Language (XML) format) and provide it to the client-side computing system for display. A clientside computing system may also send data to and receive data from various medical devices such as an ECG monitor, an ablation therapy device, an ablation planning device, and so on. The data received from the medical devices may include an ECG, actual ablation characteristics (e.g., ablation location and ablation pattern), and so on. The data sent to a medical device may include data, for example, data in a Digital Imaging and Communications in Medicine (DICOM) format. A client-side computing device may also send data to and receive data from medical computing systems that store patient medical history data, descriptions of medical devices (e.g., type, manufacturer, and model number) of a medical facility, that store, medical facility device descriptions, that store results of procedures, and so on. The term cloud-based computing system may encompass computing systems of a public cloud data center provided by a cloud provider (e.g., Azure provided by Microsoft Corporation) or computing systems of a private server farm (e.g., operated by the provider of the SDLI system.
[0064] The SDLI system and the other described systems may be described in the general context of computer-executable instructions, such as program modules and components, executed by one or more computers, processors, or other devices. Generally, program modules or components include routines, programs, objects, data structures, and so on that perform tasks or implement data types of the SDLI system and the other described systems. Typically, the functionality of the program modules may be combined or distributed as desired in various examples. Aspects of the SDLI system and the other described systems may be implemented in hardware using, for example, an application-specific integrated circuit (ASIC) or a field programmable gate array (FPGA).
[0065] Figure 9 is a flow diagram that illustrates the processing of a run simulation component of the SDLI system in some embodiments. The run simulation component 900 is invoked to run simulations of electrical activity resulting from activation of a stimulation devices and store associations of simulated spike portions of simulated ECGs to simulated device locations in library data store. In block 901 , the component selects the next set of characteristics that may be specified in characteristics data store. In decision block 902, if all the sets of characteristics have already been selected, then the component completes, else the component continues at block 903. In block 903, the component selects a simulated device location. In decision block 904, if all the simulated device locations have already been selected, then the component loops to block 901 to select the next set of characteristics, else the component continues at block 905. In block 905, the component selects the next simulated time interval of the simulation. In decision block 906, if all the simulated time intervals of already been selected, then the component continues at block 910, else the component continues at block 907. In block 907, the component selects the next vertex of the three-dimensional mesh that is based on anatomical characteristics. In decision block 908, if all the vertices have already been selected, then the component loops to block 905 to select the next simulated time interval, else the component continues at block 909. In block
909, the component updates the vertex values based on electrophysiological characteristics of the vertex and loops to block 907 to select the next vertex. In block
910, the component generates a simulated spike portion of a simulated ECG based on the values of the vertices for the simulated time intervals. In block 911 , the component stores the simulated spike portion in association with the simulated device location in the library and loops to block 903 to select the next simulated device location.
[0066] Figure 10 is a flow diagram that illustrates the processing of a train ML model component of the SDLI system in some embodiments. The train ML model component 1000 trains an ML model based on the data of the library data store. In block 1001 , the component trains a CNN autoencoder using the library ECGs. In block 1002, the component selects the next library association of the library data store. In decision block 1003, if all the associations have already been selected, then the component continues at block 1009, else the component continues at block 1004. In block 1004, the component applies the CNN to the library ECG to generate a latent vector representing library ECG. In block 1005, the component adds the latent vector to the feature vector. In block 1006, the component adds the data or characteristics of the characteristics data store to the feature vector. In block 1006, the component generates a label based on library device location. In block 1008, the component adds the feature vector and label to the training data and loops to block 1002 to select the next library association. In block 1009, the component trains a neural network using the training data. In block 1010, the component stores the neural network weights in the ML weights data store and completes. [0067] Figure 11 is a flow diagram that illustrates the processing of a determine device location based on machine learning component of SDLI system in some embodiments. The determine device location based on machine learning component 1100 accesses a patient ECG and characteristic data and applies the ML model to determine the device location. In block 1101 , the component accesses the patient ECG and characteristic data. In block 1102, the component identifies the patient spike portion of the patient ECG. In block 1103, the component applies the CNN to the patient spike portion to generate a latent vector representing patient spike portion. In block 1104, the component selects a neural network based on the patient characteristic data that is training with characteristic data that is similar to the patient characteristic data. In block 1 105, the component generates a feature vector that includes the latent vector and the patient characteristic data. In block 1106, the component applies the neural network to the feature vector to determine device location and then completes.
[0068] Figure 12 is a flow diagram that illustrates the processing of a determine device location based on matching component of the SDLI system in some embodiments. The determine device location based on matching component 1200 determines a device location based on similarity of a patient ECG to library ECGs. In block 1201 , the component accesses the patient ECG and patient characteristic data. In block 1202, the component identifies the patient spike portion of the patient ECG. In block 1203, the component selects a library based on patient characteristic data. The library is associated with clinical or simulated data that is similar to the patient characteristic data. In block 1204, the component selects the next association of the library. In decision block 1205, if all the associations have already been selected, then the component continues at block 1209, else the component continues at block 1206. In block 1206, the component calculates a similarity score between the library spike portion of the association and the patient spike portion. In decision block 1207, if the similarity score satisfies similarity criterion (e g., above a threshold level), then the component continues at block 1208, else the component loops to block 1204 to select the next association. In block 1208, the component adds an indication of the association to a matching set and then loops to block 1204 to select the next association. In block 1209, the component selects the top associations of the matching set. In block 1210, the component outputs an indication of the device locations of the selected associations and then completes. [0069] The following paragraphs describe various aspects of the SDLI system. An implementation of the SDLI system may employ any combination or sub-combination of the aspects and may employ additional aspects. The processing of the aspects may be performed by one or more computing systems with one or more processors that execute computer-executable instructions that implement the aspects and that are stored on one or more computer-readable storage mediums.
[0070] In some aspects, the techniques described herein relate to a method performed by one or more computing devices for identifying a patient device location of a patient stimulation device within an organ of patient, the method including: receiving a patient electrogram that is collected while the patient stimulation device is activated within the patient and while organ tissue is not captured, the electrogram reflecting current through blood within the organ; determining a device location based on an association between library electrograms and library device locations and based on similarity between the library electrograms and the patient electrogram, a library electrogram representing an electrogram that would be collected when a stimulation device is activated within the organ of a patient at the associated library device location; and outputting an indication of the determined device location to indicate the patient device location of the patient stimulation device when the patient electrogram was collected. In some aspects, the techniques described herein relate to a method wherein the determining includes: for each of a plurality of library electrograms, determining similarity between that library electrogram and the patient electrogram; and selecting a library electrogram based on the determined similarities wherein the determined device location is based on the library device location associated with the selected library electrogram. In some aspects, the techniques described herein relate to a method wherein the determining includes applying a machine learning model that inputs the patient electrogram and outputs a device location, the machine learning model trained with training data that includes library electrograms labeled with associated library device locations. In some aspects, the techniques described herein relate to a method wherein the patient device location and the library device locations indicate the location of multiple electrodes of the stimulation device. In some aspects, the techniques described herein relate to a method wherein at least some of the library electrograms are simulated electrograms generated based on simulations of electrical activity resulting from simulated activation of a simulated stimulation device having a simulated device location. In some aspects, the techniques described herein relate to a method wherein at least some of the library electrograms are clinical electrograms and the library device locations are clinical device locations, the clinical electrograms collected from patients when a stimulation device is activated at the clinical device location. In some aspects, the techniques described herein relate to a method wherein the patient electrogram is a spike portion of a longer patient electrogram, the spike portion corresponds to a spike resulting from activation of the stimulation device. In some aspects, the techniques described herein relate to a method wherein the organ is a heart and the electrogram is a cardiogram. In some aspects, the techniques described herein relate to a method wherein the organ is a gastrointestinal tract and the electrogram is a gastroenterogram. In some aspects, the techniques described herein relate to a method wherein the organ is a heart and the library is specific to a cardiac segment. In some aspects, the techniques described herein relate to a method wherein a cardiac segment is selected from a group consisting of superior vena cava, inferior vena cava, right atrium, left atrium, right ventricle, left ventricle, and coronary sinus. In some aspects, the techniques described herein relate to a method wherein the library is specific to an organ characteristic. In some aspects, the techniques described herein relate to a method wherein the organ is a heart and the organ characteristic is an arrhythmia type. In some aspects, the techniques described herein relate to a method further including displaying a heart graphic along with an indication of the determined device location. In some aspects, the techniques described herein relate to a method wherein the indication of the determined device locations includes an indication of electrodes of the stimulation device. In some aspects, the techniques described herein relate to a method wherein each library electrogram is associated with library device characteristics of the stimulation device and the determining is further based on similarity between patient device characteristics and library device characteristics. In some aspects, the techniques described herein relate to a method wherein when organ tissue is not captured, activation of the stimulation device does not induce depolarization of the organ. In some aspects, the techniques described herein relate to a method wherein the outputting includes displaying a graphic of the organ with the device location indicated.
[0071] In some aspects, the techniques described herein relate to a method performed by one or more computing systems for simulating electrical activity of an organ of a patient, the method including: for each of a plurality of organ characteristics, for each of a plurality of simulated device locations of a stimulation device within the organ, simulating electrical activity of tissue of the organ and of blood within the organ based on activation of the stimulation device at the simulated device location and when the stimulation device does cause depolarization of tissue of the organ; generating a simulated electrogram based on the simulated electrical activity; and storing in a library an association between the simulated electrogram and the simulated device location. In some aspects, the techniques described herein relate to a method wherein the organ is represented by a three-dimensional mesh with vertices corresponding to locations within the organ, wherein the simulating for each of a plurality of simulated time intervals, calculates a value indicating electrical activity at locations within the organ and calculates a value indicating electrical activity within blood within the organ resulting from activation of the stimulation device, and wherein the simulated electrogram is generated based on the electrical activity within the organ and the electrical activity within the blood. In some aspects, the techniques described herein relate to a method wherein the generating of the simulated electrogram includes, for each simulated time interval, generating an organ dipole vector representing a dipole resulting from the simulated electrical activity within the organ and a blood dipole vector representing a dipole resulting from the simulated electrical activity within the blood. In some aspects, the techniques described herein relate to a method further including, for each simulated time interval, generating a combined dipole vector based on the organ dipole vector and the blood dipole vector. In some aspects, the techniques described herein relate to a method further including: for at least some of the simulations, for each of a plurality of simulated thoraxes, generating a simulated electrogram factoring simulated thoracic characteristics of that simulated thorax. In some aspects, the techniques described herein relate to a method wherein the simulated thoracic characteristics include anatomical characteristics, electrophysiological characteristics, and body composition characteristics. In some aspects, the techniques described herein relate to a method further including training a machine learning model with training data that includes the simulated electrograms labeled with the associated simulated device locations. In some aspects, the techniques described herein relate to a method wherein a simulation is further based on simulated device characteristics. [0072] In some aspects, the techniques described herein relate to a method performed by one or more computing systems for simulating electrical activity of blood within organ of a person, the method including: for each of a plurality of organ characteristics, for each of a plurality of simulated device locations of a stimulation device within the blood, simulating electrical activity of the blood within the organ based on a simulated activation of the stimulation device at the simulated device location wherein the simulated activation does not capture tissue of the organ; generating a simulated spike signature based on the simulated electrical activity; and storing in a library an association between the simulated spike signature and the simulated device location. In some aspects, the techniques described herein relate to a method further including identifying a simulated spike signature within a patient cardiogram of a patient collected during activation of the stimulation device within blood of the organ of the patient. In some aspects, the techniques described herein relate to a method further including outputting an indication of the simulated device location associated with the identified simulated spike signature. In some aspects, the techniques described herein relate to a method wherein for each simulation, a plurality of simulated spiked signatures are generated based on a plurality of thorax configurations and/or lead placements.
[0073] In some aspects, the techniques described herein relate to a method performed by one or more computing systems for generating a machine learning model to identify a device location relative to an organ, the method including: accessing a library of associations between library electrograms and library device locations, each library electrogram representing electrical activity resulting from activation of a stimulation device at a library device location relative to the organ wherein the activation does not capture tissue of the organ; generating training data that includes library electrograms labeled with the associated library device locations; and training the machine learning model with the training data. In some aspects, the techniques described herein relate to a method wherein the associations further include library anatomical characteristics of the organ and the training data includes library electrograms along with the associated library anatomical characteristics labeled with library device locations. In some aspects, the techniques described herein relate to a method wherein the library anatomical characteristics specify a segmentation of the organ. In some aspects, the techniques described herein relate to a method wherein the machine learning model includes a convolution neural network that inputs one or more features derived from an image of a patient electrogram and outputs a patient device location. In some aspects, the techniques described herein relate to a method wherein the training data further includes an image of a simulated organ labeled with a simulated device location. In some aspects, the techniques described herein relate to a method wherein a library device location is within the organ. In some aspects, the techniques described herein relate to a method wherein a library device location is outside the organ.
[0074] In some aspects, the techniques described herein relate to one or more computing systems for identifying a device location of a stimulation device within the heart of a patient, the one or more computing systems including: one or more computer- readable storage mediums that store computer-executable instructions for controlling the one or more computing systems to: access a patient cardiogram that is collected while the stimulation device is activated within the heart and while cardiac tissue is not captured, the cardiogram reflecting current through blood resulting from the activation; determine a device location based on an association between library cardiograms and library device locations and based on similarity between the library cardiograms and the patient cardiogram, a library cardiogram representing a cardiogram that would be collected when a stimulation device is activated within the heart of a patient at the associated library device location; and output an indication of the determined device location to indicate the device location of the stimulation device when the cardiogram was collected; and one or more processors for controlling the one or more computing systems to execute one or more of the computer-executable instructions. In some aspects, the techniques described herein relate to one or more computing systems wherein the instructions that determine further include instructions that: for each of a plurality of library cardiogram, determine similarity between that library cardiogram and the patient cardiogram; and select a library cardiogram based on the determined similarities wherein the determined device location is based on the library device location associated with the selected library cardiogram. In some aspects, the techniques described herein relate to one or more computing systems wherein the instructions that determine further include instructions that apply a machine learning model that inputs the patient cardiogram and outputs a device location, the machine learning model trained with training data that includes library cardiograms labeled with associated library device locations. In some aspects, the techniques described herein relate to one or more computing systems wherein the patient cardiogram represents a cardiac cycle that includes a spike resulting from the current through blood within a cardiac chamber.
[0075] Although the subject matter has been described in language specific to structural features and/or acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.

Claims

1 . A method performed by one or more computing devices for identifying a patient device location of a patient stimulation device within an organ of patient, the method comprising: receiving a patient electrogram that is collected while the patient stimulation device is activated within the patient and while organ tissue is not captured, the electrogram reflecting current through blood within the organ; determining a device location based on an association between library electrograms and library device locations and based on similarity between the library electrograms and the patient electrogram, a library electrogram representing an electrogram that would be collected when a stimulation device is activated within the organ of a patient at the associated library device location; and outputting an indication of the determined device location to indicate the patient device location of the patient stimulation device when the patient electrogram was collected.
2. The method of claim 1 wherein the determining includes: for each of a plurality of library electrograms, determining similarity between that library electrogram and the patient electrogram; and selecting a library electrogram based on the determined similarities wherein the determined device location is based on the library device location associated with the selected library electrogram.
3. The method of claim 1 wherein the determining includes applying a machine learning model that inputs the patient electrogram and outputs a device location, the machine learning model trained with training data that includes library electrograms labeled with associated library device locations.
4. The method of claim 1 wherein the patient device location and the library device locations indicate the location of multiple electrodes of the stimulation device.
5. The method of claim 1 wherein at least some of the library electrograms are simulated electrograms generated based on simulations of electrical activity resulting from simulated activation of a simulated stimulation device having a simulated device location.
6. The method of claim 1 wherein at least some of the library electrograms are clinical electrograms and the library device locations are clinical device locations, the clinical electrograms collected from patients when a stimulation device is activated at the clinical device location.
7. The method of claim 1 wherein the patient electrogram is a spike portion of a longer patient electrogram, the spike portion corresponds to a spike resulting from activation of the stimulation device.
8. The method of claim 1 wherein the organ is a heart and the electrogram is a cardiogram.
9. The method of claim 1 wherein the organ is a gastrointestinal tract and the electrogram is a gastroenterogram.
10. The method of claim 1 wherein the organ is a heart and the library is specific to a cardiac segment.
11. The method of claim 10 wherein a cardiac segment is selected from a group consisting of superior vena cava, inferior vena cava, right atrium, left atrium, right ventricle, left ventricle, and coronary sinus.
12. The method of claim 1 wherein the library is specific to an organ characteristic.
13. The method of claim 12 wherein the organ is a heart and the organ characteristic is an arrhythmia type.
14. The method of claim 13 further comprising displaying a heart graphic along with an indication of the determined device location.
15. The method of claim 14 wherein the indication of the determined device locations includes an indication of electrodes of the stimulation device.
16. The method of claim 1 wherein each library electrogram is associated with library device characteristics of the stimulation device and the determining is further based on similarity between patient device characteristics and library device characteristics.
17. The method of claim 1 wherein when organ tissue is not captured, activation of the stimulation device does not induce depolarization of the organ.
18. The method of claim 1 wherein the outputting includes displaying a graphic of the organ with the device location indicated.
19. A method performed by one or more computing systems for simulating electrical activity of an organ of a patient, the method comprising: for each of a plurality of organ characteristics, for each of a plurality of simulated device locations of a stimulation device within the organ, simulating electrical activity of tissue of the organ and of blood within the organ based on activation of the stimulation device at the simulated device location and when the stimulation device does cause depolarization of tissue of the organ; generating a simulated electrogram based on the simulated electrical activity; and storing in a library an association between the simulated electrogram and the simulated device location.
20. The method of claim 19 wherein the organ is represented by a three- dimensional mesh with vertices corresponding to locations within the organ, wherein the simulating for each of a plurality of simulated time intervals, calculates a value indicating electrical activity at locations within the organ and calculates a value indicating electrical activity within blood within the organ resulting from activation of the stimulation device, and wherein the simulated electrogram is generated based on the electrical activity within the organ and the electrical activity within the blood.
21. The method of claim 20 wherein the generating of the simulated electrogram includes, for each simulated time interval, generating an organ dipole vector representing a dipole resulting from the simulated electrical activity within the organ and a blood dipole vector representing a dipole resulting from the simulated electrical activity within the blood.
22. The method of claim 21 further comprising, for each simulated time interval, generating a combined dipole vector based on the organ dipole vector and the blood dipole vector.
23. The method of claim 19 further comprising: for at least some of the simulations, for each of a plurality of simulated thoraxes, generating a simulated electrogram factoring simulated thoracic characteristics of that simulated thorax.
24. The method of claim 23 wherein the simulated thoracic characteristics include anatomical characteristics, electrophysiological characteristics, and body composition characteristics.
25. The method of claim 24 further comprising training a machine learning model with training data that includes the simulated electrograms labeled with the associated simulated device locations.
26. The method of claim 19 wherein a simulation is further based on simulated device characteristics.
27. A method performed by one or more computing systems for simulating electrical activity of blood within organ of a person, the method comprising: for each of a plurality of organ characteristics, for each of a plurality of simulated device locations of a stimulation device within the blood, simulating electrical activity of the blood within the organ based on a simulated activation of the stimulation device at the simulated device location wherein the simulated activation does not capture tissue of the organ; generating a simulated spike signature based on the simulated electrical activity; and storing in a library an association between the simulated spike signature and the simulated device location.
28. The method of claim 27 further comprising identifying a simulated spike signature within a patient cardiogram of a patient collected during activation of the stimulation device within blood of the organ of the patient.
29. The method of claim 28 further comprising outputting an indication of the simulated device location associated with the identified simulated spike signature.
30. The method of claim 28 wherein for each simulation, a plurality of simulated spiked signatures are generated based on a plurality of thorax configurations and/or lead placements.
31 . A method performed by one or more computing systems for generating a machine learning model to identify a device location relative to an organ, the method comprising: accessing a library of associations between library electrograms and library device locations, each library electrogram representing electrical activity resulting from activation of a stimulation device at a library device location relative to the organ wherein the activation does not capture tissue of the organ; generating training data that includes library electrograms labeled with the associated library device locations; and training the machine learning model with the training data.
32. The method of claim 31 wherein the associations further include library anatomical characteristics of the organ and the training data includes library electrograms along with the associated library anatomical characteristics labeled with library device locations.
33. The method of claim 32 wherein the library anatomical characteristics specify a segmentation of the organ.
34. The method of claim 31 wherein the machine learning model includes a convolution neural network that inputs one or more features derived from an image of a patient electrogram and outputs a patient device location.
35. The method of claim 31 wherein the training data further includes an image of a simulated organ labeled with a simulated device location.
36. The method of claim 31 wherein a library device location is within the organ.
37. The method of claim 31 wherein a library device location is outside the organ.
38. One or more computing systems for identifying a device location of a stimulation device within the heart of a patient, the one or more computing systems comprising: one or more computer-readable storage mediums that store computerexecutable instructions for controlling the one or more computing systems to: access a patient cardiogram that is collected while the stimulation device is activated within the heart and while cardiac tissue is not captured, the cardiogram reflecting current through blood resulting from the activation; determine a device location based on an association between library cardiograms and library device locations and based on similarity between the library cardiograms and the patient cardiogram, a library cardiogram representing a cardiogram that would be collected when a stimulation device is activated within the heart of a patient at the associated library device location; and output an indication of the determined device location to indicate the device location of the stimulation device when the cardiogram was collected; and one or more processors for controlling the one or more computing systems to execute one or more of the computer-executable instructions.
39. The one or more computing systems of claim 38 wherein the instructions that determine further include instructions that: for each of a plurality of library cardiogram, determine similarity between that library cardiogram and the patient cardiogram; and select a library cardiogram based on the determined similarities wherein the determined device location is based on the library device location associated with the selected library cardiogram.
40. The one or more computing systems of claim 38 wherein the instructions that determine further include instructions that apply a machine learning model that inputs the patient cardiogram and outputs a device location, the machine learning model trained with training data that includes library cardiograms labeled with associated library device locations.
41. The one or more computing systems of claim 38 wherein the patient cardiogram represents a cardiac cycle that includes a spike resulting from the current through blood within a cardiac chamber.
PCT/US2024/015434 2023-02-17 2024-02-12 Stimulation device location identification system Ceased WO2024173270A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US202363446510P 2023-02-17 2023-02-17
US63/446,510 2023-02-17

Publications (2)

Publication Number Publication Date
WO2024173270A2 true WO2024173270A2 (en) 2024-08-22
WO2024173270A3 WO2024173270A3 (en) 2025-01-23

Family

ID=92420613

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2024/015434 Ceased WO2024173270A2 (en) 2023-02-17 2024-02-12 Stimulation device location identification system

Country Status (1)

Country Link
WO (1) WO2024173270A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2025029981A1 (en) * 2023-08-01 2025-02-06 The Vektor Group Inc. Heart wall refinement of arrhythmia source locations

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6139518B2 (en) * 2011-07-05 2017-05-31 カーディオインサイト テクノロジーズ インコーポレイテッド Positioning for ECG mapping
US9616237B2 (en) * 2012-09-28 2017-04-11 Ebr Systems, Inc. Systems, devices, and methods for selectively locating implantable devices
US11433243B2 (en) * 2017-08-08 2022-09-06 Ebr Systems, Inc. Systems, devices, and methods for electromechanical sensing and mapping
US20230049769A1 (en) * 2018-04-26 2023-02-16 Vektor Medical, Inc. Cardiogram collection and source location identification
US10709347B1 (en) * 2019-06-10 2020-07-14 Vektor Medical, Inc. Heart graphic display system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2025029981A1 (en) * 2023-08-01 2025-02-06 The Vektor Group Inc. Heart wall refinement of arrhythmia source locations

Also Published As

Publication number Publication date
WO2024173270A3 (en) 2025-01-23

Similar Documents

Publication Publication Date Title
CN113286557B (en) Method and computing system for enhancing images using source position
KR102871162B1 (en) Calibration of simulated cardiograms
US11338131B1 (en) Guiding implantation of an energy delivery component in a body
US12213742B2 (en) Ablation targeting and planning system
WO2024173597A2 (en) Atrial flutter classification system
CN113749670A (en) Local noise identification using coherent algorithms
WO2024173270A2 (en) Stimulation device location identification system
US20250246316A1 (en) Delivery plan evaluation system
US20250213887A1 (en) Overall ablation workflow system
US20250272554A1 (en) Automatic refinement of electrogram selection
WO2025029981A1 (en) Heart wall refinement of arrhythmia source locations
EP4665218A2 (en) Stimulation device location identification system
WO2025170906A1 (en) Cardiac catheter path planning system
WO2025207628A1 (en) Arrhythmia origin identification system
EP4665232A2 (en) Atrial flutter classification system
WO2025106454A1 (en) Training data augmentation and validation system
WO2025255351A1 (en) Implantation guidance system
CN114190885A (en) Automatic identification of scar regions within organ tissue using multiple imaging modalities

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 24757499

Country of ref document: EP

Kind code of ref document: A2

WWE Wipo information: entry into national phase

Ref document number: 2024757499

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 24757499

Country of ref document: EP

Kind code of ref document: A2

ENP Entry into the national phase

Ref document number: 2024757499

Country of ref document: EP

Effective date: 20250917