CoolFace
Datasetpublic

chengyuanshu98/fastumi_raw_dataset_bottle

FastUMI Bottle Pick-and-Place Dataset (Raw) Overview 45 episodes of bottle pick-and-place teleoperation data collected with FastUMI Pro on R1Pro (26') humanoid robot. Task: Pick up a bottle from the table, place it at another location, return to start. Six categories covering local/mobile/back modes and normal/fast speeds: Category Mode Speed Episodes Total Frames Total Duration Avg Duration local_standard Local (base fixed) Normal 10 4473 149.1s 14.9s… See the full description on the dataset page: https://huggingface.co/datasets/chengyuanshu98/fastumi_raw_dataset_bottle.

sourceHugging Faceupdated 4mo agoView on Hugging Face
0likes2downloads
Dataset Card

FastUMI Bottle Pick-and-Place Dataset (Raw)

Overview

45 episodes of bottle pick-and-place teleoperation data collected with FastUMI Pro on R1Pro (26') humanoid robot.

Task: Pick up a bottle from the table, place it at another location, return to start.

Six categories covering local/mobile/back modes and normal/fast speeds:

CategoryModeSpeedEpisodesTotal FramesTotal DurationAvg Duration
local_standardLocal (base fixed)Normal104473149.1s14.9s
local_fastLocal (base fixed)Fast5101133.7s6.7s
mobile_standardMobile (cross-table)Normal104339144.6s14.5s
mobile_fastMobile (cross-table)Fast5127842.6s8.5s
back_standardBack (turn & place behind)Normal104703156.8s15.7s
back_fastBack (turn & place behind)Fast5153851.3s10.3s
  • —Active hand: Left hand
  • —Recording frequency: 30 Hz
  • —Total: 45 episodes, 17342 frames, 578s, ~868 MB

Directory Structure

bottle_raw_dataset/
  local_standard/     # 10 episodes, base fixed, normal speed
    episode_01.hdf5
    ...
    episode_10.hdf5
  local_fast/          # 5 episodes, base fixed, fast speed
    episode_01.hdf5
    ...
    episode_05.hdf5
  mobile_standard/     # 10 episodes, cross-table, normal speed
    episode_01.hdf5
    ...
    episode_10.hdf5
  mobile_fast/          # 5 episodes, cross-table, fast speed
    episode_01.hdf5
    ...
    episode_05.hdf5
  back_standard/        # 10 episodes, turn & place behind, normal speed
    episode_01.hdf5
    ...
    episode_10.hdf5
  back_fast/             # 5 episodes, turn & place behind, fast speed
    episode_01.hdf5
    ...
    episode_05.hdf5
  README.md

Data Format

Each episode_XX.hdf5 contains:

attributes:
  task            str       e.g. "standard_1"
  batch           str       e.g. "standard"
  category        str       e.g. "local_standard"
  num_steps       int       number of frames
  record_freq_hz  int       30
  success         bool      True
  image_size      int       320
  image_compression str     "jpeg"

datasets:
  timestamps                          (N,)            float64
  raw_input/
    fastumi_pose_left                 (N, 7)          float64   [px,py,pz,qx,qy,qz,qw]
    fastumi_pose_right                (N, 7)          float64
    clamp_left                        (N,)            float64   0~90
    clamp_right                       (N,)            float64   0~90
  observations/images/
    wrist_left_rgb                    (N, max_len)    uint8     JPEG bytes (320x320)
    wrist_left_rgb_len                (N,)            int32     valid length per frame
    wrist_right_rgb                   (N, max_len)    uint8     JPEG bytes (320x320)
    wrist_right_rgb_len               (N,)            int32     valid length per frame

Decoding JPEG images

python
import h5py, numpy as np, cv2

f = h5py.File("local_standard/episode_01.hdf5", "r")
jpeg_data = f["observations/images/wrist_right_rgb"]
jpeg_lens = f["observations/images/wrist_right_rgb_len"]

frame_idx = 0
buf = jpeg_data[frame_idx, :jpeg_lens[frame_idx]]
img = cv2.imdecode(np.frombuffer(buf, np.uint8), cv2.IMREAD_COLOR)  # (320, 320, 3) BGR

Collection Setup

  • —Robot: R1Pro 26' (Galaxea)
  • —Device: FastUMI Pro (dual handheld SLAM + gripper sensor + RGB camera)
  • —Right serial: SN250801DR48FP25002313
  • —Left serial: SN250801DR48FP25002692
  • —Trigger: Double-click gripper to start/stop recording
  • —SLAM coordinate: X=left, Y=down, Z=forward (camera direction)
  • —Collector script: fastumi_collector.py

Category Details

local_standard

Standard pick-and-place at a single table. Robot base fixed. Right hand reaches forward, grabs bottle, moves to another position on the same table, places bottle, returns.

local_fast

Same task as local_standard but performed at higher speed. Tests fast motion tracking capability.

mobile_standard

Cross-table pick-and-place. Involves walking/turning with the bottle. Right hand grabs bottle from one table, carries it to another table, places it, and returns.

mobile_fast

Same task as mobile_standard but performed at higher speed.

back_standard

Turn-and-place-behind task. Left hand grabs bottle from front table, turns body ~180°, places bottle on the table behind, then turns back and returns to start position.

back_fast

Same task as back_standard but performed at higher speed.