Localization and Mapping of GPS Denied Indoor Environment with Laser Scanner for
Unmanned Aerial Vehicles
aerial vehicles have gained popularity in the field of civil applications over
the years, especially in the tasks such as disaster response and rescue which
may be dangerous or difficult for human to perform. With compared to ground
robots, UAVs are not limited by the rough terrain and hence they are more agile
that can move faster. Solving the computational problem of modelling a map for
an unknown environment while simultaneously keeping track of the aerial robot
itself in the map is the key ability required for robots to operate
autonomously in real life environment.
In outdoor environment,
robots can take advantage of the rapid development of Global Navigation
Satellite System (GNSS) and Inertial Navigation System (INS) to locate itself.
However, localization based on GNSS is not very practical in indoor environment
where GNSS signal is significantly weakened and even lost. This problem of indoor
SLAM for ground robot is normally solved with different types of range finder
such as laser scanner, cameras, etc. Unfortunately, unmanned aerial vehicles
are also constrained by limited payload capacity and frame size. Therefore,
light and small sensors with low computational costs are necessary for UAVs to
fly autonomously in indoor environment. Moreover, the extra challenge faced is
that flying robots have one additional degree of freedom which makes the
environment more complicated. The robot is also more difficult to control with
complex body dynamics.
A navigation system for a
quadcopter and modification of an open-sourced software, Hector SLAM, are
discussed in this report. The approach requires relatively low computational
resources and hence light onboard processors can be used. Robot Operating
System (ROS) with APIs of the ROS navigation stack are used. However, the
approach is only suitable for SLAM in small indoor areas where loop closure is
not required. It is not suitable in scenarios such as SAFMC Category D2 where
flying robots need to fly in a spacious indoor environment with limited
features to find victims in a simulated category five hurricane scenario.
Therefore, the open-sourced software need to be modified so that large loops
are closed. Moreover, while the 2D laser scanner can only create a scanning
plane, the altitude information can be obtained with a mirror mounted on the
laser scanner to direct some laser beams 90 degree to the ground. Therefore, a
3D map can be generated and together with the inertial measurement units in
Pixhawk, becomes part of the flying vehicle’s control system.
The integration of laser
scanner with other sensors have been studied intensively by research community.
Scan matching is the most common approach being implemented to estimate pose
change from laser scanner measurements. There is some open-sourced software
like Gmapping, which uses Rao-Blackwellized particle ?lters 1. However, the
solution works good only in planar environment and rely heavily on sufficiently
accurate odometry. In addition, the method does not leverage the high update
rate of modern laser scanners. Therefore, for an entirely unknown environment, the
flying platform may need to perform some extreme rolling and pitching
Iterative Closest Point
(ICP) is an iterative algorithm that minimizes difference between two
pointclouds from consecutive laser scans without extracting the line or plane features.
Therefore, it is useful to use ICP for unstructured environments as it is
independent of environment features. Paul 2 proposed that for every
point of a current scan, the smallest Euclidean distance of the point in the
reference scan is selected. However, the method is relatively slower because the
entire poincloud is examined to ?nd the most appropriate transformation. Furthermore,
the iterative process in the algorithm could lead to unstable performance as
the matching loop continues until convergence. There are cases where ICPs do
not converge to a correct solution if the initial guess of the transformation
is not good.
The probabilistic scan
matching method is proposed by Montesano 3. This method is like
ICP but has two stages: correspondence location and displacement estimation. Firstly,
the correspondence between each two consecutive scans is calculated. Then the transformation
is estimated. This probabilistic model considers all uncertainties involved
with drift of the sensor and the noise in measurement. Moreover, it allows
correspondence to be found through probability integration over all possible
associations between the range measurements of the two scans. The ICP and PSM
methods are most popular in solving point-based scan matching problem due to
its effectiveness and simplicity.
The feature-based scan
matching approach is proposed by Jiayuan 4, which derives the
pose change of the robot by transforming the raw laser scan points into a more
efficient representation via tracking the feature parameters change. Some
common features used includes line segments, edges, and corners, etc.
Split-merge algorithm can be used to extract line features and extended 1D SIFT
is used to detect point features. Orientation information is extracted from 2D
line correspondence and initial guess for transformation estimation can also be
improved. While this method is more accurate and robust than ICP approach, it
requires even higher computational resources to process laser scans in real-time.
It is hard to achieve accuracy with the limited resources of the UAV onboard
computer using this method.
Normal Distribution Transform (NDT) proposed by Peter 5 is a mathematical
property-based scan matching method. This transformation can be used to derive
analytic expressions for matching another scan. It aligns scans to a mixture of
normal distributions representing preceding scans and no explicit
correspondences between points or features must established. Therefore, the
method is more robust without correspondences. All derivatives can be
calculated analytically. Therefore, it is fast enough to run in real time.
However, the method still requires certain features and featureless corridors
may pose a problem on the algorithm.
A flying vehicle
localization approach for indoor environments based on a laser scanner is proposed
by Bachrach 6. It uses a single laser
scanner with globally consistent range image alignment method for localization
and map construction. All new scans are registered against the union of
previously acquired and registered scans. This method does not spread out the
errors and is order independent. However, the approach has limited ?eld of view
when applied to environment mapping rather than to navigation. 3D map is
generated when UAV moves in a vertical direction with a simple 2D lidar.