Two-Stage Static/Dynamic Environment Modeling Using Voxel Representation

Alireza Asvadi, Paulo Peixoto and Urbano Nunes
Institute of Systems and Robotics, Department of Electrical and Computer Engineering, University of Coimbra


Perception is the process by which an intelligent system translates sensory data into an understanding of the world around it. 3D perception of dynamic environments is one of the key components for intelligent vehicles to operate in real-world environments. This paper proposes a voxel-based method for static/dynamic modeling of the three-dimensional environment surrounding a vehicle equipped with a Velodyne Lidar and an Inertial Navigation System (GPS/IMU). The proposed system comprises two main modules: (i) a module which estimates the ground surface using a piecewise surface fitting algorithm, and (ii) a voxel-based static/dynamic model of the vehicle’s surrounding environment using discriminative analysis. 
In every frame, by going over m previous scans, point clouds from the m last sensor measurements are loaded, transformed into the current coordinates of the vehicle, and integrated. The integrated point clouds are cropped to a region inside the local grid. Next, a piecewise surface fitting algorithm is applied on the integrated points to estimate the ground parameters. To do this, the ground is cut into stripes according to the car orientation and a piecewise surface fitting method is used to estimate the ground stripes’ parameters. Surface parameters are used for removing the ground points from two groups of point clouds: 1)- integrated point clouds; 2)- point clouds from single scans. Two previous groups of point clouds (e.i. integrated point clouds with removed ground points and point clouds from single scans with removed ground points) are voxelized and used for static/dynamic modeling of the environment. The voxelization process is performed by quantizing endpoints of the beams, counting the total number of points that falls into each grid cell, and storing a list of occupied voxels. This simplified model drastically speeds up the process at the cost of discarding information about free and unknown spaces. The main idea behind the proposed static/dynamic modeling of the environment is that since, a moving object occupies different voxels along time, a Velodyne Lidar captures and saves more data in the static voxels in comparison with voxels belong to moving objects. Therefore, the voxel values for the static parts of the environment are greater. To realize this concept, a two-stage process is proposed. The first stage provides a rough estimation of static/dynamic voxels by using a simple subtraction mechanism. The second stage further refines the results using a discriminative analysis on the 2D histograms computed from the output of the first stage. 



[Youtube link] 



The algorithm has been tested on KITTI dataset.


1. A. Asvadi, P. Peixoto, and U. Nunes, “Two-Stage Static/Dynamic Environment Modeling Using Voxel Representation,” accepted in Second Iberian Robotics Conference (ROBOT 2015), Lisbon, Portugal, 2015.
[PDF] [presentation] [code] [result]


The code runs on Linux/Windows with MATLAB R2014a.