Potato 用边界框、多边形、掩码和有向立方体标注图像、视频、十亿像素扫描图和三维点云,点击一下就能用 SAM 分割对象,并为每一种空间标签报告标注者之间的一致性,其中二维形状上的一致性经过机遇校正。Potato 免费开源,运行在你自己的电脑或服务器上,可导出 COCO、YOLO、Pascal VOC、KITTI 等标准格式。
Potato 的视觉功能大多在 2.8 版加入,核心是一项新增功能:Potato 中的每一种空间标签,从二维边界框到三维立方体,都附带标注者之间的一致性。二维边界框、多边形和掩码上的一致性经过机遇校正,三维立方体上 Potato 报告匹配后的平均三维 IoU。我们还没有发现其他哪个标注平台为空间标签报告机遇校正系数。常用的指标是原始 IoU 或匹配百分比,只要某一个答案占主导,这些数值就会偏高,而实际中几乎总是如此。测量与完整性解释了这对边界框、掩码和立方体意味着什么。
Potato 中的计算机视觉任务
每一行是 Potato 自带的一种标注界面,链接页面给出了它的配置。
| 任务 | Potato 的做法 | 文档 |
|---|---|---|
| 检测与分割标签 | 在 image_annotation 方案上绘制边界框、多边形、折线、椭圆、关键点和掩码 | 几何图元 |
| 点击即分割 | SAM 系列模型通过 ONNX Runtime Web 在标注者的浏览器中运行 | 交互式分割 |
| 用文本提示打标签 | 输入一个短语,开放词表检测器为每个匹配对象画框 | 开放词表文本提示 |
| 视频目标跟踪 | 在一帧上画出掩码,SAM 2 负责传播,你再修正关键帧 | 视频跟踪 |
| 十亿像素图像 | 瓦片金字塔,标注在任意缩放级别下都可用,适用于切片、航测图像和扫描地图 | 深度缩放 |
| 激光雷达与点云 | 有向三维立方体、点、折线和逐点分割,并投影到相机图像中 | 点云 |
| 图像分类 | 为每张图像打单选或多选标签,支持键盘快捷键 | 图像标注 |
模型运行在你的硬件上
交互式分割和文本提示在标注者的浏览器中运行,因此不需要配置 GPU,每次点击也不会发起网络请求。视频掩码传播则在 Potato 服务器上运行,因为它的计算量随帧数增长。Potato 不内置任何模型。potato download-models 把你选定的权重下载一次,此后工具即可在气隙环境中运行。模型库注明了每个模型的许可证;对于非商用许可的模型,不加 --accept-licence 时 download-models 会拒绝下载。
potato download-models --list
potato download-models mobile_sam导入与导出格式
potato import 能读取 16 种图像和视频格式,包括 COCO(含 RLE 掩码、crowd 区域和关键点)、YOLO、Pascal VOC、CVAT XML、Labelbox、LabelMe、KITTI、MOT、DAVIS、Cityscapes 和 Hugging Face 数据集。导出器可写出 COCO、YOLO、Pascal VOC、CVAT、V7 Darwin、LabelMe、KITTI 2D 与 3D、MOTChallenge、DAVIS、Cityscapes、PNG 掩码,以及用于医学体数据的 NIfTI 或 DICOM SEG。各格式保留的几何信息不同,计算机视觉格式说明了每种格式保留什么。
与 CVAT、Label Studio 和 Roboflow 的分工
Potato 的特色不在绘图工具。CVAT、Label Studio、Roboflow、V7 和 Supervisely 都能画边界框和多边形,其中好几款画得比 Potato 更好,CVAT 尤其适合大批量的视觉标注。当标签是一项研究的一部分时,Potato 更合适:每张图像分配多名标注者,每种空间标签都报告一致性,有注意力检查和黄金标准检查,同一项目里的文本、音频或问卷题目也都在同一个工具中完成。图像标注工具对比逐项比较了这些差异。
常见问题
Potato 能把标注导出为 COCO 或 YOLO 格式吗?
可以。python -m potato.export --format coco 为检测和分割任务写出 COCO JSON,--format yolo 写出 YOLO 标签文件。COCO 导出器会把存储的归一化坐标换算成像素,并把多边形、椭圆和画笔掩码转成 COCO 分割格式。Pascal VOC、CVAT、KITTI、Cityscapes 和 PNG 掩码同样可用。
SAM 能否先分割出对象,让标注者只修正掩码?
可以。在 image_annotation 方案上启用 sam 工具后,标注者点击一个对象,就会得到一个可以接受或编辑的掩码。用 potato download-models 下载权重后,模型在标注者的浏览器中运行。对于视频,SAM 2 在服务器上把一帧中的掩码传播到后续各帧。
如何测量标注者在边界框上的一致性?
给每张图像至少分配两名标注者,Potato 就会报告边界框上经机遇校正的一致性,并把“标注者是否找到了相同的对象”和“他们的边界框吻合得有多紧密”分开衡量。如何测量边界框上的标注者间一致性解释了这一方法,片段与边界框一致性计算器可以在浏览器中对导出文件做同样的计算。
能标注三维点云和激光雷达扫描吗?
可以。spatial_annotation 方案在浏览器中显示点云,支持有向三维立方体、点、折线和逐点分割。八叉树细节层次让数百万点的扫描在笔记本电脑上也能流畅交互,相机标定则把每个框投影到图像中,方便在二维中核对。kitti_3d 导出器写出 KITTI 标签。