Structured3D
Structured3D is a large-scale photo-realistic dataset containing 3.5K house designs (a) created by professional designers with a variety of ground truth 3D structure annotations (b) and generate photo-realistic 2D images (c).
Paper
Structured3D: A Large Photo-realistic Dataset for Structured 3D Modeling
Jia Zheng*, Junfei Zhang*, Jing Li, Rui Tang, Shenghua Gao, Zihan Zhou
European Conference on Computer Vision (ECCV), 2020
[Preprint] [Paper] [Supplementary Material] [Benchmark]
(* Equal contribution)
Data
The dataset consists of rendering images and corresponding ground truth annotations (e.g., semantic, albedo, depth, surface normal, layout) under different lighting and furniture configurations. Please refer to data organization for more details.
To download the dataset, please fill the agreement form that indicates you agree to the Structured3D Terms of Use. After we receive your agreement form, we will provide download access to the dataset.
For fair comparison, we define standard training, validation, and testing splits as follows: scene_00000 to scene_02999 for training, scene_03000 to scene_03249 for validation, and scene_03250 to scene_03499 for testing.
Errata
- 2020-04-06: We provide a list of invalid cases here. You can ignore these cases when using our data.
- 2020-03-26: Fix issue #10 about the basis of the bounding box annotations. Please re-download the annotations if you use them.
Tools
We provide the basic code for viewing the structure annotations of our dataset.
Installation
Clone repository:
git clone [email protected]:bertjiazheng/Structured3D.git
Please use Python 3, then follow installation to install PyMesh (only for plane visualization) and the other dependencies:
conda install -y open3d -c open3d-admin
conda install -y opencv -c conda-forge
conda install -y descartes matplotlib numpy shapely
pip install panda3d
Visualize 3D Annotation
We use open3D for wireframe and plane visualization, please refer to interaction control here.
python visualize_3d.py --path /path/to/dataset --scene scene_id --type wireframe/plane/floorplan
Wireframe | Plane | Floorplan |
---|---|---|
Visualize 3D Textured Mesh
python visualize_mesh.py --path /path/to/dataset --scene scene_id --room room_id
Visualize 2D Layout
python visualize_layout.py --path /path/to/dataset --scene scene_id --type perspective/panorama
Panorama Layout
Please refer to the Supplementary Material for more example ground truth room layouts.
Perspective Layout
Visualize 3D Bounding Box
python visualize_bbox.py --path /path/to/dataset --scene scene_id
Visualize Floorplan
python visualize_floorplan.py --path /path/to/dataset --scene scene_id
Citation
Please cite Structured3D
in your publications if it helps your research:
@inproceedings{Structured3D,
title = {Structured3D: A Large Photo-realistic Dataset for Structured 3D Modeling},
author = {Jia Zheng and Junfei Zhang and Jing Li and Rui Tang and Shenghua Gao and Zihan Zhou},
booktitle = {Proceedings of The European Conference on Computer Vision (ECCV)},
year = {2020}
}
License
The data is released under the Structured3D Terms of Use, and the code is released under the MIT license.
Contact
Please contact us at Structured3D Group if you have any questions.
Acknowledgement
We would like to thank Kujiale.com for providing the database of house designs and the rendering engine. We especially thank Qing Ye and Qi Wu from Kujiale.com for the help on the data rendering.