hughw19 / NOCS_CVPR2019

[CVPR2019 Oral] Normalized Object Coordinate Space for Category-Level 6D Object Pose and Size Estimation on Python3, Tensorflow, and Keras
https://geometry.stanford.edu/projects/NOCS_CVPR2019/
Other
441 stars 71 forks source link

Normalized Object Coordinate Space for Category-Level 6D Object Pose and Size Estimation

Created by He Wang, Srinath Sridhar, Jingwei Huang, Julien Valentin, Shuran Song, Leonidas J. Guibas from Stanford University, Google Inc., Princeton University, Facebook AI Research.

NOCS Teaser

Citation

If you find our work useful in your research, please consider citing:

 @InProceedings{Wang_2019_CVPR,
               author = {Wang, He and Sridhar, Srinath and Huang, Jingwei and Valentin, Julien and Song, Shuran and Guibas, Leonidas J.},
               title = {Normalized Object Coordinate Space for Category-Level 6D Object Pose and Size Estimation},
               booktitle = {The IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},
               month = {June},
               year = {2019}
 }

Introduction

This is a keras and tensorflow implementation of Normalized Object Coordinate Space for Category-Level 6D Object Pose and Size Estimation, a CVPR 2019 oral paper.

The repository includes:

For more information, please visit the project page.

Requirements

This code has been tested with

Datasets

You can download the files and store them under data/.

NOTE: You are required to cite our paper if you use the dataset. The data is only for non-commercial use. Please reach out to us for other use cases.

Pretrain weights

You can find the following checkpoints in this download link:

You can download the checkpoints and store them under logs/.

Training

# Train a new model from pretrained COCO weight
python3 train.py

Detection and evaluation

# Detect using a checkpoint
python3 detect_eval.py --mode detect --ckpt_path=/logs/ckpt --draw

# Evaluate a checkpoint
python3 detect_eval.py --mode eval --ckpt_path=/output/ckpt 

Rendering NOCS Map using blender 2.79b

# Render the NOCS map for the default cube in Blender
# See images/nocs_map_cube.png for the reference.
blender -b --python nocs_map_cube.py