rrlab.cs.uni-kl.de
Hannan Ejaz KeenRobotics Research Lab
Department of Computer ScienceUniversity of Kaiserslautern, Germany
Automated Elevation Mapping of Unstructured Outdoor Areas
rrlab.cs.uni-kl.de
Motivation
The height of fields - an interesting parameter
Approximation of field height is rather easy on flat fieldsApproximation of field height becomes a problem if the
field has variable elevation
rrlab.cs.uni-kl.de
Goal
Extract precise elevation map of field
rrlab.cs.uni-kl.de
We will discuss…
GPS-IMU Approach
Need of More Data!
Sensors and Data gathering
Implemented Methodology
Preprocessing
Plane Extraction
Scan Transformation
Pointloud Merge and Octomap
Surface Generation
Geotiff Representation
rrlab.cs.uni-kl.de
GPS-IMU Approach
Proposed Sensors IMU Stereo Camera GPS
Localization Fused all three sensors Precise localization Used as such
Mapping Update points at each run
Map based on waypoints only
rrlab.cs.uni-kl.de
Need of More Data!
Less precise map due to limited points Difficult to update points in previously stored geotiff map
Addition of velodyne and stereo data No update required
rrlab.cs.uni-kl.de
Sensors and Data gathering
Data from two different sources i.e. from ground vehicle and octocopter
Multisensor data fusion to construct precise and computationally sound elevation maps
Sensors under consideration are Imu, rtk-gps, stereo camera and velodyne (ground vehicle) Imu, gps, stereo camera (octocopter)
rrlab.cs.uni-kl.de
Implemented Methodology - Steps
Preprocessing of stereo and velodyne data Extract plane by Ransac plane model Transform all sensor at a specific frame of reference (GPS
as reference in our case) Point cloud merge using octomaps Fill out the holes in map by cubic spline interpolation GeoTIFF Representation
Preprocessing RANSAC TransformationPoint Cloud
MergeSpline
InterpolationGeoTIFF
Representation
rrlab.cs.uni-kl.de
Preprocessing
Huge variation in point densities in point clouds Measurement errors lead to sparse outliers Nearest neighbor assuming the distribution as gaussian with
mean and standard deviation Dynamic tuneable parameters
rrlab.cs.uni-kl.de
Iterative process to estimate the parameters of mathematical model
Assumption – data comprises of both inliers and outliers Outliers do not fit the model in any circumstances
Plane Extraction - RANSAC
Outline:
1. Choose a small subset of points uniformly at random
2. Fit a model to that subset
3. Find all remaining points that are “close” to the model and reject the rest as
outliers
4. Do this many times and choose the best model
rrlab.cs.uni-kl.de
RANSAC
Source: R. Raguram
rrlab.cs.uni-kl.de
RANSAC
Source: R. Raguram
rrlab.cs.uni-kl.de
RANSAC
Source: R. Raguram
rrlab.cs.uni-kl.de
RANSAC
Source: R. Raguram
rrlab.cs.uni-kl.de
RANSAC
Source: R. Raguram
rrlab.cs.uni-kl.de
RANSAC
Source: R. Raguram
rrlab.cs.uni-kl.de
RANSAC
Source: R. Raguram
rrlab.cs.uni-kl.de
RANSAC
Source: R. Raguram
rrlab.cs.uni-kl.de
RANSAC
Source: R. Raguram
rrlab.cs.uni-kl.de
RANSAC
Source: R. Raguram
rrlab.cs.uni-kl.de
Trees, poles or animals on field are considered as outlier Extraction of field assuming plane model and removing
outliers
Plane Extraction - Results
rrlab.cs.uni-kl.de
Transformation of scan with respect to first scan Orientation of sensors are aligned with GPS 8x fast as compared to Iterative Closest Point - ICP
Scan Transformation
rrlab.cs.uni-kl.de
Scan Transformation
Transformation of scan with respect to first scan Orientation of sensors are aligned with GPS 8x fast as compared to Iterative Closest Point - ICP
rrlab.cs.uni-kl.de
Scan Transformation - Results
Transformation of scan with respect to first scan Orientation of sensors are aligned with GPS 8x fast as compared to Iterative Closest Point - ICP
rrlab.cs.uni-kl.de
Point Cloud merge and Octomap
Scan merge iteratively
Consumes 33Mb memory in one second by a velodyne scan as each scan gives upto 1.39 million points per second
High frequency, approximately 60% redundant points
Sensor uncertainty gives some outliers which are not in every scan
A nearest neighbor caters the problem of redundancy Use of octomap for fast searching and insertion
rrlab.cs.uni-kl.de
Octomap
*A. Hornung,. K.M. Wurm, M. Bennewitz, C. Stachniss, and W. Burgard, "OctoMap: An Efficient Probabilistic 3D Mapping Framework Based
on Octrees" in Autonomous Robots, 2013; DOI: 10.1007/s10514-012-9321-0.
Implements 3d occupancy grid mapping approach C++ Library* Based on Octree Octrees are the extension on Quadtree to three dimensions
rrlab.cs.uni-kl.de
Octomap
*A. Hornung,. K.M. Wurm, M. Bennewitz, C. Stachniss, and W. Burgard, "OctoMap: An Efficient Probabilistic 3D Mapping Framework Based
on Octrees" in Autonomous Robots, 2013; DOI: 10.1007/s10514-012-9321-0.
Implements 3d occupancy grid mapping approach C++ Library* Based on Octree Octrees are the extension on Quadtree to three dimensions
rrlab.cs.uni-kl.de
Point Cloud merge and Octomap (Cont.)
Velodyne-Stereo merge cloud in oct0map representation
rrlab.cs.uni-kl.de
Point Cloud merge and Octomap (Cont.)
GPS Waypoints (green) and Velodyne-Stereo merge cloud (purple)
rrlab.cs.uni-kl.de
Surface Generation
Interpolate the cloud – Cubic BSpline Interpolation Linear combination of control points and BSpline basis
function Local control over the curve Continuous at merging points Continuous first and second derivative where they join First and Second derivatives are equal for merging points
Image Source: http://m2matlabdb.ma.tum.de/download.jsp?MC_ID=7&SC_ID=7&MP_ID=485
rrlab.cs.uni-kl.de
Surface Generation
Pcl library – surface_fitting DGM data having less than 1m accuracy as ground truth 87% of precision
rrlab.cs.uni-kl.de
GeoTIFF Representation
Georeferenced Tagged Image File Format An interchange format for georeferenced raster imagery