Skip to content
JuIvyyPublic

About

[CVPR2026 Oral, Award Candidate] Monocular Open Vocabulary Occupancy Prediction for Indoor Scenes

Resources

Stars

56 stars

Watchers

2 watching

Forks

Latest commit

 

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LegoOcc: Monocular Open Vocabulary Occupancy Prediction for Indoor Scenes

CVPR 2026 Oral · Award Candidate

Hugging Face Model

Changqing Zhou1, Yueru Luo2, Han Zhang1, Zeyu Jiang1, Changhao Chen1 ✉

1The Hong Kong University of Science and Technology (Guangzhou)
2The Chinese University of Hong Kong, Shenzhen

✉ Corresponding author.

Project Page | Paper | 🤗 Model

LegoOcc tackles monocular open-vocabulary 3D semantic occupancy prediction in large-scale indoor scenes under geometry-only supervision. It represents scenes as Language-Embedded Gaussians, introduces an opacity-aware Poisson Gaussian-to-Occupancy operator for stable volumetric aggregation, and adopts Progressive Temperature Decay to strengthen Gaussian-language alignment during training.

The framework is designed for open-vocabulary indoor occupancy reasoning from monocular observations, bridging sparse Gaussian scene modeling and language-aware 3D occupancy prediction.

News

  • [2026.10] 🚀 Demo is released! The pretrained model loads with a single from_pretrained call, and you can run LegoOcc on your own images in minutes, with any vocabulary you like. All you need is PyTorch: no mmcv / mmdet / mmengine / SAM installation required. See Quick Demo.
  • [2026.05] 🚀 Code is released
  • [2026.04] 🎤 LegoOcc was accepted to CVPR 2026 (Oral).

Quick Demo

Try LegoOcc on a single image without installing the training environment. The demo/ folder is a self-contained package that depends only on PyTorch, not on mmcv/mmdet/SAM. The pretrained model loads with from_pretrained, and you can query it with any vocabulary:

cd demo && pip install -r requirements.txt
python demo.py --model JuIvyy/LegoOcc --image examples/scene0472_00_00061.jpg --vocab "sink,stove,cabinet,floor,wall"
from legoocc_hub import LegoOcc
model = LegoOcc.from_pretrained("JuIvyy/LegoOcc").cuda().eval()
out = model.predict("room.jpg", vocabulary=["sofa", "lamp", "floor", "wall"])  # out["occupancy"]: (60, 60, 36)

The prediction is saved as a colored voxel point cloud (.ply). See demo/README.md for details.

Documentation

For setup and usage details, please refer to the documents under docs/:

  • docs/install.md: environment setup, dependency installation, and pretrained component preparation.
  • docs/data.md: dataset preparation for OccScanNet, folder structure, and symbolic link setup.
  • docs/train_eval.md: training workflow, configuration notes, and runtime environment variables.

Getting Started

  1. Follow docs/install.md to prepare the environment.
  2. Follow docs/data.md to organize the dataset.
  3. Follow docs/train_eval.md to launch training.

Citation

If you find this work useful, please consider citing:

@inproceedings{zhou2026monocular,
  title={Monocular open vocabulary occupancy prediction for indoor scenes},
  author={Zhou, Changqing and Luo, Yueru and Zhang, Han and Jiang, Zeyu and Chen, Changhao},
  booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition},
  pages={21627--21637},
  year={2026}
}

Related Projects

We recommend checking out the following related projects:

About

[CVPR2026 Oral, Award Candidate] Monocular Open Vocabulary Occupancy Prediction for Indoor Scenes

Resources

Stars

56 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages