Skip to content

Latest commit

 

History

History

data

Data Preparation

PASCAL3D+ and Occluded PASCAL3D+

python3 prepare_pascal3d.py \
    --config config/datasets/pascal3d_runtime.yaml

Prepare data without centering and resize:

python3 prepare_pascal3d.py \
    --config config/datasets/pascal3d_ori.yaml

Parameters. The parameters are loaded from the .yaml files.

  • pad_texture: If True, use describable textures when padding.
  • occ_levels: The occlusion levels we prepare for training and validation data.
  • single_mesh: Type of mesh we generate.
  • root_path: Path to the generated data.
  • training_only: If True, skip validation data.
  • image_sizes: Image sizes of the output images.
  • mesh_path: Path to the meshes used for generating 3D keypoint annotations.
  • prepare_mode: Preparation mode, first or all.
  • augment_by_dist: If True, augment samples by object distances (scales); commonly used for 6D pose estimation training.

ObjectNet3D

python3 prepare_objectnet3d.py \
    --config config/datasets/objectnet3d.yaml

Parameters. The parameters are loaded from the .yaml files.

  • pad_texture: If True, use describable textures when padding.
  • single_mesh: Type of mesh we generate.
  • root_path: Path to the generated data.
  • training_only: If True, skip validation data.
  • image_sizes: Image sizes of the output images.
  • mesh_path: Path to the meshes used for generating 3D keypoint annotations.
  • prepare_mode: Preparation mode, first or all.
  • augment_by_dist: If True, augment samples by object distances (scales); commonly used for 6D pose estimation training.

OOD-CV

python3 prepare_ood_cv.py \
    --config config/datasets/ood_cv.yaml

Parameters. The parameters are loaded from the .yaml files.

  • nuisances: Types of nuisances we consider.
  • pad_texture: If True, use describable textures when padding.
  • occ_levels: The occlusion levels we prepare for training and validation data.
  • single_mesh: Type of mesh we generate.
  • root_path: Path to the generated data.
  • training_only: If True, skip validation data.
  • image_sizes: Image sizes of the output images.
  • mesh_path: Path to the meshes used for generating 3D keypoint annotations.
  • prepare_mode: Preparation mode, first or all.
  • augment_by_dist: If True, augment samples by object distances (scales); commonly used for 6D pose estimation training.

Synthetic ShapeNet

First download ShapeNet v1 from shapenet.org. Then install Blender 2.90:

apt-get install -y libxi6 libgconf-2-4 libfontconfig1 libxrender1
wget https://download.blender.org/release/Blender2.90/blender-2.90.0-linux64.tar.xz
tar -xf blender-2.90.0-linux64.tar.xz
cd blender-2.90.0-linux64/2.90/python/bin
./python3.7m -m ensurepip
./python3.7m -m pip install numpy

Then run the following script.

python3 create_synthetic_shapenet.py \
    --config config/datasets/synthetic_shapenet.yaml

Misc

Tetrahedra grids.

wget https://www.cs.jhu.edu/~wufeim/NeMo/tets.zip
unzip tets.zip
rm tets.zip