Introduction to ImageJ
Getting Started with the ImageJ User Application
What is ImageJ?
ImageJ 1.x
ImageJ2
Fiji
What is ImageJ?
ImageJ 1.x
ImageJ2
Fiji
What is ImageJ1.x?
Fiji is just ImageJ
What can Fiji do?
Tracking
Segmentation
Big Data
Stitching
and more...
Learn how to fish...
Learn how to fish...
Learn how to fish...
Let’s open/run Fiji...
CTRL + L: Search Bar
Edit ▶ Options ▶ Search Bar... ▶ Pressing L focuses the search bar
The Main Window
Getting Started page of the ImageJ wiki
Staying Up-To-Date
Staying Up-To-Date
Opening Data…
Drag and Drop
File ▶ Open…
File ▶ Import
▶ Bio-Formats
Image Window
Zoom factor (use +/- keys)
Image Type
Image Size in physical units (and pixels)
Dataset positions
File ▶ Open Samples ▶ Mitosis (26MB, 5D Stack)
Bit Depth & Pixel Types
Qualitative/”Just looking”
Quantitative/Measurements
Lookup Tables (LUTs)
Helpful LUTs
Grays
HiLo
Royal
Get to Know Your Data…
ImageJ User Guide: Analyze
What would cause this histogram?
Profile Plots
ImageJ User Guide: Plot Profile
2D Visualization
2D Visualization: Brightness & Contrast
Defining grey value range to be visualized
Thresholding
Isolate grey values of interest
File ▶ Open Samples ▶ Blobs (Shift + B)
Image ▶ Adjust ▶ Threshold…
Which method is best?
Image ▶ Adjust ▶ Auto Threshold, Try All
Regions of Interest (ROI)
Can you draw the same exact circle on a new clown??
Regions of Interest (ROI)
Segmentation in ImageJ...
“The process of partitioning a digital image into multiple segments”
An example workflow for segmentation:
Trainable Weka Segmentation plugin
a Fiji plugin that combines a collection of machine learning algorithms with a set of selected image features to produce pixel-based segmentations
ImageJ Plugins...
What is a plugin?
A special-purpose software component that extends ImageJ’s functionality
There are four tiers of plugins:
Colocalization in ImageJ...
ImageJ Plugin = Coloc 2
Registration in ImageJ...
Feature Extraction
Registration in ImageJ...
Feature Extraction
Register Virtual Stack Slices
Registration in ImageJ...
TrakEM2
Feature Extraction
Register Virtual Stack Slices
Registration in ImageJ...
TrakEM2
Feature Extraction
bUnwarpJ
Register Virtual Stack Slices
Tracking in ImageJ
ImageJ Plugin = TrackMate
Single particle tracking plugin
Simple/sensible user interface
segmentation / filtering / particle-linking processes visualized in 2D or 3D
extensible...
3D Visualization in ImageJ
ImageJ Plugin = SciView
plugin for 3D visualization of images and meshes
Uses scenery as rendering backend
Supports rendering to VR headsets via OpenVR
SciView
Scripting in ImageJ
Why are scripts useful?
They facilitate reproducible science…
Supported Languages:
Groovy, ImageJ Macro, Python(Jython), JavaScript, Ruby(JRuby), Lisp(Clojure), R(Renjin), Java, Matlab, BeanShell, Scala
Scripting in ImageJ...
ImageJ Macro language
ImageJ Macro Recorder
https://imagej.net/Introduction_into_Macro_Programming#The_recorder
Built-in Macro Functions list
The mission of ImageJ is...
Design | Create the next generation of ImageJ, driven by the needs of the community. |
Collaborate | Work together across organizations, fostering open development through sharing + reuse. |
Broaden | Make ImageJ useful and relevant across many disciplines of the scientific community. |
Maintain | Preserve backwards compatibility with existing ImageJ functionality. |
Unify | Provide a central online resource for the ImageJ community. |
Lead | Drive ImageJ development forward with a clear vision. |
Helpful Resources: