JointEdit3D: Feed-Forward 3D Scene Editing in a Unified Latent Space

Xinnan Zhu1,2,* Ruijie Xu1,2,* Jiayu Ying1 Daoguo Dong3 Jiachen Xu4 Yuan Xie1 Xin Tan1,2,†

1East China Normal University    2Shanghai Artificial Intelligence Laboratory    3Fudan University    4Tencent

*Equal contribution. †Corresponding author.

Video

JointEdit3D Inference Demo Cases

Abstract

Existing 3D scene editing methods typically rely on per-scene optimization over explicit 3D representations or cascaded edit-and-reconstruct pipelines, resulting in high test-time cost, limited 3D awareness, and structural inconsistencies. To couple appearance synthesis with geometry prediction, we adapt a pretrained unified RGB-geometry latent space to feed-forward scene editing. Given a source video and an edited reference image, JointEdit3D performs asymmetric latent inpainting: it observes only the edited RGB reference latent and jointly generates the remaining RGB latents and the entire geometry latent along the source trajectory. JointEdit3D introduces a dedicated SceneAnchor Branch to inject source-scene structure without forcing direct copying, and adopts edit/background-aware losses to balance edited-region fidelity with unedited-content preservation. To address the lack of paired resources for standardized 3D scene editing evaluation, we introduce SceneEdit3D-15K, a dataset with 15K paired editing samples and renderer-provided 3D annotations, together with SceneEdit3D-Bench, a curated 100-sample benchmark. Experiments show that JointEdit3D improves edited-region quality and 3D structural completeness over prior baselines while maintaining competitive background preservation.

Method

JointEdit3D method overview
JointEdit3D pipeline: RGB-geometry latent inpainting from a source video and one edited reference frame. The SceneAnchor Branch injects source-scene structure to preserve unedited content without forcing direct copying.

Dataset

SceneEdit3D provides paired scene-level edits with renderer-side 3D supervision for training and standardized evaluation.

SceneEdit3D-15K data generation pipeline
SceneEdit3D-15K starts from composable 3D indoor scenes, proposes canonical edits with a VLM, executes valid edits in Blender, and renders paired source/target videos with RGB, depth, camera, mask, edited-reference, and instruction supervision.
SceneEdit3D-15K 15K paired editing samples covering scene-level object removal, movement, appearance edits, and mixed operations.
3D Annotations Renderer-provided geometry, camera, mask, and auxiliary supervision support RGB-geometry editing and evaluation.
SceneEdit3D-Bench A curated 100-sample benchmark for edit fidelity, background preservation, and 3D structural quality.

Dataset Samples

Each sample pairs source/edited videos with semi-transparent mask overlays, the example edit prompt, and source/edited 3D point-cloud previews.

Quantitative Results

We evaluate edit fidelity and background preservation with region-aware PSNR/LPIPS, and measure 3D structure against renderer-provided edited geometry.

Best Second-best

Runtime-quality comparison plot
JointEdit3D gives a favorable quality-efficiency trade-off in the 49-frame full-3D protocol.

Capability Comparison

Opt. / FF: optimization-based / feed-forward. ✓ supported; ○ protocol-mismatched; – unsupported under the released interface. Unified weights means one shared set of editor weights covers every supported operation.

Method Type Mask-free Pose-free Unified weights Delete Add Move Appear. Multi-op
SPIn-NeRFOpt.–––✓––––
Gaussian GroupingOpt.–––✓○–○–
GScreamOpt.–––✓––––
GaussianEditorOpt.–––✓○–○–
SEVAFF✓–✓○○○○○
MVInpainterFF–✓–✓✓✓✓✓
Omni-3DEditFF✓––✓✓✓✓✓
JointEdit3DFF✓✓✓✓✓✓✓✓

Delete Edit Region

Values are reported as PSNR ↑ / LPIPS ↓.

Method SceneEdit3D-Bench PSNR ↑ / LPIPS ↓ 360-USID PSNR ↑ / LPIPS ↓
SPIn-NeRF19.20 / 0.52815.89 / 0.4826
Gaussian Grouping20.41 / 0.37716.67 / 0.4241
GScream20.38 / 0.44914.37 / 0.5725
GaussianEditor20.26 / 0.45116.23 / 0.3975
MVInpainter21.37 / 0.40615.60 / 0.5677
Omni-3DEdit24.86 / 0.30717.78 / 0.3655
Omni-3DEdit + SceneEdit3D FT28.99 / 0.23018.02 / 0.3637
JointEdit3D31.92 / 0.15118.57 / 0.3426

3D Geometry Quality

Point-cloud metrics against renderer-provided edited geometry. Oracle and confidence-filtered rows are diagnostics excluded from ranking.

Method Acc. ↓ Comp. ↓ F-score ↑ Edit CD ↓ Bg. CD ↓
Target RGB + VGGT (oracle)0.07240.09500.96190.13290.0914
SEVA + VGGT0.14330.22440.87220.21840.1825
Omni-3DEdit + VGGT0.11650.13130.91430.18780.1191
JointEdit3D RGB + VGGT0.08910.12110.93570.14210.0958
JointEdit3D (joint output)0.11530.08860.97020.13520.0966
JointEdit3D, confidence-filtered†0.08720.11530.96530.13820.0827

†Post-hoc diagnostic with a GT-adjusted confidence threshold of 0.85.

Operation-wise Region Metrics

PSNR ↑ / LPIPS ↓ on background (Bg.) and edit regions for each operation on SceneEdit3D-Bench; Average is the mean over all 100 samples.

Region Method Delete Add Move Appearance Multi-op Average
Bg.SEVA17.89 / 0.42117.74 / 0.42617.69 / 0.41119.00 / 0.37817.54 / 0.44517.93 / 0.418
Bg.MVInpainter33.57 / 0.08033.64 / 0.07630.97 / 0.08133.76 / 0.07330.06 / 0.09132.76 / 0.080
Bg.Omni-3DEdit25.00 / 0.21524.24 / 0.21724.40 / 0.21025.88 / 0.19023.81 / 0.23524.65 / 0.214
Bg.Omni-3DEdit + SceneEdit3D FT26.43 / 0.20727.24 / 0.19526.76 / 0.19227.07 / 0.19626.44 / 0.21826.80 / 0.201
Bg.JointEdit3D32.62 / 0.07932.59 / 0.08131.22 / 0.06933.80 / 0.05930.84 / 0.09532.33 / 0.077
EditSEVA23.39 / 0.39915.92 / 0.52317.87 / 0.45017.50 / 0.46416.93 / 0.49618.72 / 0.465
EditMVInpainter21.37 / 0.40620.04 / 0.36216.99 / 0.43718.94 / 0.34917.92 / 0.42319.55 / 0.392
EditOmni-3DEdit24.86 / 0.30720.63 / 0.29318.55 / 0.37720.92 / 0.23017.03 / 0.46121.10 / 0.323
EditOmni-3DEdit + SceneEdit3D FT28.99 / 0.23023.20 / 0.24722.75 / 0.27924.28 / 0.15321.97 / 0.33624.80 / 0.246
EditJointEdit3D31.92 / 0.15123.88 / 0.19523.19 / 0.24427.67 / 0.11523.77 / 0.26326.63 / 0.187

Additional Results

More paper results are shown below.

Citation

@article{zhu2026jointedit3d,
  title={JointEdit3D: Feed-Forward 3D Scene Editing in a Unified Latent Space},
  author={Zhu, Xinnan and Xu, Ruijie and Ying, Jiayu and Dong, Daoguo and Xu, Jiachen and Xie, Yuan and Tan, Xin},
  journal={arXiv preprint},
  year={2026}
}