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 Threshold—Bernsen 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 Threshold—Phansalkar 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 | Measure—RawIntDens | |
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 |