Abstract
Imitation learning has emerged as a crucial approach for acquiring visuomotor skills from demonstrations, where designing effective observation encoders is essential for policy generalization. However, existing methods tend to struggle once test-time conditions differ from the demonstrations, such as changes in lighting, texture, viewpoint, object placement, or object identity. To address this challenge, we propose DIffusion POlicy with compLementarity Encoders (DIPOLE), a visuomotor policy that learns to fuse complementary modalities through a training-time mechanism rather than a specialized fusion architecture. A modality-wise dropout masks one branch at each training step, encouraging each modality to remain individually informative. A lightweight cross-attention layer then exchanges complementary cues between the two. This design endows DIPOLE with five core strengths: stable high performance across diverse tasks, robustness to visual changes, spatial generalization at sub-centimeter precision, emergent capability beyond either modality, and zero-shot transfer to unseen objects. Across 18 simulated and 4 real-world tasks, DIPOLE outperforms six baselines by 39.1% on average, with gains of 41.5% under unseen visual distractors and 15.2% under randomized object placement.
Key Attributes
We evaluate DIPOLE on a unified benchmark of 22 manipulation tasks — 18 simulated tasks drawn from LIBERO, RLBench, and ManiSkill, plus 4 real-world tasks on a Franka arm — against six baselines spanning RGB, RGB-D, and point-cloud encoders. Across the full suite DIPOLE outperforms all baselines by 39.1% on average, and the gains follow a single theme: a policy trained to keep each modality individually informative converts complementarity into stability, robustness, precision, transfer — and capabilities neither modality can deliver alone.
Stable high performance across diverse tasks
One recipe, no per-task tuning. On 18 simulated tasks — each run under three levels of domain randomization — DIPOLE attains a 65% mean success rate, two to six times the 11%–33% that the six baselines span, and it leads on every real-world task as well. Just as telling is how it wins: competing encoders shine on one task family and collapse on another (point-cloud encoders ace CloseBox yet drop to 0% on Butter), whereas DIPOLE stays near the top everywhere, with the lowest cross-task variation of any method (CoV 30%, 1.5–4.4× smaller than the baselines). High mean with low variance is the signature of a single generalist policy rather than one tuned to a favorable task family.
Success rate per task (%, ↑)
Cross-task variation (CoV %, ↓)
Data table
| Task — success rate (%) | DIPOLE | RGB-ResNet18 | RGBD-ResNet18 | RGBD-ViT | RGBD-MultiMAE | DP3 | PonderV2 |
|---|---|---|---|---|---|---|---|
| CloseBox | 96 | 35 | 53 | 48 | 49 | 58 | 75 |
| StackCube | 3 | 10 | 6 | 0 | 1 | 0 | 0 |
| AlphabetSoup | 79 | 22 | 24 | 61 | 48 | 0 | 0 |
| Butter | 88 | 72 | 62 | 68 | 69 | 0 | 0 |
| OrangeJuice | 53 | 17 | 18 | 31 | 33 | 7 | 8 |
| Tomato | 72 | 8 | 11 | 13 | 14 | 0 | 0 |
| Average | 65 | 27 | 29 | 32 | 33 | 11 | 14 |
| Cross-task CoV (%) | 30 | 52.8 | 48.48 | 45.49 | 43.86 | 126.19 | 133.33 |
Robustness to visual changes
What happens when vision becomes unreliable? Material, table-position, and viewpoint shifts attack exactly the cues an RGB policy depends on — so we vary all three, progressively, across randomization levels L0–L2. DIPOLE's success rate moves by only 2.53% across levels, roughly 11× steadier than the 28.5% baseline average, and at the most aggressive L2 it still holds 64% while every baseline falls to 8–21%, leaving an average margin of 41.5%. The invariance carries beyond simulation: DIPOLE passes the real-world color-cycling Light-Strip test zero-shot, where both DP(RGB) and DP(RGBD) fail. When appearance drifts, the geometric stream quietly absorbs the perturbations that most degrade unimodal policies.
Success rate by randomization level (%, ↑)
Cross-randomization dispersion (%, ↓)
Data table
| Randomization level — success rate (%) | DIPOLE | RGB-ResNet18 | RGBD-ResNet18 | RGBD-ViT | RGBD-MultiMAE | DP3 | PonderV2 |
|---|---|---|---|---|---|---|---|
| L0 · original | 68 | 46 | 43 | 44 | 48 | 12 | 19 |
| L1 · +material & table position | 64 | 17 | 23 | 36 | 32 | 13 | 15 |
| L2 · +camera viewpoint | 64 | 19 | 21 | 20 | 20 | 8 | 8 |
| Cross-randomization dispersion (%) | 2.53 | 32.72 | 35.01 | 45.28 | 37.23 | 5.06 | 15.43 |
Spatial generalization at sub-centimeter precision
Geometry, in turn, is not always enough on its own: sub-centimeter tasks demand a precision that a downsampled point cloud is too coarse to resolve. By inheriting RGB's fine-grained visual detail on top of the point cloud's placement-invariant structure, DIPOLE handles both at once. Trained on only 30 grid positions and evaluated across the full 143-position workspace, it fetches a bottle with a 2 cm cap at 22.4% success against 1.4%–18% for the baselines — a +15.2% margin under randomized placement. On contact-rich plug insertion, which demands sub-centimeter vertical accuracy, it leads at 36% while DP3 fails entirely at the precision-critical grasp, a +18.77% average gain on precision tasks. The success grids below make the difference visible at a glance.
Data table
| Task — success rate (%) | DIPOLE | DP (RGB) | DP (RGBD) | DP3 |
|---|---|---|---|---|
| Fetch Bottle (randomized placement) | 22.38 | 18 | 2.10 | 1.40 |
| Insert Plug (sub-cm insertion) | 36 | 25 | 16 | 0 |
Zero-shot transfer to unseen objects
Can one policy survive objects it has never seen? We replace the Pour-Cereal plate with a transparent drawer, a bowl, and a yogurt cup; swap the Insert-Plug iPad for an AirPods charging case (or move it to a novel position); and re-light Fetch-Bottle with strong color-cycling illumination. DIPOLE passes all six transfers, while no unimodal baseline exceeds three of six — each one fails precisely where its own modality breaks. The pattern is telling: DIPOLE generalizes by leaning on whichever modality the novel scene still preserves in distribution, rather than requiring every stream to remain intact. Robust generalization need not come from scaling demonstrations alone — it can emerge from observation representations that encode the task-relevant structure of the scene more faithfully.
Data table
| Scenario | DIPOLE | DP (RGB) | DP (RGBD) | DP3 |
|---|---|---|---|---|
| Drawer | ✓ | ✓ | ✓ | ✓ |
| Bowl | ✓ | ✓ | ✗ | ✓ |
| Yogurt | ✓ | ✗ | ✗ | ✗ |
| Position | ✓ | ✓ | ✗ | ✗ |
| AirPods | ✓ | ✗ | ✓ | ✗ |
| Light Strip | ✓ | ✗ | ✗ | ✓ |
| Scenarios passed | 6/6 | 3/6 | 2/6 | 3/6 |
Emergent capability beyond either modality
The most striking result comes last: fusion that exceeds the sum of its parts. On four task settings where both unimodal encoders fail almost completely when trained alone — ≤1% success for the RGB-only ResNet and the point-cloud-only DP3 — DIPOLE recovers to 72.3% mean success. Ablations isolate modality-wise dropout as the mechanism: remove it, and the fused model reverts to its strongest unimodal baseline no matter which fusion architecture is used. In other words, the emergent gain comes from how DIPOLE is trained, not from the fusion module itself — even a modality that is weak on a task still supplies complementary cues, so fusion produces capabilities neither stream can deliver alone.
| Setting — success rate (%) | ResNet (RGB only) | DP3 (PC only) | DIPOLE |
|---|---|---|---|
| AlphabetSoup L1 | 0 | 0 | 67 |
| AlphabetSoup L2 | 0 | 0 | 73 |
| Tomato L1 | 1 | 0 | 68 |
| Tomato L2 | 1 | 0 | 81 |
| Mean | 0.5 | 0 | 72.3 |
Settings where each unimodal encoder fails (≤1%) when trained alone; L1/L2 are domain-randomization levels.
Methodology
DIPOLE (DIffusion POlicy with compLementarity Encoders) predicts actions from RGB and geometric observations through a pair of complementary encoders — a ResNet-18 for RGB images and a DP3-style encoder for point clouds, alongside a small MLP for proprioception. Rather than relying on a specialized fusion architecture, DIPOLE enforces complementarity through a training-time mechanism: at each training step, modality-wise dropout masks either the RGB or the point-cloud feature, forcing each modality to remain individually informative instead of collapsing onto the locally easier one. A lightweight cross-attention layer then exchanges complementary cues between the two streams, and the fused representation conditions a diffusion action head.
Experiments and Results
Insert Plug
DIPOLE
Diffusion Policy(RGB)
Diffusion Policy(RGBD)
DP3
Tablet in Different Position
Replaced with Airpods
Pour Cereal
Training: a consistent scene with fixed lighting and object
Transfer: various distributions of flowing rgb light strip and objects of different shapes and sizes
Pick Butter
DIPOLE
Pick Bottle
Generalize in training distribution
Transfer to extreme lighting shift
Simulation Tasks
We conduct our simulation benchmarks in RoboVerse, evaluating tasks from LIBERO, ManiSkill, and RLBench. All tasks are domain-randomized at three levels using a unified simulation codebase.Simulation Overview
BibTeX
@misc{tang2025dipole,
title={DIPOLE: Fusing Vision and Geometry for Robust Visuomotor Generalization},
author={Yikai Tang and Haoran Geng and Jindou Jia and Yuxuan Hu and Sheng Zang and Jianfei Yang and Pieter Abbeel and Jitendra Malik},
year={2025},
eprint={2511.22445},
archivePrefix={arXiv},
primaryClass={cs.RO},
url={https://arxiv.org/abs/2511.22445},
}