This is a refined version of Yilei's work. We seperately test PSPNet and ICNet to recognize humans from input images and then mask them out. For 3D map construction, only the unmasked areas are projected into pointcloud.
Also since the segmentation's qualities can be pretty poor on blurried images, we first used a dilation filter to slightly amplify the mask. Some stubborn pixels may still exist after the dilation, a points filter is also employed.
The package depends on Boost, Opencv3, PCL1.7, caffe and G2O. Please follow the official guidance for installation.
For compiling, please follow the
mkdir build
cd build
cmake..
make
process. Also please notice that the package only provides CPU version.
The code has been tested on Ubuntu 16.04. For compling, please mkdir model
under the generated bin
folder.
Then copy the parameters.txt
into bin
and the .caffemodel
and .prototxt
into bin/model
.
The parameters.txt
is used for adjusting parameters of the SLAM system and they can be kept as the same for different method. Since the model files are too large, you need to download it from the original PSPNet/ICNet repositories.
Then run ./ICSlam
for the refined result and ./Slam
for the original one.