Zarr 格式
Zarr进阶把大型多维数组切块压缩存储的开源格式,扩散策略和 UMI 用它存训练数据。
一种开源的分块、压缩 N 维数组存储格式,由社区维护、NumFOCUS 做财务托管,有 v2、v3 两版规范,Python、Rust、C++、JavaScript 等十种语言有实现,最早在气候、生物成像等科学数据领域流行。它把大数组切成许多小块(chunk)分别压缩,读某一段时只解压对应的块;数据可放在本地目录、zip 文件或云对象存储里,支持并行读写。概念上可以理解成「嵌套的 numpy 数组字典」,定位接近 HDF5,但存储后端、分块和压缩方式更灵活。机器人学习里,扩散策略(Diffusion Policy)的代码用 Zarr 存训练数据,UMI 沿用这一做法,把一次采集会话打包成单个 dataset.zarr.zip,方便训练时快速随机读取。
例子UMI 的示例数据 dataset.zarr.zip 里有 camera0_rgb(2315×224×224×3 的图像)、robot0_eef_pos(末端位置)、robot0_gripper_width(夹爪开合宽度)等数组,另用 episode_ends 记录每条演示在哪一帧结束。
- 也叫
- zarr、.zarr.zip
- 相关
- HDF5 格式、WebDataset 格式、Parquet 格式、LeRobot 数据集格式、扩散策略、通用操作接口
- 来源
- Zarr 官网
UMI Robot Dataset Community: Zarr data format