MSiReader — Free Open Source MS Imaging Software


MSiReader v1.00 Released!
Click here for more details.

MSiReader is an open-source vendor-neutral Matlab application to view and perform data analysis of Mass Spectrometry Imaging (MSI) data. A standalone version of MSiReader that does not require a Matlab license is also provided. Those who are unfamiliar with the Matlab language will have little difficulty navigating the user-friendly interface and users with Matlab programming experience can adapt and customize MSiReader for their own needs.

Because binning is not performed on the imaging data until requested by the user, high resolving power data (small m/z increment) can be viewed and processed as long as the total data cube size does not exceed memory resources (RAM).

MSiReader Software

Data Processing

Below is a summary of the processing and visualization tools currently available in MSiReader:

  • Automatic peak detection
  • Peak normalization (by m/z, TIC or custom heatmap)
  • Polarity switching and filtering
  • Absolute quantification
  • Baseline correction
  • Background subtraction
  • Partial data set loading using an ROI location file
  • Filtering by m/z range and abundance magnitude
  • Spectral extraction (single or average)
  • Save figure/image/data (single or batch)
  • Customizable centroid calculation
  • Customizable abundance calculation
  • Customizable colormaps, logarithmic color scaling
  • Colocalization of 3 images, plus an image overlay
  • Multiple pixel interpolation schemes
  • Data extraction from ROI
  • Export data cube, ROI and all results
  • Data cube or ROI binned export for MVA
  • Batch processing of a list of m/z peaks
  • 4D visualization with MSiSlicer
  • Overlay and co-registration of a 2nd image
  • Lipid maps plots with exported peak markers
  • Mass measurement accuracy plots
  • Annotation of putative peaks from user database
  • Image mosaic for a folder of data sets (imzML or mzXML)
  • User-written external function support
  • More...

All data analysis features are explained in further detail in the User's Manual provided with the application. The release notes summarize the changes since the last release. Different pathways to convert imaging files from vendor's proprietary formats to a format compatible with MSiReader are also presented. Currently, the following formats can be read directly:

  • imzML (processed or continuous, single or multiple files)
  • mzXML (single or multiple files)
  • IMG (Analyze 7.5)
  • ASCII (one file per scan)

What's new in MSiReader v1.00

  • Loading a folder of data sets at once
  • Mass measurement accuracy plots
  • The MSiExport tool
  • The MSiDatabase peak annotation tool
  • Support for user-written functions
  • Faster m/z resampling
  • Standalone version upgraded to Matlab R2017a
  • Significantly better and faster Excel support
  • Improved performance of data cube navigation
  • More m/z history and clipboard features
  • Custom colormaps and logarithmic color scaling
  • Combined 3-way colocalization and image overlay
  • Spatial, m/z and abundance filtering while loading data

What's new in MSiReader v0.09

  • Absolute quantification
  • Polarity switching and filtering
  • Reload and apply preferences without unloading the data cube
  • Formatting options for figures exported during batch processing
  • Optional lock for the mapping of abundance to color
  • Enhanced m/z history and clipboard features
  • Segmented linear ROIs
  • Abundance threshold filtering while loading data
  • Faster data set loading for all file types
  • Numerous workflow and interface improvements

What's new in MSiReader v0.06

  • Binned data export of an ROI or the entire data cube
  • Full support for new Matlab HG2 graphics engine
  • Resizable GUI windows and figures
  • Navigation and post processing while ROIs are active
  • Improved support for imzML files
  • New options to control batch figure formats
  • Load a 2nd data cube without restarting
  • Many other appearance and workflow improvements

What's new in MSiReader v0.05

  • Added capability to overlay optical image with heatmaps (MSiImage)
  • Capability to export heatmap data in matrix form through MSiSlicer
  • Custom heatmap can now be imported in matrix form
  • Several other minor improvements

What's new in MSiReader v0.04

  • New Colocalization tool with adjustable RGB color intensities
  • New MSiSlicer tool to extract intensity graph and 3D heatmaps
  • Custom normalization (apply ANY normalization scheme to your data)
  • New tools to select ROIs
  • 32-bit standalone version included in package (requested by some users)
  • Several other minor improvements

What's new in MSiReader v0.03

  • Export intensity data for all pixels in image or from user defined ROI
  • Export peak list and/or individual spectra for pixels in user defined ROI
  • TIC normalization added
  • Generate heatmap from custom intensity data
  • Save/load colormap scales
  • Added tool to zoom on image, measure length and calculate area
  • Many other minor improvements

What's new in MSiReader v0.02

  • Standalone MSiReader (No Matlab License Required!): In addition to the Open-Source Matlab version, a compiled standalone version of MSiReader is now provided when you download MSiReader. See updated manual for details about installation.
  • Non-rectangular ROI support for mzXML files: Option to provide a pixel location .txt file together with your mzXML files so that virtually any ROI shape can be defined
  • Bug fixed when trying to resample data from empty imzML pixels
  • Bug fixed when reading header files from some .img files (Analyze7.5)
  • Other minor improvements

Sharing, Matlab Requirements and Publication

MSiReader is a free, open source application. If you develop a new feature and want to share it with the MSi community we will be happy to consider incorporating it into a future release of MSiReader. Contributors will be duly mentioned on this website and in the software credits.

MSiReader is optimized for Matlab Release 2017a (64-bit) and it has been tested with all releases since R2012b. Also, please note that the following toolboxes are required: Bioinformatics, Statistics and Image Processing.

The standalone version of MSiReader included in the .zip file does not require Matlab. It is fully functional; however, its code source cannot be modified as can the version running with Matlab. The standalone version has been tested on computers running 64-bit Windows 7 and 10. It is not available for Mac or Linux systems. A minimum of 8GB of RAM is recommended. More is required to process large data sets.

If you use MSiReader in published research, please include citations to these articles:

Robichaud, G.; Garrard, KP; Barry, JA; Muddiman, DC. MSiReader: An Open-Source Interface to View and Analyze High Resolving Power MS Imaging Files on Matlab Platform, J. Am. Soc. Mass. Spectrom, 2013, 24(5), 718-721. DOI: 10.1007/s13361-013-0607-z

Bokhart, M.; Nazari, M.; Garrard, K.; Muddiman, D. MSiReader v1.0: Evolving Open-Source Mass Spectrometry Imaging Software for Targeted and Untargeted Analyses. J. Am. Soc. Mass Spectrom., 2017, DOI: 10.1007/s13361-017-1809-6

Contact Information and Acknowledgements

For more information, to report a problem, or to share or request a new feature, please send us an email at

MSiReader is currently released under an open source license (BSD 3).

The authors would like to gratefully acknowledge the financial support received from the National Institutes of Health (R01GM087964).

Copyright © 2008-2018 David Muddiman. Site design by Ruben Moreno. All rights reserved.