/VoxelNet-tensorflow

A 3D object detection system for autonomous driving.

Primary LanguagePython

VoxelNet-tensorflow

A tensorflow implementation for VoxelNet.

Requirement

  1. Python 3.5+
  2. tensorflow 1.4+
  3. NumPy, etc.

Usage

  1. have a look at config.py for model configurations, split your data into test/train set by this.
  2. run setup.py to build the Cython module.
$ python setup.py build_ext --inplace
  1. make sure your working directory looks like this (some files are omitted):
├── build   <-- Cython build file
├── model   <-- some src files
├── utils   <-- some src files
├── setup.py   
├── config.py   
├── test.py   
├── train.py   
├── train_hook.py   
├── README.md    
└── data    <-- KITTI data directory 
    └── object 
        ├── training   <-- training data
        |   ├── image_2   
        |   ├── label_2   
        |   └── velodyne  
        └── testing  <--- testing data
            ├── image_2   
            ├── label_2   
            └── velodyne  
  1. run train.py. Some cmdline parameters is needed, just check train.py for them.
  2. launch a tensorboard and wait for the training result.

Data augmentation

Since c928317, data augmentation is done in an online manner, so there is no need for generating augmented samples.

Result

TBD

TODO

  • nan and inf bugs fix
  • multicard support
  • data augmentation

Acknowledgement

Thanks to @ring00 for the implementation of VFE layer and Jialin Zhao for the implementation of the RPN.