Note
This is a Hugging Face dataset. For large datasets, ensure huggingface_hub>=1.1.3 to avoid rate limits. Learn more in the Hugging Face integration docs.
Dataset Card for Xense Tron2 RT Pick and Place (115 episodes)#

This is a FiftyOne dataset with 115 samples. Each sample is one teleoperated episode.
Installation#
pip install -U fiftyone
Usage#
Load from the Hub#
import fiftyone as fo
from fiftyone.utils.huggingface import load_from_hub
dataset = load_from_hub("Voxel51/xense-tron2rt-pnp-115ep")
session = fo.launch_app(dataset)
Download a snapshot and load it locally#
import fiftyone as fo
from huggingface_hub import snapshot_download
snapshot_download(
repo_id="Voxel51/xense-tron2rt-pnp-115ep",
repo_type="dataset",
local_dir="xense-tron2rt-pnp-115ep",
)
dataset = fo.Dataset.from_dir(
dataset_dir="xense-tron2rt-pnp-115ep",
dataset_type=fo.types.LeRobotDataset,
name="xense_tron2rt_pnp",
)
session = fo.launch_app(dataset)
Dataset Details#
Dataset Description#
115 teleoperated episodes (48,999 frames, 30 fps) on robot type tron2_rt. The task is “Put the block into the box”. Each episode has three RGB camera streams, four tactile video streams (left and right sensor on each side), and 20-D TCP state and action. The source is a LeRobot v3.0 repo recorded with the Xense LeRobot fork.
Shared by:
Xenseon Hugging FaceLanguage(s): en
License: apache-2.0
Dataset Sources#
Repository: https://huggingface.co/datasets/Xense/tron2rt-pnp-0918
Dataset Structure#
Topology. media_type: multimodal, 115 samples, one per episode, 30 fps, 321-666 frames (10.7-22.2 s), 48,999 frames total. Samples hold a media_reference to the per-frame parquet data and 7 video streams.
Field |
FiftyOne type |
Description |
|---|---|---|
|
|
Pointers into |
|
|
Episode index (0-114) |
|
|
The single task instruction |
|
|
All task strings of the episode |
|
|
Frames in the episode |
|
|
Episode duration in seconds |
|
|
|
|
|
30 |
Data behind media_reference (per-frame, from meta/info.json):
Feature |
Shape |
Description |
|---|---|---|
|
(20,) |
Bimanual TCP: |
|
(20,) |
Same 20 names and layout as |
|
480x640x3 |
RGB cameras (H.264 yuv420p) |
|
400x700x3 |
Four tactile video streams (H.264 yuv420p) |
Label types and why. The importer produces episode-level samples with a media_reference; numeric streams (state, action) are read through the viewer and are not stored as FiftyOne label fields. The source has a single task, so task is constant. No custom fields were added, so the FiftyOne dataset matches what the LeRobot export contains.
dataset.info. lerobot entry with format, format_major, episode_count, imported_episode_count, skipped_episodes (empty).
Parsing decisions.
All episodes imported from the full repo (2.5 GB). No source file was modified, and no transcoding or metadata repair was needed.
All 7 video streams were imported; no modality was excluded. All streams are standard H.264 yuv420p.
The source does not state the tactile sensor model or the physical meaning of the tactile images.
Dataset Creation#
Source Data#
Data Collection and Processing#
The source card states only that it was created using LeRobot.
Annotations#
Annotation process#
A single task string is stored in meta/tasks.parquet.