fiji: an open-source platform for biological-image analysis · fiji: an open-source platform for...
TRANSCRIPT
Nature Methods
Fiji: an open-source platform for biological-image analysis
Johannes Schindelin, Ignacio Arganda-Carreras, Erwin Frise, Verena Kaynig, Mark Longair, Tobias
Pietzsch, Stephan Preibisch, Curtis Rueden, Stephan Saalfeld, Benjamin Schmid, Jean-Yves Tinevez,
Daniel James White, Volker Hartenstein, Kevin Eliceiri, Pavel Tomancak & Albert Cardona
Supplementary Figure 1 Organization of Fiji plugin folder
Supplementary Figure 2 Scripting in Fiji
Supplementary Figure 3 ImgLib code examples
Supplementary Table 1 Overview of Fiji plugins
Note: Supplementary Videos 1–4 are available on the Nature Methods website.
Nature Methods: doi:10.1038/nmeth.2019
Supplementary Figures
Command Launcher
Supplementary Figure 1: Fiji commands The Fiji application packs several hundred commands,organized by category. Each command executes a plugin. Above, a snapshot of the Registrationcategory. The separation of hundreds of commands into categories relevant to biological researchersgreatly aids new users in the discovery of such commands. Most Fiji plugins appear as commandsunder the Plugins Menu; others are inserted into the other menus inherited from ImageJ. For best easeof use, a Command Finder command (below), launched via the keybinding l (lowercase L), providesthe means to find and launch any command with a real-time search that responds to keystrokes. Wherea plugin appears in the menu is specified in the plugins.config file packed in the plugin’s jar file. Anyplugins that are not part of Fiji but which adhere to this ImageJ convention will integrate transparentlywith the Fiji menus.
Nature Methods: doi:10.1038/nmeth.2019
Supplementary Figure 2: Scripting in Fiji. An example of a simple Jython script that achieves rela-tively simple task of swapping the channels (using ImgLib lines 15 and 16) but is able to apply it to adirectory of images using file manipulation commands inherent to the scripting language.
Nature Methods: doi:10.1038/nmeth.2019
Supplementary Figure 3: Examples of ImgLib code. (a) Screenshot of the Script Editor with ImgLibcode that computes Difference of Gaussian (DoG) for float type input images with any number of dimen-stions. (b) Screenshot of the Script Editor with ImgLib code that computes Maximally Stable ExtremalRegions (MSER) for float type input images with any number of dimenstions.
Nature Methods: doi:10.1038/nmeth.2019
PluginsAnalysis3D ObjectsCounter
Quantification of connected components in 3D
Analyze Skele-ton
Calculate statistics on skeletonized objects in bi-nary images
Colocalization Calculate Pearson and Manders coefficients andmake scatter plots for colocalization analysis
Coloc 2 Calculate Pearson, Manders and other colocal-ization coefficients and make scatter plots forcolocalization analysis
Delaunay/Voronoi Provide a triangulation or Voronoi diagram for agiven set of points
Directionality Quantify direction in images with oriented tex-tures
Exact EuclideanDistance
A linear-time exact algorithm for multi-dimensional Distance Transform
FlowJ Optical flow analysisIsoData Classi-fier
Histogram-based multi-level thresholding
Local Thickness Quantification of linear structures’ thickness intwo or three dimensions
PIV Analyser Particle Image Velocimetry, an optical flow algo-rithm
Shape IndexMap
Local surface shape classification
Shape-basedAveraging
Make averages of multiple images preservingshapes
Skeletonize 3D Skeletonize 3D objects in binary image stacksSurfaceness Study the morphology of volumetric data con-
taining surface-like structuresTemporal ColorCoder
Color-coded maximum intensity projection oftime series
TopoJ Analysis of surface topologyTubeness Enhance tube-like structures in volumetric data
Image transformation3D Morphology Morphological operations on 3D binary imagesAnisotropic Dif-fusion
Edge-preserving blurring
Bilateral Filter An edge-preserving Gaussian blurColour Decon-volution
Identification of fluorophores by color
Differentials Differential operatorsDynamicReslice
Make a kymograph along a line of interest, up-dated interactively
Extended DepthField
Stack focusing, i.e. make in-focus images fromstacks where each (x,y) coordinate is in focus inonly one or two z slices
Nature Methods: doi:10.1038/nmeth.2019
Gray Morphol-ogy
Morphological operations on grayscale images
Radial Reslice Transform to polar coordinatesTransformJ Arbitrary affine transformations
Image ArithmeticCalculator Plus Advanced arithmetic operations on two imagesImage Expres-sion Parser
Application of free-form terms (e.g. A + 2 ∗ B −gauss(A, 0.5), where A denotes an image).
Image enhancingCLAHE Contrast Limited Adaptive Histogram Equaliza-
tion method for enhancing the local contrast ofan image.
Frangi Vessel-ness
Frangi’s filter to enhance linear structures innoisy images
Kalman StackFilter
Kalman’s temporal denoising method
Kuwahara Filter Kuwahara’s denoising filterRetinex Perception-based contrast and color enhancingROF Denoiser Image denoising based on the paper by Rudin,
Osher and Fatemi
TrackingManual Track-ing
Manual tracking of multiple objects in time series
MTrack2 Tracking of multiple objects in time seriesToAST Automated tracking of sporozoids in time series
SegmentationAuto Threshold Reusable histogram-based global and local
threshold calculationColour Thresh-old
Threshold segmentation based on colors, e.g.selecting ranges of hues and ranges of satura-tion
FeatureJ Classical differential image featuresGraphCut Graph-based segmentationLasso and BlowTool
interactive tools adapting the selection to thepixel intensities
Level Sets Segmentation based on Level Sets (Active Con-tours)
Linear Kuwa-hara
Enhancement of linear structures based on theKuwahara filter
Robust Adap-tive ThresholdSelection
Local gradient-based threshold selection
SIOX Segmen-tation
Color segmentation based on example segmen-tations
Nature Methods: doi:10.1038/nmeth.2019
Simple NeuriteTracer
Semi-interactive segmentation of fiber-like struc-tures, as well as analysis of the resulting data.
Snakuscule Circular active contoursStatistical Re-gion Merging
Automatic Region Merging based on a statisticaltest of the intensity differences
TrainableSegmenta-tion/WekaSegmentation
Advanced machine learning technique to extracta segmentation model from example segmenta-tions
RegistrationbUnwarpJ Automatic bijctive elastic registration of 2D im-
agesAlign images bya common line
Rigid registration according to line selections intwo images marking the same structure
Moving LeastSquares
Landmark-based registration, interpolating thetransformation as rigidly as possible
Register VirtualStack Slices
Register unaligned slices of one stack, with min-imal memory requirements
Rigid Registra-tion
Automatic and manual rigid registration of two 3Dimages
SPIM Registra-tion
Register multiple 3D images of the same sample,recorded from different angles
StackReg Automatic 3D alignment of two image stacksTurboReg Automatic 2D alignment of two imagesVIB Protocol The Virtual Insect Protocol aims to facilitate
anatomical studies from multiple samples
StitchingMosaicJ Semi-automatic stitching of 2D image mosaicsStitching 2D/3D Automatic stitching of 3D image mosaics
AnnotationArrow Tool Draw and adjust arrowsSeries Labeler Versatile time stamperStack Manipula-tion
Reorder, recombine, interleave stacks and otherstack-specific operations
Sync Win Track current mouse coordinates in other images
Visualization3D/4D Viewer Using Java3D for hardware-accelerated 3D/4D
display of imagesDichromcay Simulating color blindnessInteractive 3DSurface Plot
Interactively display a 2D image as a height field
Multi Kymo-graph
Kymographs (intensity over time plots) fromstacks and line selections
Panoramaequirectangularview
Visualize panorama images in a pannable view
Nature Methods: doi:10.1038/nmeth.2019
Record Screen Make a movie from a window, e.g. for screen-casts
Replace Red byMagenta
A tool to fix color blind-unfriendly red/green im-ages
Video Editing Basic video editing tools for editing screencastsView 5D Display up to 5D volumetric datasets, offering
convenient data inspection, basic particle track-ing, and more
Volume Viewer Volume rendering without requiring hardware ac-celeration
Input/outputAmiraReader/Writer
Load and save 3D images in the Amira file format
AnalyzeReader/Writer
Load and save files in the Analyze file format
Animated GIFReader/Writer
Load and save image stacks as animated GIFfiles
Bio-Formats Read/write support for 100 file formats com-monly used by microscope vendors’ software
BioradReader/Writer
Load and save images in the format written byBiorad’s software
DF3Reader/Writer
Load and save files in the Povray texture format
DM3 Reader Import files produced by the Gatan Digital Micro-graph
IPLab Reader Import files in the IPLab formatExport EPS Write images as .eps files for publicationLSMReader/Toolbox
Special-purpose I/O for the file format used byZeiss
Nrrd Reader Reader for the Nearly Raw Raster Data formatPDF Reader Render a PDF document into an image stackPDF Writer Make a .pdf file from one or more imagesReconstructReader
Import Reconstruct projects as TrakEM2 projects
SVG Reader Render SVG into a raster image
ScriptingBeanshell, Clo-jure, Javascript,JRuby, Jython
Support for scripting and interactive evaluation ofcommands
Scripting Exam-ples
Fiji comes with a large number of examples thatcan be adjusted to one’s own needs
Java as a”script” lan-guage
For rapid prototyping, Fiji can treat simple Javaclasses as if they were scripts
Script Editor A versatile editor helping to write scripts
Working with Fiji
Nature Methods: doi:10.1038/nmeth.2019
Automatic classversion transla-tor
Make it possible to run plugins compiled for Java1.6 on older Java versions (e.g. on MacOSX ver-sions prior to 10.6)
Bug Submitter Provide an easy and convenient way to submit abug report
Context help Open the Fiji Wiki page corresponding to a givenmenu item
Fiji Updater Effortless and user-friendly way to stay up-to-date
IJ Robot Automate mouse clicks and keyboard pressesMultiple ImageProcessor
Batch process images in a directory output to an-other directory
Upload SampleImage
Allow users to upload large sample images foruse by the Fiji developers
InteroperabilityMiji Provide a user-friendly way to use Fiji from within
Matlab
MiscellaneousImageJ/ImageJA A custom ImageJ version that frequently con-
tains cutting edge features which are then inte-grated into ImageJ
QuickPALM Software support for Photo-Activated Light Mi-croscopy (superresolution microscopy)
RandomJ Generate artificial noise adhering to given pa-rameters
Thread killer Stop runaway processesTrakEM2 Work with large mosaics, e.g. obtained via EM
(segmentation, stitching, registration and muchmore)
Developing FijiEclipse Net-beans IntelliJsupport
Fiji has support for popular development environ-ments
Tutorial Maker A very fast way to make tutorials in Fiji and up-load them to the Fiji Wiki
Table 1: Overview of Fiji plugins The table list all plugins currently provided by the Fiji Updater systemtogether with a short description. Plugins developed specifically for Fiji are highlighted in blue (77 of111 total). The remaining plugins are inherited or selected from ImageJ.
Nature Methods: doi:10.1038/nmeth.2019