- freely available
- re-usable
Sensors 2012, 12(7), 9273-9285; doi:10.3390/s120709273
Published: 5 July 2012
Abstract
: Logging harvesters represent a set of high-performance modern forestry machinery, which can finish a series of continuous operations such as felling, delimbing, peeling, bucking and so forth with human intervention. It is found by experiment that during the process of the alignment of the harvesting head to capture the trunk, the operator needs a lot of observation, judgment and repeated operations, which lead to the time and fuel losses. In order to improve the operation efficiency and reduce the operating costs, the point clouds for standing trees are collected with a low-cost 2D laser scanner. A cluster extracting algorithm and filtering algorithm are used to classify each trunk from the point cloud. On the assumption that every cross section of the target trunk is approximate a standard circle and combining the information of an Attitude and Heading Reference System, the radii and center locations of the trunks in the scanning range are calculated by the Fletcher-Reeves conjugate gradient algorithm. The method is validated through experiments in an aspen forest, and the optimized calculation time consumption is compared with the previous work of other researchers. Moreover, the implementation of the calculation result for automotive capturing trunks by the harvesting head during the logging operation is discussed in particular.1. Introduction
Because the circumstances of forest areas are very complex and hazardous, it is very dangerous and laborious to harvest standing trees by hand-operated machines and tools. In the last decade, with the development of the hydraulic controls and sensor techniques, more and more logging harvesters are being used in forestry [1–3]. The logging harvester can complete successive tasks of felling, delimbing, measuring and bucking, and is very suitable for large scale clear cutting operations in fast growing plantations, as well as on hillsides. A comfortable work environment, easy maintenance, efficiency, less manpower, and many productive days of work can be expected when using the logging harvesters. This leads to lower costs and better price performance ratio of the logging operations.
The Forest and Environment Equipment Research Institute of Beijing Forestry University has been dedicated to the research on logging harvesters for years [4,5]. It was found by experiments on logging harvester prototypes that the processes of delimbing, peeling, and bucking can be completed fast, but for the process of the alignment of harvesting head to capture the trunk, dues to the blind areas of the operator and vibration of the cane and vehicles chassis, the operator has to perform repeated observations, judgments and operations, which lead to the time and fuel losses. It is therefore of significance to find an efficient method to measure the location of surrounding trees for the harvesting head to achieve automatic capture.
Laser scanner is a non-contact measurement system that can scan surroundings two or three dimensionally with a radial field of vision using infra-red laser beams. The distance between the laser scanner and the object is determined by the time of flight of laser light pulses: a pulsed laser beam is emitted and reflected if it meets an object. From those distance data, a point cloud is created describing the shapes of the objects surrounding the scanner. Laser scanning offers new possibilities in tree measurement applications in forestry.
Jutila, Kannas et al. [6] discuss a method for diameter and location measurement of tree parameters using a 2D laser scanner mounted on a mobile ATV platform. The error of the tree diameter calculations is 4%. Thies, Pfeifer et al. [7] used a 3D terrestrial laser scanner to capture the geometric aspects of a tree: the radius, length and diameter of the trunk and individual branches. Liang, Litkey et al. [8] presented a fully automatic stem-mapping algorithm using 3D single-scan terrestrial laser scanning data for collecting individual tree information from forest plots. Öhman, Miettinen et al. [9,10] used 2D scanning laser range finders, machine vision systems and GPS to get information about the surrounding forest, such as tree diameters, positions and stem density. This information can be used on-line for the simultaneous localization and mapping for the forest harvesters or off-line in a forest asset management system. Rossmann et al. [11] mounted two laser scanners on the right and left side of the logging harvester cabin, generating a local tree map from the point cloud data of the mounted laser scanners, and using a particle filtering matching algorithm to form the global tree map for wood harvesting.
In this paper, a low-cost 2D laser scanner and an inertial measurement system are mounted on the outer boom of the crane, and are used to obtain the point cloud of the surrounding trees. In Section 2, the whole laser measurement equipment is described, and a laser scanning experiment is carried out in an aspen forest; In Section 3, the hierarchical cluster algorithm and filtering algorithm are used to extract each trunk from the point cloud. The trunk radii and location of the trunks are calculated by the Fletcher-Reeves conjugate gradient algorithm; In Section 4, the measurement results are given and compared with previous work of other researchers; In Section 5, the implementation of the result for automated trunk capture is discussed. Our conclusions are presented in Section 6.
2. The Description of the Equipment
2.1. The Equipment Hardware
3D laser scanners are expensive and unsuitable for continuous measurements [6]. Accordingly, a LMS291 2D laser scanner from SICK Inc. is used as the primary sensor. The measurement data corresponding to the surrounding contour is scanned by the LMS291, and is output in binary format via the RS485 data interface at the rate of 10 Hz to form the raw point cloud. As a result of the beam geometry, the maximum space between two laser beams is related to the scanning angular resolution and maximum scanning range. To get a local tree map of adequate resolution for logging harvesting, the scanning angular resolution of the LMS2291 is set to 0.25°, the maximum scanning angle is 100°, and maximum scanning distance is 8 m.
The 2D laser scanner can be installed on the outer boom of the crane, but the tilt and orientation angle of the scanner plane should be known. A MTi Attitude and Heading Reference System (AHRS) of Xsens Inc. is used. AHRS is a miniature inertial measurement unit with integrated 3D magnetometers, and is fixed on the top of LMS291 as shown in Figure 1. AHRS is capable of outputting roll α, pitch β and yaw γ of the scanner plane in real time via the RS232 data interface. The electronics of LMS291 and AHRS are powered directly from a 24 V lead-acid battery. The data analysis software is implemented on the computer. The whole measurement equipment is shown in Figure 1.
2.2. The Data Analysis Flow of the Equipment
The overall data analysis flow of the equipment for the measurement and calculation of the tree parameters is shown in Figure 2, and is mainly divided into four consecutive phases. The first phase is projecting the raw point cloud onto a horizontal plane according to the tilt angle α and β of the scanning plane. The second phase is filtering the invalid scanning data against some criteria, and extracting each trunk from the calibrated point cloud. The third phrase is determining the trunk radii and location of the trunks for the harvesting head. The fourth phrase is storing the results and displaying the useful information on the human-computer interface.
3. Extracting Trunks Feature for Logging Harvesting
3.1. Projecting the Raw Scanning Data
In our experiments, the laser scanner was fixed on a tripod with telescopic legs as seen in Figure 3. Laser beams reflect if they meet the trunk or other object, and a fan-shaped scan is made of the surrounding area. Depending on the angular resolution of the LMS291, the distance value is provided every 0.25° from 40° to 140°, and the number of distance values is 401. As the individual distance values are given out in sequence via the RS485 data interface particular, the angular position of every individual distance value can be allocated on the basis of the values' position in the data string.
In the experiment, the height of the scanning plane is equal to about 1.3 meters from the ground, this leads to better results because the understory and other uninteresting objects below the scanning plane and the variation in the height of the scanning plane is assumed to be negligible in our experiment. The measurement range is limited to 8 m, which is not beyond the reachable workspace of the crane of the logging harvester and can echo sufficient laser echo data from a single trunk.
In polar form, supposing vector D_{i} = [l_{i}, θ _{i}], where i = 1 to 401; θ_{i} is the angular positions; l_{i} is the horizontal distance value between the laser reflecting point and the measuring base point, then, l_{i} can be calculated as following Equation (1):
In Figure 4, the blue point is the measuring base point and the red dashed line is the maximum range (8 m) of the laser scanning plane. Some of the cloud points are clustered as shown in Figure 4, and each set of points inside a circle represents one cluster. In the scanning plane, the areas behind the nearest trunk are blind. During the logging operation, the harvester commonly works on the nearest trunk firstly, so the scanning blind areas can be neglected. A clustering and filtering algorithm can be used to filter out any uninteresting objects or incorrect data and extract the trunks from the point cloud.
3.2. Clustering, Filtering and Extracting the Trunk
The measurement data is processed in increasing order of the bearing angle from 40° to 140°. The cluster can be defined by two edge points, which are the measurement points that satisfy [6]:
Using Equation (2) for extracting trunks from the point cloud is certainly effective and sufficient in a forest with just a few bare tree trunks, but in a more complex environment, the laser beam may hit uninteresting things, branches or the ground, and because of divergence of the laser, incorrect measurement data may exist in the point cloud, therefore, filtering algorithms should be used to filter out the incorrect points or clusters from the point cloud, and accept only the trunk clusters. The filtering is performed for each cluster by testing it against following four criteria [6]:
The minimum and maximum curvatures of the whole cluster.
The minimum value for the curvature of a single point cur_{i}.
The greatest acceptable width of the cluster.
The smallest acceptable depth of the cluster.
A point or cluster should be rejected if it fails any of the above tests. The minimum and maximum curvatures of the whole cluster in (1) prescribe the acceptable value of the trunk radius. The curvature of a single point cur_{i} in (2) can be calculated as Equation (3) [12]:
3.3. Calculating the Parameters of the Trunk
After filtering and extracting the trunk clusters from the point cloud, the trunk clusters offer a variety of features that can be used for the logging operation such as radius, center location and distances between adjacent trunks.
Supposing that the matrix the P = [P_{1}, P_{2},…,P_{m}] represents the position of every point in the truck cluster in rectangular form, m is the number of points in one cluster. On the assumption that all cross sections of the standing trees are approximately standard circles, there exist a number of different methods to fit a circle from the vector P_{i} in a trunk cluster and to estimate the parameters of every trunk. In this paper, the effective conjugate gradient method is used.
Supposing the center location of the trunk is O = (O_{x}, O_{y}) and the radius of the trunk is R, then, the vector ${\mathit{P}}_{i}=[{p}_{i}^{x},{p}_{i}^{y}]$ satisfies:
Supposing the unknown vector x = [x_{1}, x_{2}, x_{3}]^{T} = [O_{x}, O_{y}, R^{2} – (O_{x})^{2} – (O_{y})^{2}]^{T}, the coefficients vector ${\mathit{\alpha}}_{i}={[{\alpha}_{i1},{\alpha}_{i2},{\alpha}_{i3}]}^{\text{T}}={[2{p}_{i}^{x},2{p}_{i}^{y},1]}^{\text{T}},$ and ${b}_{i}={\left({p}_{i}^{x}\right)}^{2}+{\left({p}_{i}^{y}\right)}^{2},$ then, the Equation (4) can be transformed as follows:
Then the scanning points in one cluster form a set of linear algebraic equations with constant coefficients as in the following Equation (6):
In order to get the parameters of the trunk, it is desired to solve for the unknown quantities x = [x_{1}, x_{2}, x_{3}]^{T}, given the coefficients α_{ij} for i = 1,2,…m, j = 1,2,3 and b_{i} for i = 1,2,…,m. After solving the unknown quantities x, the center location of the trunk O = (O_{x},O_{y}) and the radius of the trunk R can be calculated as shown in Equation (7):
Equation (6) can be written in a vector-matrix form as Equation (8):
For m > 3, Equation (8) is referred to as being over-determined (more equations than unknowns). In order to get parameters of the trunk for quick harvesting operations, the time constraints and accuracy for solving Equation (8) are important, so the Fletcher-Reeves conjugate gradient algorithm (F-R algorithm) is used to solve it. The F-R algorithm is a real time and online neuro-computing approach for solving system of linear algebraic equations and can achieve fast speed of convergence in neuro-computing. The F-R algorithm is given as follows [13,14]:
Supposing x_{k} is the discrete-time iterative solution of Equation (8) using the F-R algorithm, k is the discrete-time index, then, the solution error for solving Ax = b is given by:
The vector d_{k} is the current direction vector, and ε(·) is the object function to be determined, and is given by:
Therefore, the Fletcher-Reeves conjugate gradient algorithm (with restart) for solving Ax = b is summarized in the following steps [14]:
Step 1: Set initial condition x_{0}.
Step 2: Compute g_{k}|_{k}_{=0} = g_{0} = A^{T}Ax_{0} – A^{T}b.
Step 3: Set d_{0} = −g_{0}.
Step 4: Compute x_{k}_{+1} = x_{k} + α_{k}d_{k}, where ${\alpha}_{k}=-{\mathit{g}}_{k}^{\text{T}}{\mathit{d}}_{k}/({\mathit{d}}_{k}^{\text{T}}{\mathit{A}}^{\text{T}}\mathit{A}{\mathit{d}}_{k})$
Step 5: Compute g_{k}_{+1} = A^{T}Ax_{k}_{+1} – A^{T}b.
Step 6: Compute d_{k}_{+1} = −g_{k}_{+1} + β_{k}d_{k}, where ${\beta}_{k}={\mathit{g}}_{\text{k}+1}^{\text{T}}{\mathit{g}}_{\text{K}+1}/({\mathit{g}}_{\text{k}}^{\text{T}}{\mathit{g}}_{\text{K}})$
Step 7: If k < k_{max} go to step 4.
Step 8: Continue until convergence is achieved; termination criterion could be ‖d_{k}‖ < ε (where ε is an appropriate predetermined small number) and k > k_{max}.
4. Results and Discussion
The trunk feature extracting process presented in the previous section is programmed with the Visual C++ 6.0 introduced by Microsoft and Matcom 4.5 introduced by MathWorks as MATLAB to a C++ compiler. All of the calculation results such as radii, location of the trunks and distances between adjacent trunks can be displayed on a human-computer interface for the operator.
The result of the calculations on the trunk parameter is given in Figure 6. There are eight blue circles which are the fitting results of the trunk point cloud, and the centre of the trunks are marked by the triangle. Supposing the measurement base point is the origin of the rectangular form, then the 2nd and 5th column of Table 1 give the manual measurement values of the central location and radius of the trunk, which are acquired manually by the range finder and vernier, respectively.
Extracting the parameters of the trunk from the point cloud also can be achieved by the Least Square Fitting algorithm (LSF algorithm) [15]. The 3rd and 6th column of Table 1 give the calculation results via the LSF algorithm. The 4th and 7th column of Table 1 give the calculation results via the F-R algorithm used in this paper.
Table 2 gives the maximum error and time consumption on the calculation by LSF and F-R algorithm respectively.
As shown in Table 2, the maximum error for the center location and radius are nearly the same by the LSF and F-R algorithm, but time consumption is reduced by the F-R algorithm. The errors are mainly caused by the resolution and systematic errors of the laser device and the approximation error of the F-R algorithm. The error increases as the distance between the base point of the laser scanner and the trunk increases. The max error and time consumption of the calculation meet the requirements for the accuracy (<15 cm) and real time (<10 ms) for logging harvesting operations.
5. Implementation
It is found by the experiments that the process of delimbing, peeling, and bucking can be completed fast by the logging harvester, but for the process of the alignment of the harvesting head to capture the trunk, the operator needs a lot of observation, judgment and repeated operations, which lead to time and fuel losses. In order to improve the operation efficiency and reduce the operating costs during the logging harvesting operations, the laser scanner and inertial measurement system presented in this paper can be mounted on the outer boom of the crane to determine the location of the trunk near the harvesting head as seen in Figure 7.
In Figure 7, the frames {S}, {H} and {T} are located at the base point of the laser scanner, the harvesting head, and the target trunk, respectively. The point cloud is collected for the surrounding trees and using the trunk feature extracting approach presented in Section 3, the pose and position matrix ${}_{\text{ST}}T$ of the truck respective to the laser scanner base point can be obtained in every control period and transferred to the on-board computer system of the logging harvester.
Using the D-H parameters of the manipulator and combining the information of the harvesting head angle encoders, the pose and position matrix ${}_{\text{HS}}T$ relating the harvesting head frame to the laser scanner base point can be determined [16].
Then, the pose and position matrix ${}_{\text{HT}}T$for the trunk relative to the harvesting head can be expressed in the multiplication product of successive 4 × 4 homogeneous matrices as given by Equation (11):
The trajectory of the crane for trunk capture is planned in Cartesian space. The harvesting head moves smoothly one step in every control period until reaching the target. The motion planning and control flow for trunk capturing process can be summarized by the following steps:
Step 1: The laser scanner makes a fan-shaped scan of the surrounding area, and gets the location of every trunk in the scanning range.
Step 2: The pose and position matrix ${}_{\text{ST}}T$ of the truck respective to the measurement base point is formed. Every current joint angle θ of the crane and harvesting head is received from the angle encoder.
Step 3: Using the Equation (11), the matrix ${}_{\text{HT}}T$ for the target trunk relative to the harvesting head is formed.
Step 4: Considering the constraints of joint velocity and acceleration, the central controller of the logging harvester plans the desired set points Δp_{k} of the Cartesian-coordinate trajectory for the harvesting head to catch the target trunk, and the number of the points k (10 < k < 100) is decided by the distance between the harvesting head and the target.
Step5: Using the inverse kinematics solution, the angle increments Δθ of every joint are acquired from the first planned set point Δp_{1}.
Step 6: The angle increments Δθ are sent to the hydraulic controllers respectively, and the hydraulic controllers guide the motion of every hydraulic cylinder.
Step 7: In the next ten control periods, the angle increments are acquired from the planned set points similarly, and hydraulic cylinders move according to the angle increments.
Step 8: if the capture range of the target trunk is reached, the gripper is closed, and finishes the mission, otherwise, it returns to step 1.
Because of the vibration of crane and control errors, only the first ten planned set points can be used for the task from step 4 to step 7, the rest of the planned set points should be discarded, and a new path planning calculation should be made in the next control period.
6. Conclusions and Outlook
In this paper, in order to realize semi-automated logging harvesting, the point cloud for standing trees is collected with a 2D laser scanner. A cluster extracting algorithm and filtering algorithm is used to classify each trunk from the point cloud. The radii and positions of the trees are calculated by the Fletcher-Reeves conjugate gradient algorithm. Compared with previous work by other researchers, the calculation time consumption is reduced. The implementation of the calculation result on a logging harvester is discussed in particular.
The aim of this research relates to the human aspect of logging harvester operations. Logging harvesters are difficult to control and operator training is time consuming and expensive. If the location of every trunk relative to the harvesting head is known by the laser scanner, the operator could just indicate which tree to cut and the crane would automatically grasp it. The burden of the operator could be lightened by increasing the automation level of the logging harvester in the future.
This study is financially supported by National Natural Science Foundation of China (Grant No. 31070634), China Postdoctoral Science Foundation (Grant No. 2011M500009), 948 project supported by State Forestry Administration, China (Grant No. 2011-4-02), and Fundamental Research Funds for the Central Universities (Grant No. TD2010-2).
References
- Tracked Harvesters & Wheeled Harvesters from John Deere Forestry. Available online: http://www.deere.com/en_US/cfd/forestry/deere_forestry/harvesters/deere_harvester_selection.html (accessed on 1 May 2012).
- Ponsse Harvesters. Available online: http://www.ponsse.fi/english/products/harvesters/index.php (accessed on 1 May 2012).
- Guo, X.; Lu, H. Recent Development of Forest Industrial Robot in China. Proceedings of the 2010 International Conference on Intelligent Computation Technology and Automation (ICICTA), Wuhan, China, 11–12 May 2010; Volume 3. pp. 984–987.
- Wei, Z. Research and Application on Design Theory of the Chassis of Forestry Felling & Cultivation Machine. Ph.D. Thesis, Beijing Forestry University, Beijing, China, 2011. [Google Scholar]
- Shen, R. Research on Forestry Felling & Cultivation Machine Executive Mechanism and Load-Sensing Hydraulic System. Ph.D. Thesis, Beijing Forestry University, Beijing China, 2010. [Google Scholar]
- Jutila, J.; Kannas, K.; Visala, A. Tree Measurement in Forest by 2D Laser Scanning. Proceedings of the 2007 IEEE International Symposium on Computational Intelligence in Robotics and Automation (CIRA 2007), Jacksonville, FL, USA, 20– 23 June 2007; pp. 491–496.
- Thies, M.; Pfeifer, N.; Winterhalder, D.; Gorte, B.G.H. Three-dimensional reconstruction of stems for assessment of taper, sweep and lean based on laser scanning of standing trees. Scand. J. For. Res. 2004, 19, 571–581. [Google Scholar]
- Liang, X.; Litkey, P.; Hyyppa, J.; Kaartinen, H.; Vastaranta, M.; Holopainen, M. Automatic stem mapping using single-scan terrestrial laser scanning. IEEE Trans.Geosci. Remote Sens. 2012, 50, 661–670. [Google Scholar]
- Miettinen, M.; Ohman, M.; Visala, A.; Forsman, P. Simultaneous Localization and Mapping for Forest Harvesters. Proceedings of the 2007 IEEE International Conference on Robotics and Automation (ICRA'07), Rome, Italy, 10– 14 April 2007; pp. 517–522.
- Ohman, M.; Miettinen, M.; Kannas, K.; Jutila, J.; Visala, A.; Forsman, P. Tree Measurement and Simultaneous Localization and Mapping System for Forest Harvesters. Proceedings of 6th International Conference on Field and Service Robotics (FSR 2007), Chamonix Mont-Blanc, France, 9–12 July 2007.
- Rossmann, J.; Schluse, M.; Schlette, C.; Buecken, A.; Krahwinkler, P.; Emde, M. Realization of a Highly Accurate Mobile Robot System for Multi Purpose Precision Forestry Applications. Proceedings of the 2009 International Conference on Advanced Robotics (ICAR 2009), Munich, Germany, 22–26 June 2009; pp. 1–6.
- Selkäinaho, J. Adaptive Autonomous Navigation of Mobile Robots in Unknown Environments; Helsinki University of Technology: Espoo, Finland, 2002. [Google Scholar]
- Fletcher, R.; Reeves, C.M. Function minimization by conjugate gradients. Comput. J. 1964, 7, 149–154. [Google Scholar]
- Ham, F.M.; Kostanic, I. Principles of Neurocomputing for Science and Engineering; McGraw Hill: New York, NY, USA, 2000. [Google Scholar]
- Wang, D.; Liu, J.; Wang, J. Identification and classification of scanned target in forest based on hierarchical cluster. Soc. Agric. Eng. 2011, 27, 173–177. [Google Scholar]
- Craig, J.J. Introduction to Robotics: Mechanics and Control; Pearson/Prentice Hall: Upper Saddle River, NJ, USA, 2005. [Google Scholar]
Table 1. The parameters of the trunks acquired by different methods. |
No. | Center location (O_{x},O_{y}) (cm) | Radius (cm) | ||||
---|---|---|---|---|---|---|
Manual | LSF algorithm | F-R algorithm | Manual | LSF algorithm | F-R algorithm | |
1 | (247.0, 248.0) | (251.4, 252.1) | (251.4, 252.1) | 8.6 | 9.9 | 9.9 |
2 | (397.9, 455.7) | (405.9, 465.8) | (405.9, 465.8) | 13.5 | 14.7 | 14.7 |
3 | (149.1, 520.0) | (152.6, 529.0) | (152.6, 529.0) | 13.6 | 15.2 | 15.2 |
4 | (−15.2, 782.9) | (−14.7, 785.9) | (−14.7, 785.8) | 13.3 | 15.6 | 15.5 |
5 | (−32.8, 272.0) | (−33.0, 276.0) | (−33.0, 276.0) | 9.0 | 9.3 | 9.3 |
6 | (−237.0, 597.7) | (−241.3, 608.5) | (−241.2, 608.2) | 14.6 | 17.3 | 17.0 |
7 | (−305.4, 346.7) | (−309.3, 349.6) | (−309.3, 349.6) | 10.3 | 10.4 | 10.4 |
8 | (−532.5, 471.1) | (−536.5, 476.3) | (−536.5, 476.3) | 13.9 | 15.2 | 15.2 |
Table 2. The performance comparison of LSF algorithm and F-R algorithm. |
Characteristic | LSF algorithm | F-R algorithm |
---|---|---|
Max error on the center location (cm) | (8.0, 10.8) | (8.0, 10.5) |
Max error on the radius (cm) | 2.7 | 2.4 |
Time consumption (ms) | 0.28 | 0.19 |
© 2012 by the authors; licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution license (http://creativecommons.org/licenses/by/3.0/).