ACT (Action Chunking with Transformers) policy trained with LeRobot 0.6.1. A ROBOTIS OMX follower arm picks up a tomato and puts it into a bin, using two USB cameras (top and wrist).
OMX 팔로워로 토마토를 집어 통에 넣는 ACT 정책이다. 수업 실습용 소규모 모델이다.
| Item | Value |
|---|---|
| Policy | ACT, resnet18 backbone, chunk_size 100, VAE on |
| Training data | minodori/omx_tomato (50 episodes, 34,432 frames, 30 fps) |
| Training | 30,000 steps, batch size 8, seed 1000 |
| Inputs | observation.state (6 joints), observation.images.top, observation.images.wrist (640x480, 30 fps) |
| Output | action (6 joints: pan, lift, elbow, wrist_flex, wrist_roll, gripper) |
| Hardware | OMX leader (teleoperation) and OMX follower, 2 USB cameras |
The tomato was placed at 5 positions during recording (10 episodes each).
from lerobot.policies.act.modeling_act import ACTPolicy
policy = ACTPolicy.from_pretrained("minodori/omx_tomato_act")
For real-robot rollout, enable temporal ensembling. The saved config has it off (chunk_size 100 = 3.3 s at 30 fps), and without it the arm jumps at every chunk boundary. Pass these options to the rollout command:
--policy.temporal_ensemble_coeff=0.01 --policy.n_action_steps=1
Temporal ensembling runs inference every step, so it needs a GPU (about 15 ms per inference on an RTX 5060 Laptop; about 200 ms on CPU, too slow for a 30 fps loop).
This model is sensitive to how the deployment setup differs from the recording.
| Position | Result |
|---|---|
| 1 (center) | gripper lands slightly right of the tomato (under 20 mm, not measured precisely); the wide-open gripper still grasps it in most trials; 4 of 5 grasps succeeded |
| 3 | about 10 mm right; succeeded |
| 4 | about 10 mm right; 3 of 3 succeeded |
| 5, 6 | almost no offset; succeeded |
| untrained points between 1-3 and 1-6 | succeeded |
Not tested: other objects, other tables, other lighting, a different camera mount. Wrist roll barely varies in the training data, so rotated objects will likely fail.
Real-robot rollouts with the final settings (1080p, about 20 seconds each, filmed by hand, so the view moves):
The files are in the assets/ folder of this repository. They are HEVC (H.265)
mp4 files. Some browsers cannot play HEVC; if the link does not play, download
the file and open it with a video player.
Train with the dataset above using lerobot-train (policy type act,
30,000 steps, batch size 8). The scripts used for recording, training, and
rollout are in the GitHub repository
minodori/omx-tomato-act.
model.safetensors 207 MBpolicy_preprocessor_step_3_normalizer_processor.safetensors 7.5 kBpolicy_postprocessor_step_0_unnormalizer_processor.safetensors 7.5 kB