ACTS · test-set results · nano_action_joint_v8

ACTS: Learning Visuo-Tactile World Models from Human Interaction

Motivation
  • The problem. Action-conditioned world models need diverse interaction data, but for contact-rich manipulation, collecting it with robots is costly: teleoperation limits throughput, and a fixed robot or gripper restricts which contact geometries and force-modulation behaviors can be explored.
  • The question. Can these dynamics be learned directly from human physical interaction, while remaining usable for robot control?
  • ACTS. A visuo-tactile world model trained entirely from human interaction.
  • Data collection. Human operators manipulate handheld tactile sensors while we record synchronized third-person and wrist video, bilateral GelSight observations, 6-DoF sensor motion, and tactile-derived force signals — yielding React, a dataset of human interactions spanning four contact-rich tasks.
  • Bridging human data and robot execution. Actions are represented at the tactile sensing interface: visual prediction is conditioned on sensor geometry in the visual frame, while tactile prediction uses force-augmented sensor motion in the local sensor frame. ACTS jointly predicts future visual and tactile observations under candidate actions.
  • The result. Despite being trained without robot interaction data, ACTS can be used directly for real-robot planning without robot-specific world-model fine-tuning — human physical interaction can provide scalable action-conditioned supervision for visuo-tactile world models that transfer to robotic manipulation.

This page: a Cosmos3-Nano world model that, given the recorded context and the executed sensor actions, predicts what the main camera, both wrist cameras and both GelSight gels see next — evaluated on the held-out test split of mixed_mb_wrist_holdout.

checkpointepoch_004
test episodes5
test windows16,598
short horizon8 frames · 0.53 s
long horizon32 rollouts · 8 s
trainable45.3 M / 15.2 B
01

Dataset

Two React recordings per task — what the sensors see

Each card plays the five streams the model sees, at the model's own 15 fps, with the recorded normal force for the whole recording underneath. Both hands carry a GelSight sensor, so tactile and wrist views come in left/right pairs. The model on this page is trained on motherboard only. Videos are muted and paused by default — press play on any row.

motherboard2026-09-11 · episode_004_seg00

main view
wrist L
wrist R
tactile L
tactile R
recorded force, motherboard episode_004_seg00

motherboard2026-09-12 · episode_002

main view
wrist L
wrist R
tactile L
tactile R
recorded force, motherboard episode_002

pushT2026-09-11 · episode_002_seg00

main view
wrist L
wrist R
tactile L
tactile R
recorded force, pushT episode_002_seg00

pushT2026-09-12 · episode_006_seg00

main view
wrist L
wrist R
tactile L
tactile R
recorded force, pushT episode_006_seg00

rope2026-09-14 · episode_005_seg00

main view
wrist L
wrist R
tactile L
tactile R
recorded force, rope episode_005_seg00

rope2026-09-11 · episode_000_seg00

main view
wrist L
wrist R
tactile L
tactile R
recorded force, rope episode_000_seg00
02

Method

Nine streams, one frozen Nano generator, LoRA

Nine streams — five images, four actions — are projected into one sequence and denoised jointly by a frozen Cosmos3-Nano generator through LoRA. Actions are always clean conditions, future included; only future image latents are supervised, so the model never predicts an action.

window16 @ 15 Hz
tokens / example1,342
LoRAr16 · 252 linears
training5 ep · 4×H100
datav8 · 09-17
Inputs — 16 frames @ 15 Hz (8 history + 8 future) Packed sequence Cosmos3-Nano generator (GEN tower) Outputs main view (RGB)256 tok wrist L / R (RGB)256 ea tactile L / R256 ea sensor action L / R15 ea view action L / R16 ea Wan2.2 VAE latents 48x4x16x16, 2x2 patches -> 64 tok/frame 9-D actions: sensor = dp + Rot6D with force folded in; view = 3 projected points RGB projpretrained, frozenshared by 3 views tactile projtrained, init from RGB action proj 9->4096sensor: init UMI headview: new, trained 1,342 tokens 702 clean conditions 640 prediction targets + stream embedding (9) + 3-D RoPE, tick k -> 6k/15 noise added ONLY to future image tokens actions stay clean for the whole window 15.2 B frozen base LoRA r16, alpha 32 252 attn + FFN linears 45.3 M trainable (0.30 %) chunk_bidirectional over the whole 16-frame window rectified flow, waver sigma shift 3, future-only loss future latents 5 image streams x 8 frames 640 target tokens no action output heads unused and frozen Attention topology (direct edges; both directions) main view wrist L tac L wrist R tac R A_L / U_L A_R / U_R main view attends to all five image streams and both view-action streams. Each side's wrist and tactile attend to the main view and to each other, never across sides. Tactile L/R pairs with its sensor action; the views pair with the view actions. Everything else is masked, so left/right information can only meet through the main view across layers.
Nine streams are projected, packed into one sequence and denoised together by the frozen Nano generator; only future image tokens carry noise and only they are supervised. Bottom: which streams may attend to each other directly.
03

Evaluation setup

Test split, contact classes, how to read the strips

Test split5 held-out episodes, 16,598 windows. Three of them are the 09-09 session (different hardware day), two are in-distribution 09-11/09-12 segments.
Contact classesFrom the recorded force, max(FL, FR) > 0.5 N over the 16 frames. none full onset release
pools: none 1,102, full 8,361, onset 1,407, release 1,333, mixed 4,395 (not evaluated). 25 windows per class, fixed seed; 32 also run the 8 s rollout (8 shown as video below).
Reading a clipFive streams side by side, GT on top and the prediction below, playing through the 8 history frames and the 8 predicted ones (~1 s). The badge marks history vs. predicted; underneath, a moving playhead tracks the recorded force and the commanded press along the gel normal.
none
no contact in any of the 16 frames
full
in contact for at least 80% of the 16 frames
onset
no contact at the end of the context, contact at the end of the prediction
release
contact at the start of the context, no contact at the end of the prediction
04

Short horizon

8 predicted frames, teacher-forced

Teacher-forced: the 8 history frames are the recorded ones, so this measures one step of prediction rather than accumulated drift. Δ is model minus the copy-last floor.

PSNR (dB)

classmodelnviewwrist Lwrist Rtactile Ltactile R
modelfloorΔmodelfloorΔmodelfloorΔmodelfloorΔmodelfloorΔ
noneaction_full epoch_0042528.9626.73+2.2424.1822.28+1.9025.9123.71+2.2049.5443.55+5.9949.7943.55+6.24
fullaction_full epoch_0042526.2222.99+3.2317.0115.23+1.7817.9316.59+1.3438.3736.42+1.9544.1439.65+4.49
onsetaction_full epoch_0042526.4525.00+1.4518.4317.01+1.4317.0015.55+1.4543.6239.99+3.6341.0238.03+3.00
releaseaction_full epoch_0042524.3022.40+1.9016.1414.19+1.9415.4113.96+1.4444.9639.16+5.8043.1937.48+5.71

Positive Δ: the model beats repeating the last context frame.

SSIM

classmodelnviewwrist Lwrist Rtactile Ltactile R
modelfloorΔmodelfloorΔmodelfloorΔmodelfloorΔmodelfloorΔ
noneaction_full epoch_004250.9070.846+0.0610.7170.698+0.0190.7370.712+0.0250.9940.989+0.0050.9940.989+0.004
fullaction_full epoch_004250.8480.746+0.1030.5240.459+0.0650.6040.552+0.0520.9670.962+0.0050.9810.976+0.004
onsetaction_full epoch_004250.8690.812+0.0570.6000.555+0.0450.5490.514+0.0350.9820.978+0.0040.9760.974+0.001
releaseaction_full epoch_004250.8100.742+0.0690.5500.486+0.0640.5050.498+0.0070.9860.972+0.0140.9830.969+0.013

LPIPS

classmodelnviewwrist Lwrist Rtactile Ltactile R
modelfloorΔmodelfloorΔmodelfloorΔmodelfloorΔmodelfloorΔ
noneaction_full epoch_004250.0380.075-0.0370.1870.224-0.0370.1620.197-0.0360.0050.012-0.0070.0090.015-0.006
fullaction_full epoch_004250.0580.142-0.0840.2130.276-0.0640.1950.262-0.0660.0640.078-0.0150.0400.048-0.009
onsetaction_full epoch_004250.0470.082-0.0360.2170.280-0.0630.2550.321-0.0660.0500.055-0.0050.0800.081-0.001
releaseaction_full epoch_004250.0800.141-0.0620.2880.352-0.0640.3100.343-0.0330.0270.057-0.0300.0400.084-0.044

Lower is better, so Δ is negative when the model wins.

noneno contact in any of the 16 frames↑ contents

motherboard_0909_episode_000 · t=14
PSNR model (floor): view 35.3 (31.1) · wrist L 42.0 (37.4) · wrist R 40.9 (36.6) · tactile L 47.3 (44.0) · tactile R 49.6 (44.2)
motherboard_0909_episode_000 · t=1266
PSNR model (floor): view 26.9 (24.2) · wrist L 25.6 (20.6) · wrist R 12.2 (11.4) · tactile L 49.2 (43.9) · tactile R 47.9 (44.2)
motherboard_0909_episode_000 · t=1302
PSNR model (floor): view 26.5 (27.5) · wrist L 22.6 (25.3) · wrist R 17.6 (17.5) · tactile L 49.6 (43.8) · tactile R 48.2 (43.6)
motherboard_0909_episode_000 · t=1316
PSNR model (floor): view 25.1 (24.4) · wrist L 15.7 (11.7) · wrist R 19.2 (16.0) · tactile L 50.4 (43.8) · tactile R 39.8 (40.6)
motherboard_0909_episode_000 · t=1819
PSNR model (floor): view 24.1 (21.8) · wrist L 18.5 (15.1) · wrist R 10.2 (10.0) · tactile L 50.8 (44.0) · tactile R 50.5 (43.9)
motherboard_0909_episode_000 · t=2033
PSNR model (floor): view 25.8 (23.9) · wrist L 12.3 (11.0) · wrist R 17.3 (15.8) · tactile L 50.3 (43.5) · tactile R 51.6 (43.9)
motherboard_0909_episode_000 · t=2037
PSNR model (floor): view 26.4 (26.6) · wrist L 13.5 (12.0) · wrist R 17.3 (16.9) · tactile L 49.3 (43.8) · tactile R 51.5 (43.9)
motherboard_0909_episode_001 · t=14
PSNR model (floor): view 35.3 (31.3) · wrist L 35.0 (35.9) · wrist R 41.2 (38.1) · tactile L 48.4 (44.0) · tactile R 49.0 (44.1)
motherboard_0909_episode_001 · t=20
PSNR model (floor): view 35.3 (31.3) · wrist L 36.3 (35.4) · wrist R 41.0 (38.1) · tactile L 49.5 (44.0) · tactile R 48.9 (44.1)
motherboard_0909_episode_001 · t=36
PSNR model (floor): view 35.2 (31.3) · wrist L 39.7 (36.6) · wrist R 41.1 (38.3) · tactile L 48.5 (44.0) · tactile R 49.4 (44.0)
motherboard_0909_episode_001 · t=85
PSNR model (floor): view 35.2 (31.3) · wrist L 39.3 (36.7) · wrist R 41.1 (38.2) · tactile L 48.6 (43.8) · tactile R 49.3 (44.1)
motherboard_0909_episode_001 · t=89
PSNR model (floor): view 35.2 (31.3) · wrist L 40.2 (36.8) · wrist R 40.8 (38.2) · tactile L 48.7 (43.6) · tactile R 48.8 (43.5)
motherboard_0909_episode_001 · t=104
PSNR model (floor): view 35.3 (31.3) · wrist L 40.9 (36.6) · wrist R 40.9 (37.8) · tactile L 48.8 (43.9) · tactile R 49.6 (44.1)
motherboard_0909_episode_001 · t=141
PSNR model (floor): view 25.4 (24.1) · wrist L 26.2 (24.5) · wrist R 17.2 (17.4) · tactile L 46.9 (43.6) · tactile R 49.1 (44.1)
motherboard_0909_episode_001 · t=151
PSNR model (floor): view 23.2 (20.8) · wrist L 11.3 (11.7) · wrist R 14.9 (11.7) · tactile L 49.5 (43.6) · tactile R 51.5 (43.8)
motherboard_0909_episode_001 · t=1836
PSNR model (floor): view 25.9 (24.1) · wrist L 10.5 (10.7) · wrist R 20.7 (17.4) · tactile L 50.3 (43.4) · tactile R 50.7 (43.8)
motherboard_0909_episode_001 · t=3242
PSNR model (floor): view 23.0 (21.0) · wrist L 12.9 (12.3) · wrist R 14.9 (12.2) · tactile L 49.4 (44.0) · tactile R 47.7 (43.8)
motherboard_0909_episode_002 · t=2601
PSNR model (floor): view 27.1 (26.5) · wrist L 12.0 (11.4) · wrist R 26.8 (25.9) · tactile L 44.4 (41.9) · tactile R 50.7 (43.9)
motherboard_0909_episode_002 · t=2613
PSNR model (floor): view 24.4 (24.0) · wrist L 9.2 (8.0) · wrist R 27.3 (25.9) · tactile L 47.3 (42.6) · tactile R 49.1 (43.9)
motherboard_0911_episode_008_seg00 · t=915
PSNR model (floor): view 27.9 (25.3) · wrist L 21.4 (18.0) · wrist R 15.4 (13.1) · tactile L 52.1 (43.3) · tactile R 50.8 (43.0)
motherboard_0912_episode_002 · t=16
PSNR model (floor): view 31.2 (30.1) · wrist L 28.7 (29.2) · wrist R 35.3 (30.9) · tactile L 52.4 (43.5) · tactile R 52.3 (42.9)
motherboard_0912_episode_002 · t=33
PSNR model (floor): view 27.7 (27.0) · wrist L 22.4 (24.4) · wrist R 23.7 (24.0) · tactile L 51.5 (43.3) · tactile R 51.2 (42.8)
motherboard_0912_episode_002 · t=73
PSNR model (floor): view 27.3 (23.8) · wrist L 13.5 (12.7) · wrist R 20.9 (16.7) · tactile L 51.7 (43.1) · tactile R 52.7 (43.0)
motherboard_0912_episode_002 · t=726
PSNR model (floor): view 25.3 (23.4) · wrist L 20.3 (12.0) · wrist R 16.5 (14.2) · tactile L 51.6 (43.1) · tactile R 52.3 (42.9)
motherboard_0912_episode_002 · t=762
PSNR model (floor): view 34.0 (30.7) · wrist L 34.5 (30.8) · wrist R 33.1 (30.4) · tactile L 52.0 (43.2) · tactile R 52.4 (42.8)

fullin contact for at least 80% of the 16 frames↑ contents

motherboard_0909_episode_000 · t=1468
PSNR model (floor): view 29.7 (27.7) · wrist L 23.4 (24.0) · wrist R 17.2 (17.7) · tactile L 50.3 (43.8) · tactile R 36.8 (34.6)
motherboard_0909_episode_000 · t=2585
PSNR model (floor): view 23.5 (20.4) · wrist L 16.1 (13.8) · wrist R 15.5 (16.1) · tactile L 39.4 (38.1) · tactile R 37.6 (36.1)
motherboard_0909_episode_001 · t=402
PSNR model (floor): view 33.3 (31.7) · wrist L 15.7 (13.9) · wrist R 20.0 (21.8) · tactile L 36.2 (34.7) · tactile R 42.7 (40.7)
motherboard_0909_episode_001 · t=783
PSNR model (floor): view 22.5 (20.8) · wrist L 13.3 (12.2) · wrist R 16.1 (13.3) · tactile L 31.2 (29.4) · tactile R 51.6 (44.0)
motherboard_0909_episode_001 · t=1448
PSNR model (floor): view 22.0 (22.9) · wrist L 18.7 (17.3) · wrist R 16.5 (16.8) · tactile L 50.6 (43.9) · tactile R 34.7 (34.0)
motherboard_0909_episode_001 · t=1800
PSNR model (floor): view 23.6 (21.0) · wrist L 23.4 (19.7) · wrist R 20.7 (19.9) · tactile L 49.4 (43.9) · tactile R 32.9 (31.4)
motherboard_0909_episode_001 · t=1977
PSNR model (floor): view 20.7 (18.1) · wrist L 20.2 (17.9) · wrist R 14.5 (14.8) · tactile L 37.5 (36.9) · tactile R 51.1 (43.8)
motherboard_0909_episode_001 · t=2537
PSNR model (floor): view 25.1 (20.5) · wrist L 10.6 (10.8) · wrist R 20.7 (17.9) · tactile L 33.4 (31.6) · tactile R 49.9 (43.9)
motherboard_0909_episode_002 · t=628
PSNR model (floor): view 22.5 (21.2) · wrist L 13.6 (13.3) · wrist R 14.3 (11.3) · tactile L 35.7 (35.2) · tactile R 49.9 (43.7)
motherboard_0909_episode_002 · t=1432
PSNR model (floor): view 23.6 (22.4) · wrist L 13.4 (10.3) · wrist R 16.9 (15.1) · tactile L 41.0 (30.1) · tactile R 28.8 (30.3)
motherboard_0909_episode_002 · t=1797
PSNR model (floor): view 30.3 (26.6) · wrist L 14.8 (13.3) · wrist R 19.1 (15.9) · tactile L 31.1 (30.9) · tactile R 37.7 (35.9)
motherboard_0909_episode_002 · t=1937
PSNR model (floor): view 24.9 (22.9) · wrist L 16.3 (15.1) · wrist R 18.1 (17.5) · tactile L 35.3 (34.0) · tactile R 49.9 (43.7)
motherboard_0911_episode_008_seg00 · t=317
PSNR model (floor): view 26.3 (28.9) · wrist L 19.4 (15.8) · wrist R 20.4 (20.5) · tactile L 30.2 (29.2) · tactile R 52.8 (42.8)
motherboard_0911_episode_008_seg00 · t=382
PSNR model (floor): view 30.7 (26.1) · wrist L 16.8 (13.7) · wrist R 20.4 (18.2) · tactile L 31.0 (32.3) · tactile R 52.8 (42.9)
motherboard_0911_episode_008_seg00 · t=652
PSNR model (floor): view 31.0 (27.7) · wrist L 16.0 (14.8) · wrist R 19.6 (18.9) · tactile L 32.3 (33.9) · tactile R 53.1 (42.9)
motherboard_0912_episode_002 · t=95
PSNR model (floor): view 26.6 (21.7) · wrist L 14.8 (12.4) · wrist R 20.7 (18.3) · tactile L 38.9 (39.3) · tactile R 45.5 (40.6)
motherboard_0912_episode_002 · t=2267
PSNR model (floor): view 27.8 (19.1) · wrist L 19.2 (17.9) · wrist R 16.7 (15.2) · tactile L 36.2 (41.0) · tactile R 48.5 (42.2)
motherboard_0912_episode_002 · t=2698
PSNR model (floor): view 26.8 (19.0) · wrist L 19.3 (17.4) · wrist R 18.3 (17.7) · tactile L 42.0 (38.9) · tactile R 36.1 (35.7)
motherboard_0912_episode_002 · t=2724
PSNR model (floor): view 25.0 (19.0) · wrist L 17.2 (16.3) · wrist R 17.3 (16.7) · tactile L 42.0 (37.0) · tactile R 37.5 (36.4)
motherboard_0912_episode_002 · t=2837
PSNR model (floor): view 26.4 (22.1) · wrist L 16.5 (13.8) · wrist R 18.8 (16.8) · tactile L 51.6 (43.3) · tactile R 41.3 (38.2)
motherboard_0912_episode_002 · t=3099
PSNR model (floor): view 27.7 (23.8) · wrist L 16.9 (15.3) · wrist R 15.6 (13.9) · tactile L 44.0 (40.5) · tactile R 46.8 (41.7)
motherboard_0912_episode_002 · t=4679
PSNR model (floor): view 26.7 (24.2) · wrist L 17.3 (15.7) · wrist R 18.6 (16.7) · tactile L 36.8 (36.2) · tactile R 52.4 (42.9)
motherboard_0912_episode_002 · t=5609
PSNR model (floor): view 26.1 (21.9) · wrist L 18.9 (16.3) · wrist R 18.7 (16.2) · tactile L 39.5 (39.5) · tactile R 41.7 (40.1)
motherboard_0912_episode_002 · t=5644
PSNR model (floor): view 26.5 (22.4) · wrist L 16.7 (15.4) · wrist R 16.4 (13.7) · tactile L 30.6 (34.3) · tactile R 45.8 (41.6)
motherboard_0912_episode_002 · t=5645
PSNR model (floor): view 26.3 (22.6) · wrist L 16.4 (14.3) · wrist R 17.0 (13.9) · tactile L 33.1 (32.9) · tactile R 45.8 (41.2)

onsetno contact at the end of the context, contact at the end of the prediction↑ contents

motherboard_0909_episode_000 · t=284
PSNR model (floor): view 27.7 (26.1) · wrist L 27.4 (27.5) · wrist R 15.1 (11.6) · tactile L 49.4 (43.9) · tactile R 34.4 (34.2)
motherboard_0909_episode_000 · t=858
PSNR model (floor): view 26.3 (26.8) · wrist L 13.4 (13.4) · wrist R 18.0 (15.8) · tactile L 40.4 (39.2) · tactile R 43.0 (40.7)
motherboard_0909_episode_000 · t=1517
PSNR model (floor): view 29.0 (27.8) · wrist L 27.5 (22.9) · wrist R 15.7 (14.4) · tactile L 50.5 (43.8) · tactile R 32.7 (32.5)
motherboard_0909_episode_000 · t=1678
PSNR model (floor): view 23.8 (23.6) · wrist L 15.0 (15.0) · wrist R 14.5 (13.1) · tactile L 38.8 (38.4) · tactile R 33.0 (33.3)
motherboard_0909_episode_000 · t=1774
PSNR model (floor): view 23.5 (23.8) · wrist L 14.7 (11.4) · wrist R 14.3 (14.4) · tactile L 50.9 (44.0) · tactile R 27.5 (31.9)
motherboard_0909_episode_000 · t=1898
PSNR model (floor): view 28.4 (25.7) · wrist L 22.2 (22.4) · wrist R 12.6 (11.2) · tactile L 50.9 (43.8) · tactile R 34.8 (35.9)
motherboard_0909_episode_000 · t=3279
PSNR model (floor): view 22.2 (22.5) · wrist L 16.6 (18.3) · wrist R 14.3 (14.1) · tactile L 50.4 (43.9) · tactile R 33.9 (34.3)
motherboard_0909_episode_001 · t=1292
PSNR model (floor): view 28.7 (26.5) · wrist L 22.8 (18.3) · wrist R 18.2 (14.8) · tactile L 50.6 (43.8) · tactile R 32.7 (32.5)
motherboard_0909_episode_001 · t=1847
PSNR model (floor): view 25.7 (25.1) · wrist L 13.7 (18.2) · wrist R 19.9 (18.1) · tactile L 34.4 (34.5) · tactile R 50.4 (43.8)
motherboard_0909_episode_001 · t=2618
PSNR model (floor): view 27.9 (24.7) · wrist L 26.2 (24.8) · wrist R 13.8 (13.3) · tactile L 49.1 (43.9) · tactile R 33.5 (33.2)
motherboard_0909_episode_001 · t=2711
PSNR model (floor): view 25.6 (25.2) · wrist L 22.5 (22.4) · wrist R 17.5 (16.8) · tactile L 49.2 (43.2) · tactile R 35.3 (34.8)
motherboard_0909_episode_001 · t=3014
PSNR model (floor): view 27.2 (26.4) · wrist L 12.3 (10.5) · wrist R 23.9 (23.7) · tactile L 37.0 (37.5) · tactile R 51.1 (44.0)
motherboard_0909_episode_001 · t=3040
PSNR model (floor): view 30.8 (28.8) · wrist L 10.6 (10.9) · wrist R 25.1 (24.0) · tactile L 36.5 (36.0) · tactile R 50.0 (44.0)
motherboard_0909_episode_002 · t=260
PSNR model (floor): view 23.7 (23.0) · wrist L 29.2 (29.3) · wrist R 14.3 (14.2) · tactile L 48.4 (43.8) · tactile R 33.7 (33.3)
motherboard_0909_episode_002 · t=452
PSNR model (floor): view 28.4 (28.3) · wrist L 21.0 (22.7) · wrist R 13.0 (13.0) · tactile L 47.9 (42.7) · tactile R 32.2 (31.9)
motherboard_0909_episode_002 · t=542
PSNR model (floor): view 23.4 (21.5) · wrist L 18.9 (17.7) · wrist R 11.6 (12.2) · tactile L 50.5 (43.8) · tactile R 32.0 (35.0)
motherboard_0909_episode_002 · t=726
PSNR model (floor): view 25.1 (25.6) · wrist L 12.0 (12.7) · wrist R 19.6 (19.3) · tactile L 38.8 (37.7) · tactile R 51.5 (43.8)
motherboard_0909_episode_002 · t=2790
PSNR model (floor): view 22.8 (21.7) · wrist L 15.3 (15.2) · wrist R 14.1 (13.0) · tactile L 32.4 (32.0) · tactile R 44.9 (41.7)
motherboard_0911_episode_008_seg00 · t=278
PSNR model (floor): view 27.3 (25.5) · wrist L 19.0 (14.7) · wrist R 20.6 (19.4) · tactile L 33.7 (32.9) · tactile R 51.6 (43.0)
motherboard_0911_episode_008_seg00 · t=798
PSNR model (floor): view 31.1 (27.9) · wrist L 14.3 (12.2) · wrist R 23.7 (23.4) · tactile L 30.1 (30.4) · tactile R 50.9 (42.2)
motherboard_0912_episode_002 · t=1145
PSNR model (floor): view 26.0 (22.2) · wrist L 17.7 (12.4) · wrist R 17.3 (11.7) · tactile L 51.7 (43.2) · tactile R 43.1 (40.1)
motherboard_0912_episode_002 · t=1940
PSNR model (floor): view 26.7 (23.6) · wrist L 15.4 (12.8) · wrist R 15.6 (14.1) · tactile L 36.5 (37.5) · tactile R 51.3 (42.5)
motherboard_0912_episode_002 · t=2751
PSNR model (floor): view 25.5 (22.6) · wrist L 17.8 (13.6) · wrist R 16.8 (12.3) · tactile L 52.5 (43.3) · tactile R 38.3 (37.1)
motherboard_0912_episode_002 · t=4246
PSNR model (floor): view 28.3 (26.0) · wrist L 19.0 (14.6) · wrist R 20.8 (19.1) · tactile L 33.1 (34.3) · tactile R 53.1 (42.9)
motherboard_0912_episode_002 · t=5284
PSNR model (floor): view 26.1 (24.1) · wrist L 16.3 (11.3) · wrist R 14.8 (11.7) · tactile L 46.8 (42.2) · tactile R 50.6 (42.4)

releasecontact at the start of the context, no contact at the end of the prediction↑ contents

motherboard_0909_episode_000 · t=837
PSNR model (floor): view 23.3 (22.2) · wrist L 11.1 (8.0) · wrist R 11.7 (10.9) · tactile L 41.8 (29.8) · tactile R 41.6 (35.5)
motherboard_0909_episode_000 · t=2007
PSNR model (floor): view 22.3 (21.1) · wrist L 22.3 (19.4) · wrist R 12.2 (12.0) · tactile L 50.1 (43.9) · tactile R 34.4 (31.1)
motherboard_0909_episode_000 · t=2370
PSNR model (floor): view 23.0 (19.8) · wrist L 15.6 (15.0) · wrist R 14.1 (12.6) · tactile L 50.5 (43.8) · tactile R 38.0 (36.2)
motherboard_0909_episode_000 · t=2397
PSNR model (floor): view 22.5 (20.9) · wrist L 12.2 (10.4) · wrist R 13.8 (13.0) · tactile L 42.0 (39.4) · tactile R 40.2 (37.4)
motherboard_0909_episode_000 · t=2426
PSNR model (floor): view 22.7 (22.2) · wrist L 12.8 (11.6) · wrist R 12.0 (12.0) · tactile L 43.2 (40.9) · tactile R 42.8 (38.6)
motherboard_0909_episode_001 · t=640
PSNR model (floor): view 23.8 (24.4) · wrist L 11.8 (11.2) · wrist R 14.9 (14.3) · tactile L 41.5 (38.5) · tactile R 37.2 (33.7)
motherboard_0909_episode_001 · t=892
PSNR model (floor): view 22.1 (20.1) · wrist L 14.1 (13.3) · wrist R 13.8 (12.5) · tactile L 50.7 (43.8) · tactile R 35.8 (30.0)
motherboard_0909_episode_001 · t=1282
PSNR model (floor): view 29.1 (26.5) · wrist L 19.5 (17.5) · wrist R 15.3 (13.9) · tactile L 50.4 (43.7) · tactile R 39.9 (35.3)
motherboard_0909_episode_001 · t=1923
PSNR model (floor): view 23.3 (21.8) · wrist L 11.9 (11.6) · wrist R 21.7 (18.6) · tactile L 36.1 (29.7) · tactile R 50.4 (43.9)
motherboard_0909_episode_001 · t=2890
PSNR model (floor): view 25.0 (22.8) · wrist L 9.7 (9.5) · wrist R 18.0 (18.7) · tactile L 38.1 (32.5) · tactile R 50.9 (44.0)
motherboard_0909_episode_001 · t=2927
PSNR model (floor): view 23.2 (21.2) · wrist L 10.8 (10.0) · wrist R 20.2 (18.1) · tactile L 39.4 (35.0) · tactile R 50.8 (43.9)
motherboard_0909_episode_002 · t=279
PSNR model (floor): view 24.8 (22.9) · wrist L 25.8 (27.0) · wrist R 14.1 (12.5) · tactile L 46.8 (43.8) · tactile R 42.7 (35.9)
motherboard_0909_episode_002 · t=436
PSNR model (floor): view 25.5 (22.0) · wrist L 23.4 (21.9) · wrist R 11.1 (10.0) · tactile L 49.2 (43.7) · tactile R 44.3 (32.1)
motherboard_0909_episode_002 · t=807
PSNR model (floor): view 22.9 (20.4) · wrist L 13.7 (11.5) · wrist R 16.4 (11.8) · tactile L 38.2 (36.1) · tactile R 51.1 (43.7)
motherboard_0909_episode_002 · t=823
PSNR model (floor): view 21.0 (19.0) · wrist L 19.2 (16.5) · wrist R 10.9 (11.1) · tactile L 50.5 (43.9) · tactile R 39.3 (37.2)
motherboard_0909_episode_002 · t=1480
PSNR model (floor): view 22.7 (21.7) · wrist L 16.6 (14.6) · wrist R 12.2 (11.0) · tactile L 49.2 (43.6) · tactile R 33.9 (28.4)
motherboard_0909_episode_002 · t=1740
PSNR model (floor): view 32.5 (31.7) · wrist L 24.9 (24.5) · wrist R 15.7 (16.6) · tactile L 50.2 (43.9) · tactile R 43.2 (35.9)
motherboard_0909_episode_002 · t=2528
PSNR model (floor): view 26.5 (24.3) · wrist L 10.7 (9.6) · wrist R 23.1 (23.9) · tactile L 37.7 (30.8) · tactile R 50.4 (44.0)
motherboard_0909_episode_002 · t=2696
PSNR model (floor): view 21.3 (19.9) · wrist L 15.4 (13.0) · wrist R 10.7 (11.0) · tactile L 48.9 (43.2) · tactile R 41.8 (35.7)
motherboard_0909_episode_002 · t=2769
PSNR model (floor): view 20.6 (19.7) · wrist L 14.2 (13.0) · wrist R 14.5 (14.0) · tactile L 40.4 (34.8) · tactile R 34.4 (28.3)
motherboard_0912_episode_002 · t=1300
PSNR model (floor): view 23.9 (20.8) · wrist L 21.6 (17.3) · wrist R 16.9 (15.1) · tactile L 46.6 (41.8) · tactile R 49.6 (41.9)
motherboard_0912_episode_002 · t=2206
PSNR model (floor): view 26.7 (22.4) · wrist L 18.4 (13.2) · wrist R 17.0 (15.3) · tactile L 48.1 (38.3) · tactile R 42.9 (40.6)
motherboard_0912_episode_002 · t=3878
PSNR model (floor): view 26.5 (23.5) · wrist L 16.1 (12.1) · wrist R 16.6 (13.1) · tactile L 48.7 (41.9) · tactile R 49.5 (42.4)
motherboard_0912_episode_002 · t=5795
PSNR model (floor): view 28.2 (26.9) · wrist L 16.2 (14.1) · wrist R 19.2 (15.3) · tactile L 38.4 (35.1) · tactile R 45.1 (40.1)
motherboard_0912_episode_002 · t=6102
PSNR model (floor): view 24.3 (22.2) · wrist L 15.2 (8.8) · wrist R 19.4 (11.6) · tactile L 47.4 (37.0) · tactile R 49.3 (41.1)
05

Long-horizon rollout

8 s free-running, one continuous timeline each

How it runsThe first window is predicted from the recorded context. After that the model's own decoded frames become the next history (decode → re-encode → predict), so the images never see ground truth again. Each window is conditioned on the actions actually executed then — given this action sequence, what do the cameras and gels see? All 32 rollouts ran the full 15 windows; 8 representative ones (2 per class) are shown here as video.
Reading a videoEach stream plays GT on top, the model's prediction below, at 15 fps (~8.5 s total). The badge marks context (recorded, identical in both rows) versus predicted — from there the PRED row never sees ground truth again. Recorded force runs underneath with a moving playhead.

noneno contact in any of the 16 frames at the start↑ contents

motherboard_0909_episode_000 · t=14 · 15 chained windows, 8 s predicted
motherboard_0909_episode_000 · t=1266 · 15 chained windows, 8 s predicted

fullin contact for at least 80% of the 16 frames at the start↑ contents

motherboard_0909_episode_000 · t=1468 · 15 chained windows, 8 s predicted
motherboard_0909_episode_000 · t=2585 · 15 chained windows, 8 s predicted

onsetno contact at the end of the context, contact at the end of the prediction at the start↑ contents

motherboard_0909_episode_000 · t=284 · 15 chained windows, 8 s predicted
motherboard_0909_episode_000 · t=858 · 15 chained windows, 8 s predicted

releasecontact at the start of the context, no contact at the end of the prediction at the start↑ contents

motherboard_0909_episode_000 · t=837 · 15 chained windows, 8 s predicted
motherboard_0909_episode_000 · t=2007 · 15 chained windows, 8 s predicted