Overview
ShapeNet
ShapeNet is an ongoing effort to establish a richly-annotated, large-scale dataset of 3D shapes. We provide researchers around the world with this data to enable research in computer graphics, computer vision, robotics, and other related disciplines. ShapeNet is a collaborative effort between researchers at Princeton, Stanford and TTIC.
ShapeNetCore
ShapeNetCore is a densely annotated subset of ShapeNet covering 55 common
object categories with ~51,300 unique 3D models. Each model in ShapeNetCore
are linked to an appropriate synset in
WordNet (version 3.0). The
distribution of for ShapeNetCore is
organized into one zip file per synset.
Each zip file is named by the synset noun offset as an eight-digit zero
padded string. For example, bench is contained within 02828884.zip since
the WordNet synset offset for
bench
is 02828884 (you can browse WordNet 3.1
online).
The corresponding ImageNet synsets
can be accessed at http://www.image-net.org/synset?wnid=n
where is replaced by the padded synset offset
(note that ImageNet includes an 'n' prefix for noun synsets). For
instance, the ImageNet url for bench
is http://www.image-net.org/synset?wnid=n02828884.
ShapeNetCore v2
ShapeNetCore v2 is an update to ShapeNetCore with improved quality of model geometry and fixed issues relating to materials and textures. The v2 package provides improved .obj+.mtl format model data that replaces the .obj+.mtl data in ShapeNetCore v1, and is part of an upcoming public data release. As part of ShapeNetCore v2, surface and solid voxelizations (using binvox) of the models are also provided. However, the preliminary ShapeNetCore v2 was incomplete and had different normalization than ShapeNetCore v1. NOTE: The OBJ files are now pre-aligned so that the up direction is the +Y axis, and the front is the -Z axis (this fixes the mirroring issue in ShapeNetCore v1). The Y-Z plane is the bilateral symmetry plane for most categories.
ShapeNetCore v1
NOTE: The OBJ files have been pre-aligned so that the up
direction
is the +Y axis, and the front is the +X axis. In addition
each model is
diagonally normalized to fit within a unit cube centered at
the origin. The
X-Y plane is the bilateral symmetry plane for most
categories.
A known issue with ShapeNetCore v1 is
that due to the conversion pipeline used, some models are
mirrored and
have incorrect normals.
ShapeNetSem
ShapeNetSem is a subset of ShapeNet, richly annotated with physical
attributes, which we release for the benefit of the research community.
Compared to
ShapeNetCore, ShapeNetSem is a
smaller, more densely annotated subset of ShapeNet consisting
of 12,000 models spread over a broader set
of 270 categories.
There are several types of metadata
available for the models. For more information, see the ShapeNetSem v0
README.
Data Annotation
Geometry and texture
The geometry and texture of the each model is available in original Collada format and in converted OBJ/MTL format. The converted OBJ have been aligned and size normalized. For ShapeNetCore v1, the OBJ/MTL files were converted using a Blender-based pipeline and there are known issues with missing normals, right-left flipping, and (what else?) that can cause problems with rendering. For ShapeNetCore v2, the OBJ/MTL files were converted using the Open Assimp Import Library, fixing many of the above issues. Original mesh and material structure of each model can be viewed using the parts panel in the model viewer.
Voxelization
In addition, we provide precomputed solid and surface voxelizations of each model. Resolution is 128. Voxelizations are computed using binvox. To view the voxelization, open the parts panel in the model viewer and select voxels-solid or voxels-surface.
Screenshots
For each model, we generate screenshots of the model from the 6 canonical viewpoints and 8 turn table images. These screenshots can be viewed using the images panel in the model viewer.
Category
Models in ShapeNet are linked to ImageNet and WordNet.
WordNet is a widely-used, English
lexical database that groups words
into cognitive synonyms (synsets).
WordNet synsets are interlinked with various
relations, such as hyper and
hyponym,
and part-whole relations. We identify
the WordNet synset by the WordNet
offset (0 padded to 8 digits),
we refer to this as the wnId. Note that the offsets are for WordNet 3.0.
We provide a mapping of WordNet 3.0 synset to WordNet 3.1 synsets.
Use the taxonomy view to browse ShapeNet using the WordNet taxonomy.
The following fields are for categories
- wnhypersynsets all wnIds (including hypernyms) associated with the model
- wnhyperlemmas words corresponding to the wnhypersynsets
- wnsynset wnIds directly associated with the model
- wnlemmas words corresponding to the wnsynset
For ShapeNetSem, we also label models using a smaller manual category taxonomy. This taxonomy is simpler than WordNet, covering mainly furniture and electronics (and includes finer grain classification of electronics lacking in WordNet).
Alignment
We try to provide consistent up/front
alignment for all models in ShapeNetCore and ShapeNetSem.
The following fields indicates the up/
front axis for the KMZ models
- up vector indicating direction of up axis
- front vector indicating direction of front axis
Size
We provide real world size estimates for ShapeNetSem models. Real world
sizes are useful for using models to construct scenes.
The following fields are for sizes:
- scale unit the original Collada model was likely modeled in
- aligned.bbdims vector of estimated bbdims of aligned model
DataFormat
Within each synset zip file there is a set of OBJ files of all the 3D models annotated under that synset.
Each model is under a directory named after its source id,
which is the id of the original model on the online repository from which it was collected.
Within the model directory, you will find OBJ, MTL and texture image files.
You can view OBJ mesh files with software such as Assimp,
the Open Asset Import Library.
Please see the section for each release for details
on the data organization for that release.
In addition to the model data, you will find .csv (comma-separated value format)
files in ShapeNetCore v1 that contain metadata associated with the models in each synset.
The columns of these CSV files and their interpretation are as follows:
fullId : the unique id of the model
wnsynset : comma-separated list of WordNet synset offsets to which the model belongs
wnlemmas : comma-separated list of names (lemmas) of
the WordNet synsets to which the model belongs
up : normalized vector in original model space coordinates
indicating semantic "upright" orientation of model
front : normalized vector in original model space coordinates
indicating semantic "front" orientation of model
name : name of the model as indicated on original model repository (uncurated)
tags : tags assigned to the model on original model repository (uncurated)
In addition to the existing CSV files, you can re-download the current metadata
from the ShapeNet server using the get-metadata.sh shell script (requires bash and wget).
The taxonomy.json file contains a simple JSON format representation of the ShapeNetCore synset taxonomy
indicating for each synset the synset offset (synsetId),
the synset lemma (name), an array of the children synsets ids (children),
and the total number of model instances (numInstances).
Instruction
ShapeNetCore
ShapeNetCore v2
ShapeNetCore data release v2 (Fall 2016)
This second release of ShapeNetCore is an update to ShapeNetCore v1 with improved quality
of model geometry and fixed issues relating to materials and textures.
The files contain ShapeNetCore: a densely annotated subset
of ShapeNet released to the research community.
Each zip file is named by the synset noun offset in WordNet (version 3.0)
as an eight-digit zero padded string.
For example, bench is contained within 02828884.zip
since the WordNet synset offset for bench is 02828884
(you can browse WordNet at http://wordnetweb.princeton.edu/perl/webwn3.0).
The corresponding ImageNet synsets can be accessed at
http://www.image-net.org/synset?wnid=n where
is replaced by the synset offset
(note that ImageNet includes an 'n' prefix for noun synsets).
Within each synset zip file there is a set of OBJ files of all the 3D
models annotated under that synset.
Each model is under a directory named after its source id, which is the id
of the original model
on the online repository from which it was collected.
Within the model directory, you will find texture images, json,mtl,obj,
solid.binvox
and binvox models and png screenshots files.
You can view OBJ mesh files with software such as Assimp, the Open
Asset Import Library (http://assimp.sourceforge.net/).
The v2 package provides improved .obj+mtl format model data that replaces
the .obj+.mtl data in ShapeNetCore v1.
NOTE: The OBJ files are now pre-aligned so that the up direction is the +Y axis, and the front is the -Z axis (this fixes the mirroring issue in ShapeNetCore v1). The Y-Z plane is the bilateral symmetry plane for most categories.
The taxonomy.json file in ShapeNetCore v2 contains a simple
JSON format representation of
the ShapeNetCore synset taxonomy indicating for each synset the synset
offset (synsetId),
the synset lemma (name), an array of the children synsets ids (children),
and the total number of model instances (numInstances).
This JSON file is obtained from the more comprehensive ShapeNet taxonomy JSON at
https://www.shapenet.org/resources/data/shapenetcore.taxonomy.json by
filtering with the command:
jq "[.[] | recurse (.children[]?) | {synsetId: .metadata.name, name: .
metadata.label,
children: [.children[]?.metadata.name], numInstances: .metadata.
numInstances }]" shapenetcore.taxonomy.json
(requires the JSON filter library jq which can be obtained from http://stedolan.github.io/jq/ ,
a linux x64 binary is included in this package)
If you use ShapeNet data you agree to abide by the ShapeNet terms of use
(see terms-of-use.txt).
You are only allowed to redistribute the data to your research associates
and colleagues
provided that they first agree to be bound by these terms and conditions.
For more information, please contact us at shapenet-webmaster@lists.
stanford.edu
Data organization
The downloaded and unzipped Shapenetcore.v2 consists of a set of zip and csv files. Each zip file consists of a set of model directories organized as follows:
- <synsetId>
- <modelId>
- models
- model_normalized.json : Metadata for normalization of the 3D model (bounding box, centroid) and model statistics (number of vertices, etc)
- model_normalized.obj : 3D mesh in OBJ format (specifying vertices and faces)
- model_normalized.mtl : Materials file for OBJ; Includes the name of texture files and material properties.
- model_normalized.solid.binvox : Filled-in binary voxelizations of models in binvox format
- model_normalized.surface.binvox : Binary voxelizations of model surfaces in binvox format
- images
- jpg, png: Textures for the 3D model
- ...
- screenshots
- png : 2D renderings of the 3D model from different angles
- ...
- ...
- ...
ShapeNetCore v1
ShapeNetCore data release v1 (July 2015)
These files contain ShapeNetCore: a densely annotated subset of ShapeNet
released to the research community.
Each zip file is named by the synset noun offset in WordNet (version 3.0)
as an eight-digit zero padded string.
For example, bench is contained within 02828884.zip since the WordNet
synset offset for bench is 02828884
(you can browse WordNet at http://wordnetweb.princeton.edu/perl/webwn3.0).
The corresponding ImageNet synsets can be accessed at
http://www.image-net.org/synset?wnid=n where
is replaced by the synset offset (note that ImageNet includes an 'n'
prefix for noun synsets).
Within each synset zip file there is a set of OBJ files of all the 3D
models annotated under that synset.
Each model is under a directory named after its source id, which is the id
of the original model
on the online repository from which it was collected.
Within the model directory, you will
find OBJ, MTL and texture image files.
You can view OBJ mesh files with software such as Assimp,
the Open Asset Import Library (http://assimp.sourceforge.net/).
In addition to the model data, you will find .csv (comma-separated value format) files
that contain metadata associated with the models in each synset.
The columns of these CSV files and their interpretation are as follows:
fullId : the unique id of the model
wnsynset : comma-separated list of WordNet synset offsets to which the
model belongs
wnlemmas : comma-separated list of names (lemmas) of the WordNet synsets
to which the model belongs
up : normalized vector in original model space coordinates indicating
semantic "upright" orientation of model
front : normalized vector in original model space coordinates indicating
semantic "front" orientation of model
name : name of the model as indicated on original model repository (uncurated)
tags : tags assigned to the model on original model repository (uncurated)
NOTE: The OBJ files have been pre-aligned so that the up direction is the +Y axis, and the front is the +X axis. In addition each model is normalized to fit within a unit cube centered at the origin.
he X-Y plane is the bilateral symmetry plane for most categories.
In addition to the existing CSV files,
you can re-download the current metadata from the ShapeNet server
using the get-metadata.sh shell script (requires bash and wget).
The taxonomy.json file contains a simple JSON format representation of the ShapeNetCore synset taxonomy
indicating for each synset the synset offset (synsetId),
the synset lemma (name), an array of the children synsets ids (children),
and the total number of model instances (numInstances).
This JSON file is obtained from the more comprehensive ShapeNet taxonomy JSON
at https://www.shapenet.org/resources/data/shapenetcore.taxonomy.json by filtering with the command:
jq "[.[] | recurse (.children[]?) | {synsetId: .metadata.name, name: .
metadata.label, children: [.children[]?.metadata.name], numInstances: .
metadata.numInstances }]" shapenetcore.taxonomy.json
(requires the JSON filter library jq which can be obtained
from http://stedolan.github.io/jq/ , a linux x64 binary is included in this package)
Data organization
The downloaded and unzipped Shapenetcore.v1 consists of a set of files.
Each file consists of a set of model directories and csv files organized as follows:
- <synsetId>
- <modelId>
- model.obj : (3D Rotatable version of the image)
- model.mtl : Materials file for OBJ; Includes the name of texture files and material properties.
- images
- jpg, png: Textures for the 3D model
- <synsetId>.csv : (Metadata associated with the model of the synset)
- ...
ShapeNetSem
ShapeNetSem v0 (June 2015) There are several pieces of model data that are available:
-
models-OBJ.zip : OBJ format 3D mesh files (with accompanying MTL material definition files)
-
models-textures.zip : texture files used by above 3D mesh representations
-
models-COLLADA.zip : COLLADA (DAE) format 3D mesh files
-
models-binvox.zip : Binary voxelizations of model surfaces in binvox format
-
models-binvox-solid.zip : Filled-in binary voxelizations of models in binvox format
-
models-screenshots.zip : Pre-rendered screenshots of each model from 6 canonical orientations (front, back, left, right, bottom, top), and another 6 "turn table" positions around the model
In addition to the model data, we also provide the following metadata:
- metadata.csv: metadata associated with each model.
- categories.synset.csv: maps manual category labels to WordNet synsets and glosses
- materials.csv : set of per-category material priors extracted from OpenSurfaces [Bell et al. 2014] dataset
- densities.csv : material densities (g / cm3) and static coefficients of friction
- taxonomy.txt : defines the taxonomy of our manual categories. Lines start with parent category followed by child categories, all separated by tabs. Note comment lines starting with '#'
For downloading other types of metadata, please refer here.
Citation
Please cite this paper if you use ShapeNetCore in your research:
@techreport{shapenet2015,
title = {{ShapeNet: An Information-Rich 3D Model Repository}},
author = {Chang, Angel X. and Funkhouser, Thomas and Guibas,Leonidas and Hanrahan, Pat and Huang, Qixing and Li, Zimo and Savarese, Silvio and Savva, Manolis and Song, Shuran and Su, Hao and Xiao, Jianxiong and Yi, Li and Yu, Fisher},
number = {arXiv:1512.03012 [cs.GR]},
institution = {Stanford University --- Princeton University --- Toyota Technological Institute at Chicago},
year = {2015}
}
Please cite this paper if you use ShapeNetSem in your research:
@article{savva2015semgeo,
title={{Semantically-Enriched 3D Models for Common-sense Knowledge}},
author={Manolis Savva and Angel X. Chang and Pat Hanrahan},
journal = {CVPR 2015 Workshop on Functionality, Physics, Intentionality and Causality},
year = {2015}
}