Skip to content

[ECCV'20] Structured3D: A Large Photo-realistic Dataset for Structured 3D Modeling

License

Notifications You must be signed in to change notification settings

bertjiazheng/Structured3D

Repository files navigation

Structured3D

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 git@github.com: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
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.