SAM 3D Objects is one part of SAM 3D, a pair of models for object and human mesh reconstruction. If you’re looking for SAM 3D Body, click here.
SAM 3D Team, Xingyu Chen*, Fu-Jen Chu*, Pierre Gleize*, Kevin J Liang*, Alexander Sax*, Hao Tang*, Weiyao Wang*, Michelle Guo, Thibaut Hardin, Xiang Li⚬, Aohan Lin, Jia-Wei Liu, Ziqi Ma⚬, Anushka Sagar, Bowen Song⚬, Xiaodong Wang, Jianing Yang⚬, Bowen Zhang⚬, Piotr Dollár†, Georgia Gkioxari†, Matt Feiszli†§, Jitendra Malik†§
Meta Superintelligence Labs
*Core contributor (Alphabetical, Equal Contribution), ⚬Intern, †Project leads, §Equal Contribution
[Paper] [Code] [Website] [Demo] [Blog] [BibTeX] [Roboflow]
SAM 3D Objects is a foundation model that reconstructs full 3D shape geometry, texture, and layout from a single image, excelling in real-world scenarios with occlusion and clutter by using progressive training and a data engine with human feedback. It outperforms prior 3D generation models in human preference tests on real-world objects and scenes. We released code, weights, online demo, and a new challenging benchmark.
11/19/2025 - Checkpoints Launched, Web Demo and Paper are out.
Follow the setup steps before running the following.
SAM 3D Objects can convert masked objects in an image, into 3D models with pose, shape, texture, and layout. SAM 3D is designed to be robust in challenging natural images, handling small objects and occlusions, unusual poses, and difficult situations encountered in uncurated natural scenes like this kidsroom:
For a quick start, run python demo.py or use the the following lines of code:
import sys
# import inference code
sys.path.append("notebook")
from inference import Inference, load_image, load_single_mask
# load model
tag = "hf"
config_path = f"checkpoints/{tag}/pipeline.yaml"
inference = Inference(config_path, compile=False)
# load image and mask
image = load_image("notebook/images/shutterstock_stylish_kidsroom_1640806567/image.png")
mask = load_single_mask("notebook/images/shutterstock_stylish_kidsroom_1640806567", index=14)
# run model
output = inference(image, mask, seed=42)
# export gaussian splat
output["gs"].save_ply(f"splat.ply")For more details and multi-object reconstruction, please take a look at out two jupyter notebooks:
The default CUDA-12.1 environment (environments/default.yml + cu121 wheels) does not
run on Blackwell GPUs. Use CUDA 12.8 (torch 2.8 cu128) instead. Verified on:
- RTX 5090, Driver 580.x, CUDA 12.8 (ref: facebookresearch#15)
kaolin is not required here: it was only used for notebook visualization and a single
check_tensor call, which this repo now shims (see sam3d_objects/utils/kaolin_compat.py),
so we skip its CUDA build entirely. sam3d-objects-single.yml likewise omits it.
# 1. env + torch cu128 (Blackwell)
conda create -n sam3d-objects python=3.11 -y
conda activate sam3d-objects
pip install torch==2.8.0 torchvision==0.23.0 torchaudio==2.8.0 \
--index-url https://download.pytorch.org/whl/cu128
# 2. runtime deps (spconv-cu120, gsplat, MoGe, ...); then refresh the env
conda env update -f sam3d-objects-single.yml
conda deactivate && conda activate sam3d-objects
# 3. CUDA dev headers needed to compile pytorch3d (env lacks cuda_runtime.h otherwise)
conda install -y -c nvidia -c conda-forge "cuda-cudart-dev=12.8.*" "cuda-cccl=12.8.*"
# 4. build pytorch3d from source against torch 2.8 / cu128
export CUDA_HOME="$CONDA_PREFIX" FORCE_CUDA=1 TORCH_CUDA_ARCH_LIST="12.0"
pip install --no-build-isolation \
"git+https://github.com/facebookresearch/pytorch3d.git@75ebeeaea0908c5527e7b1e305fbc7681382db47"
# 5. install this package (--no-deps: single.yml already provides the deps, and
# without it pip pulls the cu121 pins from requirements.txt back in)
pip install -e . --no-deps
# 6. get the gated checkpoint (requires HF access to facebook/sam-3d-objects)
hf auth login
hf download --repo-type model --local-dir checkpoints/hf-download --max-workers 4 facebook/sam-3d-objects
mv checkpoints/hf-download/checkpoints checkpoints/hf && rm -rf checkpoints/hf-download
# 7. smoke test
python demo.pyIn the Real2USD tree this whole recipe is automated by
humble_ws/src_Real2USD/real2sam3d/sam3d_setup.sh.
SAM 3D Body (3DB) is a robust promptable foundation model for single-image 3D human mesh recovery (HMR).
As a way to combine the strengths of both SAM 3D Objects and SAM 3D Body, we provide an example notebook that demonstrates how to combine the results of both models such that they are aligned in the same frame of reference. Check it out here.
The SAM 3D Objects model checkpoints and code are licensed under SAM License.
See contributing and the code of conduct.
The SAM 3D Objects project was made possible with the help of many contributors.
Robbie Adkins, Paris Baptiste, Karen Bergan, Kai Brown, Michelle Chan, Ida Cheng, Khadijat Durojaiye, Patrick Edwards, Daniella Factor, Facundo Figueroa, Rene de la Fuente, Eva Galper, Cem Gokmen, Alex He, Enmanuel Hernandez, Dex Honsa, Leonna Jones, Arpit Kalla, Kris Kitani, Helen Klein, Kei Koyama, Robert Kuo, Vivian Lee, Alex Lende, Jonny Li, Kehan Lyu, Faye Ma, Mallika Malhotra, Sasha Mitts, William Ngan, George Orlin, Peter Park, Don Pinkus, Roman Radle, Nikhila Ravi, Azita Shokrpour, Jasmine Shone, Zayida Suber, Phillip Thomas, Tatum Turner, Joseph Walker, Meng Wang, Claudette Ward, Andrew Westbury, Lea Wilken, Nan Yang, Yael Yungster
If you use SAM 3D Objects in your research, please use the following BibTeX entry.
@article{sam3dteam2025sam3d3dfyimages,
title={SAM 3D: 3Dfy Anything in Images},
author={SAM 3D Team and Xingyu Chen and Fu-Jen Chu and Pierre Gleize and Kevin J Liang and Alexander Sax and Hao Tang and Weiyao Wang and Michelle Guo and Thibaut Hardin and Xiang Li and Aohan Lin and Jiawei Liu and Ziqi Ma and Anushka Sagar and Bowen Song and Xiaodong Wang and Jianing Yang and Bowen Zhang and Piotr Dollár and Georgia Gkioxari and Matt Feiszli and Jitendra Malik},
year={2025},
eprint={2511.16624},
archivePrefix={arXiv},
primaryClass={cs.CV},
url={https://arxiv.org/abs/2511.16624},
}



