Team Ai
Modelpublic

wsagi/FlowHeads-DiffusionPolicy-Real-PickOrange

sourceHugging Faceapache-2.0updated 3mo agoView on Hugging Face
0likes13downloads
Model Card

FlowHeads-DiffusionPolicy-Real-PickOrange — SO-101 真机抓橙子(sim-warm-start,FlowDP 真机 best)

真机 SO-101 pick-orange 的 FlowDP(conv-UNet × rectified-flow head)best checkpoint:从仿真 best wsagi/FlowHeads-DiffusionPolicy-PickOrange(仿真榜 45.0%)warm-start,用 wsagi/leisaac-real-pick-orange(30 集真机遥操演示)续训 7000 步(≈4.5 epoch)。

FlowDP (conv-UNet backbone × rectified-flow head) for real-world SO-101 pick-and-place: warm-started from our sim-best FlowDP checkpoint, fine-tuned for 7000 steps on 30 real teleoperation episodes. Real-arm score even beats its own sim score (56.7% vs 45.0% oranges/ep).

<video src="https://huggingface.co/wsagi/FlowHeads-DiffusionPolicy-Real-PickOrange/resolve/main/FlowDP-Real-PickOrange.mp4" controls muted loop></video>

真机结果 / Real-arm results(2026-07-13)

每轮场景放 3 只橙子,记每轮放入盘中的橙子数。Each round has 3 oranges on the table; we count oranges placed on the plate per round.

策略 / Policy轮次成绩 / Per-round均值 / Mean
本模型(FlowDP simwarm 7000)/ this model2, 2, 3, 1, 1, 2, 0, 3, 2, 1(10 轮)1.7 只/轮(56.7%)
ACT simwarm 5000(wsagi/ACT-Real-PickOrange)2, 1, 1, 3, 2, 1, 0, 1, 2, 2(10 轮)1.5 只/轮
FlowDP 从零 9000 / from-scratch能抓取,放置不稳 / grasps, unstable placement
  • —放入 ≥1 只的轮 9/10,两轮 3 只满放。真机 56.7% 甚至超过同模型的仿真榜成绩 45.0%。
  • —sim-warm-start 再次变现(与 ACT 线结论一致),且 FlowDP simwarm 反超 ACT simwarm(1.7 vs 1.5 只/轮)成为真机全场 best。

场景 / Scene

顶部相机视角(真机布置)/ top-camera view of the real setup:

[image]

配方 / Recipe

项值
架构 / ArchFlowDP = lerobot DiffusionPolicy conv-UNet 骨干 × rectified-flow head(DDPM→flow 替换;horizon 16 / nactionsteps 8 / nobssteps 2)
initwsagi/FlowHeads-DiffusionPolicy-PickOrange(仿真 strict 20-round 45.0% best,step-9800)
数据 / Datawsagi/leisaac-real-pick-orange 30 集 / 25,091 帧 @30fps
续训 / Fine-tune7000 步(≈4.5 ep),lr 1e-4,batch 16,原生 480×640
观测 / Obsfront + wrist 相机 640×480 + 6 维关节位置

用法 / Usage

代码在 vitorcen/LeIsaac-Training 的 FlowHeads/ 子包(flowdp 是自定义 policy type,需先注册再 from_pretrained):

python
import sys; sys.path.insert(0, "<repo>/dependencies/FlowHeads")
import flowdp.configuration_flowdp  # registers type="flowdp"
from flowdp.modeling_flowdp import FlowDPPolicy

policy = FlowDPPolicy.from_pretrained("wsagi/FlowHeads-DiffusionPolicy-Real-PickOrange")

相关项目 / Related projects

  • —<https://github.com/vitorcen/isaaclab-experience> — 伞仓:多 VLA 基线训练/评测全记录
  • —<https://github.com/vitorcen/LeIsaac-Training> — LeIsaac:SO-101 PickOrange 训练 / benchmark / 真机脚手架