scalexi/smolvla-raise2026-ripeness-ref
SmolVLA — RAISE 2026 greenhouse ripeness-sorting (reference model)
Fine-tuned SmolVLA-450M for the RAISE 2026 Summer School (ENET'Com Sfax, July 2026) Day-2 lab: a UR5e + Robotiq 2F-85 on a Husky base, parked at a tomato plant row in Gazebo Harmonic, executing "pick the red tomato" among green distractors from a single wrist camera.
The policy learned an active-perception scan: look above the left grasp spot — if the tomato there is red, descend and pick; if green, pan right and pick there.
Results (Lab-2.2 evaluator, live sim rollouts)
Training
- Data: 49 auto-demonstrated scan episodes (4228 frames @ 10 Hz, 224×224 wrist RGB + 7-float state/action), recorded under a deterministic base-parking protocol. Dataset + full pipeline: aniskoubaa/raise2026-student
- Recipe:
lerobot-train, 6000 steps, batch 64, ~1.5 h on a 16 GB RTX 4090 laptop, wrist camera mapped toobservation.images.camera1via--rename_map
Use
from lerobot.policies.smolvla.modeling_smolvla import SmolVLAPolicy
policy = SmolVLAPolicy.from_pretrained("scalexi/smolvla-raise2026-ripeness-ref")Inputs: observation.images.camera1 (224×224 RGB), observation.state (6 UR5e joint angles + gripper 0..0.5), a language instruction. Output: 7-float action (6 joint targets + gripper). Use the bundled pre/post processors (make_pre_post_processors(policy.config, pretrained_path=...)) — they hold the tokenizer and the dataset normalization stats.
Author: Prof. Anis Koubaa <anis.koubaa@gmail.com>
