Login processing...

Trial ends in Request Full Access Tell Your Colleague About Jove


High-Throughput Analysis of Optical Mapping Data Using ElectroMap

doi: 10.3791/59663 Published: June 4, 2019


This protocol describes the setup and use of ElectroMap, a MATLAB-based open-source software platform for analysis of cardiac optical mapping data. ElectroMap provides a versatile high-throughput tool for analysis of optical mapping voltage and calcium datasets across a wide range of cardiac experimental models.


Optical mapping is an established technique for high spatio-temporal resolution study of cardiac electrophysiology in multi-cellular preparations. Here we present, in a step-by-step guide, the use of ElectroMap for analysis, quantification, and mapping of high-resolution voltage and calcium datasets acquired by optical mapping. ElectroMap analysis options cover a wide variety of key electrophysiological parameters, and the graphical user interface allows straightforward modification of pre-processing and parameter definitions, making ElectroMap applicable to a wide range of experimental models. We show how built-in pacing frequency detection and signal segmentation allows high-throughput analysis of entire experimental recordings, acute responses, and single beat-to-beat variability. Additionally, ElectroMap incorporates automated multi-beat averaging to improve signal quality of noisy datasets, and here we demonstrate how this feature can help elucidate electrophysiological changes that might otherwise go undetected when using single beat analysis. Custom modules are included within the software for detailed investigation of conduction, single file analysis, and alternans, as demonstrated here. This software platform can be used to enable and accelerate the processing, analysis, and mapping of complex cardiac electrophysiology.


Optical mapping utilizes fluorescent reporters of voltage and/or calcium concentration to interrogate cardiac electrophysiology (EP) and calcium handling in multicellular preparations, with greater spatial resolution than achievable with traditional techniques1,2,3. Therefore, optical mapping has emerged as an important and ever increasingly utilized technique, providing key insights into physiological and pathophysiological electrical behavior in the heart3,4,5,6,7,8. Effective processing and analysis of data obtained from optical mapping experiments is complicated by several factors. The high spatiotemporal resolution nature of optical mapping datasets results in raw videos files composed of thousands of image frames, each made up of a number of individual pixels, giving rise to large data files that necessitate high-throughput and automated processing9. Small pixel sizes, poor and uneven dye loading and small fractional changes in fluorescence result in optical signals with low signal to noise ratio (SNR), requiring pre-processing before effective analysis is achievable10. Processing and analysis can be further complicated by the use of optogenetic pacing protocols which utilize light to initiate activation, potentially distorting the recorded signal from the fluorescent sensors11,12. Furthermore, once data has been processed, several non-consistent techniques and definitions can be applied to measure parameters of interest, with the most applicable techniques varying depending on experimental setup, model and question2,10,13. These limitations prevent further uptake of the technology and hinder truly objective analysis.

To overcome these limitations, several research groups have designed custom processing pipelines tailored towards their experimental model, question and hardware7,14,15,16. Others utilize commercial proprietary software where the underlying algorithms may be difficult to access4,17. As a result, there is a clear need for a freely available open-source software platform for processing and analysis of optical mapping data. It is important that this software is open-source, easy to use, flexible to parameter adjustment, applicable to a range of experimental models with distinct EP properties and crucially allows straightforward and tunable quantification of the range of cardiac parameters that can be studied using optical mapping.

We have recently published and released a comprehensive software platform, ElectroMap, for high-throughout, semi-automated processing, analysis and mapping of cardiac optical mapping datasets13. Here, we present a video manual for the utilization of ElectroMap and demonstrate how it can be used to process, analyze and map several optical mapping datasets. We focus on the use of ElectroMap to quantify standard EP and calcium handling variables and demonstrate the use of standalone conduction velocity, single file analysis and alternans modules.


1. Optical mapping data collection

  1. Perform cardiac optical mapping using one of a wide range of experimental models including intact and isolated whole hearts6,18, isolated atria14,19, ventricular wedges20, cardiac slices21,22, and cellular monolayers23. See associated references for experimental designs to collect raw optical mapping data from these preparations. Provided that data obtained can be converted to a tiff stack or saved in a .MAT file, it should be analyzable using ElectroMap. This includes data of varying dimensions (square/rectangular) and resolutions (maximum tested currently 2048 pixels x 2048 pixels).

2. Software installation and start-up

NOTE: Below are detailed the two methods for installing and running ElectroMap – either within MATLAB run from the source (.m) code or as a standalone executable file (.exe for windows). The final software and its functionality are invariant between the two setup options (other than a few differences in directory navigation). Therefore, the main considerations for choosing version to install are access to MATLAB and required toolboxes and whether access to source code is desired. Where possible, it is recommended to use the MATLAB version for faster start up times, shorter processing times, and easier error reporting.

  1. Setup 1: Running electromap within MATLAB
    1. Install MATLAB. ElectroMap was designed in MATLAB 2017a, however, software has been tested for use in all subsequent releases of MATLAB (up to 2018b at time of writing). The following toolboxes are required: Image Processing, Signal Processing, Statistics and Machine Learning, and Curve Fitting.
    2. Download/clone all files from the latest ‘source code’ release of ElectroMap from the GitHub repository (https://github.com/CXO531/ElectroMap). Unzip the downloaded contents to a desired location.
    3. Open MATLAB and navigate to the folder location hosting the ElectroMap source code. Then, open the file ElectroMap.m and press run in the editor, or alternatively type ElectroMap in the command window and press RETURN. This will start the ElectroMap user interface, Figure 1A.
  2. Setup 2: Standalone .exe file
    1. Download the installer file: https://drive.google.com/open?id=1nJyI07w9WIt5zWcit0aEyIbtg31tANxI.
    2. Follow the instructions in the installer, which will download required the MATLAB runtime from the web alongside ElectroMap software.
    3. Run ElectroMap.exe.
      NOTE: Start up time for the standalone version can be several minutes.

3. Image loading and pre-processing

  1. Press Select Folder and navigate to the location of the data file(s) to be analyzed. This will populate the left-hand listbox with all files within that directory that are of the correct file type (.tif or .MAT). .MAT files must only contain the image stack variable.
    NOTE: Only folders and not individual files will appear as you navigate through the directory selector.
  2. Select file to be loaded from within the interface and press Load Images.
    1. Once loaded, the first frame will appear, and the red outline will indicate automatic thresholding of the image. If needed, reload previously used ROIs by selecting Save/Load ROI. In this case, skip step 3.3.
    2. As default, thresholding is based on the pixel intensities in the first frame. If desired, modify this to a threshold based to the signal time course amplitude by changing the option in the Image for threshold dropdown menu. Please note that once the thresholding is selected, it is then applied for the whole image stack.
  3. If desired, change the threshold option to manual, which will activate the slider to manually adjust the image threshold. Additionally, crop images (Crop Image) and/or draw a custom region of interest (Custom ROI) for analysis by selecting the appropriate tick box(es) below threshold options. Note that advanced options for region of interest selection such as number of areas are available from ROI Selection from the top menu.
  4. Once an appropriate threshold has been applied, press Process Images to apply processing. Settings for processing are detailed below (step 3.4.1-3.4.5). At this point, ensure that the correct camera settings have been entered. These are Pixel Size in µm (IMPORTANT: this is the image pixel size, and not the size of the pixels that make up the chip or equivalent hardware in the imaging device) and Framerate in kHz.
    1. For signal inversion, tick the Invert Data checkbox to enable. If reported fluorescent signal is inversely proportional to parameter of interest (as with commonly used potentiometric dyes) the signal can be inverted.
    2. For spatial filtering, select Gaussian or Average from the kernel menu. The size of the spatially averaged area is controlled by the Size input adjacent to the Kernel dropdown menu (i.e. 3 results in 3 pixel x 3 pixel filter kernel). When applying a Gaussian filter, the standard deviation can also be set from the Sigma input.
    3. For baseline correction, select Top-hat24 or polynomial (4th or 11th degree) correction25 from the Baseline menu. Correction can be applied to each pixel individually (long processing time) or as an average of the entire image (quicker but assumes homogenous baseline alterations). Top-hat correction can also be modified by setting the Top-Hat Length in milliseconds, adjacent to the baseline selection dropdown menu. The length of the Top-Hat kernel should be greater than the timescale of the individual action potentials/calcium transients.
    4. For temporal filtering, select Savitzky-Goaly or infinite impulse (IIR) filtering from the Filtering menu.
      NOTE: Other than for the tissue averaged signal that appears in the bottom left, temporal filtering is applied to each pixel individually at time of parameter quantification from ensemble averaged image ranges. This has been implemented to reduce processing time by filtering small sections of data when required rather than entire files.
    5. For frame removal, note that if the Remove Frames option is selected, large peaks with amplitude greater than the signal of interest can be removed from the image set. This may be useful in optically paced datasets such as optogenetic pacing where depolarization is initiated by optical activation of opsins such as channelrhodopsin 211,12.
      NOTE: As frame removal will potentially introduce unphysiological step changes into the image signals, temporal filtering may introduce artifacts to the data and so is not recommended here.
  5. Note that signal will be segmented once Process Images has been selected according to the options under Segmentation options, however this can quickly be changed without reprocessing the entire dataset (see section 4).

4. Data segmentation and ensemble averaging

NOTE: Once the file has been processed, peaks in the tissue averaged signal (bottom right trace, Figure 1A) will have been detected and labelled by red circles. Only peaks above a set threshold (blue line on trace that is set by Peak Threshold) are counted. Additionally, peaks are only counted if they are sufficiently delayed compared to the previous peaks, set by the Min Peak Distance input. Signal is then segmented based on the detected peaks. First, the effective cycle length (CL) of each peak is calculated by measuring the time between it and the next peak. If a number of peaks (set by Min Number of Peaks input) have similar CLs (threshold for which is set by Minimum Boundary input) then they are grouped and the average CL for those peaks calculated.

  1. For further segmentation of the data, press Segment Signal. Sub-segmentation options are: None – all peaks with same CL grouped together; All – Segments of npeaks within the constant CL times (npeaks is set by the Segment size input) are identified; Last – Final npeaks before a CL change are identified and grouped, and all others are not analyzed; and Single Beat – This is equivalent to applying the All segmentation with npeaks = 1, and so no grouping or ensemble averaging (see 4.5) are applied. This can be applied by selecting the Single Beat button.
    1. Apply custom segmentation of the signal by zooming in on a time of interest and selecting Segment Signal. This will add an additional option entitled Zoomed Section to the section list box, corresponding to the time points selected.
  2. The results of the segmentation will appear in the list-box adjacent to the tissue averaged signal, and will show section number and the estimated CL. All segmented time sections are denoted by different colors. Select a segment from the list-box to highlight that section in red. This will also automatically trigger analyses of this section, as if the Produce Maps button was selected (see section 5).
  3. Analyses of grouped peaks will be performed on the ‘ensemble averaged’ data. This involves averaging the peaks in a segment together, with the reference times being the peaks identified in step 4.2. Update the time window to average by modifying the before and after inputs and pressing Segment Signal.

5. Action potential/calcium transient duration and conduction velocity analysis

  1. Once images have been processed, the Produce Maps button will become active. Press Produce Maps to apply action potential duration (APD), activation time, conduction velocity and SNR analysis. By default, the analysis will be applied to the first signal segment. Select other segments from the list-box will apply analysis to chosen segment.
    NOTE: Results of analysis are displayed in results table, including mean, standard deviation, standard error, variance and 5th to 95th percentile analysis. Duration maps are termed ‘APD’ maps however, calcium signals processed using the same settings will measure calcium transient duration.
  2. Select Get Pixel Info to see a detailed display of the signal from any pixel within the image, and Compare Pixels to simultaneously plot signals from up to 6 locations.
    1. Use the Signal Processing panel to adjust settings for duration analysis. These are: Duration – Time of percentage repolarisation/decay to measure from peak; ‘APD’ Baseline – Time period of signal that is defined as reference baseline for amplitude measurements; and ‘APD’ Start time – Start time for duration measurements. These are the same options for deciding the activation time for isochronal maps (discussed below) and are termed: Start ( d2F/dt2­­max­), Upstroke (dF/dt­­max­), Depolarisation midpoint (time of 50% amplitude), Peak (time of maximum amplitude). These definitions applied to mouse and guinea pig action potentials are shown in Figure 2A.
      NOTE: Changing any of these options will automatically update the duration map and the results table. Map scale and outlier removal options are also available.
  3. Conduction velocity is also measured automatically within the main software interface. This is achieved using the multi-vector method of Bayly et al26 from the isochronal map defined by the chosen activation measure (discussed in step 5.4). Press Activation Points to render a 3D representation of the activation map.
  4. The multi-vector conduction velocity measurement method spatially segments the isochronal map into regions of n x n pixels. Set the value of n using the Local Window Size input, and set the range of activation times to apply analysis to using the Fitting activation times inputs.
    NOTE: For each local region, a polynomial surface, f, is fitted that best describes the relationship between activation time and spatial position, (x,y). The gradient vector, CVlocal, of this surface is then calculated as:
    Equation 1 (1)
    where Equation 9 denotes the two-dimensional cartesian spatial differential operator26.
  5. For each pixel in the isochronal map, a local vector representing speed and direction of conduction is calculated. Select Isochronal Map with vectors from the display dropdown menu to view this analysis.
  6. SNR is calculated as the ratio of the maximum amplitude compared to the standard deviation of the signal at baseline. This analysis is performed post all processing steps. Press SNR calculation in the top menu to edit settings for the period of the signal defined as baseline.

6. Conduction analysis module

  1. Press Conduction to access more detailed analysis of conduction velocity. This opens a separate module where conduction can be quantified using the Bayly multi-vector method as in the main interface, single vector methods, and as an activation curve.
  2. Press Single Vector to analyze conduction using the single vector method, where CV is calculated from the delay in activation time between two points. This can be done using Automatic or Manual methods, selectable below the Single Vector button.
    1. For automatic single vector method, select a distance and start point from which to measure conduction. The software will then perform a 360-degree sweep from the selected point, measuring the time delay and calculating the associated conduction velocity along all directions in 1-degree increments. The results of this analysis are displayed in the graph adjacent to the map, and the direction of slowest conduction is shown in red.
    2. For manual single vector method, choose both a start and end point from the isochronal map to calculate conduction velocity. To select a new start point, press Clear Start Point.
  3. Press Local Vector to apply the multi vector method, with the settings matching those from the main interface. Within the conduction module, the distribution of conduction speeds, as well as the angular distribution of calculated vectors and angular dependence of conduction speed can be displayed.
  4. Press activation curve to plot the percentage of tissue activated as a function of time. Time to 100% activation is automatically displayed, while custom values for minimum (blue) and maximum (red) activation percentages between which to measure can also be selected.

7. Additional analyses and modules

  1. Aside from automatically performed duration and conduction velocity analyses, several other parameters can be quantified using ElectroMap. These analyses are selectable from the dropdown menu above the display map. Select one of these options to perform the analysis, and the results will appear in the 4th row of the results table: 1) Diastolic Interval – Time from 90% repolarization to activation time of the next action potential; 2) Dominant Frequency – Frequency spectrum of each pixel is calculated using the fast Fourier Transform, and the frequency with the most power is defined as the dominant frequency. Advanced range and window settings for dominant frequency analysis are available by selecting Frequency Mapping; 3) Time to peak – The rise time between two user selected percentages (default 10 to 90%) of the depolarization phase of the action potential or the release of calcium. Percentage values can be changed by selecting TTP Settings; and 4) Relaxation constant (τ) – Relaxation constant is calculated by fitting a mono-exponential decay of the form of the form:
    Equation 2 (2)
    where the fluorescence level at time t depends on the peak fluorescence, F0, and the subsequent decay (C is a constant)27. The value between which to fit equation 2 are selectable within the main ElectroMap user interfaces, as well as a goodness of fit exclusion criteria based on the r2 value.
  2. Press Single File Analysis to open a dedicated module for high-throughput duration and conduction analysis of each identified segment in a file. Analysis can be performed on either the whole image (duration, conduction and activation time) or on selected regions or points of interest (currently duration only). Results are outputted to a .csv file.
    NOTE: For APD values from the whole image, the first column in the .csv file is the mean, while the second column is the standard deviation.
  3. Press Alternans to initiate a standalone module for dedicated analysis and mapping of beat-to-beat variability. See O’Shea et al. 201913 for details on alternans processing and analysis options. Specifically, this module is designed to identify two period oscillations, known as alternans. Both duration and amplitude alternans are calculated and outputted.
    NOTE: Duration alternans are measured by comparing the duration measurement from one peak to the next; i.e. if peak one and two and APD1 and APD2 respectively, then the duration alternan (ΔAPD) is calculated as
    Equation 3 (3)
    The duration measurement is performed using the settings in the main interface. Meanwhile, amplitude alternans can be quantified and mapped across multi-cellular preparations as absolute change (defined as a percentage where 0% = same amplitude between one beat and the next). Furthermore, the effects of phenomena such as calcium load can be further investigated by measuring and comparing Load and Release alternans, as has been previously reported28. If L is defined as the peak amplitude of the large beats (i.e. where the amplitude is greater than the previous beat), S the amplitude of the small beats, andEquation 4D the diastolic load of the small beats, the release alternans (Equation 5) are defined as:
    Equation 6 (4)
    Conversely, load alternans (Equation 7) are defined as:
    Equation 8 (5)
    Alternans measurements can be made across the whole tissue, and the results of the analysis are displayed in the bottom right of the module. When first using the module, the analysis is performed across the entire experimental file, and the results displayed are an average beat-beat difference across the whole file. However, analysis can be restricted to specific times in the file by de-selecting Hold Zoom, zooming in on a specific time period, and selecting Analyse Zoomed Section. This will update the results panel to show analysis from the selected time period.
    1. Select play to show a beat-to-beat video of the alternans analysis. Additionally, select Create Mean Map to export a map of the alternans behavior averaged from the selecting time points, which are set in the pop-up menu when using this feature.
  4. Press Phase Map to initiate the phase mapping module. A Hilbert transform is performed to calculate the instantaneous phase (between -π and +π) of the signals at each timepoint. Press play or drag slider to visualize phase behavior over time and click on a pixel to render a phase diagram.

8. Exporting data

  1. Data is exported from ElectroMap in a variety of forms. Press Export Values to save the values of the currently displayed map in the main used interface. Measured values can be saved as either a map (preserving pixel locations) or condensed into a single list, and can be saved as .csv,.txt or .MAT files.
  2. Press Export Map to bring up a pop-up containing the currently displayed map, which can then be saved in a variety of image formats. Display options for the map are controlled by selecting Map Settings but can also be edited once Export Map has been selected. For example, a color bar can be added by selecting this icon from the top menu, and the scale can be set by selecting Edit > Colormap.
  3. Press Activation Video to render an animation of the activation sequence, which can be saved as an animated .gif file.
  4. Press Segment Video to save a .avi video file of the currently displayed parameter of each identified segment.

Representative Results

All work performed as part of this study was undertaken in accordance with ethical guidelines set out by the UK Animals (Scientific Procedures) Act 1986 and Directive 2010/63/EU of the European Parliament on the protection of animals used for scientific purposes. Experiments were approved by the home office (mouse: PPL 30/2967 and PFDAAF77F, guinea pig: PPL PF75E5F7F) and the institutional review boards at University of Birmingham (mouse) and King’s College London (guinea pig). Detailed methods for collection of the raw data that has been analyzed here can be found in our previous publications5,6,14,19.

The main interface from which ElectroMap is controlled is shown in Figure 1A. The necessary steps to analyze a dataset are controlled primarily by the Load Images, Process Images, and Produce Maps buttons, and are shown highlighted in green, blue, and red, respectively in Figure 1A. Figure 1B-D shows the operations that occur on selection of each of these buttons. Load Images applies the image thresholding options as selected by the user (Figure 1B), while Process Images (Figure 1C) applies filtering and baseline correction. Finally, Produce Maps will first average data according to the time window and segmentation settings (unless single beat segmentation is chosen) and then perform analyses described above.

A key aspect of ElectroMap is its flexibility with respect to camera type and experimental model. This is crucial for the utility of an optical mapping software due to the distinct cardiac EP and anatomical characteristics that exist between widely used models. Figure 2A for example shows the action potential morphology of the murine atria when compared to the guinea pig ventricle, recorded using voltage sensitive dyes as previously reported6,14. Despite the distinct shape of the action potential, and the use of two separate optical mapping cameras with different framerates and pixel sizes, ElectroMap can be utilized to successfully analyze both datasets. However, this requires modification of some parameters within the user interface (Figure 2B). Note that the prolonged guinea pig action potential necessitates a larger time window. Additionally, to prevent top-hat baseline correction unphysiologically modifying the optically recorded signals, its time length must be increased so that it is greater than the time course of the action potential.

ElectroMap offers a multitude of processing options to help improve the SNR of optically recorded signals which may be required to effectively recover EP parameters. An example is automated ensemble averaging of peaks following data segmentation. Figure 3A-C demonstrates how the application of ensemble averaging, in lieu of other methods, can improve SNR from isolated murine left atria (n = 13). This reduces measurement heterogeneity and likelihood of analysis failure (Figure 3D). For example, a change of pacing frequency from 3 Hz to 10 Hz did not alter APD50, when no ensemble averaging is undertaken, yet an expected29 decrease in APD50 at 10 Hz pacing was observed when measured from ensemble averaged data (Figure 3E).

Figure 4 demonstrates the efficacy and utility of automated pacing frequency detection and segmentation offered by ElectroMap. Here, mouse left atria (n = 5) were paced at a 120 ms cycle length and cycle length was incrementally shortened by 10 ms until it reached 50 ms. ElectroMap automatically identified the pacing cycle length and grouped tissue averaged peaks accordingly (Figure 4A). This was achieved with high accuracy in all datasets (Figure 4B). Automated segmentation of the data allowed straightforward and high throughput analysis of the slowing of conduction velocity with increased pacing frequency/shortened cycle length (Figure 4C,D). Concurrently, APD50 (Figure 4E) and diastolic interval (Figure 4F) shortened. Amplitude of the optically measured peaks decreased, while time to peak increased (Figure 4G,H). These are again the expected restitution responses in cardiac tissue29,30 and use of ElectroMap can help therefore elucidate changes in response to pacing frequency in presence of pharmacological agents, genetic modification, or disease states.

An important consideration in the use of a software such as ElectroMap is the presence of artifacts in the underlying data. Figure 5, for example demonstrates that motion artifacts (the distortion of the optically recorded signal by tissue movement) can preclude accurate measurements of activation and especially repolarization within ElectroMap. See Discussion for further considerations.

Figure 1
Figure 1: ElectroMap main processing steps. (A) Graphical user interface of ElectroMap, with the Load Images (green), Process Images (blue), and Produce Maps (red) buttons highlighted. (B) Image thresholding options that can be applied on selecting Load Images. (C) Signal processing options available to the user include spatial and temporal filtering and baseline correction and can be applied to the image stack by pressing Process Images. (D) Ensemble averaging and parameter quantification (shown APD measurement) that is activated by selecting Produce Maps. Figure adapted from O’Shea et al., 201913. Please click here to view a larger version of this figure.

Figure 2
Figure 2: Analysis of mouse and guinea pig data using ElectroMap. (A) Optically recorded action potential from mouse atria and guinea pig ventricles, along with both the first (df/dt) and second (d2f/dt2) derivate of these signals. The various definitions for activation and repolarization times employable within ElectroMap are highlighted. (B) Screenshots of Image and signal processing settings utilized in ElectroMaps interface. Red boxes highlight settings that required modification between analyses of mouse and guinea pig data. Figure adapted from O’Shea et al., 201913. Please click here to view a larger version of this figure.

Figure 3
Figure 3: Ensemble averaging to resolve APD changes. (A) APD50 map and example single pixel signal from single beat optical action potentials. (B) APD50 map and example single pixel signal from optical action potentials generated by ensemble averaging of 10 successive beats (peak method). (C) SNR of single beat compared to 10 beat averaged signals. (D) APD50 heterogeneity (i) and number of measurement failures (ii) as a function of SNR for single beat and 10 beat averaged APD50 maps. (E) APD50 at 3 and 10 Hz pacing frequency, as measured from single beat and 10 beat maps. (Data shown as mean ± standard error, n = 13 left atria, ****p < 0.001 by student’s paired t-test). Please click here to view a larger version of this figure.

Figure 4
Figure 4: Use of ElectroMap to study pacing frequency responses in cardiac tissue. (A) Example ElectroMap screenshot of pacing frequency recognition and segmentation. (B) Comparison of known and ElectroMap measured pacing cycle lengths. (C) Activation maps at 120 ms and 60 ms pacing cycle lengths. (D-H) Grouped data of conduction velocity (D), APD50 (E), diastolic interval (F), amplitude (G), and time to peak (H) as a function of pacing cycle length decreasing from 120 ms to 60 ms in 10 ms increments. (Data shown as mean ± standard error, n = 5 left atria) Please click here to view a larger version of this figure.

Figure 5
Figure 5: Effect of motion artifacts. (A) APD­50 map. (B) Activation map. (C) Example signals from locations marked (crosses) on APD and activation maps. In the area of the tissue marked with the red cross, contraction has not been successfully uncoupled, distorting the measured optical signal. Please click here to view a larger version of this figure.


Here, we present a step-by-step guide for the utilization of open-source software ElectroMap for flexible and multi variable analysis of cardiac optical mapping datasets. For successful use of ElectroMap, imaging data is required to be in .tif or .MAT formats. ElectroMap incorporates several modifiable user settings. As demonstrated in Figure 2A, this is necessary due to the wide heterogeneity that exists between experimental models and imaging hardware. This means however that default settings within the software will not always be optimal, so a critical step in using the software is for the user to tune settings for their particular experimental setup. These include camera settings and timescales, as shown in Figure 2B. Once optimal settings have been found, these can be saved and reloaded at later times by selecting Configuration File.

Incorporation of automated CL measurement and signal segmentation are key advantages of the software. These features allow analysis of acute responses in experimental recordings and widen analysis from focusing on isolated single beats. Once desired segmentation has been achieved, the Single File Analysis module allows automated analysis of each individual segment (including single beats), realizing high-throughput analysis of multiple variables across the recording outputted in a single .csv file. In conjunction, ensemble averaging of grouped peaks is an effective method to improve quality of noisy signals that is automatically performed in ElectroMap. However, ensemble averaging is not ubiquitously beneficial, for example in studies of beat-to-beat variability. Therefore, ElectroMap integrates single beat segmentation to avoid ensemble averaging, alternative processing options to improve SNR (spatial and temporal filtering) and includes the Alternans analysis module to further investigate and map beat-to-beat variability.

Optical Mapping datasets often exhibit artifacts such as baseline drift and motion artifacts. Equally, the signals generated can be low quality due to small pixel sizes, short exposure times and low fractional fluorescent changes2. These factors prevent effective and accurate analysis of the underlying EP behavior. As outlined, ElectroMap has several processing strategies to overcome these issues. However, application of these algorithms to fundamentally poor quality/distorted data will still prevent effective analysis. SNR is therefore one of the parameters that is measured and displayed in ElectroMap. Equally, the user can select and compare the signals from specific regions from the sample using the Pixel Info and Compare modules, allowing identification of phenomena such as motion artifacts shown in Figure 5, and appropriate exclusion of data.

At present, ElectroMap does not support removal of motion artifacts from raw data in the same manner as baseline correction. Therefore, a possible future development of the software is inclusion of motion artefact removal by computational methods as has been reported31,32. Furthermore, ElectroMap is currently limited to study of one optical signal. However, for ratiometric dyes and simultaneous use of voltage and calcium dyes27, concurrent processing of two wavelength channels is required. The integration of dual signal analysis is therefore an important future addition to the software. Extension of analysis options applicable to arrhythmic datasets, such as phase singularity tracking, would equally broaden the scope of the software33,34. Finally, several of the analysis options described can also be useful in analysis of the electrode mapping data. Indeed, ElectroMap has been used to analyze electrode mapping data despite the contrasting electrogram waveform20,35, and further optimization will expand its use for this modality.


P.K. receives research support from several drug and device companies active in atrial fibrillation and has received honoraria from several such companies. L.F. has received institutional research grants EU, BHF, MRC, DFG and Gilead. P.K. and L.F. are listed as inventors on two patents held by University of Birmingham (Atrial Fibrillation Therapy WO 2015140571, Markers for Atrial Fibrillation WO 2016012783).

All other authors declare no potential conflict of interest.


This work was funded by the EPSRC studentship (Sci-Phy-4-Health Centre for Doctoral Training L016346) to D.P., K.R. and L.F., Wellcome Trust Seed Award Grant (109604/Z/15/Z) to D.P., British Heart Foundation Grants (PG/17/55/33087, RG/17/15/33106) to D.P., European Union (grant agreement No 633196 [CATCH ME] to P.K. and L.F.), British Heart Foundation (FS/13/43/30324 to P.K. and L.F.; PG/17/30/32961 to P.K. and A.H.), and Leducq Foundation to P.K.. J.W. is supported by the British Heart Foundation (FS/16/35/31952).


Name Company Catalog Number Comments
MATLAB and Simulink R2018a Mathworks, Inc, Natick, MA MATLAB software



  1. Efimov, I. R., Nikolski, V. P., Salama, G. Optical Imaging of the Heart. Circulation Research. 94, 21-33 (2004).
  2. Herron, T. J., Lee, P., Jalife, J. Optical imaging of voltage and calcium in cardiac cells & tissues. Circulation Research. 110, 609-623 (2012).
  3. Boukens, B. J., Efimov, I. R. A century of optocardiography. IEEE Reviews in Biomedical Engineering. 7, 115-125 (2014).
  4. Myles, R. C., Wang, L., Kang, C., Bers, D. M., Ripplinger, C. M. Local β-adrenergic stimulation overcomes source-sink mismatch to generate focal arrhythmia. Circulation Research. 110, 1454-1464 (2012).
  5. Syeda, F., et al. PITX2 Modulates Atrial Membrane Potential and the Antiarrhythmic Effects of Sodium-Channel Blockers. Journal of the American College of Cardiology. 68, 1881-1894 (2016).
  6. Winter, J., et al. Sympathetic nervous regulation of cardiac alternans in the intact heart. Frontiers in Physiology. 9, 1-12 (2018).
  7. Faggioni, M., et al. Suppression of spontaneous ca elevations prevents atrial fibrillation in calsequestrin 2-null hearts. Circulation: Arrhythmia and Electrophysiology. 7, 313-320 (2014).
  8. Sato, P. Y., et al. Loss of Plakophilin-2 Expression Leads to Decreased Sodium Current and Slower Conduction Velocity in Cultured Cardiac Myocytes. Circulation Research. 105, 523-526 (2009).
  9. Yu, T. Y., et al. Optical mapping design for murine atrial electrophysiology. Computer Methods in Biomechanics and Biomedical Engineering: Imaging & Visualization. 5, 368-378 (2017).
  10. Laughner, J. I., Ng, F. S., Sulkin, M. S., Arthur, R. M., Efimov, I. R. Processing and analysis of cardiac optical mapping data obtained with potentiometric dyes. American Journal of Physiology. Heart and Circulatory Physiology. 303, H753-H765 (2012).
  11. Crocini, C., Ferrantini, C., Pavone, F. S., Sacconi, L. Optogenetics gets to the heart: A guiding light beyond defibrillation. Progress in Biophysics and Molecular Biology. 130, 132-139 (2017).
  12. Entcheva, E., Bub, G. All-optical control of cardiac excitation: Combined high-resolution optogenetic actuation and optical mapping. The Journal of Physiology. 9, 2503-2510 (2016).
  13. O’Shea, C., et al. ElectroMap: High-throughput open-source software for analysis and mapping of cardiac electrophysiology. Scientific Reports. 9, 1-13 (2019).
  14. Yu, T. Y., et al. An automated system using spatial oversampling for optical mapping in murine atria. Development and validation with monophasic and transmembrane action potentials. Progress in Biophysics and Molecular Biology. 115, 340-348 (2014).
  15. Jaimes, R., et al. Functional response of the isolated, perfused normoxic heart to pyruvate dehydrogenase activation by dichloroacetate and pyruvate. Pflugers Archiv. 468, 131-142 (2016).
  16. Wang, K., et al. Cardiac tissue slices: preparation, handling, and successful optical mapping. American Journal of Physiology. Heart and Circulatory Physiology. 308, H1112-H1125 (2015).
  17. Parrish, D. C., et al. Transient denervation of viable myocardium after myocardial infarction does not alter arrhythmia susceptibility. American Journal of Physiology. Heart and Circulatory. (2017).
  18. Ihara, K., et al. Electrophysiological Assessment of Murine Atria with High-Resolution Optical Mapping. Journal of Visualized Experiments. (132), e56478 (2018).
  19. Holmes, A. P., et al. A Regional Reduction in Ito and IKACh in the Murine Posterior Left Atrial Myocardium Is Associated with Action Potential Prolongation and Increased Ectopic Activity. Plos One. 11, e0154077 (2016).
  20. Lang, D., et al. Arrhythmogenic remodeling of β2 versus β1 adrenergic signaling in the human failing heart. Circulation: Arrhythmia and Electrophysiology. 8, 409-419 (2015).
  21. Kang, C., et al. Human Organotypic Cultured Cardiac Slices: New Platform For High Throughput Preclinical Human Trials. Scientific Reports. 6, 1-13 (2016).
  22. Wen, Q., et al. Transverse cardiac slicing and optical imaging for analysis of transmural gradients in membrane potential and Ca2+ transients in murine heart. The Journal of Physiology. 596, 3951-3965 (2018).
  23. Houston, C., et al. Characterisation of re-entrant circuit (or rotational activity) in vitro using the HL1-6 myocyte cell line. Journal of Molecular and Cellular Cardiology. 119, 155-164 (2018).
  24. Yu, T. Y., et al. Optical mapping design for murine atrial electrophysiology. Computer Methods in Biomechanics and Biomedical Engineering: Imaging and Visualization. 5, 368-376 (2017).
  25. Laughner, J. I., Ng, F. S., Sulkin, M. S., Arthur, R. M., Efimov, I. R. Processing and analysis of cardiac optical mapping data obtained with potentiometric dyes. AJP: Heart and Circulatory Physiology. 303, H753-H765 (2012).
  26. Bayly, P. V., et al. Estimation of Conduction Velocity Vector Fields from Epicardial Mapping Data. IEEE Transactions on Bio-Medical Engineering. 45, 563-571 (1998).
  27. Jaimes, R., et al. A technical review of optical mapping of intracellular calcium within myocardial tissue. American Journal of Physiology. Heart and Circulatory Physiology. 310, H1388-H1401 (2016).
  28. Wang, L., et al. Optical mapping of sarcoplasmic reticulum Ca2+ in the intact heart: Ryanodine receptor refractoriness during alternans and fibrillation. Circulation Research. 114, 1410-1421 (2014).
  29. Winter, J., Shattock, M. J. Geometrical considerations in cardiac electrophysiology and arrhythmogenesis. Europace. (2016).
  30. Mironov, S., Jalife, J., Tolkacheva, E. G. Role of conduction velocity restitution and short-term memory in the development of action potential duration alternans in isolated rabbit hearts. Circulation. 118, 17-25 (2008).
  31. Khwaounjoo, P., et al. Image-Based Motion Correction for Optical Mapping of Cardiac Electrical Activity. Annals of Biomedical Engineering. 43, 1235-1246 (2014).
  32. Christoph, J., Luther, S. Marker-Free Tracking for Motion Artifact Compensation and Deformation Measurements in Optical Mapping Videos of Contracting Hearts. Frontiers in Physiology. 9, (2018).
  33. Umapathy, K., et al. Phase Mapping of Cardiac Fibrillation. Circulation: Arrhythmia and Electrophysiology. 3, 105-114 (2010).
  34. Tomii, N., et al. Detection Algorithm of Phase Singularity Using Phase Variance Analysis for Epicardial Optical Mapping Data. IEEE Transactions on Biomedical Engineering. 63, 1795-1803 (2016).
  35. Cantwell, C. D., et al. Techniques for automated local activation time annotation and conduction velocity estimation in cardiac mapping. Computers in Biology and Medicine. 65, (2015).
High-Throughput Analysis of Optical Mapping Data Using ElectroMap
Play Video

Cite this Article

O’Shea, C., Holmes, A. P., Yu, T. Y., Winter, J., Wells, S. P., Parker, B. A., Fobian, D., Johnson, D. M., Correia, J., Kirchhof, P., Fabritz, L., Rajpoot, K., Pavlovic, D. High-Throughput Analysis of Optical Mapping Data Using ElectroMap. J. Vis. Exp. (148), e59663, doi:10.3791/59663 (2019).More

O’Shea, C., Holmes, A. P., Yu, T. Y., Winter, J., Wells, S. P., Parker, B. A., Fobian, D., Johnson, D. M., Correia, J., Kirchhof, P., Fabritz, L., Rajpoot, K., Pavlovic, D. High-Throughput Analysis of Optical Mapping Data Using ElectroMap. J. Vis. Exp. (148), e59663, doi:10.3791/59663 (2019).

Copy Citation Download Citation Reprints and Permissions
View Video

Get cutting-edge science videos from JoVE sent straight to your inbox every month.

Waiting X
simple hit counter