PRISM: Learning Realistic Depth via Physics-Grounded Noise Disentanglement with Semantic-Geometric Collaboration
Organizations: Fudan University · Shanghai Inovation Institute · Zhejiang University · Shanghai JiaoTong University ·
Abstract
Real-world physical sensing exhibits complex, heterogeneous noise patterns that deviate significantly from idealized simulation, posing a fundamental bottleneck for sim-to-real transfer. Existing sensor modelings typically treat depth noise as a monolithic black-box process, overlooking the distinct physical mechanisms that govern different error modalities. In this work, we introduce a physics-grounded paradigm that disentangles monolithic noise into two complementary modalities: sensing invalidation and measurement inaccuracy, enabling a tailored treatment of noise sources based on their physical origins. Building on this insight, we propose PRISM, a tripartite framework that distills 3D Visual Foundation Model features as rich spatial-semantic priors for physics-based reasoning. To address the inherent sparsity and class imbalance of invalidation regions, we develop Hierarchical Positive-Prioritized Supervision, integrating multi-scale positive-weighted objectives with a positive-preserving dynamic hard mining strategy to enforce precise artifact delineation. Extensive benchmarks demonstrate that PRISM achieves state-of-the-art fidelity in noisy depth synthesis. Furthermore, downstream robotic experiments show that PRISM facilitates a 92.1% average success rate in the real world, marking a significant improvement over monolithic baselines. Our project page is available at: \resizebox{\linewidth}{!}{https://shawnleung-sii.github.io/prism-icml2026/.}
Figures & tables
| Method | Overall Metrics | Sensing Invalidation | Meas. Inaccuracy | |||||||
|---|---|---|---|---|---|---|---|---|---|---|
| MAE | RMSE | AbsRel | IoU | F1 | Recall | MAE | RMSE | Acc- | ||
| GazeboDR | 0.203 | 0.258 | 0.167 | 0.724 | - | - | - | 0.178 | 0.224 | 68.3 |
| DepthSynth | 0.115 | 0.143 | 0.092 | 0.884 | 0.651 | 0.789 | 0.734 | 0.094 | 0.121 | 86.1 |
| ActiveStereo | 0.094 | 0.118 | 0.075 | 0.916 | 0.806 | 0.893 | 0.858 | 0.078 | 0.101 | 89.4 |
| DCL-Depth | 0.098 | 0.125 | 0.078 | 0.908 | 0.785 | 0.879 | 0.845 | 0.082 | 0.106 | 88.6 |
| Stable-Sim2Real | 0.087 | 0.106 | 0.069 | 0.931 | 0.876 | 0.934 | 0.912 | 0.070 | 0.091 | 91.7 |
| Method | Overall Fidelity | Sensing Inv. | ||
|---|---|---|---|---|
| MAE | IoU | F1 | ||
| GazeboDR | 0.248 | 0.678 | - | - |
| DepthSynth | 0.138 | 0.832 | 0.542 | 0.703 |
| ActiveStereo | 0.112 | 0.878 | 0.685 | 0.813 |
| DCL-Depth | 0.118 | 0.865 | 0.658 | 0.794 |
| Stable-Sim2Real | 0.102 | 0.894 | 0.756 | 0.861 |
| Task | Properties | Explicit Analytical Modeling | Implicit Data-Driven Modeling | |||||||
|---|---|---|---|---|---|---|---|---|---|---|
| GazeboDR | DepthSynth | ActiveStereo | DCL-Depth | Stable-S2R | PRISM | |||||
| Can-to-Plate | 18.7 0.6 | 20.0 0.0 | 20.0 0.0 | 20.0 0.0 | 20.0 0.0 | 20.0 0.0 | ||||
| Banana-to-Plate | 18.0 1.0 | 19.3 0.6 | 19.7 0.6 | 19.7 0.6 | 20.0 0.0 | 20.0 0.0 | ||||
| Stack Cubes | 12.7 0.6 | 14.3 0.6 | 16.7 0.6 | 16.3 1.5 | 18.7 0.6 | 19.3 0.6 | ||||
| Bucket-to-Plate | 11.7 0.6 | 13.7 1.2 | 15.7 0.6 | 15.3 1.2 | 17.7 0.6 | 17.7 0.6 | ||||
| Toyball-to-Drawer | 4.7 0.6 | 7.7 0.6 | 11.7 0.6 | 11.3 1.2 | 16.3 0.6 | 17.3 1.2 | ||||
| Baselines | DP3 | PPT | RISE | Average |
|---|---|---|---|---|
| Sim + Clean | 35.3 | 38.3 | 43.1 | 38.9 |
| Sim + GazeboDR | 49.2 | 53.3 | 57.8 | 53.4 |
| Sim + DepthSynth | 60.6 | 66.4 | 67.8 | 64.9 |
| Sim + ActiveStereo | 75.6 | 80.6 | 78.3 | 78.2 |
| Sim + DCL-Depth | 74.2 | 78.6 | 77.8 | 76.9 |
| Sim + Stable-Sim2Real | 86.7 | 89.7 | 90.8 | 89.1 |
Appendix figures & tables26 assets
Supplementary material from the paper’s appendix.
Appendix
| Module | Input Dim | Output Dim | Description |
| VFM Backbone | MoGe2-Large, frozen | ||
| (MoGe2-L) | |||
| Global Avg Pool | Spatial aggregation | ||
| Context MLP | Linear(1024 512) | ||
| + SiLU + Linear(512 256) | |||
| Scale Attn | Linear + Tanh |
| Stage | Input | Output | Resolution | Operations |
|---|---|---|---|---|
| Pre-Stem | Conv3 3 + BN + ReLU | |||
| Stem | Conv3 3(s=2) + BN + ReLU | |||
| Stage 1 | ConvBlock | |||
| Stage 2 | ConvBlock(s=2) + ConvBlock | |||
| Stage 3 | ConvBlock(s=2) + ConvBlock | |||
| Stage 4 | ConvBlock(s=2) + ConvBlock |
| Stage | Input | Skip | Output | Resolution | Modulation |
|---|---|---|---|---|---|
| Dec4 | |||||
| Dec3 | |||||
| Dec2 | |||||
| Dec1 | Skip only | ||||
| Head | — | Conv + Sigmoid |
| Module | Input | Output | Trainable | Description |
|---|---|---|---|---|
| VFM (MoGe2-L) | ✗ | Semantic extraction | ||
| VFM Projector | ✓ | MLP for conditioning | ||
| VAE Encoder | ✗ | Latent compression | ||
| VAE Decoder | ✓ | Fine-tuned decoding | ||
| ControlNet | Multi-scale | ✓ | Spatial conditioning | |
| U-Net | ✓ (Stage 2) | Denoising backbone |
| Parameter | Value | Parameter | Value |
|---|---|---|---|
| Base Model | Stable Diffusion 2.1 | DDIM | 0.0 (deterministic) |
| DDPM Timesteps | 1000 (training) | Guidance Scale | 9.0 |
| DDIM Steps | 50 (inference) | Residual Scale | 2.0 |
| Depth Range | Latent Channels | 4 |
| Module | Parameters | Components |
|---|---|---|
| SPR | 0.8M | Context MLP + Scale Attention heads |
| BND | 21M | CNN Encoder + Decoder + Prediction Heads |
| NRG | 361M | ControlNet + VFM Projector + VAE Decoder (fine-tuned) |
| Total | 382M |
| Category | Parameter | Value |
| Hardware | GPU | 8 NVIDIA H200 |
| Framework | PyTorch 2.1 + CUDA 12.1 | |
| Distributed | DDP (DistributedDataParallel) | |
| Precision | FP16 (AMP enabled) | |
| Common | Image Resolution | |
| Optimizer | AdamW ( =0.9, =0.999) |
| Module | Loss Component | Weight | Description |
| BND (H-PPS) | Positive-Weighted BCE | Main supervision | |
| Positive Weight | Recall enhancement | ||
| Dice Loss | Shape regularization | ||
| Multi-Scale Auxiliary | Deep supervision (4 scales) | ||
| OHEM Start Ratio | 25% hardest negatives | ||
| OHEM End Ratio | 10% at final epoch |
| Split | Samples | Scene Instances | Usage |
|---|---|---|---|
| Training | 45,000 | 39 | Model training |
| Validation | 5,000 | 39 | Hyperparameter tuning |
| Test | 5,000 | 39 | Final evaluation |
| Total | 55,000 | 39 |
| Property | Value |
|---|---|
| Sensor Type | Legacy Structured-Light Sensor |
| Test Split | 654 images (Standard Eigen Split) |
| Depth Range | 0.1m – 10.0m |
| Resolution | (Center Cropped) |
| Method | Paradigm | Overall Metrics | Invalidation (Safety) | Accuracy (Precision) | Downstream | |||
|---|---|---|---|---|---|---|---|---|
| Config | MAE | IoU | F1 | MAE | Robot SR | |||
| NRG Only | Baseline | 0.118 | 87.3% | 0.412 | 0.583 | 0.089 | 71.5% | 72.5% |
| w/o SPR | Physics-Blind | 0.095 | 91.8% | 0.823 | 0.891 | 0.068 | 82.4% | 83.7% |
| w/o BND | Monolithic | 0.098 | 90.6% | 0.756 | 0.852 | 0.071 | 80.8% | 81.5% |
| PRISM (Full) | Ours | 0.076 | 96.4% | 0.952 | 0.975 | 0.052 | 91.3% | 92.5% |
| Backbone | Type | Depth Fidelity | Physics Awareness | Efficiency | |||
|---|---|---|---|---|---|---|---|
| MAE | Inv-IoU | Robot SR | Params | Inference | |||
| ResNet-50 (Scratch) | CNN | 0.142 | 82.6% | 0.685 | 60.0% | 25M | 12ms |
| ResNet-50 (ImageNet) | CNN | 0.125 | 86.1% | 0.738 | 67.0% | 25M | 12ms |
| DINOv2-Base | Generic ViT | 0.108 | 89.7% | 0.812 | 73.5% | 86M | 28ms |
| DINOv2-Large | Generic ViT | 0.095 | 92.3% | 0.856 | 78.0% | 304M | 45ms |
| DepthAnything-V2-L | 3D VFM | 0.082 | 95.1% | 0.925 | 88.0% | 335M | 48ms |
| Config | Mechanism Added | Invalidation Detection | Fine-Grained | ||
|---|---|---|---|---|---|
| IoU | F1 | Recall | Boundary-IoU | ||
| Baseline | BCE Only | 0.548 | 0.642 | 0.485 | 0.312 |
| + Weight | Positive-Weighted ( ) | 0.685 | 0.756 | 0.712 | 0.425 |
| + Dice | Shape Constraint | 0.768 | 0.845 | 0.792 | 0.538 |
| + Aux | Multi-Scale Supervision | 0.856 | 0.912 | 0.875 | 0.652 |
| + Mining | PP-DHM (Static ) | 0.912 | 0.948 | 0.945 | 0.735 |
| Impact of Positive Weight | Impact of Mining Ratio | |||||
|---|---|---|---|---|---|---|
| Recall | Precision | F1 | Inv-IoU | B-IoU | ||
| 1.0 | 0.485 | 0.962 | 0.642 | 0.10 | 0.905 | 0.752 |
| 2.0 | 0.824 | 0.951 | 0.883 | 0.25 | 0.952 | 0.823 |
| 3.0 | 0.991 | 0.959 | 0.975 | 0.50 | 0.931 | 0.789 |
| 4.0 | 0.993 | 0.885 | 0.936 | 0.75 | 0.884 | 0.741 |
| 5.0 | 0.995 | 0.812 | 0.894 | 1.00 | 0.856 | 0.705 |
Sim-to-Real Transfer
Simulation-to-reality transfer adapts models and policies trained in simulation for reliable performance in physical or otherwise real-world settings.
See all 316 papers