CoRL 2026

Direct Action-Head Injection of a Grounded 3D Point Unlocks Spatial and Task Generalization

Shiang-Feng Tsai1 · Jin-Cheng Jhang1 · Yen-Ling Tai2 · Jia-Hong Lai1,* · Shih-Yun Wong1,* · Kang-Tung Hsu1,* · Yi-Ting Chen2 · Min Sun1

1 National Tsing Hua University  2 National Yang Ming Chiao Tung University
* Equal contribution

Paper Code (Coming Soon)

Abstract

Vision-Language-Action (VLA) models leverage large-scale vision-language pretraining for flexible robot manipulation, yet at test time they remain brittle to changed object positions and to familiar scenes paired with different instructions. A growing family of methods addresses this brittleness by supplying the policy with grounding signals, such as 2D pixel coordinates for object localization and placement.

However, we find that how the grounding signal is represented and injected matters more than the signal itself. In this work, we propose a lightweight module that represents the grounding signal in 3D and injects the resulting embedding directly into the action head. The module is a two-layer MLP and requires no changes to the VLA backbone or pretraining pipeline, yet it yields substantially larger gains than language- or visual-prompting alternatives.

On LIBERO-PRO, our method improves the average success rate of GR00T-N1.6 from 31.2 to 77.5 under task perturbation and from 28.1 to 60.2 under position perturbation. Comparable gains are also achieved for π0.5, demonstrating that the mechanism is backbone-agnostic across VLAs with diffusion-based action heads. We further validate the practical applicability with real-world experiments. Together, these results support our central finding: lifting adequate 2D grounding into 3D and injecting it into the action head enables spatial and instance-level task generalization in VLAs.

Method

Our method makes two decisions about one grounding point: represent it in 3D, and inject it directly into the action head. 

Panel 1 — 2D grounding: the instruction and observation go to an off-the-shelf grounding module, which returns the pixel bowl [0.51, 0.63].
Panel 2 — obtain spatial embedding: lift the pixel to 3D with depth and camera parameters, then encode the gripper-to-target displacement with an MLP.
Panel 3 — spatial-conditioned policy: the spatial embedding conditions the flow-matching action head via AdaLN, producing the predicted action chunk.
Figure 2  The grounded pixel is lifted with depth and camera parameters, reduced to a gripper-relative displacement, encoded by a two-layer MLP, and injected into the action head through AdaLN. 
012D grounding

The instruction names a target; a grounding module returns one 2D point for the current sub-goal. Nothing in this stage is ours — a detector, a segmentation mask, or a VLM all work.

"Pick up the bowl." → bowl @ [0.51, 0.63]

023D spatial embedding

Depth and camera parameters lift that pixel into the robot base frame, so the signal lives in the same space the action head predicts in. We keep only the gripper-to-target displacement and encode it with a two-layer MLP.

d = pt − pg  →  zspatial = MLP(d)

03Inject spatial embedding into the VLA

In the DiT action head, AdaLN normally conditions each block on the timestep alone. We add the spatial embedding to the timestep embedding, so the denoising process is also conditioned on the grounding signal. 

γ, β = Linear(ztime + zspatial)

Real-world experiments

In our real-world experiments, the 2D point comes from an off-the-shelf VLM (Qwen3-VL-4B) and depth from a consumer RGB-D camera (Intel RealSense D435).

Method In distribution Task perturbation Position perturbation
Controlled pairs — with vs. without our module
π0.5 85.032.527.5
π0.5 + Ours 91.378.861.3
GR00T-N1.6 68.83.83.8
GR00T-N1.6 + Ours 92.563.866.3
Controlled comparison of representation and injection — GR00T-N1.6
+ 2D via Text Prompt 87.55.07.5
+ 2D via Visual Prompt 88.86.35.0
+ 2D via AdaLN 87.518.816.3
+ 3D via Text Prompt 86.35.05.0
  • Our module holds up on a real robot, despite noisier grounding and depth.
  • Both backbones collapse under perturbation and our module restores most of the performance.
  • Every grounding variant helps in distribution, but only ours holds up under perturbation. 

Rollouts in real world

Scene
Condition
Instruction “Pick up the red cube and place it into the bowl.” “Pick up the blue cube and place it into the bowl.” “Pick up the red cube and place it into the bowl.” “Pick up the lemon and place it into the bowl.” “Pick up the lemon and place it on the plate.” “Pick up the lemon and place it into the bowl.” “Pick up the orange and place it into the green bowl.” “Pick up the orange and place it into the pink bowl.” “Pick up the orange and place it into the green bowl.”
GR00T-N1.6
GR00T-N1.6 + Ours

Simulation Experiments- LIBERO & LIBERO-PRO

We fine-tune two backbones, π0.5 and GR00T-N1.6, on the same 69 pick-and-place tasks (LIBERO-Object, LIBERO-Spatial and 49 tasks from LIBERO-90), once as-is and once with our module. Every model is then tested under three conditions:

In distribution
Same layout · same instruction

The original LIBERO test: scenes and instructions as seen in training.

Task perturbation
Same layout · new instruction

The target is swapped for another object already in the scene. 

Position perturbation
Same instruction · new layout

Objects start at different positions. 

LIBERO LIBERO-PRO
Method IN DISTRIBUTION Task perturbation Position perturbation
ObjectSpatialAvg ObjectSpatialAvg ObjectSpatialAvg
Reference open-source VLAs
OpenVLA 88.484.786.6 1.846.424.1 0.00.00.0
π0 98.896.897.8 10.054.432.2 0.211.65.9
MolmoAct 95.487.091.2 9.231.620.4 4.20.22.2
FALCON* 98.897.698.2 5.048.226.6 0.612.26.4
Controlled pairs — same backbone and data, with vs. without our module
π0.5 94.896.095.4 20.054.637.3 36.058.047.0
π0.5 + Ours 97.098.297.6 70.681.275.9 75.069.472.2
Δ vs. baseline +2.2+2.2+2.2+50.6+26.6+38.6+39.0+11.4+25.2
GR00T-N1.6 93.893.293.5 10.052.431.2 29.227.028.1
GR00T-N1.6 + Ours 99.692.496.0 70.484.677.5 79.441.060.2
Δ vs. baseline +5.8−0.8+2.5+60.4+32.2+46.3+50.2+14.0+32.1

*Reproduced by us with the same 69-task training data.

  • Every baseline collapses under perturbation, while our module substantially improves both backbones.
  • The gain is not just from adding 3D: FALCON also feeds 3D features into the action head, yet still fails under position perturbation (6.4). What makes the difference is a 3D signal tied to the instructed target.

Controlled comparison of representation and injection

Same 2D target point for every variant; only its representation and injection methods differ.

Task perturbation
Baseline
31.2
2D · Text Prompt
42.5
2D · Visual Prompt
40.3
2D · AdaLN
47.7
3D · Text Prompt
38.5
3D · AdaLN (ours)
77.5
Position perturbation
Baseline
28.1
2D · Text Prompt
31.7
2D · Visual Prompt
30.4
2D · AdaLN
37.8
3D · Text Prompt
39.4
3D · AdaLN (ours)
60.2

Both choices are needed. A 2D point stays limited however it is injected, even through the same AdaLN pathway as ours. A 3D point written into the text prompt barely helps either. Only 3D with direct injection delivers the large gain.

Design choices outweigh data scaling

Every method retrained on only the 20 original tasks (LIBERO-Object + LIBERO-Spatial), compared with 69.

20 tasks 69 tasks ours @ 20 tasks
Task perturbation
Baseline
28.9
31.2
2D · Text Prompt
32.1
42.5
2D · Visual Prompt
29.6
40.3
2D · AdaLN
39.6
47.7
3D · Text Prompt
32.9
38.5
3D · AdaLN (ours)
62.0
77.5
Position perturbation
Baseline
3.4
28.1
2D · Text Prompt
15.3
31.7
2D · Visual Prompt
1.7
30.4
2D · AdaLN
19.4
37.8
3D · Text Prompt
5.4
39.4
3D · AdaLN (ours)
41.5
60.2

A better design beats more data. More training tasks help every method, so data diversity does matter. Still, ours trained on just 20 tasks  (dashed line) outperforms every other method trained on 69.

Rollouts in simulation

Suite
Condition
Instruction “Pick up the tomato sauce and place it in the basket.” “Pick up the salad dressing and place it in the basket.” “Pick up the salad dressing and place it in the basket.” “Pick the akita black bowl from table center and place it on the plate.” “Pick the akita black bowl next to the plate and place it on the plate.” “Pick the akita black bowl from table center and place it on the plate.”
GR00T-N1.6
GR00T-N1.6 + Ours

Both panes always show the same two models: GR00T-N1.6 fine-tuned as-is, and with our module. Both succeed in distribution. Under task perturbation, the baseline ignores the new target and repeats the motion it memorized for this scene; under position perturbation, it reaches for where the target used to be. With our module, the policy follows the instruction and finds the moved object.

BibTeX

@inproceedings{
  tsai2026direct,
  title={Direct Action-Head Injection of A Grounded 3D Point Unlocks Spatial and Task Generalization},
  author={Tsai, Shiang-Feng and Jhang, Jin-Cheng and Tai, Yen-Ling and Lai, Jia-Hong and Wong, Shih-Yun and Hsu, Kang-Tung and Chen, Yi-Ting and Sun, Min},
  booktitle={10th Annual Conference on Robot Learning},
  year={2026},
}