All Projects → lzccccc → Smoke

lzccccc / Smoke

Licence: mit
SMOKE: Single-Stage Monocular 3D Object Detection via Keypoint Estimation

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Smoke

EgoNet
Official project website for the CVPR 2021 paper "Exploring intermediate representation for monocular vehicle pose estimation"
Stars: ✭ 111 (-58.27%)
Mutual labels:  autonomous-driving
l2r
Open-source reinforcement learning environment for autonomous racing.
Stars: ✭ 38 (-85.71%)
Mutual labels:  autonomous-driving
sparse-scene-flow
This repo contains C++ code for sparse scene flow method.
Stars: ✭ 23 (-91.35%)
Mutual labels:  autonomous-driving
data aggregation
This repository contains the code for the CVPR 2020 paper "Exploring Data Aggregation in Policy Learning for Vision-based Urban Autonomous Driving"
Stars: ✭ 26 (-90.23%)
Mutual labels:  autonomous-driving
BtcDet
Behind the Curtain: Learning Occluded Shapes for 3D Object Detection
Stars: ✭ 104 (-60.9%)
Mutual labels:  autonomous-driving
FusionAD
An open source autonomous driving stack by San Jose State University Autonomous Driving Team
Stars: ✭ 30 (-88.72%)
Mutual labels:  autonomous-driving
cruw-devkit
Develop kit for CRUW dataset
Stars: ✭ 27 (-89.85%)
Mutual labels:  autonomous-driving
Dataset Api
The ApolloScape Open Dataset for Autonomous Driving and its Application.
Stars: ✭ 260 (-2.26%)
Mutual labels:  autonomous-driving
Awesome-3D-Object-Detection-for-Autonomous-Driving
Papers on 3D Object Detection for Autonomous Driving
Stars: ✭ 52 (-80.45%)
Mutual labels:  autonomous-driving
WIMP
[arXiv] What-If Motion Prediction for Autonomous Driving ❓🚗💨
Stars: ✭ 80 (-69.92%)
Mutual labels:  autonomous-driving
RCAutopilot
Autonomous RC Car powered by a Convoluted Neural Network implemented in Python with Tensorflow
Stars: ✭ 35 (-86.84%)
Mutual labels:  autonomous-driving
awesome-lidar
😎 Awesome LIDAR list. The list includes LIDAR manufacturers, datasets, point cloud-processing algorithms, point cloud frameworks and simulators.
Stars: ✭ 217 (-18.42%)
Mutual labels:  autonomous-driving
nuplan-devkit
The devkit of the nuPlan dataset.
Stars: ✭ 107 (-59.77%)
Mutual labels:  autonomous-driving
ar-tu-do
ROS & Gazebo project for 1/10th scale self-driving race cars
Stars: ✭ 65 (-75.56%)
Mutual labels:  autonomous-driving
Error-State-Extended-Kalman-Filter
Vehicle State Estimation using Error-State Extended Kalman Filter
Stars: ✭ 100 (-62.41%)
Mutual labels:  autonomous-driving
2019-UGRP-DPoom
2019 DGIST DPoom project under UGRP : SBC and RGB-D camera based full autonomous driving system for mobile robot with indoor SLAM
Stars: ✭ 35 (-86.84%)
Mutual labels:  autonomous-driving
neat
[ICCV'21] NEAT: Neural Attention Fields for End-to-End Autonomous Driving
Stars: ✭ 194 (-27.07%)
Mutual labels:  autonomous-driving
3dod thesis
3D Object Detection for Autonomous Driving in PyTorch, trained on the KITTI dataset.
Stars: ✭ 265 (-0.38%)
Mutual labels:  autonomous-driving
rail marking
proof-of-concept program that detects rail-track with semantic segmentation for autonomous train system
Stars: ✭ 21 (-92.11%)
Mutual labels:  autonomous-driving
dynamic-occupancy-grid-map
Implementation of A Random Finite Set Approach for Dynamic Occupancy Grid Maps with Real-Time Application
Stars: ✭ 89 (-66.54%)
Mutual labels:  autonomous-driving

SMOKE: Single-Stage Monocular 3D Object Detection via Keypoint Estimation

Video

This repository is the official implementation of our paper SMOKE: Single-Stage Monocular 3D Object Detection via Keypoint Estimation. For more details, please see our paper.

Introduction

SMOKE is a real-time monocular 3D object detector for autonomous driving. The runtime on a single NVIDIA TITAN XP GPU is ~30ms. Part of the code comes from CenterNet, maskrcnn-benchmark, and Detectron2.

The performance on KITTI 3D detection (3D/BEV) is as follows:

Easy Moderate Hard
Car 14.17 / 21.08 9.88 / 15.13 8.63 / 12.91
Pedestrian 5.16 / 6.22 3.24 / 4.05 2.53 / 3.38
Cyclist 1.11 / 1.62 0.60 / 0.98 0.47 / 0.74

The pretrained weights can be downloaded here.

Requirements

All codes are tested under the following environment:

  • Ubuntu 16.04
  • Python 3.7
  • Pytorch 1.3.1
  • CUDA 10.0

Dataset

We train and test our model on official KITTI 3D Object Dataset. Please first download the dataset and organize it as following structure:

kitti
│──training
│    ├──calib 
│    ├──label_2 
│    ├──image_2
│    └──ImageSets
└──testing
     ├──calib 
     ├──image_2
     └──ImageSets

Setup

  1. We use conda to manage the environment:
conda create -n SMOKE python=3.7
  1. Clone this repo:
git clone https://github.com/lzccccc/SMOKE
  1. Build codes:
python setup.py build develop
  1. Link to dataset directory:
mkdir datasets
ln -s /path_to_kitti_dataset datasets/kitti

Getting started

First check the config file under configs/.

We train the model on 4 GPUs with 32 batch size:

python tools/plain_train_net.py --num-gpus 4 --config-file "configs/smoke_gn_vector.yaml"

For single GPU training, simply run:

python tools/plain_train_net.py --config-file "configs/smoke_gn_vector.yaml"

We currently only support single GPU testing:

python tools/plain_train_net.py --eval-only --config-file "configs/smoke_gn_vector.yaml"

Acknowledgement

CenterNet

maskrcnn-benchmark

Detectron2

Citations

Please cite our paper if you find SMOKE is helpful for your research.

@article{liu2020SMOKE,
  title={{SMOKE}: Single-Stage Monocular 3D Object Detection via Keypoint Estimation},
  author={Zechen Liu and Zizhang Wu and Roland T\'oth},
  journal={arXiv preprint arXiv:2002.10111},
  year={2020}
}
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].