Skip to content

hansenjn/MultifocalImaging-AnalysisToolbox

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MultifocalImaging-AnalysisToolbox

A toolbox to analyze spherical and filamentous objects in multifocal images with high speed and high precision. The included software tools are published along https://doi.org/10.1038/s41467-021-24768-4.

Included tools

  • Multifocal_Preparation: An ImageJ plugin to convert raw multifocal recordings into a hyperstack (including image alignment and background and intensity corrections).
  • MultiFocalParticleTracker-Calibrator-3: An ImageJ plugin to obtain the width of beads at different heights from multifocal images to generate a calibration table.
  • MultiFocal_AlignCurvesByLMS: A java tool to align bead profiles obtained by MultiFocalParticleTracker-Calibrator-3 across different planes by calculating the Least Mean Square (LMS) of the variance.
  • MultiFocalParticleTracker-Complex-3: An ImageJ plugin to calculate the z position of beads from multifocal images based on a calibrated relationship of bead radius and z position.
  • SpermQ-MF: An ImageJ plugin for analyzing flagella/filaments in images from multifocal microscopy.
  • SpermQ-MF_GenerateLUT: By merging width recordings from piezo-driven multifocal z-stacks through immotile sperm, obtained with SpermQ-MF, this plugin generates a Look-Up-Table between the flagellar width and the flagellar z-position at different positions along the flagellum.
  • Matlab scripts to explore the output files from the ImageJ plugins 'MultiFocalParticleTracker-Complex-3' and 'SpermQ-MF' are contained in this repository and provided with this release.

Licenses

All java-based software of the MultifocalImaging-AnalysisToolbox is published under the GNU General Public License v3.0, except few packages included in SpermQ-MF (as also stated in the SpermQ-MF repository). In detail, the following implemented packages were developed by others and thus, apply to different licenses:

  • edu.emory.mathcs.jtransforms.fft\DoubleFFT_1D.java & edu.emory.mathcs.utils\ConcurrencyUtils.java (MPL 1.1/GPL 2.0/LGPL 2.1, Mozilla Public License Version 1.1, author: Piotr Wendykier)
  • AnalyzeSkeleton & Skeletonize3D (GNU General Public License, http://www.gnu.org/licenses/gpl.txt, author: Ignacio Arganda-Carreras)

For some Matlab scripts provided in the folder 'Matlab scripts' different licenses apply as indicated here.

How to cite?

When using software from this toolbox, please cite:

Hansen, J.N., Gong, A., Wachten, D., Pascal, R., Turpin, A., Jikeli, J.F., Kaupp, U.B., Alvarez, L. Multifocal imaging for precise, label-free tracking of fast biological processes in 3D. Nat Commun 12, 4574 (2021). https://doi.org/10.1038/s41467-021-24768-4

Copyright notice and contacts

Copyright (C) 2016-2021: Jan N. Hansen, An Gong, Jan F. Jikeli, Luis Alvarez

The software was developed in the research groups:

The project was mainly funded by the DFG priority program SPP 1726 "Microswimmers".

Contacts:

  • jan.hansen(at)uni-bonn.de
  • luis.alvarez(at)caesar.de

Using the toolbox

System requirements

Hardware requirements

ImageJ/FIJI does not require any specific hardware and can also run on low-performing computers. However, a RAM is required that allows to load one image sequence that you aim to analyze into your RAM at least once, ideally twice or multiple times. ImageJ does not require any specific graphics card. The speed of the analysis depends on the processor speed.

Operating system

The ImageJ plugins and Java software were developed and tested on Windows 8.1. Matlab scripts were developed and tested on Windows 8.1 and Windows 10. ImageJ and Java are also available for Mac and Linux operating systems, where the ImageJ plugins and Java software in theory can be easily run, too.

Software requirements

Performing the analysis pipeline requires the installation of

  • Java™ by Oracle (tested on Version 8, Update 231)
  • ImageJ (tested on versions 1.51r, 1.51u, and 1.52i) or ideally, the ImageJ distribution Fiji (tested with Fiji including ImageJ version 1.51r). If you want to perform particle tracking, use Fiji instead of ImageJ, because Fiji already includes the ImageJ plugin TrackMate, which is used for particle tracking in the presented analysis pipeline. Otherwise, you need to install TrackMate with the libraries required by TrackMate manually. The analysis presented in the manuscript and user guide was performed with TrackMate version v2.8.1.

Optionally, for further data exploration, we provide Matlab scripts that require installation of

  • Matlab (tested on versions R2018b and R2020a)

Installation instructions

  • The ImageJ plugins are directly downloaded from the release pages of the individual repositories (download the newest releases of Multifocal_Preparation, MultiFocalParticleTracker-Calibrator-3, MultiFocalParticleTracker-Complex-3, SpermQ-MF), and SpermQ-MF_GenerateLUT. The plugins are installed by drag and drop into the ImageJ window (after opening ImageJ) and confirming the installation by pressing save. Next, ImageJ requires to be restarted. Typically the installation process of ImageJ plugins takes only a few seconds/minutes (the time that your computer needs to launch ImageJ and relaunch it after placing the plugins).
  • Java software (i.e. MultiFocal_AlignCurvesByLMS), after downloading, can be directly run by double clicking (when Java is installed) and does not require any installation procedure.
  • The MATLAB scripts can be directly opened and run in MATLAB.

User Guide / Manual

A user guide for the multifocal image analysis pipeline is available here.

Note: Since May 13, 2021 we provide a new version of the user guide, because a new version of MultiFocalParticleTracker-Complex-3 was released. The new version implements a more precise algorithm for inferring the z-position.

Example data

Example data for testing individual ImageJ plugins and Java tools from the workflow are provided here. Example data to test the MATLAB scripts are provided here.

Source code

The source code for the individual ImageJ plugins and java tools is available at the respective repositories:

The matlab scripts can be found here.