Code for paper "Pose Adaptive Dual Mixup for Few-Shot Single-View 3D Reconstruction"

Code for paper "Pose Adaptive Dual Mixup for Few-Shot Single-View 3D Reconstruction"
Abstract: We present a pose adaptive few-shot learning procedure and a two-stage data interpolation regularization, termed Pose Adaptive Dual Mixup (PADMix), for single-image 3D reconstruction. While augmentations via interpolating feature-label pairs are effective in classification tasks, they fall short in shape predictions potentially due to inconsistencies between interpolated products of two images and volumes when rendering viewpoints are unknown. PADMix targets this issue with two sets of mixup procedures performed sequentially. We first perform an input mixup which, combined with a pose adaptive learning procedure, is helpful in learning 2D feature extraction and pose adaptive latent encoding. The stagewise training allows us to build upon the pose invariant representations to perform a follow-up latent mixup under one-to-one correspondences between features and ground-truth volumes. PADMix significantly outperforms previous literature on few-shot settings over the ShapeNet dataset and sets new benchmarks on the more challenging real-world Pix3D dataset.

Pose Adaptive Dual Mixup for Few-Shot Single-View 3D Reconstruction

This repository provides the source code for the paper Pose Adaptive Dual Mixup for Few-Shot Single-View 3D Reconstruction published in AAAI-22. The implementation is on ShapeNet.

Overview

Cite this work

@inproceedings{padmix,
  title={Pose Adaptive Dual Mixup for Few-Shot Single-View 3D Reconstruction},
  author={Cheng, Ta-Ying and 
          Yang, Hsuan-Ru and 
          Trigoni, Niki and 
          Chen, Hwann-Tzong and 
          Liu, Tyng-Luh},
  booktitle={AAAI},
  year={2022}
}

Prerequisites

Clone the Code Repository

git clone https://github.com/ttchengab/PADMix.git

Datasets

The ShapeNet dataset is available below:

Get Started

Create two directories, one for saving templates, and the other for saving checkpoints:

mkdir template
mkdir ckpts_fewshot

To generate the priors, use the following command:

python saveTV.py

To train the ground truth autoencoder, use the following command:

python fewshot_AE.py

To train with Input Mixup, use the following command:

python fewshot_mixup_triplet.py

To train with Latent Mixup, use the following command:

python fewshot_latent_mixup.py

To evaluate the IoU, use the following command:

python fewshot_eval.py

Pretrained Models

The pretrained model under the one-shot setting on ShapeNet is available here.

Download Source Code

Download ZIP

Paper Preview

Mar 27, 2022