ShapeNet 3D Model Library
Clean CAD models across object kinds with parts and symmetry, the library for shape classification and single-view 3D.
Why Does This Exist?
Real scans are noisy, partial and unaligned. Learning shape basics needs clean, centered models with known parts. ShapeNet gathered CAD models across many kinds with part and symmetry notes, so shape learning could start from tidy geometry before facing scans.
This page covers model roles and appropriate use. Distance scoring is in Chamfer work.
Think of It Like This
A toy box with sorted bricks
Real playgrounds mix mud and missing bricks. A sorted toy box holds clean bricks by kind with instructions.
ShapeNet is that box. Learn the shapes tidy first, then face the messy playground of scans.
How It Actually Works
Purpose is shape classification, part segmentation and reconstruction from clean models. Inputs are meshes or sampled points, outputs are kind labels or part tags. Appropriate use is geometry baselines and synthetic pretraining. CAD-clean bias is the limit: real partial scans score lower.
Toy Chamfer walkthrough
Take true points and predicted on a line. Nearest distances one way are averaging 1, and back the same, so Chamfer is . Small clean numbers make the nearest-neighbor mean concrete.
Code
One-dimensional Chamfer that shows the two-way mean.
import numpy as np
def chamfer_1d(a: np.ndarray, b: np.ndarray) -> float: d1 = np.abs(a[:, None] - b[None, :]).min(axis=1).mean() d2 = np.abs(b[:, None] - a[None, :]).min(axis=1).mean() return round(float(d1 + d2), 3)
print(chamfer_1d(np.array([0.0, 2.0]), np.array([1.0, 3.0])))# -> 2.0Each side averages 1, summed to 2.0.
Watch Out For
Shipping CAD-trained shapes to partial scans
Clean full models hide occlusion and sensor noise. The symptom is neat synthetic scores with broken real reconstructions. Fix it by testing partial, noisy sampling before deployment claims.
The Quick Version
- ShapeNet maps clean CAD models to kind and part labels for shape learning.
- Inputs are meshes or points, outputs are shape or part tags.
- Toy versus gives Chamfer 2.0.
- Use it for tidy geometry baselines and synthetic starts.
- Confirm on partial noisy scans because CAD hides mess.