遇见数据集

djkesu/tshirt-folding

收藏
Hugging Face2026-03-26 更新2026-03-29 收录
官方服务:

资源简介:

--- pretty_name: T-Shirt Folding Mixed Manifest tags: - robotics - imitation-learning - lerobot - openpi task_categories: - other size_categories: - n<1K --- # T-Shirt Folding Mixed Manifest This repo is a lightweight manifest for a public T-shirt folding collection built from five source datasets: - `Gongsta/trlc_tshirt_folding` - `Gongsta/trlc_tshirt_folding_impedance` - `Gongsta/dagger_dk1_tshirt_corrections` - `Gongsta/krish-simpler-tshirt` - `Gongsta/e7-tshirt-folding` The goal is to provide one clean public entrypoint while preserving each source dataset at its highest native frame rate. ## Project Background This dataset card was created from data collected across Waterloo for the University of Waterloo Software Engineering capstone by team members Eddy Zhou, Steven Gong, Krish Shah, and Krish Mehta. We used these datasets to train a laundry-folding robot by fine-tuning the base Pi-0.5 model, including runs that incorporated DAgger corrections. In practice, we saw strong qualitative accuracy and reasonable generalization across two environments and different T-shirts. We were not highly rigorous about exact benchmark evaluation, so this collection should be treated more as a practical public starting point than as a tightly standardized benchmark. The hope is that it helps other people train stronger models with more careful evaluation and higher final precision. ## Best Observed Recipe In our own experiments, the best model quality we observed came from: - training at `50 Hz` - using impedance-control data - `batch_size=32` - `5000` training steps - `4x A100` - training on `Gongsta/e7-tshirt-folding` That result should be treated as an empirical recipe from our runs, not a universal rule. ## What Is In This Repo Each row in `data/train.jsonl` describes one source dataset and includes: - `source_repo` - `source_tag` - `native_fps` - `is_dagger` - `is_impedance` - `scene_type` - `shirt_layout` - `recommended_common_fps` This repo does **not** duplicate the source videos. It is a manifest / collection layer that documents provenance and intended loading behavior. ## Source Tags - `apartment_original_multi_shirt` - `apartment_impedance_multi_shirt` - `multi_shirt_dagger_corrections` - `apartment_single_shirt` - `building_single_shirt` ## Recommended Loading If you want to combine all five datasets with exact-stride downsampling and no interpolation, use: - `target_fps = 10` Why: - `30 -> 10` is exact stride `3` - `50 -> 10` is exact stride `5` If you want to keep native FPS, load the listed source repos directly and treat this dataset as the metadata / provenance index. ## Using Standard LeRobot Loaders This repo is intended for users who may only have the standard LeRobot dataset tools, not our internal training code. The simplest pattern is: 1. read `data/train.jsonl` from this manifest repo 2. choose the source repos you want 3. load those source repos directly with `LeRobotDataset` 4. decide whether to keep native FPS or resample to a common target FPS yourself If you want a common timebase across all five datasets, our recommendation is: - downsample everything to `10 Hz` - use exact stride downsampling where possible Recommended exact-stride logic: - `30 Hz -> 10 Hz`: keep every `3rd` frame/state/action - `50 Hz -> 10 Hz`: keep every `5th` frame/state/action This avoids interpolation entirely for the current dataset set. If you want to upsample instead, we recommend: - interpolate proprioceptive signals such as state and action sequences - use nearest-frame selection for images rather than inventing intermediate video frames For most users, exact-stride downsampling is the simpler and more reproducible choice. ## Notes - `Gongsta/trlc_tshirt_folding` is the only `30 Hz` source. - `Gongsta/dagger_dk1_tshirt_corrections` is the DAgger dataset and is `50 Hz`. - The other listed sources are `50 Hz`. ## Example: Load Through This Manifest ```python from datasets import load_dataset from lerobot.datasets.lerobot_dataset import LeRobotDataset manifest = load_dataset("djkesu/tshirt-folding", split="train") # Example: choose all native-50Hz, non-dagger datasets selected = manifest.filter( lambda row: row["native_fps"] == 50 and not row["is_dagger"] ) repo_ids = [row["source_repo"] for row in selected] datasets = [LeRobotDataset(repo_id=repo_id) for repo_id in repo_ids] ``` ## Example: Use All Listed Source Datasets ```python from datasets import load_dataset manifest = load_dataset("djkesu/tshirt-folding", split="train") repo_ids = [row["source_repo"] for row in manifest] # For an exact-stride common timebase across all five: target_fps = 10 ```

--- pretty_name: T恤折叠混合清单 tags: - 机器人学 - 模仿学习 - LeRobot数据集(LeRobot) - OpenPI task_categories: - 其他 size_categories: - 样本数小于1000 --- # T恤折叠混合清单 本仓库为公开T恤折叠数据集集合的轻量清单,该集合整合自5个源数据集: - `Gongsta/trlc_tshirt_folding` - `Gongsta/trlc_tshirt_folding_impedance` - `Gongsta/dagger_dk1_tshirt_corrections` - `Gongsta/krish-simpler-tshirt` - `Gongsta/e7-tshirt-folding` 其目标是提供一个简洁的公开入口点,同时保留每个源数据集的最高原生帧率。 ## 项目背景 本数据集卡片由滑铁卢大学软件工程专业的毕业设计团队成员Eddy Zhou、Steven Gong、Krish Shah与Krish Mehta,基于滑铁卢校园采集的数据制作而成。我们借助这些数据集,通过对基础Pi-0.5模型进行微调来训练洗衣折叠机器人,其中包含了集成DAgger算法(DAgger)修正的训练流程。 实际应用中,我们在两种环境与多款T恤上均取得了优异的定性精度与合理的泛化能力。由于我们未对基准评估进行严格严谨的标准化处理,因此该数据集集合更应被视为实用的公开起点,而非严格标准化的基准测试集。我们期望该集合能够助力其他研究者开展更严谨的评估,训练出精度更高的模型。 ## 最优实验配置 在我们的实验中,取得最优模型性能的配置如下: - 训练帧率设置为50Hz - 使用阻抗控制数据 - 批次大小(batch_size)设为32 - 训练步数为5000 - 采用4块A100 GPU - 在`Gongsta/e7-tshirt-folding`数据集上训练 该配置仅为我们实验中的经验性方案,并非通用准则。 ## 本仓库内容 `data/train.jsonl`中的每一行对应一个源数据集,包含以下字段: - `source_repo`:源仓库标识 - `source_tag`:源数据集标签 - `native_fps`:原生帧率 - `is_dagger`:是否为DAgger数据集 - `is_impedance`:是否为阻抗控制数据集 - `scene_type`:场景类型 - `shirt_layout`:T恤摆放布局 - `recommended_common_fps`:推荐统一帧率 本仓库**不会**复制源视频文件,仅作为清单/集合层,用于记录数据集的来源信息与预期加载方式。 ## 源数据集标签 - `apartment_original_multi_shirt`:公寓环境多T恤场景 - `apartment_impedance_multi_shirt`:公寓环境阻抗控制多T恤场景 - `multi_shirt_dagger_corrections`:多T恤DAgger修正场景 - `apartment_single_shirt`:公寓环境单T恤场景 - `building_single_shirt`:楼宇环境单T恤场景 ## 推荐加载方式 若需将全部5个数据集通过精确步降下采样且不进行插值的方式进行融合,可采用: - `target_fps = 10` 原因如下: - 30Hz降至10Hz的精确步长为3 - 50Hz降至10Hz的精确步长为5 若需保留原生帧率,可直接加载所列源仓库,并将本数据集视为元数据/来源索引。 ## 使用标准LeRobot加载器 本仓库面向仅需使用标准LeRobot数据集工具(而非我们的内部训练代码)的用户。最简操作流程如下: 1. 从本清单仓库中读取`data/train.jsonl` 2. 选择所需的源仓库 3. 通过`LeRobotDataset`直接加载这些源仓库 4. 自行决定保留原生帧率,还是将其重采样为统一目标帧率 若需为全部5个数据集设置统一的时间基准,我们推荐: - 将所有数据下采样至10Hz - 尽可能采用精确步长的下采样方式 推荐的精确步长规则如下: - 30Hz转10Hz:保留每第3帧/状态/动作数据 - 50Hz转10Hz:保留每第5帧/状态/动作数据 该方式可完全避免当前数据集集合中的插值操作。 若需进行上采样,我们推荐: - 对状态、动作序列等本体感受信号进行插值 - 对图像采用最近邻帧选择,而非生成中间视频帧 对于多数用户而言,精确步长下采样是更简单且可复现的选择。 ## 注意事项 - `Gongsta/trlc_tshirt_folding`是唯一的30Hz源数据集。 - `Gongsta/dagger_dk1_tshirt_corrections`为DAgger数据集,帧率为50Hz。 - 其余所列源数据集的帧率均为50Hz。 ## 示例:通过本清单加载数据集 python from datasets import load_dataset from lerobot.datasets.lerobot_dataset import LeRobotDataset # 加载本清单仓库的训练集拆分 manifest = load_dataset("djkesu/tshirt-folding", split="train") # 示例:选择所有原生帧率为50Hz且非DAgger的数据集 selected = manifest.filter( lambda row: row["native_fps"] == 50 and not row["is_dagger"] ) repo_ids = [row["source_repo"] for row in selected] # 获取选中的源仓库ID列表 datasets = [LeRobotDataset(repo_id=repo_id) for repo_id in repo_ids] # 通过LeRobotDataset加载各源数据集 ## 示例:使用所有列示源数据集 python from datasets import load_dataset manifest = load_dataset("djkesu/tshirt-folding", split="train") repo_ids = [row["source_repo"] for row in manifest] # 获取所有列出来的源仓库ID列表 # 为全部5个数据集设置统一时间基准,采用精确步降下采样: target_fps = 10

提供机构:
djkesu
二维码
社区交流群
二维码
科研交流群
商业服务