The ImageJ User Guide

User Manual: user-guide user guide pdf - FTP File Search (17/20)

Open the PDF directly: View PDF PDF.
Page Count: 179

DownloadThe ImageJ User Guide User-guide
Open PDF In BrowserView PDF
ImageJ
User Guide
IJ 1.45m

ImageJ User Guide
IJ 1.45m
Tiago Ferreira

•

Wayne Rasband

December 27, 2011

Foreword
The ImageJ User Guide provides a detailed overview of ImageJ (and inherently
Fiji), the standard in scientific image analysis.
It was thought as a comprehensive, fully-searchable, self-contained, annotatable
manual (see Conventions Used in this Guide). A HTML version is also available as
well as printer-friendly booklets (see Guide Formats). Its latest version can always
be obtained from http://imagej.nih.gov/ij/docs/guide. The source files are available
through a Git version control repository at http://fiji.sc/guide.git.
Given ImageJ’s heavy development this guide will always remain incomplete. All ImageJ users and developers are encouraged to contribute to the ImageJ documentation
resources (see Getting Involved).

Contents
Release Notes for ImageJ 1.45m

vii

Noteworthy

viii

Macro Listings

ix

Guide Conventions

I

x

Getting Started

1 What is ImageJ?

1

2 Installing and Maintaining ImageJ
2.1
ImageJ Distributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2
Software Packages Built on Top of ImageJ . . . . . . . . . . . . . . . . . . . .
2.3
ImageJ2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2
2
3
4

3 Getting Help
3.1
Help on Image Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2
Help on ImageJ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4
4
5

II

Working with ImageJ

4 Using Keyboard Shortcuts

8

5 Finding Commands

9

6 Undo and Redo

9

7 Image Types and Formats

10

8 Stacks, Virtual Stacks and Hyperstacks

11

9 Color Images

13

10 Selections

17

11 Settings and Preferences

19

III

Extending ImageJ

12 Macros

20

13 Scripts

21

14 Plugins

21

15 Scripting in Other Languages

22

16 Running ImageJ From the Command Line

23

ii

17 ImageJ Interoperability

IV

24

ImageJ User Interface

18 Tools
18.1 Area Selection Tools
18.2 Line Selection Tools .
18.3 Arrow Tool . . . . . .
18.4 Angle Tool . . . . . .
18.5 Point Tool . . . . . .
18.6 Multi-point Tool . . .
18.7 Wand Tool . . . . . .
18.8 Text Tool . . . . . .
18.9 Magnifying Glass . .
18.10 Scrolling Tool . . . .
18.11 Color Picker . . . . .
18.12 Toolset Switcher . . .
18.13 Macro Tools . . . . .

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
26
.
28
.
29
.
30
.
30
.
30
. . 31
. . 31
.
32
.
32
.
32
.
33
.
33

19 Contextual Menu

34

20 Results Table

35

21 ImageJ Editor

36

22 Log Window

38

V

Menu Commands

23 File .
23.1
23.2
23.3
23.4
23.5
23.6
23.7
23.8
23.9
23.10
23.11
23.12
23.13
23.14

New . . . . . . .
Open. . . . . . .
Open Next [O] .
Open Samples .
Open Recent . .
Import . . . . .
Close [w] . . . .
Close All . . . .
Save [s] . . . . .
Save As . . . . .
Revert [r] . . . .
Page Setup. . . .
Print. . . [p] . . .
Quit . . . . . . .

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.

40
.
40
. . 41
. . 41
. . 41
.
42
.
42
.
46
.
46
.
46
.
46
.
50
.
50
.
50
.
50

24 Edit .
24.1 Undo [z] . . . .
24.2 Cut [x] . . . . .
24.3 Copy [c] . . . . .
24.4 Copy to System
24.5 Paste [v] . . . .

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

iii

.
.
.
.
.

51
51
51
51
51
51

24.6
24.7
24.8
24.9
24.10
24.11
24.12
24.13

Paste Control. . .
Clear . . . . . .
Clear Outside . .
Fill [f] . . . . . .
Draw [d] . . . .
Invert [I] . . . .
Selection . . . .
Options . . . . .

25 Image .
25.1 Type . . . . . .
25.2 Adjust . . . . .
25.3 Show Info. . . [i]
25.4 Properties. . . [P]
25.5 Color . . . . . .
25.6 Stacks . . . . .
25.7 Hyperstacks . .
25.8 Crop [X] . . . .
25.9 Duplicate. . . [D]
25.10 Rename. . . . . .
25.11 Scale. . . [E] . . .
25.12 Transform . . .
25.13 Zoom . . . . . .
25.14 Overlay . . . . .
25.15 Lookup Tables .

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

. . 51
.
52
.
52
.
52
.
52
.
53
.
53
.
57

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

64
. . . . . . . . . . . .
64
. . . . . . . . . . . .
64
. . . . . . . . . . . . . 71
. . . . . . . . . . . .
72
. . . . . . . . . . . .
72
. . . . . . . . . . . .
75
. . . . . . . . . . . .
84
. . . . . . . . . . . .
85
. . . . . . . . . . . .
86
. . . . . . . . . . . .
86
. . . . . . . . . . . .
86
. . . . . . . . . . . .
87
. . . . . . . . . . . .
88
. . . . . . . . . . . .
89
. . . . . . . . . . . . . 91
93
93
93
93
93
95
96
97
98
102
105
109
. 111
113
114
116

26 Process .
26.1 Smooth [S] . . . . . . .
26.2 Sharpen . . . . . . . . .
26.3 Find Edges . . . . . . . .
26.4 Find Maxima. . . . . . .
26.5 Enhance Contrast . . .
26.6 Noise . . . . . . . . . .
26.7 Shadows . . . . . . . .
26.8 Binary . . . . . . . . .
26.9 Math . . . . . . . . . .
26.10 FFT . . . . . . . . . . .
26.11 Filters . . . . . . . . . .
26.12 Batch . . . . . . . . . .
26.13 Image Calculator. . . . .
26.14 Subtract Background. . .
26.15 Repeat Command [R] .

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

27 Analyze .
27.1 Measure. . . [m] . . . .
27.2 Analyze Particles. . . .
27.3 Summarize . . . . . .
27.4 Distribution. . . . . . .
27.5 Label . . . . . . . . .
27.6 Clear Results . . . . .
27.7 Set Measurements. . .
27.8 Set Scale. . . . . . . .

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

117
. 117
. 117
. 120
. 120
. . 121
. . 121
. . 121
. 124

.
.
.
.
.
.
.
.

iv

27.9
27.10
27.11
27.12
27.13
27.14

Calibrate. . . .
Histogram [h] .
Plot Profile [k]
Surface Plot. . .
Gels . . . . . .
Tools . . . . .

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

125
126
127
128
129
130

28 Plugins .
28.1 Macros . . . . . . .
28.2 Shortcuts . . . . . .
28.3 Utilities . . . . . .
28.4 New . . . . . . . . .
28.5 Compile and Run. . .

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

138
138
139
140
143
144

29 Window .
29.1 Show All [ ] ] . .
29.2 Put Behind [tab]
29.3 Cascade . . . . .
29.4 Tile . . . . . . .

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

145
145
145
145
145

30 Help .
30.1 ImageJ Website. . . .
30.2 ImageJ News. . . . .
30.3 Documentation. . . .
30.4 Installation. . . . . .
30.5 Mailing List. . . . . .
30.6 Dev. Resources. . . .
30.7 Plugins. . . . . . . .
30.8 Macros. . . . . . . .
30.9 Macro Functions. . .
30.10 Update ImageJ. . . .
30.11 Refresh Menus . . .
30.12 About Plugins . . .
30.13 About ImageJ. . . . .

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

146
146
146
146
146
146
146
146
146
146
147
147
147
147

Modifiers
Alt Key Modifications . . . . . .
Shift Key Modifications . . . . . .
Ctrl Key (or Cmd) Modifications
Space Bar . . . . . . . . . . . . .
Arrow Keys . . . . . . . . . . . .

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

. 150
. 150
. . 151
. . 151
. . 151

VI

.
.
.
.

Keyboard Shortcuts

31 Key
31.1
31.2
31.3
31.4
31.5

32 Tools Shortcuts
Credits

153

ImageJ Related Publications

155

List of Abbreviations and Acronyms

162
v

Index

163

Colophon

167

vi

*Summarized

Release Notes for ImageJ 1.45m

Undoable Edit . Undo [z] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

9

ImageJ can now open ZIP-compressed TIFFs . . . . . . . . . . . . . . . . . . . . . . . .

10

New macro functions: drawString("text", x, y, background), IJ.pad(), Overlay.set_
Position(), roiManager("select", indexes), Stack.getFrameInterval(), Stack._
getUnits() and Stack.setFrameInterval() . . . . . . . . . . . . . . . . . . . . . . . . 21

Improved Rounded Rectangular Selection Tool . . . . . . . . . . . . . . . . . . . . . . .

27

Improved Arrow Tool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

29

File . Import . Stack From List accepts URLs . . . . . . . . . . . . . . . . . . . . . . . . .

45

Improved Edit . Selection . Make Band. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

55

New command: Edit . Selection . Area to Line . . . . . . . . . . . . . . . . . . . . . . . .

57

Multiple undo buffers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Improved handling of DICOM images . . . . . . . . . . . . . . . . . . . . . . . . . . . .

62

Auto-threshold based on stack histograms . . . . . . . . . . . . . . . . . . . . . . . . . .

69

Improved Image . Color . Merge Channels. . .

. . . . . . . . . . . . . . . . . . . . . . . . .

73

Improved Image . Stacks . Tools . Make Substack. . . . . . . . . . . . . . . . . . . . . . . .

83

New command: Image . Stacks . Tools . Remove Slice Labels . . . . . . . . . . . . . . . . .

83

Improved zooming commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

88

Improved handling of image selections (ImageROIs) . . . . . . . . . . . . . . . . . . . .

89

New command: Process . Noise . Remove NaNs. . . . . . . . . . . . . . . . . . . . . . . . .

97

Multithreaded Process . Math . Macro. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

105

Multithreaded Process . Filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

109

Reduced memory fooprint when running Process . Filters . on non-float images . . . . .

110

Added more macro snippets to Process . Batch . Macro . . . . . . . . . . . . . . . . . . .

112

More accurate calculation of Feret’s diameter . . . . . . . . . . . . . . . . . . . . . . . .

123

Measured ROIs can be automatically added to the image overlay . . . . . . . . . . . . .

124

Improveded handling of ROIs in stacks and hyperstacks by the ROI Manager . . . . . .

133

New command: ROI Manager’s Multi Plot . . . . . . . . . . . . . . . . . . . . . . . . . .

135

ROI Manager can now use ROI names as labels . . . . . . . . . . . . . . . . . . . . . . .

136

Scale bars can now be added as overlays . . . . . . . . . . . . . . . . . . . . . . . . . . .

136

Improved Plugins . Utilities . Search. . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141

New command: Plugins . Utilities . Monitor Events. . . . . . . . . . . . . . . . . . . . . . . . 141
Redesigned Plugins . Utilities . Monitor Memory. . . . . . . . . . . . . . . . . . . . . . . . .

142

This list is not extensive. Detailed release notes for version 1.45m are available on the ImageJ News web site:
http://imagej.nih.gov/ij/notes.html.

vii

Noteworthy
I

Frontmost Window and Windows Activation . . . . . . . . . . . . . . . . . . .

8

II

Image Types: Lossy Compression and Metadata . . . . . . . . . . . . . . . . .

12

III

Opening Virtual Stacks by Drag & Drop . . . . . . . . . . . . . . . . . . . . . .

13

IV

Replacing Red with Magenta in RGB Images . . . . . . . . . . . . . . . . . . .

16

V

Toggling Calibrated Units . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

26

VI

Opening File Paths in the Log Window . . . . . . . . . . . . . . . . . . . . . .

38

VII

Organizing Commands in the Menu Bar . . . . . . . . . . . . . . . . . . . . . .

39

VIII

Opening Files: File . Open, File . Import and Drag & Drop . . . . . . . . . . . . . 41

IX

Reducing Memory Requirements When Importing Images . . . . . . . . . . . .

43

X

Warning on JPEG compression . . . . . . . . . . . . . . . . . . . . . . . . . . .

47

XI

Drawing Lines Wider Than One–Pixel . . . . . . . . . . . . . . . . . . . . . . .

52

XII

Transferring Selections Between Images . . . . . . . . . . . . . . . . . . . . . .

53

XIII

Converting Composite Selections . . . . . . . . . . . . . . . . . . . . . . . . . .

55

XIV

Applying Auto Brightness/Contrast to Entire Stacks . . . . . . . . . . . . . . .

65

XV

Display Range of DICOM Images . . . . . . . . . . . . . . . . . . . . . . . . . .

67

XVI

Brightness/Contrast of High Bit–Depth Images . . . . . . . . . . . . . . . . . .

67

XVII Embedding Color Annotations in Grayscale Images . . . . . . . . . . . . . . . .

75

XVIII Scrolling Zoomed Images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

88

XIX

Hexadecimal Color Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

92

XX

Creating Binary Masks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

99

XXI

Interpreting Binary Images . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

103

XXII Global Calibrations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

126

XXIII Selecting Multiple ROIs in the ROI Manager . . . . . . . . . . . . . . . . . . .

136

viii

Macro Listings
1

Replace Red with Magenta.ijm (Using Image . Color . Channels. . . ) . . . . . . . .

16

2

Replace Red with Magenta.ijm (Using Process . Image Calculator. . . ) . . . . . . .

16

3

Ensuring Specific Settings at Launch . . . . . . . . . . . . . . . . . . . . . . . .

19

4

Customizing the Image Popup Menu . . . . . . . . . . . . . . . . . . . . . . . .

34

5

Setting File . Open Samples . for Offline Usage . . . . . . . . . . . . . . . . . . .

42

6

Obtaining Histogram Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

127

7

Assigning Keyboard Shortcuts to ImageJ Tools . . . . . . . . . . . . . . . . . . . 151

8

Cycling Through ImageJ Tools Using Keyboard Shortcuts . . . . . . . . . . . .

ix

152

Guide Formats
This guide is available in the following formats:
Enhanced PDF Optimized for electronic viewing and highly enriched in hypertext links
(see Conventions Used in this Guide). Available at http://imagej.nih.gov/ij/docs/
user-guide.pdf.
HTML document available online at http://imagej.nih.gov/ij/docs/guide/. For offline usage a downloadable ZIP archive is also available at http://imagej.nih.gov/ij/docs/
user-guide.zip.
Printable booklets Two-sided booklets that can be printed on a duplex unit printer by setting
the automatic duplex mode to “short edge binding”. Two formats are available:
A4 (http://imagej.nih.gov/ij/docs/user-guide-A4booklet.pdf) and letter size paper
(http://imagej.nih.gov/ij/docs/user-guide-USbooklet.pdf).

Conventions Used in this Guide
Throughout the guide, internal links are displayed in gray (e.g., Part IV ImageJ User Interface).
Links to external URLs, such as the ImageJ website, http://imagej.nih.gov/ij/, are displayed in
dark blue.
ImageJ commands are typed in sans serif typeface with respective shortcut keys flanked by
square brackets (e.g.: Image . Duplicate. . . [D]). As explained in Using Keyboard Shortcuts this
notation implies shift-modifiers (i.e., [D] means pressing Shift D , [d] only the D key) and
assumes that Require control key for shortcuts in Edit . Options . Misc. . . is unchecked.
Useful tips and reminders are placed in ‘Noteworthy notes’ numbered with upper case roman
numerals (e.g., I Frontmost Window and Windows Activation). The full list of these notes is
available on page viii.
Filenames, directory names and file extensions are indicated in italic, e.g., the /Applications/ImageJ/macros/ folder.
Macro functions and code snippets are typed in monospaced font, e.g., resetMinAndMax().
Scripts and macros are numbered with arabic numerals included in parentheses (e.g., (1)
Replace Red with Magenta.ijm (Using Image . Color . Channels. . . ) on page 16) and typeset with
the same syntax markup provided by the Fiji Script Editor. The full list of macro listings is
available on page ix.
Selected highlights of version 1.45m are listed on page vii and flagged with colored marginal
notes. These should be interpreted as:
New in
IJ 1.45m

A new feature implemented in ImageJ 1.45m.

Improved
in IJ 1.45m

A routine that has been improved since previous versions. Typically, a faster
or more precise algorithm, a command with better usability, or a task that
has been extended to more image types.

Changed
in IJ 1.45m

A pre-existing command that has been renamed or moved to a different menu
location in ImageJ 1.45m.

Part I

Getting Started
This part provides basic information on ImageJ installation, troubleshooting and update
strategies. It discusses Fiji and ImageJ2 as well as third-party software related to ImageJ. Being
impossible to document all the capabilities of ImageJ without exploring technical aspects of
image processing, external resources allowing willing readers to know more about digital signal
processing are also provided.

1

What is ImageJ?

ImageJ is a public domain Java image processing and analysis program inspired by NIH Image
for the Macintosh. It runs, either as an online applet or as a downloadable application, on any
computer with a Java 1.5 or later virtual machine. Downloadable distributions are available
for Windows, Mac OS X and Linux. It can display, edit, analyze, process, save and print 8–bit,
16–bit and 32–bit images. It can read many image formats including TIFF, GIF, JPEG, BMP,
DICOM, FITS and ‘raw’. It supports ‘stacks’ (and hyperstacks), a series of images that share a
single window. It is multithreaded, so time-consuming operations such as image file reading can
be performed in parallel with other operations1 .
It can calculate area and pixel value statistics of user-defined selections. It can measure distances
and angles. It can create density histograms and line profile plots. It supports standard image
processing functions such as contrast manipulation, sharpening, smoothing, edge detection and
median filtering.
It does geometric transformations such as scaling, rotation and flips. Image can be zoomed up to
32 : 1 and down to 1 : 32. All analysis and processing functions are available at any magnification
factor. The program supports any number of windows (images) simultaneously, limited only by
available memory.
Spatial calibration is available to provide real world dimensional measurements in units such as
millimeters. Density or gray scale calibration is also available.
ImageJ was designed with an open architecture that provides extensibility via Java plugins.
Custom acquisition, analysis and processing plugins can be developed using ImageJ’s built in
editor and Java compiler. User-written plugins make it possible to solve almost any image
processing or analysis problem.
Being public domain open source software, an ImageJ user has the four essential freedoms
defined by the Richard Stallman in 1986: 1) The freedom to run the program, for any purpose;
2) The freedom to study how the program works, and change it to make it do what you wish; 3)
The freedom to redistribute copies so you can help your neighbor; 4) The freedom to improve the
program, and release your improvements to the public, so that the whole community benefits.
ImageJ is being developed on Mac OS X using its built in editor and Java compiler, plus the
BBEdit editor and the Ant build tool. The source code is freely available. The author, Wayne
Rasband (wsr@nih.gov), is a Special Volunteer at the National Institute of Mental Health,
Bethesda, Maryland, USA.
See also: History of ImageJ at imagejdev.org
1

A somehow outdated list of ImageJ’s features is available at http://imagej.nih.gov/ij/features.html

1

Installing and Maintaining ImageJ

2

Installing and Maintaining ImageJ

ImageJ can be downloaded from http://imagej.nih.gov/ij/download.html. Details on how
to install ImageJ on Linux, Mac OS 9, Mac OS X and Windows [1] are available at http:
//imagej.nih.gov/ij/docs/install/ (Help . Installation. . . command). Specially useful are the
platform-specific Troubleshooting and Known Problems sections. Fiji installation is described at
http://fiji.sc/wiki/index.php/Downloads.
The downloaded package may not contain the latest bug fixes so it is recommended to upgrade
ImageJ right after a first installation. Updating IJ consists only of running Help . Update
ImageJ. . . , which will install the latest ij.jar in the ImageJ folder (on Linux and Windows) or
inside the ImageJ.app (on Mac OS X).
Help . Update ImageJ. . . can be used to upgrade (or downgrade) the ij.jar file to release updates
or daily builds. Release updates are announced frequently and are labelled alphabetically (e.g.,
v. 1.43m). Typically, these releases contain several new features and bug fixes, described in detail
on the ImageJ News page. Daily builds, on the other hand, are labelled with numeric sub-indexes
(e.g., v. 1.43n4) and are often released without documentation. Nevertheless, if available, release
notes for daily builds can be found at http://imagej.nih.gov/ij/source/release-notes.html. When
a release cycle ends (v. 1.42 ended with 1.42q, v. 1.43 with 1.43u, etc.) an installation package is
created, downloadable from http://imagej.nih.gov/ij/download.html. Typically, this package is
bundled with a small list of add-ons (Macros, Scripts and Plugins).
See also: Luts, Macros and Tools Updater, a macro toolset that performs live-updating of

macros listed on the ImageJ web site

2.1

ImageJ Distributions

ImageJ alone is not that powerful: it’s real strength is the vast repertoire of Plugins that extend
ImageJ’s functionality beyond its basic core. The many hundreds, probably thousands, freely
available plugins from contributors around the world play a pivotal role in ImageJ’s success [64].
Running Help . Update ImageJ. . . , however, will not update any of the plugins you may have
installed1 .
ImageJ add-ons (Plugins, Scripts and Macros) are available from several sources (ImageJ’s
plugins page [Help . Plugins. . . ], ImageJ Information and Documentation Portal and Fiji’s
webpage, among others) making manual updates of a daunting task. This reason alone, makes
it extremely convenient the use of ImageJ Distributions bundled with a pre-organized collection
of add-ons.
Below is a list of the most relevant projects that address the seeming difficult task of organizing
and maintaining ImageJ beyond its basics. If you are a life scientist and have doubts about
which distribution to choose you should opt for Fiji. It is heavily maintained, offers an automatic
updater, improved scripting capabilities and ships with powerful plugins. More specialized
adaptations of ImageJ are discussed in Software Packages Built on Top of ImageJ.
Fiji
Fiji (Fiji Is Just ImageJ – Batteries included ) is a distribution of ImageJ together with Java,
Java 3D and several plugins organized into a coherent menu structure. Citing its developers,
1

Certain plugins, however, provide self-updating mechanisms (e.g., ObjectJ and the LOCI Bio-Formats library).

2

Latest revision: 2011/12/27

Installing and Maintaining ImageJ

Software Packages Built on Top of ImageJ

“Fiji compares to ImageJ as Ubuntu compares to Linux”. The main focus of Fiji is to assist
research in life sciences, targeting image registration, stitching, segmentation, feature extraction
and 3D visualization, among others. It also supports many scripting languages (BeanScript,
Clojure, Jython, Python, Ruby, see Scripting in Other Languages). Importantly, Fiji ships with
a convenient updater that knows whether your files are up-to-date, obsolete or locally modified.
Comprehensive documentation is available for most of its plugins. The Fiji project was presented
publicly for the first time at the ImageJ User and Developer Conference in November 2008.
MBF ImageJ
The MBF ImageJ bundle or ImageJ for Microscopy (formerly WCIF-ImageJ) features a collection
of plugins and macros, collated and organized by Tony Collins at the MacBiophotonics facility,
McMaster University. It is accompanied by a comprehensive manual describing how to use the
bundle with light microscopy image data. It is a great resource for microscopists but is not
maintained actively, lagging behind the development of core ImageJ.
Note that you can add plugins from MBF ImageJ to Fiji, combining the best of both programs.
Actually, you can use multiple ImageJ distributions simultaneously, assemble your own ImageJ
bundle by gathering the plugins that best serve your needs (probably, someone else at your
institution already started one?) or create symbolic links to share plugins between different
installations.
See also: Description of all ImageJ related projects at ImageDev

2.2

Software Packages Built on Top of ImageJ

µManager Micro-Manager is a software package for control of automated microscopes. It lets
you execute common microscope image acquisition strategies such as time-lapses, multichannel imaging, z-stacks, and combinations thereof. µManager works with microscopes
from all four major manufacturers, most scientific-grade cameras and many peripherals
used in microscope imaging.
TrakEM2 TrakEM2 is a program for morphological data mining, three-dimensional modeling
and image stitching, registration, editing and annotation. TrakEM2 is distributed with
Fiji and capable of:
3D modeling Objects in 3D, defined by sequences of contours, or profiles, from which a
skin, or mesh, can be constructed, and visualized in 3D.
Relational modeling The extraction of the map that describes links between objects.
For example, which neuron contacts which other neurons through how many and
which synapses.
ObjectJ ObjectJ, the successor object-image, of supports graphical vector objects that nondestructively mark images on a transparent layer. Vector objects can be placed manually or
by macro commands. and composite objects can encapsulate different color-coded marker
structures in order to bundle features that belong togetherObjectJ provides back-and-forth
navigation between results and images. The results table supports statistics, sorting, color
coding, qualifying and macro access.
MRI–CIA MRI Cell Image Analyzer, developed by the Montpellier RIO Imaging facility
(CNRS), is a rapid image analysis application development framework, adding visual
3

Latest revision: 2011/12/27

Getting Help

ImageJ2

scripting interface to ImageJ’s capabilities. It can create batch applications as well as interactive applications. The applications include the topics “DNA combing”, “quantification
of stained proteins in cells”, “comparison of intensity ratios between nuclei and cytoplasm”
and “counting nuclei stained in different channels”.
SalsaJ SalsaJ is a student-friendly software developed specifically for the EU-HOU project.
It is dedicated to image handling and analysis of astronomical images in the classroom.
SalsaJ has been translated into several languages.
Bio7 Bio7 is an integrated development environment for ecological modeling with a main focus
on individual based modeling and spatially explicit models. Bio7 features: Statistical
analysis (using R); Spatial statistics; Fast communication between R and Java; BeanShell
and Groovy support; Sensitivity analysis with an embedded flowchart editor and creation
of 3D OpenGL (Jogl) models (see also RImageJ in ImageJ Interoperability).
See also: BioImageXD, Endrov, Image SXM and VisBio

2.3

ImageJ2

ImageJDev is a federally funded, multi-institution project dedicated to the development of the
next-generation version of ImageJ: “ImageJ2”. ImageJ2 will be a complete rewrite of ImageJ,
that will include the current, stable version ImageJ (“ImageJ1”) with a compatibility layer so
that old-style plugins and macros can run the same as they currently do in ImageJ1. Below is a
summary of the ImageJDev project aims:
–

–

To create the next generation version of ImageJ and improve its core architecture based
on the needs of the community.
To ensure ImageJ remains useful and relevant to the broadest possible community, maintaining backwards compatibility with the current ImageJ as close to 100% as possible.

–

Expand functionality by interfacing ImageJ with existing open-source programs.

–

To lead ImageJ development with a clear vision, avoiding duplication of efforts

–

To provide a central online resource for ImageJ: program downloads, a plugin repository,
developer resources and more.

Right now ImageJ remains a highly experimental application but a finalized released is expected
by the end of 2011. Be sure to follow the project news and the ImageDev blog for further
developments.

3
3.1

Getting Help
Help on Image Analysis

Below is a list of online resources (in no particular order) related to image processing and
scientific image analysis, complementing the list of external resources on the IJ web site.
4

Latest revision: 2011/12/27

Getting Help

Help on ImageJ

Ethics in Scientific Image Processing
–

–

Online learning Tool for Research Integrity and Image Processing
This website, created by the Office of Research Integrity, explains what is appropriate in
image processing in science and what is not.
Digital Imaging: Ethics (at the Cellular Imaging Facily Core, SEHSC)
This website, compiled by Douglas Cromey at the University of Alabama – Birmingham,
discusses thoroughly the topic of digital imaging ethics. It is recommended for all scientists.
The website contains links to several external resources, including:
1. What’s in a picture? The temptation of image manipulation (2004) M Rossner and
K M Yamada, J Cell Biology 166(1):11–15, doi:10.1083/jcb.200406019
2. Not picture-perfect (2006), Nature 439, 891–892, doi:10.1038/439891b.

Scientific Image Processing
–

–

–

–

–

What you need to know about scientific image processing
Simple and clear, this Fiji webpage explains basic aspects of scientific image processing.
imagingbook.com
Web site of Digital Image Processing: An Algorithmic Introduction using Java by Wilhelm
Burger and Mark Burge [51]. This technical book provides a modern, self-contained, introduction to digital image processing techniques. Numerous complete Java implementations
are provided, all of which work within ImageJ.
Hypermedia Image Processing Reference (HIPR2)
Developed at the Department of Artificial Intelligence in the University of Edinburgh,
provides on-line reference and tutorial information on a wide range of image processing
operations.
IFN wiki
The Imaging Facility Network (IFN) in Biopolis Dresden provides access to advanced
microscopy systems and image processing. Its wiki hosts high quality teaching material
and useful links to external resources.
stereology.info
Stereology Information for the Biological Sciences, designed to introduce both basic and
advanced concepts in the field of stereology.

See also: ImageJ Related Publications on page 155

3.2

Help on ImageJ

Below is a list of the ImageJ help resources that complement this guide (see Guide Formats).
Specific documentation on advanced uses of ImageJ (macro programming, plugin development,
etc.) is discussed in Extending ImageJ.
1. The ImageJ online documentation pages
Can be accessed via the Help . Documentation. . . command.
2. The Fiji webpage:
http://fiji.sc/
5

Latest revision: 2011/12/27

Getting Help

Help on ImageJ

3. The ImageJ Information and Documentation Portal (ImageJ wiki):
http://imagejdocu.tudor.lu/doku.php
4. Video tutorials on the ImageJ Documentation Portal and the Fiji YouTube channel:
http://imagejdocu.tudor.lu/doku.php?id=video:start&s[]=video and http://www.youtube.
com/user/fijichannel. New ImageJ users will probably profit from Christine Labno’s video
tutorial.
5. The ImageJ for Microscopy manual
http://www.macbiophotonics.ca/imagej/
6. Several online documents, most of them listed at:
http://imagej.nih.gov/ij/links.html and http://imagej.nih.gov/ij/docs/examples/
7. Mailing lists:
(a) ImageJ — http://imagej.nih.gov/ij/list.html
General user and developer discussion about ImageJ. Can be accessed via the Help .
Mailing List. . . command. This list is also mirrored at Nabble and Gmane. You may
find it easier to search and browse the list archives on these mirrors. Specially useful
are the RSS feeds and the frames and threads view provided by Gmane.
(b) Fiji users — http://groups.google.com/group/fiji-users
For user discussion specific to Fiji (rather than core ImageJ).
(c) IJ Macro Support Group — http://listes.inra.fr/wws/info/imagejmacro
The ImageJ macro support group connects a network of ImageJ users who are
specifically interested in improving their skills in writing macros and plugins for
ImageJ. The membership base includes experienced programmers, and new users
who are interested in learning to write their very first macros.
(d) Fiji developers — http://groups.google.com/group/fiji-devel
For developer discussion specific to Fiji.
(e) ImageJX — http://groups.google.com/group/imagejx
Highly technical developer discussion about ImageJ future directions.
(f) ImageJDev — http://imagejdev.org/mailman/listinfo/imagej-devel
For communication and coordination of the ImageJDev project.
(g) Dedicated mailing lists for ImageJ related projects
Described at http://imagejdev.org/mailing-lists .
Using Mailing-lists
If you are having problems with ImageJ, you should inquiry about them in the appropriated list.
The ImageJ mailing list is an unmoderated forum subscribed by a knowledgeable worldwide
user community with ≈2000 advanced users and developers. To have your questions promptly
answered you should consider the following:
1. Read the documentation files (described earlier in this section) before posting. Because
there will always be a natural lag between the implementation of key features and their
documentation it may be wise to check briefly the ImageJ news website (Help . ImageJ
News. . . ).
2. Look up the mailing list archives (Help . Mailing List. . . ). Most of your questions may
already been answered.
6

Latest revision: 2011/12/27

Getting Help

Help on ImageJ

3. If you think you are facing a bug try to upgrade to the latest version of ImageJ (Help .
Update ImageJ. . . ). You should also check if you are running the latest version of the Java
Virtual Machine for your operating system. Detailed instructions on how to submit a bug
report are found at http://imagej.nih.gov/ij/docs/faqs.html#bug.
4. Remember that in most cases you can find answers within your own ImageJ installation
without even connecting to the internet since the heuristics for finding commands or
writing macros have been significantly improved in later versions (see Finding Commands
and Extending ImageJ).
5. As with any other mailing list, you should always follow basic netiquette, namely:
(a) Use descriptive subject lines – Re: Problem with Image>Set Scale command is much
more effective than a general Re: Problem.
(b) Stay on topic – Do not post off-topic messages, unrelated to the message thread.
(c) Be careful when sending attachments – Refrain from attaching large files. Use, e.g.,
a file hosting service instead.
(d) Edit replies – You should include only the minimum content that is necessary to
provide a logical flow from the question to the answer, i.e., quote only as much as
absolutely necessary and relevant.

7

Latest revision: 2011/12/27

Part II

Working with ImageJ
This part introduces some basic aspects of ImageJ so that you can use the software more
efficiently. It also introduces some important terms and concepts used throughout this guide.
You may skip it if you already use the program efficiently and are familiar with terms such as
Virtual Stacks, Hyperstacks, Pseudocolor Images, Color Composites or Composite Selections.

4

Using Keyboard Shortcuts

You’ll learn more and more shortcut keys as you use ImageJ, because (almost) all shortcuts
are listed throughout ImageJ menus. Similarly, in this guide each command has its shortcut
key listed on its name (flanked by square brackets). Please note that the notation for these
key-bindings is case sensitive, i.e., shift-modifiers are not explicitly mentioned (a capital A
means Shift–A) and assumes that Require control key for shortcuts in Edit . Options . Misc. . . is
unchecked (i.e., except when using ImageJ Editor, you won’t have to hold down the Control
key to use menu shortcuts). For example, the command Edit . Invert [I] can be evoked by Shift
I or Ctrl Shift I if Require control key for shortcuts is checked. The full list of ImageJ
shortcuts (see Keyboard Shortcuts) can be retrieved at any time using the Plugins . Utilities .
List Shortcuts. . . command.
There are three modifier keys in ImageJ:
Control

(Command Key on Apple keyboards) Denoted by ‘Ctrl’ or Ctrl in this document.
Although a control key is typically present on Apple keyboards, on a Macintosh
computer running ImageJ the Command key Cmd replaces the functionality of the
control key of other operating systems. For sake of simplification, ‘Ctrl’ will always
refer to both throughout this guide.

Shift

Denoted by ‘Shift’ or Shift in this document.

Alt

Denoted by ‘Alt’ or Alt in this document. This is also the ‘Option’ or ‘Meta’ key
on many keyboards.

See also: KeyboardShortcuts.txt macro, demonstrating how assign shortcuts to custom macros

I

Frontmost Window and Windows Activation

In ImageJ, all operations are performed on the active (frontmost) image (which has its title
bar highlighted). If a window is already open it will activate when its opening command is
re-run, e.g., if the B&C window is already opened, pressing its keyboard shortcut ( Shift C )
will activate it. In addition, pressing Enter on any image will bring the ImageJ window to the
foreground.

8

Undo and Redo

Plugins . Utilities . Find Commands. . . [l]

Plugins . Utilities . Search. . .

5

Finding Commands

Navigating through the extensive list of ImageJ commands, macros and plugins may be quite
cumbersome. Through its built-in Command Finder / Launcher [40], ImageJ offers an expedite alternative that allows you to retrieve commands extremely fast: Plugins . Utilities . Find
Commands. . . [l].
In addition, ImageJ features a find function that locates macros, scripts and plugins source (.java)
files on your computer: the Plugins . Utilities . Search. . . command. Because most of IJ source
files contain circumstanced comments, you can use this utility to retrieve files related not only
to a image processing routine (e.g., background or co-localization) but also to a practical context
such as radiogram, cell or histology. Indeed, ImageJ source files contain detailed annotations
useful to both developers and regular users that want to know more about ImageJ routines and
algorithms.
Search. . . and Find Commands. . . [l] are described in detail in Plugins . Utilities . .
See also: Control Panel. . . [U], Keyboard Shortcuts and SourceCodeRetriever, a macro that

searches for a menu entry and tries to retrieve the java source file of the respective
plugin

6

Undo and Redo

Improved
in IJ 1.45m

Probably the first thing you will notice is that ImageJ does not have a large undo/redo buffer.
Undo (Edit . Undo [z]) is currently limited to the most recent image editing / filtering operation.
With time you will appreciate that this is necessary to minimize memory overhead. Nevertheless,
with IJ 1.45 and later, Undo [z] is, in most cases, undoable and can be applied to multiple images
if Keep multiple undo buffers is checked in Edit . Options . Memory & Threads. . .
If you cannot recover from a mistake, you can always use File . Revert [r] to reset the image lo
its last saved state. For selections, Edit . Selection . Restore Selection [E] can be used to recover
any misdealt selection.
9

Latest revision: 2011/12/27

Image Types and Formats

In ImageJ the equivalent to ‘Redo’ is the Process . Repeat Command [R], that re-runs the previous
used command (skipping Edit . Undo [z] and File . Open. . . commands).
See also: Plugins . Utilities . Reset. . . , Multi Undo plugin

7

Image Types and Formats

Digital Images are two-dimensional grids of pixel intensities values with the width and height of
the image being defined by the number of pixels in x (rows) and y (columns) direction. Thus,
pixels (picture elements) are the smallest single components of images, holding numeric values –
pixel intensities – that range between black and white. The characteristics of this range, i.e.,
the number of unique intensity (brightness) values that can exist in the image is defined as the
bit–depth of the image and specifies the level of precision in which intensities are coded, e.g.: A
2–bit image has 22 = 4 tones: 00 (black), 01 (gray), 10 (gray), and 11 (white). A 4–bit image
has 24 = 16 tones ranging from 0000 (0) to 1111 (16), etc. In terms of bits per pixel (bpp), the
most frequent types of images that ImageJ deals with (ImageJ2 will support many more types
of image data) are :
8–bit

Images that can display 256 (28 ) gray levels (integers only).

16–bit

Images that can display 65, 536 (216 ) gray levels (integers only).

32–bit

Images that can display 4, 294, 967, 296 (232 ) gray levels (integers and fractional
values). 32–bit images pixels can have any intensity value (i.e., any real number)
including NaN (Not a Number). In computing these are called floating point
images.

RGB Color Images that can display 256 values in the Red, Green and Blue channel. These
are 24–bit (23×8 ) images. RGB color images can also be 32–bit color images
(24–bit color images with additional eight bits coding alpha blending values, i.e.,
transparency).
See also: Color Images

Native Formats
Natively (i.e. without the need of third-party plugins) ImageJ opens the following formats:
TIFF, GIF, JPEG, PNG, DICOM, BMP, PGM and FITS. Many more formats are
supported with the aid of plugins. These are discussed in Non–native Formats.
Improved
in IJ 1.45m

TIFF

1

(Tagged Image File Format) is the ‘default’ format of ImageJ (cf. File . Save [s]).
Images can be 1–bit, 8–bit, 16–bit (unsigned1 ), 32–bit (real) or RGB color. TIFF
files with multiple images of the same type and size open as Stacks or Hyperstacks.
ImageJ opens lossless compressed TIFF files (see II Image Types: Lossy Compression
and Metadata) by the LZW, PackBits and ZIP (Deflate/Inflate) [2] compression
schemes. In addition, TIFF files can be opened and saved as ZIP archives.
Tiff tags and information needed to import the file (number of images, offset to
first images, gap between images) are printed to the Log Window when ImageJ is
running in Debug Mode (Edit . Options . Misc. . . , see Settings and Preferences).

A numeric variable is signed if it can represent both positive and negative numbers, and unsigned if it can only
represent positive numbers.

10

Latest revision: 2011/12/27

Stacks, Virtual Stacks and Hyperstacks

DICOM (Digital Imaging and Communications in Medicine) is a standard popular in the
medical imaging community. Support in ImageJ is limited to uncompressed DICOM
files. DICOM files containing multiple images open as Stacks.
Use Image . Show Info. . . [i] to display the DICOM header information. A DICOM
sequence can be opened using File . Import . Image Sequence. . . or by dragging and
dropping the folder on the ‘ImageJ’ window. Imported sequences are sorted by
image number instead of filename and the tags are preserved when DICOM images
are saved in TIFF format. ImageJ supports custom DICOM dictionaries, such as
the one at http://imagej.nih.gov/ij/download/docs/DICOM_Dictionary.txt. More
information can be found here.
FITS

(Flexible Image Transport System) image is the format adopted by the astronomical
community for data interchange and archival storage. Use Image . Show Info. . . [i]
to display the FITS header. More information here.

PGM

(Portable GrayMap), PBM (Portable BitMap) and PPM (Portable PixMap) are
simple image formats that use an ASCII header. More information here.

AVI

(Audio Video Interleave) is a container format which can contain data encoded in
many different ways. ImageJ only supports uncompressed AVIs, various YUV 4:2:2
compressed formats, and PNG or JPEG-encoded individual frames. Note that most
MJPG (motion-JPEG) formats are not read correctly. Attempts to open AVIs in
other formats will fail.

See also: Non–native Formats, II Image Types: Lossy Compression and Metadata, X Warning

on JPEG compression

Non–native Formats
When opening a file, ImageJ first checks whether it can natively handle the format. If ImageJ does
not recognize the type of file it calls for the appropriate reader plugin using HandleExtraFileTypes,
a plugin bundled with ImageJ. If that fails, it tries to open the file using the LOCI Bio-Formats
library (if present), a remarkable plugin that supports around eighty of the most common file
formats used in microscopy. If nevertheless the file cannot be opened, an error message is
displayed. Because both these plugins are under active development, it is important that you
keep them updated.
In addition, the ImageJ web site lists more than fifty plugins that recognize more ‘exotic’ file
formats. The ImageJ Documentation Portal maintains a list of file formats that are supported
by ImageJ.
See also: Native Formats, File . Import . , II Image Types: Lossy Compression and Metadata,

X Warning on JPEG compression, Acquisition plugins, Input/Output plugins

8

Stacks, Virtual Stacks and Hyperstacks

Stacks
ImageJ can display multiple spatially or temporally related images in a single window. These
image sets are called stacks. The images that make up a stack are called slices. In stacks, a
11

Latest revision: 2011/12/27

Stacks, Virtual Stacks and Hyperstacks

II Image Types: Lossy Compression and Metadata
Two critical aspects to keep in mind when converting images:
Lossy compression Transcoding an image into a format that uses lossy compression will alter
the original data, introducing artifacts (see X Warning on JPEG compression). This is
the case, e.g., for JPEG formats (with the exception of some JPEG2000 images that use
lossless compression). As such, these types of data are intended for human interpretation
only and are not suitable for quantitative analyses
Metadata In ImageJ, metadata associated with the image, such as scale, gray value calibration
and user comments is only supported in tiff and zip (compressed tiff) images. In addition,
with IJ 1.43 and later, selections and overlays are also saved in the TIFF header (cf. File .
Save [s]). None of the above is saved in other formats (cf. Native Formats).

Stacks and Hyperstacks in ImageJ: File . Open Samples . Mitosis (26MB, 5D stack). Hyperstacks
dimensionality can be reduced using the Image . Hyperstacks . Reduce Dimensionality. . . , Image . Stacks .
Z Project. . . or Image . Hyperstacks . Channels Tool. . . [Z] commands. The ‘(V)’ on the window titles
denotes a virtual image (see Virtual Stacks).

pixel (which represents 2D image data in a bitmap image) becomes a voxel (volumetric pixel),
i.e., an intensity value on a regular grid in a three dimensional space.
All the slices in a stack must be the same size and bit depth. A scrollbar provides the ability to
move through the slices and, in ImageJ 1.43, the slider is preceded by a play/pause icon that can
be used to start/stop stack animation. Right-clicking on this icon runs the Animation Options. . .
[Alt /] dialog box.
Most ImageJ filters will, as an option, process all the slices in a stack. ImageJ opens multiimage TIFF files as a stack, and saves stacks as multi-image TIFFs. The File . Import . Raw. . .
command opens other multi-image, uncompressed files. A folder of images can be opened as a
stack either by dragging and dropping the folder onto the ‘ImageJ’ window or or by choosing
File . Import . Image Sequence. . . To create a new stack, simply choose File . New . Image. . . [n]
and set the Slices field to a value greater than one. The Image . Stacks . submenu contains
commands for common stack operations.
See also: Stack Manipulations on Fiji website, Image5D

12

Latest revision: 2011/12/27

Color Images

Virtual Stacks
Virtual stacks are disk resident (as opposed to RAM resident) and are the only way to load
image sequences that do not fit in RAM. There are several things to keep in mind when working
with virtual stacks:
–

–

–

Virtual stacks are read-only, so changes made to the pixel data are not saved when you
switch to a different slice. You can work around this by using macros (e.g., Process Virtual
Stack) or the Process . Batch . Virtual Stack. . . command implemented in ImageJ 1.43.
You can easily run out of memory using commands like Image . Crop [X] because any stack
generated from commands that do not generate virtual stacks will be RAM resident.
TIFF virtual stacks can usually be accessed faster than JPEG virtual stacks. A JPEG
sequence can be converted to TIFF by opening the JPEG images as a virtual stack and
using File . Save As . Image Sequence. . . to save in TIFF format

ImageJ appends a ‘(V)’ to the window title of virtual stacks and hyperstacks (see Hyperstacks).
Several built-in ImageJ commands in the File . Import . submenu have the ability to open virtual
stacks, namely: TIFF Virtual Stack. . . , Image Sequence. . . , Raw. . . , Stack From List. . . , AVI. . .
(cf. Virtual Stack Opener). In addition, TIFF stacks can be open as virtual stacks by drag and
drop (cf. III Opening Virtual Stacks by Drag & Drop).
See also: LOCI Bio-Formats and RegisterVirtualStackSlices plugins, Process Virtual Stack

and VirtualStackFromList macros

III

Opening Virtual Stacks by Drag & Drop

TIFF stacks with a .tif extension open as virtual stacks when dragged and dropped on the
bar icon.

tool-

Hyperstacks
Hyperstacks are multidimensional images, extending image stacks to four (4D) or five (5D)
dimensions: x (width), y (height), z (slices), c (channels or wavelengths) and t (time frames).
Hyperstacks are displayed in a window with three labelled scrollbars (see Stacks and Hyperstacks).
Similarly to the scrollbar in Stacks, the frame slider (t) has a play/pause icon.
See also: Image . Hyperstacks . submenu

9

Color Images1

ImageJ deals with color mainly in three ways: pseudocolor images, RGB images, RGB/ HSB
stacks, and composite images.
1

This section is partially extracted from the MBF ImageJ online manual at http://www.macbiophotonics.ca/
imagej/colour_image_processi.htm.

13

Latest revision: 2011/12/27

Color Images

Pseudocolor Images
A pseudocolor (or indexed color) image is a single channel gray image (8, 16 or 32–bit) that
has color assigned to it via a lookup table or LUT. A LUT is literally a predefined table of
gray values with matching red, green and blue values so that shadows of gray are displayed as
colorized pixels. Thus, differences in color in the pseudo-colored image reflect differences in
intensity of the object rather than differences in color of the specimen that has been imaged.
8-bit indexed color images (such as GIFs) are a special case of pseudocolor images as their
lookup table is stored in the file with the image. These images are limited to 256 colors (24–bit
RGB images allow 16.7 million of colors, see Image Types and Formats) and concomitantly
smaller file sizes. Reduction of true color values to a 256 color palette is performed by color
quantization algorithms. ImageJ uses the Heckbert’s median-cut color quantization algorithm
(see Image . Type . menu), which, in most cases, allows indexed color images to look nearly
identical to their 24-bit originals.
See also: Image . Lookup Tables . submenu

True Color Images
As described in Image Types and Formats, true color images such as RGB images reflect genuine
colors, i.e., the green in an RGB image reflects green color in the specimen. Color images are
typically produced by color CCD cameras, in which color filter arrays (Bayer masks) are placed
over the image sensor.
Color Spaces and Color Separation
Color spaces describe the gamut of colors that image-handling devices deal with. Because human
vision is trichromatic, most color models represent colors by three values. Mathematically, these
values (color components) form a three-dimensional space such as the RGB, HSB, CIE Lab or
YUV color space.

Representation of an eight pixel color image in the RGB and HSB color spaces. The RGB
color space maps the RGB color model to a cube with Red (R) values increasing along the x-axis, Green
(G) along the y-axis and Blue (B) along the z-axis. In the HSB cylindrical coordinate system, the angle
around the central vertical axis corresponds to Hue (H), the distance from the axis corresponds to
Saturation (S), and the distance along the axis corresponds to Brightness (B). In both cases the origin
holds the black color. The right panel shows the same image after brightness reduction, easily noted by
the vertical displacement along the HSB cylinder. Images produced using Kai Uwe Barthel’s 3D Color
Inspector plugin.

RGB (Red, Green, Blue) is the most commonly-used color space. However, other alternatives
such as HSB (Hue, Saturation, Brightness) provide significant advantages when processing color
information. In the HSB color space, Hue describes the attribute of pure color, and therefore
14

Latest revision: 2011/12/27

Color Images

distinguishes between colors. Saturation (sometimes called “purity” or “vibrancy”) characterizes
the shade of color, i.e., how much white is added to the pure color. Brightness (also know as
Value – HSV system) describes the overall brightness of the color. In terms of digital imaging
processing, using the HSB system over the traditional RGB is often advantageous: e.g., since
the Brightness component of an HSB image corresponds to the grayscale version of that image,
processing only the brightness channel in routines that require grayscale images is a significant
computational gain1 . You can read more about the HSB color model here.
In ImageJ, conversions between image types are performed using the Image . Type . submenu.
Segmentation on the HSB, RGB, CIE Lab and YUV color spaces can be performed by the
Image . Adjust . Color Threshold. . . command [17]. Segregation of color components (specially
useful for quantification of histochemical staining) is also possible using Gabriel Landini’s Colour
Deconvolution plugin. In addition, several other plugins related to color processing can be
obtained from the ImageJ website.

Conveying Color Information2
People see color with significant variations. Indeed, the popular phrase “One picture is worth
ten thousand words” may not apply to certain color images, specially those that do not follow
the basic principles of Color Universal Design. Citing Masataka Okabe and Kei Ito:
Colorblind people can recognize a wide ranges of colors. But certain ranges of
colors are hard to distinguish. The frequency of colorblindness is fairly high. One
in 12 Caucasian (8%), one in 20 Asian (5%), and one in 25 African (4%) males are
so-called ‘red–green’ colorblind.
There are always colorblind people among the audience and readers. There
should be more than ten colorblind in a room with 250 people (assuming 50% male
and 50% female).
[ . . . ] There is a good chance that the paper you submit may go to colorblind
reviewers. Supposing that your paper will be reviewed by three white males (which
is not unlikely considering the current population in science), the probability that at
least one of them is colorblind is whopping 22%!
One practical point defined by the Color Universal Design is the use of magenta in red–green
overlays (see also [30]). Magenta is the equal mixture of red and blue. Colorblind people that
have difficulties recognizing the red component can easily recognize the blue hue. The region of
double positive becomes white, which is easily distinguishable for colorblind. In ImageJ this is
easily accomplished using the ImageJ macro language(see IV Replacing Red with Magenta in
RGB Images).
It is also possible to simulate color blindness using the Vischeck plugin, or, in Fiji, using the
Image . Color . Simulate Color Blindness command.
1

See Wootton R, Springall DR, Polak JM. Image Analysis in Histology: Conventional and Confocal Microscopy.
Cambridge University Press, 1995, ISBN 0521434823
2
This section is partially extracted from Masataka Okabe and Kei Ito, Color Universal Design (CUD) — How
to make figures and presentations that are friendly to Colorblind people, http://jfly.iam.u-tokyo.ac.jp/color/,
accessed 2009.01.15

15

Latest revision: 2011/12/27

Color Images

Red–green images and partial color blindness. Deuteranopia (second panel), protanopia (third
panel) are the most common types of partial color blindness (red / green confusion). Tritanopia
(blue / orange confusion, fourth panel) is quite rare. Replacing Red with Magenta in RGB Images
(bottom row) is a simple way to compensate for color vision deficiencies.

IV Replacing Red with Magenta in RGB Images
For two-channel images, magenta can be obtained by selecting the same source for both the red
and the blue channels in the Image . Color . Merge Channels. . . dialog.
RGB images can be converted to ‘MGB’ using Image . Color . Channels Tool. . . [Z]. Alternatively,
the Process . Image Calculator. . . command can be used to add the red channel to the blue channel.
Both these approaches can be automated using the ImageJ macro language as exemplified by
Macros (1) and (2). Once saved in the ImageJ/plugins/ folder these macros are treated as
regular ImageJ commands (see Macros).
In Fiji, as expected, the procedure is even more simple: one just needs to run Image . Color .
Replace Red with Magenta. For even more convenience, Fiji provides an analogous command
that replaces the system clipboard’s image with a magenta-green one.

(1)
1
2
3
4
5
6
7
8
9
10
11
12

Replace Red with Magenta.ijm (Using Image . Color . Channels. . . )

/* This macro replaces Red with Magenta in RGB images using the Image > Color >
Channels ... tool . */
i f ( bitDepth ! = 24 )
// Ignore non - RGB images
exit ( " This macro requires an RGB image " ) ;
setBatchMode ( true ) ;
// Enter ` Batch ' mode
title = getTitle () ;
// Retrieve the image title
run ( " Make Composite " ) ;
// Run Image > Color > Make Composite
Stack . setActiveChannels ( " 100 " ) ;
// Select first channel , i .e , Red
run ( " Magenta " ) ;
// Run Image > Lookup Tables > Magenta
Stack . setActiveChannels ( " 111 " ) ;
// Select all the three channels
run ( " RGB Color " ) ;
// Run Image > Type > RGB Color
rename ( title + " ( MGB ) " ) ;
// Rename the image
setBatchMode ( f a l s e ) ;
// Restore ` GUI ' mode

16

Latest revision: 2011/12/27

Selections

(2)
1
2
3
4
5
6
7
8
9
10
11

Replace Red with Magenta.ijm (Using Process . Image Calculator. . . )

/* This macro replaces Red with Magenta in RGB images using Process > Image
Calculator ... command . */
i f ( bitDepth ! = 24 )
exit ( " This macro requires an RGB image " ) ;
setBatchMode ( true ) ;
title = getTitle () ;
r = title + " ( red ) " ; g = title + " ( green ) " ; b = title + " ( blue ) " ;
run ( " Split Channels " ) ;
imageCalculator ( " Add " , b , r ) ;
run ( " Merge Channels ... " , " red = & r green = & g blue = & b " ) ;
rename ( title + " ( MGB ) " ) ;
setBatchMode ( f a l s e ) ;

Color Composites
In a composite image colors are handled through channels. The advantages with this type of
image over plain RGB images are:
1. Each channel is kept separate from the others and can be turned on and off using the
‘Channels’ tool (Image . Color . Channels Tool. . . [Z]). This feature allows, e.g., to perform
measurements on a specific channel while visualizing multiple.
2. Channels can be 8, 16 or 32–bit and can be displayed with any lookup table
3. More than 3 channels can be merged or kept separate

10

Selections

Selections are typically created using the Toolbar Tools. Although ImageJ can display simultaneously several selections or regions of interest (ROIs), only one selection can be active at
a time. Selections can be measured (Analyze . Measure. . . [m]), drawn (Edit . Draw [d]), filled
(Edit . Fill [f]) or filtered (Process . Filters . submenu), in the case of area selections. In addition,
since ImageJ 1.43 it is also possible to create non-destructive image overlays (Image . Overlay .
submenu).
Selections can be initially outlined in one of the nine ImageJ default colors (Red, Green, Blue,
Magenta, Cyan, Yellow, Orange, Black and White). Once created, selections can be contoured
or painted with any other color (cf. Edit . Selection . Properties. . . [y]). Selection Color can be
changed in Edit . Options . Colors. . . or by double clicking on the Point Tool. It is highlighted in
the center of the Point/Multi-point Tool (cf. The ImageJ window).
Rectangular	


Polygon	


Composite	


Cursor outside selection	

Selection can be moved	

Selection can be resized	

Edge can be moved,
deleted or added	


Three types of area selections In ImageJ. Notice the cursor changes: to an arrow when it is within
the selection, to a cross-hair when outside the selection, to a hand when over a selection ‘handler’. Notice
also the filled handler in the polygon selection and the absence of point handlers in Composite Selections.

17

Latest revision: 2011/12/27

Selections

Most of commands that can be useful in defining or drawing selections are available in the Edit .
Selection . submenu. Listed below are the most frequent manipulations involving selections:
Adjusting

Area selections can be adjusted with the Brush Selection Tool. In addition,
vertexes of polygon selections can be adjusted by Alt/Shift-clicking (cf. Polygon
Selection Tool).

Deleting

Choose any of the selection tools and click outside the selection, or use Edit .
Selection . Select None [A]. Use Edit . Selection . Restore Selection [E] to restore a
selection back after having deleted it.

Managing

A selection can be transferred from one image window to another by activating
the destination window and using Edit . Selection . Restore Selection [E]. Selections
can be saved to disk using File . Save As . Selection. . . and restored using File .
Open. . . Use the ROI Manager (Analyze . Tools . ROI Manager. . . ) to work with
multiple selections.

Moving

Selections can be moved by clicking and dragging as long as the cursor is within the
selection and has changed to an . The status bar displays the coordinates of the
upper left corner of the selection (or the bounding rectangle for non-rectangular
selections) as it is being moved. To move the contents of a selection, rather
than the selection itself, Edit . Copy [c], Edit . Paste [v], and then click within the
selection and drag.

Nudging

Selections can be ‘nudged’ one pixel at a time in any direction using the arrow
keys. Note that the up and down keys zoom the image in and out in the absence
of selections (see Arrow Keys).

Resizing

Rectangular and oval selections (see Area Area Selection Tools) can be resized by
holding Alt while using the arrow keys.

Composite Selections
Composite selections are non-contiguous ROIs containing more than
one cluster of pixels and/or ROIs containing internal holes. Composite
ROIs are typically originated with the Brush Selection Tool but they
can be defined with any other selection tool using key modifiers.
The following modifier keys can be use to create composite selections:
Shift

Drawing outside current selection while pressing Shift creates new content. To add a
non-square rectangle or ellipse, the Shift key must be released after adding the selection.

Alt

Drawing inside current selection while pressing Alt creates a hole removing content from
ROI.

Note that some operations may not be performed properly on complex ROIs. In these cases, it
may be useful to convert a composite ROI into a polygon using the Edit . Selection . Enlarge. . .
command, see XIII Converting Composite Selections.
See also: ROI2PolylineROI macro

18

Latest revision: 2011/12/27

Settings and Preferences

11

Settings and Preferences

ImageJ preferences are automatically saved in a preferences file, the IJ_prefs.txt text file. This
file is stored in the ∼/Library/Preferences/ folder on Mac OS X, in the ∼/.imagej/ folder on
Linux and in the ImageJ folder on Windows. Several macros and plugins also write parameters
to this file. If the IJ_prefs.txt is erased, ImageJ creates a new one the next time it is opened
resetting all parameters to their default values.
Sometimes, it may be useful to override (or restore) certain settings that may have been
changed during a working session. For example, the Limit to threshold option (Analyze . Set
Measurements. . . ) will affect most measurements performed on thresholded images. Thus, it
may be wise to check the status of this parameter before each analysis, specially when working
on multiple computers.
The setOption() macro function can be used to set this and several other ImageJ options (cf.
Built-in Macro Functions — setOption()). Calling this function from the “AutoRun” macro in
the StartupMacros.txt file ensures preferences are set each time ImageJ starts.
So, e.g., to make sure that :
1. TIFF tag values are displayed by ImageJ (Debug Mode in Edit . Options . Misc. . . )
2. Bicubic interpolation is preferred over bilinear (e.g., Edit . Selection . Straighten. . . )
3. The name of the measured image name is recorded in the first column of the Results Table
(Display Label in Analyze . Set Measurements. . . )
4. Measurements are not restricted to thresholded pixels (Limit to Threshold in Analyze . Set
Measurements. . . )
5. Binary images are processed assuming white objects on a black background (Black
background in Process . Binary . Options. . . , see XXI Interpreting Binary Images)
6. Background color is black and foreground color is white (Edit . Options . Colors. . . )
are set properly at startup, the following ‘AutoRun’ macro could be appended to the StartupMacros.txt file:
(3)
1
2
3
4
5
6
7
8
9
10

Ensuring Specific Settings at Launch

macro " AutoRun " {
setOption ( " DebugMode " , true ) ;
setOption ( " Bicubic " , true ) ;
setOption ( " Display Label " , true ) ;
setOption ( " Limit to Threshold " , f a l s e ) ;
setOption ( " BlackBackground " , true ) ;
se tB ac kgroundColor (0 ,0 , 0 ) ;
se tF or egroundColor ( 255 , 255 , 255 ) ;
// run (" Colors ..." , " foreground = white background = black ") ;
}

See also: FAQ’s on ImageJ Documentation Wiki

19

Latest revision: 2011/12/27

Part III

Extending ImageJ
ImageJ capabilities can be extended by loadable code modules in the form of macros, scripts or
plugins. 300+ macros, 500+ plugins and 20+ scripts are available through the ImageJ web site.
Below is a short description of these three type of ImageJ add-ons:
Macros

The easiest way to execute a series of ImageJ commands. The ImageJ macro language
– a Java-like language – contains a set of control structures, operators and built-in
functions and can be used to call built-in commands and other macros. Macro code is
stored in text files (.txt and .ijm extensions).

Plugins

Much more powerful, flexible and faster than macros (most of ImageJ’s built-in menu
commands are actually plugins) but harder to write and debug. Plugins are written
in the Java programming language (.java source files) and compiled to .class files.

Scripts

ImageJ uses the Mozilla Rhino interpreter to run JavaScripts. Similarly to plugins,
scripts have full access to all ImageJ and Java APIs but do not need to be compiled
(scripts and macros run interpretively). On the other hand, scripts lack the simplicity
of macro language and feel less integrated in ImageJ.

12

Macros

A macro is a simple program that automates a series of ImageJ commands. The easiest way to
create a macro is to record a sequence of commands using the command recorder (Plugins .
Macros . Record. . . ).
A macro is saved as a text file (.txt or .ijm extension) and once installed executed by selecting
the macro name in the Plugins . Macros . submenu, by pressing a key or, in the case of Macro
tools, by clicking on an icon in the ImageJ toolbar. In addition, any macro file placed in the
ImageJ/plugins folder with an .ijm extension will be installed in the Plugins . menu like any
other plugin (before version 1.41 only files with an underscore in the name would be listed).
There are more than 300 example macros, on the ImageJ Web site. To try one, open it in a
browser window and drag it directly to the ImageJ Window or, copy it to the clipboard – Ctrl
A Ctrl C –, switch to ImageJ, and run File . New . System Clipboard [V] – Ctrl Shift V –,
pasting the macro into a new editor window (cf. ImageJ Editor). Run it using the editor’s
Macros . Run Macro command – Ctrl R . Most of the example macros are also available in the
macros folder, inside the ImageJ folder.

Macro Programming
The ImageJ community has created excellent tutorials on macro programming. These resources
are indispensable guides to the ImageJ macro language:
1. The ImageJ Macro Language — Programmer’s Reference Guide by Jérôme Mutterer and
Wayne Rasband. This booklet compiles most of the documentation dispersed throughout
the web related to ImageJ’s macro programming. It provides an up to date printable
manual for the ImageJ macro language:
http://imagej.nih.gov/ij/docs/macro_reference_guide.pdf
20

Plugins

2. The Built-in Macro Functions webpage (Help . Macro Functions. . . ), the indispensable
guide to the built-in functions that can be called from the ImageJ macro language. It is
thoroughly documented and constantly updated:
http://imagej.nih.gov/ij/developer/macro/functions.html
3. Tutorials on the Fiji webpage:
http://fiji.sc/wiki/index.php/Introduction_into_Macro_Programming
4. How-tos and tutorials on the ImageJ Documentation Portal
http://imagejdocu.tudor.lu/
See also: Scripts and Plugins

13

Scripts

ImageJ 1.41 added support for JavaScript scripting. ImageJ uses the Mozilla Rhino interpreter
built into Java 1.6 for Linux and Windows to run JavaScript. Mac users, and users of earlier
versions of Java, must download JavaScript.jar into the plugins folder. This JAR file is available
at rsb.info.nih.gov/ij/download/tools/JavaScript.jar. It is also included with the Mac version of
ImageJ 1.41 and later, in the ImageJ/plugins/tools folder.
Example JavaScript programs are available at rsb.info.nih.gov/ij/macros/js/. Since ImageJ 1.43
thread safe JavaScript code can be generated using the Recorder (Plugins . Macros . Record. . . ).
Scripts can be opened in the editor as any other macro (cf. Macros). Scripts with the extension
.js can be run using the Macros . Run Macro command otherwise Macros . Evaluate JavaScript (
Ctrl J ) must be used.

JavaScript Programming
Resources on ImageJ JavaScript scripting include:
1. The ImageJ web site, with growing documentation:
http://imagej.nih.gov/ij/developer/javascript.html
2. Tutorials on the Fiji webpage:
http://fiji.sc/wiki/index.php/Javascript_Scripting

14

Plugins

Plugins are a much more powerful concept than macros and scripts and most of ImageJ’s built-in
menu commands are in fact implemented as plugins. Quoting Werner Bailer [87]:
Plugins are implemented as Java classes, which means that you can use all
features of the Java language, access the full ImageJ API and use all standard and
third-party Java APIs in a plugin. This opens a wide range of possibilities of what
can be done in a plugin.
The most common uses of plugins are filters performing some analysis or processing on an image or image stack and I/O plugins for reading/writing not natively
supported formats from/to file or other devices. But as you can see when looking
at the plugins listed on the ImageJ plugins page, there are many other things you
can do with plugins, such as rendering graphics or creating extensions of the ImageJ
graphical user interface.
21

Latest revision: 2011/12/27

Improved
in IJ 1.45m

Scripting in Other Languages

Advantages and disadvantages of JavaScript in ImageJ. A thorough comparison between different
scripting languages is available on the Fiji webpage.
JavaScript Advantages

JavaScript Disadvantages

Full access to ImageJ and Java APIs
Standardized
Richer language (objects, ? operator, break,
continue, etc.)
Extensive documentation

1

Slower, especially starting up
No equivalent of macro sets
Cannot use most of ImageJ’s 360+ built in macro
functions
Requires knowledge of complex ImageJ and Java
APIs
No support for “batch mode”
Cannot create tools and toolbar menus
Not compatible with Function Finder and
CodeBar1
No debugger

CodeBar is a convenient ‘ActionBar’ that retrieves snippets and common tasks frequently used in macro
writing. ‘ActionBars’ provide one or many easy to use button bar(s) that extend ImageJ’s graphical
user interface. You can read more about the ActionBar plugin at the ImageJ Documentation Portal.

Plugins in the plugins folder are listed at the bottom of the Plugins . menu. Only .class and
.jar files in the plugins folder with at least one underscore in their name will be installed. Note
that, with IJ 1.44d an later, ImageJ no longer automatically installs, at startup, plugins in JAR
file directories that start with a lower case letter.

Developing ImageJ Plugins
More information on how to develop ImageJ plugins can be obtained on the following documents:
1. Developer Resources Page on the ImageJ website (Help . Dev. Resources. . . ):
http://imagej.nih.gov/ij/developer/index.html
2. Dedicated tutorials on Fiji’s webpage:
http://fiji.sc/wiki/index.php/Introduction_into_Developing_Plugins
3. Dedicated tutorials on the ImageJ Documentation Portal:
http://imagejdocu.tudor.lu/

15

Scripting in Other Languages

Support for other languages is possible in ImageJ using Fiji and its powerful editor. Fiji adds
extra support for BeanShell, Clojure, Python and Ruby. The following documents will introduce
you to the advanced scripting capabilities of Fiji:
1. The extensive tutorial on scripting Fiji with Jython by Albert Cardona:
http://www.ini.uzh.ch/~acardona/fiji-tutorial/
2. Dedicated tutorials on the Fiji webpage:
http://fiji.sc/wiki/index.php/Scripting_comparisons
22

Latest revision: 2011/12/27

Running ImageJ From the Command Line

Fiji Script Editor
Fiji features a more powerful script editor than ImageJ’s built-in one (see ImageJ Editor).
The Fiji editor is an invaluable help when writing scripts in any of Fiji’s supported languages,
including the ImageJ macro language. The editor features full undo support, syntax highlighting,
tabs, bookmarks and several other tools that simplify scripting workflows in ImageJ. For more
information see the Fiji website at http://fiji.sc/wiki/index.php/Script_Editor.

The Fiji Script Editor (ImageJA 1.44m).

See also: IJ_ED, a plugin by Jérôme Mutterer that binds jEdit to ImageJ

16

Running ImageJ from the Command Line

ImageJ recognizes the following command line options:
"file-name"

Opens a file. Examples:
blobs.tif
/Users/wayne/images/blobs.tif
e81*.tif

-ijpath path

Specifies the path to the directory containing the plugins directory.
Example:
-ijpath /Applications/ImageJ

-port

Specifies the port ImageJ uses to determine if another instance is
running. Examples:
-port1 (use default port address + 1)
-port2 (use default port address + 2)
-port0 (do not check for another instance)
23

Latest revision: 2011/12/27

ImageJ Interoperability

-macro path [arg]

Runs a macro or script, passing it an optional argument, which can
be retrieved using getArgument(). Examples:
-macro analyze.ijm
-macro analyze /Users/wayne/images/stack1

-batch path [arg]

Runs a macro or script in batch mode (no GUI), passing it an
optional argument. ImageJ exits when the macro finishes.

-eval "macro code"

Evaluates macro code. Examples:
-eval "print('Hello, world');"
-eval "return getVersion();"

-run command

Runs an ImageJ menu command. Example:
-run "About ImageJ..."

-debug

Runs ImageJ in debug mode.

See also: ImageJ Documentation Portal: Command line, Running ImageJ in headless mode,

Linux installation

17

ImageJ Interoperability

Several packages exist that allow ImageJ to interact with other applications/environments:
CellProfiler CellProfiler [78] features RunImageJ, a module that allows ImageJ plugins to be
run in a CellProfiler pipeline.
RImageJ — R bindings for ImageJ Bindings between ImageJ and R (GNU S) — The
free software environment for statistical computing and graphics. The documentation for
RImageJ is available at http://cran.r-project.org/web/packages/RImageJ/RImageJ.pdf
(see also Bio7 in Software Packages Built on Top of ImageJ).
Bitplane Imaris ImarisXT can load and execute ImageJ plugins from within the Imaris
application. In addition, the ImageJ plugin bpImarisAdapter (Windows only and requiring
valid licenses for Imaris and ImarisXT) allows the exchange of images between Imaris and
ImageJ.
MIJ — Matlab–ImageJ bi-directional communication A Java package for bi-directional
data exchange between Matlab and ImageJ, allowing to exchange images between the two
imaging software. MIJ also allows MATLAB to access all built-in functions of ImageJ
as well as third-party ImageJ plugins. The developers provide more information on the
MIJ and Matlab File Exchange websites. Fiji features Miji.m, which makes even more
convenient to use the libraries and functions provided by Fiji’s components from within
Matlab.

24

Latest revision: 2011/12/27

Part IV

ImageJ User Interface
Unlike most image processing programs ImageJ does not have a main work area. ImageJ’s main
window is actually quite parsimonious containing only a menu bar (at the top of the screen
on the Mac) containing all the Menu Commands, a Toolbar, a Status bar and a Progress bar.
Images, histograms, profiles, widgets, etc. are displayed in additional windows. Measurement
results are displayed in the Results Table. Most windows can be dragged around the screen and
resized.
The ImageJ window (version 1.44l).
1

2

3

4

5

6

7

8

9

10 11 12 A

B

C

D

E

Status bar

F

G

H 13

Progress bar

1

Rectangular Selection Tool and Rounded
Rectangular Selection Tool

7
8

Point Tool and Multi-point Tool
Wand Tool

2

Oval Selection Tool, Elliptical Selection Tool
and Brush Selection Tool

9
10

Text Tool
Magnifying Glass

3

Polygon Selection Tool

11

Scrolling Tool

4

Freehand Selection Tool

12

Color Picker

5

Straight Line Selection Tool, Segmented Line A–H Macro Tools loaded from
Selection Tool, Freehand Selection Tool and
StartupMacros.txt, macros/
Arrow Tool
tools/ or macros/toolsets/

6

Angle Tool

13

Toolset Switcher

Toolbar
The ImageJ toolbar contains tools for making selections, drawings, zooming and scrolling, etc.
In addition, the right-side of the toolbar contains seven slots that can host any of the 60+ tools
and 15+ tool sets available on the ImageJ website (cf. Macro Tools).
All ImageJ tools share common features:
–

–

The on the bottom right corner of some icons in the toolbar depicts a contextual menu
that can be accessed by right-clicking on the tool icon.
If an ‘Options’ dialog is available for a particular tool, it can be accessed by double clicking
on the tool icon (e.g., Wand Tool).

Status bar
When the cursor is over an image, pixel intensities and coordinates are displayed in the status
bar. After running a filter, elapsed time and processing rate (in pixels / second) is also displayed.
When clicking on the status bar the ImageJ version, the Java version, memory in use, memory
25

Tools

available and percent memory used will be displayed. As selections are created or resized,
selection properties (e.g., location, width, etc.) are displayed on the status bar.
In addition, clicking on ImageJ’s status bar, forces the Java garbage collector to run, which
may help to reclaim unused memory (cf. Edit . Options . Memory & Threads. . . ).

See also: Plugins . Utilities . ImageJ Properties. . . , Help . About ImageJ. . .

V

Toggling Calibrated Units

If a spatial scale has been defined (cf. Image . Properties. . . [P], or Analyze . Set Scale. . . ),
selection properties are displayed in the Status bar in calibrated units. Resizing or moving while
holding down Alt forces this information to be displayed in pixels.

Progress bar
The progress bar, located to the right of the status bar, shows the progress of time-consuming
operations. It will not appear if the operation requires less then approximately one second.

18

Tools

18.1

Area Selection Tools

These tools share the first four toolbar slots. As described in Toolbar, use the right click
drop-down menu to switch a different tool. Selection Color can be changed by double clicking
on the Point Tool/Multi-point Tool.
18.1.1

Rectangular Selection Tool

Location, width, height, and aspect ratio are displayed in the status bar during drawing (see V
Toggling Calibrated Units).
The following modifier keys apply to the Rectangular Tool:
Shift

Selection is constrained to a square.

Alt

Width / height are changed with arrow keys one pixel at a time.

Ctrl

Selection is resized around the center.

Ctrl Alt

Current aspect ratio is maintained while resizing.

See also: Rounded Rectangular Selection Tool, Specify. . . , V Toggling Calibrated Units, XVII

Embedding Color Annotations in Grayscale Images
26

Latest revision: 2011/12/27

Tools

18.1.2

Area Selection Tools

Rounded Rectangular Selection Tool

Improved
in IJ 1.45m

This tool creates rectangular shapes with rounded corners.
It shares the same toolbar slot and the same modifier keys
with the Rectangular Selection Tool. Double clicking on
its icon opens the depicted dialog in which is possible to
specify:
Stroke width The width of the contour.
Corner diameter The arc size at the vertices.
Stroke/Fill Color The contour (stroke) color or the filling color of the rounded rectangle. As
explained in Edit . Selection . Properties. . . [y], selections can be either filled or contoured,
but not both. The nine default selection colors (black, blue, cyan, green, magenta, orange,
red, white, yellow) can be typed as text. Any other color must be typed in hex notation
(see XIX Hexadecimal Color Values).
See also: Rectangular Selection Tool, XVII Embedding Color Annotations in Grayscale Images

18.1.3

Oval Selection Tool

Location, width, height, and aspect ratio are displayed in the status bar during drawing (see V
Toggling Calibrated Units).
The following modifier keys apply to the Oval Tool:
Shift

Selection becomes circular.

Alt

Width / height are changed with arrow keys one pixel at a time.

Ctrl

Selection is resized around the center.

Ctrl Alt

Current aspect ratio is maintained while resizing.

See also: Elliptical Selection Tool, Specify. . . , V Toggling Calibrated Units, XVII Embedding

Color Annotations in Grayscale Images

18.1.4

Elliptical Selection Tool

Ellipse properties are adjusted by dragging the four handlers on its antipodal points [4]. To
rotate or resize, drag the handlers on its major axis (transverse diameter). To adjust eccentricity,
drag the handlers on its minor axis (conjugate diameter).
See also: Oval Selection Tool, XVII Embedding Color Annotations in Grayscale Images

18.1.5

Brush Selection Tool

Adjusts the shape of any area selection using a circular ‘brush’ [5]. Clicking inside the area
selection and dragging along its boundary will expand the boundary outwards. Clicking outside
the area selection and dragging along its boundary will shrink the boundary inwards. Brush
diameter can be adjusted by double clicking on the tool icon. Location, width, height, and
aspect ratio are displayed in the status bar during drawing.
The following modifier keys apply to the Brush Tool:
27

Latest revision: 2011/12/27

Tools

Line Selection Tools

Shift

Brush is always added to the selection.

Alt

Brush is always subtracted from selection.

See also: Composite Selections, V Toggling Calibrated Units

18.1.6

Polygon Selection Tool

Creates irregularly shaped selections defined by a series of line segments. Segment length and
angle are displayed in the status bar during drawing (see V Toggling Calibrated Units). To create
a polygon selection, click repeatedly with the mouse to create line segments. When finished,
click in the small box at the starting point (or double click), and ImageJ will automatically
draw the last segment. The vertex points that define a polygon selection can be moved and
modifier keys can be used to delete or add new vertexes to the polygon.
The following modifier keys apply to the Polygon Tool:
Shift

Clicking on a point with with the Shift key pressed adds a new point.

Alt

Clicking on a point with with the Alt key pressed removes it.

See also: Segmented Line Selection Tool, Enlarge. . . , V Toggling Calibrated Units, XVII

Embedding Color Annotations in Grayscale Images

18.1.7

Freehand Selection Tool

As with the polygon selection tool, ImageJ automatically draws the last segment. Location and
intensity of starting pixel are displayed in the status bar during drawing.
See also: Freehand Line Selection Tool, Polygon Selection Tool, Enlarge. . . , V Toggling Calibrated

Units, XVII Embedding Color Annotations in Grayscale Images

18.2

Line Selection Tools

Use these tools to create line selections. Double click on any line tool to specify the line width by
opening the Image . Adjust . Line Width. . . widget. The three line selection tools share the same
toolbar slot. As described in Toolbar, use the right click drop-down menu to switch between
line tools.
18.2.1

Straight Line Selection Tool

Length and line angle are displayed in the status bar during drawing (see V Toggling Calibrated
Units).
The following modifier keys apply to the Straight Line Tool:
Shift

Forces the line to be horizontal or vertical.

Alt

Keeps the line length fixed while moving either end of the line.
Forces the two points that define the line to have integer coordinate values when
creating a line on a zoomed image.
28

Latest revision: 2011/12/27

Tools

Ctrl

Arrow Tool

While moving either end of the line rotates/resizes it about its center.

See also: Calibration Bar. . . , Set Scale. . . , V Toggling Calibrated Units, XVII Embedding Color

Annotations in Grayscale Images

18.2.2

Segmented Line Selection Tool

Works exactly as described for the Polygon Selection Tool: Create a segmented line selection by
repeatedly clicking with the mouse. Each click will define a new line segment. Double click when
finished, or click in the small box at the starting point. The points that define a segmented line
selection can be moved or deleted, and new points can be added. Length and line angle are
displayed in the status bar during drawing (see Toggling Calibrated Units).
The following modifier keys apply to the Segmented Line Tool:
Shift

Clicking on an existing point with the Shift key down adds a point.

Alt

Clicking on an existing point with the Alt key down deletes it.

See also: Polygon Selection Tool, Freehand Selection Tool, V Toggling Calibrated Units, XVII

Embedding Color Annotations in Grayscale Images

18.2.3

Freehand Line Selection Tool

Select this tool and drag with the mouse to create a freehand line selection.
See also: Freehand Selection Tool, V Toggling Calibrated Units, XVII Embedding Color

Annotations in Grayscale Images

18.3

Arrow Tool

Improved
in IJ 1.45m

This tool shares the same toolbar slot with the Line Selection
Tools. Double clicking on the tool icon opens the Options
prompt depicted on the left [6]. Because it is an annotation
tool, changing Color will change foreground color and not
selection color (see Point Tool, Color Picker. . . [K]).
Width and Size (in pixels) can be adjusted by dragging the
respective sliders or by direct input. Apart from the arrow
styles listed here, a Headless option is also available.
Filled Notched Open
Single
head
Double
head
Outline

As with other tools, add arrows to a non-destructive overlay
using Image . Overlay . Add Selection. . . [b] or Edit . Draw [d]
to permanently draw an arrow (see XVII Embedding Color
Annotations in Grayscale Images).
Straight Line Selection Tool key modifiers can be used when
creating an arrow, e.g., holding down Shift will force the arrow
to be horizontal or vertical.
29

Latest revision: 2011/12/27

Tools

18.4

Angle Tool

Angle Tool

This tool allows you to measure an angle defined by three points. Double click on the angle tool
icon to enable the measurement of reflex angles. The angle is displayed in the status bar while
the selection is being created or adjusted. Press M (Analyze . Measure. . . [m]) to record the
angle in the Results Table.

18.5

Point Tool

Use this tool to create a point selection, to count objects or to record pixel coordinates.
The following modifier keys apply to the Point Tool:
Shift

Shift-clicking will add more points. Point count is displayed on the Status bar.

Alt

Alt-clicking on a point will delete it. Alt-clicking and dragging with the rectangular
or oval selection tool will delete multiple points.
Double clicking on the point tool icon (or running Edit .
Options . Point Tool. . . ) displays its configuration dialog box.
Mark Width If greater than zero, a mark of the specified
diameter will be permanently drawn in the current foreground color (cf. Color Picker. . . [K]). Note that marks
modify the image (it may be wise to work with a copy)
and color marks are only available with RGB images
(see XVII Embedding Color Annotations in Grayscale
Images).

Auto-Measure If checked, clicking on the image records the pixel location and intensity. Note
that if Mark Width is not zero, every time a point selection is measured a mark will be
painted (cf. Measure. . . [m]). If unchecked, Edit . Draw [d] can be used to paint the mark
(Mark Width diameter) at the location of each point.
Auto-Next Slice If checked, ImageJ will automatically advance to the next stack slice. Note
that this feature will only allow one point per slice.
Add to ROI Manager If checked, points will be automatically added to the ROI Manager. . .
Improved
in IJ 1.45m

Label Points If checked, each point selection will be displayed with an accompanying numeric
label.
Selection Color Specifies the selection color, chosen from one of the nine ImageJ default
colors: Red, Green, Blue, Magenta, Cyan, Yellow, Orange, Black and White. Note that the
selection color is highlighted in the center of the Point/MultiPoint Tool (cf. Selections).
See also: Multi-point Tool, Cell Counter plugin

18.6

Multi-point Tool

The Multi-point Tool selects multiple points behaving as the Point Tool when Shift is pressed,
Label Points is checked and Auto-Measure and Auto-Next Slice are deselected. As described for
the Point Tool, Alt can also be used to remove points. Similarly, when using Edit . Draw [d]
marks are painted with the diameter of Mark Width.
Double clicking on the tool icon runs the Image . Overlay . Add Selection. . . [b] command.
30

Latest revision: 2011/12/27

Tools

Wand Tool

See also: Point Tool, Cell Counter plugin

18.7

Wand Tool

Creates a selection by tracing objects of uniform color or thresholded objects. To trace an object,
either click inside near the right edge, or outside to the left of the object. To automatically
outline and measure objects have a look, e.g., at the WandAutoMeasureTool macro.
To visualize what happens, imagine a turtle that starts moving to the right from where you
click looking for an edge. Once it finds the edge, it follows it until it returns to the starting
point. Note that the wand tool may not reliably trace some objects, especially one pixel wide
lines, unless they are thresholded (highlighted in red) using Image . Adjust . Threshold. . . [T].
Double clicking on the wand tool icon (or running Edit . Options . Wand Tool. . . ) opens the
configuration dialog box in which three modes (4–connected, 8–connected or ‘Legacy’) plus a
tolerance value can be set [7].

The Wand Tool. 4/8–connected particles can be traced within an intensity range.

Tolerance The wand takes the pixel value where you click as an initial value. It then selects
a contiguous area under the condition that all pixel values in that area must be in the
range initial value − tolerance to initial value + tolerance.
4–connected Only the four neighbors of a pixel are considered neighbors. E.g., the wand
does not follow a one-pixel wide diagonal line because the pixels of that line are not
four-connected.
8–connected Each pixel is considered to have eight neighbors. So the wand follows a diagonal
line if you click onto it. On the other hand, if you have an area of constant value dissected
by a one-pixel wide diagonal line, the 8–connected wand will ‘jump over the line’ and
include the other part of that area.
Legacy In this mode no neighbor is checked and no tolerance is used. This is the default mode
of the Wand Tool in ImageJ 1.42 and earlier.

18.8

Text Tool

Use this tool to add text to images. It creates a rectangular selection containing one or more
lines of text. Use the keyboard to add characters to the text and the backspace key to delete
31

Latest revision: 2011/12/27

Tools

Magnifying Glass

characters. Use Image . Overlay . Add Selection. . . [b] to add the text non-destructively to the
overlay. Use Edit . Draw [d] to permanently draw the text on the image. Use Edit . Options .
Fonts. . . , or double click on the text tool, to specify the typeface, size, alignment and style.
Alternatively, use Edit . Selection . Properties. . . [y] to adjust font size and text alignment.
See also: TextDemo, DrawTextWithBackground, OverlayDrawStringDemo and TextOverlay

macros

18.9

Magnifying Glass

Click on the image with this tool to zoom in. Right-click (or Alt-click) to zoom out. The current
magnification is shown in the image’s title bar. Double click on the magnifying glass icon to
revert to the image’s original magnification. There are 21 possible magnification levels: 3.1, 4.2,
6.3, 8.3, 12.5, 16.7, 25, 33.3, 50, 75, 100, 150, 200, 300, 400, 600, 800, 1200, 1600, 2400 and
3200 percent.
The following modifier keys apply to the Magnifying Glass Tool:
Shift

When zooming in will prevent the window from being enlarged.

Alt

Will zoom out (right-click behavior).

See also: Zoom . , XVIII Scrolling Zoomed Images

18.10

Scrolling Tool

Allows you to scroll through an image that is larger than its window. When using other tools
(except the text tool), you can temporarily switch to this tool by holding down the space bar
(see XVIII Scrolling Zoomed Images).

18.11

Color Picker

Sets the foreground drawing color by ‘picking up’ colors from any open image. Colors can also
be ‘picked up’ from the Color Picker (CP) window (Image . Colors . Color Picker. . . [K]) window
using any tool. In the icon, the ‘eye dropper’ is drawn in the current foreground color while the
frame around it is drawn in the current background color. Edit . Draw [d] and Edit . Fill [f] use
the foreground color. Edit . Clear, Clear Outside and Cut [x] use the background color. Double
clicking on the tool icon will display the Color Picker window.
The following modifier key applies to the Color Picker Tool:
Alt

Alt-clicking with the Color Picker Tool on an image will change the background
color.

See also: Image Types and Formats, XVII Embedding Color Annotations in Grayscale Images

32

Latest revision: 2011/12/27

Tools

Toolset Switcher

Macro Toolsets distributed with ImageJ 1.43 [42]. While the StartupMacros.txt file is located
in the ImageJ/macros/ directory, all other toolsets must be located in the ImageJ/ macros/toolsets
subfolder. Note that you can use Toolset Creator to create Menu Tools for running plugins, macros and
scripts (see Extending ImageJ).

18.12

Toolset Switcher

Use this drop-down menu to switch to alternative macro tool sets located in the ImageJ/
macros/toolsets folder, or to revert to the default ImageJ/macros/StartupMacros.txt toolset
[42]. Macro toolsets can be obtained at http://imagej.nih.gov/ij/macros/toolsets/ or created,
e.g., using Toolset Creator.
The following modifier key applies to the Macro Toolset Switcher:
Shift

18.13

Shift-clicking on the Toolset Switcher will open the selected toolset file on the
drop-down menu.

Macro Tools

The tools on the right side of the toolbar (all slots between Color Picker and Toolset Switcher)
are defined by macros in the StartupMacros.txt file (ImageJ/macros folder), which can be
opened using the Plugins . Macros . Startup Macros. . . command. These tools can be customized
by editing the StartupMacros.txt file, or replaced entirely using the Toolset Switcher menu. The
macro language documentation at http://imagej.nih.gov/ij/developer/macro/macros.html#tools
has more information about macro tools.
See also: Toolset Switcher, Luts Macros and Tools Updater macro

33

Latest revision: 2011/12/27

Contextual Menu

19

Improved
in IJ 1.45m

Contextual Menu
As mentioned earlier macros and macro tools in the
StartupMacros.txt are automatically installed in the Plugins . Macros . submenu and in the toolbar when ImageJ
starts up.
In addition, the StartupMacros.txt file also installs the
contextual (popup) menu displayed when right-clicking
on an image. Other macros and toolsets (e.g., Magic
Montage) may also replace the default menu with specialized ones. In this case, re-installing the StartupMacros
(using the Toolset Switcher) will revert the contextual
menu to its default.
The ImageJ Macro Language — Programmer’s Reference
Guide explains how this menu can be customized:
The menu that is displayed when a user right-clicks (or ctrl-clicks) on an image
window can be customized through installation of the "Popup Menu" macro. Any
menu has a name and a list of menu items. The newMenu(name, items) macro
function allows the creation of a new menu. This menu passes the chosen item as a
simple string to the "Popup Menu" macro. From this point you can decide what to
do, according to what item was chosen.

(4)
1

2

Customizing the Image Popup Menu

/* The " Popup Menu " macro defines the menu that is displayed when right
clicking ( or ctrl - clicking ) on an image . It is part of the startup macros (
StartupMacros . txt ) and several other macro toolsets
*/

3
4

var pmCmds = newMenu ( " Popup Menu " , newArray ( " Help ... " , " Rename ... " , " Duplicate
... " , " Original Scale " , " Paste Control ... " , " -" , " Record ... " , " Capture
Screen " , " Monitor Memory ... " , " Startup Macros ... " , " Search ... " , " -" , " Find
Maxima ... " ) ) ;

5
6
7
8
9
10
11
12
13
14

macro " Popup Menu " {
cmd = getArgument () ;
i f ( cmd = = " Help ... " )
showMessage ( " About Popup Menu " ,
" To customize this menu , edit the line that starts with \ n " +
" \" var pmCmds \" in ImageJ / macros / StartupMacros . txt . " ) ;
else
run ( cmd ) ;
}

So, e.g., to add the ability to run the Process . Subtract Background. . . command from the
contextual menu one can simply add that command to the list of items defining the PopUp Menu.
Note that “-” defines menu separators:
3

var pmCmds = newMenu ( " Popup Menu " , newArray ( " Help ... " , " Rename ... " , " Duplicate
... " , " Original Scale " , " Paste Control ... " , " -" , " Record ... " , " Capture
Screen " , " Monitor Memory ... " , " Startup Macros ... " , " Search ... " , " -" , " Find
Maxima ... " , " -" , " Subtract Background ... " ) ) ;

34

Latest revision: 2011/12/27

Results Table

ImageJ Results table (version 1.44k). Columns width can be adjusted by clicking on and dragging
the vertical lines that separate the column headings. Selected lines can be deleted by pressing the
backspace key. The arrow keys can be used to vertically scroll the window.

20

Results Table

Most of ImageJ analyses are printed to the Results table. Table commands are organized in four
menus: File . , Edit . , Font . and Results . . A contextual menu listing the majority of these

commands can be accessed by right-clicking anywhere in the Results window.

File . Save As. . . Exports the measurements as a tab-delimited or comma-delimited text file as
defined in Results . Options. . .
File . Rename. . . Renames the table. Because ImageJ outputs measurements exclusively to the

Results table, renaming the table will freeze its contents.

File . Duplicate. . . Creates a new table containing a copy of the data. Note that ImageJ will

not output measurements to duplicated tables.

Font . This menu contains commands to adjust font size.
Results . Clear Results. . . Alias for the Analyze . Clear Results command.
Results . Summarize Alias for the Analyze . Summarize command.
Results . Distribution. . . Alias for the Analyze . Distribution. . . command.
Results . Set Measurements. . . Alias for the Analyze . Set Measurements. . . command.
Results . Options. . . Opens the Edit . Options . Input/Output. . . dialog in which is possible to

specify if column headers and row numbers should be saved or copied from ImageJ tables
(including the Summarize table, cf. Analyze . Analyze Particles. . . ). In addition, it allows
to specify the file extension to be used when saving data. Custom extensions (e.g., .csv,
.xls or .ods) allow ImageJ tables to be imported seamlessly by spreadsheet applications.
ImageJ tables are saved in CSV format if File extension for tables is .csv.

See also: Plugins . New . Table. . .

35

Latest revision: 2011/12/27

ImageJ Editor

Menu Commands	


Debug Window	


Main Window	


Edit ▹ Go to Line…	


Macros ▹ Function Finder…	


Edit ▹ Find…	


The ImageJ editor (version 1.43n).

21

ImageJ Editor

Macros . , Scripts and Plugins can be opened and executed in the ImageJ editor. The editor
commands are organized in five menus: File ., Edit ., Font ., Macros . and Debug . .
File . Basic file operations (Open, Save, Print, etc.) are listed in this menu. The last saving

directory is kept in IJ_prefs.txt, the IJ preferences file.

Edit . Similarly to any other text editor this menu contains commands related to text handling

as well as commands for locating text. Specially useful are:
Go to Line. . . [l], Ctrl L

of code.

This dialog box enables you to quickly go to a specified line

Zap Gremlins This command finds and deletes the extraneous non-visible, non-printing
characters that sometimes appear when cutting and pasting from other sources, such
as email messages that may contain extraneous control characters, or any non-ASCII
characters.
Copy to Image Info This command will copy the selected text (or the entire contents of
the editor if no selection is present) to the image header, being available through the
Image . Show Info. . . [i] command. Note that the copied text will substitute any other
information present in the file header and will only be available in images saved as
TIFF (see II Image Types: Lossy Compression and Metadata).
Font . This menu contains commands to adjust font size and type.
Macros . This menu contains commands that allow you to run, install or evaluate macro code:
Run Macro [r], Ctrl R Runs the macro or the selected line(s) of code.
Evaluate Line [y], Ctrl Y Runs the line of code that contains the insertion point.
Abort Macro Exits the macro
Install Macros [i], Ctrl I Adds the macro(s) contained in the editor to Plugins . Macros .
submenu (Plugins . Macros . Install. . . command).
36

Latest revision: 2011/12/27

ImageJ Editor

Function Finder. . . [F], Ctrl Shift F [3] Retrieves macro functions in the same way Find
Commands. . . [l] retrieves commands. Functions are read from the ‘functions.html’
file stored in the macros folder (a local copy of http://imagej.nih.gov/ij/developer/
macro/functions.html). This file is deleted by Help . Update ImageJ. . . command
every time ImageJ is updated to a release version (i.e., not a daily build ), forcing
Function Finder to download a fresh copy the next time it is launched.
Evaluate JavaScript [j], Ctrl J Runs JavaScript code in the editor window. Note that
Run Macro runs JavaScript code if the title of the file ends with ‘.js’.
Debug . This menu contains seven commands related to the macro debugging. You can debug

a macro using the commands in the Debug menu. You start a debugging session initiating
Debug Macro. You can then single step through the macro code by repeatedly running
Step.
Debug Macro [d], Ctrl D Starts running the macro in debug mode and opens the ‘Debug’

window, which initially displays the memory usage, number of open images, and the
active image’s title. The macro stops running at the first executable line of code,
which is highlighted. Use one of the following commands to continue execution.

Step [e], Ctrl E Executes the highlighted statement and advances to the next. The
variable names and values in the ‘Debug’ window are updated.
Trace [t], Ctrl T Runs the macro, displaying variable names and values in the ‘Debug’
window as they are encountered.
Fast Trace [T], Ctrl Shift T Same as above, but faster.
Run Runs the macro to completion at normal speed (similarly to Macros . Run Macro).
Run to Insertion Point, Ctrl Shift E Runs the macro to a statement that was previously
defined by clicking the mouse on an executable line of code.
Abort Exits debug mode.
See also: Extending ImageJ (Macros and Scripts), The ImageJ Macro Language – Program-

mer’s Reference Guide, Fiji’s Introduction into Macro Programming, Plugins .
Macros . Record. . . , Fiji Script Editor, IJ_ED

37

Latest revision: 2011/12/27

Log Window

22

Log Window
The Log window is used to display useful information about ongoing operations. It is frequent
for plugins and macros to send messages to the
Log window reporting progress, errors or troubleshooting information.
If you are troubleshooting a problem, you can
check Debug mode in Edit . Options . Misc. . . to
have ImageJ outputting messages to the Log
window (ImageJ will exit debug mode as soon
as the Log window is closed).
In addition, Tiff tags and information needed to
import files are printed to the log window when
ImageJ runs in Debug Mode.
Most of the general shortcuts described in ImageJ
Editor apply to the Log window.

VI

Opening File Paths in the Log Window
In the Log Window, double click on a file path
to have it open by ImageJ.

38

Latest revision: 2011/12/27

Part V

Menu Commands
As described in the ImageJ User Interface, the menu bar lists all ImageJ commands. It is
organized in eight menus:
File .

Basic file operations (opening, saving, creating new images). Most are self-explanatory.

Edit .

Editing and drawing operations as well as global settings.

Image .

Conversion and modification of images including geometric transformations.

Process . Image processing, including point operations, filters and arithmetic operations.
Analyze . Statistical measurements, profile and histogram plotting and other operations related
to image analysis.
Plugins . Commands for creating, editing and managing add-ons (see Extending ImageJ), listing
all the user-installed Macros, Scripts and Plugins installed in the ImageJ/plugins/
directory.
Window . Selection and management of open windows.
Help .

Updates, documentation resources and version information.

VII Organizing Commands in the Menu Bar
The Plugins . menu can become easily cluttered after the installation of several plugins. Since
Plugins . reflects the hierarchy of directories in ImageJ/plugins (up to two subfolders), submenus
(i.e., subfolders) can be created to keep the menu organized, preventing it from running off the
bottom of the screen. E.g, to move the EPS Writer plugin into a Plugins . Input-Output . PDF .
submenu, one would move EPS_Writer.class into ImageJ/plugins/Input-Output/PDF/.
In addition, checking the Move isolated plugins to Misc. menu checkbox in Edit . Options .
Misc. . . will compact the menu list by moving to Plugins . Miscellaneous . all the plugins with
only one command that try to install themselves in submenus.
Note that external plugins can be installed in any of the ImageJ menus. This is the case of
plugins packaged in JAR files containing a configuration file (plugins.config) specifying the
location of the new commands implemented by the plugin. You can rename, reorganize or move
commands implemented by external plugins by editing their plugins.config file as described on the
JAR demo documentation page. If you don’t know in which menu a plugin has been registered,
use Show full information in the command Finder (Plugins . Utilities . Find Commands. . . [l]) to
find out the location of the installed .jar files.
With Fiji, Scripts and Macros can be registered in any menu by saving into
Fiji.app/plugins/Scripts/menu name/submenu name/. E.g., to have a certain macro installed
in the File . Import . submenu one would save it in Fiji.app/plugins/Scripts/File/Import/.
See also: ImageJ’s plugin architecture on the Fiji website

39

File .

23
23.1

File .
New .

Contains commands for creating new images, stacks, hyperstacks or text windows.
See also: Plugins . New .

23.1.1

Image. . . [n]
Creates a new image window or stack. A dialog box allows
you to specify the image title, type, dimensions and initial
content.
Name is the title that will be used for the Window. Type
is the image type: 8–bit grayscale, 16–bit grayscale (unsigned), 32–bit (float) grayscale or RGB color. Fill With
(White, Black or Ramp) specifies how the image is initialized. Width and Height specify the image dimensions in
pixels. Set Slices to a value greater than one to create a
stack.

See also: Image . Hyperstacks . New Hyperstack. . . , Image Types and Formats

23.1.2

Hyperstack. . .

Alias for the Image . Hyperstacks . New Hyperstack. . . command.
23.1.3

Text Window [N]

Creates a new text window with the title ‘Untitled.txt’.
See also: Plugins . New . Text Window. . . , Macro, Table. . .

23.1.4

Internal Clipboard

Opens the contents of the internal ImageJ clipboard.
See also: Edit . Copy [c], Cut [x], Paste Control. . .

23.1.5

System Clipboard [V]

Opens the contents of the operating system clipboard.
See also: Edit . Copy to System, Cut [x], Paste Control. . .

40

Latest revision: 2011/12/27

File .

Open. . .

Open. . .

23.2

Opens an image and displays it in a separate window. Image files must be in TIFF, GIF, JPEG,
DICOM, BMP, PGM or FITS format, or in a format supported by a reader plugin. Also opens:
–

ImageJ and NIH Image lookup tables (.lut extension).

–

Tables (in tab-delimited text format) (.xls or .csv extension, see Results Table)

–

Selections (.roi or .zip extension)

–

Text files (.txt, .ijm, .js and .java extensions)

–

...

See also: File . Import . , Image Types and Formats, Virtual Stacks, VIII Opening Files: File .

Open, File . Import and Drag & Drop

VIII

Opening Files: File . Open, File . Import and Drag & Drop

While the File . Open. . . command opens formats natively supported by ImageJ (images and
non-images files), the File . Import . submenu provides access to plugins for additional file types
(e.g., reading ‘raw’ files, images in ASCII format or loading images over the network). Most of
ImageJ’s Input/Output plugins are installed on this submenu.
Note that almost every format known to ImageJ can be opened by dragging and dropping the
file into the ImageJ Window. E.g., in the illustration below a remote macro file is opened by
dragging its URL directly from a Web browser.

23.3

Open Next [O]

Closes the current image and opens the next image (if any) in its directory. Holding Alt opens
the previous image (if any) in its directory.

23.4

Open Samples .

Opens example images hosted on the ImageJ Web site. These sample images are useful for
creating, testing and debugging macros since routines can be applied to the same image,
regardless of where the macro is run. Among all, probably the most used is blobs.gif : Open
Samples . Blobs (25K) [B].
Sample images can be downloaded from http://imagej.nih.gov/ij/images/ or, in bulk, from
http://imagej.nih.gov/ij/download/sample-images.zip. The ‘AutoRun’ macro in the StartupMacros.txt file can be used to change the default path of sample images, allowing a complete
off-line usage of the File . Open Samples . submenu:
41

Latest revision: 2011/12/27

File .

(5)
1

2

Open Recent .

Setting File . Open Samples . for Offline Usage

/* This macro calls the Prefs . setImageURL () method to change the default path
of Sample Images ( http :// imagej . nih . gov / ij / images /) to a local subfolder of
ImageJ 's directory named " samples ". Note that Fiji provides this feature by
default .
*/

3
4
5
6
7
8
9
10
11

macro " AutoRun " {
dir = getDirectory ( " imagej " ) + " samples " ;
i f ( File . exists ( dir ) ) {
dir = replace ( dir , " " , " % 20 " ) ;
i f ( startsWith ( getInfo ( " os . name " ) , " Windows " ) )
dir = " / " + replace ( dir , File . separator , " / " ) ;
call ( " ij . Prefs . setImagesURL " , " file :// " + dir + " / " ) ;
}

23.5

Open Recent .

The submenu shows a list of the 15 recently opened files. Click on a filename to open it.

23.6

Import .

This submenu lists the installed image reader plugins.
See also: Non–native Formats, Acquisition plugins, Input/Output plugins, VirtualStackFrom-

List macro, VIII Opening Files: File . Open, File . Import and Drag & Drop

Improved
in IJ 1.45m

23.6.1

Image Sequence. . .
Opens a series of images in a chosen folder as a stack. Images
may have different dimensions and can be of any format
supported by ImageJ (see Image Types and Formats and
HandleExtraFileTypes plugin). Invisible files, Thumbs.db or
RoiSet.zip files created by the ROI Manager. . . are ignored.
Information – width×height×depth (size) – of the stack to
be created is displayed at the bottom of the dialog.
Number of Images Specifies how many images to open.
Starting Image If set to n, import will start with the n th
image in the folder.
Increment If set to ‘2’ every other image will be opened,
if set to ‘3’ to every third image will be opened, etc.

File Name Contains Enter a string into this field and ImageJ will only open files whose
name contains that string.
Enter Pattern Regular expressions (regex) can be typed here for advanced filtering (cf. Basic
syntax of regular-expressions).
Scale Images Setting a value less than 100% will reduce memory requirements. E.g., entering
50 reduces the amount of memory needed to open a stack by 75%.
42

Latest revision: 2011/12/27

File .

Import .

Convert to RGB Allows a mixture of RGB and grayscale images to be opened by converting
all the sequence to RGB. Note that if this option is unchecked and the first imported
image is 8–bit then all the remaining images in the sequence will be converted to 8–bit.
Checking this option, circumvents this issue.
Sort Names Numerically When checked, the stack will be opened in numeric file name
order (e.g., ‘name1.tif’, ‘name2.tif’, ‘name10.tif’) instead of alphanumeric order (e.g.,
‘name1.tif’, ‘name10.tif’, ‘name2.tif’). DICOM files in the same series (tag# 0020, 0011)
are always sorted by the image number (tag# 0020,0013). The List Stack Tags macro,
part of the ListDicomTags macro set, lists the values of the image number and image
series tags.
Use Virtual Stack When checked, images are opened as a read-only virtual (disk-resident)
stack using a version of the Virtual Stack Opener plugin. This allows image sequences
too big to fit in RAM to be opened, but access time is slower and changes are lost when
switching to a different image in the stack (cf. Virtual Stacks).
Help Opens http://imagej.nih.gov/ij/docs/menus/file.html#seq1.
See also: OpenSeriesUsingFilter macro

Regular-expressions basic syntax summary. For more information on regex filtering see http:
//download.oracle.com/javase/tutorial/essential/regex/.
Regex Syntax (Character Classes)

Meaning

[]

Delimit the set of characters to match

[aA]

Either lower or upper case A

-

Character ranges

[0-9]

Any digit (from 0 through 9)
A digit plus any other character

.

Any character

[0-9].

*

Zero or more of the preceding item

.*

Any character sequence

?

Zero or one of the preceding item

[0-9]?

An optional digit

+

One or more of the preceding item

[0-9]+

At least a digit

^

Negation

[^0-9]

Any character that is not a digit

AND (Intersection)

[0-9&&[^3]]

A digit that is not 3

OR (Alternation)

[0-9]|[a-zA-Z]

A digit or lower or upper case letter

&&
|

IX

Example

Reducing Memory Requirements When Importing Images

Since ImageJ 1.44d, the File . Import . . Image Sequence. . . command no longer features the
Convert to 8-bit Grayscale checkbox. This option was used to reduce memory requirements but
used different scaling for each imported image.
As a replacement, use the Use virtual stack option and then convert to 8–bit using File . Type .
8–bit. Memory requirements can also be reduced by using the Scale Images (%) option.
See also: Edit . Options . Memory & Threads. . .

43

Latest revision: 2011/12/27

File .

23.6.2

Import .

Raw. . .
Use this command to import images that
are not in a file format directly supported
by ImageJ. You will need to know certain
information about the layout of the image
file, including the size of the image, and the
offset to the beginning of the image data.
Interleaved RGB images have pixels stored
contiguously (rgbrgbrgb. . . ) in a single image plane. Planar RGB images have the red,
green and blue image data stored in separate 8–bit sample planes. ImageJ saves RGB
images (both TIFF and raw) in interleaved
format.

Image Type There are fourteen choices depicted above. 16–bit signed integer images are converted
to unsigned by adding 32,768. 1–bit Bitmap images are converted to 8–bit.
Image Width The number of pixel in each row of image data.
Image Height The number of rows in the image.
Offset to First Image The number of bytes in the file before the first byte of image data.
Number of Images The number of images stored in the file. If this value is greater than the
actual number of images the resulting stack will get truncated to the actual size.
Gap Between Images The number of bytes from the end of one image to the beginning of
the next. Set this value to width×height×bytes-per-pixel×n to skip n images for each
image read.
White is Zero Should be checked if black pixels are represented using numbers that are less
than the numbers used for white pixels. If your images look like photographic negatives,
changing this field should fix the problem.
Little-Endian Byte Order Probably needs to be checked when importing 16–bit or 32–bit
grayscale images from little-endian machines such as Intel based PCs.
Open All Files in Folder If checked, ImageJ will import all the images in the folder as a
stack. The images must all be the same size and type.
Use Virtual Stack Images are imported as virtual stacks.
Help Opens http://imagej.nih.gov/ij/docs/menus/file.html#raw.
See also: Image Types and Formats

23.6.3

LUT. . .

Opens an ImageJ or NIH Image lookup table, or a raw lookup table. The raw LUT file must be
768 bytes long and contain 256 reds, 256 blues and 256 greens. If no image is open, a 256×32
ramp image is created to display the LUT. Note that lookup tables with file names ending in
.lut can also be opened using File . Open. . . or drag and drop.
44

Latest revision: 2011/12/27

File .

Import .

23.6.4

Text Image. . .

Opens a tab-delimited text file as a 32–bit real image (see Text Images). The image’s width
and height are determined by scanning the file and counting the number of words and lines.
For text files with integer values no larger than 255, use Image . Type . 8–bit to convert to 8–bit.
Before converting, disable Scale When Converting in Edit . Options . Conversions. . . to prevent
the image from being scaled to 0–255.
See also: OpenTextImagesAsStack macro, Save As . Text Image. . .

23.6.5

Text File. . .

Opens a text file. Note that text files can also be opened using File . Open. . . or drag and drop.
23.6.6

URL. . .

Downloads and displays known formats to
ImageJ specified by a URL. Other URLs ending with ‘/’ or ‘.html’ are opened in the user’s
default browser. The Input URL is saved
in the ImageJ preferences file and retrieved
across IJ restarts.
With IJ 1.44g and later, it is possible to open zip archives, using a URL, that contain multiple
DICOM images. Some example URLs are:
–

http://imagej.nih.gov/ij/images/ct.dcm

–

file:///Macintosh HD/images/Nanoprobes.tif

–

file:///D:\images\neuron.tif

–

http://imagej.nih.gov/ij/ (opens the ImageJ website)

23.6.7

Results. . .

Opens an ImageJ table, or any tab or comma-delimited text file (see Results Table). Note that
.csv and .xls files can also be opened by drag and drop.
23.6.8

Stack From List. . .

Improved
in IJ 1.45m

Opens a stack, or virtual stack, from a text file or URL containing a list of image file paths [9].
The images can be in different folders but they must all be the same size and type. The Virtual
Stack From List macro demonstrates how to generate a list of images and then use that list to
open the images as a virtual stack. The OpenStackUsingURLs macro demonstrates how to how
to open an image series from a remote server.
23.6.9

TIFF Virtual Stack. . .

Opens a TIFF file as virtual stack (see Virtual Stacks and III Opening Virtual Stacks by Drag
& Drop).
45

Latest revision: 2011/12/27

File .

Close [w]

23.6.10

AVI. . .
Uses a built in version of the AVI reader plugin to open an AVI file
(JPEG or PNG compressed, or uncompressed) as a stack or virtual
stack (one slice per video frame). AVI files can also be opened using
File . Open. . . or drag and drop but macros must use this command
to gain access to the dialog box options.
Please note that ImageJ only supports a restricted number of AVI
formats (cf. plugin source code).

Since version 1.41b an improved version of the AVI reader [10] retrieves animation speed from
image frame rate, adds support for YUV formats, the ability to specify the starting and ending
frame, an option to convert to 8–bit grayscale, an option to open the movie as a virtual stack,
along with many bug fixes.

23.7

Close [w]

Closes the active image.

23.8

Close All
Closes all open images. An alert is displayed if
there are unsaved changes.

23.9

Save [s]

Saves the active image in TIFF format, the ‘default’ format of ImageJ (cf. II Image Types:
Lossy Compression and Metadata). To save only a selected area, create a rectangular selection
and use the Image . Duplicate. . . [D] command. Note that Save [s] and File . Save As . Tiff. . . are
redundant commands.

23.10

Save As .

Use this submenu to save the active image in TIFF, GIF, JPEG, or ‘raw’ format. Can also be
used to save measurement results, lookup tables, selections, and selection XY coordinates.
23.10.1

Tiff. . .

Saves the active image or stack in TIFF format in redundancy with File . Save [s]. TIFF is the
only format (other than ‘raw’) that supports all ImageJ data types (8–bit, 16–bit, 32–bit float
and RGB) and the only format that saves spatial and density calibration. In addition, with
IJ 1.43 and later, selections and overlays are also saved in the TIFF header.
By default, 16–bit and 32–bit images are saved using big-endian byte order. Check Save TIFF
and Raw in Intel Byte Order in the Edit . Options . Input/Output. . . dialog box to save using
little-endian byte order.
See also: Native Formats, II Image Types: Lossy Compression and Metadata, X Warning on

JPEG compression

46

Latest revision: 2011/12/27

File .

23.10.2

Save As .

Gif. . .

Saves the active image in GIF format. RGB images must first be converted to 8–bit color using
using Image . Type . 8–bit Color. The value to be used as the transparent index (0–255) can be
set in the Edit . Options . Input/Output. . . dialog box. Stacks are saved as animated GIFs. Use
Image . Stacks . Tools . Animation Options. . . [Alt /] (or right-click on the on the play/pause icon
that precedes the stack slider) to set the frame rate.
23.10.3

Jpeg. . .

Saves the active image in JPEG format. Edit JPEG Quality Edit . Options . Input/Output. . .
dialog box to specify the JPEG compression level (0–100). This value is shown on the title of
the save dialog prompt. Lower values produce smaller files but poorer quality. Larger values
produce larger files but better quality. Color sub-sampling is disabled when the value is set to
100, reducing the likelihood of color artifacts. By default, the DPI in the JPEG header is set
to 72. For a higher value, use a unit of inch in the Analyze . Set Scale. . . dialog. E.g., setting
Distance in Pixels to 300, Known Distance to 1 and Unit of Length to ‘inch’ will set the DPI to
300.
Since IJ 1.43 and later, overlays are embedded when saving in Jpeg format (cf. Flatten [F]).
See also: II Image Types: Lossy Compression and Metadata, X Warning on JPEG compression

X Warning on JPEG compression
The JPEG format uses lossy compression that can result in artifacts. You should never used
this format on images to be segmented or measured.

23.10.4

Text Image. . .

Saves the active image as a spreadsheet compatible tab-delimited text file. For calibrated
images and floating-point images, the Decimal Places field in Analyze . Set Measurements. . .
determines the number of digits to the right of the decimal point. For RGB images, each
pixel is converted to grayscale using the formula gray = (red + green + blue)/3 or the formula
gray = 0.299 × red + 0.587 × green + 0.114 × blue if Weighted RGB to Grayscale Conversion is
checked in Edit . Options . Conversions. . .
See also: Import . Text Image. . .

23.10.5

Zip. . .

Saves the active image or stack as a TIFF file inside a compressed ZIP archive.
47

Latest revision: 2011/12/27

File .

Save As .

Text Images: File . Import . Text Image. . . and File . Save As . Text Image. . .

23.10.6

Raw Data. . .

Saves the active image or stack as raw pixel data without a header. 8–bit images are saved as
unsigned bytes, unsigned 16–bit images are saved as unsigned shorts and signed 16–bit images
(e.g., File . Open Samples . CT (420K, 16–bit DICOM)) are saved as signed shorts. 32–bit images
are saved as floats and RGB images are saved in three bytes per pixel (24–bit interleaved)
format. 16–bit and 32–bit (float) images are saved using big-endian byte order unless Export
Raw in Intel Byte Order is checked in the Edit . Options . Input/Output. . . dialog box.

Improved
in IJ 1.45m

23.10.7

Image Sequence. . .
Saves a Stack or a hyperstack as an image sequence.
Format Specifies the output format that can
be set to either BMP, FITS, GIF, JPEG,
PGM, PNG, Raw, Text Image, TIFF, or
Zip (cf. Image Types and Formats). In
IJ 1.44 and later, overlays are embedded
when saving in JPEG or PNG format.
Name Specifies the leading string that will be
common to all numeric filenames.

Start At (Stacks only) Specifies the starting number of the sequence.
Digits (1–8) The number digits of the incremental sequence. Filenames are padded with
leading zeroes.
Use slice labels as filenames (Stacks only) If checked, each slice will be saved with its own
label (the image subtitle displayed above the image, see Remove Slice Labels) and no
numeric sequence will be used.
With hyperstacks, images are saved using ‘Name_t d _z d _c d ’ in which d is the incremental
number of specified Digits; t, the frame; z, the slice and c, the channel, so e.g., for the depicted
snapshot the first image would be saved as ‘mitosis_t001_z001_c001.tif’.
48

Latest revision: 2011/12/27

File .

23.10.8

Save As .

AVI. . .
Exports a stack or hyperstack as an AVI file [10].
Compression JPEG, PNG or Uncompressed.
With IJ 1.44 and later, overlays are embedded
when saving in JPEG or PNG format. The
default compression is JPEG.

Frame Specifies the frame frequency. The proposed value is read from Image . Stacks . Tools .
Animation Options. . . [Alt /] and Image . Properties. . . [P], as long as the unit of Frame
Interval is ‘sec’.
See also: File . Import . AVI. . .

23.10.9

PNG. . .

Saves the active image in PNG (Portable Network Graphics) format. All image types, except
RGB, are saved as 8–bit PNGs. 16–bit images are saved as 16–bit PNGs. With 8–bit images,
the value to be used as the transparent index (0–255, -1 for “none”) can be set in the Edit .
Options . Input/Output. . . dialog box. With IJ 1.44 and later, overlays are embedded when
saving in PNG format.
23.10.10

FITS. . .

Saves the active image in FITS (Flexible Image Transport System) format [11].
23.10.11

LUT. . .

Saves the active image’s lookup table to a file. The 768 byte file consists of 256 red values,
256 green values and 256 blue values.
23.10.12

Results. . .

Exports the contents of the ‘Results’ window as a tab-delimited or comma-delimited (.csv ) text
file. Prior to ImageJ 1.44b this command used to be named ‘Measurements. . . ’.
23.10.13

Selection. . .

Saves the current area selection boundary to a file. Use File . Open. . . to restore the selection.
Since IJ 1.43 active selections are saved in the TIFF header by default (cf. File . Save As .
Tiff. . . ).
23.10.14

XY Coordinates. . .

Exports the XY coordinates of the line selection or area selection boundary as a two column,
tab-delimited text file. Coordinates of rectangular, oval and straight line selections cannot be
exported. Use the Path Writer plugin to save coordinates at evenly spaced one pixel intervals.
49

Latest revision: 2011/12/27

File .

23.11

Revert [r]

Revert [r]

Reloads the active image, stack or hyperstack from disk, reverting it to its last saved state. It is
actually a shortcut for closing the window without saving, and then reopening it.
See also: Undo and Redo

23.12

Page Setup. . .
The Page Setup dialog allows you to control the size of printed
output, plus other printing options:
Scale Values less than 100% reduce the size of printed images and
values greater than 100% increase the size. 100% corresponds
to 72 pixels per inch (ppi), about the unzoomed screen size
of the image. The size of the printed image is determined
by the Scale value and the width and height of the image in
pixels. Spatial calibration is ignored.

Draw border If checked, ImageJ will print a one pixel wide black border around the image.
Center on page If checked, the image will be printed in the center of the page instead of in
the upper left corner.
Print title If checked, the title of the image will be printed at the top of the page.
Selection only If checked, current selection will be printed instead of the entire image.
Rotate 90 ◦ If checked, the image will be rotated 90◦ to the left before being printed.
Print actual size Considers the DPI information in the image header (typically 72, cf.
Jpeg. . . ). For a higher value, use a unit of inch in the Analyze . Set Scale. . . dialog.
E.g., setting Distance in Pixels to 300, Known Distance to 1 and Unit of Length to ‘inch’
will set the DPI to 300.

23.13

Print. . . [p]

Prints the active image. The size of the printed image will normally be slightly less its size
on the screen (unzoomed). Use the Page Setup. . . dialog to increase of decrease the size of
printed images. Images larger than the page are scaled to fit. With IJ 1.44 and later, overlays
are embedded when printing.

23.14

Quit

Prompts you to save all unsaved images and then exits. You can also exit ImageJ by clicking on
the close button in its window’s title bar.

50

Latest revision: 2011/12/27

Edit .

24
24.1

Edit .
Undo [z]

Described in Undo and Redo.

24.2

Cut [x]

Copies the contents of the current image selection to the internal clipboard and fills it with the
current background color.
See also: Edit . Copy to System, Paste Control. . .

24.3

Copy [c]

Copies the contents of the current image selection to the internal clipboard. If there is no
selection, copies the entire active image. The amount of image data copied is shown in the
status bar.
See also: File . Internal Clipboard, Paste Control. . .

24.4

Copy to System

Copies the contents of the current image selection to the system clipboard.
See also: File . New . System Clipboard [V], Copy [c], Paste Control. . .

24.5

Paste [v]

Inserts the contents of the internal clipboard (or from the system clipboard if the internal
clipboard is empty) into the active image. The pasted image is automatically selected, allowing
it to be dragged with the mouse. Click outside the selection to terminate the paste. Select
Edit . Undo [z] to abort the paste operation.
See also: Paste Control. . .

24.6

Paste Control. . .
After pasting, use the Paste Control pop-up menu to control how the image currently being pasted is transferred
to the destination image.
Except for Blend and Transparent, the Paste Control
transfer modes are the same as those listed in the description of Process . Image Calculator. . . . The Blend mode
is the same as the Image Calculator Average mode. In
Transparent mode, white/black pixels are transparent
and all other pixels are copied unchanged.
See also: Image . Overlay . Add Image. . .

51

Latest revision: 2011/12/27

Edit .

24.7

Clear

Clear

Erases the contents of the selection to the current background color. Backspace and Del keys
are shortcuts to this command. With stacks, a dialog is displayed offering the option to clear
the selection in all stack images. Clear by pressing Backspace to avoid this dialog.
See also: Clear Outside, Fill [f], Color Picker

24.8

Clear Outside

Erases the area outside the current image selection to the background color.
See also: Clear, Fill [f], Color Picker

24.9

Fill [f]

Fills the current selection with the current foreground color. With stacks, a dialog is displayed
offering the option to fill the selection in all stack images. Fill the selection by pressing F to
avoid this dialog.
See also: Clear, Draw [d], Color Picker

24.10

Draw [d]

Outlines the current selection using the current foreground color and line width. The foreground
and background colors can also be set using the Edit . Options . Colors. . . command. Use the
Edit . Options . Line Width. . . command, or double click on the line tool, to change the line
width.
With stacks, a dialog is displayed offering the option to draw the selection in all stack images.
Draw the selection by pressing D to avoid this dialog.
See also: Analyze . Label, Color Picker, XVII Embedding Color Annotations in Grayscale

Images, XI Drawing Lines Wider Than One–Pixel

XI Drawing Lines Wider Than One–Pixel
If the line width is an even number, the selection boundary is at the center of the line. If the
line width is odd (1, 3, . . . ), the center of the line drawn is displaced from the selection edge
by 1/2 pixel to the bottom right. Thus the line center (the line in case of line width = 1) is
inside the selection at the top and left borders, but outside at the bottom and right borders.
Rectangular selections (but not polygonal selections or traced selections that happen to be
rectangular) are an exception to this rule: For rectangular selections, one–pixel wide outlines
are always drawn inside the rectangle. Thicker lines are drawn as for the other selection types.

52

Latest revision: 2011/12/27

Edit .

Invert [I]

24.11

Invert [I]

Creates a reversed image, similar to a photographic negative, of the entire image or selection.
See also: Image . Lookup Tables . Invert LUT

24.12
Original

Selection .
Fit
Spline

Fit
Circle

Fit
Ellipse

Convex
Hull

Make
Inverse

Create
Mask

Area to
Line

Make
Band. . .

To
Bounding
Box

ROI manipulations using the Edit . Selection . submenu commands.

24.12.1

Select All [a]

Creates a rectangular selection that is the same size as the image.
24.12.2

Select None [A]

Deactivates the selection in the active image.
24.12.3

Restore Selection [E]

Restores the previous selection to its original position. A selection is saved when you:
–

Delete the selection by clicking outside of it

–

Draw a new selection

–

De-activate the image containing the selection

–

Close the image containing the selection

–

Use a command that deletes or modifies the selection

See also: Analyze . Tools . ROI Manager. . .

XII Transferring Selections Between Images
You can transfer a selection from one image to another by activating the image with the
selection, activating the destination image, then pressing Shift E (the keyboard shortcut for
Edit . Selection . Restore Selection [E]).

53

Latest revision: 2011/12/27

Edit .

24.12.4

Selection .

Fit Spline

Fits a cubic spline curve to a polygon or polyline selection (see ROI manipulations).
24.12.5

Fit Circle

Fits a circle to a multipoint (with at leas 3 points) or area selection [12] (see ROI manipulations).
Composite selections are not supported. With open shapes (lines and points), the fitting
algorithm (Newton-based Pratt fit) described in Pratt V, “Direct least-squares fitting of algebraic
surfaces”, Computer Graphics, Vol. 21, pp 145–152 (1987) is used. With closed shapes, the
command creates a circle with the same area and centroid of the selection.
24.12.6

Fit Ellipse

Replaces an area selection with the best fit ellipse (see ROI manipulations). The ellipse will have
the same area, orientation and centroid as the original selection. The same fitting algorithm is
used to measure the major and minor axis lengths and angle when Fit Ellipse is selected in
Analyze . Set Measurements. . .
See also: DrawEllipse macro

24.12.7

Convex Hull

Replaces a polygon of freehand selection with its convex hull (see ROI manipulations), determined
by the gift wrap algorithm. The convex hull can be thought of as a rubber band wrapped tightly
around the points that define the selection.
See also: Fit Ellipse, ConvexitySolidarity macro, Convex_Hull_Plus plugin

24.12.8

Make Inverse

Creates an inverse selection (see ROI manipulations). What is ‘inside’ the selection will be
‘outside’, and vice versa.
24.12.9

Create Mask

Creates a new 8–bit image called ‘Mask’ whose pixels have a value of 255 inside the selection
and 0 outside (see ROI manipulations). By default, this image has an inverting LUT, so black
is 255 and white is 0 unless Black Background in Process . Binary . Options. . . is checked.
See also: Process . Binary . Convert to Mask, XX Creating Binary Masks, XXI Interpreting

Binary Images

24.12.10

Create Selection

Creates a selection from a thresholded image or a binary mask [13].
54

Latest revision: 2011/12/27

Edit .

24.12.11

Selection .

Properties. . . [y]

Improved
in IJ 1.45m

Opens a dialog box that allows the user to assign a contour
color (Stroke Color ) and a contour width (Width) to the
active selection or a filling color. Note that selections can be
either filled or contoured, but not both.
The nine default selection colors (black, blue, cyan, green,
magenta, orange, red, white, yellow ) can be typed textually.
Any other color must be typed using hex notation (see XIX
Hexadecimal Color Values).
With text selections (see Text Tool), it is also possible to specify the font size and text alignment.
Note that while this command can only be applied to the active selection, the ROI Manager’s
Properties. . . command (Analyze . Tools . ROI Manager. . . ) can be applied to multiple ROIs.
See also: Selections, Image . Overlay . Add Selection. . . [b]

24.12.12

Rotate. . .
Rotates the selection by the specified number of degrees (negative
number indicate counter-clockwise rotation). This command runs
the RotateSelection macro in ij.jar.
See also: FlipSelection macro

24.12.13

Enlarge. . .
Grows an area selection by a specified number of pixels. Enter a
negative value to shrink the selection. This command runs the
EnlargeSelection macro in ij.jar. ShrinkSelection is a variation
of this macro that does not shrink from the image edges.

XIII Converting Composite Selections
Enter zero in the Edit . Selection . Enlarge. . . dialog box to convert a composite selection into a
polygon selection. Note, however, that the conversion may fail if the composite ROI is composed
of more than one piece and/or contains internal holes.

24.12.14

Make Band. . .

Improved
in IJ 1.45m

Takes an area selection and creates a band with a thickness of the
specified number of pixels (see ROI manipulations). If you imagine the
band as a doughnut shape, then the original selection corresponds to
the hole (i.e. the band is made by growing out the original selection).
See also: MakeSelectionBand, the macro that implemented this

command in previous IJ versions.
55

Latest revision: 2011/12/27

Edit .

24.12.15

Selection .

Specify. . .
Opens a dialog that allows the user to define a rectangular or elliptical
selection. Width and Height are the dimensions of the selection. X
Coordinate and Y Coordinate define the position of the selection.
Check Oval to create an elliptical selection. If Centered is checked,
the selection is positioned so X Coordinate and Y Coordinate define
the center of the selection, otherwise they define the upper left corner.
This command is also available through the ROI Manager More 
drop-down menu (see Analyze . Tools . ROI Manager. . . ).

24.12.16

Straighten. . .

This command straightens a curved object in an image. The curved object must first be outlined
using the segmented line tool. Use the Image . Adjust . Line Width. . . widget, opened by double
clicking on the line tool icon, to adjust the width of the line selection. Check Spline Fit in
the Line Width widget to fit a cubic spline curve to the points that define the line. With
IJ 1.44k and later, it is not necessary to check the status of the Spline Fit checkbox since Edit .
Selection . Straighten. . . will assess if the line has already been prepared for straightening by a
run("Fit Spline", "straighten") call.
Drag the points along the line selection to reposition them. Alt-click on a point to delete it.
Shift-click on a point to duplicate it. Press Shift E (Edit . Selection . Restore Selection [E]) to
restore accidentally deleted lines.
Straighten. . . also works with straight line selections. In this case, the object defined by the line
selection is rotated to be horizontal.

Edit . Selection . Straighten. . .

24.12.17

To Bounding Box

Converts a non-rectangular selection to the smallest rectangle that completely contains it.
24.12.18

Line to Area

Converts a line selection to an area (traced) ROI. Straight lines must be wider than one pixel.
56

Latest revision: 2011/12/27

Edit .

Options .

24.12.19

Area to Line

New in
IJ 1.45m

Converts a non-composite area selection to its enclosing outline (see ROI manipulations). The
obtained line will have the width specified in the Image . Adjust . Line Width. . . widget. Note
that by design Area to Line does not create closed paths. E.g., the converted outline of a
rectangular selection will be composed of only three segments, with the first and fourth corner
points of the rectangle being disconnected.
See also: Composite Selections, Line to Area

24.12.20

Add to Manager [t]

Adds the current selection to the ROI Manager (Analyze . Tools . ROI Manager. . . ). If there is
no selection the ROI Manager is open.

24.13

Options .

Use commands in this submenu to change various ImageJ user preference settings.
24.13.1

Line Width. . .
Displays a dialog box that allows to change the line width (in pixels)
of line selections (see Line Selection Tools) and concomitantly the
lines generated by the Edit . Draw [d] command. This legacy command
has been superseded by the Image . Adjust . Line Width. . . widget,
but required since the later is not recordable (see Plugins . Macros .
Record. . . ).

24.13.2

Input/Output. . .
JPEG quality (0–100) Specifies the compression
level used by File . Save As . Jpeg. . . Requesting a
higher degree of compression (a lower value) will
result in smaller files, but poorer image quality.
Note that lossy JPEG compression creates serious
artifacts, see II Image Types: Lossy Compression
and Metadata.
GIF and PNG transparent index Specifies
the
transparent color used for images saved in GIF
and PNG formats. Use -1 for “none”. Note that
PNG and GIF transparency only works with 8–bit
images.

File extension for tables Sets the default extension to be used when saving tables (see
Results Table). Files with .txt and .xls extensions are saved in tab-delimited format and
files with .csv extensions are saved in comma-delimited format.
57

Latest revision: 2011/12/27

Edit .

Options .

Use JFileChooser to open/save Enables versions of File . Open and File . Save As that use
the Java JFileChooser instead of the native OS file open and save dialogs. The main
advantage of JFileChooser is the ability to open multiple files by shift-clicking to select
multiple contiguous files and control-clicking to select more than one individual file. On
the other hand, it is slower, uses more memory, and does not behave like the file open and
save dialogs used in other applications.
Save TIFF and raw in intel byte order Specifies the byte order used when saving 16–bit
and 32–bit images using File . Save As . Raw Data. . . , or File . Save As . Image Sequence. . .
when Raw is chosen as the format. Check this option to export images using the order used
by Intel ×86 based processors (little-endian). This Wikipedia article has more information.
Results Table Options Specifies if column headers and row numbers should be saved or
copied from ImageJ tables such as the Results and Summarize windows (see Results
Table).
24.13.3

Fonts. . .

Opens a small widget with three pop-up menus for specifying the type face, size, style and
antialiasing (Smooth checkbox) of the font used by the Text Tool and Image . Stacks . Label. . .
It is also possible to adjust the horizontal text alignment using the style drop-down menu: Left
(the default), Right, or Centered. The widget is more easily opened by double clicking on the
Text Tool.

24.13.4

Profile Plot Options. . .

Use this dialog to control how plots generated by ImageJ are displayed (Image . Stacks . Plot
Z-axis Profile. . . , Analyze . Plot Profile [k], Analyze . Calibrate. . . , Analyze . Tools . Curve Fitting. . . ,
Multi Plot [Analyze . Tools . ROI Manager. . . ], etc.).
Plot Width and Plot Height Specify the length (in pixels)
of the X-axis (Plot Width) and Y-axis (Plot Height).
Fixed y-axis Scale If checked, the Y-axis range is fixed and
the specified Minimum Y and Maximum Y values are
used, otherwise, plots are scaled based on the minimum
and maximum gray values.
Do not Save x–values If checked, ‘List’, ‘Save. . . ’ and
‘Copy. . . ’ buttons will appear in profile plot windows.
Auto–close If checked, profile plot windows will be automatically closed when ‘List’, ‘Save’ and ‘Copy’ are clicked
on.
Vertical Profile If checked, row average plots of rectangular areas (or line selections wider
than 1 pixel) will be generated instead of the default column average plots. Note that
evoking Plot Profile [k] with Alt B will generate vertical profiles.
58

Latest revision: 2011/12/27

Edit .

Options .

List values If checked, the list of values will be automatically opened. If Auto–close is also
checked, the plot is closed and only the list of values remains open.
Interpolate line profiles If checked, profile values will be interpolated along the line selection
Draw grid lines If checked, gray grid lines will be drawn in the plot.
Help Opens http://imagej.nih.gov/ij/docs/menus/edit.html#plot-options.
24.13.5

Rounded Rect Tool. . .

New in
IJ 1.45m

See Rounded Rectangular Selection Tool.
24.13.6

Arrow Tool. . .

See Arrow Tool.
24.13.7

Point Tool. . .

See Point Tool.
24.13.8

Wand Tool. . .

See Wand Tool.
24.13.9

Colors. . .
Displays a dialog box that allows you to set Foreground Color,
Background Color and Selection Color.
See also: Color Picker, Image . Color . Color Picker. . . [K], Point

Tool

24.13.10

Appearance. . .
This dialog contains options that control how images are displayed, an option to display better looking toolbar icons, and
an option to set the menu font size.
Interpolate zoomed images Uses interpolation instead of
pixel replication when displaying zoomed images.
Open Images at 100% Newly open images are displayed
using 100% magnification (1 image pixel = 1 screen pixel).

Black Canvas Causes the image canvas (white by default) to be rendered in black. This is
useful when looking at X-ray images in order to avoid high contrasting intensities at the
image edges.
59

Latest revision: 2011/12/27

Edit .

Options .

No image border Displays images without the default one pixel wide black border.
Use inverting lookup table Causes newly opened 8–bit images to have inverted pixel values,
where white= 0 and black= 255. This is done by both inverting the pixel values and
inverting the LUT. Use the Image . Lookup Tables . Invert LUT command to invert an
image without changing the pixel values.
Double Buffer Selections Reduces flicker when working with complex selections but it also
increases memory usage and slows screen updates. It is not needed on Mac OS X, which
has built in double buffering.
Antialiased tool icons Smooths and darken the tool icons in the ImageJ window. This option
is enabled by default on all operating systems. On Windows XP, enable Clear Type
sub-pixel anti-aliasing to improve the quality of text in menus.
Menu font size Specifies the size of the ImageJ window menu font. Use a size of 0 (zero) to
use Java’s default menu font size. Changing the font size requires the restarting of ImageJ.
This option is ignored on Mac OS X.
Help Opens http://imagej.nih.gov/ij/docs/menus/edit.html#appearance.
24.13.11

Conversions. . .

Use this dialog to set options that control how
images are converted from one type to another.

Scale When Converting ImageJ will scale from min–max to 0–255 when converting from
16–bit or 32–bit to 8–bit or to scale from min–max to 0–65535 when converting from
32–bit to 16–bit. Note that Scale When Converting is always checked after ImageJ is
restarted.
Weighted RGB Conversions (0.30, 0.59, 0.11) When checked, the formula gray = 0.299×
red + 0.587 × green + 0.114 × blue is used to convert RGB images to grayscale. If it is not
checked, the formula gray = (red + green + blue)/3 is used. The default weighting factors
(0.299, 0.587, 0.114), which are based on human perception, are the ones used to convert
from RGB to YUV, the color encoding system used for analog television. The weighting
factors can be modified using the setRGBWeights() macro function.
24.13.12

Memory & Threads. . .
Use this dialog to specify the maximum amount of
memory available to ImageJ and the number of threads
used by filters when processing stacks. Java applications
such as ImageJ will only use the memory allocated to
them (typically 640 MB) but this dialog allows the user
to allocate more than the default.

Note that specifying more than 75% of real RAM could result in virtual RAM being used, which
may cause ImageJ to become slow and unstable. Also note that this dialog cannot be used to
60

Latest revision: 2011/12/27

Edit .

Options .

set the memory allocation if ImageJ is run from the command line or by double clicking on
ij.jar.
Maximum memory 64-bit OS and a 64–bit version of Java are required to use more than
≈1700 MB of memory. Windows users must be running a 64–bit version of Windows and
must install a 64–bit version of Java. Mac users must be running OS X 10.5 or later and
may need to use the Java Preferences utility (in /Applications/Utilities/Java) to select
a 64–bit version of Java. They may also need to switch to the ImageJ64 application.
Linux users need to be running 64–bit versions of Linux and Java. The title of the
Memory & Threads dialog box changes to Memory (64–bit) when ImageJ is running on a
properly configured 64–bit system.
Parallel threads for stacks Defaults to the number of available processors determines the
number of parallel threads used by commands in the Process . Filters . and the Process .
Math . submenus when processing stacks.
Keep multiple undo buffers If checked, the undo buffer will be preserved when switching
images. Edit . Undo [z] remains restricted to the most recent operation, but is available
for each opened image, as long as the buffer allows it. If Keep multiple undo buffers is
unchecked, the undo buffer is reset every time the active (frontmost) image changes.

New in
IJ 1.45m

Run garbage collector on status bar click If checked, forces the Java garbage collector to
run every time the user clicks on the ImageJ status bar, which may help to reclaim unused
memory (cf. Status bar).
Help Opens http://imagej.nih.gov/ij/docs/menus/edit.html#memory.
See also: FAQ’s on the ImageJ Documentation Wiki

24.13.13

Proxy Settings. . .

Improved
in IJ 1.45m

Use this dialog to modify the proxy settings of the Java
Virtual Machine. This may be required for ImageJ to connect
to the internet in certain machines running behind HTTP
proxies. For example, proxy settings may be required to
update ImageJ using the Help . Update ImageJ. . . command
or to open the images in the File . Open Samples . submenu.
To use the system proxy settings enable the Or use system proxy settings option (this will set the
java.net.useSystemProxies property to true). To configure your proxy settings manually
specify the address of the HTTP proxy in Proxy server and the port the proxy listens on
(normally 8080) in Port. Settings will be saved in the ImageJ preferences file (IJ_Prefs.txt).
24.13.14

Compiler. . .

Displays a dialog box with options for the Plugins . Compile and Run. . . command.
Target Specifies the Java version of the class files. Plugins
compiled with a Target of 1.6 will not run on earlier
versions of Java. A Target of 1.4 should be used to
create plugins capable of running on all ImageJ versions.
Target cannot be set higher than the version of Java
ImageJ is currently running on.
61

Latest revision: 2011/12/27

Edit .

Options .

Target Specifies the Java version of the class files created by Plugins . Compile and Run. . .
Plugins compiled with a Target of 1.6 will not run on earlier version Java. A Target of 1.4
should be used to create plugins capable of running on all versions ImageJ. Target cannot
be set higher than the version of Java ImageJ is currently running on.
Generate Debugging Info (javac -g) If checked, information needed by Java debuggers
will be included in the class files.
Help Opens http://imagej.nih.gov/ij/docs/menus/edit.html#compiler.
Improved
in IJ 1.45m

24.13.15

DICOM. . .
This dialog sets options related to the handling of DICOM images.
Namely, if ImageJ should open DICOM images as 32–bit float, if voxel
depth should be calculated (based on the distance between the first
and last slice) and if coronal/transverse sections should be mirrored
when using the Image . Stacks . Orthogonal Views [H] command. With
IJ 1.45, the DICOM reader applies the Rescale Slope value when Open
as 32-bit float is enabled and tag 0028,1053 is not 1.0.
See also: Image Types and Formats

24.13.16

Misc. . .
Displays a dialog box containing miscellaneous options.
Divide by zero value Specifies the value used when
Process . Image Calculator. . . detects a divide by
zero while dividing one 32–bit real image by another. The default is infinity. In addition to numeric values, ‘infinity’ (positive or negative infinity), ‘max’ (largest positive value) and ‘NaN’
(Not-a-Number) can be entered as the Divide by
zero value.

Use pointer cursor If checked, ImageJ will use an arrow cursor instead of the default crosshair that is sometimes difficult to see on grayscale images in areas of medium brightness.
This option can also be used to work around a bug on Windows where the text cursor is
sometimes used in place of the cross-hair.
Hide "Process Stack?" dialog If checked, ImageJ will suppress the dialog that asks ‘Process
all xx slices?’ (only the current slice will be processed).
Require control / command key for shortcuts If checked, requires the Control key (Command key on Macs) to be pressed when using keyboard shortcuts for menu commands.
Move isolated plugins to Misc. menu This option can reduce the size of the Plugins menu,
preventing it from running off the bottom of the screen. When this option is enabled,
plugins that attempt install themselves in a submenu with only one command are instead
installed in the Plugins . Miscellaneous submenu. An example of such a plugin is TurboReg,
which normally creates a Plugins . TurboReg submenu that contains only one command.
Run single instance listener If checked, ImageJ will use sockets to prevent multiple instances from being launched. On Windows, this avoids the problem where another copy
62

Latest revision: 2011/12/27

Edit .

Options .

of ImageJ starts each time an image is dragged and dropped on the ImageJ icon. It also
prevents multiple instances when running ImageJ from the command line. Note that you
may get a security alert the first time ImageJ starts with this option enabled. ImageJ
does not require external socket access so it is okay to deny it access in the security alert.
This option is set by default with new Windows installations.
Debug mode If checked, causes ImageJ to display debugging messages in the Log Window.
Close the Log window to disable display of debugging messages.
Help Opens http://imagej.nih.gov/ij/docs/menus/edit.html#misc.

63

Latest revision: 2011/12/27

Image .

25
25.1

Image .
Type .

Use this submenu to determine the type of the active image or to convert it to another type.
An attempt to perform an unsupported conversion causes a dialog box to be displayed that lists
the possible conversions.
Supported conversions in ImageJ (Image . Type . submenu).
8–bit
color

RGB
color

RGB
stack

HSB
stack

...

I, S

I, S

RGB stack

I

...

HSB stack

I

8–bit

16–bit

32–bit

8–bit

...

I, S

I, S

I, S

16–bit

I, S

...

I, S

I, S

32–bit

I, S

I, S

...

I, S

8–bit color

I, S

...

I

RGB color

I, S

I, S

...

I: Single images only; S: Stacks

8–bit Converts to 8–bit grayscale. ImageJ converts 16–bit and 32–bit images to 8–bit by
linearly scaling from min–max to 0–255, where min and max are the two values displayed
in the Image . Adjust . Brightness/Contrast. . . [C]. Image . Show Info. . . [i] displays these two
values as Display range. Note that this scaling is not done if Scale When Converting is not
checked in Edit . Options . Conversions. . . RGB images are converted to grayscale using the
formula gray = (red + green + blue)/3 or gray = 0.299 × red + 0.587 × green + 0.114 × blue
if Weighted RGB Conversions is checked in Edit . Options . Conversions. . .
16–bit Converts to unsigned 16–bit grayscale.
32–bit Converts to signed 32–bit floating-point grayscale.
8–bit Color Converts to 8–bit indexed color using Heckbert’s median-cut color quantization
algorithm. A dialog box allows the number of colors (2–256) to be specified. The active
image must be RGB color.
RGB Color Converts to 32–bit RGB color.
RGB Stack Converts to a 3–slice (red, green, blue) stack. The active image must be RGB
color.
HSB Stack Converts to a 3–slice (hue, saturation and brightness) stack. The active image
must be RGB color.

25.2

Adjust .

This submenu contains commands that adjust brightness/contrast, threshold levels and image
size.
64

Latest revision: 2011/12/27

Image .

XIV

Adjust .

Applying Auto Brightness/Contrast to Entire Stacks

The Process . Enhance Contrast command can be used to adjust the brightness and contrast
of each slice in a stack, according to either the optimal for each individual slice (if Use Stack
Histogram is unchecked) or the overall stack (by ticking Use Stack Histogram). The default
behavior of the B&C tool (Image . Adjust . Brightness/Contrast. . . [C]) is to use the overall stack
histogram.

25.2.1

Brightness/Contrast. . . [C]

Use this tool to interactively alter the brightness and contrast of the active image. With 8–bit
images, brightness and contrast are changed by updating the image’s lookup table (LUT), so
pixel values are unchanged. With 16–bit and 32–bit images, the display is updated by changing
the mapping from pixel values to 8–bit display values, so pixel pixel values are also unchanged.
Brightness and contrast of RGB images are changed by modifying the pixel values.
Histogram The line graph at the top of the window, which is superimposed on the image’s histogram, shows how pixel values are mapped
to 8–bit (0–255) display values. The two numbers under the plot
are the minimum and maximum displayed pixel values. These two
values define the display range, or ‘window’. ImageJ displays images
by linearly mapping pixel values in the display range to display
values in the range 0–255. Pixels with a value less than the minimum are displayed as black and those with a value greater than
the maximum are displayed as white.
Minimum and Maximum sliders Control the lower and upper limits
of the display range. Holding down Shift will simultaneously adjust
all channels of a composite image (e.g., File . Open Samples . HeLa
Cells (1.3 M, 48–bit RGB)).
Brightness slider Increases or decreases image brightness by moving the display range. Holding down Shift will simultaneously adjust all channels of a composite image.
Contrast slider Increases or decreases contrast by varying the width of the display range. The
narrower the display range, the higher the contrast. Holding down Shift will simultaneously
adjust all channels of a composite image.
Auto ImageJ will automatically optimize brightness and contrast based on an analysis of the
image’s histogram. Create a selection, and the entire image will be optimized based on an
analysis of the selection. The optimization is done by allowing a small percentage of pixels
in the image to become saturated (displayed as black or white). Each additional click on
Auto increases the number of saturated pixels and thus the amount of optimization. A
run("Enhance Contrast", "saturated=0.35") macro call is generated if the command
recorder is running.
Reset Restores the original brightness and contrast settings. The display range is set to the
full pixel value range of the image. A resetMinAndMax() macro call is generated if the
command recorder is running. Holding down Shift restores original settings in all channels
of a composite image.
Set Allows to enter the minimum and maximum display range values in a dialog box. A
setMinAndMax() macro call is generated if the command recorder is running. Check
65

Latest revision: 2011/12/27

Image .

Adjust .

Propagate to all open images to apply these values to the rest of the images currently
open.
A 16–bit image consists of 65536 possible gray levels. Most of times, however, the relevant
image information is contained only within a narrow range of the grayscale. This is the
case, e.g., in low light microscopy, in which signal is restricted to the lower end of the
grayscale. The Set Display Range dialog allows you to choose how to scale the range of
gray levels of 16–bit images.

Automatic Automatically selects the best range given the intensity values of the image
based on the percentage of the total number of pixel values from the lowest to highest
pixel value.
8–bit (0–255) Gray level range of 0–255.
10–bit (0–1023) Gray level range of 0–1023.
12–bit (0–4095) Gray level range of 0–4095.
15–bit (0–32767 ) Gray level range of 0–32767.
16–bit (0-65535) Gray level range of 0–65535.
Apply Applies the current display range mapping function to the pixel data. If there is a
selection, only pixels within the selection are modified. This option currently only works
with 8–bit images and stacks and with RGB stacks. This is the only B&C option
that alters the pixel data of non-RGB images.
See also: Window/Level. . . , Enhance Contrast, XIV Applying Auto Brightness/Contrast to

Entire Stacks, XV Display Range of DICOM Images

25.2.2

Window/Level. . .
This command and Brightness/Contrast. . . [C]
(B &C ) are redundant, but Window/Level. . .
(W&L) behaves in a manner closer to that implemented on medical image terminals by interactively
adjusting the Window – range of minimum and
maximum (Contrast) – and Level – position of that
range in the grayscale intensity space (Brightness).
If the B &C window is opened, it will be closed
and the W &L window will be opened at the same
location.
66

Latest revision: 2011/12/27

Image .

Adjust .

XV Display Range of DICOM Images
With DICOM images, ImageJ sets the initial display range based on the Window Center
(0028, 1050) and Window Width (0028, 1051) tags. Click Reset on the W&L (Image . Adjust .
Window/Level. . . ) or B&C (Image . Adjust . Brightness/Contrast. . . [C]) window and the display
range will be set to the minimum and maximum pixel values.
As an example, the File . Open Samples . CT (420K, 16–bit DICOM) image has a Window Center
of 50 and Window Width of 500, so the display range is set to -200 to 300 (center-width/2 to
center+width/2). Click Reset and the display range is set to -719 to 1402. Press H (Analyze .
Histogram [h]) and you will see that the minimum pixel value in the image is -719 and the
maximum is 1402.
To display the DICOM tags, press I (Image . Show Info. . . [i]). Press R (File . Revert [r]) to
revert to the initial display range.

XVI

Brightness/Contrast of High Bit–Depth Images

When displayed, the intensity of each pixel that is written in the image file is converted into the
grayness of that pixel on the screen. How these intensities are interpreted is specified by the
image type. From the ImageJ website:
16–bit and 32–bit grayscale images are not directly displayable on computer monitors,
which typically can show only display 256 shades of gray. Therefore, the data are
mapped to 8–bit by windowing. The window defines the range of gray values that
are displayed: values below the window are made black, while values above the
window are white. The window is defined by minimum and maximum values that
can be modified using Image . Adjust . Brightness/Contrast. . . [C].
It may happen that the initial windowing performed by ImageJ on these high bit–depth (or
HDR) images is suboptimal. Please note that windowing does not affect image data (cf. the
HDRexplorerTool).

25.2.3

Color Balance. . .
This panel makes adjustments to the brightness and contrast of a single color of a standard RGB image (8–bit
per color channel). For multi-channels stacks and hyperstacks it adjusts each of the color channels independently.
Use the drop-down menu to specify which color / channel
will be adjusted (the histogram is drawn for the selected
color).
Maximum and Minimum sliders, Auto, Set and Apply
work as described for Image . Adjust . Brightness/Contrast. . .
[C]. Similarly to the Window/Level. . . tool, if the B &C
window is opened, it will be closed and the Color window
will be opened at the same location.
NB: When switching from one color to another, the
changes made to one color will be lost unless Apply
67

Latest revision: 2011/12/27

Image .

Adjust .

is clicked before. Also, note that for 48–bit color images that load as a stack, Brightness/Contrast. . . [C] works on single stack slices, i.e., colors, and the color settings of the Color panel are
ignored.
See also: Brightness/Contrast. . . [C], Color . submenu

25.2.4

Threshold. . . [T]

Use this tool to automatically or interactively set lower and upper threshold values, segmenting
grayscale images into features of interest and background. Use Analyze . Measure. . . [m]) (with
Limit to Threshold in Analyze . Set Measurements. . . checked) to measure the aggregate of the
selected features. Use Analyze . Analyze Particles. . . to measure features individually. Use the
Wand Tool to outline a single feature.
Highlighted range	


Auto-threshold methods	


Holding ⇪ Shift
moves a fixed-width
thresholding window 	

Min/Max values	

Display mode	


Manual input
Are objects in the
image lighter than
the background?	


	


Compute the whole
stack or treat single
slices independently?	


Image . Adjust . Threshold. . . [T] (ImageJ 1.45m).

Upper slider Adjusts the minimum threshold value. Hold Shift while adjusting the minimum
to move a fixed-width thresholding window across the range of gray values.
Lower slider Adjusts the maximum threshold value.
Method Allows any of the 16 different automatic thresholding methods to be selected [15].
These methods are described on Fiji’s Auto Threshold website. The Default method is the
modified IsoData algorithm used by ImageJ 1.41 and earlier. Note that these are global
thresholding methods that typically cannot deal with unevenly illuminated images (such
as in brightfield microscopy). In these cases, local algorithms are more appropriated, by
allowing the threshold to smoothly vary across the image.. These are implemented by the
Auto Local Threshold plugin, pre-installed in Fiji.
Display Selects one of three display modes:
Red Displays the thresholded values in red.
B&W

Features are displayed in black and background in white. This mode
respects the Black background flag set in Process . Binary . Options. . .
68

Latest revision: 2011/12/27

Image .

Adjust .

Over/Under

Displays pixels below the lower threshold value in blue, thresholded
pixels in grayscale, and pixels above the upper threshold value in
green. These colors can be changed from a macro by calling the
ImageProcessor.setOverColor() and setUnderColor() methods (example).

Dark background To be checked when features are lighter than the background. The state of
the checkbox is remembered across restarts.
Stack histogram If checked, ImageJ will first compute the histogram of the whole stack (or
hyperstack) and then compute the threshold based on that histogram. As such, all slices
are binarized using the single computed value. If unchecked, the threshold of each slice is
computed separately.
Auto Uses the currently selected thresholding method to automatically set the threshold levels
based on an analysis of the histogram of the current image or selection.
Apply Sets thresholded pixels to black and all other pixels to white. For 32–bit float images
Apply will also run Process . Math . NaN Background.
Reset Disables thresholding and updates the histogram.
Set New threshold levels can be entered into this dialog box.
See also: XX Creating Binary Masks and

25.2.5

Color Threshold. . .

Thresholds 24–bit RGB images based on Hue Saturation and Brightness (HSB), Red Green
and Blue (RGB), CIE Lab or YUV components. Ranges of the filters can be set manually or
based on the pixel value components of a user-defined ROI (experimental). This command,
implemented in version 1.43l, is a built-in version of the Threshold Colour plugin [17]. Note
that the final thresholded image type is RGB, not 8–bit gray.

Segmentation of DAPI stained nuclei using Image . Adjust . Color Threshold. . .

69

Latest revision: 2011/12/27

New in
IJ 1.45m

Image .

Adjust .

Pass If checked, values within range are thresholded and displayed (band-pass filter), otherwise,
values outside the selected range are thresholded (band-reject filter).
Thresholding Method Allows any of the 16 different automatic thresholding methods to be
selected (cf. Threshold. . . [T]).
Threshold Color Selects the threshold color: either Red, Black, White or Black & White (cf.
Threshold. . . [T]).
Color space Selects the color space: HSB, RGB, CIE Lab or YUV.
Dark background To be checked when features are lighter than the background. With IJ 1.44i
and later, the state of the checkbox is remembered across restarts.
Original Restores the original image and updates the buffer when switching to another image.
Filtered Shows the filtered image.
Select Creates a ROI selection based on the current settings. The selection is made according
to the settings defined in the Process . Binary . Options. . . dialog.
Sample (Experimental) Sets the ranges of the filters based on the pixel value components in a
user-defined ROI.
Stack Processes the rest of the slices in a stack (if any) using the current settings.
Macro Creates a macro based on the current settings which is sent to the Macro Recorder
window (Plugins . Macros . Record. . . ) , if open.
Help Opens Color Threshold. . . ’s built-in help.
See also: 3D Color Inspector/Color Histogram

Improved
in IJ 1.45m

25.2.6

Size. . .
Scales the active image or selection to a specified
Width and Height in pixels.
Check Constrain aspect ratio and ImageJ will
adjust either the Height or the Width to maintain
the original aspect ratio. When applicable, other
dimensions can also be resized: Depth (images)
in stacks, Depth (slices) and Time (frames) in
hyperstacks.
Check the Average when downsizing checkbox for
better results when scaling down images [16]. Two
resampling methods are possible: Bilinear and
Bicubic interpolation. The implementation of the
bicubic method (Catmull-Rom interpolation) is
derived from Burger and Burge, 2008 [51].

See also: Image . Scale. . . [E]

70

Latest revision: 2011/12/27

Image .

25.2.7

Show Info. . . [i]

Canvas Size. . .

Changes the canvas size of an image or stack without
scaling the actual image. Width and Height may be
either expanded or contracted. If the canvas size is increased, the border is filled with the current background
color, or, if Zero Fill is checked, the border is filled with
pixels that have a value of zero. The position of the old
image within the new canvas may also be specified.
See also: Size. . . , Color Picker. . . [K], XVII Embedding

Color Annotations in Grayscale Images

25.2.8

Line Width. . .

This widget is used to adjust the width of line selections (in pixels). It is opened more easily by double
clicking on the Line Selection Tools icon. Checking
Spline Fit fits a cubic spline curve to the points that
define the line.

See also: Edit . Options . Line Width. . . , Edit . Selection . Fit Spline

25.3

Show Info. . . [i]

Opens a text window containing information about
the active image (including the pixel or voxel size,
since IJ 1.44k). For DICOM and FITS images, also
displays file header information. Use the popup menu
(right-click in the Info window) to save the information to a text file or copy it to the system clipboard.
See also: Image . Properties. . . [P]

71

Latest revision: 2011/12/27

Image .

25.4

Properties. . . [P]

Properties. . . [P]
Use this command to display and set various properties of the
current image or stack.
The number of Channels (c), Slices (z) and Frames (t) in the image
can be changed as long as the product of c, z, and t is equal to the
number of images in the stack.
The Unit of Length (a string describing the measuring unit), Pixel
Width, Pixel Height and Voxel Depth (all in the Unit of Length
unit) can be set.
Width, Height and Depth are automatically converted if Unit of
Length is changed from one known unit (‘nm’, ‘um’, ‘µm’, ‘micron’,
‘mm’, ‘cm’, ‘meter’, ‘km’ or ‘inch’) to another. With t–series stacks,
the Frame Interval in seconds (reciprocal of the frame rate) can
be viewed and set.

Since IJ 1.43, setting the Frame Interval sets the frame rate used by Animation Options. . . [Alt /]
as long as the unit used is ‘sec’.
Origin (always in pixels) is the reference point (0, 0) of the image coordinate system (see also
Analyze . Set Measurements. . . ).
Check Global to make the current settings global (i.e., apply to all images opened during the
current session, cf. XXII Global Calibrations).

See also: Image . Show Info. . . [i], Image . Scale. . . [E], Analyze . Set Scale. . .

25.5

Color .

This submenu contains commands that deal with color images.

25.5.1

Split Channels

Splits an RGB image (or stack) into three 8–bit grayscale images containing the red, green and
blue components of the original. The window names have an appended (red), (green) and (blue).
With composite images and / or hyperstacks (e.g., File . Open Samples . Organ of Corti (2.8M, 4D
stack)) this command splits the stack into separate channels.

See also: Merge Channels. . .

72

Latest revision: 2011/12/27

Image .

25.5.2

Color .

Merge Channels. . .

Improved
in IJ 1.45m

Merges 1–4 grayscale images or stacks into an RGB image or stack.
Select *None* to keep a channel empty (filled with 0).
Check Keep Source Images if you wish to keep the originals. Check
Create Composite to convert 2–4 grayscale images or stacks into a
composite image or hyperstack (see Color Composites).
Merge Channels. . . will preserve color LUTs and display ranges when
creating composite images (i.e., when Create Composite is chosen).
You can avoid this behavior either by not checking Create composite
in the dialog box, or by checking Ignore source LUTs checkbox.
See also: Channels Tool. . . [Z]

25.5.3

Channels Tool. . . [Z]

Alias for Image . Hyperstacks . Channels Tool. . . [Z].

25.5.4

Stack to RGB

Converts a two or three slice stack into an RGB image, assuming that the slices are in R, G, B
order. The stack must be 8–bit or 16–bit grayscale. Also converts composite images (e.g., File .
Open Samples . HeLa Cells (1.3M, 48-bit RGB)) into RGB.

25.5.5

Make Composite
Converts in place an RGB image, a 2–7 image stack or a 2–7
channel hyperstack into a composite color image. Use the
Channels Tool. . . [Z] tool ( Shift Z ) to enable and disable
the channels of a composite image. Use Brightness/Contrast. . .
[C] ( Shift C ) to adjust the brightness and contrast of the
current channel.

25.5.6

Show LUT
Displays a plot of the active image’s lookup table
(LUT) . The lookup table, or color table, describes
the color that is displayed for each of the 256 possible
pixel values. For 16 and 32–bit images, the range
of displayed pixel values is mapped to 0–255. A bar
under the plot displays the color representation of the
pixel values. Note that RGB color images do not use
a lookup table. Use the List. . . radio button to export
the LUT as a CSV file.
See also: Edit LUT. . .

73

Latest revision: 2011/12/27

Image .

25.5.7

Color .

Edit LUT. . .
Opens the ImageJ LUT (Lookup Table) Editor. A
lookup table in ImageJ has up to 256 entries. The
entry index, and the three values (red, green and blue)
associated with it, are displayed in the ImageJ status
bar as you move the cursor over the LUT Editor window. Click on an entry to edit the red, green and blue
values for that entry using a Color Selector window (cf.
Color Picker. . . [K]).
See also: Show LUT

25.5.8

Color Picker. . . [K]

The Color Picker tool [14] enables the user to select foreground and background colors, which
affect Edit . Fill [f], Edit . Draw [d] and other color drawing commands. It displays current
foreground and background colors in the selection boxes at the bottom of the window. It has
two modes: Foreground and Background. To change modes, click on the desired selection box.
Clicking on the Foreground /Background Switcher button sets the current foreground to the
background and vice versa. The Black /White Reset button sets the foreground to black and
the background to white.

Color Ramp 	

Algorithm	

H	

◀B S▶	

▼	


Red	


Color Selectors	


Yellow	

Green	


Black– White
Ramp	


Cyan	

Blue	

Magenta	


Foreground Color	

Background Color	


Foreground/Background Switcher	

Black/White Reset	


The Color Picker. . . [K] tool.

The color palette is based on HSB (Hue, Saturation and Brightness) color model. Hue increases
as you go down the palette while saturation and brightness values are split horizontally. The
left half of the palette varies only in brightness while the right half varies only in saturation. At
the center of the color ramp are enlarged red, green, blue, cyan, magenta, and yellow colors for
quick selection. To the left of the color palette is a grayscale ramp that goes from pure black to
pure white.
Double clicking on a color brings up one of the Color Selectors, shown on the right in the
illustration. Use the sliders to specify the RGB values of the foreground or background color. To
get precise colors, manually change the values in the text boxes. The title of the Color Selector
window (Foreground Color or Background Color ) indicates the current selection mode.
74

Latest revision: 2011/12/27

Image .

Stacks .

See also: XVII Embedding Color Annotations in Grayscale Images, Draw [d], Fill [f], Clear,

Clear Outside, Image Types and Formats

XVII Embedding Color Annotations in Grayscale Images
Color marks are only available with color images or grayscale images that have been converted
to RGB (Image . Type . submenu). For non-RGB images, background / foreground color will be
drawn in equivalent gray levels, e.g.: For a 8–bit image, if the foreground color is red (RGB:
255, 0, 0) intensity of drawn selections will be (255 + 0 + 0)/3 = 85.
Colored overlays (see Image . Overlay . ), on the other hand, can be created on all image types
becoming the easiest way to annotate grayscale images.

25.6

Stacks .

This submenu contains commands that work with stacks.
25.6.1

Add Slice

Improved
in IJ 1.45m

Inserts a blank slice after the currently displayed slice (stacks) or channel (composite images).
Holding Alt inserts a blank slice before the current slice / channel.
25.6.2

Delete Slice

Improved
in IJ 1.45m

Deletes the currently displayed slice / channel.
25.6.3

Next Slice [>]

Displays the slice that follows the currently displayed slice. Holding Alt > will skip nine slices
forward.
See also: Arrow Keys

25.6.4

Previous Slice [<]

Displays the slice that precedes the currently displayed slice. Holding Alt < will skip nine
slices backward.
See also: Arrow Keys

25.6.5

Set Slice. . .
Displays a specified slice. The user must enter a slice number
greater than or equal to one and less than or equal to the number
of slices in the stack.
75

Latest revision: 2011/12/27

Image .

25.6.6

Stacks .

Images To Stack

Creates a new stack from images currently displayed in separate windows.
Method If images differ in size, a drop-down menu allows to choose a conversion method:
Copy (center ) and Copy (top-left)
Stack will have the width of the widest
open image and the height of the highest
open image. Smaller images will then
be copied (either to the center or to the
upper left corner) of the slice. Borders
are filled with pixels that have a value
of zero.
Scale (smallest) and Scale (largest)
Stack will have the dimensions of the
smallest / largest open image. Other
images are scaled to the new slice
dimensions. Bicubic interpolation is
used if Bicubic interpolation is checked
(cf. Image . Size. . . and Image . Scale. . .
[E]).
Name Specifies the title of the stack to be created.
Title Contains Enter a string into this field and ImageJ will only convert to stack images
whose name contains that string.
Bicubic Interpolation If checked, bicubic interpolation (cf. Adjust . Size. . . ) will be used if
any of the Scale methods was previously chosen.
Use Title as Labels If checked, image titles (without extension) will be used as stack labels.
As described in Stacks . Tools . Remove Slice Labels, these labels (up to 60 characters)
correspond to the image subtitle, the line of information above the image.
Keep Source Images If checked, original images are kept.
25.6.7

Stack To Images

Converts the slices in the current stack to separate image windows.
See also: Stacks . Images To Stack

Improved
in IJ 1.45m

25.6.8

Make Montage

Produces a single image which contains the images from a stack displayed in a grid format. This
can be useful for visual comparisons of a series of images stored in a stack and to create ‘panel
figures’. With hyperstacks – that are not directly supported –, instructions are displayed that
explain how to create c, z or t montages. A dialog box allows you to specify the magnification
level at which the images are copied, and to select the layout of the resulting grid.
76

Latest revision: 2011/12/27

Image .

Stacks .

Label Slices If checked, montage panels are labelled with slice labels. Slice labels (up to 60
characters) correspond to the image subtitle, the line of information above the image. These
labels are part of the stack metadata, typically created by File . Import . Image Sequence. . .
or Stacks . Images To Stack. If no slice metadata exists (the setMetadata("Label",
string) macro function can be used to customize slice labels) images are labelled with
slice numbers. Note that the Stacks . Label. . . command can be used to draw labels in
stack slices.
Use Foreground Color If checked, borders and labels are drawn in the foreground color and
blank areas of the panel are filled with the background color.
See also: Stacks . Tools . Montage to Stack. . . , Stacks . Tools . Remove Slice Labels, RC Montage

plugin, Magic Montage — a macro toolset to reorder and manipulate images in the
montage (a video tutorial can be found here)

25.6.9

Reslice. . . [/]
Reconstructs one or more orthogonal slices through the
image volume represented by the current stack or hyperstack [18].
The estimated size of the output stack and the amount
of available memory are displayed at the bottom of the
dialog. Increase Output spacing to reduce the size of the
output stack.
A dialog allows you to specify the spacing of the reconstructed slices.

Output spacing Determines the number of orthogonal slices that will be reconstructed. Increasing Output spacing reduces the size of the output stack.
Start at Determines the image edge (top, left, bottom or right) from which reconstruction starts.
Start at is replaced by Slice count if there is a line selection. With lines selections, a stack is
created by shifting (by Output spacing) the line down and to the left to generate additional
77

Latest revision: 2011/12/27

Image .

Stacks .

slices for the output stack. In this case, the size of the output stack in determined by Slice
count.
Flip vertically If checked, each slice in the output stack will be flipped vertically.
Rotate 90 degrees If checked, each slice in the output stack will be rotated 90◦ .
Avoid interpolation If checked, no interpolation will be done.
Help Opens http://imagej.nih.gov/ij/docs/menus/image.html#reslice.
See also: Dynamic Reslice and Radial Reslice plugins

25.6.10

Orthogonal Views [H]
Provides an orthogonal view display of the current
stack or hyperstack [19]. E.g., if a stack displays
sagittal sections, coronal (YZ projection image)
and transverse (XZ projection image) will be displayed through the data-set.
The two extra planar views are displayed in ‘sticky’
panels next to original image and can be toggled
using Shift H , the command shortcut.
The intersection point of the three views follows the
location of the mouse click and can be controlled
by clicking and dragging in either the XY, XZ or
YZ view. XY and XZ coordinates are displayed
in the title of the projection panels. The mouse
wheel changes the screen plane in all three views.
Voxel dimensions can be adjusted in Image .
Properties. . . [P].

See also: 3D Project. . . , and 3D Viewer [13], Volume Viewer, Stack Slicer Display3_TP plugins,

Edit . Options . DICOM. . .

25.6.11

Z Project. . .

Projects an image stack along the axis perpendicular to image plane (the so-called z axis) [18].
With hyperstacks, the projection s performed on the active time frame, or for all time points
if All Time Frames is checked. Five different projection types are supported. The preferred
projection method is stored in the preferences file.
Average Intensity projection outputs an image wherein each pixel stores average intensity
over all images in stack at corresponding pixel location.
78

Latest revision: 2011/12/27

Image .

Stacks .

Average Intensity projection outputs an image wherein each pixel stores average intensity over all images in stack at corresponding
pixel location.
Maximum Intensity projection (MIP) creates
an output image each of whose pixels contains the maximum value over all images in
the stack at the particular pixel location.
Sum Slices projection creates a real image that is the sum of the slices in the stack.
Standard Deviation projection creates a real image containing the standard deviation of the
slices.
Median projection outputs an image wherein each pixel stores median intensity over all images
in stack at corresponding pixel location.
See also: Grouped Z Project. . . , 3D Project. . . , Plot Z-axis Profile. . .

25.6.12

3D Project. . .
This command creates a sequence of projections of a
rotating volume (stack or hyperstack) onto a plane
using nearest-point (surface), brightest-point, or meanvalue projection or a weighted combination of nearest
point projection with either of the other two methods
(partial opacity) [20]. The user may choose to rotate
the volume about any of the three orthogonal axes
(x, y, or z), make portions of the volume transparent
(using thresholding), or add a greater degree of visual
realism by employing depth cues.
Each frame in the animation sequence is the result of
projecting from a different viewing angle. To visualize
this, imagine a field of parallel rays passing through
a volume containing one or more solid objects and
striking a screen oriented normal to the directions of
the rays.

Each ray projects a value onto the screen, or projection plane, based on the values of points
along its path. Three methods are available for calculating the projections onto this plane:
nearest-point, brightest-point, and mean-value. The choice of projection method and the settings
of various visualization parameters determine how both surface and interior structures will
appear.
Projection Method Select Nearest Point projection to produce an image of the surfaces
visible from the current viewing angle. At each point in the projection plane, a ray passes
normal to the plane through the volume. The value of the nearest non transparent point
which the ray encounters is stored in the projection image. Brightest Point projection
examines points along the rays, projecting the brightest point encountered along each ray.
This will display the brightest objects, such as bone in a CT (computed tomographic)
study. Mean Value projection, a modification of brightest–point projection, sums the
79

Latest revision: 2011/12/27

Image .

Stacks .

values of all transparent points along each ray and projects their mean value. It produces
images with softer edges and lower contrast, but can be useful when attempting to visualize
objects contained within a structure of greater brightness (e.g. a skull).
Slice Spacing The interval, in pixels, between the slices that make up the volume. ImageJ
projects the volume onto the viewing plane at each Rotation Angle Increment, beginning
with the volume rotated by Initial Angle and ending once the volume has been rotated by
Total Rotation.
Lower / Upper Transparency Bound Determine the transparency of structures in the volume. Projection calculations disregard points having values less than the lower threshold
or greater than the upper threshold. Setting these thresholds permits making background
points (those not belonging to any structure) invisible. By setting appropriate thresholds,
you can strip away layers having reasonably uniform and unique intensity values and
highlight (or make invisible) inner structures. Note that you can also use Image . Adjust .
Threshold. . . [T] to set the transparency bounds.
Opacity Can be used to reveal hidden spatial relationships, specially on overlapping objects of
different colors and dimensions. The (surface) Opacity parameter permits the display of
weighted combinations of nearest-point projection with either of the other two methods,
often giving the observer the ability to view inner structures through translucent outer
surfaces. To enable this feature, set Opacity to a value greater than zero and select either
Mean Value or Brightest Point projection.
Surface / Interior Depth–Cueing Depth cues can contribute to the three-dimensional quality of projection images by giving perspective to projected structures. The depth-cueing
parameters determine whether projected points originating near the viewer appear brighter,
while points further away are dimmed linearly with distance. The trade-off for this increased realism is that data points shown in a depth-cued image no longer possess accurate
densitometric values. Two kinds of depth-cueing are available: Surface Depth-Cueing and
Interior Depth-Cueing. Surface Depth-Cueing works only on nearest-point projections
and the nearest-point component of other projections with opacity turned on. Interior
Depth-Cueing works only on brightest-point projections. For both kinds, depth-cueing is
turned off when set to zero (i.e. 100% of intensity in back to 100% of intensity in front) and
is on when set at 0 

Source Exif Data:
File Type                       : PDF
File Type Extension             : pdf
MIME Type                       : application/pdf
PDF Version                     : 1.5
Linearized                      : No
Page Count                      : 179
Page Mode                       : UseOutlines
Author                          : Tiago Ferreira & Wayne Rasband
Title                           : The ImageJ User Guide
Subject                         : IJ 1.45
Creator                         : LaTeX with hyperref package
Producer                        : pdfTeX-1.40.12
Keywords                        : ImageJ, Scientific Digital Image Processing
Create Date                     : 2011:12:27 21:53:33-05:00
Modify Date                     : 2011:12:27 21:53:33-05:00
Trapped                         : False
PTEX Fullbanner                 : This is pdfTeX, Version 3.1415926-2.3-1.40.12 (TeX Live 2011) kpathsea version 6.0.1
EXIF Metadata provided by EXIF.tools

Navigation menu