A subscription to JoVE is required to view this content. Sign in or start your free trial.

Method Article

EasyFiji: A Graphical Interface for User-Friendly Fluorescence Image Processing in Fiji

1.7K views

DOI:

10.3791/69441

February 20th, 2026

In This Article

Summary

EasyFiji is a graphical user interface plugin for Fiji (ImageJ) that provides a curated suite of fluorescence image visualization and processing tools frequently utilized by life scientists.

Abstract

Fiji (Fiji Is Just ImageJ) is an extensive and extensible open-source image processing package widely employed by the bioimage analysis community. However, for non-computational life scientists, manually interacting with Fiji's many capabilities requires learning and navigating a deeply layered menu system. Moreover, some commands' default behaviors are non-ideal for fluorescence image display and processing. To increase efficiency for life scientists working with fluorescence microscopy images, we have developed EasyFiji, a curated graphical user interface (GUI) plugin for Fiji. Each EasyFiji command is executed via tooltip-enhanced buttons and sliders and always exhibits channel-specific execution, as required for fluorescence images. Commands that alter pixel intensities are also single-click undoable to enable more interactive processing and can be automatically recorded and saved as text for record keeping. An image info panel displays settings crucial for image interpretation. New image rendering and bleach correction functions are also provided. The plugin is freely available on GitHub and as a Fiji Update Site. This protocol outlines the steps to use EasyFiji's interface for visualization and processing of fluorescence microscopy images.

Introduction

Fiji (Fiji Is Just ImageJ) is an extensive and extensible open-source image processing package widely employed by the bioimage analysis community1,2. Fiji's large code base of general-purpose algorithms, along with its macro language and plugin interface, can be conveniently leveraged by computational analysts to provide a solution for almost any image processing or analysis problem. However, for life science users with little computational experience, FIJI's >1,100 commands spread across a deeply layered dropdown menu system can be dauntingly complex to navigate and utilize effectively. Several approaches have been taken towards simplifying the manual use of Fiji. Fiji's search bar is an alternative to menu navigation, providing access to excellent help documentation, but only if the user knows the name of the algorithm they need. Fiji's toolbar buttons can be customized to provide rapid access to user-defined commands, but this procedure requires writing a macro code and foresight of which commands will be most useful. The ActionBar plugin provides a standalone graphical user interface (GUI) window with customizable and organizable arrays of buttons but again, coding and experience are required to populate the buttons effectively3. None of these solutions satisfy the needs of life scientists with little image processing experience.

Beyond user interface issues, many life scientists working with fluorescence microscopy images require channel-specific display and processing procedures. However, some commonly utilized Fiji commands are not channel-aware by default. For example, users may want to render pseudo-colored channels together in either an equally salient way, or to specifically highlight regions of similar intensity between channels, or to preserve the grayscale contrast of a morphological signal while also displaying fluorescence. In each of these use cases, Fiji's RGB composite rendering technique obscures the desired information at the perceptual level. When processing multi-channel images, native Fiji image filters (i.e., Process | Filters), either process only the active 2D bit plane or else all bit planes in the image window (i.e., the 'stack' as defined by class ImageStack). The first behavior fails to process across the z- or t- dimension for a given channel, while the second behavior is almost invariably improper, since each channel contains a unique staining pattern and signal-to-noise ratio, necessitating the use of channel-specific processing parameters. Native Fiji's bleach correction commands (Image | Adjust | Bleach Correction) act incorrectly when applied to multi-channel fluorescence images, because again, they correct across the entire ImageStack, where channel data is interleaved, rather than correct across the z-or t-dimension within each channel individually.

To address these issues for life scientists working with fluorescence microscopy images, we have developed EasyFiji, a curated and guided graphical user interface plugin for Fiji. EasyFiji is a curated set of thematically organized commands that enable channel-aware rendering and processing. Four tabulated panels, Display, Process, Save, and Image Info, each contain topically related collections of tool-tip-enhanced buttons and sliders for command execution. Other conveniences include an undo functionality for interactive processing, a simple, plain-text action recorder that can automatically save pixel-modifying actions along with an image, and a formatted display of acquisition settings important for image interpretation. EasyFiji also offers new image rendering and bleach correction tools. EasyFiji does not support quantitative image analysis or batch-processing functions, as these procedures should only be performed with the help of an expert bioimage analyst. Although EasyFiji is concise by design, all native Fiji commands are always available through the native Fiji menu system. We believe that EasyFiji's audience-targeted design4 will increase the use of Fiji amongst life scientists. Here we present EasyFiji's design, implementation, and application to fluorescence microscopy images. The plugin is easy to install via a Fiji update site (https://imagej.github.io/list-of-update-sites/ and https://imagej.net/plugins/EasyFiji_plugin), while open-source code can be downloaded via GitHub; the plugin and source code are freely available (https://github.com/stjude/EasyFiji). 

Access restricted. Please log in or start a trial to view this content.

Protocol

This protocol describes how to install and use EasyFiji.

1. To install EasyFiji…

  1. Download the latest version of Fiji (>1.54g) appropriate for the operating system and install it in a folder to which the user has read/write access (see the Table of Materials for a link to the Fiji download site).
  2. Launch Fiji and navigate to Help | Update… in the menu bar.
  3. In the Updater window, click Manage Update sites. Select EasyFiji from the list, and click Apply and Close. EasyFiji will be automatically installed, and Fiji will be automatically updated with future releases of EasyFiji.
  4. Restart Fiji. Select EasyFiji from the Fiji Plugins menu.
    NOTE: EasyFiji is fully compatible with many older versions of Fiji and is mainly compatible with ImageJ. Detailed compatibility and dependency information can be found on the EasyFiji GitHub wiki page (https://github.com/stjude/EasyFiji) and EasyFiji ImageJ.net wiki page (https://imagej.net/plugins/EasyFiji_plugin#quick-start). Feedback can be provided via the GitHub page or the EasyFiji thread on the Image.sc forum (https://forum.image.sc/t/announcing-easyfiji-a-user-friendly-gui-plugin-for-fiji/117617) (see Table of Materials for links to these resources). 

2. Using the EasyFiji display panel

NOTE: As shown in Figure 1A, the Display panel supports fluorescence channel pseudo-coloring using color swatch buttons, intuitive contrast adjustment controls, and new options for perceptually calibrated multi-channel image renderings. Native Fiji commands for 3D/4D image projection and re-slicing are also included. Table 1 documents the correspondence between EasyFiji commands and native Fiji commands.

  1. Set a channel's color or visibility (Display Panel, Channel Color section).
    1. Select the desired channel using the image window's channel slider.
    2. Press a color swatch button to assign a new color lookup table (LUT) .
    3. Press the black swatch button to turn off the display of a channel .
    4. Press the AllChs button to display all channels together at once.
    5. Press the EachCh button to display each channel sequentially, by scrolling the channel slider in the image window .
  2. Set channel contrast within or between images (Display Panel, Channel Contrast section).
    1. To change a channel's display range (contrast), select the channel using the channel slider at the bottom of the image's image window.
    2. Move the display gain slider to specify the image pixel intensity (value shown to the right) to be displayed as the brightest value on the screen.
      NOTE: We use the term display gain to describe this action because it causes the channel to become linearly brighter, analogous to the effect of changing the gain on a detector during image acquisition.
    3. Press the display gain reset button to display the channel's maximum possible pixel intensity (as determined by its bit-depth) as the brightest value on the screen.
    4. Move the display offset slider to specify the image pixel intensity (value shown to the right) to be displayed as the darkest value on the screen.
      NOTE: We used the term display offset to describe this action because it sets the image's black level, analogous to the effect of setting the offset on a detector during image acquisition.
    5. Press the display offset reset button to set the image pixel intensity of zero to the darkest value on the screen.
    6. Press the AutoCh button to automatically adjust the display gain and offset.
    7. Press the AutoAll button to automatically adjust the display gain and offset for all channels.
    8. Press the Propagate button to transfer the display gain and offset settings from the active image to all other open images that contain the same number of channels.
  3. Create a multi-channel display (Display Panel, Channel Views section).
    1. To render two fluorescence channels together as a color image, use the FF-prefixed buttons (fluorescence with fluorescence). To render fluorescence channel(s) and a morphological grayscale channel together as a color image, use the FG-prefixed button (fluorescence with grayscale). Renderings are created in a new image window.
      NOTE: Prior to creating any Channel View, first adjust the display gain and offset for each channel such that the signal of interest spans the display's dynamic range (section 2.2) and then apply these gains and offsets using the Apply Gain and Offset buttons in the Processing tab (section 3.2.3). Renderings will be non-optimal if the gains and offsets are not adjusted and applied.
    2. Press the FFColoc button to produce a color rendering from two fluorescence channels that highlights as yellow pixels where the intensity is similar in both channels (within 25%).
      NOTE: Pixels with dissimilar intensities between channels are rendered in grayscale. Yellow pixels are suggestive of correlation-based colocalization5 when the signal of interest on each channel spans the display's dynamic range.
      CAUTION: The FFColoc rendering is intended solely for data exploration or illustration purposes. It is not a substitute for rigorous quantification of colocalization with the help of an expert.
    3. Press the FFMerge button to produce a color rendering from two fluorescence channels, where the signal in each channel is equally perceptible.
      NOTE: At each pixel, the luminance is set according to the signal with the higher intensity, while the hue is a function of the ratio of the intensities between the channels (following the concepts described by Taylor et al.6). See also the Discussion section.
    4. Press the FGMerge button to produce a color rendering from fluorescence channel(s) and a grayscale channel, where the coloration of the fluorescence channels is retained, while the contrast of the grayscale channel is retained.
      NOTE: The grayscale channel is typically a non-fluorescent modality containing morphological information, such as DIC, phase contrast, or electron microscopy.
    5. Press the Montage button to split the channels into individual images, automatically tile them across the screen, and synchronize their visualization.
    6. Press the SyncWins button to synchronize the visualization of multiple images of the same type.
  4. Create 2D views of a 3D z- or t-stack (Display Panel, Stack Views section).
    NOTE: Each rendering is displayed in a new image window.
    1. Press the MIP button to create a maximum intensity projection.
      NOTE: The intensity at each location in the resulting 2D image corresponds to the intensity of the most intense pixel along the 3rd dimension in the 3D image. This procedure can accentuate noise, so it can be useful to smooth the stack (see Processing tab) prior to creating a MIP.
    2. Press the SIP button to create a sum intensity projection.
      NOTE: The intensity at each location in the resulting 2D image corresponds to the sum of the intensities along the 3rd dimension in the 3D image. This procedure preserves total intensity, resulting in a less noisy image than any single slice.
    3. Press the Ortho button to create an orthogonal slices viewer, which interactively renders the three orthogonal planes of a 3D stack (e.g., xy, xz, yz) that intersect at the current cursor location.
    4. Press the Kymo button to create a kymograph.
      NOTE: A kymograph is a 2D image where the vertical (y-) axis corresponds to a stack's third dimension (usually t-), and the horizontal (x-) axis corresponds to position along a line drawn by the user on the input stack. When the 3rd dimension is time, a kymograph is used to illustrate or quantify motion.
      ​This button relies on the KymographBuilder plugin7 that comes with Fiji but must be downloaded separately if using ImageJ.
  5. Set miscellaneous options (Display Panel).
    1. Press the Dup button to duplicate the active image window within Fiji. A new image window will appear.
      NOTE: Draw a rectangular region of interest (ROI) on the image using Fiji's Rectangle ROI tool, and the Dup button will crop to the ROI boundary. Specify channel, z-, and/or t- ranges to reshape the duplicated image's dimensionality.
    2. Press the ToClip button to copy the active image as currently displayed on the screen to the system clipboard. To paste the image into another application (to prepare slides or edit photos), make the other application active and select paste (Ctrl+V on Windows or Cmd+V on Mac).
    3. Press the |--um--| button to display a scale bar on the image as an overlay. Toggle the |--um--| button to remove the scale bar.

3. Using the EasyFiji Process panel

NOTE: As shown in Figure 1B, the Process panel Channel Features section provides slider-based image processing commands with tooltips that can be used to enhance image display. The Undo Last button enables interactive processing. Image dimensions can be changed using the Modify Dimensions buttons. The Action Table is used to log as plain text Processing commands that change image pixel intensity values. The log can then be automatically saved with the image using the same title (see Save panel).

  1. Alter an image's spatial features (Process Panel, Modify Channel Features section).
    NOTE: All commands apply only to the active channel, and the results are automatically shown in the original image window. A new image window is not created.
    1. Move the Smooth slider to apply a Gaussian blur, thereby reducing normally distributed pixel-to-pixel variation (~shot noise and read noise).
      1. For ~Nyquist sampled images (70-150 nm xy pixel size), start with slider values between 1.0 and 2.0.
      2. For a given pixel size, increase the slider value as the image's signal-to-noise ratio (SNR) decreases.
      3. Given an SNR, increase the slider value as the pixel size decreases.
      4. For image stacks, apply a 3D smoothing, where the z-radius is automatically set to one-third the xy radius, as appropriate for Nyquist-sampled data.
        NOTE: The slider value corresponds to a Gaussian kernel's standard deviation measured in pixels.
    2. Move the Denoise slider to apply a median filter, thereby removing extreme outliers (camera hot pixels or PMT thermionic emissions).
      NOTE: The slider value corresponds to a box kernel's radius in pixels. Values between 0.5 and 1.0 are a good starting point.
    3. Move the Sharpen slider to apply a 2D unsharp mask, thereby reducing blur or haze, such as can be caused by out-of-focus light. Sharpening also accentuates noise.
      NOTE: The slider value corresponds to a Gaussian kernel's standard deviation (in units of pixels) used to define the scale of the blur. For ~Nyquist-sampled images (70-150 nm xy pixel size), slider values between 2.0 and 4.0 are a good starting point. The weight parameter is fixed at 0.6.
  2. Alter image pixel intensities (Process Panel, Modify Channel Intensities section).
    NOTE: All commands apply only to the active channel, and the results are automatically shown in the image window. A new image window is not created.
    1. Move the Sub.Bkgd. slider to apply the 'rolling ball' algorithm, thereby removing background (i.e., spatially gradual intensity changes).
      NOTE: The slider value is the radius of the rolling ball in pixels, so larger values will subtract less total background. Value depends on image content but generally should be ≥2x larger than the size (measured in pixels) of the features to be preserved. Values between 10 and 20 are often a good starting point.
    2. Move the Gamma slider to enhance visualization of weaker signals mixed with brighter signals, such as may be needed to emphasize fine structures when intermixed with large structures.
      NOTE: After normalization, each pixel's value is raised to a power (exponent) given by the slider's value. Value depends on image content, but values between 0.6 and 0.8 are often a good starting point.
      CAUTION: Images where gamma has been applied cannot be used for intensity quantification.
    3. Press the Apply Gain and Offset: ToCh button or ToAll button to map the image display range (as specified by the display gain and offset sliders in the Display panel) onto the full range of intensities provided by the image's bit-depth.
      NOTE: This process is also known as applying lookup table (LUTs). The display Gain and Offset must be applied in this way prior to creating Channel Views in the Display panel.
    4. Use the Intensity Correction buttons to correct for artifactual intensity changes across the z- or t- dimensions of 3D images, such as could be caused by photobleaching, aberrations, or light scatter.
      NOTE: The action is applied to only the active channel. Local and global corrections can be applied sequentially to the same dataset. See the Results section for further explanation of the underlying methods.
    5. Press the Global buttons to correct for gradual signal intensity losses that occur across the entire z or t dimension, while preserving most biologically-driven intensity changes. There are two options:
      1. Press the GlobalL button to correct z-stacks where the initial slices may be dark or black, and the total intensity loss from first to last frame is mild (<50%). The algorithm models the intensity loss as a linear trend and then applies a correction factor to each slice such that the slope of the fit line becomes zero.
      2. Press the GlobalP button to correct time series where the first frames are the brightest and total intensity loss from the first to last frame is substantial (50%-95%). The algorithm models the intensity loss as a 2nd order polynomial trend and then applies a correction factor to each slice such that the fit curve is transformed into a line with a slope of zero.
    6. Press the Local button to correct localized, abrupt signal intensity changes, while preserving gradual changes.
      NOTE: Such changes may be caused by bleaching of a few planes within a larger z-stack or by excitation power fluctuations (flicker). The algorithm models biologically relevant intensity changes as a fourth-order polynomial and then applies a correction factor to ensure that the median intensity of each frame equals the value of the fitted curve.
    7. Press the Equalize button to make the median signal intensity of each frame equal, similar to Fiji 'simple ratio' bleach correction method.
      CAUTION: Equalize may be useful for visualization purposes when all other methods fail, but it will erase biologically relevant variations in median intensity and so cannot be used in concert with intensity quantification.
  3. Change an image's dimensionality (Process Panel, Modify Dimensions section).
    NOTE: These commands apply to all channels in the image window and cannot be reversed using the Undo button.
    1. Press the Rotate button to rotate the image, such as may be needed to align the anatomical axes of an embryo or tissue with the page or screen.
    2. Press the Crop button to reduce the image's xy dimensions. Look for the rectangular ROI tool that is automatically selected, and observe the prompt to draw an ROI on the image that will be used for cropping.
    3. Press the Subset button to create a new image stack from a subset of the input image's non-xy dimensions.
      NOTE: This is used to remove channels and/or to truncate slices in z or t.
  4. Record the processing commands applied to an image (Process Panel, Record Actions section).
    NOTE: The purpose of the Action Recorder is to automatically log actions as plain text and then save the image with the applied actions, which change pixel intensity values. The log is a convenience so that the user does not have to manually take notes or decipher the Fiji macro recorder entries. Commands that do not change pixel intensities are not logged.
    1. Press the Rec button to start command recording.
      NOTE: The button face reads 'ON' when the recorder is recording. Executed commands and associated parameters will appear in the Action Table. Commands that are 'undone' are removed from the table.
    2. Press the Clr button to clear the Action Table.
    3. Press the Save button to save the Action Table as a text file. If actions applied to multiple images have been recorded, the actions will be grouped according to image title when the text file is saved.
      NOTE: Alternatively, save an image using the Save panel (section 4 below). Check the Save Actions box and all actions applied to the image will be automatically saved as a text file using the image's name and file path.

4. Using the EasyFiji Save Panel

NOTE: As shown in Figure 1C, the Save panel is designed to aid non-experts in selecting the correct image file format for their intended use case. When the Save Actions checkbox is checked, all processing actions applied to an image, as listed in the Action Table, are automatically saved with the image, using the same filename and path, except with a *.txt extension. If multiple images are open and were processed in parallel, all actions performed on all images are displayed in the Action Table. However, only the actions applied to the image being saved are saved with that image. The saved text file appears in the file system but does not open in Fiji. If desired, text files can be opened in Fiji by dragging the file icon onto the Fiji toolbar.

  1. Save an image (Save Panel, Saving Methods section).
    1. Press the Raw Data button to save the image as a *.tif file, where exact pixel values, channel structure, and some metadata are preserved. Use this option when the goal is to further quantify or analyze an image.
    2. Press the Save for Presentation button to save the image as currently displayed using jpeg compression for the purposes of emailing or using in a slide presentation.
      CAUTION: This option should never be used for creating figures or for quantitative analysis.
    3. Move the Quality Level slider to set the jpeg compression level.
      NOTE: Larger values correspond to better preservation of pixel intensities and features (and larger file size), but never are all features preserved.
    4. Press the Save for Figure button to save the image as currently displayed in png format compatible with other graphics programs (e.g., Photoshop, Illustrator, Publisher, or GIMP). The image is saved as displayed on the screen, but channels and metadata are not preserved.
      CAUTION: This option should never be used for quantification.
    5. Press the Save as Movie button to save an image stack as an mov format movie that plays through the slices sequentially (z or t).
      NOTE: Playing mov files on a Windows-based operating system requires the open source VLC Media Player.

5. Using the EasyFiji Image Info panel

NOTE: As shown in Figure 1D, the Image Info panel displays plain text vendor-specific acquisition settings that are crucial for image interpretation. See Table 2 for a list of the types of confocal image formats that are currently supported.

  1. Press the Channel Info button to load acquisition settings.
  2. See the Channel Info section for channel-specific acquisition settings, including % laser power, laser wavelength, emission bandpass(es), gain, and pinhole size.
  3. See the System Configuration section for image-wide settings, including system name, objective, scan mode, dwell time, and voxel size.

Access restricted. Please log in or start a trial to view this content.

Results

Pseudo-colored renderings of multi-channel fluorescence images can be used to illustrate the spatial or intensity relationships between signals; however, native Fiji offers only an RGB composite rendering technique that inherently confounds coloration and brightness at the perceptual level. To illustrate this issue, Figure 2 uses a two-channel image of N-Myc and RNA Polymerase II (RNAPolII). In Figure 2A, each channel is displayed separately as grayscale so that...

Access restricted. Please log in or start a trial to view this content.

Discussion

Fiji is an open-source image processing and analysis software widely popular amongst image analysts. However, its complex menu interface and at times unintuitive behaviors relative to the display and processing of fluorescence images present challenges for non-computational life scientists. EasyFiji offers life scientists a curated set of thematically organized and tooltip-enhanced buttons and sliders that consistently exhibit channel-specific behaviors, as required when working with fluorescence images. All processing c...

Access restricted. Please log in or start a trial to view this content.

Disclosures

The authors declare that they have no competing financial interests or other conflicts of interest.

Acknowledgements

We thank members of St. Jude's Cell and Tissue Imaging Center and the Center for BioImage Informatics for comments on the manuscript. Biological images were graciously provided by: Figure 2: Melissa Marzahn and Tanja Mittag; Figure 3: Peng Wei and James Morgan; Figure 4A: Aaron Pitre; Figure 4B: Aaron Pitre and Woo Jung Cho; Figure 5A: Helen Chen and Heather Mefford; Figure 5B: Sauradeep Sinha and Giedre Krenciute.

Access restricted. Please log in or start a trial to view this content.

Materials

List of materials used in this article
NameCompanyCatalog NumberComments
EasyFiji GitHub SiteOpen Sourcehttps://github.com/stjude/EasyFiji
EasyFiji Image.sc forumOpen Sourcehttps://forum.image.sc/t/announcing-easyfiji-a-user-friendly-gui-plugin-for-fiji/117617
EasyFiji ImageJ.net siteOpen Sourcehttps://imagej.net/plugins/EasyFiji_plugin#quick-start
FIJI SoftwareOpen Sourcehttps://imagej.net/software/fiji/downloads
VLC Media PlayerOpen Sourcehttps://www.videolan.org/vlc/

References

  1. Schindelin, J., et al. Fiji: an open-source platform for biological-image analysis. Nat Methods. 9 (7), 676-682 (2012).
  2. Rueden, C. T., et al. ImageJ2: ImageJ for the next generation of scientific image data. BMC Bioinformatics. 18 (1), 529(2017).
  3. Mutterer, J. Custom toolbars and mini applications with Action Bar. Figshare. 10 (m9), (2017).
  4. Levet, F., et al. Developing open-source software for bioimage analysis: opportunities and challenges. F1000Res. 10, 302(2021).
  5. Aaron, J. S., Taylor, A. B., Chew, T. L. Image co-localization-co-occurrence versus correlation. J Cell Sci. 131 (3), (2018).
  6. Taylor, A. B., Ioannou, M. S., Watanabe, T., Hahn, K., Chew, T. L. Perceptually accurate display of two greyscale images as a single colour image. J Microsc. 268 (1), 73-83 (2017).
  7. Mary, H., Brouhard, G. KymographBuilder. , https://imagej.net/plugins/kymograph-builder (2016).
  8. Schanda, J. Colorimetry: understanding the CIE system. , Wiley Interscience. Hoboken. (2007).
  9. Dunn, K. W., Kamocka, M. M., McDonald, J. H. A practical guide to evaluating colocalization in biological microscopy. Am J Physiol Cell Physiol. 300 (4), C723-C742 (2011).
  10. Miura, K. Bleach correction ImageJ plugin for compensating the photobleaching of time-lapse sequences. F1000Res. 9, 1494(2020).
  11. Reid, R. C. Jr, Shapley, R. Brightness induction by local contrast and the spatial dependence of assimilation. Vision Res. 28 (1), 115-132 (1988).
  12. Stauffer, W., Sheng, H., Lim, H. N. EzColocalization: an ImageJ plugin for visualizing and measuring colocalization in cells and organisms. Sci Rep. 8 (1), 15764(2018).
  13. Taylor, A. B., Ioannou, M. S., Aaron, J., Chew, T. L. Model-free quantification and visualization of colocalization in fluorescence images. Cytometry A. 93 (5), 504-516 (2018).

Access restricted. Please log in or start a trial to view this content.

Reprints and Permissions

Tags

Fiji PluginGraphical User InterfaceBioimage AnalysisChannel AdjustmentBleach CorrectionMaximum Intensity ProjectionColocalization AnalysisImage MetadataGaussian Blur