Next Article in Journal
Dust Aerosol Detection by the Modified CO2 Slicing Method
Next Article in Special Issue
Tracking Multiple Targets from Multistatic Doppler Radar with Unknown Probability of Detection
Previous Article in Journal
A Context-Aware Accurate Wellness Determination (CAAWD) Model for Elderly People Using Lazy Associative Classification
Previous Article in Special Issue
A Grey Wolf Optimization-Based Track-Before-Detect Method for Maneuvering Extended Target Detection and Tracking
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

State Transition for Statistical SLAM Using Planar Features in 3D Point Clouds

by
Amirali Khodadadian Gostar
1,
Chunyun Fu
2,*,
Weiqin Chuah
1,
Mohammed Imran Hossain
1,
Ruwan Tennakoon
1,
Alireza Bab-Hadiashar
1 and
Reza Hoseinnezhad
1
1
School of Engineering, RMIT University, Melbourne VIC 3001, Australia
2
State Key Laboratory of Mechanical Transmissions, School of Automotive Engineering, Chongqing University, Chongqing 400044, China
*
Author to whom correspondence should be addressed.
Sensors 2019, 19(7), 1614; https://doi.org/10.3390/s19071614
Submission received: 11 February 2019 / Revised: 23 March 2019 / Accepted: 1 April 2019 / Published: 3 April 2019
(This article belongs to the Special Issue Multiple Object Tracking: Making Sense of the Sensors)

Abstract

:
There is a large body of literature on solving the SLAM problem for various autonomous vehicle applications. A substantial part of the solutions is formulated based on using statistical (mainly Bayesian) filters such as Kalman filter and its extended version. In such solutions, the measurements are commonly some point features or detections collected by the sensor(s) on board the autonomous vehicle. With the increasing utilization of scanners with common autonomous cars, and availability of 3D point clouds in real-time and at fast rates, it is now possible to use more sophisticated features extracted from the point clouds for filtering. This paper presents the idea of using planar features with multi-object Bayesian filters for SLAM. With Bayesian filters, the first step is prediction, where the object states are propagated to the next time based on a stochastic transition model. We first present how such a transition model can be developed, and then propose a solution for state prediction. In the simulation studies, using a dataset of measurements acquired from real vehicle sensors, we apply the proposed model to predict the next planar features and vehicle states. The results show reasonable accuracy and efficiency for statistical filtering-based SLAM applications.

1. Introduction

Simultaneous Localization and Mapping (SLAM) is often considered as one of the main challenges in the field of robotics and autonomous vehicles [1,2]. The aim of SLAM is to build a map of an unknown environment while simultaneously determining the location of the vehicle within this map. Neither the map nor the vehicle position are known in advance. However, a kinematic model of the vehicle motion is assumed to be known a priori, and the unknown environment is populated with artificial or natural landmarks.
There is a large body of literature on solving the SLAM problem for various autonomous vehicle applications. Many of the solutions are formulated based on using a Bayesian filter that recursively propagates the distribution of the vehicle’s dynamic states (and sometimes the map features). Davison [3] proposed a solution based on using Extended Kalman Filters (EKFs) to track the location of each map feature which was extracted from the sensor measurements. To improve the accuracy of this method, Thrun et al. [4] proposed the Sparse Extended Information Filter. The idea is to optimize the calculations required by the EKF, via taking advantage of sparse matrices. Montemerlo et al. [5] proposed a Rao-Blackwellised particle filter-based method called FastSLAM. In this method, the odometry uncertainties are rectified by adding random offsets to the odometry data for each particle.
In such solutions, to simultaneously estimate both vehicle and landmark locations, the Bayesian filter needs to employ two models: an observation model, and a motion model. With regards to the observations, the vehicle must be equipped with a sensor or set of sensors that produce measurements related to the surrounding landmark locations. The most common examples are LIDAR [6,7,8], RGB camera [9,10,11,12], RGB-D camera [13,14] and sonar [15] sensors. The sensory measurements usually have range limitations, and contain measurement noise. The raw measurements are normally processed further to extract point features. An on-board sensory system on the vehicle is usually in place to collect the features in real-time.
With the advancement of sensor technology and decreasing cost of LIDAR scanners, the generation of an adequate 3D point cloud is now possible. A LIDAR works by sending a laser pulse towards an object and measuring the time it takes to reflect from the object and return to the sensor. Because of its high accuracy and ease of use, a LIDAR sensor has become a common choice for SLAM purposes. Having the generated point cloud, it is possible to extract features that are more complex (and convey more information) than point features. Employing more information-rich features as observations in a Bayesian filter within a SLAM algorithm can increase the algorithm efficiency and reduce the computational cost. For example employing planar features instead of 3D points could considerably enhance the algorithm efficiency, as the number of planes is significantly smaller than the number of points in a typical 3D point cloud. However, in order to properly use these features in the Bayesian framework, an appropriate motion model needs to be devised.
In human-inhabited environments, buildings and large facilities are currently almost ubiquitous and their geometric profiles comprise a large number of plane shapes. Out of all these shapes, the major ones naturally create “obstacles” or define “edges” beyond which the vehicles cannot protrude, and these planes can be extracted and employed as features or landmarks in SLAM applications. Indeed, due to the geometric simplicity of the plane shapes and their abundance in human-inhabited environments, planar features have attracted increasing attention from both the computer graphics and robotics community in recent years [16,17,18]. As for the smaller plane shapes, they may be from the profiles of small objects or even moving objects such as vehicles. These small planes can be readily excluded from the set of landmarks by applying a threshold to the dimension of planes.
This paper presents for the first time the idea of using planar features extracted from a 3D point cloud, instead of point features, for Bayesian SLAM filters. The major contribution of this study lies in proposing a novel transition model that predicts the parameters of planar features extracted from a 3D point cloud. With Bayesian filters, the first step is prediction, where the object state densities are propagated to the next time step based on a stochastic transition model (motion model). We present how such a transition model can be developed, and propose a solution for state prediction. In the simulation studies, using a dataset of measurements acquired from real vehicle sensors, we apply the model to predict the planar features at the next time. The results show reasonable accuracy and efficiency for statistical filtering-based SLAM applications.
The proposed transition model consists of two sub-models: the plane transition model and the vehicle transition model. The latter one is associated with localization; namely, it predicts the vehicle states at time k + 1 using the state information at time k. The former one is associated with mapping, which predicts the feature parameters at time k + 1 based on the feature information at time k as well as the predicted vehicle states resulting from the latter model. The accuracy and effectiveness of the proposed transition model are verified using real-world point cloud measurements from the KITTI dataset [19]. The graphical and numerical simulation results show that the predicted planar features resulting from the proposed transition model closely match the measured features (i.e., segmented 3D planes) at time k + 1 , in terms of the plane dimensions (plane area and vertex distance) and the plane orientation (normal vector).
The rest of the paper is organized as follows. Section 2 provides relevant theoretical background. Section 3 introduces the details of the proposed transition model which comprises two sub-models: the plane transition model and the vehicle transition model. Section 4 explains the detailed procedure for implementation of the proposed transition model. Section 5 provides verification of the proposed transition model by means of graphical and numerical simulation results. Section 6 concludes the paper.

2. Background

The proposed transition model is mainly designed to be used with a recently developed Random Finite Set (RFS) based Bayesian filter—the Labeled Multi-Bernoulli (LMB) filter [20]. In this section, we provide the theoretical background necessary for understanding this filter, followed by a brief introduction to the KITTI dataset [19] which was used for simulation studies in this work.

2.1. Labeled Multi-Bernoulli Filter

In this section, we introduce the Labeled Multi-Bernoulli (LMB) filter [20]. We adopt the same notation used in [20] where the single-object states are denoted by lower-case letters, e.g., x, x and multi-object states by upper-case letters, e.g., X, X . In order to distinguish between labeled and unlabeled states and their distributions, the labeled one is shown by bolded letters, e.g.,  x , X , etc., spaces by blackboard bold, e.g., X , L , C , etc., and the class of finite subsets of a space X by F ( X ) . Following [20], throughout the paper, the standard inner product notation is used and denoted by f , g f ( x ) g ( x ) d x , the generalized Kronecker delta is denoted by
δ Y ( X ) 1 , if X = Y 0 , otherwise ,
and the inclusion function, a generalization of the indicator function, by
1 Y ( X ) 1 , if X Y 0 , otherwise .
The LMB RFS is completely described by its components π = { ( r ( ) , p ( ) ) : L } . The LMB RFS density is given by π ( X ) = Δ ( X ) w ( L ( X ) ) p X , where p ( x , ) = p ( ) ( x ) and w ( L ) = i L 1 r ( i ) L 1 L ( ) r ( ) ( 1 r ( ) ) comprising a single component [20]. The LMB multi-target Bayes recursion propagates multi-target posterior density at each time step according to the Chapman–Kolmogorov and the Bayes rule.

2.1.1. Prediction

Assume that the prior and birth labeled multi-Bernoulli sets are modeled as follows:
(1) π ( X ) = Δ ( X ) w ( L ( X ) ) p X (2) π B ( X ) = Δ ( X ) w B ( L ( X ) ) p B X
where
(3) w ( L ) = i L 1 r ( i ) L 1 L ( ) r ( ) 1 r ( ) , (4) w B ( L ) = i B 1 r B ( i ) L 1 B ( ) r B ( ) 1 r B ( ) ,
(5) p ( x , ) = p ( ) ( x ) (6) p B ( x , ) = p B ( ) ( x ) .
with state space X and label space L + = B L and with the condition B L = . The predicted multi-object distribution is then a LMB RFS and given by
π + ( X ) = Δ ( X ) w + ( L ( X ) ) p + X
where
(8) w + ( I + ) = w S ( I + L ) w B ( I + B ) (9) w S ( L ) = 1 r ( · ) η S ( · ) L r ( · ) η S ( · ) 1 r ( · ) η S ( · ) L , (10) η S ( ) = p S ( · , ) , p ( · , ) (11) p + ( x , ) = 1 L ( ) p + , S ( x , ) + 1 B ( ) p B ( x , ) (12) p + , S ( x , ) = p S ( · , ) f ( x | · , ) , p ( · , ) η S ( )
where p S ( · | ) is the survival probability of an object and f ( x | · , ) is the single-object transition model. Thus, if the multi-target posterior density is an LMB RFS with parameter set π = { ( r ( ) , p ( ) ) : L } with state space X and label space L and the birth model is also an LMB RFS with parameter set π B = { ( r B ( ) , p B ( ) ) : B } with state space X and label space B then the predicted multi-target density is also an LMB RFS with state space X and label space L + = B L ( B L = ) and it is given by
π + = { ( r + , S ( ) , p + , S ( ) ) : L } { ( r B ( ) , p B ( ) ) : B }
where
(14) r + , S ( ) = η S ( ) r ( ) , (15) p + , S ( ) = p S ( · , ) f ( x | · , ) , p ( · , ) η S ( ) ,
for more details see— [20]—proposition 2.

2.1.2. Update

If the predicted multi-target density is an LMB RFS with parameter set π + = { ( r + ( ) , p + ( ) ) : L + } , the multi-target posterior is then given by
π ( · | Z ) = { ( r ( ) , p ( ) ( · ) ) : L + }
where
(17) r ( ) = ( I + , θ ) F ( L + ) × Θ I + w ( I + , θ ) ( Z ) 1 I + ( ) , (18) p ( ) ( x ) = 1 r ( ) ( I + , θ ) F ( L + ) × Θ I + w ( I + , θ ) ( Z ) 1 I + ( ) p ( θ ) ( x , ) ,
where Θ I + denotes the space of mapping θ : I + { 0 , 1 , , | Z | } and,
(19) w ( I + , θ ) ( Z ) w + ( I + ) η Z ( θ ) I + (20) p ( θ ) ( x , | Z ) = p + ( x , ) ψ Z ( x , ; θ ) η Z ( θ ) ( ) , (21) η Z ( θ ) ( ) = p + ( · , ) , ψ Z ( · , ; θ ) , ψ Z ( x , ; θ ) = δ 0 ( θ ( ) ) q D ( x , ) (22) + ( 1 δ 0 ( θ ( ) ) ) p D ( x , ) g ( z θ ( ) | x , ) κ ( z θ ( ) )
where, g ( z | x ) is the single-sensor measurement likelihood, p D ( · , ) denotes probability of detection, q D ( · , ) = 1 p D ( · , ) is the probability of a missed detection, and κ ( · ) intensity function of the Poisson distributed clutter process.

2.2. KITTI Dataset

The KITTI dataset [19] was recorded in and around Karlsruhe, Germany using a VW wagon equipped with various types of sensors including a 3D laser scanner, four video cameras and a GPS/IMU navigation system. The data was collected in both urban and suburban areas (city, rural, and highway) and information was gathered over several days. In this dataset, many of the scenes are dominated by large buildings with planar surfaces. The KITTI dataset has been widely used in mobile robotics and autonomous driving research.

3. Proposed Transition Model

As explained in Section 1, a transition model is required in SLAM filters to predict the states of the features at the next time step, based on the state information at the current time step. Specifically, in this study, we are interested in constructing a transition model for predicting the plane parameters at the next time step, using the current plane parameters estimated by a SLAM filter. Note that the planes involved in the transition model are expressed in the vehicle coordinate system (fixed to the vehicle), as the point cloud measurements are acquired by a laser scanner mounted on top of the experimental vehicle. Thus the plane parameters vary with time, as long as the experimental vehicle is in motion. On the other hand, if seen from the global coordinate system (fixed to the ground), the plane parameters are invariant since the planes are all static in this coordinate system.
We emphasize that the vehicle is assumed to move in a static environment. If this is not the case, we make the practical assumption that planar surfaces on other moving objects are small enough to be excluded from the set “plane observations” extracted from the 3D point cloud. That set is expected to include only relatively large planar surfaces such as walls of buildings along the road.

3.1. Plane Transition Model

To facilitate the design of the transition model, the two aforementioned coordinate systems are established, as shown in Figure 1. The global coordinate system O X Y Z is fixed to the ground, and the vehicle coordinate system o x y z is attached to the vehicle Center of Mass and moves along with the vehicle. P is a point on a plane segmented from the 3D point cloud obtained from the on-board laser scanner. r P and r are the position vectors of P in the global and vehicle coordinate systems, and r V is the position vector of the vehicle centre of mann (i.e., origin o) in the global coordinate system. The global coordinates of P are invariant since r P is static as seen from the global coordinate system. However, the local coordinates of P, expressed in the vehicle coordinate system, vary with time due to the motion of the vehicle. As a result, the plane parameters expressed in the vehicle coordinate system also evolve with time, and a transition model is thus needed to predict the change of plane parameters for the purpose of accurate and effective SLAM.
The plane equation, expressed in the vehicle coordinate system, is assumed to take the following form in this study:
a x + b y + c z + d = 0 ,
where x, y and z are the coordinates of a point on the plane, and a, b, c and d are the plane parameters. Note that other forms of plane equations are also available in the literature [21], but all forms of plane equations can eventually lead to Equation (23) after simple algebraic manipulation. We may rewrite Equation (23) in the following vector form:
β T r = 0 ,
where β = a b c d T and r = x y z 1 T .
Assuming that the vehicle is only performing a planar motion (which is normally the case in common flat-road urban driving scenarios), the coordinates of point P in the global coordinate system r P = X Y Z 1 T , and the coordinates of point P in the vehicle coordinate system r = x y z 1 T , are related according to the following equations describing the kinematics of the vehicle [22,23]:
r P = R r
and
R = cos ϕ sin ϕ 0 X V sin ϕ cos ϕ 0 Y V 0 0 1 0 0 0 0 1 ,
where ϕ represents the heading angle of the vehicle (with respect to the X axis), and X V and Y V denote the coordinates of the vehicle centre of mass (origin o) in the global coordinate system (namely r V = X V Y V 0 1 T ). The vehicle states ϕ , X V and Y V are graphically shown in Figure 2.
Equations (25) and (26) can be rewritten as follows, for time k:
r P = R k r k
and
R k = cos ϕ k sin ϕ k 0 X V , k sin ϕ k cos ϕ k 0 Y V , k 0 0 1 0 0 0 0 1 ,
where r k = x k y k z k 1 T . Similarly, we have the following equations for time k + 1 :
r P = R k + 1 r k + 1
and
R k + 1 = cos ϕ k + 1 sin ϕ k + 1 0 X V , k + 1 sin ϕ k + 1 cos ϕ k + 1 0 Y V , k + 1 0 0 1 0 0 0 0 1 ,
where r k + 1 = x k + 1 y k + 1 z k + 1 1 T .
The vector r P is invariant with time, since it is the position vector of P in the global coordinate system. As a result, one can achieve the following equation by combining Equations (27) and (29):
r k + 1 = R k + 1 1 R k r k .
Note that Equation (24) can be rewritten as follows, for time k:
β k T M k 1 M k r k = 0 ,
where M k represents a 4-by-4 invertible matrix. We might as well let M k = R k + 1 1 R k and combine Equations (31) and (32), then we arrive at:
β k T M k 1 r k + 1 = 0 .
The plane Equation (24) for time k + 1 can be expressed as follows:
β k + 1 T r k + 1 = 0 .
Combining Equations (33) and (34) leads to the following transition model for plane parameters:
β k + 1 T = β k T M k 1 ,
where M k 1 = R k + 1 1 R k 1 = R k 1 R k + 1 .
This plane transition model indicates that the plane parameters at time k + 1 can be calculated based on the plane parameter information at time k and a vehicle-motion-dependent 4-by-4 matrix M k 1 . Note that the computation of matrix M k 1 = R k 1 R k + 1 requires the inverse of R k . It can be easily proven that the matrix R k , expressed by Equation (28), has full rank and its inverse R k 1 exists at all times. Thus, the matrix M k 1 can be computed as long as R k + 1 is available. However, this matrix R k + 1 (as indicated by Equation (30)) requires the vehicle state information at the future time k + 1 , which is not available in real-time SLAM applications. To tackle this issue, in the following section we will introduce a new vehicle transition model and demonstrate how the vehicle states at time k + 1 can be predicted.

3.2. Vehicle Transition Model

As mentioned above, the transformation matrix R k + 1 requires the unknown information from the future time k + 1 . In order to obtain matrix R k + 1 , in this section a vehicle transition model is introduced to predict the future vehicle states at time k + 1 , using the available information at time k.
In Bayesian filtering, the Constant Turn (CT) model [24,25,26] which describes the maneuver of the vehicle motion is commonly used. This model is formulated based on the assumption that the vehicle maneuvers with a (nearly) constant speed and a (nearly) constant angular rate [24]. Based on the CT model, an Extended Constant Turn (ECT) model is proposed in this work, which can be mathematically expressed as follows:
x k + 1 = F k x k + G u ,
with
x k + 1 = X V , k + 1 X ˙ V , k + 1 Y V , k + 1 Y ˙ V , k + 1 ϕ k + 1 ϕ ˙ k + 1 T ,
x k = X V , k X ˙ V , k Y V , k Y ˙ V , k ϕ k ϕ ˙ k T ,
u = u X u Y u ϕ T ,
F k = 1 sin ( ϕ ˙ k T ) ϕ ˙ k 0 cos ( ϕ ˙ k T ) 1 ϕ ˙ k 0 0 0 cos ( ϕ ˙ k T ) 0 sin ( ϕ ˙ k T ) 0 0 0 1 cos ( ϕ ˙ k T ) ϕ ˙ k 1 sin ( ϕ ˙ k T ) ϕ ˙ k 0 0 0 sin ( ϕ ˙ k T ) 0 cos ( ϕ ˙ k T ) 0 0 0 0 0 0 1 T 0 0 0 0 0 1 , and G = T 2 2 0 0 T 0 0 0 T 2 2 0 0 T 0 0 0 T 2 2 0 0 T ,
where X V , k , Y V , k , X V , k + 1 and Y V , k + 1 denote the vehicle longitudinal and lateral displacements (i.e., the coordinates of the vehicle centre of mass as introduced in Section 3.1) in the global coordinate system at time k and k + 1 , ϕ k and ϕ k + 1 represent the vehicle heading angles at time k and k + 1 , u X , u Y and u ω are the vehicle velocity and yaw rate noise components, and T stands for the sampling period. By means of this vehicle transition model (36), the required vehicle state information at time k + 1 can be predicted and in turn the matrices R k + 1 and M k 1 can be calculated.
Note that the plane transition model proposed in Section 3.1 (i.e., Equation (35)), along with the above ECT vehicle transition model, constitutes a complete state transition model that propagates the state densities of the planar features to the next time. This state transition model plays a key role in the prediction step for prospective planar-feature-based SLAM filters.

4. Implementation

In this section, we introduce the Sequential Monte Carlo (SMC) implementation of the proposed transition model, for the recently developed LMB filter. The LMB filter has been used in many applications such as target tracking [27,28], SLAM [29], visual tracking [30], and sensor control [31,32]. In the SMC implementation, the LMB posterior for the map features (planes) at each time step are represented by a set of particles. These particles are propagated using the proposed transition model to obtain the LMB posterior at the next time step.
Assuming the following LMB posterior π k at time k:
π k = r k ( ) , p k ( ) L ,
where represents the label of a plane, r k ( ) denotes the existence probability of the plane , p k ( ) is the spatial distribution of its parameters, and L stands for the label space. In an SMC implementation, the spatial distribution is represented by a set of weighted samples [28], namely:
p k ( ) = i = 1 N ( ) ω i ( ) δ a a i , k ( ) δ b b i , k ( ) δ c c i , k ( ) δ d d i , k ( ) ,
where N ( ) represents the number of particles, ω i ( ) denotes the weight of the i-th particle, and δ is the Dirac delta function.
For each particle β i , k ( ) = a i , k ( ) , b i , k ( ) , c i , k ( ) , d i , k ( ) T at time k, we are able to calculate the corresponding predicted particle β i , k + 1 ( ) = a i , k + 1 ( ) , b i , k + 1 ( ) , c i , k + 1 ( ) , d i , k + 1 ( ) T at time k + 1 based on the transition model proposed in Section 3. As a result, after the prediction stage, we will end up with a new set of particles with the same weights, namely:
ω i , k + 1 ( ) , β i , k + 1 ( ) i = 1 N ( ) ,
where ω i , k + 1 ( ) = ω i , k ( ) . Then, based on the new predicted particles at time k + 1 , the plane parameter estimate β ^ k + 1 ( ) can be achieved from the distribution particles as the Expected A Posteriori (EAP) estimate (i.e., weighted average), or the Maximum A Posteriori (MAP) estimate (i.e., considering the particle with the largest weight as the estimate).
The above implementation procedure is illustrated step by step in Algorithm 1, in the form of a pseudo-code.
Algorithm 1 Step-by-Step Implementation of the Proposed Transition Model
Require: vehicle states X V , k , Y V , k , ϕ k , and particles ω i , k ( ) , β i , k ( ) i = 1 N ( ) representing the distribution of each plane with label , for all labels L
  1:  compute matrix R k ▹ use Equation (28)
  2:  generate a noise sample u N ( 0 , Σ ) Σ diag(noise variances)
  3:  generate X V , k + 1 , Y V , k + 1 and ϕ k + 1 ▹ use Equation (36)
  4:  compute matrix R k + 1 ▹ use Equation (30)
  5:   M k 1 R k 1 R k + 1
  6:  for L do
  7:  for i N ( ) do
  8:      β i , k + 1 ( ) T β i , k ( ) T × M k 1
  9:      ω i , k + 1 ( ) ω i , k ( )
10:  end for
11:   β ^ k + 1 ( ) i = 1 N ( ) ω i , k + 1 ( ) β i , k + 1 ( ) ▹ compute the EAP estimate
12:  end for

5. Simulation Results

In this section, we demonstrate how well the proposed transition model performs, compared with the actually measured results from the KITTI dataset. Specifically, we generate the predicted planes at time k + 1 using the plane information at time k, by means of the proposed transition model, and we segment planes from the point cloud data in the KITTI dataset at time k + 1 , by means of the Modified Selective Statistical Estimator (MSSE) [33]. Then, the predicted planes at time k + 1 are compared with the segmented planes at time k + 1 , and both graphical and numerical results are demonstrated to show the closeness of the predicted planes and the segmented planes.
The point cloud data from the folder “2011_09_26_drive_0005_sync” in the KITTI dataset are employed in the simulation studies for plane segmentation. The details for accessing and using the KITTI dataset are available in [19]. The folder “2011_09_26_drive_0005_sync” includes 154 time steps (i.e., k [ 0 , 153 ] ), and the points obtained at k = 11 , k = 12 , k = 124 and k = 125 are used in the simulation. The number of points at k = 11 , k = 12 , k = 124 and k = 125 are 123,334, 123,316, 118,950 and 118,572 respectively.

5.1. Graphical Results

Figure 3 and Figure 4 demonstrate both the predicted planes and the segmented planes at time k = 125 for one Monte Carlo (MC) run. The predicted planes are in orange color, and are generated by the proposed transition model using the LIDAR measurements and vehicle states at time k = 124 . The segmented planes are in blue color, and are plotted based on the point cloud measurements at time k = 125 . Apart from the planes themselves, the predicted and measured point clouds at time k = 125 are also plotted in Figure 4, on top of the corresponding planes.
Figure 3 shows that by means of the transition model and the available information at time k = 124 , three planes are predicted to exist at time k = 125 . Also, three segmented planes are present in this figure based on the LIDAR measurements at time k = 125 . It is clearly observed in Figure 3 that each predicted plane is associated with one segmented plane. Namely, these six planes constitute three pairs of planes, with each pair composed of one predicted plane and one segmented plane. Besides, we see that for each pair of orange and blue planes, the areas of planes are fairly close and the distances between each pair of plane vertexes are rather small (‘Each pair of plane vertexes’ is referred to one vertex on the predicted plane and its closest counterpart on the segmented plane).
Figure 4 demonstrates the three pairs of planes from different angles. Again, we observe the closeness of the predicted and segmented planes in terms of plane areas and vertex distances, when viewed from different angles. Figure 4c shows a ‘side view’ of the three pairs of planes, from which we clearly see that the predicted and segmented planes (and their normal vectors) almost coincide. Similar results are also observed in Figure 4d where a ‘top view’ of the planes is shown.
In addition to k = 125 , our simulation studies have included a large range of other time steps. Figure 5 and Figure 6 provide the results of another time step k = 12 . The rest of time steps present similar results and are not shown in this paper for the purpose of brevity. In the following section, the above graphical results will be further supplemented and clarified, by means of detailed numerical results.

5.2. Numerical Results

In Figure 3, Figure 4, Figure 5 and Figure 6, we have graphically demonstrated the comparison results between the predicted and segmented planes, in terms of three important indicators – plane area, vertex distance and normal vector. In this section, we provide the results of our numerical simulation for 100 MC runs, in order to demonstrate ‘how close’ exactly these planes are.
The first two indicators, plane area and vertex distance, are mainly used to quantify the closeness in terms of plane dimensions (sizes). Table 1 shows the areas of the predicted and segmented planes for time step k = 125 (averaged from 100 MC runs), and Table 2 gives the distances between each pair of plane vertexes for time step k = 125 (averaged from 100 MC runs). We see in these tables that the areas of the predicted and segmented planes are close, and the distances between each pair of vertexes are small. These numerical results are consistent with the graphical results shown in Section 5.1.
The third indicator, normal vector, is employed to evaluate the closeness in terms of plane orientation. Table 3 shows the angles between each pair of normal vectors for time step k = 125 (averaged from 100 MC runs) (‘Each pair of normal vectors’ is referred to the normal vector on the predicted plane and its counterpart on the segmented plane). The small magnitudes of these angles imply that the predicted and segmented planes are very close in terms of orientation. This explains the coincidence of the predicted and segmented planes seen in Figure 4c,d.
Besides the above three indicators for closeness evaluation, the execution time of the program is also recorded. The proposed transition model is implemented based on Algorithm 1, and the program is executed on a laptop equipped with an Intel i7-5600U CPU and an 8G RAM. For time step k = 125 , the execution time is 0.0375 s (averaged from 100 MC runs).
Apart from k = 125 , the numerical results for another time step k = 12 are also presented in Table 4, Table 5 and Table 6. Similarly, these results show that the predicted planes (obtained using the information at k = 11 ) are fairly close to the segmented planes at k = 12 , in terms of plane areas, vertex distances and normal vectors. Besides, the execution time of the program for k = 12 is 0.0369 s (averaged from 100 MC runs). For the purpose of brevity, the numerical results for other time steps are omitted in this paper.

6. Conclusions

The majority of the current statistical SLAM solutions are based on using point features such as the representation of landmarks. The fast advancement of sensory technology makes it possible to utilize more sophisticated features in SLAM applications to achieve superior results while lowering computational cost. This paper presented the idea of using planar features for statistical SLAM, and proposed a stochastic transition model to propagate the plane parameters to the next time. A large range of simulation studies using real-world measurements have been conducted to evaluate the proposed transition model. Both graphical and numerical results show that the predicted planes generated by the proposed transition model closely match the segmented planes resulting from real-world point cloud measurements, in terms of three important indicators; plane area, vertex distance and normal vector. In the next step, we will look into other planar-feature-based stochastic transition models, and investigate the application of such transition models in statistical SLAM tasks.

Author Contributions

Conceptualization, R.H. and A.K.G.; Methodology, C.F., M.I.H. and R.T.; Software, C.F. and W.C.; Validation, C.F. and W.C.; Formal Analysis, C.F. and R.H.; Resources, A.K.G. and C.F.; Visualization, C.F. and R.T.; Supervision, R.H. and A.B.H.; Project Administration, C.F. and R.H.; Funding Acquisition, C.F. and R.H.

Funding

This research was funded by the National Natural Science Foundation of China (Grant No. 51805055), the National Key Research and Development Project (Grant No. 2018YFB0106100), and the Australian Research Council (the ARC Linkage Project grant LP160101081).

Conflicts of Interest

The authors declare no conflict of interest. The funding sponsors had no role in the design of the study; in the collection, analyses, or interpretation of data; in the writing of the manuscript, and in the decision to publish the results.

Abbreviations

The following abbreviations are used in this manuscript:
SLAMSimultaneous Localization and Mapping
EKFExtended Kalman Filter
RFSRandom Finite Set
LMBLabeled Multi-Bernoulli
CTConstant Turn
ECTExtended Constant Turn
SMCSequential Monte Carlo
EAPExpected A Posteriori
MAPMaximum A Posteriori
MSSEModified Selective Statistical Estimator
MCMonte Carlo

References

  1. Cadena, C.; Carlone, L.; Carrillo, H.; Latif, Y.; Scaramuzza, D.; Neira, J.; Reid, I.D.; Leonard, J.J. Simultaneous Localization and Mapping: Present, Future, and the Robust-Perception Age. IEEE Trans. Robot. 2016, 32, 1309–1332. [Google Scholar] [CrossRef]
  2. Mullane, J.; Vo, B.; Adams, M.D.; Vo, B. A Random-Finite-Set Approach to Bayesian SLAM. IEEE Trans. Robot. 2011, 27, 268–282. [Google Scholar] [CrossRef]
  3. Davison, A.J. Real-Time Simultaneous Localisation and Mapping with a Single Camera. In Proceedings of the Ninth IEEE International Conference on Computer Vision, Nice, France, 13–16 October 2003; IEEE Computer Society: Washington, DC, USA, 2003; pp. 1403–1410. [Google Scholar]
  4. Thrun, S.; Koller, D.; Ghahramani, Z.; Durrant-Whyte, H.; Ng, A.Y. Simultaneous Mapping and Localization with Sparse Extended Information Filters: Theory and Initial Results. In Algorithmic Foundations of Robotics V; Springer Tracts in Advanced Robotics; Springer: Berlin, Germany, 2002; Volume 7, pp. 363–380. [Google Scholar]
  5. Montemerlo, M.; Thrun, S.; Koller, D.; Wegbreit, B. FastSLAM: A Factored Solution to the Simultaneous Localization and Mapping Problem; AAAI Press/The MIT Press: Cambridge, MA, USA, 2002; pp. 593–598. [Google Scholar]
  6. Rozsa, Z.; Sziranyi, T. Obstacle prediction for automated guided vehicles based on point clouds measured by a tilted LIDAR sensor. IEEE Trans. Intell. Transp. Syst. 2018, 19, 2708–2720. [Google Scholar] [CrossRef]
  7. Fossel, J.; Hennes, D.; Claes, D.; Alers, S.; Tuyls, K. OctoSLAM: A 3D mapping approach to situational awareness of unmanned aerial vehicles. In Proceedings of the 2013 International Conference on Unmanned Aircraft Systems (ICUAS), Atlanta, GA, USA, 28–31 May 2013; pp. 179–188. [Google Scholar]
  8. Im, J.; Im, S.; Jee, G. Extended line map-based precise vehicle localization using 3D LIDAR. Sensors 2018, 18, 3179. [Google Scholar] [CrossRef] [PubMed]
  9. Ahn, S.; Chung, W.K. Efficient SLAM algorithm with hybrid visual map in an indoor environment. In Proceedings of the 2007 International Conference on Control, Automation and Systems, Seoul, Korea, 17–20 October 2007; pp. 663–667. [Google Scholar]
  10. Chen, Z.; Samarabandu, J.; Rodrigo, R. Recent advances in simultaneous localization and map-building using computer vision. Adv. Robot. 2007, 21, 233–265. [Google Scholar] [CrossRef]
  11. Tomono, M. Robust 3D SLAM with a stereo camera based on an edge-point ICP algorithm. In Proceedings of the 2009 IEEE International Conference on Robotics and Automation, Kobe, Japan, 12–17 May 2009; pp. 4306–4311. [Google Scholar]
  12. Sun, F.; Zhou, Y.; Li, C.; Huang, Y. Research on active SLAM with fusion of monocular vision and laser range data. In Proceedings of the 2010 8th World Congress on Intelligent Control and Automation, Jinan, China, 7–9 July 2010; pp. 6550–6554. [Google Scholar]
  13. Henry, P.; Krainin, M.; Herbst, E.; Ren, X.; Fox, D. RGB-D mapping: Using Kinect-style depth cameras for dense 3D modeling of indoor environments. Int. J. Robot. Res. 2012, 31, 647–663. [Google Scholar] [CrossRef]
  14. Endres, F.; Hess, J.; Engelhard, N.; Sturm, J.; Cremers, D.; Burgard, W. An evaluation of the RGB-D SLAM system. In Proceedings of the 2012 IEEE International Conference on Robotics and Automation, Saint Paul, MN, USA, 14–18 May 2012; pp. 1691–1696. [Google Scholar]
  15. Fazli, S.; Kleeman, L. Simultaneous landmark classification, localization and map building for an advanced sonar ring. Robotica 2006, 25, 283–296. [Google Scholar] [CrossRef]
  16. Kim, P.; Coltin, B.; Kim, H.J. Linear RGB-D SLAM for Planar Environments. In Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics); Springer: Heidelberg, Germany, 2018; Volume 11208 LNCS, pp. 350–366. [Google Scholar]
  17. Grant, W.S.; Voorhies, R.C.; Itti, L. Efficient Velodyne SLAM with point and plane features. In Autonomous Robots; Springer: New York, NY, USA, 2018. [Google Scholar]
  18. Pietzsch, T. Planar features for visual SLAM. In Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics); Springer: Heidelberg, Germany, 2008; Volume 5243 LNAI, pp. 119–126. [Google Scholar]
  19. Geiger, A.; Lenz, P.; Stiller, C.; Urtasun, R. Vision meets robotics: The KITTI dataset. Int. J. Robot. Res. 2013, 32, 1231–1237. [Google Scholar] [CrossRef]
  20. Reuter, S.; Vo, B.T.; Vo, B.N.; Dietmayer, K. The labeled multi-Bernoulli filter. IEEE Trans. Signal Process. 2014, 62, 3246–3260. [Google Scholar]
  21. Hoseinnezhad, R.; Bab-Hadiashar, A. An M-estimator for high breakdown robust estimation in computer vision. Comput. Vis. Image Underst. 2011, 115, 1145–1156. [Google Scholar] [CrossRef]
  22. Jazar, R.N. Vehicle Dynamics: Theory and Application; Springer: Berlin, Germany, 2014; Chapter 5; pp. 233–312. [Google Scholar]
  23. Jazar, R.N. Advanced Dynamics: Rigid Body, Multibody, and Aerospace Applications; Wiley: Hoboken, NJ, USA, 2011; Chapter 4; pp. 357–415. [Google Scholar]
  24. Li, X.R.; Jilkov, V.P. Survey of maneuvering target tracking. Part I. Dynamic models. IEEE Trans. Aerosp. Electron. Syst. 2003, 39, 1333–1364. [Google Scholar]
  25. Gostar, A.K.; Hoseinnezhad, R.; Bab-Hadiashar, A.; Liu, W. Sensor-Management for Multitarget Filters via Minimization of Posterior Dispersion. IEEE Trans. Aerosp. Electron. Syst. 2017, 53, 2877–2884. [Google Scholar] [CrossRef]
  26. Gostar, A.K.; Hoseinnezhad, R.; Bab-Hadiashar, A. Sensor control for multi-object tracking using labeled multi-Bernoulli filter. In Proceedings of the 17th International Conference on Information Fusion (FUSION), Salamanca, Spain, 7–10 July 2014; pp. 1–8. [Google Scholar]
  27. Li, S.; Yi, W.; Hoseinnezhad, R.; Wang, B.; Kong, L. Multiobject Tracking for Generic Observation Model Using Labeled Random Finite Sets. IEEE Trans. Signal Process. 2018, 66, 368–383. [Google Scholar] [CrossRef]
  28. Reuter, S. Multi-Object Tracking Using Random Finite Sets. Ph.D. Thesis, Ulm University, Ulm, Germany, 2014. [Google Scholar]
  29. Deusch, H.; Reuter, S.; Dietmayer, K. The Labeled Multi-Bernoulli SLAM Filter. IEEE Signal Process. Lett. 2015, 22, 1561–1565. [Google Scholar] [CrossRef]
  30. Hossain, M.I.; Gostar, A.K.; Bab-Hadiashar, A.; Hoseinnezhad, R. Visual Mitosis Detection and Cell Tracking Using Labeled Multi-Bernoulli Filter. In Proceedings of the 21th International Conference on Information Fusion (FUSION), Cambridge, UK, 10–13 July 2018; pp. 2468–2472. [Google Scholar]
  31. Wang, X.; Hoseinnezhad, R.; Gostar, A.K.; Rathnayake, T.; Xu, B.; Bab-Hadiashar, A. Multi-sensor control for multi-object Bayes filters. Signal Process. 2018, 142, 260–270. [Google Scholar] [CrossRef]
  32. Gostar, A.K.; Hoseinnezhad, R.; Rathnayake, T.; Wang, X.; Bab-Hadiashar, A. Constrained Sensor Control for Labeled Multi-Bernoulli Filter Using Cauchy-Schwarz Divergence. IEEE Signal Process. Lett. 2017, 24, 1313–1317. [Google Scholar] [CrossRef]
  33. Bab-Hadiashar, A.; Suter, D. Robust segmentation of visual data using ranked unbiased scale estimate. Robotica 1999, 17, 649–660. [Google Scholar] [CrossRef]
Figure 1. An example of the global and vehicle coordinate systems.
Figure 1. An example of the global and vehicle coordinate systems.
Sensors 19 01614 g001
Figure 2. Top view of the global and vehicle coordinate systems.
Figure 2. Top view of the global and vehicle coordinate systems.
Sensors 19 01614 g002
Figure 3. Three pairs of predicted and segmented planes at time k = 125 .
Figure 3. Three pairs of predicted and segmented planes at time k = 125 .
Sensors 19 01614 g003
Figure 4. Multi-angle comparison of the predicted and segmented planes at time k = 125 .
Figure 4. Multi-angle comparison of the predicted and segmented planes at time k = 125 .
Sensors 19 01614 g004
Figure 5. Three pairs of predicted and segmented planes at time k = 12 .
Figure 5. Three pairs of predicted and segmented planes at time k = 12 .
Sensors 19 01614 g005
Figure 6. Multi-angle comparison of the predicted and segmented planes at time k = 12 .
Figure 6. Multi-angle comparison of the predicted and segmented planes at time k = 12 .
Sensors 19 01614 g006aSensors 19 01614 g006b
Table 1. Areas of the predicted and segmented planes for time step k = 125 .
Table 1. Areas of the predicted and segmented planes for time step k = 125 .
Plane Pair 1Plane Pair 2Plane Pair 3
Predicted Plane 13.7147 m 2 219.9937 m 2 22.9218 m 2
Segmented Plane 11.0470 m 2 226.3712 m 2 23.2926 m 2
Table 2. Distances between each pair of plane vertexes for time step k = 125 .
Table 2. Distances between each pair of plane vertexes for time step k = 125 .
Plane Pair 1Plane Pair 2Plane Pair 3
Vertex Pair 1 0.2503 m 0.7089 m 0.0603 m
Vertex Pair 2 0.8519 m 0.8667 m 0.0294 m
Vertex Pair 3 0.1293 m 0.9060 m 0.0837 m
Vertex Pair 4 0.8107 m 1.0730 m 0.0677 m
Table 3. Angles between each pair of normal vectors for time step k = 125 .
Table 3. Angles between each pair of normal vectors for time step k = 125 .
Plane Pair 1Plane Pair 2Plane Pair 3
Angle Between Normal Vectors 0.0654 rad / 3.7458 0.0129 rad / 0.7382 0.0037 rad / 0.2115
Table 4. Areas of the predicted and segmented planes for time step k = 12 .
Table 4. Areas of the predicted and segmented planes for time step k = 12 .
Plane Pair 1Plane Pair 2Plane Pair 3
Predicted Plane 34.5121 m 2 22.7771 m 2 91.5893 m 2
Segmented Plane 33.7797 m 2 23.0555 m 2 90.5685 m 2
Table 5. Distances between each pair of plane vertexes for time step k = 12 .
Table 5. Distances between each pair of plane vertexes for time step k = 12 .
Plane Pair 1Plane Pair 2Plane Pair 3
Vertex Pair 1 0.1311 m 0.8031 m 0.1053 m
Vertex Pair 2 0.1117 m 0.1600 m 0.1119 m
Vertex Pair 3 0.0602 m 0.2778 m 0.5599 m
Vertex Pair 4 0.0924 m 1.0056 m 0.5558 m
Table 6. Angles between each pair of normal vectors for time step k = 12 .
Table 6. Angles between each pair of normal vectors for time step k = 12 .
Plane Pair 1Plane Pair 2Plane Pair 3
Angle Between Normal Vectors 0.0034 rad / 0.1936 0.1133 rad / 6.4912 0.0070 rad / 0.3987

Share and Cite

MDPI and ACS Style

Gostar, A.K.; Fu, C.; Chuah, W.; Hossain, M.I.; Tennakoon, R.; Bab-Hadiashar, A.; Hoseinnezhad, R. State Transition for Statistical SLAM Using Planar Features in 3D Point Clouds. Sensors 2019, 19, 1614. https://doi.org/10.3390/s19071614

AMA Style

Gostar AK, Fu C, Chuah W, Hossain MI, Tennakoon R, Bab-Hadiashar A, Hoseinnezhad R. State Transition for Statistical SLAM Using Planar Features in 3D Point Clouds. Sensors. 2019; 19(7):1614. https://doi.org/10.3390/s19071614

Chicago/Turabian Style

Gostar, Amirali Khodadadian, Chunyun Fu, Weiqin Chuah, Mohammed Imran Hossain, Ruwan Tennakoon, Alireza Bab-Hadiashar, and Reza Hoseinnezhad. 2019. "State Transition for Statistical SLAM Using Planar Features in 3D Point Clouds" Sensors 19, no. 7: 1614. https://doi.org/10.3390/s19071614

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop