Contrastive Generative Network with Recursive-Loop for 3D Point Cloud Generalized Zero-Shot Classification
We propose a Contrastive Generative Network with RecursiveLoop, termed as CGRL, which can be leveraged to enlarge the inter-class distances and narrow the intra-class gaps. By applying the contrastive representations to the generative model in a recursive-loop form, it can provide the self-guidance for the generator recurrently, which can help yield more discriminative features and train the better classifier. To validate the effectiveness of the proposed method, extensive experiments are conducted on three benchmarks, including ModelNet40, McGill, and ScanObjectNN. Experimental evaluations demonstrate the superiority of our approach and it can outperform the state-of-the-arts by a large margin.
Overall Framework for Contrastive Generative Network with Recursive-Loop (CGRL)
Python 3.6
Pytorch 0.3.1
torchvision 0.2.0
h5py 2.10
scikit-learn 0.22.1
scipy=1.4.1
numpy 1.18.1
numpy-base 1.18.1
pillow 5.1.0
For installing, follow these intructions
conda create -n cgrl python=3.6
conda activate cgrl
pip install https://download.pytorch.org/whl/cu90/torch-0.3.1-cp36-cp36m-linux_x86_64.whl
pip install torchvision==0.2.0 scikit-learn==0.22.1 scipy==1.4.1 h5py==2.10 numpy==1.18.1
You can download the feature vectors, which are extracted from PointNet, PointAugment, DGCNN, and PointConv architecures, of ModelNet, McGill, and ScanObjectNN datasets from the following link
link: https://drive.google.com/drive/folders/1y8HbxfBWzIzZ4pH-L1wi07pfuhGy8R2m
Extract them in the datasets
folder.
- To train and evaluate ZSL and GZSL models, please run:
python scripts/run_CGRL.py
![]() |
![]() |
If you find this useful, please cite our work as follows:
@article{hao2023contrastive,
title={Contrastive Generative Network with Recursive-Loop for 3D point cloud generalized zero-shot classification},
author={Hao, Yun and Su, Yukun and Lin, Guosheng and Su, Hanjing and Wu, Qingyao},
journal={Pattern Recognition},
volume={144},
pages={109843},
year={2023},
publisher={Elsevier}
}