需先自行下载 ShapeNet/Pix3D 数据集并修改 config.py 中的路径;预训练权重需单独下载;Pix2Vox-F 需先切到 Pix2Vox-F 分支

Pix2Vox
hzxieMIT更新放缓从单张或多视角图片重建三维体素模型的官方实现,基于 ICCV 2019 论文,用上下文感知融合提升重建精度。
The official implementation of "Pix2Vox: Context-aware 3D Reconstruction from Single and Multi-view Images". (ICCV 2019)
git clone https://github.com/hzxie/Pix2Vox.git
cd Pix2Vox
pip install -r requirements.txtREADME 未说明显存、CPU 或 GPU 型号要求
ICCV 2019 官方实现,用单张或多视角图片重建三维体素模型
从单张或多视角图片重建三维体素模型的官方实现,基于 ICCV 2019 论文,用上下文感知融合提升重建精度。
核心能力
- 用编码器-解码器融合多视角特征做三维体素重建
- 提供 Pix2Vox-A 与 Pix2Vox-F 两个预训练模型
- 支持 ShapeNet、Pix3D、PASCAL3D 数据集训练与测试
- 通过 runner.py 一条命令完成训练或测试
容易踩的坑
暂无 release 数据(可能没有发版,或尚未同步)。
用户点评
登录用户的真实使用记录,可按版本和硬件筛选还没有人点评。第一个说出真实体验的人最有价值。
Pix2Vox
This repository contains the source code for the paper Pix2Vox: Context-aware 3D Reconstruction from Single and Multi-view Images. The follow-up work Pix2Vox++: Multi-scale Context-aware 3D Object Reconstruction from Single and Multiple Images has been published in International Journal of Computer Vision (IJCV).

Cite this work
@inproceedings{xie2019pix2vox,
title={Pix2Vox: Context-aware 3D Reconstruction from Single and Multi-view Images},
author={Xie, Haozhe and
Yao, Hongxun and
Sun, Xiaoshuai and
Zhou, Shangchen and
Zhang, Shengping},
booktitle={ICCV},
year={2019}
}
Datasets
We use the ShapeNet and Pix3D datasets in our experiments, which are available below:
- ShapeNet rendering images: http://cvgl.stanford.edu/data2/ShapeNetRendering.tgz
- ShapeNet voxelized models: http://cvgl.stanford.edu/data2/ShapeNetVox32.tgz
- Pix3D images & voxelized models: http://pix3d.csail.mit.edu/data/pix3d.zip
Pretrained Models
The pretrained models on ShapeNet are available as follows:
Prerequisites
Clone the Code Repository
git clone https://github.com/hzxie/Pix2Vox.git
Install Python Denpendencies
cd Pix2Vox
pip install -r requirements.txt
Update Settings in config.py
You need to update the file path of the datasets:
__C.DATASETS.SHAPENET.RENDERING_PATH = '/path/to/Datasets/ShapeNet/ShapeNetRendering/%s/%s/rendering/%02d.png'
__C.DATASETS.SHAPENET.VOXEL_PATH = '/path/to/Datasets/ShapeNet/ShapeNetVox32/%s/%s/model.binvox'
__C.DATASETS.PASCAL3D.ANNOTATION_PATH = '/path/to/Datasets/PASCAL3D/Annotations/%s_imagenet/%s.mat'
__C.DATASETS.PASCAL3D.RENDERING_PATH = '/path/to/Datasets/PASCAL3D/Images/%s_imagenet/%s.JPEG'
__C.DATASETS.PASCAL3D.VOXEL_PATH = '/path/to/Datasets/PASCAL3D/CAD/%s/%02d.binvox'
__C.DATASETS.PIX3D.ANNOTATION_PATH = '/path/to/Datasets/Pix3D/pix3d.json'
__C.DATASETS.PIX3D.RENDERING_PATH = '/path/to/Datasets/Pix3D/img/%s/%s.%s'
__C.DATASETS.PIX3D.VOXEL_PATH = '/path/to/Datasets/Pix3D/model/%s/%s/%s.binvox'
Get Started
To train Pix2Vox, you can simply use the following command:
python3 runner.py
To test Pix2Vox, you can use the following command:
python3 runner.py --test --weights=/path/to/pretrained/model.pth
If you want to train/test Pix2Vox-F, you need to checkout to Pix2Vox-F branch first.
git checkout -b Pix2Vox-F origin/Pix2Vox-F
License
This project is open sourced under MIT license.