rootreader2d v4 users guide
TRANSCRIPT
RootReader2D Users Guide For RootReader2D Version 4.3.2
1
Contents
4
5
6
6
8
15
18
26
I. About RootReader2D
II. System Requirements
III. Using RootReader2D
i. Obtaining and use ofRootReader2D
ii. Menus and Icons
iii. Processing an Image
a. Open an image file
b. Region of Interest
c. Thresholding
d. Modifying Threshold Points
e. Skeletonization
f. Building segments
g. Selecting Roots
h. Modifying Selected Roots
i. Measuring
iv. Setting Parameters
a. Set Pencil/Eraser Size
b. Set Threshold
c. Set Dust Removal Filter
d. Set Filling Filter
e. Set Scale
f. Set Error Criterion
v. Options
a. Image Processing
2
b. Root Selecting
c. Measuring
d. Saving
vi. View Functions 21
a. Zoom In/Zoom Out
b. Navigating an Image
c. View Thresholded Points
d. View Skeleton Points
e. View Vertex Points
f. View Selected Roots
vii. Batch Capabilities 32
a. Batch Processing
b. Batch Printing Measurements to Log
c. Batch Adding File Info
viii. Logs and Information Window 37
a. Processing Log
b. Measurement Log
c. Image Information Window
ix. Saving 40
a. Saving the Image Processing Information
b. Saving the Measurement Log
c. Saving the Processing Log
x. Example I – Maize Primary, Basal, and Lateral 41
Root Length Measurement
xi. Example II – Sorghum Primary Root Length 55
Measurement and Lateral Root
Count off of Primary Root
xii. Example III – Arabidopsis Primary Root Length 66
Measurements
3
xiii. Example IV – Rice Total Root System Length 67
Measurement
IV. Appendix 68
i. Lighting and Camera Arrangements 68
a. Polarized Light Setup
b. Unfiltered Light Setup
c. Oblique Light Setup
4
I. About RootReader2D
RootReader2D V4.3.0 is a program designed to assist with root length
measurement from digital images, specifically focusing on high‐throughput
analysis of total root system length and selected root types of interest (eg.
primary root length). It incorporates several pre‐processing, processing and analysis features into a single intuitive and easy to use interface.
RootReader2D has been expanded to perform lateral root counts from
selected roots. It has been adapted to work roots systems that are grown in
gellan gum, sand, agarose plate, or Hydroponics.
Current Version and Release Information:
RootReader2D
Current Version: 4.3.2
Last Update: July 18, 2011
Authors: Dr. Randy Clark, Dr. Dave Schneider, Dr. Tyler Davis
PI: Dr. Miguel Pineros
Location: Robert Holley Center, USDA‐ARS, Ithaca, NY, USA
Email: [email protected]
Website: http://www.plantmineralnutrition.net/software/
rootreader2d/downloads/index.html
Google Group: http://groups.google.com/group/rootreader2d
5
System Requirements
RootReader2D requires that your computer system has Java version 6.0* (also called Java version 1.6) or higher. To check which version of java your system is
running go to:
http://www.java.com/en/download/installed.jsp
RootReader2D works optimally if your system has at least 2.0 GB of RAM.
RootReader2D also requires that your mouse (or touchpad) have both left click
and right click buttons and a center mouse wheel. Keyboard commands may be
used in place of the center mouse wheel, but left and right click buttons are
necessary. For Macs with only one button mice configurations, right clicking can
be achieved by holding the control key down and clicking.
*Make sure that your JAVA security settings are set to a level less than thehighest level to ensure that your system will download and run theRootReader2d.jar file. Security Settings can be accessed through the JAVA controlpanel under the security tab.
6
II. Using RootReader2D
i. Obtaining and Using RootReader2D
RootReader2D can be downloaded directly: http://www.plantmineralnutrition.net/software/rootreader2d/downloads/index.html
The new stand-alone version of RootReader2D (version 4.3) no longer requires Java Web Start (JAWS) or access to our website. The previous functions of RootReader2D have remained the same. Users with older versions of RootReader2D will need to download this new version.
Installation help can be found here: http://www.plantmineralnutrition.net/software/rootreader2d/setup/ index.html
7
8
ii. Menus and Icons
File Menu:
Open ‐ Open an image file (and .RR2Dat data if available)
Save ‐ Save an .RR2Dat data file and a thresholded image if selected in Options menu
Previous Image ‐ Close the current image and open the previous image in the current folder
Reset ‐ Reset current image (removes all processing information that has not been saved)
Next Image ‐ Close the current image and open the next image in the current folder
Batch Process ‐ Batch process a folder of images
Batch Print ‐ Batch print processing parameters and measurements from a folder of
processed images with .RR2Dat files to the Measuring Log
Batch Add Plant Info ‐ Batch add plant information (genotype, treatment and comments) to a
folder of images
View Menu:
9
Show Processing Log checkbox ‐ Show/Hide Processing Log window
Show Image Information Window checkbox ‐ Show/Hide Image Information window
Show Measuring Log checkbox ‐ Show/Hide Measuring Log window
Show Threshold Points checkbox ‐ Show/Hide threshold points on image
Show Skeleton Points checkbox ‐ Show/Hide skeleton points on image
Show Vertex Points checkbox ‐ Show/Hide vertex points on image
Show Selected Roots checkbox ‐ Show/Hide selected roots on image
Filters Menu:
Threshold ‐ Threshold the image using set threshold parameters
Skeletonize ‐ Skeletonize the threshold points
Build Segments ‐ Build the segments from the skeleton points using set parameters
Modify Menu:
Set Region of Interest ‐ Set a region of interest to process
Modify Roots ‐ Modify selected roots
Next Root ‐ Switch to next selected root to modify
10
Erase Root ‐ Erase the current root from selected roots
Measurement Menu:
Set Threshold ‐ Set threshold parameters
Set Dust Removal Filter ‐ Set dust removal filter parameters
Set Filling Filter – Set filling filter parameters
Set Scale ‐ Set the scale of the image
Set Error Criterion ‐ Set error criterion used during segment length estimation
Set Calibration Parameters ‐ Set parameters for checking calibration grid lengths
Check Calibration Grid Lengths ‐ Measure the average grid length in selected region of a
calibration grid image
Measure ‐ Measure the root system
Options Menu:
11
Image Processing Sub‐Menu:
Dark roots on a bright background or
Bright roots on a dark background radiobuttons ‐ Specified lighting conditions of the root image
Fixed, Adaptive Min/Max, Double
Adaptive, or Double Adaptive Blur Thresholding radiobuttons ‐ Specified root thresholding technique
Use Dust Removal Filter checkbox ‐ Run a dust removal filter after thresholding the image
Use Filling Filter checkbox ‐ Run a gap filling filter after thresholding and/or dust removal
Reduce Unnecessary Endpoints checkbox ‐ Remove unnecessary endpoints before segment
generation (typically will speed the program and
reduce storage requirements when saving RR2Dat
data files)
Find Shortest Paths checkbox ‐ Find the shortest paths between all connected vertices (will
slow the program and increase the storage requirements
when saving RR2Dat data files, but will allow specific roots to
be selected)
12
Root Selecting Sub‐Menu:
Selected roots share a common endpoint radiobutton ‐ All selected roots will start from the
same point/vertex
Selected roots have independent endpoints radiobutton ‐ All selected will start from
independent points/vertices
Automatic prediction of furthest endpoint checkbox ‐ Automatically predict furthest end
endpoint from the selected start points
Measuring Sub‐Menu:
Count number of laterals off selected roots checkbox ‐ The number of lateral roots that
propagate from the selected roots will
be counted
Count number of laterals off selected roots checkbox – Total length of roots that are
connected to a selected root, including
the selected root
13
Saving Sub‐Menu:
Save xml data file checkbox ‐ Save RR2Dat data file with processing and length information
when saving
Save thresholded image checkbox ‐ Save png image file of thresholded root system points
when saving
Batch Processing Sub‐Menu:
Process all subfolders ‐ When batch processing RootReader2D will process all image
subfolders of the selected folder
Help Menu:
RootReader2D Help ‐ Get help with using RootReader2D
About RootReader2D ‐ Get information about RootReader2D
14
Toolbar Icons:
Open Image
Save
Previous Image
Reset Image
Next Image
Threshold
Skeletonize
Build Segments
Modify Selected Roots
Next Selected Root
Erase Selected Root
Modify Threshold Points
Region of Interest
Measure
Batch Process
Batch Print
13
iii. Processing an Image
a. Opening an Image File:
To open an image file, go to the “File” menu and click “Open” or click the
icon. In the Open navigation window that appears, navigate to and
select the desired image file, then click the “Open” button at the bottom of
the selection window. If there is an associated RR2Dat data file in the same
folder as the selected image file, it will be interpreted and opened as well.
(Notes: RootReader2D can open images of the following format ‐ tif, tiff, jpg, jpeg, gif, and
png; RootReader2D works with both grayscale and RGB color image files, but operates
faster using grayscale. If color information is not needed, convert your images to
grayscale before using RootReader2D to process and analyze them.)
b. Region of Interest
To specify a region of interest (ROI), click the icon. Then left click and
drag a rectangle around the region of the image you would like to select for
processing. A blue border will be drawn around the region that will be
processed. All areas outside the border will not be included when
processing. To reset the specified area (reset to ROI to be whole image), click
twice on the icon. (Note: a ROI can only be selected before thresholding or
skeletonization of the image.)
c. Thresholding
To threshold the image file, go to the “Filters” menu and click “Threshold”
or click the icon. Thresholding is used to separate the roots from the
background in the image. After thresholding, cyan points will be overlaid
14
on the root in the image. See pages 18‐22 for details on selecting
thresholding options.
d. Modifying Threshold Points
Occasionally the user will need to add or remove points from the threshold
root points that were determined during thresholding (for instance, to fill in
a broken section of the root). To do so the user must modify the threshold
points. To begin modifying the threshold points, go to the “Modify” menu
and click “Modify Threshold Points” or click the icon. The threshold
root points will appear in bright cyan on the image. To add points, left click
and drag on the image. Points that were added to the threshold root
points will appear in bright cyan on the image. To remove points, hold the
shift key down and left click and drag on the image. Points that were
removed will no longer appear in bright cyan on the image. To exit the
modify threshold points, and finalize any changes go to the “Modify” menu
and click “Modify Threshold Points” or click the icon. For details on
how to set the pencil/eraser size when modifying the threshold points, see
page 18. (Note: Modify Threshold Point mode can be entered anytime after
thresholding, but all previous skeletonization, segment building, and root selecting data
will be lost)
e. Skeletonization
To skeletonize the thresholded root system, go to the “Filters” menu and
click “Skeletonize” or click the icon. Skeletonization is a pixel erosion
technique that simplifies the thresholded roots points into series of one pixel
wide lines. After skeletonization the skeleton lines will appear in red on the
image.
15
f. Building Segments
To build the segments from the skeleton, go to the “Filters” menu and click
“Build Segments” or click the icon. This process breaks the skeleton into
segments, calculates the length of those segments and determines the
shortest path from all segment endpoints to all other connected segment
endpoints* (*if the option is selected). After building these segments, the
segment endpoints will appear as green circles on the image. In order to
accurately estimate the length of each segment, the image scale and an error
criterion parameter must be set before the segments are built. See page 24
for details on how to set the image scale and error criterion.
g. Selecting Roots
Selecting roots allows one to measure specific roots of interest (for example
the primary or seminal roots). To define a root at least two endpoints are
needed, one for the start and one for the end of the root. If the option is
selected, RootReader2D will automatically predict the end of the root after
each start point is provided. To provide a start point, after building the root
segments, hold the left click near the desired starting point of the root (for
example the seed). A yellow circle will appear on the image at the start
endpoint. If RootReader2D has not been set to automatically predict the end
endpoint, hold the left click near the desired ending point of the root. A blue
circle will appear on the image at the end endpoint. If desired RootReader2D
can be set to use a common start endpoint for all selected roots or
independent start endpoints for all selected roots. For details on how to set
root selecting options, see page 27‐28.
16
h. Modifying Selected Roots
On occasion RootReader2D fails to determine the correct path along the
desired root from the start to the end endpoint. To correct this, the
generated path must be modified by adding intermediary endpoints along
the path. To begin modifying the selected roots, go to the “Modify” menu
and click “Modify Roots” or click the icon. The selected root that is to be
modified appears blue in the image, with endpoints being represented as
yellow, blue and orange numbers. To activate another root, go to the
“Modify” menu and click “Next Root” or click the icon. To erase the
activated root, go to the “Modify” menu and click “Erase Root” or click the
icon. To modify the path of the activated root, hold the shift key and
select a segment endpoint along the path by left clicking and holding on the
desired endpoint to modify. Prior to selecting, the points able to be modified
will appear encircled by a cyan ring as the mouse is moved and the shift key
is pressed down. When an endpoint is selected the ring will first turn white
then pink and then the new intermediary endpoint will be added labeled
with a new orange number. (Note: Do not release the clicked left mouse button until you
have moved the new intermediary endpoint to the desired position in the skeleton.) To move
the new endpoint, continue to the hold down the shift key and left mouse
button, and drag the endpoint to the new position the in the skeleton. The
selected path will automatically be adjusted and displayed in real‐time as you
move the new endpoint. The new path will appear in blue on the image.
Once all the selected roots have been correctly modified, the modify mode
must be exited before any other operations can be performed. To exit the
modify mode, go to the “Modify” menu and click “Modify Roots” or click the
icon.
17
i. Measuring
To measure the total root system and all selected roots, go to the
“Measurement” menu and click “Measure” or click the icon.
Root traits that are currently measured:
Longest Root Length – length of the longest selected root, (cm)
Total of Selected Root Lengths – total length of all the selected roots, (cm)
Total Root System Length – total length of the whole root system, (cm) (Note: this is also
the total length of skeleton in the image)
Individual Root Lengths – individual lengths of each selected root, (cm)
Total Lateral Root Count – total number of lateral root that emerge from the all selected
roots
Individual Root Lateral Root Count – number of lateral roots that emerge from individual
selected roots
Connected Root Length – total length of roots that are connected to a selected root,
including the selected root, (cm)
18
iv. Setting Parameters
a. Set Pencil/Eraser Size
To set the pencil/eraser size, go to the “Modify” menu and click “Set
Pencil/Eraser Size”. The Set Pencil/Eraser Size window will appear.
The pencil/eraser size is used when modifying the threshold points. The
size that is entered will be half the size of the box drawn when the user
drags the cursor on the image to add and/or remove threshold points. (Note: The maximum size that can be entered is 25. If the size is set higher than 25, the pencil/eraser
half size will be set by default to 25.)
b. Set Threshold
Before setting the threshold parameters, first go to the “Options” menu and
indicate the lighting type and desired thresholding technique. The two
available lighting types are: 1) Dark roots on a bright background; 2) Bright
roots on a dark background. (Note: if the “Dark roots on a bright background” radiobutton is selected the pixel intensities will automatically be inverted before thresholding.)
The four available thresholding techniques are: 1) Fixed thresholding; 2)
Adaptive Min/Max thresholding; 3) Double adaptive thresholding; 4) Double
adaptive blur thresholding. After specifying the lighting type and threshold
technique go to the “Measurement” menu and click “Set Threshold”. A Set
Threshold window corresponding to the selected thresholding technique will
appear.
19
The thresholding techniques and the required parameters are briefly
described in the following section:
1) Fixed Thresholding
This technique should be used when the background lighting is uniform
and the intensity of all the roots in the image does not vary. For this
technique a fixed thresholding level between 0 and 255 is entered via the
slider. For dark root systems on bright backgrounds, if the pixel value is
higher than (darker) the entered fixed threshold level, the pixel will be set
as a root pixel, otherwise it will be set as a background pixel. For bright
root systems on dark backgrounds, if the pixel value is equal to or higher
than (brighter) the entered threshold level, the pixel will be set as a root
pixel, otherwise it will be set as a background pixel.
20
2) Adaptive Minimum/Maximum Thresholding
This technique should be used when the background lighting is not
uniform and the intensity of the main root pixels are never equal to the
intensity of any background pixels in the image. These thresholding filters
was designed isolate the roots from the background and prevent gaps
from forming at root junctions during thresholding. Four parameters are
needed. The first is “Maximum Threshold” which is the maximum pixel
intensity value that can be set to be background. If the pixel intensity is
greater than the entered integer value, than it is automatically set as a
root pixel. The second is “Minimum Threshold” which is the minimum
pixel intensity value that can be set to be a root pixel. If the pixel intensity
is less than the entered value, than it is automatically set as a background
pixel. The third is “Half Kernel Size” which is half the local kernel size. The
local kernel size is the size of a square region around the central pixel that
is used to determine if the central pixel is part of the root system or
background. The forth is “Percent Above Local Average” which is used to
determine if the central pixel should be set to be a root pixel or
background pixel. If the intensity value of the central pixel is the entered
percentage or more greater than the average pixel intensity value of the
local kernel region, than it is set to be root pixel, otherwise it set to be a
background pixel.
21
3) Double Adaptive Thresholding
This technique should be used when the background lighting is not
uniform and the intensity of the main root pixels are occasionally equal to
or less than the intensity of some background pixels. This thresholding
filter was designed to isolate the roots from the background and prevent
gaps from forming at root junctions during thresholding. This filtering
method passes a local adaptive filter over the entire image then passes
another local adaptive filter over the entire image again, this time
excluding the root pixels determined during the first pass. For each local
adaptive filter pass, the kernel size (entered as “Half Kernel Size”) and a
percentage above the local kernel pixel intensity average (entered as
“Percent Above Local Average”) must be set.
22
4) Double Adaptive Blur Thresholding
This technique builds off the Double Adaptive thresholding technique
should be used with fine root system images (eg. rice seedlings) where the
background lighting is not uniform and the intensity of the main root
pixels are occasionally equal to or less than the intensity of some
background pixels. This thresholding filter was designed to isolate the
roots from the background, prevent gaps from forming at root junctions
during thresholding and smooth any artifacts that may arise from the need
for increased thresholding sensitivity when working with fine root
systems. Similar to the Double Adaptive thresholding technique this
filtering method first passes a local adaptive filter over the entire image
then passes another local adaptive filter over the entire image again (See
Double Adaptive Thresholding above). Next the filter, removes dust/root
objects that are smaller than or equal to the entered integer number of
connected pixel from the thresholded image and then passes a 3x3
blurring filter over the thresholded image the specified “Number of
Blur Passes”. Afterwards the filter uses a fixed thresholding technique and
the user specified “Fixed Threshold Level” to produce the final thresholded
image/root pixels.
23
c. Set Dust Removal Filter
To set and use a dust removal filter, first go to the “Options” menu and select
the “Use Dust Removal Filter” checkbox. Then go to the “Measurement”
menu and click “Set Dust Removal Filter”. The Set Dust Removal Filter
window will appear.
The dust removal filter will remove any objects that are smaller than or equal
to the entered integer number of connected pixel (specifically, 8‐connected
pixels).
d. Set Filling Filter
To set and use a filling filter, first go to the “Options” menu and select the
“Use Filling Filter” checkbox. Then go to the “Measurement” menu and click
“Set Filling Filter”. The Set Filling Filter window will appear.
This filter runs a square growing kernel then a square shrinking kernel of the
same size on the threshold points. This will help to smooth and fill any small
holes or gaps in the thresholded root system. The kernels dimension/sizes
24
are 2 times the entered integer plus 1 by 2 times the entered integer plus 1.
For example: if 1 is the entered integer, the kernel sizes are 3x3; if 2 is the
integer, the kernel sizes are 5x5.
e. Set Scale
To set the scale of the image, go to the “Measurement” menu and click “Set
Scale”. The Set Scale window shown below will appear.
The scale of the image is also the resolution of the image in pixels per cm.
The scale can be acquired from a calibration grid image or from an image of
a ruler. Note: when the scale is set, the error criterion (next) will
automatically be readjusted to correctly correspond with the new scale.
f. Set Error Criterion
To set the error criterion, go to the “Measurement” menu and click “Set
Error Criterion”. The Set Error Criterion window shown below will appear.
The error criterion is used during the segment building. It is a control
parameter or constraint that is used during the curve estimation and
segment length calculation. Note: RootReader2D automatically adjusts the
25
error criterion for the entered scale, but it can also be manually modified
after the scale has been set.
26
v. Options
a. Image Processing
To set image processing options, go to the “Options” menu and then the
“Image Processing” sub‐menu.
Image lighting types – if the “Dark roots on a bright background” type is selected,
RootReader2D will turn dark objects/pixels to root pixels and bright pixels to background
pixels when thresholding. If the “Bright roots on a dark background” type is selected,
RootReader2D will turn bright objects/pixels to root pixels and dark pixels to background
pixels when thresholding.
Thresholding techniques – RootReader2D will use the selected thresholding technique
during thresholding of the image. See page 18‐22 for more details on the thresholding
techniques.
Post‐thresholding options – if the “Use Dust Removal Filter” option is selected,
RootReade2D will run a dust removal filter after thresholding. See page 23 for more
details on the dust removal filter. If the “Use Filling Filter” option is selected,
RootReader2D will run a filling filter after thresholding or thresholding and dust removal.
See page 23‐24 for more details on the filling filter.
“Reduce Unnecessary Endpoints” option – if selected, RootReader2D will remove
unnecessary endpoints that were created during skeletonization and segment generation.
These unnecessary endpoints usually belong to cluster regions that contain multiple
endpoints that can be simplified to one or a few endpoints. This option should typically
27
be selected as it reduces the number segments in the graph which reduces the chances of
over‐estimation of total root system lengths and processing time when calculating
shortest paths.
“Find Shortest Paths” option – if selected, RootReader2D will determine the shortest
paths between all connected segment endpoints and all other connected segment
endpoints during the segment building process. This enables specific roots of interest to
be selected. Without this option selected, roots of interest cannot be selected and only
the whole root system length can currently be measured.
b. Root Selecting
To set root selecting options, go to the “Options” menu and then the “Root
Selecting” sub‐menu.
Selection of root endpoints options – if the “Allow any skeleton point to be selected as a
root endpoint” option is selected, all skeleton points can be selected as endpoints of root.
If it not selected, only segment endpoints (or the green circles) can be selected as root
endpoints. In most cases it is not necessary to select this option, so it is not
recommended, but sometimes it may be necessary when a segment endpoints are not
created near the seed. For example, when imaging Arabidopsis that have been grown
hydropically and placed on agar plates, sometime the endpoints are not created near the
seed, so this option must be used to accurately measure primary root lengths.
Selection of root endpoints options – if the “Selected roots share a common endpoint”
option is selected, all roots that are selected by the user will start from the first endpoint
that was chosen. For example, this option should be used if all the roots of interest start
from a common point, eg. the seed. Once the first endpoint has been selected, only the
end endpoints for all roots of interest will need to be selected. If the “Selected roots have
independent endpoints” option is selected, then all selected roots have independent start
and end endpoints. For each root of interest, a start endpoint and an end endpoint will
28
need to be specified/selected. For example, this option can be used if the roots of interest
do not start from the same place on the plant or in the image.
“Automatic prediction of furthest endpoint” option – if selected, this option has
RootReader2D to predict and select the furthest end endpoint for each start endpoint
that is provided. For example, if one is interested in measuring the primary root,
commonly the longest root coming from the seed, RootReader2D will predict the path of
the primary root if the seed is selected as a start endpoint.
c. Measuring
To set measuring options, go to the “Options” menu and then the
“Measuring” sub‐menu.
“Count number of laterals off selected roots” option – if selected, RootReader2D count the
number of laterals that emerge from the selected roots. (Note: Overlapping roots will be
counted as laterals. This measure is typically not exact and should only be used as an estimate.)
“Measure total root length connected to selected roots” option – if selected,
RootReader2D will measure the total of roots connected to a given root or root segment.
(Note: The length of the selected root or root segment will be included in the measurement.)
29
d. Saving
To set saving options, go to the “Options” menu and then the “Saving” sub‐
menu.
“Save RR2Dat data file” option – if selected, RootReader2D will save an RR2Dat data file
when the image is saved. This RR2Dat file will contain all measurement, processing and
parameter information about the associated root system. (Note: The RR2Dat data files can get extremely large, >200 MB, if the root system in the image is complex and the “Find Shortest Path” image
processing option is selected.)
“Save thresholded image” option – if selected, RootReader2D will save the threshold
points from the image to png image file when the image is saved. The saved png image
will have the same filename as the original image with “‐thresholded” appended onto the
filename before the png extension. This png image of the thresholded root system can be
imported into other root analysis software for measurement.
e. Batch Processing
To set batch processing options, go to the “Options” menu and then the
“Batch Processing” sub‐menu.
“Process all subfolder” option – if selected, RootReader2D will also process any images
that are contained in subfolders of the selected folder when batch processing.
30
vi. View Functions
a. Zoom In/Zoom Out
RootReader2D allows the user to efficiently navigate and zoom in and out on
the image using only the mouse. Some keyboard options are also available.
Zoom In – to zoom in, place the mouse cursor over the image (or image
window) and roll the center mouse wheel away from you or activate the
image window and press the Alt and “+” key simultaneously.
Zoom Out – to zoom out, place the mouse cursor over the image (or image
window) and roll the center mouse wheel towards you or activate the image
window and press the Alt and “‐“ key simultaneously.
Zoom All – to zoom all, activate the image window and press the Alt and “a”
key simultaneously.
b. Navigating an Image
RootReader2D allows the user to efficiently navigate around the image using
only the mouse.
Navigation – to navigate around the image, right click and drag in the image
window. The image will move with the dragging motion.
31
c. View Thresholded Points
To show/hide the cyan threshold points overlay, go to the “View” menu and
select/deselect the “Show Threshold Points” checkbox. (Note: Image must be
thresholded before the “Show Threshold Points” checkbox becomes functional.)
d. View Skeleton Points
To show/hide the red skeleton points, go to the “View” menu and
select/deselect the “Show Skeleton Points” checkbox. (Note: Image must be
thresholded and skeletonized before the “Show Skeleton Points” checkbox becomes
functional.)
e. View Vertex Points
To show/hide the green vertex points, go to the “View” menu and
select/deselect the “Show Vertex Points” checkbox. (Note: Image must be
thresholded, skeletonized and segments built before the “Show Vertex Points” checkbox
becomes functional.)
f. View Select Roots
To show/hide the orange selected roots, go to the “View” menu and
select/deselect the “Show Selected Roots” checkbox. (Note: Image must be
thresholded, skeletonized and segments built and roots selected before the “Show
Selected Roots” checkbox becomes functional.)
32
vii. Batch Capabilities
Batch processing allows repetitive tasks to be performed on a group of files
or images automatically. For example, in RootReader2D thresholding,
skeletonization, and segment building are repetitive tasks needed for
analyzing and measuring images. Batch processing allows many images to be
processed (thresholded, skeletonized, and segments built) at one time using
the same processing parameters. This helps to save time as the user will not
have to manually guide the software through each step for all the images.
a. Batch Processing
To batch process a set of images, first move all your root images into a blank
folder and perform any pre‐processing of the images (eg. image file format
conversion, conversion from RGB color to grayscale format, cropping, etc).
Secondly set the threshold technique (fixed, adaptive min/max, double
adaptive, or double adaptive blur) and related thresholding parameters, ie.
the image scale, and the error criterion. Then select and set any post‐
thresholding options. (Note: the setting should be checked and tested on at least one
or two images prior to batch processing.) Next, go to the “File” menu and click
“Batch Process” or click the icon. The Batch Process window shown
below will appear.
Click the “Browse…” button and a Set Source selection window will appear.
Navigate to the folder that contains the pre‐processed images and click the
“Set Source” button. (Note: if some desire images to be processed are also contained
in subfolders of the selected folder, go to the “Options” menu and select the “Process all
33
subfolders” option.) Now click the “Run” button in the Batch Process window
and batch processing will begin. (Notes: the image files will not appear in the Set
Source window when navigating to the folder containing the image files; when batch
processing it may appear as if the program has frozen, if you think the program has
unexpectedly frozen, check the source folder containing your image file to see if
associated.RR2Dat data files are being generated, it may take several minutes to process
and generate RR2Dat data files for each image.)
b. Batch Printing Measurements to Log
Once you have finished processing, selecting roots and saving your images,
you may print out the root measurements to the Measuring Log as a batch.
To print the root measurements to the Measuring Log, go to the “File” menu
and click “Batch Print” or click the icon. The Measuring Log window
shown below will appear.
Click the “Browse…” button and a Set Source selection window will appear.
Navigate to the folder that contains the images with associated RR2Dat data
files and click the “Set Source” button. Now click the “Run” button in the
Batch Print window and batch printing will begin.
If you would like to clear the Measuring Log of all data before batch printing
new measurements, selected the Clear measuring log prior to printing
checkbox. If left unselected, the new measurement will be appended onto
the bottom of the Measuring Log.
34
c. Batch Adding File Info
Batch adding file info allows genotype and treatment information to be
added to the associated RR2Dat data files and can be used to help keep track
of any plant information from large scale screening/phenotyping
experiments both during processing and further analysis. These screening
experiments usually contain 20 or more tubs that have been separated into a
control and a treatment, with various arrangements of plant genotypes
within these tubs. (Note: The experimental layout from these experiments should be ordered and
symmetric to use the batch adding info capabilities.)
Once you have finished batch processing your images, you may batch add
file/genotype/treatment info to the associated RR2Dat data files. To batch
add info to the RR2Dat data files, go to the “File” menu and click “Batch Add
Plant Info”. The Batch Add Information window shown below will appear.
35
Click the “Browse…” button and a Set Source selection window will appear.
Navigate to the folder that contains the images and associated RR2Dat data
files and click the “Set Source” button.
Next, enter tub information in the Tub Information Section:
Number of Tub – is the number of tubs used per treatment
Number of Row – is the number of rows of plants in each tub
Number of Columns – is the number of columns of plants in each tub
Tub Layout Style – describes how the genotypes are arranged in the tubs.
There are two choices: Random – indicates that there is no pattern
and that the genotypes have been assigned to random spots in the
tub; One Line Per Row – indicates that only one genotype/line was
planted into each row of the tub
Next, enter photography information in the Photography Information
Section:
Photography Tub Order – is the order in which the tubs were photographed. There are
two choices: Block – indicates that the pictures were taken in
treatment blocks (ie. all the tub from one treatment were
photographed together, then the tubs from the next
treatment were photographed, etc…); Alternate – indicates
that the treatment tubs were alternated during photography
(ie. tub 1 of treatment 1, then tub 1 of treatment 2, … , then
tub 2 of treatment 1, then tub 2 of treatment 2, etc…)
Blank Photos – describes if and when blank photos were taken. There are five choices:
None – means that no blank photos were taken; Every Plant (Before
Plant) – means that a blank photo was taken before every plant was
photographed; Every Plant (After Plant) – means that a blank photo was
taken after every plant was photographed; Start/End of Every Row –
means that a blank photo was taken at the start and end of every row (Note: within the same tub, the blank photo at the end of one row acts as the blank
36
photo for the start of the next row, ie. if there are 10 rows in the tub, than 11 blank
photos will be taken.); Start/End of Tub – means that a blank photo was
taken before and after taking the picture of plants in the tub
Number of Treatments – is the number of treatments levels used, including the control
Next, enter the information you would like to add in the Information to Add
Section:
List of Lines Corresponding
to Tub Order and Layout – the list of genotypes in the tubs is entered here. If you selected Random for the Tub Layout Style, then you will have to enter a comma separated list of all the genotypes in the order that they were photographed, excluding preset blanks. If you selected One Line per Row for the Layout Style, then you will have to enter a comma separated list of the genotypes in each row in the order that the rows were photographed
List of Treatments – the comma separated list of treatments is entered here. This list
should be entered in the order that the treatments where
photographed, including the control
Comments – any comments about the whole experiment can be entered here (Note: These comments will be added to every RR2Dat data file.)
After you have entered the source folder, tub layout information,
photography information, and the information you would like to add, click
the “Run” button at the bottom of the Batch Add Information window and
the entered information will be added to the existing RR2Dat data files in the
folder. (Note: If any entry mistakes were detected, the error will appear in the
Processing Log.)
37
viii. Logs and Information Window
a. Processing Log
The Processing Log is a log where RootReader2D records all the users
processing actions. An example of the Processing Log is shown below.
To show/hide the Processing Log, go the “View” menu and select/deselect
the “Show Processing Log” checkbox.
To clear the information in the Processing Log, click the “Clear” button at the
bottom of the Processing Log.
b. Measurement Log
The Measuring Log is a log where RootReader2D records the measurements
when the user either measures or batch prints the root measurements. An
example of the Measuring Log is shown below.
38
To show/hide the Measuring Log, go the “View” menu and select/deselect
the “Show Measuring Log” checkbox.
To clear the information in the Measuring Log, click the “Clear” button at the
bottom of the Measuring Log.
39
c. Image Information Window
The Image Information window displays pixel information and details about
the image that has been saved in the associated .RR2Dat data file. This
information includes the pixel coordinates and value, image scale, genotype,
treatment, and comments about the plant in the image. An example of the
Image Information window is shown below.
To show/hide the Image Information window, go the “View” menu and click
the “Show Image Info Window” checkbox.
To add/remove plant information to the Image Information window and to
the associated RR2Dat data file, use the Image Information window to add
the new information in the Genotype, Treatment, or Comments section of
the Image Information window. Then click the “Update” button to update
the active data that is associated with the current image. After updating the
information, go to the “File” menu and click “Save” or click the icon to
save the new plant information to associated RR2Dat data file.
40
ix. Saving
a. Saving the Image Processing Information
The processed image data and information can be saved in RR2Dat data files.
These RR2Dat data files contain processing information and parameters as
well as root measurement information. These RR2Dat data files will have the
same file name and will be stored in the same folder as their associated
image files. No changes will be made to the original image files when the
processing is performed and saved. If the option is selected, a color png
image file with the thresholded root system may also be saved, see page 27
for detail on saving options.
To save the processed image data (and/or the thresholded root system a png
image file), go to the “File” menu and click “Save” or click the icon.
(Note: Any existing RR2Dat data or png image files with the same filename will
automatically be overwritten.)
b. Saving the Measurement Log
The measurement in the Measuring Log can be saved as a comma delimited
csv file. This file can be opened in spreadsheet and statistical analysis
programs for modification and data analysis.
To save the measurements in the Measuring Log, click the “Save” button
located at the bottom of the Measuring Log. In the Save selection window
that appears, choose the folder where to store the txt measurement file and
click the “Save” button. (Note: The saved measurement filename can be changed but
must have a .csv extension to be open and delimited properly.)
41
c. Saving the Processing Log
RootReader2D will record all the user actions to a processing log. To save the
recorded processing steps from the Processing Log, click the “Save” button
located at the bottom of the Processing Log. In the Save selection window
that appears, choose the folder where to store the txt processing file and
click the “Save” button.
42
x. Example I – Maize Primary, Seminal and Lateral Root
Length Measurement
In this section, a step by step example will be provided on how to measure
the primary, seminal, and lateral root length from a sample maize root image
with the RootReader2D software.
Background Information:
1) The sample maize plant in the image was 4 days old. Grown in a
replete hydroponic nutrient solution system at the Robert W Holley
Center for Agriculture and Health in Ithaca NY, USA
2) The image was taken with a digital SLR camera with a custom polarized
imaging setup
3) The resolution of the image is 120 pixels per centimeter, measured with
a calibration grid
4) The backlighting is dark and uniform with bright white roots
5) The image has been converted from RGB color to 8‐bit grayscale format
6) Any part of the shoot that was captured in the original image has been
erased.
43
Sample image filename: Tub01_0uM Al_Day3_071708_31‐grayscaled.tif
Step 1: Thresholding, Skeletonization and Segment Building (Note: these steps can be performed on many images with batch processing functions.)
1) Start RootReader2D and open the image by clicking on the icon and
selecting the root image with the Open window that appears.
2) Threshold the image – since the backlighting is uniformly dark with
bright roots, the fixed thresholding technique should work fine. Go to
the Options menu and select “Bright roots on a dark background” and
the Fixed Thresholding option. Then go to the Measurement menu, and
click on Set Threshold. In Set Threshold window, set the parameters and
44
threshold the image by clicking on the icon. See the thresholded
image below for parameters and thresholded levels.
3) Skeletonize the thresholded image by clicking the icon. See
Skeletonized image below. (Note: the thresholded points were hidden from the
view.)
45
4) Set the scale and error criterion. See Set Scale and Set Error Criterion
windows below for inputs used in current example.
5) Check to make sure the “Find Shortest Paths” option is selected in the
Options Menu in the Image Processing Sub‐Menu.
6) Build the segments by clicking the icon. See image with skeleton
and built segments and endpoints below.
46
Step 2: Root Selecting and Modification
1) Check to make sure the “Selected roots share a common endpoint” and
the “Automatic prediction of furthest endpoint” options are selected.
See the Root Selecting options shown below.
2) Zoom in and drag the maize seed towards the center of the image. See
the image below.
47
3) Select the start endpoint by holding the shift key down and left clicking
on the image where the primary root emerges from the seed.
4) After selecting the start endpoint (left click), the path of the primary
root will be predicted and will appear in yellow/orange. Zoom out to
view the whole predicted path. See the image below.
48
5) Since the “Selected roots share a common endpoint” option was
selected, to select the two basal roots in the image, left click on the
image where the two basal roots end. See the image below.
49
6) Since RootReader2D did not correctly select the path of the primary and
basal roots, the selected roots will have to be modified. To begin
modifying the selected roots, click the icon. The first root that was
selected will appear in blue.
7) Zoom in/zoom out and drag the image to navigate and move the image
for better viewing.
50
8) To correct the path of the selected root, a new intermediary endpoint
will have to be added to the path. To add a new intermediary endpoint
to the path, hold down the shift key and left click and hold then drag the
new endpoint to the desired new position in the image. (Note: when
adding multiple endpoints, select endpoints that come from section of the path that
you would like to modify.) Endpoints that are permanently part of the path
appear as orange numbers when in the modify mode.
51
9) Next, switch to the second selected root, click the icon. Zoom in on
the root and correct the path by adding an intermediary endpoint(s) to
the path.
52
10) Switch to the third root and correct the path by adding an
intermediary endpoint(s) to the path. See the images below.
53
11) Now that the paths of all three selected roots have been corrected,
the modify mode can be exited by clicking the icon. See the
image below.
54
Step 3: Saving Image Processing, Measuring Roots and Saving
Measurements.
1) Save the processing of the image in an associated RR2Dat data file by
clicking the icon.
2) Measure the root system by clicking the icon. The measurements
will be printed to the Measuring Log.
3) Save the Measuring Log data by clicking the Save button on the bottom
of the Measuring Log window. The data will be saved to a .csv file
(comma separated file) which may be opened with spreadsheet and
statistical analysis software.
Step 4: Calculating Primary, Seminal and Lateral Root Lengths
1) In most cases, the primary root length is Longest Root Length and the
primary root is also selected first (ie. Root 0).
2) To get the total of the seminal root lengths, subtract the primary root
length from the Total of Selected Root Lengths.
3) To get the total lateral root length in root system, subtract the total
selected root length from the Total Root System Length.
4) Individual root lengths of the primary and two seminal roots can also be
found in the saved .csv file as Root 0, Root 1 and Root 2, respectively.
55
xi. Example II ‐ Sorghum Total and Primary Root
Length Measurement and Lateral Root
Count off of Primary Root
In this section, a step by step example will be provided on how to measure
the total root system and primary root lengths from a sample sorghum root
image with the RootReader2D software.
Background Information:
1) The sample sorghum plant in the image was 6 days old. Grown in a
replete hydroponic nutrient solution at EMBRAPA Maize and Sorghum
in Sete Legoas, MG, Brazil.
2) The image was taken with digital SLR camera with a lightbox for
backlighting
3) The resolution of the image is 164 pixels per centimeter measured with
a calibration grid
4) The backlighting is bright and non‐uniform with dark roots
5) The image has been converted from RGB color to 8‐bit grayscale format
56
Sample image filename: Tub02_Nov 6_Control_04‐grayscaled.tif
Step 1: Thresholding, Skeletonization and Segment Building (Note: these steps can be performed on many images with batch processing functions.)
1) Start RootReader2D and open the image by clicking on the icon and
selecting the root image with the Open window that appears.
2) Threshold the image – since the backlighting is non‐uniform with dark
roots of varying darkness, the fixed thresholding technique will not be
suitable, so the double adaptive thresholding technique will be used. In
Options menu in the Image Processing sub‐menu set the following
options. Then go to the Measurement Menu and click on Set Threshold,
then Set Dust Removal Filter, then Set Filling Filter and set the following
57
parameters shown below. Next, threshold the image by clicking on the
icon. See the thresholded image below.
58
3) Skeletonize the thresholded image by clicking the icon. See
Skeletonized image below. (Note: the thresholded points were hidden from the
view.)
59
4) Set the scale and error criterion. See the Set Scale and Set Error
Criterion windows below for inputs used.
5) Check to make sure the “Find Shortest Paths” option is selected in the
Options Menu in the Image Processing Sub‐Menu.
6) Build the segments by clicking the icon. See image with skeleton
with built segments and endpoints below.
60
Step 2: Root Selecting and Modification
1) Check to make sure the “Selected roots share a common endpoint” and
the “Automatic prediction of furthest endpoint” options are selected.
See the Root Selecting options shown below.
2) Check to make sure the “Count number of laterals off selected roots”
option is selected. See the Measuring options shown below.
3) Zoom in and drag the sorghum seed towards the center of the image.
See the image below.
61
4) Select the start endpoint by holding the shift key down and left clicking
on the image where the primary root emerges from the seed.
5) After selecting the start endpoint (Shift –left click), the path of the
primary root will be predicted and will appear in yellow/orange. Zoom
out to view the whole predicted path. See the image below.
62
6) Since RootReader2D did not correctly select the path of the primary
root, the path of the primary root will have to be modified. To begin
modifying the primary root, click the icon. The selected primary
root that will appear in blue.
7) Zoom in/zoom out and drag the image to navigate and move the image
for better viewing. See the image below.
63
8) To correct the path of the selected primary root, a new intermediary
endpoint will have to be added to the path. To add a new intermediary
endpoint to the path, hold down the ctrl key left click and hold, then
drag the new endpoint to the desired position in the image. (Note: when
adding multiple endpoints, select endpoints that come from section of the path that
you would like to modify.) Endpoints that are permanently part of the path
appear as orange numbers when in the modify mode. See the image
with corrected path for the second root below.
64
9) Now that the path of the selected primary root has been corrected,
the modify mode can be exited by clicking the icon. See the
image below.
65
Step 3: Saving Image Processing, Measuring Roots and Saving
Measurements.
1) Save the processing of the image in an associated xml data file by
clicking the icon.
2) Measure the root system by clicking the icon. The measurements
will be printed to the Measuring Log.
3) Save the Measuring Log data by clicking the Save button on the bottom
of the Measuring Log window. The data will be saved to tab‐delimited
txt file which may be opened in Microsoft Excel.
Step 4: Calculating Primary and Total Root Lengths and Lateral Root
Number off the Selected Primary Root
1) The primary root length is the Longest Root Length and is also labeled as
Root 0.
2) The total root system length is Total Root System Length.
3) The lateral root count off the selected primary root is the Total Selected
Root Lateral Count or Root 0 – Lateral Count.
66
xii. Example III ‐ Arabidopsis Primary Root Length
Measurements.
Coming soon.
67
xiii. Example IV ‐ Rice Total Root System Length
Measurement
Coming soon.
68
III. Appendix
More details on underlying processing and analysis algorithms coming
soon.
I. Lighting and Camera Arrangements
i. Polarized Light Setup
69
Currently used for: Maize, Sorghum, Rice, Soybean and Wheat.
ii. Unfiltered Light Setup
Currently used for: Maize and Sorghum and Rice.
70
iii. Oblique Light Setup
A setup diagram coming soon. Note: we have used an oblique lighting setup to image
Arabidopsis plants that were grown or placed on agarose plates.
Downloads - RootReader2D
http://www.plantmineralnutrition.net/software/rootreader2d/downloads/index.html[11/15/2017 10:40:39 AM]
Next
Docs » Downloads
RootReader2D is available to download from the linkbelow. For additional help, please also download theUser Guide.
File Type Version
RootReader2Dv4_3.jar JAR 4.3.1
RootReader2Dv4_User_Guide.pdf PDF 4.0.0
Previous
This software is provided by the USDA-ARS RootSystem Architecture Group at the Robert W. HolleyCenter for Agriculture & Health, Ithaca, NY.
Built with MkDocs using a theme provided by Readthe Docs.
RootReader2D
Home
Downloads
Setup
References
« Previous Next »