0% found this document useful (0 votes)
22 views8 pages

GroundGrid - LiDAR Point Cloud Ground

Uploaded by

Titiksha Bhatia
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
22 views8 pages

GroundGrid - LiDAR Point Cloud Ground

Uploaded by

Titiksha Bhatia
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

STEINKE et al.

: GROUNDGRID: POINT CLOUD GROUND SEGMENTATION AND TERRAIN ESTIMATION 1

©2024 IEEE. Personal use of this material is permitted.


Permission from IEEE must be obtained for all other uses, in
any current or future media, including reprinting/republishing
this material for advertising or promotional purposes, creating
new collective works, for resale or redistribution to servers or
lists, or reuse of any copyrighted component of this work in
other works.
The final published version is available on IEEE Xplore:
https://ieeexplore.ieee.org/document/10319084
DOI: 10.1109/LRA.2023.3333233
arXiv:2405.15664v1 [cs.RO] 24 May 2024
2 IEEE ROBOTICS AND AUTOMATION LETTERS. PREPRINT VERSION. ACCEPTED OCTOBER, 2023

GroundGrid: LiDAR Point Cloud Ground


Segmentation and Terrain Estimation
Nicolai Steinke1 , Daniel Goehring1 and Raúl Rojas1

Abstract—The precise point cloud ground segmentation is a order to detect the ground surface. We evaluate the ground
crucial prerequisite of virtually all perception tasks for LiDAR segmentation performance on the well-known SemanticKITTI
sensors in autonomous vehicles. Especially the clustering and dataset [2] and compare it to other state-of-the-art methods.
extraction of objects from a point cloud usually relies on an
accurate removal of ground points. The correct estimation of the Additionally, we evaluate the terrain estimation performance
surrounding terrain is important for aspects of the drivability of using georeferenced Airborne Lidar Scanning (ALS) data as
a surface, path planning, and obstacle prediction. In this article, ground truth and compare the results with another method.
we propose our system GroundGrid which relies on 2D elevation
maps to solve the terrain estimation and point cloud ground
segmentation problems. We evaluate the ground segmentation II. RELATED WORK
and terrain estimation performance of GroundGrid and compare
it to other state-of-the-art methods using the SemanticKITTI Since the ground segmentation of point cloud data is a
dataset and a novel evaluation method relying on airborne LiDAR fundamental task for LiDAR perception systems, especially
scanning. The results show that GroundGrid is capable of out- for those in use on autonomous robots the research effort in
performing other state-of-the-art systems with an average IoU of this topic has been ongoing for many years [3]. The biggest
94.78% while maintaining a high run-time performance of 171Hz.
The source code is available at https://github.com/dcmlr/groundgrid challenges for accurate ground segmentation methods are the
sparsity of the generated data, the fact that the point clouds
Index Terms—Range Sensing; Mapping; Field Robots are generally not spatially structured, and tight performance
constraints to run online in the vehicle’s on-board systems. To
I. INTRODUCTION overcome these challenges, many approaches rely on the pro-
jection of the LiDAR point cloud to reduce the point cloud’s

L IDAR sensors are widely used in the field of autonomous


vehicles. Many applications for LiDAR sensors in this
field require the removal of ground points. This applies espe-
dimensionality. Often the data is projected as a bird’s eye
view image onto a plane. Rasterizing this plane into a 2D grid
structure and assigning the point height averages as cell values
cially to object detection and classification algorithms where yields an elevation map. Algorithms relying on elevation maps
the ground segmentation is often the first processing step were successfully used by many teams of the DARPA Grand
that precedes higher perception functions, e. g., object detec- Urban Challenge in 2007 [4] [5] [6]. Elevation maps offer
tion and classification [1]. With technological advances, the significant performance advantages because the calculations
point density of the sensors rises continuously which makes have only to be calculated for each cell of the map and not for
scalable solutions necessary. As a related problem to ground each point in the point cloud. This fixed structure also enables
segmentation, terrain estimation is the task of estimating the the use of image processing algorithms and machine learning
ground topology around the vehicle. Knowledge about the methods using convolutional neural networks [7] [8]. Another
surrounding ground topology can be used to segment point popular way of projecting the data is in the form of a range
clouds into ground and non-ground, infer drivable terrain, image which results in a cylindrical projection for rotational
improve object movement prediction, and filter outlier points laser scanners [9] [10]. Using this image representation allows
of the LiDAR sensor. In this article, we present GroundGrid, classical image processing algorithms to be applied, e. g.,
a LiDAR ground segmentation and terrain estimation system 2D line regression algorithms [9] or methods relying on 2D
that outperforms other state-of-the-art methods while main- image convolutions [10]. One disadvantage of these projection
taining online performance. The method is sensor independent, methods is the possible loss of information due to quantization
deterministic, and easy to understand since it relies only upon errors [11]. Other works exploit the decline of the point
the vertical point height variance and the outlier detection in density with the distance to the sensor. Himmelsbach et al. [12]
discretized the point cloud anglewise so that each bin covered
Manuscript received: June, 15, 2023; Revised October, 4, 2023; Accepted
October, 28, 2023. more area far away from the car than close to it. Others used
This paper was recommended for publication by Editor Pauline Pounds polar elevation maps which also divide the space by angles
upon evaluation of the Associate Editor and Reviewers’ comments. so the cells cover more area the more distant they are to
This work was supported by the German Federal Ministry for Digital and
Transport under grant number 45AVF3001F. the sensor [13] [14]. This way quantization errors can be
1 Dahlem Center for Machine Learning and Robotics (DCMLR), minimized and the possible information loss reduced but this
Department of Mathematics and Computer Science, Freie Universität comes at the expense of a higher error in distant cells which
Berlin, Germany, {nicolai.steinke | daniel.goehring |
raul.rojas}@fu-berlin.de also can include important information. Concerning the ground
Digital Object Identifier (DOI): see top of this page. surface estimation, many methods rely on the assumption that
STEINKE et al.: GROUNDGRID: POINT CLOUD GROUND SEGMENTATION AND TERRAIN ESTIMATION 3

Fig. 1. Visualization of outlier points (cyan) below the ground (red) due to
a reflection on the car’s body (purple). SemanticKITTI seq. 00 cloud 263.

the ground surface is relatively flat and continuous. Especially


methods that use linear regression to fit lines or planes to
the point cloud need these assumptions to hold [12] [15]. In Fig. 2. Overview of the proposed system. Input point cloud in red, interme-
urban scenarios, the ground is often flat but not continuous diate results in blue, and output segmented point cloud in green.
since the ground level can abruptly change at road borders and from the lower car body onto the ground and back to the
pedestrian areas. In scenarios outside of the urban structure, LiDAR sensor. The sensor uses only the time of flight to
the ground is often continuous but not flat since there are fewer determine the traveled distance of the light beam and does not
human-made structures. In these cases, a singular plane can not seem to be able to detect the reflections of the beams. Hence
accurately model the ground surface. Lim et al. [14] and the the position of the points ends up being significantly lower
follow-up publication by Lee et al. [16] compensated for these than their true position. Spatial errors of this magnitude as
problems by fitting multiple smaller planes. Himmelsbach et well as the number of erroneous points poses a big challenge
al. [12] and Cheng et al. [13] split the area around the sensor for ground estimation and segmentation systems. Lee [16]
into angular segments. All of these methods have in common used two manually tuned thresholds to identify this kind of
that the fitted planes grow with the distance to the sensor. Since outlier points but they must be tuned to each sensor and
most sensors record fewer points per area in the distance the mounting position individually and therefore this method does
error concerning the recorded points remains constant. But the not provide a general solution to the problem.
error for the true ground plane rises with the size of the planes.
Since these algorithms are mostly evaluated on a per-point III. GROUND SEGMENTATION AND TERRAIN
basis the bigger ground approximation error in the distance ESTIMATION
does not impact the results in these evaluations. In this section, we describe GroundGrid in detail. Fig. 2
Recently methods utilizing artificial neural nets received more shows the general structure of the approach. The Input and
attention from researchers: Paigwar et al. [8] presented a output point clouds are depicted in red and green respectively
convolutional neural network GndNet that was trained on and the intermediate results are in blue. The algorithm reuses
elevation maps and which infers the ground surface in order the elevation maps of previous iterations. If no previous result
to segment point clouds. He et al. [7] also split the area is available the elevation map is initialized with the vehicle’s
into segments of varying size similar to Lim et al. [14] elevation. First, an outlier filtering is executed, followed by
and Lee et al. [16]. These segments were then processed the point cloud rasterization into a grid map. Subsequently,
with a PointNet [17] feature encoding block and subsequently the grid map cells containing only ground points are classified
fed into a classification module. With the classified sectors, and the ground level is calculated. Then the elevation map is
the point cloud is segmented. A disadvantage of artificial generated and missing data is interpolated. Finally, the point
neural nets is the need for large amounts of labeled data for cloud is segmented into ground points and non-ground points
training which often need to be generated manually. Paigwar using the estimated elevation map.
et al. [8] and He et al. [7] trained their networks on the
SemanticKITTI dataset which consists of 11 publicly available A. Outlier Filtering
manually labeled point cloud sequences. Since all the data was
Reflected laser beams can yield points that lie well below
collected using the same sensor platform in similar locations
the true ground level (see Fig. 1). These outliers lead to
around Karlsruhe, Germany, the dataset might be biased and
problems for the ground-level estimation. To remove outlier
the generalization capabilities of the outcomes are hampered.
points, the intersection between the line connecting the sensor
Outlier removal in point clouds is rarely explicitly mentioned
position with the point in question and the currently known
despite outliers are a common phenomenon - especially in
elevation map is calculated. If the intersection shows that there
urban scenarios where car chassis often reflect laser beams
is no line of sight between the sensor and the point, the point
leading to incorrect measurements. Sequence 00 of the Se-
is classified as an outlier.
manticKITTI dataset is an example of an outlier prone sce-
nario. Fig. 1 is a visualization of common outlier points. The
B. Point Cloud Rasterization
outlier points (cyan) are well below (approx. 1.5m) the true
ground surface (red points) since two lasers have been reflected The remaining point cloud is rasterized into the grid map.
During the rasterization process, several grid map layers are
4 IEEE ROBOTICS AND AUTOMATION LETTERS. PREPRINT VERSION. ACCEPTED OCTOBER, 2023

calculated: first of all the variance layer with the z-axis point which would result in under-segmentation. A ground cell’s
coordinate variance for each cell. The other layers are the elevation estimation confidence qi,j at index i, j is defined as
minimal, maximal, and average values of the z-coordinate P
Pi,j
(height) as well as the point count for each cell. The variance qi,j = (4)
is calculated using Welford’s online algorithm [18] to avoid a s
second pass. where Pi,j is the point count matrix and s the confidence point
count scaling parameter. The resulting qi,j is clamped to [0, 1].
Considering only ground cells, the elevation and confidence
C. Classification of Ground Cells values are integrated with the existing values from previous
Cells containing exclusively ground points can be identified observations as follows: The new elevation estimation gi,j
by using the variance information calculated in the previous is given by the confidence-weighted sum of the current and
step. The assumption is that traversable ground is more flat previous updates:
compared to obstacles and thus has a lower point height vari- qi,j · hi,j + ci,j · gi,j
ance. In order to accommodate the sparsity of the point cloud gi,j ← (5)
qi,j + ci,j
data, the ground cell classification takes a cell’s neighborhood
into account. It is performed for patches of 9 (3 × 3) to 25 where ci,j and gi,j are values from previous updates while
(5 × 5) cells depending on the distance to the sensor. If a cell hi,j and qi,j are calculated according to 3 and 4.
does not contain enough points to calculate the variance, the 1 qi,j
average variance value of the patch is used. A cell in the center ci,j ← ( + ci,j ) (6)
2 2
of a patch is classified as ground if the variance of the cell where ci,j denotes the existing confidence from previous steps
is below the variance threshold tv . This threshold is scaled for the cell i, j and qi,j the confidence value for the current
with the distance to the sensor to take the reduced accuracy update. To give repeated ground detections a higher weight
of distant measurements into account: than a single detection with a high amount of points, the
tv = dsf · d(p, o) (1) weight of qi,j is halved in this equation. We also calculate 3
for non-ground cells (variance > tv ). If hi,j is below the
where the distance scaling factor dsf is multiplied by the known ground level (hi,j < gi,j ) we update it gi,j ← hi,j ,
Euclidean planar distance d of the point p and the sensor and we increase the confidence ci,j by a small amount:
origin o. The parameter dsf scales the distance to a variance ci,j ← min(ci,j + 0.1, 0.5) to reflect the addition of new
threshold and is the same for all cells. For a cell to be classified information. This way under-segmentation is avoided for cells
as ground it also must contain a sufficient number of points. covered by obstacles.
Assuming the absence of obstacles, the LiDAR sensor used in
the SemanticKITTI dataset produces a circle pattern for each E. Terrain Interpolation
laser on the ground. We approximate the expected point count
per cell by calculating the angular distance covered by each The ground elevation is interpolated for cells where no
cell on a circle and dividing it by the sensor’s angular point ground points were detected. The interpolation is performed
distance: spirally from the sensor origin. The elevation for each cell is
tan−1 ( R set to the confidence-weighted sum of the estimated ground
d)
n= (2) elevation of the cell and the average of the cell’s 3 × 3
dpv
neighborhood:
where R is the cell resolution, d is the distance to the LiDAR
Σ(Ci,j ◦ Gi,j )
sensor and dpv is the angular distance of two points of this gi,j ← (1 − ci,j ) · + ci,j · gi,j (7)
sensor. Cells that contain less than a predefined fraction (we ΣCi,j
used 0.25) of the expected points are skipped. where Ci,j is the 3 × 3 confidence matrix and Gi,j the
3 × 3 ground elevation matrix centered at i, j. The ◦-symbol
represents the element-wise multiplication. The confidence
D. Ground Elevation Calculation
values are updated as follows:
In this step, the ground elevation and a corresponding ci,j
confidence value are calculated. It is again performed for ci,j ← ci,j − (8)
θ
patches of 9 to 25 cells (see sec. III-C). The ground elevation
where ci,j is the confidence value at cell index i, j. The
hi,j for the cell i, j is calculated as follows:
P parameter θ is a constant decay factor that reduces the ground
(Pi,j ◦ Mi,j ) confidence over time.
hi,j = P (3)
Pi,j
where Pi,j denotes the point count matrix at cell i, j and F. Point Cloud Segmentation
Mi,j the matrix containing the minimum height values. The With the terrain elevation map, the point cloud can be
◦-operator denotes the element-wise multiplication. The usage segmented. We compare two threshold parameters hg and
of point count weighted minimum height values as ground ho with each point’s z-height above the corresponding cell’s
elevation minimizes the risk of a too high ground estimation elevation for the segmentation. hg is for segmenting areas
STEINKE et al.: GROUNDGRID: POINT CLOUD GROUND SEGMENTATION AND TERRAIN ESTIMATION 5

classified as ground while ho is for segmenting areas classified included in the point clouds). All other labels are evaluated as
as obstacles. We set ho < hg because the aim is to segment non-ground.
all of the obstacle’s points correctly while avoiding over-
segmentation in sloped ground areas. B. Ground Segmentation Evaluation
IV. EXPERIMENTS AND EVALUATION Fig. 3 shows qualitative results of the SemanticKITTI
dataset. From top to bottom we compare the provided ground
In this section, we present a qualitative and quantitative
truth with the results of the methods Patchwork++ [16],
evaluation of the ground segmentation and terrain estimation
JPC [10] and GndNet [8], and GroundGrid (ours). The first
results of the proposed system. We compare the ground seg-
scenario a) is cloud 40 of sequence 01. One notable difficulty
mentation results using the SemantikKITTI dataset to the state-
in this scenario is the ditch located in the right part of
of-the-art methods Patchwork++ [16], Jump Point Convolution
the image. GroundGrid is the only method segments the
(JPC) [10] and GndNet [8] leveraging open source implemen-
points located in and around this ditch correctly while other
tations123 . We evaluate the terrain estimation capabilities by
methods over-segment the outer slope. The same applies to
using self-acquired data and a public georeferenced Airbourne
the points around the curbs where the other method display
Lidar Scanning (ALS) dataset [20].
over-segmentation. Some methods fail to correctly segment
the points on the opposite lane left to the vehicle because
A. Parameters most laser beams are blocked by the guardrail. The distant
In all experiments the parameters for our method were set guardrail in the lower right part is correctly segmented by all
as follows: We chose a grid map resolution of R = 0.33m methods except JPC which slightly over-segments it and ours
which offers a reasonable compromise between accuracy and which partly under-segments it. In b) (seq. 09, cloud 1590)
computational performance. The variance threshold distance the methods have to deal with significant elevation differences
scaling factor was set to dsf = 10−5 (eq. 1) and the minimum and a steep slope in the driving direction. All methods over-
variance threshold to tminv = 5 · dsf . The confidence decay segment parts of the road surface in this scenario. Patch-
was θ = 5 (eq. 8). The minimum point count relative to work++ performs well in lower streets towards the bottom but
the expected point count per cell (eq. 2) to perform the struggles with the higher elevated parts in the upper half of the
ground detection was gminp = 0.25, cells with fewer points image. GndNet struggles with the smaller streets to the sides.
are skipped. The minimal ground confidence for the outlier JPC over-segments the lower small street and the area around
detection (sum of a 5 × 5 matrix) was ominc = 1.25, to the curbs. GroundGrid manages to correctly segment almost all
avoid using interpolated cells for the outlier detection. The of the street surface but some over-segmentation can be found
two thresholds for the point cloud segmentation were set to at the very top where a part of the curb is wrongly classified.
hg = 0.3m for cells classified as ground and ho = 0.1m for Scenario c) is a detailed view of a difficult segmentation
obstacle cells (see III-F). The confidence point count scaling situation (seq. 10, cloud 164). The non-continuous ground
factor was s = 20, so that a ground cell must contain at least elevation changes combined with vegetation and tilted surfaces
20 points to reach a perfect confidence rating of 1 (see 4). The make the ground segmentation task especially challenging.
outlier tolerance was set to ot = 0.1m, so points that were Patchwork++ tends to over-segment which is visible in the
occluded by less than this height are still considered valid. sloped area to the center right and in the area in the back.
The distance where the patch size changes from 3 × 3 to 5 × 5 There is also under-segmentation present at the wall to the
was dps = 20m. The expected point distance was dpv = 0.4◦ center-back and right. GndNet severely struggles with over-
(see 2) which is based on the pessimistic assumption that at segmentation in the sloped area to the center right while
least half of the beams of the HDL64e produced a return at heavily under-segmenting the cars and walls in the center
10Hz. The point count threshold to use the cell’s variance back. JPC over-segments the area to the center right as well
instead of the patch’s was vnp = 10. Our implementation as the ground surface in the center back. GroundGrid also
uses the Robot Operating System (ROS) and the Grid Map suffers from over-segmentation in this scenario albeit less
library [19]. We evaluated GroundGrid’s ground segmentation strongly compared to the other methods: There is some over-
performance with the SemanticKITTI dataset. We define the segmentation in the center right area around the vegetation
labels lane-marking, other-ground, parking, road, sidewalk, and near the wall that separates the area from the street level.
and terrain as ground. The labels unlabeled and outlier are This is also true for the walls in the back part but the elevated
ignored in the error metrics since they do not belong to either ground surface is still mostly correctly segmented. For the
class. Points labeled vegetation are also ignored in the error quantitative evaluation, we chose the following error metrics:
metrics. Due to the way the vegetation class is labeled in the TP TP
Precision = Recall = (9)
SemanticKITTI dataset it is impossible to say if the majority TP + FP TP + FN
of point belonging to this class belong to the ground surface 2 · TP TP
F1 = IoU = (10)
or not. Hence we decided to follow the example of Lee et 2 · TP + FP + FN TP + FP + FN
al. [16] and exclude this label from the error metrics (it is still TP + TN
Accuracy = (11)
TP + TN + FP + FN
1 https://github.com/url-kaist/patchwork-plusplus
2 https://github.com/anshulpaigwar/GndNet where TP and FP represent the count of true positive and
3 https://github.com/wangx1996/Fast-Ground-Segmentation-Based-on-JPC false positive ground points and TN and FN the count of true
6 IEEE ROBOTICS AND AUTOMATION LETTERS. PREPRINT VERSION. ACCEPTED OCTOBER, 2023

Ground Truth [2]

Patchwork++ [16]

GndNet [8]

JPC [10]

Ours

a) b) c)
Fig. 3. Ground segmentation qualitative evaluation (ground points in green / obstacle points in red)

and false negative ground points. Table I shows the results the city of Berlin [20]. The maximum absolute height error is
for all methods on the SemanticKITTI dataset. GroundGrid verified to be smaller than 0.05m, validated with 30 known
exhibits the best performance in most metrics except Recall reference points [20]. We preprocessed the point clouds by
and Precision where Patchwork++ and GndNet produce higher filtering non-ground points and rasterizing them onto a grid
averages. The high recall for Patchwork++ comes with a lower with 0.5m cell size to create rasterized elevation maps which
precision compared to the other methods which suggests a we used to evaluate the elevation maps produced by the
tendency for over-segmentation. This is contrasted by GndNet algorithms (see ground truth in Fig 4). We evaluate two
which scores the highest in the recall metric but suffers from experiments in different settings: The first in an urban road
severe under-segmentation. Keep in mind that this method was setting with mostly flat terrain, and the second in a forest area
trained on this very same dataset so possible overfitting could driving downwards in sloped terrain. We generated the data
influence the results. with our autonomous test vehicle equipped with a Velodyne
HDL-64e 64-beam LiDAR placed on the car’s roof and an
Applanix POS-LV GNSS for localization purposes. Fig. 4
C. Terrain Estimation Evaluation
shows visualizations (created using [21]) of some of the results
For the terrain estimation evaluation, we used the publicly of the terrain estimation experiments. This data was collected
available Airborne Lidar Scanning (ALS) data published by
STEINKE et al.: GROUNDGRID: POINT CLOUD GROUND SEGMENTATION AND TERRAIN ESTIMATION 7

TABLE I
G ROUND SEGMENTATION ACCURACY EVALUATION

seq. 00 01 02 03 04 05 06 07 08 09 10 average
Precision
Patchwork++ 94.99 98.27 95.96 96.81 98.18 92.65 97.86 93.29 96.97 96.06 92.81 95.80
GndNet 92.40 96.54 93.74 95.60 97.30 89.58 96.15 90.09 95.09 93.81 88.34 93.51
JPC 96.78 97.97 97.50 98.09 99.01 94.03 97.96 95.65 97.97 97.64 95.27 97.08
Ours 96.05 98.01 97.36 97.96 99.08 95.19 97.82 95.31 97.50 97.25 95.38 96.99
Recall
Patchwork++ 98.67 96.52 97.20 98.17 97.21 98.13 97.39 98.42 97.41 96.45 95.93 97.41
GndNet 99.50 96.91 96.94 96.68 99.06 98.69 99.00 99.44 98.74 96.14 93.60 97.70
JPC 97.20 95.46 93.72 94.86 96.91 95.64 96.23 96.53 95.13 92.66 88.47 94.97
Ours 98.70 96.17 97.71 97.95 97.85 98.13 98.38 98.72 97.79 96.91 95.90 97.65
F1
Patchwork++ 96.80 97.39 96.58 97.49 97.69 95.31 97.63 95.79 97.19 96.25 94.35 96.59
GndNet 95.82 96.72 95.31 96.14 98.17 93.91 97.55 94.53 96.88 94.96 90.89 95.53
JPC 96.99 96.70 95.57 96.45 97.95 94.83 97.09 96.09 96.53 95.09 91.74 95.91
Ours 97.35 97.08 97.54 97.96 98.46 96.64 98.10 96.99 97.64 97.08 95.64 97.32
Accuracy
Patchwork++ 96.64 95.96 95.08 96.08 96.39 94.79 96.63 95.88 96.37 94.90 93.75 95.68
GndNet 95.53 94.88 93.20 93.99 97.10 93.10 96.46 94.52 95.91 93.08 89.81 94.33
JPC 96.89 94.93 93.80 94.59 96.81 94.37 95.89 96.26 95.60 93.50 91.35 94.91
Ours 97.24 95.50 96.48 96.84 97.60 96.32 97.29 97.08 96.97 96.05 95.25 96.60
IoU
Patchwork++ 93.79 94.90 93.38 95.09 95.49 91.04 95.36 91.91 94.53 92.78 89.30 93.41
GndNet 91.97 93.65 91.04 92.55 96.41 88.52 95.22 89.63 93.94 90.41 83.30 91.51
JPC 94.15 93.61 91.52 93.14 95.98 90.16 94.34 92.47 93.29 90.64 84.75 92.19
Ours 94.84 94.33 95.19 96.00 96.97 93.49 96.27 94.15 95.40 94.33 91.64 94.78

Urban

Hill

Ground Truth [20] GndNet [8] Ours


Fig. 4. Terrain estimation qualitative evaluation

by averaging the terrain estimation output of the methods. where all lanes are connected. Trees can also be found on the
Only pixels with a point density of at least 27 points
m2 were side of the streets which raises the difficulty for the terrain
considered. This equals 3 points per 0.33m2 area on average estimation. The dividing elevated area between the lanes can
which we define as a lower threshold for a meaningful variance be seen in the ground truth and GroundGrid’s results. Whereas
calculation. For comparison purposes, we display the ALS GndNet’s results only faintly show the outline of this area.
ground truth alongside the results. The visualization of the However, GroundGrid struggles to correctly interpolate the
urban scenario shows a T-type crossing where three streets area under the trees on the side of the road and the dividing
meet. Our vehicle traveled straight hence the third street is area. This is represented by lower circular areas in the ground
not covered by the terrain estimation methods. The lanes are estimation, visible as darker spots in the visualization. GndNet
divided by artificially raised ground covered with trees and does not display these spots but does seem to smooth the
lower vegetation except for the center part of the crossing elevation map too much leading to a loss of detail. The results
8 IEEE ROBOTICS AND AUTOMATION LETTERS. PREPRINT VERSION. ACCEPTED OCTOBER, 2023

TABLE II implementation is available as open source and we invite the


S URFACE ESTIMATION ACCURACY EVALUATION ( RSME IN M ) reader to reproduce our results.
urban hill
R EFERENCES
GndNet 0.297 1.581
Ours 0.196 0.488 [1] Li, Y. and Ibanez-Guzman, J., “Lidar for Autonomous Driving: The
Principles, Challenges, and Trends for Automotive Lidar and Perception
Systems”, in IEEE Sig. Process., vol. 37, no. 4, pp. 50-61, 2020.
of the hill scenario show the performance in the presence of [2] Behley, J., Garbade, M., Milioto, A., Quenzel, J., Behnke, S., Stachniss,
a significant elevation difference. The pictured area covers a C., and Gall, J., “SemanticKITTI: A dataset for semantic scene under-
trajectory length of approx. 250m of the car’s trajectory with standing of LiDAR sequences”, in Proc. IEEE/CVF Int. Conf. Comp.
Vis., pp. 9297–9307, 2019.
an elevation difference of 23m between the top and bottom [3] Gomes, T. and Matias, D. and Campos, A. and Cunha, L. and Roriz,
point which translates into an average inclination of 9.2%. R., “A Survey on Ground Segmentation Methods for Automotive LiDAR
Due to the dense tree cover on the roadsides, the ground Sensors”, Sensors, no. 2, vol. 23, p. 601, 2023.
[4] S. Kammel, J. Ziegler, B. Pitzer, M. Werling, T. Gindele, D. Jagzent, J.
visibility was low except on the street. Paigwar’s GndNet Schröder, M. Thuy, M. Goebl, F. von Hundelshausen, O. Pink, C. Frese,
struggled in this challenging environment which is shown by and C. Stiller, “Team AnnieWAY’s autonomous system for the DARPA
the high amount of noise in the resulting terrain estimation. Urban Challenge 2007”, in Journ. Field Robot. Spec. Issue 2007 DARPA
Urban Chall., Part II, vol. 25, pp. 615-639, 2008.
The sides of this narrow street are covered with trees and the [5] M. Montemerlo, J. Becker, S. Bhat, H. Dahlkamp, D. Dolgov, S.
terrain is rough and uneven. Since GndNet was trained on the Ettinger, D. Haehnel, T. Hilden, G. Hoffmann, B. Huhnke, et al., “Junior:
SemanticKITTI dataset it has never seen this type of terrain The Stanford entry in the Urban Challenge”, in Journ. Field Robot. Spec.
Issue 2007 DARPA Urban Chall., Part II, vol. 25, pp. 569-597, 2008.
before and struggles to generalize its learned segmentation to [6] C. Urmson et al., ‘Autonomous Driving In Urban Environments: Boss
this scenario. This is contrasted by the result of GroundGrid and the Urban Challenge, in Journ. Field Robot. Spec. Issue 2007
which is able to correctly extract the street’s surface from the DARPA Urban Chall., Part I, vol. 25, pp. 425–466, 2008.
[7] He, D., Abid, F., Kim, Y., Kim, J., “SectorGSnet: Sector Learning for
point cloud data. Only in the part after the turn, some noise Efficient Ground Segmentation of Outdoor LiDAR Point Clouds”, IEEE
is visible on the side of the road. Since the parameters of Access, vol. 10, pp. 11938-11946, 2022.
our method were the same in all experiments it shows that [8] Paigwar, A. and Erkent, O. and Sierra-Gonzalez, D. and Laugier, C.,
“GndNet: Fast Ground Plane Estimation and Point Cloud Segmentation
GroundGrid generalizes well over various scenarios. The root for Autonomous Vehicles”, in Proc. IEEE/RSJ Int. Conf. on Intell.
mean square error as measured against the ground truth data is Robots Syst., pp. 2150-2156, 2020.
shown in tab. II. GroundGrid achieves the best performance in [9] Bogoslavskyi, I., Stachniss, C., “Fast range image-based segmentation
of sparse 3D laser scans for online operation”. in Proc. IEEE/RSJ Int.
both scenarios. The results show the high difficulty of the hill Conf. on Intell. Robots Syst., pp. 163–169, 2016.
scenario, especially GndNet is not able to provide an accurate [10] Shen, Z. and Liang, H. and Lin, L. and Wang, Z. and Huang, W. and
terrain estimation. The underlying network does seem to be Yu, J., “Fast Ground Segmentation for 3D LiDAR Point Cloud Based on
Jump-Convolution-Process”, Remote Sensing, vol. 13, no. 16, p. 3239,
able to generalize to this type of terrain due to the lack of 2021.
similar training data. However, the performance of our method [11] T. Wu, H. Fu, B. Liu, H. Xue, R. Ren, and Z. Tu, “Detailed Analysis
is also considerably lower in the hill scenario which seems to on Generating the Range Image for LiDAR Point Cloud Processing,”
Electronics, vol. 10, no. 11, p. 1224, 2021.
be caused by the occlusion due to the forest area. [12] Himmelsbach, M. and Hundelshausen, Felix v. and Wuensche, H.-J.,
“Fast Segmentation of 3D Point Clouds for Ground Vehicles”, in Proc.
IEEE Intell. Veh. Symp., pp. 560-565, 2010.
D. Run-Time [13] Cheng, J. and He, D. and Lee, C., “A simple ground segmentation
method for LiDAR 3D point clouds”, on Proc. 2nd Int. Conf. Adv.
GroundGrid has a high run-time performance of 171Hz Comp. Tech., Info. Sc. Comm., pp. 171-175, 2020.
(5.85ms per point cloud) measured on an Intel i5-13600k [14] Lim, H. and Oh, M. and Myung, H., “Patchwork: Concentric Zone-based
Region-wise Ground Segmentation with Ground Likelihood Estimation
desktop system. The implementation of the point cloud ras- Using a 3D LiDAR Sensor”, IEEE Robot. Automat. Lett., vol. 6, 2021.
terization, outlier detection, and ground cell classification is [15] Douillard, B. and Underwood, J. and Kuntz, N. and Vlaskine, V. and
multi-threaded using up to eight threads in our evaluation. The Quadros, A. and Morton, P. and Frenkel, A., “On the segmentation of
3D LIDAR point clouds”, in Proc. IEEE Int. Conf. Robot. Automat.,
ground interpolation and point cloud segmentation are single- pp. 2798-2805, 2011.
threaded. [16] Lee, S. and Lim, H. and Myung, H., “Patchwork++: Fast and Robust
Ground Segmentation Solving Partial Under-Segmentation Using 3D
Point Cloud”, in Proc. IEEE/RSJ Int. Conf. Intell. Robots Syst., pp.
V. CONCLUSION 13276-13283, 2022.
[17] Qi, C. R., Su, H., Mo, K., Guibas, L. J., “PointNet: Deep Learning on
In this article, we presented a method for the point cloud Point Sets for 3D Classification and Segmentation, in Proc. IEEE Conf.
ground segmentation and terrain estimation task consisting Comp. Vis. Pattern Recognit., pp. 77-85, 2017.
[18] Welford, B. P., “Note on a Method for Calculating Corrected Sums of
of outlier filtering, grid map rasterization, variance-based Squares and Products”, in Technometrics, vol. 4, no. 3, pp. 419-420,
ground detection and the retention of previous information. 1962.
The experimental results demonstrate the capabilities of the [19] Fankhauser, P., Hutter, M., “A Universal Grid Map Library: Implemen-
tation and Use Case for Rough Terrain Navigation”, In Robot Operating
algorithm which outperforms current state-of-art methods in System (ROS) – The Complete Reference, vol. 1, chap. 5, 2016.
point cloud ground segmentation and terrain estimation tasks. [20] Senatsverwaltung für Stadtentwicklung und Wohnen, Geoportal Berlin /
This was demonstrated quantitatively and qualitatively using “Airborne Laserscanning (ALS) - Primäre 3D Laserscan-Daten”. online,
https://www.stadtentwicklung.berlin.de/geoinformation/, licence: https://
the SemanticKITTI dataset as well as self-acquired data from www.govdata.de/dl-de/by-2-0.
scenarios. The run-time performance is very high which [21] Morgan-Wall, T., “rayshader: Create Maps and Visualize Data in 2D
enables online operation in mobile robots. The code of our and 3D”, online, https://www.rayshader.com, 2023.

You might also like