Giter Site home page Giter Site logo

lllray / semantic_3d_mapping Goto Github PK

View Code? Open in Web Editor NEW

This project forked from shichaoy/semantic_3d_mapping

0.0 0.0 0.0 29.61 MB

Semantic 3D Occupancy Mapping through Efficient High Order CRFs

License: Other

CMake 0.74% C 31.04% C++ 65.80% Shell 0.01% MATLAB 0.13% Python 0.19% Makefile 1.78% Objective-C 0.31%

semantic_3d_mapping's Introduction

Semantic 3D mapping

This package builds a semantic 3D grid map using stereo or RGBD input. It is suitable for large scale online mapping. The grid semantic label is optimized through hierarchical CRF.

Authors: Shichao Yang, Yulan Huang

Related Paper:

  • Semantic 3D Occupancy Mapping through Efficient High Order CRFs, IROS 2017, S. Yang, Y. Huang, S. Scherer PDF

Installation

Prerequisites

This code contains several ros packages. We have test in ROS indigo/kinect. Create or use existing a ros workspace.

mkdir -p ~/mapping_3d/src
cd ~/mapping_3d/src
catkin_init_workspace
git clone [email protected]:shichaoy/semantic_3d_mapping.git

Download Data

cd semantic_3d_mapping/grid_sensor
sh download_data.sh

if the download link breaks, please download here and follow sh file to process it. Will fix it later.

If wget not installed, sudo apt-get install wget

Compile

cd ~/mapping_3d
catkin_make

Running

source devel/setup.bash
roslaunch grid_sensor grid_imgs.launch

You will see point cloud in Rviz. It also projects 3D grid onto 2D image for evaluation, stored at grid_sensor/dataset/crf_3d_reproj .

Notes

  1. Some mode parameters can be changed in grid_sensor/params/kitti_crf_3d.yaml and grid_imgs.launch

    if use_crf_optimize = false, no 3D CRF optimization, 2D label is directly transferred to 3D.

    if use_crf_optimize = true, use_high_order = false dense 3D CRF optimization runs.

    if use_crf_optimize = true, use_high_order = true High order 3D CRF optimization runs. Superpixel data needs to be provided

  2. This package only contains grid mapping, all the pre-processing steps are not included. See preprocess_data/README.md for details.

    Elas is used for computing dense disparity/depth. Dilation CNN is used for 2D semantic segmentation.

    SLIC is used for generating superpixel. ORB SLAM is used to estimate camera pose.

  3. If Grid sensor memory is not initialized properly, delete /dev/shm/sem.shared_grid_map...

  4. Our used ground truth image annotations are in preprocess_data/gt_label/ Refer to paper experiments for more details.

semantic_3d_mapping's People

Contributors

shichaoy avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.