Frame-Level Temporal Alignment for Human-to-Robot Visual Adaptation
Organizations: The University of Auckland · Fudan University
Abstract
Transferring visual representations pretrained on human videos to robot manipulation requires learning reliable correspondences between human and robot demonstrations. However, paired demonstrations can differ in execution rate and in the proportion of non-key frames that do not directly reflect task progress. Frames at the same relative timestamp may therefore represent different task stages, which can cause correspondence learning to fail. To address these issues, we propose Frame-Level Temporal Alignment (FLTA), a framework that uses two temporal priors to adapt visual encoders pretrained on human videos for robot manipulation. It learns shared task-progress representations without frame-level correspondence annotations, allowing frames at different relative temporal positions to match. A global progress prior combines normalized temporal positions with visual similarity to construct a soft correspondence target. A local temporal order prior penalizes backward transitions while allowing stays and varying forward rates to accommodate execution-rate differences. With ResNet-50 and ViT encoders, our method achieves relative improvements of 46.93% and 65.96%, respectively, over the best baselines in average simulation success rates and achieves higher task success rates on real-world manipulation tasks. These results also suggest that effective human-robot adaptation depends less on the number of parameters updated than on which parameters are selected. Our project page is available at https://rtx5090ultra.github.io/FLTA-Project-Page/.
Figures & tables
| Encoder | Method | L1 | L2 | Avg. | Encoder | Method | L1 | L2 | Avg. |
|---|---|---|---|---|---|---|---|---|---|
| D4R-ViT | Frozen | 8.31 (0.50) | 11.60 (0.33) | 9.74 (0.25) | DNCE-CLIP | Frozen | 10.05 (1.24) | 9.73 (1.32) | 9.91 (1.14) |
| + HRP | 10.56 (1.67) | 12.13 (0.38) | 11.25 (1.03) | + HRAlign ∗ | 12.62 (2.06) | 9.47 (1.05) | 11.25 (1.58) | ||
| + Ours | 18.05 (0.52) | 19.47 (0.50) | 18.67 (0.49) | + Ours | 15.38 (0.44) | 16.13 (1.00) | 15.71 (0.22) | ||
| (+70.93%) | (+60.51%) | (+65.96%) | (+21.87%) | (+70.33%) | (+39.64%) | ||||
| R3M-RN50 | Frozen | 12.62 (0.25) | 11.73 (0.50) | 12.23 (0.36) | AcTOL-CLIP | Frozen | 11.28 (1.53) | 11.47 (0.19) | 11.36 (0.82) |
| + HRAlign | 11.59 (1.62) | 12.80 (0.33) | 12.12 (0.78) | + HRAlign ∗ | 11.90 (1.47) | 12.27 (0.19) | 12.06 (0.78) |
| Method | T1 | T2 | T3 | T4 | Avg. |
|---|---|---|---|---|---|
| Frozen | 0.35 | 0.25 | 0.55 | 0.00 | 0.29 |
| + HRP | 0.40 | 0.50 | 0.35 | 0.05 | 0.33 |
| + Ours | 0.65 | 0.60 | 0.85 | 0.15 | 0.56 |
| In-distribution (RH20T) | Zero-shot (self-collected) | |||
|---|---|---|---|---|
| Setting | D4R-ViT | R3M-RN50 | D4R-ViT | R3M-RN50 |
| Frozen | 15/100 | 14/100 | 42/100 | 36/100 |
| + HRP / HRAlign | 17/100 | 22/100 | 47/100 | 43/100 |
| + Ours | 39/100 | 43/100 | 56/100 | 61/100 |
| Variant | D4R-ViT | R3M-RN50 | |||||||
|---|---|---|---|---|---|---|---|---|---|
| L1 | L2 | Avg. | L1 | L2 | Avg. | ||||
| Full | ✓ | ✓ | ✓ | 18.05 (0.52) | 19.47 (0.50) | 18.67 (0.49) | 16.82 (1.24) | 19.47 (0.19) | 17.97 (0.67) |
| w/o | ✓ | ✓ | – | 16.15 (0.66) | 17.27 (1.15) | 16.64 (0.54) | 16.31 (0.50) | 17.73 (0.19) | 16.93 (0.22) |
| w/o | – | ✓ | ✓ | 14.56 (0.77) | 18.53 (0.38) | 16.29 (0.43) | 15.69 (1.26) | 17.07 (0.82) | 16.29 (0.91) |
| w/o | ✓ | – | ✓ | 13.74 (0.77) | 17.87 (0.50) | 15.54 (0.46) | 13.13 (0.38) | 17.47 (0.68) | 15.01 (0.36) |
| w/o & | – | – | ✓ | 11.18 (0.29) | 15.20 (0.65) | 12.93 (0.33) | 11.79 (0.52) | 15.47 (0.38) | 13.39 (0.38) |
Appendix figures & tables13 assets
Supplementary material from the paper’s appendix.
Appendix
| Symbol | Meaning |
|---|---|
| Paired human and robot videos. | |
| Visual encoder with parameters ; only normalization-affine parameters are updated during adaptation. | |
| Augmentation operators for the two branches. | |
| Representations of the same frame index under the two augmentations, for domain . | |
| Sampled temporal index set and number of sampled frames per video. | |
| Frame-instance index and total number of sampled frames per domain. |
| Configuration | ViT | RN50 |
|---|---|---|
| Training iterations | 40,000 | 40,000 |
| Optimizer | AdamW | AdamW |
| Learning rate | ||
| Frames per domain | 160 | 160 |
| Sampled frames | 8 | 8 |
| Weight decay | 0 | 0 |
| Configuration | DecisionNCE-CLIP | AcTOL-CLIP |
|---|---|---|
| Training iterations | 40,000 | 40,000 |
| Optimizer | AdamW | AdamW |
| Learning rate | ||
| Frames per domain | 160 | 160 |
| Sampled frames | 8 | 8 |
| Weight decay | 0 | 0 |
| Configuration | ViT | RN50 |
|---|---|---|
| Policy architecture | Modified RVT2 | |
| Stage 1 attention layers | 8 | |
| Stage 2 attention layers | 1 | |
| Attention dimension | 512 | |
| Optimizer | LAMB | |
| Base learning rate | ||
| Encoder | Method | Toilet | Knife | Fridge | Micro. | Laptop | Phone | Seat | Lamp Off | Lamp On | Book | Umb. | Grill | Bin | Avg. | Std. |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| D4R-ViT | Frozen | 0 | 0 | 16.0 | 18.7 | 14.7 | 0 | 56.0 | 0 | 0 | 0 | 0 | 2.7 | 0 | 8.31 | 0.50 |
| + HRP | 0 | 1.3 | 22.7 | 10.7 | 32.0 | 0 | 45.3 | 2.67 | 2.67 | 0 | 1.3 | 18.7 | 0 | 10.56 | 1.67 | |
| + Ours | 0 | 0 | 64.00 | 54.67 | 28.00 | 0 | 73.33 | 0 | 0 | 0 | 1.33 | 12.00 | 1.33 | 18.05 | 0.52 | |
| R3M-RN50 | Frozen | 0 | 1.3 | 29.3 | 32.0 | 13.3 | 0 | 73.3 | 1.3 | 1.3 | 1.3 | 0 | 10.7 | 0 | 12.62 | 0.25 |
| + HRAlign | 0 | 0 | 37.3 | 14.7 | 24.0 | 0 | 65.3 | 6.7 | 1.3 | 0 | 0 | 1.3 | 0 | 11.59 | 1.62 | |
| + Ours | 0 | 6.67 | 64.00 | 33.33 | 46.67 | 0 | 61.33 | 1.33 | 0 | 0 | 0 | 5.33 | 0 | 16.82 | 1.24 |
| Task | Domain | Outside | Annotated | S1 | S2 | S3 | S4 |
|---|---|---|---|---|---|---|---|
| task_0010: S1: approach; S2: grasp and lift; S3: move handset away; S4: retreat | |||||||
| task_0010 | Human | 0–41; 69–85 | 42–68 | 42–46 | 46–53 | 53–64 | 64–68 |
| task_0010 | Robot | 0–519 | 520–938 | 520–600 | 600–680 | 680–880 | 880–938 |
| task_0015: S1: approach; S2: lift and aim; S3: striking; S4: return stick and release | |||||||
| task_0015 | Human | 0–43 | 44–69 | 44–47 | 47–55 | 55–64 | 64–69 |
| task_0015 | Robot | 0–199 | 200–315 | 200–220 | 220–247 | 247–280 | 280–315 |
| Task | Demo | Domain | Outside | Annotated | S1 | S2 | S3 |
|---|---|---|---|---|---|---|---|
| carrot: S1: approach; S2: lift and carry to pot; S3: release and retreat | |||||||
| carrot | 001 | Human | 0–78; 155–164; 169–203 | 79–154; 165–168 | 79–119 | 119–154 | 165–168 |
| carrot | 001 | Robot | 247–299 | 0–246 | 0–155 | 155–226 | 226–246 |
| carrot | 002 | Human | 0–86; 169–203 | 87–168 | 87–113 | 113–156 | 156–168 |
| carrot | 002 | Robot | 253–299 | 0–252 | 0–142 | 142–232 | 232–252 |
| carrot | 003 | Human | 0–81; 174–218 | 82–173 | 82–108 | 108–157 | 157–173 |
| Split | # Tasks | Task categories |
|---|---|---|
| Training | 18 | Close jar; insert onto square peg; light bulb in; meat off grill; open drawer; place cups; place shape in shape sorter; place wine at rack location; push buttons; put groceries in cupboard; put item in drawer; put money in safe; reach and drag; slide block to color target; stack blocks; stack cups; sweep to dustpan of size; and turn tap. |
| Testing Level-1 | 13 | Put toilet roll on stand; put knife on chopping board; close fridge; close microwave; close laptop lid; phone on base; toilet seat down; lamp off; lamp on; put books on bookshelf; put umbrella in umbrella stand; open grill; and put rubbish in bin. |
| Testing Level-2 | 10 | Take USB out of computer; take lid off saucepan; take plate off colored dish rack; basketball in hoop; scoop with spatula; straighten rope; turn oven on; beat the buzz; water plants; and unplug charger. |
Robot Learning
Robot learning develops methods for robots to acquire skills and adapt from demonstrations, interaction, data, and physical models.
See all 323 papers