cs.CVMar 14, 2026
SaveImplementation and discussion of the Pith Estimation on Rough Log End Images using Local Fourier Spectrum Analysis method
Organizations: Instituto de Ingenieria Electrica, Facultad de Ingenieria, Universidad de la Republica, Uruguay · Sede Tacuarembo, CENUR Noreste, Universidad de la Republica, Uruguay
Abstract
In this article, we analyze and propose a Python implementation of the method "Pith Estimation on Rough Log End images using Local Fourier Spectrum Analysis", by Rudolf Schraml and Andreas Uhl. The algorithm is tested over two datasets.
Figures & tables
Figure 1: (a) RGB image of disk F02d from UruDendro [ 7 ] dataset, (b) The whole structure, called spider web , is formed by a center (which corresponds to the slice pith), rays and the rings (concentric curves). In the scheme, the rings are circles, but in practice, they can be (strongly) deformed as long as they don’t intersect another ring .
Figure 2: Pith detector pipeline. (a) Masked input image. The background is colored in white. (b) Local Orientation output. The normals to the local patch orientation with good certainty score are drawn. (c) Accumulator Space. (d) Pith’s prediction is colored in blue. Accumulator space maximums are colored in red.
Figure 3: (a) RGB image patch. (b) The Fourier Spectrum of the image patch shown in (a). (c) Preprocessed Fourier Spectrum of the same patch.
Figure 4: Local orientation estimations steps. (a) The wood slice is split into non-overlapping patches. (b) Example of splitting wood cross-section image with overlapping patches. (c) Local estimation of the line. The left image shows the preprocessed 2D Fourier Transform of the patch. The center image shows the line, estimated by the PCA method, over the 2D Fourier Spectrum. The right image shows the estimated line superposed to the patch. (d) A line estimated within a given patch is traced over the whole slice. (e) The output of the local orientation estimation. Only the lines estimated with a certainty score higher than a threshold are traced. Blue dots indicate the patch centers. In this case, the pith location was estimated using non-overlapping patches.
Figure 5: Some examples of the images in the UruDendro dataset. Note the variability of the images and the presence of fungus (for example, in image L02b), knots (for example, in images F07b and F03c), and cracks (for example, in images F02e and L03c).
Figure 6: Images from Kennel at al. [ 4 ] dataset.
| Parameter | Values for grid search | UruDendro | Kennel |
| Patch size (pixels) | 20, 30, 50, 100 | 50 | 25 |
| Overlapping (%) | 0, 20, 40, 50 | 50 | 50 |
| Local orientation method | PCA, Peak | Peak | PCA |
| Local orientation threshold | 0.75, 0.85, 0.95 | 0.75 | 0.75 |
| Image Size (pixels) | 1000x1000 | 1000x1000 | 1000x1000 |
| ( ) | 0.6 | 0.6 | 0.6 |
Table 1: Parameters used for the Schraml method. In the second column are the parameters used for the exploration. Only square patches are used. The parameter configuration in the third and fourth columns gives the best results for the named dataset.
| Distance | Normalized distance | |||
|---|---|---|---|---|
| Statics | ACO | Schraml | ACO | Schraml |
| Mean | 72 | 44 | 46 | 26 |
| Std | 192 | 29 | 131 | 17 |
| Median | 10 | 39 | 6 | 22 |
| P90 | 226 | 76 | 115 | 48 |
| P95 | 307 | 94 | 176 | 50 |
Table 2: Result over the UruDendro dataset using the Euclidean distance between the position of the detected and GT pith (Equation 1 ) in the 2nd and 3rd columns, and the Normalized Euclidean distance (Equation 2 ) in the last two columns.
| Distance | Normalized distance | |||
| Statics | ACO | Schraml | ACO | Schraml |
| Mean | 6 | 8 | 7 | 7 |
| Std | 2 | 7 | 4 | 6 |
| Median | 6 | 8 | 6 | 6 |
| P90 | 8 | 17 | 10 | 15 |
| P95 | 8 | 17 | 12 | 16 |
Table 3: Results over the Kennel dataset using the Euclidean distance between the position of the detected and GT pith (Equation 1 ) in columns 2 and 3. Normalized euclidean distance (Equation 2 ) results are shown in the last 2 columns.
| ACO | Schraml | |
|---|---|---|
| TP | 5 | 5 |
| FP | 2 | 2 |
| Precision (%) | 71 | 71 |
Table 4: Result over Kennel dataset using the precision metric (Equation 3 ).
| ACO | Schraml | |
|---|---|---|
| TP | 45 | 19 |
| FP | 9 | 55 |
| Precision (%) | 70 | 14 |
Table 5: Result over the UruDendro dataset using the precision metric (Equation 3 ).
Figure 7: Ring region where each detected pith falls. A histogram plot is generated with UruDendro (a) and Kennel (b) results.
Figure 8: Some results over the more difficult cases of the UruDendro dataset. Green: ground truth pith, red: ACO pith prediction, and blue: Shraml pith prediction.
Figure 9: Methods detection over the most difficult cases of the Kennel dataset. Green: ground truth pith, red: ACO pith prediction, and blue: Schraml pith prediction.