ImageJ Macros

Description

Task

Quantify the length of microtubules (MT) and the MT average density per cell.

Workflow descriptions

Simple two step workflow, allowing visual & manual correction of microtubule between the 2 steps. Batch measurement of microtubule lengths for multiple images is achieved by segmenting the MTs and then their skeletonizations. The number of pixels in the microtubule is proportional to their length, so the length can be estimated.

Script

Workflow is written as an ImageJ macro (Fiji) with following steps:

1. The enhancement of tubular structure by computing eigenvalues of the hessian matrix on a Gaussian filtered version of the image ( sigma 1 pixel), as implemented in the tubeness plugin.

2. The tubules were then thresholded , and structures containing less than 3 pixels were discarded.

3. If needed, a visual check and correction of segmented microtubule is then performed.

4. After correction, segmented MTs were then reduced to a 1-pixel thick line using the skeletonize plugin of Fiji. The length of the skeletonized microtubules was then directly proportional to their length.

5. Data were grouped by condition and converted back to micrometers units under Matlab for the statistical tests.

Pitfalls

Commented but not that general without editing some fields in the macros.

Sample Data

Sample data and workflow (see above URL) can be accessed by - login: biii - password Biii!

Misc

3D version also available here. Use of components Skeletonize and Tubeness Filter

need a thumbnail
Description

This macro can stitch a (Z,T,C) data set with virtually no limit on the number of Z slices and time frames. The input to the macro is a folder with the raw tiff images (one image per file) as typically exported by motorized microscopes. These files must all be stores in the same folder and the file naming should ideally comply to OME-TIFF. The macro is however quite flexible: Only --X, --Y and --Z fields with user defined number of digits are compulsory. --T, --C and --L fields with user defined number of digits are necessary for multiple time frames / channels data sets. A compatible data set is provided as a .zip archive. Before processing it unzip it to a given location. The stitching is performed in a reference Z slice (and in a specific reference time frame and channel). The same displacements are applied to all the Z slices, time frames and channels. Before starting the batch processing a montage with the original images of the selected Z slice / time frame / channel is displayed together with the stitched image in this stack. If you are not satisfied with the result you can select another reference. The stitching is then performed time frame by time frame and slice by slice and the stitched images are exported to a single user defined output folder. The macro can also process a data set with multiple channels, the stitching is then computed once on a reference channel and then applied to the other channels.

has topic
has function
Description

This macro builds a stitched image from a muti-position 3D + time hyperstack. The XY positions of the montage should be coded as channels in the input hyperstack. Channel ordering can be configured in the dialog box to adapt to Column/Row and Meander/Comb configurations: The images should appear in this order when browsing the hyperstack with the channel slider. Fine stitching is supported (requires sufficient overlap between the views). The XY displacements of each field of view for stitching are computed for a single reference (Z,T) slice (user configurable) and applied to all slices (Z and T).

Description

This macro can be used to un-wide a tubular structure and flatten its surface (like peeling of and flattening the skin of a banana). The macro can only process a single channel 3D stack but it is easy to process multiple channels by exporting and importing ROI manager selections. Technically the macro computes the radial average intensity projection inside a ring centred on the radial symmetry axis of the object. The final image is a radial mapping of the intensity (radial angle along X, axial length along Y).

The example image is available in the documentation link. 

has function
Description

This macro implements a filter that is meant to attenuate close to parallel intensity stripes in an image, such as often happening in light sheet microscopy. The results are usually decent even when the stripes show a large angular spread due to light sheet refraction at the sample surface. The filter can process a 3D stack but the processing is performed slice by slice.

Example image is available in the documentation link.