Skip to main content

Cloth simulation-based construction of pit-free canopy height models from airborne LiDAR data



The universal occurrence of randomly distributed dark holes (i.e., data pits appearing within the tree crown) in LiDAR-derived canopy height models (CHMs) negatively affects the accuracy of extracted forest inventory parameters.


We develop an algorithm based on cloth simulation for constructing a pit-free CHM.


The proposed algorithm effectively fills data pits of various sizes whilst preserving canopy details. Our pit-free CHMs derived from point clouds at different proportions of data pits are remarkably better than those constructed using other algorithms, as evidenced by the lowest average root mean square error (0.4981 m) between the reference CHMs and the constructed pit-free CHMs. Moreover, our pit-free CHMs show the best performance overall in terms of maximum tree height estimation (average bias = 0.9674 m).


The proposed algorithm can be adopted when working with different quality LiDAR data and shows high potential in forestry applications.


In the last two decades, airborne light detection and ranging (LiDAR) has become a reliable remote sensing technique for forest inventory given its capability to provide precise and detailed three-dimensional (3D) information on forest structures directly (Lim et al. 2003; Popescu 2007; Hyyppä et al. 2008; Yu et al. 2011; Huang and Lian 2015; Coomes et al. 2018; Stereńczak et al. 2018). The construction of a canopy height model (CHM) from LiDAR data is an effective means of increasing data usability (Mielcarek et al. 2018). The CHM represents an absolute canopy height above the terrain surface and is usually constructed by subtracting the digital terrain model (DTM) from the digital surface model (DSM) (Khosravipour et al. 2014). The CHM quality significantly affects the estimation accuracy of forest inventories and subsequent biophysical parameters (Shamsoddini et al. 2013).

A common problem in the LiDAR-derived CHM is the occurrence of unnatural black holes (i.e., data pits appearing within the tree crown) (Mielcarek et al. 2018). Data pits exhibit irregular height variations, and their heights are lower than those of their neighbours in raster CHM (Khosravipour et al. 2014; Mielcarek et al. 2018). In a CHM with a certain resolution (< 2 m), data pits are usually single or several pixel(s) clumping together, that is, the data pit size is irregular (Zhao et al. 2013). Existing literature has indicated no specific causes of data pits. However, many researchers have inferred various possible causes. Data pits exist due to the combination of multiple factors, from data collection to post-processing. Shamsoddini et al. (2013) reported that the positioning error of the Global Positioning System (GPS) is a key cause of data pits. A significant GPS vertical error causes data pits when flight heights are < 3000 m above ground and scan angles are outside 9° (Latypov 2005; Goulden and Hopkinson 2010). Leckie et al. (2003) found that data pits exist because of the integration of different flight line datasets, the penetration of laser beams through canopy branches and foliage into the ground and the unevenly distributed spatial resolution of LiDAR point clouds caused by a scanning mechanism, variation in aircraft attitude and deflection of lost returns. Ben-Arie et al. (2009) inferred that, when the points are binned to a grid, many grid cells will remain empty because some information from points with similar xy coordinates but different z values are lost. After being interpolated to a raster, pits may be generated in empty cells (Axelsson 1999). Khosravipour et al. (2014) concluded that data pits may be formed during ground filtering when generating a DSM or a DTM, depending on filtering technique and LiDAR point density (Kraus and Pfeifer 1998). Previous studies have asserted that such pits have a seriously negative effect on forest parameter estimation because these pits disrupt the CHMs. Gaveau and Hill (2003) indicated that data pits cause the underestimation of tree height for LiDAR data with a mean point density of 0.21 points ∙ m2. Shamsoddini et al. (2013) found that data pits negatively affect the estimation of basal area and stand volume for LiDAR data with a mean point density of 2 pulses ∙ m2. Khosravipour et al. (2014) demonstrated that data pits lead to large omission errors (undetected trees) and commission errors (falsely detected trees) in treetop detection for LiDAR data with mean point densities of 7 and 160 points ∙ m2. Thus, data pits must be filled to ensure that the uppermost layer of the forest canopy is realistically represented by the LiDAR-derived CHM.

Many algorithms have been proposed to construct pit-free CHMs. These algorithms can be divided into two categories, namely, raster- and point cloud-based methods. Raster-based methods are achieved by interpolating point clouds into raster images. The data pits are then filled by the classical image processing methods, such as mean and median filters. These filters are simple and fast, but the result is sensitive to the optimal kernel size given the pit size irregularity (Shamsoddini et al. 2013; Mielcarek et al. 2018).

Kernel size selection is critical to the success of many image processing methods. For example, when using morphological-based ground filtering algorithm, only small non-ground objects, such as trees, will be effectively removed by small kernels; however, this algorithm tends to over-remove the ground points when using large kernels (Zhang et al. 2003). Similarly, for mean and median filters, only data pits with a small size will be effectively filled by small kernels; however, these filters tend to over-smooth the CHM when using large kernels (Ben-Arie et al. 2009).

These filters negatively affect the accuracy of measurements, such as underestimation of tree heights and crown radius, deriving from the CHM. Such a phenomenon occurs because the elevation values of other pixels in CHM, except for the pitted pixels, are also changed, leading to treetop omission and crown shoulder reduction (Khosravipour et al. 2014). Accordingly, several solutions have been proposed to fill data pits without affecting other CHM values. Shamsoddini et al. (2013) detected data pits by computing a similarity index in a 3 × 3 kernel and then used a mean filter with a 5 × 5 kernel to fill such pits. Ben-Arie et al. (2009) used a Laplacian operator with a 3 × 3 kernel to detect data pits and then utilised a median filter with a 3 × 3 kernel to fill such pits. These improved algorithms only fill the pitted pixels without affecting other pixel values in CHM. However, they cannot solve the kernel size selection problem. Therefore, these algorithms may be ineffective for large pits because they use a fixed kernel size.

Another type of pit-free CHM construction methods (i.e., point cloud-based methods) directly works on height-normalised point clouds rather than raw CHMs. Khosravipour et al. (2014) constructed a stack of partial CHMs from different height intervals of the canopy; subsequently, these CHMs were combined into one CHM on the basis of the highest value across all CHMs for each x and y raster position. However, this algorithm must carefully determine a series of complicated parameters for filling pits at different heights. Chen et al. (2017) used locally weighted regression and z-scores to construct a pit-free CHM. This algorithm is highly automatic but may not work for pits in sparse density data because this algorithm requires calculation in the neighbourhood. The results were related to neighbourhood size.

The use of the aforementioned algorithms has proven to be successful. However, the prominent limitations of existing algorithms are presented as follows: (a) having applicability only to LiDAR data with regular-sized pits, (b) changing the values of not only the pitted pixels but also other CHM ones or (c) requiring numerous complicated parameters. To cope with these problems, we propose a novel algorithm based on cloth simulation for constructing a pit-free CHM. The specific objectives of this study are to (a) evaluate the applicability of the proposed algorithm to different proportions of data pits, (b) assess cloth simulation-based CHMs through visual comparison of the mean- and median-filtered CHMs, and (c) evaluate and compare the accuracy of the maximum tree height estimation using cloth simulation-based, mean-filtered and median-filtered CHMs.


Real data

The study area is located in the Genhe Forestry Reserve (120°112′–120°55′E, 50°20′–52°30′N), Greater Khingan of Inner Mongolia, Northeastern China (Fig. 1a). The area size is approximately 33 km2. The elevations range from approximately 775 to 1300 m above sea level, and the slopes are less than 15° in 80% of the area. The area is characterised by monsoon-influenced subarctic climate with an annual average temperature of − 5.3 °C. The forest types are mainly composed of Dahurian Larch (Larix gmelinii) and White Birch (Betula platyphylla Suk.).

Fig. 1
figure 1

Study area and test plots. a Location of the study area in China. b DTM of the study area and location of test plots

The LiDAR data for the study area were collected from August to September 2012 using a Leica ALS60 system on a Yun-5 aircraft. The system wavelength was 1064 nm, and the beam divergence was 0.22 mrad. In our datasets, this system operated at a 166 kHz pulse rate at 1800 m above ground level with a field of view of approximately 30° and recorded up to four returns for each laser pulse. The scan angle statistics indicate that 97% and 99% of the pulses fall within the 0°–12° and 0°–15° zenith angles. The average point density was 8.24 points ∙ m–2 with an average spacing of 0.41 m.

Nine test plots (called L1–L9) with an area of 45 m × 45 m were established in the study area in August 2013 (Fig. 1b). The positions of the four corners of each plot were measured using a differential GPS device. The maximum tree height of each plot was measured using a hand-held laser rangefinder. The collection time between field-measured and LiDAR data was not absolutely consistent (the time interval is 1 year). Considering that the height growth rate of the tree species in the study area is relatively slow, field-measured data could be acceptable for validating the proposed algorithm (Tang 2013).

Simulated data

Two landscapes, namely, discrete floating hemisphere and cone canopies, were simulated. The hemisphere and cone models are expressed in accordance with the idea developed by Dong (2009).

$$ \mathrm{Hemisphere}:\kern1.25em z=\sqrt{r^2-{x}^2-{y}^2},\kern1.5em \left({x}^2+{y}^2\le {r}^2,\kern0.5em z>0\right), $$
$$ \mathrm{Cone}:\kern1.25em z=r\times \cot \theta -\frac{\sqrt{x^2+{y}^2}}{\tan \theta },\kern1.5em \left({x}^2+{y}^2\le {r}^2,0<\theta <{90}^{{}^{\circ}}\right), $$

where (x, y, z) represents the simulated point coordinates, r is the base radius and θ is the angle between slant and cone heights.

Figure 2 demonstrates that the hemisphere canopy scene is a 50 m × 50 m square scene containing 60 hemisphere canopies. The radius and tree height values are set to 3–6 and 7–10 m, respectively. The cone canopy scene is a 50 m × 50 m square scene containing 60 cone canopies. The radius and tree height values are set to 3–6 and 18–55 m, correspondingly. The ground point height and point space of both simulated scene data are 0 and 0.05 m, respectively.

Fig. 2
figure 2

Constructed 50 m × 50 m forest scene. a Hemisphere canopy scene. b Cone canopy scene

Different proportions of data pits (10%–60%) were randomly created in canopies, and their heights were randomly reduced from their original elevations. Such data pit proportions reflect the degree of irregularity in pit size. For example, high proportions of data pits in canopies typically reflect a large area of clustered dark pixels in raster CHM. Figure 3 depicts the point clouds of hemisphere and cone canopies, in which 10%, 20% and 50% of the data pits are created.

Fig. 3
figure 3

Canopy samples with 10%, 20% and 50% of data pits. a Hemisphere canopy. b Cone canopy


We present a cloth simulation-based framework to construct pit-free CHMs from point clouds and compare the results with those of other common algorithms using a comprehensive accuracy assessment procedure. The flowchart of this study is illustrated in Fig. 4. The methodology used in this study includes five main parts, namely, pre-processing, cloth simulation-based pit-free CHM construction, post-processing, comparison of different algorithms and accuracy assessment.

Fig. 4
figure 4

Flowchart of this study


The pre-processing of LiDAR data consists of three steps, namely, noise removal, height normalisation and grid. In practice, the real and simulated data were pre-processed using the LAStools (point cloud processing software, Rapidlasso Company, Gilching, Germany) modules which include lasnoise, lasground and lasgrid (Isenburg 2017). The first step in the real data was to remove high or low noise points using the lasnoise module. Secondly, the lasground module was used to extract the ground points and then calculated the relative height above the ground for each point (i.e., z coordinate). Each point was height-normalised by replacing the height of each point with its relative height above the ground. Consequently, the height of all points classified as the ground is zero. Finally, the lasgrid module was used to grid the height-normalised points, only retaining the maximum point in each grid cell. Considering that the simulated data have no noise, and the ground height is set to zero, these data were assigned to a grid, and only the maximum point in each grid cell was retained using the lasgrid module.

Theoretical basis: cloth simulation

This algorithm is based on the physical process simulation of cloth-touching objects (Zhang et al. 2016; Zhang et al. 2019; Cai et al. 2019; Wan et al. 2019). Imagine that a piece of cloth is placed above a height-normalised forest landscape, and then this cloth progressively drops because of gravity. When touching the uppermost layer of the forest canopy, the corresponding particles of the cloth will stop dropping and be fixed. The movement of cloth particles near the pits will be constrained by forces produced by adjacent fixed cloth particles. The final shape of the cloth can be confirmed and regarded as a pit-free CHM (Fig. 5).

Fig. 5
figure 5

Overview of the cloth simulation algorithm

Cloth modelling is a term of 3D computer graphics. Typically, the cloth is modelled as a grid consisting of particles and springs. Both components control the shape of the cloth (Fig. 6).

Fig. 6
figure 6

Schematic of the simulated cloth

The positions of the cloth particles in the 3D space are calculated to confirm the shape of the cloth at a specific time. The position of each particle is determined by an external force operation followed by an internal one. On the basis of Newton’s second law, the relationship between position and forces is calculated using Eq. (3).

$$ m\frac{\partial Z(t)}{\partial {t}^2}={F}_{\mathrm{ext}}\left(Z,t\right)+{F}_{\mathrm{int}}\left(Z,t\right), $$

where m stands for the mass of the cloth particle (m is typically set to 1), Z indicates the position of a particle at time t, Fext(Z, t) represents the external force and Fint(Z, t) denotes the internal force produced by interconnections between particles. Figure 7 illustrates such a process.

Fig. 7
figure 7

Cloth simulation process. a Initial state. A piece of cloth is placed above the height-normalised forest LiDAR measurements. b Each particle drops to the LiDAR measurements under the influence of external force, and their displacement is calculated. If the cloth particles collide with the measurements, then these particles will stop falling and be labelled unmovable. c Each movable particle is moved under the influence of internal force produced by the neighbouring particles. Steps (b) and (c) are repeated until the maximum height variation of all particles is sufficiently small. d Final state. The shape of the cloth is regarded as the pit-free CHM

For simplicity, the external force is set to zero, that is, each particle drops to measurements at a constant velocity. The displacement vector \( {\overrightarrow{Z\left(\Delta t\right)}}_{\mathrm{ext}} \) of each particle after one time step ∆t is determined only under the external force:

$$ {\overrightarrow{Z\left(\Delta t\right)}}_{\mathrm{ext}}=v\Delta t\bullet {\overrightarrow{n}}_{\mathrm{ext}}, $$

where v is the velocity, and \( {\overrightarrow{n}}_{\mathrm{ext}} \) represents a normalised vector that points to the movement direction, \( {\overrightarrow{n}}_{\mathrm{ext}}={\left(0,0,-1\right)}^T \). If the cloth particle collides with the measurement surface, then this particle will stop falling and be labelled unmovable. Displacement distance is the height difference (HD) between the old position of this particle and the measurement surface, that is, \( {\overrightarrow{Z\left(\Delta t\right)}}_{\mathrm{ext}}=\mathrm{HD}\bullet {\overrightarrow{n}}_{\mathrm{ext}} \).

After dropping the cloth particles, an internal force is exerted to movable particles to restrict the particles’ displacement in the void areas, such as data pits, of the surface. In Fig. 8, the neighbouring particle and the current one are moved by the same distance in the opposite direction when the neighbouring particle is movable; when the neighbouring particle is unmovable, the current one is moved towards the neighbouring particle by half of the HD between the two particles. The displacement vector \( {\overrightarrow{Z\left(\Delta t\right)}}_{\mathrm{int}} \) of the current particle is computed using (5).

$$ {\overrightarrow{Z\left(\Delta t\right)}}_{\mathrm{int}}={\sum}_{i=1}^8\frac{1}{2}b\left({Z}_{p_i}-{Z}_{p_0}\right)\bullet {\overrightarrow{n}}_{\mathrm{int}},\kern2.75em $$

where b is 0 when the current particle is unmovable, otherwise it is equal to 1, \( {Z}_{p_0} \) represents the height value of the current particle p0, \( {Z}_{p_i} \) (i = 1, 2, …, 8) stands for the height values of the eight neighbouring particles pi that connect with p0, and \( {\overrightarrow{n}}_{\mathrm{int}} \) represents a normalised vector that points to the movement direction, \( {\overrightarrow{n}}_{\mathrm{int}}={\left(0,0,1\right)}^T \). The final displacement vector \( \overrightarrow{Z\left(\Delta t\right)} \) of each particle after one time step ∆t is calculated as follows:

$$ \overrightarrow{Z\left(\Delta t\right)}={\overrightarrow{Z\left(\Delta t\right)}}_{\mathrm{ext}}+{\overrightarrow{Z\left(\Delta t\right)}}_{\mathrm{int}}, $$
Fig. 8
figure 8

Constraint between particles


At the edge of tree crowns, this algorithm may yield relatively large errors because the cloth poorly fit with ground measurements given the internal constraints amongst particles (Fig. 9). A post-processing method is proposed to solve this problem. This method searches an unmovable particle in the eight adjacent neighbourhoods of each movable particle. If the height value of unmovable particle and that of the nearest LiDAR point for the movable particle in the x–y plane equal to zero, then the movable particle is moved to the ground and set as unmovable. The example exhibited in Fig. 9 displays that P2 is the unmovable particle from the eight adjacent neighbourhoods of P1. The height values of P1 and P2, which are the nearest LiDAR points of P1 and P2 correspondingly, are both zero, then P1 is moved to P1 and is set as unmovable. This procedure is repeated until all the movable particles are properly handled.

Fig. 9
figure 9

Post-processing of the edge of tree crowns

Comparison between different pit-free CHM construction algorithms

We compared our algorithm with two other pit-free CHM construction algorithms, namely, mean and median filters, to test the performance of the proposed algorithm. Firstly, the raw CHM was constructed using the las2dem modules of LAStools. The LiDAR points were triangulated into a triangulated irregular network on the basis of Delaunay triangulation and then rasterised onto a raster through standard linear interpolation. Secondly, the raw CHM was processed using the mean and median filters for pit filling. The following derivative products were generated:

  • Mean-filtered CHM: the raw CHM was filtered using a mean filter (3 × 3 kernel).

  • Median-filtered CHM: the raw CHM was filtered using a median filter (3 × 3 kernel).

Accuracy assessment

Considering that the accuracy of the CHMs influences that of the tree height estimation in the raster-based method, the height of the tallest tree in each plot was obtained from the CHMs and compared with a field-measured height to evaluate the performance of the pit filling algorithms. This approach indirectly provides a comparison between the proposed algorithm and the other algorithms. The accuracy of the tree height measurements was assessed by computing the bias in accordance with the following mathematical formulation:

$$ \mathrm{bias}=\frac{1}{n}{\sum}_{i=1}^n\left({h}_m-{h}_c\right), $$

where n is the number of plots, hm is the field-measured plot-level maximum tree height and hc is the plot-level maximum tree height derived from the CHM.

We constructed a reference CHM using the simulated data without data pits to validate the accuracy of the constructed pit-free CHM. Based on the index for evaluating the accuracy of DTM, the root mean square error (RMSE) was used to measure the HD between each pixel of the reference CHM and the corresponding pixel of the constructed pit-free CHM. This index is expressed as follows:

$$ \mathrm{RMSE}=\sqrt{\frac{1}{n}{\sum}_{i=1}^n{\left({z}_i-{\hat{z}}_i\right)}^2}, $$

where zi and \( {\hat{z}}_i \) are the true and predicted values at the i-th pixel in the CHM, respectively. n is the number of pixels in the CHM.


Evaluation of real data

Visual performance

The performance of the proposed algorithm was visually compared with the result of the mean and median filters. With an average spacing of 0.41 m, the CHMs were generated with a resolution of 0.5 m. The data pits are clearly visible in the raw CHM (Fig. 10 (first row)). The mean filter fills the data pits, but the constructed CHM is heavily blurred (Fig. 10 (second row)). The median filter and our algorithm have a good ability of filling data pits (Fig. 10 (third and last rows)). The elevation values of other pixels, except the pitted ones, in the cloth simulation-based CHM are effectively maintained. The proposed algorithm performs better than the other algorithms in terms of data pit filling and appearance preservation of the uppermost layer of the forest canopy.

Fig. 10
figure 10

Comparison of the visual results for the nine plots. Subfigures (a)–(i): L1–L9. From the first row to the last row: Raw, mean-filtered, median-filtered and cloth simulation-based CHMs

Assessment of the CHM application accuracy

Figure 10 and Table 1 present the position and estimated tree heights of the nine tallest trees derived from the three algorithms, respectively. Significant biases are observed between the field measurements and the maximum tree heights extracted from the CHMs constructed through different algorithms. Our algorithm is more accurate than the other algorithms. Specifically, the biases of the mean and median filters are 4.4894 and 4.4414 m, but that of the proposed algorithm is 0.9674 m (Table 2).

Table 1 Maximum tree height estimation results for the three algorithms in the nine plots (unit: m)
Table 2 Biases between field-measured and CHM-derived plot-level maximum tree heights for the three algorithms under different CHM resolutions (unit: m)

The CHM resolution plays an important role in estimating forest structure attributes (Chen et al. 2006; Khosravipour et al. 2014). Some optimal resolution setting principles have been proposed. For example, Nyquist sampling theory stipulates that the resolution must not be larger than half the size of the minimum object of interest (e.g., the minimum tree crown) and overly smaller than the average pulse spacing (Nyquist 1928; Chow and Hodgson 2009; Mielcarek et al. 2018). Raster CHMs with resolutions of 0.2, 0.5, 0.8, 1 and 1.5 m are constructed from the real data. This task is performed to test the robustness of the proposed algorithm for deriving a plot-level maximum tree height from CHMs under different resolutions. Table 2 shows biases between the field measurements and the maximum tree heights extracted from the CHMs constructed by different algorithms. In the mean and median filters, the resolution significantly affects the estimation accuracy of the tree height. However, our algorithm is unaffected and achieves the maximum accuracy at all resolutions.

Evaluation of simulated data

On the basis of the point spacing of simulated data, the CHMs were constructed with a resolution of 0.5 m. Taking hemisphere canopy scene as an example, Fig. 11 shows the CHMs constructed by different algorithms using the data with 10% pits. The raw CHM has some data pits randomly distributed in the image, and the pit size is small and usually a single pixel (Fig. 11b). The mean filter fills data pits, but the constructed CHM is seriously smoothed, especially for edges of tree crowns (Fig. 11c). The median filter and our algorithm exhibit optimal performance (Fig. 11d and e).

Fig. 11
figure 11

CHMs constructed through different algorithms using the data with 10% pits. a Reference CHM. b Raw CHM. c Mean-filtered CHM. d Median-filtered CHM. e Cloth simulation-based CHM

Figure 12 illustrates the CHMs constructed through different algorithms using the data with 50% pits. The pit size in the raw CHM is irregular (Fig. 12b). The mean filter yields a relatively good pit filling result than the median one, but the constructed CHM is significantly smoothed (Fig. 12c). The median filter can fill small pits, but it deteriorates large ones (Fig. 12d). In comparison with the abovementioned filters, the proposed algorithm has the optimal ability to fill data pits. The proposed algorithm only fills the pits in the raw CHM without altering the values of other pixels; accordingly, a CHM with nearly similar features to the reference CHM is generated (Fig. 12e). In summary, the proposed algorithm performs better than the other algorithms for the raw CHM exhibiting pits with irregular size variations.

Fig. 12
figure 12

CHMs constructed through different algorithms using the data with 50% pits. a Reference CHM. b Raw CHM. c Mean-filtered CHM. d Median-filtered CHM. e Cloth simulation-based CHM

Table 3 shows that the proposed algorithm generates optimal accuracy. For example, in the hemisphere canopy scene, the proposed algorithm is approximately 2.5718, 1.9461 and 1.6788 times equally accurate as the raw CHM, mean filter and median filter in terms of average RMSE, correspondingly. The accuracy of all algorithms deteriorates with the increase in the pit proportion. For example, in the hemisphere canopy scene, the RMSE of the proposed algorithm increases from 0.2031 m to 0.5209 m when the pit proportion increases from 10% to 60%. By contrast, the RMSEs of raw CHM, mean filter and median filter increase from 0.5428 m to 1.2882 m, from 0.4334 m to 1.0299 m and from 0.308 m to 1.0324 m, respectively.

Table 3 Accuracy comparison between different algorithms for filling pits (unit: m)


One of the challenges in constructing a CHM from LiDAR point clouds is the existence of data pits. In this study, we propose a novel algorithm for constructing pit-free CHMs. In this algorithm, a pit-free raster CHM is directly constructed through a cloth simulation process instead of by the combination of various steps such as pit detection, pit filling and transformation from the randomly distributed point clouds to the raster CHM. The real and simulated data are used to validate the advantages of the proposed algorithm.

The visual comparison results show that the proposed algorithm is superior to the mean and median filters. Such filters generate new values for all pixels based on their neighbourhood values, thus affecting the original structure of the canopy surface (Ben-Arie et al. 2009; Shamsoddini et al. 2013). By contrast, our algorithm only fills data pits without changing the value of any other pixels, thereby preserving the original structure of the canopy surface. The proposed algorithm provides the possibility to minimise the distortion of the canopy’s uppermost layer efficiently; this layer plays a critical role in various applications (e.g., ecological, hydrological and meteorological) sensitive to vegetation evolution at the local and regional scales (Khosravipour et al. 2014).

We also evaluate the proposed algorithm by comparing the accuracy of the tallest tree height estimation using the cloth simulation-based CHM versus the mean- and median-filtered CHMs. The positive biases for all algorithms indicate that the tallest tree height may be overestimated on the ground; this phenomenon is a possible error associated with the tree height measurement in the field (Wang et al. 2019). Our algorithm is significantly accurate at tree height estimation. The present study confirms previously published statements by Chen et al. (2017); these researchers illustrated that the mean and median filters struggle with the tallest tree height estimation because such filters smoothen the treetops based on surrounding pixels. The resolution of the cloth simulation-based CHM has no effect on the estimation accuracy of the maximum tree height. However, the estimation accuracy of the tallest tree height is sensitive to the resolutions of the mean- and median-filtered CHMs. The highest pixel value within a plot may be changed because the neighbourhood pixel values may vary with the resolution.

Furthermore, we investigate the effects of the different proportions of data pits on the accuracy of the mean and median filters and the proposed algorithm. The results show that our algorithm achieves the optimal visual performance amongst the data with different proportions of data pits. The quantitative assessment results show that the mean and median filters reduce the pit effect based on a predefined window kernel size that cannot be optimal for all different proportions of data pits. For example, the median filter can fill small pits but deteriorates large ones; this result agrees with those of previous studies (Fig. 12d) (Shamsoddini et al. 2013). The proposed algorithm accurately represents the height of the canopy surfaces, especially for point clouds with high proportions of data pits. On this basis, our algorithm can be potentially applied to process the forest LiDAR point clouds acquired under leaf-off conditions given that most points will cluster on branches or trunks rather than canopy surfaces (i.e., high proportions of data pits).

In summary, the results demonstrate that the proposed algorithm has the following advantages: (a) The proposed algorithm can effectively construct pit-free CHMs in point clouds with different proportions of data pits; (b) it can accurately fill only the pits without changing the values of all the CHM pixels, thereby preserving details of the uppermost layer of the forest canopy; and (c) it only needs to set up a CHM resolution parameter.


In this study, we presented a new pit-free CHM construction algorithm based on cloth simulation. This algorithm was applied to the LiDAR data to generate raster CHM directly. The real and simulated datasets were used to compare the performance of the proposed algorithm with those of the mean and median filters. Overall, the proposed algorithm is promising in terms of robustness and high accuracy. This characteristic is useful for practical applications. Whether our pit-free CHM can improve the accuracy of extracted tree biophysical parameters, such as biomass, is interesting to investigate in the future.

Availability of data and materials

The data is not owned by the authors and cannot be shared.





Canopy Height Model


Digital Surface Model


Digital Terrain Model


Global Positioning System


Height Difference


Airborne Light Detection and Ranging


Root Mean Square Error


Download references


We thank Radiation Modelling and Measurement Laboratory ( for data provision. Jianbo Qi is thanked for his help with the figure preparation.


This work was supported by the National Natural Science Foundation of China (Grant Nos. 41671414, 41971380 and 41171265) and the National Key Research and Development Program of China (No. 2016YFB0501404).

Author information

Authors and Affiliations



WZ, SC and XL conceived the study and contributed to the manuscript writing and editing; JS coordinated the design of the program; RH processed a part of the data; SY participated the evaluation and figure preparation. GY contributed to analyses of this study. All authors read and approved the final manuscript.

Corresponding authors

Correspondence to Shangshu Cai or Xinlian Liang.

Ethics declarations

Ethics approval and consent to participate

The subject has no ethic risk.

Consent for publication

All the data and relevant processing methods, including the automated generation of figures of evaluation results, belong to the host institution, namely, the Beijing Normal University.

Competing interests

The authors declare that they have no competing interests.

Rights and permissions

Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (, which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Zhang, W., Cai, S., Liang, X. et al. Cloth simulation-based construction of pit-free canopy height models from airborne LiDAR data. For. Ecosyst. 7, 1 (2020).

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: