Dynamic Point Cloud Models with Point Cloud Buffers. This repository contains the code for training a sparse high-dimensional convolutional neural network for predicting valid/invalid points in a large point cloud. The sparse neural network is written using Pytorch and Minkowski Engine.
Setup the Conda environment:
conda env create -f environment.ymlNext build Minkowski Engine using the instructions in the docs: Minkowski Engine.
The network can be trained on any GPU with at least 8Gb of VRAM. For best results, we recommend training on at least 2 GPUs and increasing the batch_size to at least 16. To train:
python train.py --dataset=simulator/dataset/points2.ply' --voxel_size=0.005```To fine-tune:
python train.py --dataset=simulator/dataset/points2.ply' --voxel_size=0.005 --weights=model.pth```Videos of the raw dataset and trained models can be generated with visualize.py
python visualize.pySynthetic datasets are created by running our autonomous turtlebot simulator and recording the resulting pointclouds. Datasets are stored in the src/simulator/dataset/ directory. The synthetic dataset is loaded into Pytorch by the datasets.TD3Loader.
Setup the Conda environment:
conda env export --no-builds > environment.ymlMIT
