ALL Metrics
-
Views
-
Downloads
Get PDF
Get XML
Cite
Export
Track
Software Tool Article

ImageM: a user-friendly interface for the processing of multi-dimensional images with Matlab

[version 1; peer review: 2 approved with reservations]
PUBLISHED 30 Apr 2021
Author details Author details
OPEN PEER REVIEW
REVIEWER STATUS

This article is included in the Software and Hardware Engineering gateway.

This article is included in the NEUBIAS - the Bioimage Analysts Network gateway.

Abstract

Modern imaging devices provide a wealth of data often organized as images with many dimensions, such as 2D/3D, time and channel. Matlab is an efficient software solution for image processing, but it lacks many features facilitating the interactive interpretation of image data, such as a user-friendly image visualization, or the management of image meta-data (e.g. spatial calibration), thus limiting its application to bio-image analysis.
The ImageM application proposes an integrated user interface that facilitates the processing and the analysis of multi-dimensional images within the Matlab environment. It provides a user-friendly visualization of multi-dimensional images, a collection of image processing algorithms and methods for analysis of images, the management of spatial calibration, and facilities for the analysis of multi-variate images. ImageM can also be run on the open source alternative software to Matlab, Octave.
ImageM is freely distributed on GitHub: https://github.com/mattools/ImageM.

Keywords

image processing, matlab, multivariate image analysis, segmentation, interactive segmentation

Introduction

Modern imaging devices provide a wealth of data often organized as images with many dimensions, for instance 2D/3D, time and channel. This leads to new challenges in the exploration, visualization and processing of multi-dimensional data. In particular, multi-spectral images require the application of methods at the intersection of spectroscopy and image processing.

Matlab (The Mathworks, Natick, MA), is an efficient software solution for image and signal processing that provides native support for multi-dimensional arrays, a large number of image processing methods, and a great facility for adding custom developments. However, it lacks many features for facilitating the interactive interpretation of image data, such as a user-friendly visualization of multidimensional images, or the management of image meta-data (e.g. spatial calibration), thus limiting its application to bio-image analysis.

The ImageJ/Fiji software (Schneider et al., 2012) is an alternative that provides an intuitive graphical user interface for image exploration, and many image processing functions that take into account spatial or channel calibration. The basic functionalities can by extended by a large collection of plugins. The integration of custom developments is possible via macros or plugins, but this often requires advanced programming skills.

The ImageM software aims at providing a user-friendly interface for the interactive exploration, processing and analysis of multi-dimensional imaging data within the Matlab environment, while taking into account meta-data and facilitating the integration with custom algorithm developments.

Methods

Implementation

ImageM strongly relies on Matlab’s Object-Oriented Programming. The core feature is an “Image” class that handles arrays up to five dimensions, corresponding to three spatial dimensions, the channels, and the time. It also encapsulates image meta-data such as spatial calibration, image name, or channel names.

The user interface relies on various image viewers adapted to the type (grayscale, color, label, multivariate) and the dimensionality of the image (Figure 1a). Interactive tools allow for quick image exploration, for example histograms, line profiles and 3D visualization. The architecture was kept modular to facilitate the inclusion of new features.

ce12b2aa-2cc4-4cb4-b77f-fcc7428e30aa_figure1.gif

Figure 1. Result of a typical image processing workflow with ImageM.

Original 3D image is visualized via adapted viewer (a). Image processing operators are applied (b), using contextual dialogs (c). Segmentation results are represented by label images (d,g). Analysis of the image results in table frame (f). Menu actions are transcripted into runnable Matlab commands (e). Original image courtesy of K. Belcram (Moukhtar et al., 2019).

Operation

To have the whole functionalities, Matlab (v2020a) is required, as well as the Image Processing and the Statistics toolboxes. The Gui Layout Toolbox (Sampson, 2021) is required to benefit from flexible image viewers. ImageM runs on a typical workstation. The application is launched by typing “ImageM” from the command line.

Menus provide quick access to common image processing operators, organized in a way to make them easily discoverable by a non-expert user. When necessary, intuitive dialogs allow for setting up parameters. Preview of the results facilitates the choice of relevant settings. Region of interest may be defined interactively to perform interactive measurements.

To facilitate usage during scripting and integration with custom developments, images can be easily imported from and exported to the workspace. Applying an operator results in a log entry that can be integrated into a script for quickly generating a workflow from the succession of operations.

Segmentation and analysis of regions

ImageM integrates a large family of image processing operators (linear filtering, mathematical morphology, segmentation). Intuitive dialogs allow tuning of parameters and preview of the result, facilitating the choice of relevant settings (Figure 1c). The type of the result image is automatically inferred to provide the most adequate visualization (Figure 1d and e).

Segmentation algorithms result in binary or label images that can be used for quantitative analysis of regions. The spatial calibration of images is considered when available. Features can be visualized as geometric overlays on the image or exported to data tables (Figure 1f).

Multivariate image analysis

Multi-channel images or microscopy images contain pixels represented of several values. Multivariate image analysis provides a convenient formalism to analyze such images by taking account both the spatial and the spectral dimensions (Geladi & Grahn, 2006). ImageM can convert multi-variate images into data tables, allowing their exploration through multi-variate analysis tools such as Principal Component Analysis or k-means clustering (Figure 2). Resulting tables can be easily back-converted to images to facilitate the visual interpretation.

ce12b2aa-2cc4-4cb4-b77f-fcc7428e30aa_figure2.gif

Figure 2. Multivariate image analysis of a macrofluorescence image.

Left panel: original multivariate image (from Devaux, 2008). Middle panel: application of K-means clustering on principal components. Right panel: color representation of k-means classes.

Octave

ImageM can also run within the open-source platform, Octave, after some modification of the code (see Extended data (Legland & Devaux, 2021)).

Use case

We present here a use case describing image segmentation and region analysis of the 3D image presented in Figure 1. The Extended data (Legland & Devaux, 2021) contains the sample files, and more detailed use cases.

  • First, run the application by typing “ImageM” from Matlab command line.

  • In the menu, select “File->Open Image …” and choose the file “arabidopsis-embryo.tif”. This opens an image viewer for the 3D image.

  • Reduce the noise in the image, by selecting “Process->Gaussian Filter …”. This opens a dialog.

  • Choose value 1 for each of the “sigma” values, and click “OK”. The filtered image appears in a new viewer.

  • Perform 3D segmentation of the cells. Select menu entry “Process->Extended Min Watershed …”. Choose a basin dynamic equal to 6, the “C6” connectivity, and result type as “basins”. This results in a new 3D label image in a new viewer, where each label is displayed with a different color.

  • Some regions do not correspond to cells. They can be removed manually. Select the menu “Process->Replace Value(s) …” and fill in with “1, 2, 28, 29” (values can be identified by moving the mouse cursor and inspecting the status bar).

  • Morphometric features can be computed from 3D label images, by selecting the menu “Analyze->Analyze Regions …”. After choosing the features and clicking “OK”, the selected features appear in a new data table frame that can be saved as a text file or exported to the workspace.

  • The 3D representation of the Figure 1g can be obtained by selecting the menu entry “View -> Show 3D isosurface”, choosing a “smoothing radius” value equal to 1 and checking the options “Reverse Z-axis” and “Rotate Ox”.

Summary

The ImageM application proposes a convenient user interface for the visualization and exploration of multi-dimensional images within Matlab. It also provides basic support for regions of interests, the management of data tables. Its modular architecture should facilitate the future incorporation of new functionalities. The current work focuses on a better management of regions of interest, and on the inclusion of user plugins.

Software availability

Packaged application available for direction download from: https://www.mathworks.com/matlabcentral/fileexchange/45847-imagem

Source code available from: https://github.com/mattools/ImageM

Archived source code as at time of publication: http://doi.org/10.5281/zenodo.4674326 (Legland, 2021).

License: BSD 2-Clause “Simplified” License

Data availability

Underlying data

All data underlying the results are available as part of the article and no additional source data are required.

Extended data

Zenodo: Extended data for the manuscript “ImageM: a user-friendly interface for the processing of multi-dimensional images with Matlab”, http://doi.org/10.5281/zenodo.4705240 (Legland & Devaux, 2021).

This project contains the following extended data:

  • - User manual

  • - Octave compatibility notice

  • - Two detailed use cases

  • - Images used in use cases

Data are available under the terms of the Creative Commons Attribution 4.0 International license (CC-BY 4.0).

Comments on this article Comments (0)

Version 1
VERSION 1 PUBLISHED 30 Apr 2021
Comment
Author details Author details
Competing interests
Grant information
Copyright
Download
 
Export To
metrics
Views Downloads
F1000Research - -
PubMed Central
Data from PMC are received and updated monthly.
- -
Citations
CITE
how to cite this article
Legland D and Devaux MF. ImageM: a user-friendly interface for the processing of multi-dimensional images with Matlab [version 1; peer review: 2 approved with reservations]. F1000Research 2021, 10:333 (https://doi.org/10.12688/f1000research.51732.1)
NOTE: If applicable, it is important to ensure the information in square brackets after the title is included in all citations of this article.
track
receive updates on this article
Track an article to receive email alerts on any updates to this article.

Open Peer Review

Current Reviewer Status: ?
Key to Reviewer Statuses VIEW
ApprovedThe paper is scientifically sound in its current form and only minor, if any, improvements are suggested
Approved with reservations A number of small changes, sometimes more significant revisions are required to address specific details and improve the papers academic merit.
Not approvedFundamental flaws in the paper seriously undermine the findings and conclusions
Version 1
VERSION 1
PUBLISHED 30 Apr 2021
Views
8
Cite
Reviewer Report 09 Sep 2021
Curtis Rueden, Laboratory for Optical and Computational Instrumentation, Center for Quantitative Cell Imaging, University of Wisconsin, Madison, Wisconsin, USA 
Approved with Reservations
VIEWS 8
ImageM is a MATLAB-based application, backed by a modular collection of MATLAB libraries, for performing image processing and analysis on multidimensional scientific images with the common dimensions of X, Y, Z, channel, and time. Modeled closely after ImageJ, ImageM integrates ... Continue reading
CITE
CITE
HOW TO CITE THIS REPORT
Rueden C. Reviewer Report For: ImageM: a user-friendly interface for the processing of multi-dimensional images with Matlab [version 1; peer review: 2 approved with reservations]. F1000Research 2021, 10:333 (https://doi.org/10.5256/f1000research.54926.r92537)
NOTE: it is important to ensure the information in square brackets after the title is included in all citations of this article.
Views
8
Cite
Reviewer Report 23 Jul 2021
John Anthony Jose, Electronics and Communications Enginnering Department, De La Salle University, Manila, Philippines 
Janos Lance Tiberio, De La Salle University Manila, Manila, Philippines 
Approved with Reservations
VIEWS 8
The authors are able to clearly explain the problem and contribution of the paper. However, the method of how they validated their contribution is quite limited. Specifically, they mentioned that the problem they would like to solve is that the ... Continue reading
CITE
CITE
HOW TO CITE THIS REPORT
Jose JA and Tiberio JL. Reviewer Report For: ImageM: a user-friendly interface for the processing of multi-dimensional images with Matlab [version 1; peer review: 2 approved with reservations]. F1000Research 2021, 10:333 (https://doi.org/10.5256/f1000research.54926.r89355)
NOTE: it is important to ensure the information in square brackets after the title is included in all citations of this article.

Comments on this article Comments (0)

Version 1
VERSION 1 PUBLISHED 30 Apr 2021
Comment
Alongside their report, reviewers assign a status to the article:
Approved - the paper is scientifically sound in its current form and only minor, if any, improvements are suggested
Approved with reservations - A number of small changes, sometimes more significant revisions are required to address specific details and improve the papers academic merit.
Not approved - fundamental flaws in the paper seriously undermine the findings and conclusions
Sign In
If you've forgotten your password, please enter your email address below and we'll send you instructions on how to reset your password.

The email address should be the one you originally registered with F1000.

Email address not valid, please try again

You registered with F1000 via Google, so we cannot reset your password.

To sign in, please click here.

If you still need help with your Google account password, please click here.

You registered with F1000 via Facebook, so we cannot reset your password.

To sign in, please click here.

If you still need help with your Facebook account password, please click here.

Code not correct, please try again
Email us for further assistance.
Server error, please try again.