# A Spatiotemporal Correspondence Approach to Unsupervised LiDAR Segmentation
with Traffic Applications

Xiao Li, Pan He†, Aotian Wu, Sanjay Ranka, Anand Rangarajan Xiao Li, Aotian
Wu, Sanjay Ranka, and Anand Rangarajan are with the Dept. of Comput. & Info.
Sci. & Eng., University of Florida, Gainesville, FL 32611. Pan He is with the
Dept. of Comput. Sci. and Soft. Eng., Auburn University, Auburn, AL 36849. †
indicates the corresponding author.

###### Abstract

We address the problem of unsupervised semantic segmentation of outdoor LiDAR
point clouds in diverse traffic scenarios. The key idea is to leverage the
spatiotemporal nature of a dynamic point cloud sequence and introduce
drastically stronger augmentation by establishing spatiotemporal
correspondences across multiple frames. We dovetail clustering and pseudo-
label learning in this work. Essentially, we alternate between clustering
points into semantic groups and optimizing models using point-wise pseudo-
spatiotemporal labels with a simple learning objective. Therefore, our method
can learn discriminative features in an unsupervised learning fashion. We show
promising segmentation performance on Semantic-KITTI, SemanticPOSS, and
FLORIDA benchmark datasets covering scenarios in autonomous vehicle and
intersection infrastructure, which is competitive when compared against many
existing fully supervised learning methods. This general framework can lead to
a unified representation learning approach for LiDAR point clouds
incorporating domain knowledge.

##  I INTRODUCTION

Semantic LiDAR segmentation is a fundamental problem in computer vision which
supports downstream application areas such as autonomous vehicles, robotics,
augmented reality, and human-computer interaction. To achieve good
performance, one popular approach is to use deep neural networks for
extracting discriminative features via supervised learning provided we have
sufficiently massive data and labels. However, compared to labeling semantic
labels for pixels from images, it is much more time-consuming, challenging,
and expensive to annotate pointwise semantic labels for each point cloud that
is non-intuitive and sparse, which explains why large-scale 3D datasets for
semantic segmentation are scarce. For example, it takes roughly 4.5 hours to
label a point cloud covering a small residential area of $100$m by $100$m [1].

Early research works [2, 3] aim to reduce the annotation cost and effort via
semi-supervised learning. They leverage easy-to-acquire unlabeled data for
scalable LiDAR segmentation but require considerable pointwise labeled LiDAR
data for sufficient learning under supervision. Developing efficient and
effective unsupervised approaches remains a challenging problem and may
require combining object and group discovery with exhaustive and dense
labeling over data elements such as pixels or points following classic Gestalt
Principles [4].

In this work, we aim to eliminate the need for any pointwise ground truth
annotations for LiDAR data. Specifically, we seek to learn pointwise
representations or feature embeddings by integrating self-supervised and deep-
learning models. We have recently witnessed significant progress in self-
supervised and unsupervised learning [5, 6, 7], where most learning systems
have focused on generating a single feature vector for a given sample, e.g.,
image-level classification or 3D shape classification. However, such systems
could rely on only a few salient, distinct, and stable features partially
taken from the original data and potentially ignore the remaining features.
Ideally, segmenting the LiDAR point cloud must examine every point in terms of
whether it comes from the background, stationary objects, dynamic objects, or
are noisy, outlier points. Furthermore, significant intraclass variations
(e.g., pedestrians at different distances) and interclass similarities (e.g.,
scooter riders and pedestrians) further prevent accurate segmentation.

In this paper, we develop a practical unsupervised LiDAR segmentation method
by switching between clustering the points into semantic groups based on their
feature embeddings and optimizing models using pointwise pseudo-semantic
labels generated from clustering. Inspired by [8], we learn point embeddings
by enforcing equivariance for geometric transformations. It is worth noting
that such a framework relies on data augmentation carefully designed to
capture the underlying equivariance and preserve the instance or semantic
identities between augmented samples. The significant impact of data
augmentation strategies has been explored in various methods such as InfoMin
[9] for learning better feature representations. In our work, we observe that
the spatiotemporal nature of a dynamic point cloud sequence introduces
drastically stronger augmentation because their points are constantly changing
over time due to object motion, occlusion, and observer movement. Therefore,
we propose leveraging spatiotemporal patterns to create stronger augmented
views across different frames. To do so, we introduce a straightforward
objective that considers the spatiotemporal correspondence as the additional
constraint.

Despite the simplicity of our developed approach, it is competitive with some
well-known prior work with fully supervised learning having ground truth
labels. A systematic pipeline of LiDAR alignment, multiple dynamic object
segmentation and tracking, and correspondence labeling is developed to
establish spatiotemporal correspondence in multiple datasets with different
types of dataset characteristics. To summarize, we make the following
contributions:

  * •

We demonstrate that spatiotemporal correspondence can largely help improve the
performance of unsupervised LiDAR semantic segmentation.

  * •

We develop an unsupervised segmentation framework for LiDAR data from dynamic
scenes.

  * •

To the best of our knowledge, we are the first to conduct unsupervised LiDAR
semantic segmentation in autonomous driving and infrastructure datasets.

  * •

We show promising segmentation performance on Semantic-KITTI, SemanticPOSS,
and FLORIDA benchmark datasets.

The rest of the paper is structured as follows. Section II presents the
related work. The methodology developed for unsupervised segmentation is
described in Section III. Section IV outlines the conducted experiments.
Conclusions are described in Section V.

##  II RELATED WORK

Point Cloud Models. Point clouds are unordered and challenging to process with
standard convolutional neural networks. PointNet [10] was the first network
that operated on raw point clouds by addressing point cloud data’s unordered
format and invariance. PointNet++ [11] follows the idea of PointNet and
proposes to utilize both global information and local details with the
farthest sampling layer and a grouping layer. Instead of consuming point cloud
data directly, the pioneering SqueezeSeg [12] projects the data onto a 2D
image using spherical range projection and processes the projected 2D image
with an encoder-decoder architecture. Extensions of these works include
SqueezeSegV2 [13], Rangenet++[14], SalsaNet [15], and SalsaNext [6]. We
adopted SalsaNext as the backbone as it provides a good trade-off between
speed and accuracy.

Self-supervised Feature Learning. Self-supervised feature learning aims to
extract meaningful visual features without ground truth labels. Substantial
research has focused on optimizing specific surrogate tasks such as denoising
[16], inpainting [17], rotation [18], or contrastive learning over multiple
augmentations [19]. Contrastive learning approaches seek to learn feature
representations by contrasting similar and dissimilar pairs of samples via
data augmentations. They minimize the distances between positive pairs (i.e.,
one image and its augmented image) and maximize the distances between negative
pairs (i.e., one image and another randomly sampled image). Recently,
noncontrastive self-supervised learning (NC-SSL) methods learn meaningful
feature representations using only positive pairs, different from the
contrastive approaches using both positive and negative pairs. Despite the
lack of negative pairs, NC-SSL approaches use techniques such as extra
predictors, stop gradient, batch normalization, decorrelation, whitening, and
centering to avoid model collapse and have achieved comparable or better
performance. In addition, there are attempts to provide theoretical studies
for NC-SSL [20, 21].

Unsupervised Semantic Segmentation. Deep learning-based semantic segmentation
has been widely studied [22]. Most studies focus on supervised learning, while
unsupervised semantic segmentation has not been fully explored. The pioneering
IIC [23] extends mutual information-based clustering to pixel-level clustering
by outputting a probability map over image pixels. Contrastive Clustering [24]
and SCAN [25] have further improved IIC’s results by incorporating negative
samples and nearest neighbors as supervision. However, it should be noted that
these methods focus on image clustering and do not address the task of
semantic segmentation. PiCIE [8] proposes incorporating geometric consistency
as an inductive bias to learn invariance and equivariance for photometric and
geometric variations. Our work builds a baseline approach by adapting PiCIE
for unsupervised LiDAR point cloud segmentation and introduces stronger
supervision signals by finding spatiotemporal correspondences from sequences.

Dynamic Object Segmentation. The dynamic object segmentation approaches can be
divided into two categories, namely map-based and map-free approaches. In map-
based approaches, they segment dynamic objects from LiDAR point clouds by
exploiting prior information from the scene, such as a prebuilt 3D
environmental map, to detect and track moving objects by comparing the current
LiDAR data against the map [26]. In contrast, map-free approaches rely solely
on raw point clouds to perform segmentation. One typical map-free approach is
clustering-based segmentation to group points in the point cloud belonging to
the same object based on their point or feature similarity. One popular
clustering-based algorithm is DBSCAN (Density-Based Spatial Clustering of
Applications with Noise) [27], which partitions data points that are densely
packed into the same group while marking data points that lie in sparser
regions as noise. Other clustering-based approaches includ DBSCAN [28] and
K-means clustering.

##  III METHODOLOGY

(a)  Figure 1: Method overview: Finding correspondences for static objects and
dynamic objects (top). Feature clustering and model training (bottom)

We aim to segment a point cloud into semantic objects or regions without
providing ground-truth semantic or instance labels. Formally, given a 3D point
cloud (e.g., obtained from a LiDAR sensor) denoted as
$\boldsymbol{P}=\\{\boldsymbol{p}_{1},\boldsymbol{p}_{2},...,\boldsymbol{p}_{n}\\}$,
where each point $\boldsymbol{p}_{i}$ is represented by its 3D coordinates
$(x_{i},y_{i},z_{i})$ and its associated feature (e.g., intensity), the goal
of unsupervised segmentation is to find a partition of $\boldsymbol{P}$ into
$m$ segments $S=\\{S_{1},S_{2},...,S_{m}\\}$, such that: (i) Each segment
$S_{j}(1\leq j\leq m)$ represents a coherent region of points that belongs to
the same semantic class or the same instance; (ii) The segments are mutually
exclusive and exhaustive such that every point in $P$ belongs to exactly one
segment, and the segments cover all points in $\boldsymbol{P}$.

###  III-A Baseline Approach

#### Input Representation

Inspired by [12, 6], we prefer the compact and efficient Range View (RV)-based
representation for LiDARs that projects a 3D LiDAR point cloud onto a
spherical surface. Formally, each point $\boldsymbol{p}_{i}$ is projected to
an image coordinate $(u_{i},v_{i})$ as follows:

$\begin{pmatrix}u_{i}\\\ v_{i}\\\
\end{pmatrix}=\begin{pmatrix}\frac{1}{2}\left[1-\arctan(y_{i},x_{i})\pi^{-1}\right]W\\\
\left[1-(\arcsin(\boldsymbol{z}_{i}/r_{i}))+f_{\mathrm{down}})f^{-1}\right]H\\\
\end{pmatrix}$ (1)

where $r_{i}=\sqrt{x_{i}^{2}+y_{i}^{2}+z_{i}^{2}}$ is the range value of each
point $\boldsymbol{p}_{k}$. $H$ and $W$ denote the height and the width of the
projected 2D RV image, respectively. $f=|f_{\mathrm{down}}|+|f_{\mathrm{up}}|$
defines the sensor vertical field of view. During projection, the 3D point
coordinate $(x_{i},y_{i},z_{i})$, its intensity value ${intensity}_{i}$, and
the range value $r_{i}$ are stored in separate channels, generating a
$\left[H\times W\times 5\right]$ RV image.

#### Backbone Network

The backbone network is the popular SalsaNext [6], an upgraded version of
SalsaNet [15], featuring an encoder-decoder architecture. With its model
parameters $\boldsymbol{w}$, we project the RV image representation of size
$H\times W\times 5$ to a feature map $\boldsymbol{F}_{\boldsymbol{w}}$ of size
$H\times W\times C$.

#### Unsupervised Segmentation

Assume we have a set of unlabeled point clouds $\boldsymbol{P}^{j},j=1,...,n$,
and their corresponding feature representations
$\boldsymbol{F}_{\boldsymbol{w}}^{j},j=1,...,n$, after deploying the SalsaNext
network. We denote
$\boldsymbol{f}_{\boldsymbol{w}}^{j}(u_{i},v_{i})\in\boldsymbol{F}_{\boldsymbol{w}}^{j}$
as the feature map of the $j$-th point cloud at the image coordinate
$(u_{i},v_{i})$. The baseline approach follows PiCIE [8] and alternates
between two key steps:

  1. 1.

Apply K-means to cluster current feature embeddings:

$\min_{\boldsymbol{\mu},\boldsymbol{l}}\sum_{i,j}\left\|\boldsymbol{f}_{\boldsymbol{w}}^{j}(u_{i},v_{i})-\boldsymbol{\mu}_{\boldsymbol{l}_{j,i}}\right\|^{2}_{2}$
(2)

where $\boldsymbol{l}_{j,i}$ denotes the cluster label of the pixel at the
location $(u_{i},v_{i})$ in the RV feature map of the $j$-th point cloud, and
$\boldsymbol{\mu}_{k}$ is the $k$-th cluster centroid.

  2. 2.

Use the assigned cluster labels to update the model parameters based on the
following loss:

$\displaystyle\min_{{\boldsymbol{w}}}\sum_{i,j}\ell_{CE}(\boldsymbol{f}_{\boldsymbol{w}}^{j}(u_{i},v_{i}),\boldsymbol{l}_{j,i},\boldsymbol{\mu}),\quad\mathrm{where}$
(3)
$\displaystyle\ell_{CE}(\boldsymbol{f}_{\boldsymbol{w}}^{j}(u_{i},v_{i}),\boldsymbol{l}_{j,i},\boldsymbol{\mu})=-\log\frac{e^{-d(\boldsymbol{f}_{\boldsymbol{w}}^{j}(u_{i},v_{i}),\boldsymbol{\mu}_{\boldsymbol{l}_{j,i}})}}{\sum_{k}e^{-d(\boldsymbol{f}_{\boldsymbol{w}}^{j}(u_{i},v_{i}),\boldsymbol{\mu}_{k})}}$
(4)

and $d(\cdot,\cdot)$ denotes the cosine distance. Equation (4) defines a
nonparametric prototype-based classifier to label pixels based on their
distances from the centroids.

We adapt these two key steps for learning equivalence with respect to
geometric transformations on point clouds. We apply several augmentations to
point clouds before projecting them to RV images. Then, we create two views of
the same point cloud $\boldsymbol{P}^{j}$ via two geometric transformations,
$G_{1}$ and $G_{2}$, and generate two feature maps for $\boldsymbol{p}_{i}$ in
$\boldsymbol{P}^{j}$:

$\displaystyle\boldsymbol{z}^{(1)}_{j,i}=\boldsymbol{f}_{\boldsymbol{w}}^{j}(u_{i},v_{i},G_{1}),$
(5)
$\displaystyle\boldsymbol{z}^{(2)}_{j,i}=\boldsymbol{f}_{\boldsymbol{w}}^{j}(u_{i},v_{i},G_{2}).$
(6)

We then separately perform clustering on the two views to obtain two separate
sets of pseudo-labels and centroids:

$\displaystyle\boldsymbol{l}^{(1)},\boldsymbol{\mu}^{(1)}=\operatorname*{arg\,min}_{\boldsymbol{\mu},\boldsymbol{l}}\sum_{i,j}\left\|\boldsymbol{z}^{(1)}_{j,i}-\boldsymbol{\mu}_{\boldsymbol{l}_{j,i}}\right\|^{2}_{2}$
(7)
$\displaystyle\boldsymbol{l}^{(2)},\boldsymbol{\mu}^{(2)}=\operatorname*{arg\,min}_{\boldsymbol{\mu},\boldsymbol{l}}\sum_{i,j}\left\|\boldsymbol{z}^{(2)}_{j,i}-\boldsymbol{\mu}_{\boldsymbol{l}_{j,i}}\right\|^{2}_{2}$
(8)

Following PiCIE [8], we use two loss functions to ensure the consistency of
embeddings within each view and across two views:

$\displaystyle E_{\mathrm{within}}({\boldsymbol{w}})=$
$\displaystyle\sum_{i,j}\ell_{CE}(\boldsymbol{f}_{\boldsymbol{w}}^{j}(u_{i},v_{i},G_{1}),\boldsymbol{l}^{(1)}_{j,i},\boldsymbol{\mu}^{(1)})+$
$\displaystyle\sum_{i,j}\ell_{CE}(\boldsymbol{f}_{\boldsymbol{w}}^{j}(u_{i},v_{i},G_{2}),\boldsymbol{l}^{(2)}_{j,i},\boldsymbol{\mu}^{(2)}),$
(9) $\displaystyle E_{\mathrm{cross}}({\boldsymbol{w}})=$
$\displaystyle\sum_{i,j}\ell_{CE}(\boldsymbol{f}_{\boldsymbol{w}}^{j}(u_{i},v_{i},G_{1}),\boldsymbol{l}^{(2)}_{j,i},\boldsymbol{\mu}^{(2)})+$
$\displaystyle\sum_{i,j}\ell_{CE}(\boldsymbol{f}_{\boldsymbol{w}}^{j}(u_{i},v_{i},G_{2}),\boldsymbol{l}^{(1)}_{j,i},\boldsymbol{\mu}^{(1)}),$
(10) $\displaystyle E_{\mathrm{total}}({\boldsymbol{w}})=$ $\displaystyle
E_{\mathrm{within}}({\boldsymbol{w}})+E_{\mathrm{cross}}({\boldsymbol{w}}),$
(11)

which encourages feature equivariance to geometric transformations.

###  III-B Spatiotemporal Learning via Auto Labeling

#### LiDAR Alignment

Although we may have ground-truth pose for LiDAR sequences, we prefer a
flexible approach wherein we use raw sequential LiDAR sequences as the input
and estimate relative pose between two LiDAR scans on-the-fly via popular
registration algorithms such as Iterative Closest Point (ICP) [29].
Specifically, given a LiDAR point cloud sequence $\boldsymbol{P}^{1:T}$ of
length $T$, we apply the following data processing pipeline to obtain the
estimated poses. First, for each point cloud
$\boldsymbol{P}^{(t)}\in\boldsymbol{P}^{1:T}$, we remove its ground points
using a fast ground segmentation algorithm [30]. Second, we use the
Statistical Outlier Removal (SOR) Filter [31] to remove the outliers. Finally,
we align all point clouds w.r.t. the first point cloud $\boldsymbol{P}^{t=1}$
using ICP [29], which provides the estimated ego-motion matrix. We now obtain
a LiDAR point cloud sequence aligned to $\boldsymbol{P}^{t=1}$ denoted as
$\boldsymbol{P}^{1:T}_{\mathrm{aligned}}$.

#### Dynamic Object Segmentation

In a real-world environment, static objects and background points only have
ego-motion; therefore, identifying static objects and background regions and
finding the correspondences between them is relatively easy via simple nearest
neighbor searches between two aligned LiDAR point clouds. For example, suppose
the distances of one point to its nearest neighbor points in the other aligned
point clouds are small. In that case, it tends to be a stationary point from
static objects or the background. However, dynamic objects have extra object
motion, which means points on them cannot easily establish correspondences
using nearest neighbor searches due to potentially significant motion or
occlusion.

We identify potentially dynamic objects based on the observation that a
dynamic object will not appear in the same location in all aligned LiDARs due
to object motion. Therefore, the distances for each point in the dynamic
object in one point cloud $\boldsymbol{P}^{i}_{\mathrm{aligned}}$ to its
nearest neighbor points in other reference point clouds are likely to be
higher than those points in static objects or the background. Formally, given
the timestep set $T_{\mathrm{ref}}=\\{i-M:i-1\\}\cup\\{i+1:i+M\\}$, we denote
all reference point clouds w.r.t. $\boldsymbol{P}^{i}_{\mathrm{aligned}}$ as
$\boldsymbol{P}^{\mathrm{ref}}=\\{\boldsymbol{P}^{t}_{\mathrm{aligned}}\\}_{t\in
T_{\mathrm{ref}}}$ and define the following rule to compute the dynamic score
of each point and identify the dynamic object points.

$\mathrm{score}_{i}=1-e^{-\lambda\max\limits_{t\in
T_{\mathrm{ref}}}\|\boldsymbol{p}_{i}-\boldsymbol{p}_{i,t}\|_{2}}$ (12)
$\boldsymbol{p}_{i}\in\begin{cases}\text{dynamic},&\text{if
}\mathrm{score}_{i}\geq\epsilon\\\ \text{non-
dynamic},&\text{otherwise}\end{cases}$ (13)

where $\boldsymbol{p}_{i,t}$ denotes the closest point to $\boldsymbol{p}_{i}$
on the aligned point cloud $\boldsymbol{P}^{t}_{\mathrm{aligned}}$. The number
of frames we take into consideration to compute the dynamic score is $2M$, and
$\lambda$ is a hyperparameter for controlling sensitivity. The function in
Equation (13) ensures that its output values are between $[0,1)$. A higher
output value means a higher chance of being the points from a dynamic object.
We introduce a threshold $\epsilon$ such that the point whose output value is
greater than $\epsilon$ belongs to a dynamic object.

#### Multiple Dynamic Object Clustering

We choose DBSCAN [28] to group these dynamic points into instances. For each
point cloud in the aligned point cloud set
$\boldsymbol{P}^{1:T}_{\mathrm{aligned}}$, we first remove all the non-dynamic
points. We then augment each remaining point with the $\mathrm{score}_{i}$ and
use DBSCAN to generate a set of dynamic object clustering:

$\boldsymbol{S}_{\mathrm{dynamic}}=\mathop{\bigcup}\displaylimits_{k\in\\{1,\cdots,K\\}}\boldsymbol{s}_{k}$
(14)

where $\boldsymbol{s}_{k}$ denotes the $k$-th clustering step.

Based on the clustering results, we generate a bounding box
$\boldsymbol{b}_{k}=(c_{k},\gamma,l,w,h,v)$ for each cluster
$\boldsymbol{S}_{k}$ where $c_{k}\in\mathrm{R}^{3}$ is the center coordinates;
$l,w,h$ denote the length, width, and height of the bounding box,
respectively. $v$ is the volume of a bounding box where $v=l\texttimes
w\texttimes h$, $\gamma$ is the heading angle. We remove a bounding box that
is either too small or too large to consider outlier segments. For example, a
bounding box containing less than $N_{min}$ points or having a side length
greater than a size threshold. Finally, we can obtain a set of bounding box
instances $\boldsymbol{B}=\\{\boldsymbol{b}_{m}\\}_{m=1}^{K_{b}}$ with
$K_{b}\leq K$.

#### Multiple Dynamic Object Tracking

Our next step is to track instance bounding boxes such that we can associate
all dynamic object instances across multiple frames to establish the
correspondence. To do so, we construct a cost matrix
$\boldsymbol{C}\in\mathrm{R}^{K_{b}^{t}\times K_{b}^{t-1}}$ between all box
instances $\boldsymbol{B}^{t}$ at time $t$ and all previous tracked box
instances $\boldsymbol{B}^{t-1}$ at time $t-1$. We then formulate the
association problem of instances as a bipartite graph-based linear assignment
problem, which can be solved with Jonker-Volgenant algorithm [32]. Following
[33], we construct the cost matrix based on instance similarity w.r.t. three
geometric features, namely the center distance, the overlapping volume between
bounding boxes, and the change of volume between each pair of instances. Using
this simple tracking approach, we obtain the box-level correspondence between
dynamic object instances in different frames.

#### Auto Correspondence Labeling

Our final auto correspondence strategy for static, dynamic objects, and
background is therefore formulated as follows:

  1. 1.

For points from static objects and background, we directly find each point’s
correspondence in other point clouds by finding the closest point in the
aligned point clouds (if their distance is smaller than a threshold).

  2. 2.

For points from dynamic objects, we find each point’s correspondence by
finding its associated bounding box and bounding boxes in other point clouds
with the same instance ID. We then apply ICP between all points within the
point’s bounding box and other boxes to establish the point-to-point
correspondences based on a simple rigid motion assumption.

#### Spatiotemporal Learning

After establishing the correspondences, we follow the PiCIE learning pipeline
for unsupervised feature learning. The critical difference is that we conduct
the feature learning in a spatiotemporal fashion, which is considered a
stronger augmentation strategy than the two-view augmentation. Formally, given
two point clouds $\boldsymbol{P}^{t},\boldsymbol{P}^{t-k}$ at different
timestamps $t$ and $t-k$, we generate the feature maps for each point
$\boldsymbol{p}_{i}$ in the point cloud $\boldsymbol{P}^{t}$ and each point
$\boldsymbol{p}_{j}$ in the point cloud $\boldsymbol{P}^{t-k}$:

$\displaystyle\boldsymbol{z}_{t,i}=\boldsymbol{f}_{\boldsymbol{w}}^{t}(u_{i},v_{i},G_{1})$
(15)
$\displaystyle\boldsymbol{z}_{t-k,j}=\boldsymbol{f}_{\boldsymbol{w}}^{t-k}(u_{j},v_{j},G_{2}).$
(16)

Similar to Equations (7) and (8), we obtain two separate sets of pseudo-labels
and centroids for $\boldsymbol{P}^{t},\boldsymbol{P}^{t-k}$, which are denoted
as $\boldsymbol{l}^{(1)},\boldsymbol{\mu}^{(1)}$ and
$\boldsymbol{l}^{(2)},\boldsymbol{\mu}^{(2)}$, respectively. For each point
$\boldsymbol{p}_{i}$ in the point cloud $\boldsymbol{P}^{t}$, we denote its
corresponding point in the point cloud $\boldsymbol{P}^{t-k}$ as the point
$\boldsymbol{p}_{i\rightarrow j}$. We then introduce additional spatiotemporal
consistency of embeddings between them to encourage the feature vector of
$\boldsymbol{p}_{i}$ to match the cluster labels and centroids of
$\boldsymbol{p}_{i\rightarrow j}$. Using the point-wise correspondences, we
map the pseudo-label of one view to another, obtaining another two sets of
pseudo-labels $\boldsymbol{l}^{(2\rightarrow 1)}$ and
$\boldsymbol{l}^{(1\rightarrow 2)}$. Formally, the spatiotemporal loss is
defined as

$\displaystyle E_{ST}({\boldsymbol{w}})=$
$\displaystyle\sum_{i,t}\ell_{CE}(\boldsymbol{f}_{\boldsymbol{w}}^{t}(u_{i},v_{i},G_{1}),\boldsymbol{l}^{(2\rightarrow
1)}_{t-k,i},\boldsymbol{\mu}^{(2)})+$
$\displaystyle\sum_{j,t}\ell_{CE}(\boldsymbol{f}_{\boldsymbol{w}}^{t-k}(u_{j},v_{j},G_{2}),\boldsymbol{l}^{(1\rightarrow
2)}_{t,j},\boldsymbol{\mu}^{(1)})$ (17)

where $E_{ST}$ denotes a spatiotemporal loss. We randomly select two frames
with an interval of $n$ uniformly picked from the set
$F=\\{5,10,15,20,25,30\\}$.

#### Discriminative Push-Pull Loss Function

In this work, we customize another discriminative loss function that was
proposed in [7] as a regularization. The key idea of the original loss
function is to pull features that belong to the same group (e.g., same class)
together and push features that belong to different groups away from each
other for learning discriminative feature representations. As we cluster a
point cloud into a set of clusters using DBSCAN, we customize the original
design by defining the same group based on the size of their bounding box,
observing that point cloud clusters that belong to the same semantic class
tend to have a similar bounding box size. Hence, we define three semantic
groups, namely small dynamic group, large static group, and ground group. The
integrated loss function is

$E_{\mathrm{final}}({\boldsymbol{w}})=\alpha
E_{\mathrm{within}}({\boldsymbol{w}})+\beta E_{ST}({\boldsymbol{w}})+\gamma
E_{\mathrm{dloss}}({\boldsymbol{w}})$ (18)

where $E_{\mathrm{within}}$ ensures the consistency of embeddings within each
view, $E_{ST}$ is the proposed spatiotemporal loss for ensuring additional
spatiotemporal consistency cross frames, and $E_{\mathrm{dloss}}$ is the
customized discriminative loss for feature regularization.

##  IV EXPERIMENTAL RESULTS

We now provide detailed experimental results on a variety of public domain and
our own datasets and conduct a suitable ablation study.

TABLE I: Comparison of different methods on Semantic-KITTI dataset.

Method |  car |  bicycle |  motorcycle |  truck |  other-vehicle |  person |  bicyclist |  motorcyclist |  road |  parking |  sidewalk |  other-ground |  building |  fence |  vegetation |  trunk |  terrain |  pole |  traffic-sign | mIoU
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---
Pointnet [10] | 46.3 | 1.3 | 0.3 | 0.1 | 0.8 | 0.2 | 0.2 | 0.0 | 61.6 | 15.8 | 35.7 | 1.4 | 41.4 | 12.9 | 31.0 | 4.6 | 17.6 | 2.4 | 3.7 | 14.6
Pointnet++ [11] | 53.7 | 1.9 | 0.2 | 0.9 | 0.2 | 0.9 | 1.0 | 0.0 | 72.0 | 18.7 | 41.8 | 5.6 | 62.3 | 16.9 | 46.5 | 13.8 | 30.0 | 6.0 | 8.9 | 20.1
SqueezeSeg [12] | 68.8 | 16.0 | 4.1 | 3.3 | 3.6 | 12.9 | 13.1 | 0.9 | 85.4 | 26.9 | 54.3 | 4.5 | 57.4 | 29.0 | 60.0 | 24.3 | 53.7 | 17.5 | 24.5 | 29.5
SalsaNet [15] | 87.5 | 26.2 | 24.6 | 24.0 | 17.5 | 33.2 | 31.1 | 8.4 | 89.7 | 51.7 | 70.7 | 19.7 | 82.8 | 48.0 | 73.0 | 40.0 | 61.7 | 31.3 | 41.9 | 45.4
SalsaNext [6] | 91.9 | 48.3 | 38.6 | 38.9 | 31.9 | 60.2 | 59.0 | 19.4 | 91.7 | 63.7 | 75.8 | 29.1 | 90.2 | 64.2 | 81.8 | 63.6 | 66.5 | 54.3 | 62.1 | 59.5
Baseline (Ours) | 25.3 | 0.3 | 0.1 | 0.1 | 0.2 | 0.1 | 0.0 | 0.0 | 53.8 | 0.9 | 28.0 | 0.1 | 11.8 | 4.3 | 10.7 | 1.2 | 24.8 | 0.8 | 0.3 | 8.6
Baseline + Ego (Ours) | 47.0 | 0.2 | 0.0 | 0.3 | 0.4 | 0.3 | 0.1 | 0.0 | 65.1 | 3.7 | 27.3 | 1.3 | 20.1 | 8.9 | 15.2 | 0.6 | 22.0 | 0.4 | 2.5 |  11.3 (+2.7)
Baseline + ST (Ours) | 61.7 | 0.0 | 0.0 | 0.9 | 0.6 | 0.2 | 0.0 | 0.0 | 71.7 | 4.1 | 19.4 | 1.4 | 25.7 | 10.6 | 14.9 | 2.2 | 32.8 | 0.5 | 0.0 |  13.0 (+4.4)
Baseline + ST + DLoss (Ours) | 63.7 | 0.4 | 0.2 | 0.0 | 0.7 | 0.1 | 0.0 | 0.0 | 67.4 | 6.5 | 23.1 | 1.0 | 26.4 | 10.4 | 19.1 | 1.8 | 32.4 | 0.4 | 0.0 |  13.4 (+4.8)

###  IV-A Experimental Setup

We trained and evaluated our model on the following data sets: Semantic-KITTI
[1], Semantic-POSS [34], and FLORIDA [3], which cover scenarios in autonomous
driving and infrastructure, i.e., traffic intersections. We implemented our
model in PyTorch and trained the model for 100 epochs with a batch size of 12,
using an Adam optimizer with a learning rate of $0.05$. At the 40th epoch, we
reduced the learning rate by a factor of $10$. We consider recent state-of-
the-art point-based supervised approaches (PointNet [10] and PointNet++ [11])
as competitive baselines. Besides, we compare against RV-based supervised
approaches, including SqueezeSeg [12], SalsaNet [15], SalsaNext [6],
SqueezeSegV2 [13], RangeNet++ [14], UnpNet[35], and MINet [36]. We adopt the
mean Jaccard Index or intersection-over-union (mIoU) to evaluate the
performance of our method. mIoU can be expressed as

$\text{mIoU}=\frac{1}{C}\sum_{i=1}^{C}\frac{\text{TP}_{i}}{\text{TP}_{i}+\text{FP}_{i}+\text{FN}_{i}},$
(19)

where $\text{TP}_{i}$, $\text{FP}_{i}$, $\text{FN}_{i}$ denote the number of
true positive, false positive, and false negative predictions for class $i$
and $C$ is the number of classes.

TABLE II: Comparison of different methods on SemanticPOSS dataset.  Method | people | rider | car | traffic sign | truck | plants | pole | fence | building | bike | road | mIoU
---|---|---|---|---|---|---|---|---|---|---|---|---
PointNet++[11] | 20.8 | 0.1 | 8.9 | 21.8 | 4.0 | 51.2 | 3.2 | 6.0 | 42.7 | 0.1 | 62.2 | 20.1
SequeezeSegV2[13] | 18.4 | 11.2 | 34.9 | 11.0 | 15.8 | 56.3 | 4.5 | 25.5 | 47.0 | 32.4 | 71.3 | 29.8
RangeNet++ [14] | 14.2 | 8.2 | 35.4 | 6.8 | 9.2 | 58.1 | 2.8 | 28.8 | 55.5 | 32.2 | 66.3 | 28.9
UnpNet[35] | 17.7 | 17.2 | 39.2 | 9.5 | 13.8 | 67.0 | 5.8 | 31.1 | 66.9 | 40.5 | 68.4 | 34.3
MINet[36] | 20.1 | 15.1 | 36.0 | 15.5 | 23.4 | 67.4 | 5.1 | 28.2 | 61.6 | 40.2 | 72.9 | 35.1
Baseline (Ours) | 5.4 | 0.8 | 5.7 | 0.4 | 1.0 | 35.9 | 0.5 | 2.6 | 18.9 | 3.9 | 44.7 | 10.9
Baseline + Ego (Ours) | 0.7 | 0.2 | 19.3 | 0.7 | 4.5 | 21.5 | 0.7 | 0.0 | 27.6 | 19.8 | 66.1 | 14.7 (+3.8)
Baseline + ST (Ours) | 2.8 | 2.2 | 27.1 | 0.6 | 3.7 | 25.1 | 0.2 | 2.9 | 39.6 | 19.4 | 63.3 | 17.0 (+6.1)
Baseline + ST + DLoss (Ours) | 14.6 | 0.4 | 23.8 | 0.9 | 0.0 | 34.7 | 0.1 | 7.1 | 21.0 | 36.6 | 80.8 | 20.0 (+9.1)

###  IV-B Experimental Results

As shown in Table I, we reported the performance of our developed models on
the Semantic-KITTI dataset. The ‘baseline’ is the model trained on two-view
augmentation of the single frame described in Section III-A. Both ‘Ego’ and
‘ST’ use the spatiotemporal loss described in Section III-B. The difference is
that we only use static point correspondences for the ‘Ego’ method, while we
use both static point correspondences and dynamic point correspondences for
the ‘ST’ method. ‘DLoss’ denotes the discriminative loss function. As can be
seen, the results demonstrate that each component of our method has
significantly improved prediction results. On Semantic-KITTI, our method leads
to a performance boost of an absolute value of $4.8\%$ in mIoU, compared to
the baseline’s mIoU of $8.6\%$.

We evaluated methods on the SemanticPOSS dataset in Table II and demonstrated
that our method significantly enhances the mIoU. Our method has an absolute
$9.1\%$ improvement when compared with the baseline’s mIoU of $10.9\%$. Figure
2 provides qualitative results—our developed models efficiently segment roads,
vegetation, cars, and other objects.

Ground Truth

SemanticPOSS

(a)

Prediction (b)

Semantic-KITTI

(c)

(d)

FLORIDA

(e)

(f)

Figure 2: Ground truth and model prediction on SemanticPOSS dataset, Semantic-
KITTI dataset, and FLORIDA dataset

###  IV-C Ablation Study

#### Impact of Different Data Augmentations Approaches

Data augmentation plays a crucial role in model learning: stronger
augmentations could further improve the model performance. Therefore, we
explored several effective point cloud augmentations including random
translation, point flip along x-axis, random point down-sampling, and random
rotation along the z-axis. For random rotation, we only rotated the point
cloud by 180 degrees. The reason is that we found a 180-degree rotation gives
better evaluation performance than arbitrary rotations. As shown in Table III,
the results confirm the effectiveness of each data augmentation strategy. We
use all data augmentation approaches for our developed models.

#### Impact of Frame Interval for Spatiotemporal Contrastive Learning

Our approach creates spatiotemporal samples by selecting two adjacent frames
with an frame interval. We set the interval to no larger than 30 frames
(equivalent to a 3-second interval based on the LiDAR frame rate) to ensure
that the two frames share sufficiently overlapped areas. To derive the best
interval, we tested different interval values from the set $F$. As shown in
Table IV, for the ‘random’ interval, we randomly selected a interval from $T$
for each pair. The interval $10$ and the random interval perform better
compared to other intervals. Our study suggests that the frame interval is an
important hyperparameter and that a random interval may be a better strategy.

TABLE III: Ablation study of point cloud augmentations. translation | point flip | rotation | downsampling | mIoU
---|---|---|---|---
✓ | - | - | - | 6.83
✓ | ✓ | - | - | 8.58
✓ | ✓ | ✓ | - | 9.82
✓ | ✓ | ✓ | ✓ | 10.50
TABLE IV: Ablation study of frame interval for creating contrastive samples.

Frame Interval | 5 | 10 | 15 | 20 | 25 | 30 | Random
---|---|---|---|---|---|---|---
mIoU | 13.8 | 15.2 | 14.3 | 14.0 | 13.8 | 10.2 | 15.1

(a)

(b)

(c)

Figure 3: Foreground-background segmentation: ground truth (left), heuristic
method (middle), and simple threshold (right)

#### Generalization Capabilities

We present the generalization capabilities on various LiDAR datasets collected
from different environments. We tested our method on the FLORIDA dataset
collected from a traffic intersection [3]. Unlike the Semantic-KITTI dataset,
collected from an onboard LiDAR mounted on a moving vehicle, the stationary
LiDAR of the FLORIDA dataset provides an opportunity to analyze a complex,
crowded, and safety-critical intersection containing a large number of
pedestrians. As most of the dataset’s background is static, we only considered
the segmentation performance of foreground objects, including static and
dynamic objects. To support the training and evaluation, we bootstrapped the
3D bounding box-based tracking annotations of the dataset into point-wise
semantic labels. We group all objects into three classes: Vehicles (consisting
of cars, buses, and trucks), Pedestrians or People Class (consisting of
pedestrians and cyclists) and Background Class (consisting of non-movable
objects like roads and buildings).

We address this segmentation task by decomposing it into two sub-problems:
segmenting foreground and background points and classifying foreground points
into semantic classes. The key motivation is to leverage the prior
information—most background regions remain the same. We seek to separate
foreground and background points without ground truth labels by generating
pseudo-labels for a binary segmentation model. We explored two method
variants. The first one (‘Simple Threshold’) creates a pseudo-label using a
simple dynamic score in Equation (12): a point belongs to the foreground if it
has a high dynamic score, otherwise it is in the background. However, the
major drawback is that such an approach cannot distinguish the points of
parked cars as they are static but belong to the foreground. Therefore, we
proposed the second method (‘Heuristic’) of classifying points into
foreground, background, and uncertain groups.

TABLE V: Foreground-background segmentation on FLORIDA dataset. |  | Background | Foreground | mIoU
---|---|---|---|---
Training Set | Simple Threshold | 95.6 | 54.4 | 75.0
Heuristic | 97.0 | 68.7 | 82.8
Test Set | Simple Threshold | 96.5 | 44.3 | 70.4
Heuristic | 97.9 | 63.7 | 80.8
TABLE VI: Unsupervised semantic segmentation on Florida testing set using a single shot method and cascaded methods | Vehicle | People | Background | mIOU
---|---|---|---|---
Single Shot | 60.5 | 7.4 | 96.3 | 54.7
Dynamic-based Cascade | 47.0 | 24.3 | 96.4 | 55.9
Heuristic-based Cascade | 69.1 | 38.0 | 98.1 | 68.4

We adopted the same approach as in Section III-B to identify dynamic and
static points. The main modification is for the static points: we try to
identify those points belonging to parked cars and classify them into the
uncertain group. To do so, we run the DBSCAN algorithm on the static points
and estimate the minimal bounding box of each clustering. For bounding boxes
of a similar size to a car and close to the ground plane, we set their points
as uncertain.

We use the pseudo-label of foreground and background points for model training
and ignore uncertain points. The backbone network used is SalsaNext with a
minor modification to change the output size of the last layer to one. A
sigmoid function is adopted to output $\left(0,1\right)$ values. The root mean
square error (RMSE) loss is adopted as the objective function. We reported the
FLORIDA results in Table V. Compared to ‘Simple Threshold’, i.e., requiring
multiple frames to determine the dynamic score, ‘Heuristic’ is advantageous
because it only needs a single frame fed to a model to obtain a better
foreground-background segmentation. ‘Heuristic’ leads to a performance boost
of an absolute $14.3\%$ and $19.4\%$ on the FLORIDA training set and test set
respectively. Figure 3 demonstrates the classification results. Cars within
the blue rectangle are parked cars. ‘Simple Threshold’ wrongly classifies all
parked cars as background objects. In contrast, ‘Heuristic’ based approach can
effectively classify parked cars as foreground objects.

After foreground-background segmentation, we run the auto correspondence
labeling algorithm proposed in Section III-B on foreground points, obtaining
point-wise correspondences. We use a training strategy similar to training a
semantic segmentation model for FLORIDA dataset as used for Semantic-KITTI
dataset and SemanticPOSS dataset. One difference is that we only feed
foreground points to network and keep dynamic object correspondences. We label
this method ‘Heuristic-based Cascade’. For comparison, we also design two
other experiments. For the first, we use the same training strategy as
Semantic-KITTI and SemanticPOSS datasets, marked as ‘Single Shot’. The second
one is similar to the ‘Heuristic-based Cascade’ method except that the
foreground-background segmentation results are generated by a simple threshold
method, marked as ‘Dynamic-based Cascade’. The ‘Single Shot’ method
outperforms the ‘Dynamic-based Cascade’ with regard to IoU of ‘Vehicle’ but
shows poor performance on the ‘People’ class, which indicates that a cascade
approach is beneficial for tiny classes, i.e., people. The results (cf. Table
VI) show that the ‘Heuristic-based Cascade’ method outperforms the other two
methods on all three categories, which demonstrates that a good foreground-
background segmentation model can largely benefit the cascade approaches.

##  V CONCLUSIONS

We have introduced a novel framework for addressing unsupervised segmentation
in outdoor LIDAR sequences. A key contribution of our work is in learning the
equivariance of point clouds by establishing spatiotemporal correspondences
between point cloud pairs. To enhance the generalization capabilities of our
method, we have further demonstrated a cascaded approach to tackle the
unsupervised segmentation for traffic intersection scenarios. To the best of
our knowledge, we are the first to perform unsupervised LiDAR semantic
segmentation in both autonomous driving and infrastructure contexts. The
experimental results demonstrate that our approach achieves competitive
performance even when compared to some state-of-the-art supervised methods.

## Acknowledgments

This work is supported by NSF CNS 1922782 and by the Florida Dept. of
Transportation (FDOT), and FDOT District 5. The opinions, findings and
conclusions expressed in this publication are those of the author(s) and not
necessarily those of FDOT or the National Science Foundation.

## References

  * [1] J. Behley, M. Garbade, A. Milioto, J. Quenzel, S. Behnke, C. Stachniss, and J. Gall, “SemanticKITTI: A dataset for semantic scene understanding of LiDAR sequences,” in _IEEE/CVF International Conference on Computer Vision_ , 2019, pp. 9297–9307.
  * [2] J. Mei, B. Gao, D. Xu, W. Yao, X. Zhao, and H. Zhao, “Semantic segmentation of 3D LiDAR data in dynamic scene using semi-supervised learning,” _IEEE Transactions on Intelligent Transportation Systems_ , vol. 21, no. 6, pp. 2496–2509, 2019.
  * [3] A. Wu, P. He, X. Li, K. Chen, S. Ranka, and A. Rangarajan, “An efficient semi-automated scheme for infrastructure LiDAR annotation,” _arXiv preprint arXiv:2301.10732_ , 2023.
  * [4] K. Koffka, _Principles of Gestalt Psychology_. Routledge, 2013.
  * [5] W. Van Gansbeke, S. Vandenhende, S. Georgoulis, and L. Van Gool, “Unsupervised semantic segmentation by contrasting object mask proposals,” in _IEEE/CVF International Conference on Computer Vision_ , 2021, pp. 10 052–10 062.
  * [6] T. Cortinhal, G. Tzelepis, and E. Erdal Aksoy, “SalsaNext: Fast, uncertainty-aware semantic segmentation of LiDAR point clouds,” in _International Symposium on Visual Computing_. Springer, 2020, pp. 207–222.
  * [7] Q.-H. Pham, T. Nguyen, B.-S. Hua, G. Roig, and S.-K. Yeung, “JSIS3D: Joint semantic-instance segmentation of 3D point clouds with multi-task pointwise networks and multi-value conditional random fields,” in _IEEE/CVF Conference on Computer Vision and Pattern Recognition_ , 2019, pp. 8827–8836.
  * [8] J. H. Cho, U. Mall, K. Bala, and B. Hariharan, “PiCIE: Unsupervised semantic segmentation using invariance and equivariance in clustering,” in _IEEE/CVF Conference on Computer Vision and Pattern Recognition_ , 2021, pp. 16 794–16 804.
  * [9] Y. Tian, C. Sun, B. Poole, D. Krishnan, C. Schmid, and P. Isola, “What makes for good views for contrastive learning?” _Advances in Neural Information Processing Systems_ , vol. 33, pp. 6827–6839, 2020.
  * [10] C. R. Qi, H. Su, K. Mo, and L. J. Guibas, “Pointnet: Deep learning on point sets for 3D classification and segmentation,” in _IEEE Conference on Computer Vision and Pattern Recognition_ , 2017, pp. 652–660.
  * [11] C. R. Qi, L. Yi, H. Su, and L. J. Guibas, “Pointnet++: Deep hierarchical feature learning on point sets in a metric space,” _Advances in neural information processing systems_ , vol. 30, 2017.
  * [12] B. Wu, A. Wan, X. Yue, and K. Keutzer, “Squeezeseg: Convolutional neural nets with recurrent CRF for real-time road-object segmentation from 3D LiDAR point cloud,” in _2018 IEEE International Conference on Robotics and Automation (ICRA)_. IEEE, 2018, pp. 1887–1893.
  * [13] B. Wu, X. Zhou, S. Zhao, X. Yue, and K. Keutzer, “Squeezesegv2: Improved model structure and unsupervised domain adaptation for road-object segmentation from a LiDAR point cloud,” in _2019 International Conference on Robotics and Automation (ICRA)_. IEEE, 2019, pp. 4376–4382.
  * [14] A. Milioto, I. Vizzo, J. Behley, and C. Stachniss, “Rangenet++: Fast and accurate LiDAR semantic segmentation,” in _2019 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)_. IEEE, 2019, pp. 4213–4220.
  * [15] E. E. Aksoy, S. Baci, and S. Cavdar, “SalsaNet: Fast road and vehicle segmentation in LiDAR point clouds for autonomous driving,” in _2020 IEEE Intelligent Vehicles Symposium (IV)_. IEEE, 2020, pp. 926–932.
  * [16] P. Vincent, H. Larochelle, Y. Bengio, and P.-A. Manzagol, “Extracting and composing robust features with denoising autoencoders,” in _International Conference on Machine Learning_ , 2008, pp. 1096–1103.
  * [17] D. Pathak, P. Krahenbuhl, J. Donahue, T. Darrell, and A. A. Efros, “Context encoders: Feature learning by inpainting,” in _IEEE Conference on Computer Vision and Pattern Recognition_ , 2016, pp. 2536–2544.
  * [18] S. Gidaris, P. Singh, and N. Komodakis, “Unsupervised representation learning by predicting image rotations,” _arXiv preprint arXiv:1803.07728_ , 2018\.
  * [19] A. van den Oord, Y. Li, and O. Vinyals, “Representation learning with contrastive predictive coding,” _arXiv preprint arXiv:1807.03748_ , 2018\.
  * [20] Y. Tian, X. Chen, and S. Ganguli, “Understanding self-supervised learning dynamics without contrastive pairs,” in _International Conference on Machine Learning_. PMLR, 2021, pp. 10 268–10 278.
  * [21] X. Wang, X. Chen, S. S. Du, and Y. Tian, “Towards demystifying representation learning with non-contrastive self-supervision,” _arXiv preprint arXiv:2110.04947_ , 2021.
  * [22] Y. Ouali, C. Hudelot, and M. Tami, “Autoregressive unsupervised image segmentation,” in _European Conference on Computer Vision_. Springer, 2020, pp. 142–158.
  * [23] X. Ji, J. F. Henriques, and A. Vedaldi, “Invariant information clustering for unsupervised image classification and segmentation,” in _IEEE/CVF International Conference on Computer Vision_ , 2019, pp. 9865–9874.
  * [24] Y. Li, P. Hu, Z. Liu, D. Peng, J. T. Zhou, and X. Peng, “Contrastive clustering,” in _The AAAI Conference on Artificial Intelligence_ , vol. 35, no. 10, 2021, pp. 8547–8555.
  * [25] W. Van Gansbeke, S. Vandenhende, S. Georgoulis, M. Proesmans, and L. Van Gool, “SCAN: Learning to classify images without labels,” in _Computer Vision–ECCV 2020: 16th European Conference, Glasgow, UK, August 23–28, 2020, Proceedings, Part X_. Springer, 2020, pp. 268–285.
  * [26] P. Pfreundschuh, H. F. Hendrikx, V. Reijgwart, R. Dubé, R. Siegwart, and A. Cramariuc, “Dynamic object-aware LiDAR SLAM based on automatic generation of training data,” in _2021 IEEE International Conference on Robotics and Automation (ICRA)_. IEEE, 2021, pp. 11 641–11 647.
  * [27] R. J. Campello, D. Moulavi, and J. Sander, “Density-based clustering based on hierarchical density estimates,” in _Advances in Knowledge Discovery and Data Mining: 17th Pacific-Asia Conference, PAKDD 2013, Gold Coast, Australia, April 14-17, 2013, Proceedings, Part II 17_. Springer, 2013, pp. 160–172.
  * [28] M. Ester, H.-P. Kriegel, J. Sander, X. Xu _et al._ , “A density-based algorithm for discovering clusters in large spatial databases with noise.” in _KDD_ , vol. 96, no. 34, 1996, pp. 226–231.
  * [29] Y. Chen and G. Medioni, “Object modeling by registration of multiple range images,” _Image and Vision Computing_ , vol. 10, no. 3, pp. 145–155, 1992\.
  * [30] H. Lim, O. Minho, and H. Myung, “Patchwork: Concentric zone-based region-wise ground segmentation with ground likelihood estimation using a 3D LiDAR sensor,” _IEEE Robotics and Automation Letters_ , 2021.
  * [31] R. B. Rusu, N. Blodow, Z. Marton, A. Soos, and M. Beetz, “Towards 3D object maps for autonomous household robots,” in _2007 IEEE/RSJ International Conference on Intelligent Robots and Systems_. IEEE, 2007, pp. 3191–3198.
  * [32] D. F. Crouse, “On implementing 2d rectangular assignment algorithms,” _IEEE Transactions on Aerospace and Electronic Systems_ , vol. 52, no. 4, pp. 1679–1696, 2016.
  * [33] X. Chen, B. Mersch, L. Nunes, R. Marcuzzi, I. Vizzo, J. Behley, and C. Stachniss, “Automatic labeling to generate training data for online LiDAR-based moving object segmentation,” _IEEE Robotics and Automation Letters_ , vol. 7, no. 3, pp. 6107–6114, 2022.
  * [34] Y. Pan, B. Gao, J. Mei, S. Geng, C. Li, and H. Zhao, “SemanticPOSS: A point cloud dataset with large quantity of dynamic instances,” in _2020 IEEE Intelligent Vehicles Symposium (IV)_. IEEE, 2020, pp. 687–693.
  * [35] S. Li, Y. Liu, and J. Gall, “Rethinking 3-D LiDAR point cloud segmentation,” _IEEE Transactions on Neural Networks and Learning Systems_ , pp. 1–12, 2021.
  * [36] S. Li, X. Chen, Y. Liu, D. Dai, C. Stachniss, and J. Gall, “Multi-scale interaction for real-time LiDAR data segmentation on an embedded platform,” _IEEE Robotics and Automation Letters_ , vol. 7, no. 2, pp. 738–745, 2022.