Awesome
PSGMN
code for paper "Pseudo-Siamese Graph Matching Network for Textureless Objects' 6D Pose Estimation". If you find this code useful for your research, please consider citing our paper with the following BibTeX entry.
@ARTICLE{psgmn,
author={C. {Wu} and L. {Chen} and Z. {He} and J. {Jiang}},
journal={IEEE Transactions on Industrial Electronics},
title={Pseudo-Siamese Graph Matching Network for Textureless Objects' 6D Pose Estimation},
year={2021},
volume={},
number={},
pages={1-1},
doi={10.1109/TIE.2021.3070501}}
Installation
-
Set up the python environment:
conda create -n psgmn python=3.7 conda activate psgmn
install torch 1.5 built for cuda 10.1
conda install pytorch==1.5.0 torchvision==0.6.1 cudatoolkit=10.1 -c pytorch
install pytorch_geometric
pip install torch-scatter==latest+cu101 -f https://pytorch-geometric.com/whl/torch-1.5.0.html pip install torch-sparse==latest+cu101 -f https://pytorch-geometric.com/whl/torch-1.5.0.html pip install torch-cluster==latest+cu101 -f https://pytorch-geometric.com/whl/torch-1.5.0.html pip install torch-spline-conv==latest+cu101 -f https://pytorch-geometric.com/whl/torch-1.5.0.html pip install torch-geometric
install other requirements
pip install -r requirements.txt
compile the cuda extension
cd csrc python setup.py build_ext --inplace
-
Set up datasets: Download datasets which are formatted by PVNet:
(1). linemod
(2). occlusion linemod
Download the simplified mesh models for each object here. Unzip the file and copy it to linemode dataset.
Make soft links to the datasets.
ROOT=/path/to/gsgmn cd $ROOT mkdir data cd data ln -s /path/to/linemod linemod ln -s /path/to/occlusion_linemod occlusion_linemod
Training
Take the training on ape
as an example.
run
python main_psgmn.py --class_type ape --train True
Testing
Testing on Linemod
We provide the pretrained models of objects on Linemod, which can be found at here.
Take the testing on ape
as an example.
- Download the pretrained model of
ape
and put it to$ROOT/model/ape/200.pkl
. - Test:
python main_psgmn.py --class_type ape --eval True python main_psgmn.py --class_type ape --occ True --eval True