Skip to main content


Table 1 Steps in Root Hair Sizer (RHS) algorithm

From: Root Hair Sizer: an algorithm for high throughput recovery of different root hair and root developmental parameters

Step Description Main tools, plugins or interfaces used in Imagej Settings used for analysis presented in this paper
0 Requirement: one channel focused .tif images   Sum projection of a Z-stack containing five slices
1a Definition of custom measurement settings for the analysis: Dialog boxes interface  
  Position along the root axis where to start the analysis   0 µm
  Position along the root axis where to end the analysis   10,000 µm
  Width of the rectangular selection used to measure RH length   8 µm
  Interval for recovery of maximal RH size values   2, 10, 50 or 250
  Facultative step: give a name to the different class of annotations that the user could do manually in step 9.1 (e.g. Artefact, RHs in one side of the root shorter than the other…)
  Input folder definition for batch image analysis
  Output folder definition
Following steps are executed for each .tif image in input folder
2 Modification of image type to 8-bit   
3 Generation of a binary image of the root with its RHs   
 3.1b   Thresholding of step 2 image Auto Local ThresholdBernsen method, black background Radius: 5
 3.2   Shape smoothing   
  3.2.1b     Dilatation and erosion of step 3.1 image Dilate and Erode 5 times
  3.2.2     Holes filling in image 3.2.1 Fill Holes  
 3.3   Storage as ROI Analyze Particles—particles size: 0 to infinite pixels and ROI Manager  
4 Generation of a binary image for the root body alone (without RHs)   
 4.1b   Thresholding of step 2 image Auto Local ThresholdPhansalkar method, white background Radius: 100
 4.2   Shape smoothing   
  4.2.1b     Dilatation and erosion of step 4.1 image Dilate and Erode 10 times
  4.2.2     Holes filling in step 4.2.1 image File Holes  
  4.2.3b     Erosion and dilatation of step 4.2.2 image Erode and Dilate 12 times
 4.3   Background cleaning of step 4.2.3 image using the inverted selection of the root (with RHs) defined at step 3.3 ROI Manager and Fill  
 4.4   Inversion of step 4.3 image Invert  
 4.5   Storage as ROI Analyze Particles—particles size: 0 to infinite pixels and ROI Manager  
5 Generation of a binary image for the area covered by RHs alone (without root body)   
 5.1   Subtraction of step 4.4 Image from step 3.2.2 image Image Calculator  
 5.2   Background cleaning of step 5.1 image using the inverted selection of the root (with RHs) defined at step 3.3 ROI Manager and Fill  
 5.3   Storage as ROI ROI Manager-XOR  
6a Manual suppression of obvious thresholding errors remaining in the step 5.2 imagea Dialog box interface and Brush  
7 Storage in a ROI of the RH shape resulting from step 6 Create Selection and Make Inverse  
8 Definition of a root axis line (Root median line, RML)   
 8.1   Skeletisation of step 4.4 image Skeletonize  
 8.2   Recovery of the skeleton longest path Analyse Skeleton (2D/3D)  
 8.3a,c   Convert skeleton step 8.2 image into a segmented linec   
    Manual definition of the RT on this linea Dialog box interface  
 8.4b   Simplification of step 8.3 segmented line   1 segment kept every 200
 8.5a   RML adjustment Dialog box interface  
 8.6   Storage as ROI of automated and manually curated RMLs ROI Manager  
9 Definition of artefacts or any other comments on image   
 9.1a   Rough contouring of the zones to be highlighted Polygon Selection  
 9.2a   Naming (using remarks defined at step 1) of the highlighted zones Dialog box interface  
 9.3   Storage as ROI of rough contours from step 9.1 ROI Manager  
 9.4   Recovery of minimum and maximum positions of the rough contours along RML analysing the triangle ABC defined by one point of rough contour (apex A), and one segment of the RML (apexes B and C). AI is the median of the triangle (emerging from A), with I the intersection between AI and BC. D is the closest point from A on RML. Steps 9.4.1 to 9.4.3 are done for each point of the rough contour   
  9.4.1     Measurement of AI lengths for all RML segments and determination of the shorter one   
  9.4.2     Segmentation pixel by pixel of the closer RML segment and measurement of the distance to the apex A of each pixel. The pixel on RML associated with the shorter distance is called D   
  9.4.3     Measurement of the distance between the RT and D   
  9.4.4     Recovery of minimal and maximal lengths measured at step 9.4.3 for all rough contour points to store them in an array written to the results table   
10b Straightening of image obtain at step 5.2 using the custom RML from step 8.5 as a guide, with line width large enough to cover the root thickness Straighten RML segmented line width: 1500 pixels
11 Step 10 image binarization Make Binary  
12 Division by 255 of pixel intensities in step 11 image Divide − 255  
13 Step 12 image 90° rotation Rotate  
14 RH measurement. This step is done between the positions defined at steps 1, measuring first the left side of the root, then the right side   
 14.1   Creating a selection with width defined at step 1 on one half of the straighten root image (step 10)   
 14.2   Sum intensities of pixels included in the selection (this will give the number of RH pixels) and associate the result with the distance of the selection from the RT MeasureRawIntDens  
 14.3   Repeat steps 14.1 and 14.2 translating the selection by its width to scan the full length of the root   
 14.4   Using the interval width defined at step 1, recover the local maximum value within values measured at steps 14.2 and its distance from the RT. Proceeds the same search on next interval until all values measured at step 14.3 are analysed.   
 14.5   Convert pixels number recovered at step 14.4 into RH length: the RH pixels area in scanning selection is approximated to a rectangle with known width. The height of this rectangle can be deduced from the rectangle area formula: height = area/width. The length in pixel is then converted to µm   
15 Create a chart summarizing initial settings, maximal RH lengths in the defined interval and associated distances from the RT. A binary code indicates for each measurement if an annotation was done at step 9.4.4 (0 = no annotation, 1 = annotation present)   
16 Save the chart and the ROI generated all along the process   
  1. aManual step
  2. bStep that need to be adjusted in the algorithm source code depending of the processed images; c: strategy inspired from ImageJ discussion that won’t be develop here (