视频标注工具对比:CVAT、Label Studio、ELAN、BORIS 与 Potato
从目标跟踪、时间片段、行为编码和掩码传播几个方面对比 CVAT、Label Studio、ELAN、BORIS、VIA、V7 与 Potato,并说明各自如何衡量一致性。
视频标注通常是两类工作之一。目标跟踪是用图形框住某个东西并在各帧间跟随它,CVAT 是这方面参考级的开源工具。时间标注是标出某件事发生的时间,ELAN 和 BORIS 是语言学和行为研究中的标准工具。Potato 在浏览器中为多标注者研究完成这两类工作,并报告标注者在事件起止时间上的一致程度。
目标跟踪在整段视频中跟随一个物体,通常是在关键帧上画出物体,再对中间的帧做插值。时间片段由开始时间、结束时间和一个标签组成,例如一个动作或一次说话人话轮。掩码传播用模型把分割掩码从一帧带到下一帧。
本页讨论视频。所有数据类型放在一页里的对比见 AI 标注工具对比。
哪些视频标注工具值得比较?
| 工具 | 运行方式 | 许可证与费用 | 适合 |
|---|---|---|---|
| Potato | 自行部署的网页应用 | GPL-3.0,免费 | 多标注者研究:跟踪、时间片段、按片段提问、一致性 |
| CVAT | 自行部署或托管 | MIT;托管版每用户每月 33 美元 | 大批量的边界框、多边形和点跟踪 |
| Label Studio | 自行部署或托管 | Apache-2.0 Community Edition,另有付费方案 | 用 VideoRectangle 做目标跟踪,用 TimelineLabels 做帧区间标签 |
| ELAN | 桌面应用 | GPL-3.0 | 在最多四个关联视频上按时间对齐的分层 |
| BORIS | Linux、Windows、macOS 和 Android 桌面应用 | GPL-3.0 | 记录来自视频、音频或现场观察的行为事件 |
| Prodigy | 在本地运行的网页应用 | 专有 | 借助其音频界面在视频上标注带时间戳的区域 |
| VIA 3 | 单个 HTML 文件,在浏览器中离线运行 | BSD-2-Clause | 不装任何东西的小型视频项目 |
| V7、Supervisely | 托管;Supervisely 也可自行部署 | 商业 | 带模型掩码传播和托管工作流的跟踪 |
跨帧跟踪物体
CVAT 的轨迹模式把不同帧上的图形关联为同一个物体。标注者在几个关键帧上调整图形,CVAT 对中间的帧做线性插值,适用于矩形、多边形和点。Label Studio 的 VideoRectangle 标签为视频提供基于边界框的目标跟踪。V7、Supervisely 和 Segments.ai 通过插值做跟踪,并用模型传播掩码。
Potato 的 video_annotation 方案有一个跟踪模式,在关键帧之间对边界框和多边形做插值。基于 SAM 2 的掩码传播在服务器上运行。浏览器端有一条更轻量的路径,把掩码向后续帧延续。见如何标注视频目标跟踪。
标出事情发生的时间
Label Studio 的 TimelineLabels 标签点击一次标注单帧,拖动则标注一段帧区间。ELAN 可以按方案需要,在任意多个层上把标注挂到时间轴上,支持受控词表和最多四个同步视频。BORIS 记录并编码来自视频、音频或现场观察的行为事件。Prodigy 按视频时间戳记录区域,VIA 3 除了图像和音频也能标注视频。
在 Potato 中,时间片段在时间轴上标注。从 2.9 版起,segment_schemes 可以把任意标注类型放进片段里,每个片段都能带上自己的评分或自由文本问题。见视频标注。
视频标注的一致性
两名标注者标一个事件的开始时,不会选中同一帧。所以时间一致性取决于:两个标记相距多远仍可算作同一个。
- ELAN 内置了标注者间信度计算:一种修正的 Cohen κ,把重叠达到设定比例的标注对应起来;以及 Staccato 算法,把一种切分与随机生成的切分相比较,以考虑偶然因素。
- Potato 报告重叠的时间 IoU、边界位置的 α、标签的 α,以及是否标出了事件的 α,并把匹配容差以多个取值的扫描来展示。它的文档写明了一处局限:片段重叠目前还没有偶然基线。见时间上的一致性。
- CVAT 的共识引擎用原始 IoU 对照每个类别的阈值来比较标注者。
对于轨迹和掩码,Potato 用掩码共识与 STAPLE 逐帧比较掩码,用如何衡量边界框上的标注者间一致性中介绍的几何一致性来比较边界框。
格式
Potato 把轨迹导出为 MOT,把视频目标分割掩码导出为 DAVIS,把按时间对齐的标注导出为 ELAN 可以打开的 EAF。见计算机视觉格式。
Potato 中的跟踪任务
annotation_schemes:
- annotation_type: video_annotation
name: tracks
description: "Draw the object once, then press Track forward."
source_field: video_url
mode: tracking
labels:
- {name: subject, color: "#d1495b"}
tracking_options:
interpolation: linear
auto_advance_frames: 5
video_fps: 12
frame_stepping: trueframe_stepping 让标注者可以逐帧前进,auto_advance_frames 决定 Track forward 一次跳过多少帧。
Potato 在视频上不做的事
- 暂不支持逐物体属性。 一条轨迹只带一个标签。遮挡和截断标记需要配合一个额外的方案。
- 不在浏览器中做掩码传播。 SAM 2 传播在服务器上运行。
- 不提供托管的标注人员。 请自带标注者,或在 Prolific 上招募。
以上内容于 2026 年 8 月和 9 月对照各项目的文档核实。
常见问题
最好的免费视频标注工具是哪个?
如果是大批量跟踪物体,CVAT 免费、成熟且可自行部署。如果是按时间编码行为或言语,ELAN 和 BORIS 是免费的桌面工具。如果研究中多名标注者在浏览器里标注同一批视频并需要报告一致性,Potato 免费提供这些功能。
哪些视频标注工具能在关键帧之间插值?
CVAT 的轨迹模式在关键帧之间对矩形、多边形和点做线性插值。Potato 的跟踪模式对边界框和多边形做插值。V7 和 Supervisely 除了插值,还用模型传播掩码。Label Studio 的 VideoRectangle 跟踪边界框。
视频行为编码应该用什么?
BORIS 和 ELAN 是成熟的免费工具,ELAN 还能计算层对之间的标注者间信度。如果一套编码方案由多名编码者在浏览器中执行,并需要报告所有人之间的一致性,Potato 的时间片段可以胜任。
视频标注的一致性怎么衡量?
对于事件,在一定容差内把各标注者的片段配对,报告重叠、边界一致性和标签一致性,最好覆盖多个容差,因为 0.25 秒和 2 秒下的一致性是不同的结论。对于轨迹,逐帧比较图形,边界框和掩码用 IoU。
Potato 的视频掩码传播在哪里运行?
在服务器上,使用 SAM 2。浏览器端有一条更轻量的路径,不借助模型就把掩码复制到下一帧。
延伸阅读
- AI 标注工具对比,所有数据类型汇总在一页
- 文本标注工具对比
- 音频标注工具对比
- 图像标注工具对比
- AI 智能体评估工具对比
- 世界模型与机器人回合评估工具对比
- 如何标注视频目标跟踪