Tele-Catch: Adaptive Teleoperation for Dexterous Dynamic 3D Object Catching
Organizations: University of Liverpool · Xi’an Jiaotong-Liverpool University · Shanghai AI Lab · Zhejiang University ·
Abstract
Teleoperation is a key paradigm for transferring human dexterity to robots, yet most prior work targets objects that are initially static, such as grasping or manipulation. Dynamic object catch, where objects move before contact, remains underexplored. Pure teleoperation in this task often fails due to timing, pose, and force errors, highlighting the need for shared autonomy that combines human input with autonomous policies. To this end, we present Tele-Catch, a systematic framework for dexterous hand teleoperation in dynamic object catching. At its core, we design DAIM, a dynamics-aware adaptive integration mechanism that realizes shared autonomy by fusing glove-based teleoperation signals into the diffusion policy denoising process. It adaptively modulates control based on the interaction object state. To improve policy robustness, we introduce DP-U3R, which integrates unsupervised geometric representations from point cloud observations into diffusion policy learning, enabling geometry-aware decision making. Extensive experiments demonstrate that Tele-Catch significantly improves accuracy and robustness in dynamic catching tasks, while also exhibiting consistent gains across distinct dexterous hand embodiments and previously unseen object categories.
Figures & tables
| Method | Venue | Shared-Aut. | Deployment | Dynamic-Cat. | Visual | Unseen-Obj. | Hand-Types | DOF |
|---|---|---|---|---|---|---|---|---|
| DSA [ 25 ] | TRO’16 | ✗ | Sim.+Real | ✓ | 2D | ✗ | Single | 16 |
| Bi-DexHands [ 2 ] | TPAMI’23 | ✗ | Sim. | ✓ | 3D | ✗ | Single | 16 |
| DP3 [ 35 ] | RSS’24 | ✗ | Sim.+Real | ✗ | 3D | ✗ | Single | 16 |
| DexterityGen [ 33 ] | RSS’25 | Fixed | Sim.+Real | ✗ | ✗ | ✓ | Single | 16 |
| DexHandDiff [ 23 ] | CVPR’25 | ✗ | Sim. | ✗ | ✗ | ✗ | Single | 24 |
| Tele-Catch (Ours) | – | Adaptive | Sim.+Real | ✓ | 3D | ✓ | Multi | 16/24 |
| Methods | Ball | Bear | Cookie | Cup | Fish | Ipod | Showerhead | Teapot | Truck | Vase | Mean |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Tele-Pure | 20.0 | 46.7 | 80.0 | 26.7 | 6.7 | 13.3 | 60.0 | 33.3 | 46.7 | 20.0 | 35.3 |
| Tele-Catch | 46.7 | 53.3 | 80.0 | 46.7 | 20.0 | 13.3 | 80.0 | 86.7 | 73.3 | 46.7 | 54.7 |
| Ball | Bear | Cookie | Cup | Fish | Ipod | Showerhead | Teapot | Truck | Vase | |
|---|---|---|---|---|---|---|---|---|---|---|
| DP | 0.152 | 0.145 | 0.158 | 0.139 | 0.136 | 0.155 | 0.156 | 0.156 | 0.161 | 0.140 |
| DP3 | 0.150 | 0.143 | 0.157 | 0.133 | 0.136 | 0.155 | 0.159 | 0.152 | 0.159 | 0.136 |
| DP-U3R | 0.150 | 0.142 | 0.155 | 0.129 | 0.136 | 0.154 | 0.154 | 0.152 | 0.158 | 0.134 |
| Open-Loop | RL | Tele-Pure | Tele-Catch(DP [ 7 ] ) # | Tele-Catch(DP3 [ 35 ] ) | Tele-Catch(DP-U3R) | |
|---|---|---|---|---|---|---|
| SR | 46. 7 | 33.3 | 46.7 | 60.0 | 66.7 | 73.3 |
| Objects | ShadowHand | LinkerHand-L20 | Seen | Unseen | Tele-Pure | Tele-Catch |
| Teapot | ✓ | ✓ | 33.3 | 86.7 | ||
| Teapot | ✓ | ✓ | 40.0 | 73.3 | ||
| Eraser | ✓ | ✓ | 53.3 | 66.7 | ||
| Telephone | ✓ | ✓ | 46.7 | 53.3 | ||
| Bottle | ✓ | ✓ | 20.0 | 33.3 |
| Component | Symbol | Coefficient | Coefficient Value |
|---|---|---|---|
| Hand–object distance reward | 10.0 | ||
| Object orientation reward | 0.1 | ||
| Fingertip–object distance reward | 10.0 | ||
| Fingertip linear velocity penalty | 0.3 | ||
| Fingertip angular velocity penalty | 0.03 | ||
| Action penalty |
| Category | Hyperparameters |
|---|---|
| General | Random seed = 22, Observation clipping = 5.0, Action clipping = 1.0 |
| Policy Network | Actor hidden layers = [1024, 1024, 512] |
| Critic hidden layers = [1024, 1024, 512], Activation = ELU | |
| Training Setup | Maximum iterations = 6500, Schedule = adaptive, Save interval = 1000 |
| Optimization | Rollout steps = 8, Epochs per update = 5, Minibatches per epoch = 4 |
| Max gradient norm = 1, Learning rate = |
| Category | Key Parameters |
|---|---|
| Environment | numEnvs = 8192, envSpacing = 0.75, episodeLength = 50 |
| Control | dofSpeedScale = 20, controlFrequency = 60 Hz |
| Noise (init/reset) | posNoise = 0.01, dofPosRandom = 0.2 |
| Task Success | successTolerance = 0.1 |
| Randomization | hand/object mass [0.5, 1.5], friction [0.7, 1.3], object scale [0.95, 1.05] |
| Physics (PhysX) | solver = TGS, numPosIter = 8, contactOffset = 0.002, bounceThreshold = 0.2 |
Robot Teleoperation
Robot teleoperation studies how people remotely control robots through interfaces, sensing, feedback, and autonomy, despite distance, delay, and embodiment gaps.
See all 206 papers