This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution license (

A filtering algorithm is proposed that accurately extracts ground data from airborne light detection and ranging (LiDAR) measurements and generates an estimated digital terrain model (DTM). The proposed algorithm utilizes planar surface features and connectivity with locally lowest points to improve the extraction of ground points (GPs). A slope parameter used in the proposed algorithm is updated after an initial estimation of the DTM, and thus local terrain information can be included. As a result, the proposed algorithm can extract GPs from areas where different degrees of slope variation are interspersed. Specifically, along roads and streets, GPs were extracted from urban areas, from hilly areas such as forests, and from flat area such as riverbanks. Validation using reference data showed that, compared with commercial filtering software, the proposed algorithm extracts GPs with higher accuracy. Therefore, the proposed filtering algorithm effectively generates DTMs, even for dense urban areas, from airborne LiDAR data.

Three-dimensional (3D) urban building models are used in various applications, and the data necessary for modeling, such as building height estimates, can be generated by using airborne light detection and ranging (LiDAR). Airborne LiDAR measures laser light reflected from the surface of objects, and a digital surface model (DSM) is generated by interpolating the discrete LiDAR data. During preprocessing of the 3D models, ground points (GPs) in the LiDAR data are separated from non-GPs. This process is called filtering, and a digital terrain model (DTM) can be generated by interpolating the extracted GPs. The heights of objects, such as trees and buildings, are then estimated by examining the differences between the DSM and the DTM. The accuracy of DTM estimation, therefore, affects the accuracy of the building models.

Sithole and Vosselman [

My interest is in efficient, automatic generation of 3D models in dense urban areas from airborne LiDAR for civil engineering applications, for example, earthquake damage assessment. In such applications, 3D models should have geolocational accuracy of approximately 30–50 cm. Prior to 3D modeling, however, a filtering algorithm applicable to dense urban areas is necessary. Among the features mentioned above, filtering for dense urban areas requires dealing with steep slopes, vegetation, buildings, bridges, and rivers. Narrow streets and numerous buildings are found in dense urban areas, and therefore filtering of airborne LiDAR data is more challenging because data sampling has not been tuned to the level of information to be extracted. In addition, when areas are hilly, GP detection may fail because of height variations. Another problem encountered in filtering of dense urban areas is that a river running through the area may lower DTM accuracy. This may be partly because GPs on or near bridges over the river are not extracted accurately, and partly because erroneous GPs are selected near the river and bridges when generating the DTM by interpolation. DTMs in urban areas have been estimated by using the morphological approach [

Tuning the parameters used in filters is among the most important issues for efficient filtering. Sithole and Vosselman [

To tune the parameters, iterative filtering approaches has been reported [

Therefore, I propose a filtering algorithm using an adaptive slope threshold that accurately distinguishes GPs from non-GPs even in dense urban areas. The performance of the proposed algorithm is compared with existing algorithms using data obtained from a study area and publicly available datasets. The rest of this paper is structured as follows. Section 2 describes the new filtering algorithm. Features of the employed data and the study area are described in Section 3, and experimental and validation results are reported in Section 4. Conclusions are given in Section 5.

This paper focuses on a filtering algorithm for estimating a final DTM. The proposed algorithm assumes that grid data are used, since using grid-based data is better than irregularly distributed point clouds in terms of algorithm efficiency and calculation time. When more than one data point is available within a pixel, the lowest data point is selected. However, the original

The proposed algorithm utilizes information on whether a point is contained in a plane for filtering, and the algorithm can be classified as a slope-based morphological filtering approach. Sithole and Vosselman [

Another challenge is the automatic updating of parameters. For example, the slope-based approach requires setting a maximum slope parameter to extract GPs from inclined streets. However, a fixed slope parameter is not suitable for areas where flat and hilly areas are interspersed. The proposed approach extracts wide rather than narrow streets first. Narrow streets are then extracted by considering their connectivity with the wide streets. Through this approach, focus is placed on the planar nature of wide streets in dense urban areas. In addition, the slope parameter in the proposed algorithm is automatically updated. After an initial DTM is generated with an initial slope parameter, a local maximum slope is calculated. The slope parameter given to each cell of the grid data is updated by considering local terrain. Then, the DTM generation process is repeated using the updated parameter. During the interpolation procedure when generating the DTM, bodies of water are masked to prevent incorrect GP selection near rivers and bridges.

The calculation is conducted using all the points in a window, and is repeated for regions within windows that include a target pixel. The plane with the lowest RMSE is selected. If the RMSE is smaller and the distance between the pixel and the plane is shorter than the designated thresholds, the pixel is regarded as having a planar surface. At this stage, ground data in addition to roof data for buildings are selected. “Minimum vertical component of the planar normal” is used to extract streets. The estimated planes include streets and building roofs. To exclude the roofs, especially pitched roofs, and to retain hilly streets, normals to the plane whose vertical component is within a small tilt range in any direction are accepted.

In Step (4), if data selected above are connected with a LLP within designated vertical distance and slope angle thresholds, they are labeled as GP. The slope angle _{i}_{i}_{i}_{i}_{tgt}_{tgt}_{tgt}

Step (6) estimates the DTM by using neighboring GPs. In the present research, inverse distance weighted (IDW) interpolation is employed because of its simple implementation. The weights of the data available for the interpolation are assigned such that they are inversely proportional to the distance from the target point. When at least three GPs are available within a threshold distance along four directions, the elevation of a non-GP is interpolated by using the elevations of GPs. The search along any direction is terminated when a water body pixel is found to prevent the result from being affected by the elevation at the river. Two patterns of four directions are examined. This interpolation is repeated for the entire area. If a pixel does not have at least three available GPs, its elevation is set as the average elevation of its eight neighboring pixels.

Step (7) filters non-GPs a second time by calculating their distances from the DTM. If the distance is within a designated threshold, the non-GPs are added to the set of GPs. When a new GP is added, Step (6) is repeated after completion of Step (7). If no new GPs are added during the first loop, the slope parameter is updated by referring to the maximum slope derived from the DTM. Then, the second loop is conducted (Step (8)).

Kyoto is famous for being the former capital of Japan, and still has many traditional houses and landscapes. Higashiyama Ward and Nakagyo Ward of Kyoto were selected as study areas. Higashiyama is hilly and contains traditional temples and shrines. Nakagyo has a commercial district and a large number of multistoried buildings. Both areas have narrow streets, which are approximately 5–6 m in width. Details of the airborne LiDAR data for these areas are listed in

In total, two LiDAR datasets were available for this research: one for Higashiyama Ward and one for Nakagyo Ward. These datasets were classified into two categories: “hilly” (Higashiyama dataset) and “flat with rivers” (Nakagyo dataset).

From the original point clouds, 1 m grid data were generated. In this experiment, the parameters were set to the values listed in

To save computation time, the criterion to repeat Step (6) after Step (7) was that ≥30 points were added and the number of iterations in Steps (6) and (7) was ≤30.

The proposed algorithm was validated by using benchmark datasets provided by the International Society for Photogrammetry and Remote Sensing (ISPRS) Commission III/WG3. Sithole and Vosselman [

Next, GPs extracted by the proposed algorithms were qualitatively validated through a comparison with GPs extracted by TerraScan. The parameters of the “Classify ground” function are listed in the central column of

First,

Second,

The proposed algorithm was also successful in extracting GPs on bridges and riverbanks, as shown in

The proposed algorithm starts with planar surface estimation. In actuality, points extracted from planar surface areas (

“Maximum slope” in Steps (4), (5), and (8) has an effect on the final DTMs of the study area. In a preliminary examination, the slope parameter was fixed. A low value, for example, 3.0°, was used for flat areas and a higher value, for example, 4.5° or 5.0°, was used for hilly areas. This approach worked in general, but not for riverbanks in flat areas (Nakagyo). When a higher slope value was applied in such flat areas, GP extraction and DTM estimation around the riverbanks were improved, but some points on the roofs of buildings were incorrectly extracted. Therefore, the approach was taken to begin with a common low value for the slope parameter, and then repeat processing after updating the value by calculating the local maximum slope from the tentatively estimated DTM. In

“Maximum slope” for the final DTMs of Higashiyama and Nakagyo is shown in

Note that “Maximum slope” has a considerably weaker effect on the final DTMs of the ISPRS benchmark datasets than those of the study area. This may be because different degrees of slope variation are interspersed in the study area.

The slope angle in the proposed algorithm given by

In

In the present algorithm, when at least three GPs were available within a threshold distance along four directions, the elevation of a non-GP was estimated using inverse distance weighted interpolation. In a preliminary examination to find flat areas with rivers, DTMs for buildings along rivers were found to be underestimated because points were selected from the riverbed or on the other side of riverbank. Therefore, a decision was made to mask bodies of water. Converting LiDAR data into grid-based data is quite useful for this purpose because the labeling of null pixels as bodies of water can be achieved by using a conventional image-processing algorithm. This approach prevented underestimation of DTMs along rivers. In this regard, a promising avenue of research would be to merge raster image processing and point data processing techniques for LiDAR data handling.

Overall, the proposed filtering algorithm can effectively generate a DTM from airborne LiDAR data, even for dense urban areas. The algorithm utilizes connectivity with streets for GP extraction. This calculation is efficiently implemented by converting original LiDAR data into grid-based data. However, the computation time is relatively long. While TerraScan processed a dataset (approximately 930 m × 1140 m) within several seconds, the proposed algorithm took approximately 80–90 s using a personal computer with an Intel Core i7 (3.20 GHz) processor and 6 GB memory. The majority of this computation time was to execute the iterations in Steps (6) and (7). In the experiment, the criterion to continue the iteration was that ≥30 points were added and the number of iterations for Steps (6) and (7) was ≤30. When the number of iteration was set to 5 in order to save computation time, the proposed algorithm failed to extract GPs from several narrow streets on hilly areas and from a flat schoolyard in Higashiyama. The missed schoolyard was greater than 30 m away from a road, the GPs of which were mostly extracted in the first iteration of the first loop (

Although the algorithm can work effectively when streets are available, whether the algorithm is applicable to forests where planar surfaces are limited is uncertain. However, if only part of the study area is forest, as in the eastern part of Higashiyama in

A filtering algorithm was proposed that is applicable to areas where flat and hilly areas are interspersed. The proposed algorithm is based on a slope-based morphological filtering approach. A slope parameter used in the proposed algorithm is updated after an initial estimation of the DTM, and thus local terrain information can be included. Because of this update, extraction of GPs and the final DTM are improved. During the interpolation procedure when generating the DTM, bodies of water are masked to prevent incorrect GP selection near rivers and bridges. Validation of the results against the ISPRS benchmark datasets indicated that the accuracy of the proposed algorithm is greater than that of TerraScan for most samples, and is almost equal to that of Mongus and Žalik’s algorithm. Qualitative comparison using the study area data show that the proposed algorithm extracted a greater number of GPs on narrow streets than TerraScan did. In the case of dense urban areas, the overall classification accuracy of the proposed algorithm was approximately equal to, or higher than, that of TerraScan. Therefore, it is concluded that the proposed filtering algorithm performs GP extraction and DTM generation effectively for urban areas. In future work, the 3D modeling of buildings in dense urban areas will be reported, based on the proposed filtering algorithm.

This research was supported by a Grant-in-Aid for Scientific Research (KAKENHI) for Young Scientists (B) (22760393), and by a grant from the Japan Construction Information Center. The author expresses gratitude to Wesco Co. Ltd., Okayama, Japan, for providing aerial photographs used for experiments.

Flowchart of proposed algorithm to generate a DTM.

Searching for new GPs by using planes. A new GP is added when the distance between the point and plane calculated at the target ground point is within a threshold, and the horizontal distance between the point and target ground point is within another threshold, “Window size”.

Generation of DTM for Higashiyama: (

Generation of DTM for Nakagyo: (

Effect of water body mask for Nakagyo dataset: (

Details of airborne LiDAR.

Measurement date | June 2002 to February 2003 |

Measurer | Aero Asahi Corporation |

Density | Approx. 0.68 points/m^{2} |

(calculated as valid pixels divided by all pixels of the area) | 0.70 for Higashiyama, and 0.66 for Nakagyo |

Altitude | 900 to 1,000 m |

Horizontal accuracy | ±50 cm |

Vertical accuracy | ±15 cm |

Parameters in the proposed algorithm and values used for experiments.

Step (1): River extraction | Window size for initial area detection | 7 m × 7 m |

Minimum area to accept water body | 100 m^{2} | |

| ||

Step (2): Finding locally lowest points (LLPs) | Window size | 60 m × 60 m |

| ||

Step (3): Planar surface calculation | Window size (used also in Steps (4) and (5)) | 5 m × 5 m |

Minimum data number to calculate | 6 points | |

Maximum root mean square of errors (RMSE) to accept plane | 0.1 m | |

Maximum distance to plane (used also in Step (5)) | 0.1 m | |

Minimum vertical component of planar normal | 0.9 | |

| ||

Step (4): GP determination | Maximum slope (used also in Steps (5) and (8)) | 1st loop: 3° |

Maximum height difference to determine as GP (used also in Step (7)) | 0.5 m | |

| ||

Step (6): DTM estimation | Maximum distance of the closest point (same as “Window size” in Step (2)) | 50 m |

Maximum distance of other points | 100 m | |

Window size for mean of DTM | 21 m × 21 m |

Comparison of filtering errors of TerraScan, Mongus and Žalik’s algorithm (Mongus) [

11 | TerraScan | 16.14 | 26.66 | 2.00 |

Mongus | 11.01 | 7.32 | 15.98 | |

Proposed | 18.62 | 21.87 | 14.24 | |

12 | TerraScan | 11.55 | 21.49 | 1.12 |

Mongus | 5.17 | 4.23 | 6.15 | |

Proposed | 7.08 | 8.45 | 5.64 | |

21 | TerraScan | 11.56 | 14.30 | 1.95 |

Mongus | 1.98 | 0.01 | 8.87 | |

Proposed | 8.50 | 0.60 | 36.17 | |

22 | TerraScan | 10.78 | 14.51 | 2.56 |

Mongus | 6.56 | 4.97 | 10.09 | |

Proposed | 7.29 | 2.82 | 17.13 | |

23 | TerraScan | 8.01 | 12.92 | 2.54 |

Mongus | 5.83 | 4.38 | 7.45 | |

Proposed | 8.42 | 11.14 | 5.39 | |

24 | TerraScan | 12.97 | 16.38 | 3.98 |

Mongus | 7.98 | 5.69 | 14.04 | |

Proposed | 6.71 | 5.24 | 10.59 | |

31 | TerraScan | 4.85 | 8.36 | 8.97 |

Mongus | 3.34 | 0.21 | 7.00 | |

Proposed | 2.74 | 0.38 | 5.51 | |

41 | TerraScan | 13.15 | 25.10 | 0.74 |

Mongus | 3.71 | 3.39 | 4.03 | |

Proposed | 3.93 | 2.84 | 5.01 | |

42 | TerraScan | 2.55 | 8.00 | 1.39 |

Mongus | 5.72 | 0.06 | 8.06 | |

Proposed | 3.26 | 6.97 | 1.72 |

TerraScan parameters and values used in experiments.

Classify ground | Max building size | 60 m |

Iteration angle | 3.0° to plane | |

Iteration distance | 0.5 m | |

[Option] Reduce iteration angle | Off | |

[Option] Stop triangulation | Off |