Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Devin100086/100Editor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

199 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

100Editor Logo

[CVPR 2026(Findings)] 100Editor: 100+ Views per Batch and Minute-Scale View-Consistent 3D Editing

Cunqi Wu1, Peng Zhouโ€ ,1, Jie Qin1, Qi Tian2,
โ€ Corresponding author.
1Nanjing University of Aeronautics and Astronautics,
2Huawei Technologies Ltd.

ย ย ย ย ย  ย ย ย ย ย  ย ย ย ย ย  ย ย ย ย ย 

100Editor teaser

๐Ÿ“ขNews

[2026-04] ๐Ÿ”ฅ We release the code of 100Editor and the 3D editing software of 100Editor๏ผ

[2026-02] ๐ŸŽ‰ 100Editor has been accepted to CVPR 2026(Findings)!

๐Ÿ’ป Software

100Editor comes with an interactive desktop software that wraps the full pipeline โ€” reconstruction, segmentation, and every editing mode โ€” into a single GUI. Below are four editing modes in action.


Semantic Editing

Additive Editing

Subtractive Editing

Non-rigid (Drag) Editing

๐Ÿ“– More detailed operation walkthroughs and additional features are covered in the Documentation.

๐Ÿ“‘TODOs

  • Perform a deeper cleanup and refactoring of the codebase, along with thorough testing, so that 100Editor becomes easier to use, maintain, and customize for everyone๐Ÿ˜€.
  • Provide more complete installation and configuration instructions.

๐Ÿ”ง Installation

Our environment has been tested on an NVIDIA RTX 4090 GPU with Ubuntu 22.04 and CUDA 12.4.

  1. Clone our repository
git clone https://github.com/Devin100086/100Editor.git --recursive
  1. create environment and install dependencies
# Create an environment
conda create -n 100Editor python=3.11

# Install dependencies
pip install torch==2.4.1+cu124 torchvision==0.19.1+cu124 torchaudio==2.4.1+cu124 --index-url https://download.pytorch.org/whl/cu124
pip install -r requirements.txt
pip install -e third_party/BrushNet
pip install -e third_party/LeftRefill
pip install -e third_party/sam2
pip install -e third_party/threestudio

pip install -e src/trainer/origin/submodules/diff-gaussian-rasterization
pip install -e src/editor/gaussiansplatting/submodules/acc-diff-gaussian-rasterization-editor
pip install -e third_party/gaussiansplatting/submodules/diff-gaussian-rasterization
pip install -e third_party/dreamgaussian/add_diff-gaussian-rasterization
pip install -e src/trainer/origin/submodules/fused-ssim
pip install -e src/trainer/origin/submodules/simple-knn
  1. Download the required model checkpoints
sh ./scripts/download.sh

๐Ÿ”ฅ Train 3DGS

For video-captured scenes, preprocessing is required before 3DGS training, including frame extraction and Structure-from-Motion (SfM). Both steps can be completed within our software. For additional implementation details, you can also refer to the official Gaussian Splatting repository.

Command-line training

Use the following command to reconstruct a target 3DGS scene:

bash scripts/train/train_3dgs.sh \
  [--use-depth-loss] \
  [--use-appearance-embedding] \
  <scene_path> \
  <output_dir> \
  <checkpoint_iter>

Arguments:

Argument Description Required
--use-depth-loss Enable depth supervision during training. No
--use-appearance-embedding Enable appearance embedding optimization. No
<scene_path> Path to the input scene directory. Yes
<output_dir> Directory for checkpoints, logs, and outputs. Yes
<checkpoint_iter> Iteration to load as the initialization checkpoint. Yes

GUI-based 3DGS training

The application also supports 3DGS training through the GUI. It includes support for training with the gsplat library and provides multiple training strategy options. For more details, refer to the GUI training documentation.

๐ŸŽจ Editing

โšก Quick Start

Use the following command to perform semantic editing on a scene:

python launch.py \
  --config configs/edit_configs/edit-n2n.yaml \
  --train --gpu 0 \
  exp_root_dir="runtime/experiments/edit/semantic" \
  data.source="/path/to/scene" \
  system.camera_update_per_step=500 \
  data.max_view_num=20 \
  system.per_editing_step=100000 \
  system.prompt_processor.prompt="[your editing instruction]" \
  system.gs_source="/path/to/point_cloud.ply" \
  system.batch=true

For local semantic editing, add a segmentation prompt:

python launch.py \
  --config configs/edit_configs/edit-n2n.yaml \
  --train --gpu 0 \
  exp_root_dir="runtime/experiments/edit/semantic" \
  data.source="/path/to/scene" \
  data.use_original_resolution=true \
  system.camera_update_per_step=500 \
  data.max_view_num=20 \
  system.per_editing_step=100000 \
  system.prompt_processor.prompt="[your editing instruction]" \
  system.seg_prompt="[Objects for local editing]" \
  system.gs_source="/path/to/point_cloud.ply" \
  system.batch=true

Arguments:

Argument Description Required
--config configs/edit_configs/edit-n2n.yaml Path to the semantic editing config file. Yes
--train Run in training mode. Yes
--gpu 0 GPU device index used for training. Yes
exp_root_dir="runtime/experiments/edit/semantic" Root directory for experiment logs, checkpoints, and exports. No
data.source="/path/to/scene" Path to the input scene directory. Yes
data.use_original_resolution=true Use the original image resolution instead of the fixed training resolution. No
system.camera_update_per_step=500 Number of training steps between batch-view refreshes in batch mode. No
system.per_editing_step=100000 Interval for regenerating per-view edited targets during training. Use a large value (or 0) to reduce frequent updates. No
data.max_view_num=20 Maximum number of training views sampled for semantic editing. No
system.prompt_processor.prompt="[your editing instruction]" Text instruction for semantic editing. Yes
system.seg_prompt="[Objects for local editing]" Segmentation prompt describing the local target region. No (Yes for local editing)
system.gs_source="/path/to/point_cloud.ply" Path to the source 3DGS PLY checkpoint. Yes
system.batch=true Enable batch-view editing workflow. Yes

For advanced parameter tuning, refer to the scripts under scripts/semantic, where additional optimization and control options are provided.

In addition to semantic editing, the software supports additive editing, subtractive editing, and non-rigid editing. The GUI also provides interactive segmentation tools for more precise local editing. For detailed usage instructions, refer to the software documentation.

โ— Notes

For subtractive editing, the original paper used the gemini-2.0-flash image editing model. Since this model is no longer officially available, our implementation uses Qwen-Image-Edit-Max for single-view object removal. For API setup instructions, see the API Guide. The service can be accessed through the API Platform.

๐Ÿ“ Rendering & Evaluation

For evaluation, we report CLIP and MEt3R scores. See the Evaluation Guide for detailed instructions.

๐Ÿ™ Acknowledgments

We sincerely appreciate these excellent open-source projects.

Project Link
Gaussian Splatting graphdeco-inria/gaussian-splatting
GaussianEditor buaacyw/GaussianEditor
DGE silent-chen/DGE
InstructPix2Pix timothybrooks/instruct-pix2pix
BrushEdit TencentARC/BrushEdit
dreamgaussian dreamgaussian/dreamgaussian
VidToMe lixirui142/VidToMe
splatviz Florian-Barthel/splatviz

๐Ÿ“Œ Citation

@InProceedings{Wu_2026_CVPR,
    author    = {Wu, Cunqi and Zhou, Peng and Qin, Jie and Tian, Qi},
    title     = {100Editor: 100+ Views per Batch and Minute-Scale View-Consistent 3D Editing},
    booktitle = {Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR) Findings},
    month     = {June},
    year      = {2026},
    pages     = {8449-8460}
}

โญ Star History

Star History Chart
Thanks

We hope that 100Editor provides you with a distinctive editing experience๏ผ

If you find this repository helpful, please give it a star โญ

About

[CVPR2026 (Findings)] 100Editor: 100+ Views per Batch and Minute-Scale View-Consistent 3D Editing

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors