CVAT 上手指南:用 Docker 部署计算机视觉标注平台并完成首个数据集标注
【免费下载链接】cvatComputer Vision Annotation Tool (CVAT) is a leading platform for building high-quality visual datasets for vision AI. It offers open-source, cloud, and enterprise products, as well as labeling services, for image, video, and 3D annotation with AI-assisted labeling, quality assurance, team collaboration, analytics, and developer APIs.项目地址: https://gitcode.com/GitHub_Trending/cvat/cvat
CVAT(Computer Vision Annotation Tool)是一个开源、可自托管的计算机视觉标注平台,支持图像、视频与 3D 点云三类数据的标注,内置模型辅助自动标注、团队协作、质量检查和多格式导出能力。本文带你在本机跑通 CVAT,并完成从导入数据到导出数据集的完整流程。
3 分钟在本地跑起 CVAT
准备环境:安装好 Docker Engine 和 Docker Compose,浏览器建议使用 Chrome 或 Edge。
git clone https://gitcode.com/GitHub_Trending/cvat/cvat cd cvat docker compose up -d服务拉起后,创建管理员账号:
docker exec -it cvat_server bash -ic 'python3 ~/manage.py createsuperuser'浏览器打开http://localhost:8080登录即可。如果 8080 端口被占用,修改 docker-compose.yml 中的端口映射后重新up -d就行。首次拉取镜像较慢,属于正常现象,耐心等待。
核心工作流:从原始数据到可导出数据集
创建项目并定义标签
在首页创建 Project(项目),再在项目下新建 Task(任务)。任务创建弹窗里要做两件事:
- 定义标签:如 car、person、bicycle
- 为标签追加属性:如遮挡程度、颜色,后续导出时可一并带上
导入数据
在 "Select files" 区域选择数据来源:本机文件、共享文件夹、远程 URL 或云存储(S3、Azure、GCS)。上传一个视频文件,或者拖入一个包含多张图片的压缩包都可以。
画框与视频插值
进入标注画布后,用左侧工具栏绘制矩形、多边形、关键点等图形。右侧的 Objects 列表展示当前帧所有标注,可以直接改名、删除或调整顺序。
视频任务不需要逐帧标注。在第一帧画出目标,切到后面某一帧把目标放到新位置,CVAT 会自动插值出中间帧的标注;运动幅度大的目标多补几个关键帧即可。这样一段长视频的工作量能缩减一大截。
检查与导出
标注完成后,从任务或 Job 的菜单中选择导出,选择目标格式。CVAT 支持 20 余种行业通用格式:COCO、YOLO、Pascal VOC、KITTI、CVAT XML 等,下游训练框架基本都能直接消费。
按场景进阶
模型辅助自动标注
什么时候用:数据量大、目标类型重复时,先让模型出一版草稿,人工只做修正。
先把 serverless 组件加入部署:
docker compose -f docker-compose.yml -f components/serverless/docker-compose.serverless.yml up -d再安装nuctl,按需部署 serverless/ 目录下的预置模型(覆盖检测、分割、姿态估计、跟踪,如 YOLO v7、SAM、RetinaNet)。之后打开自动标注面板,选择模型、设置标签映射与置信度阈值,还可以通过 Region of interest 限定推理范围,避免整图乱标。
注意:模型输出只是草稿,置信度偏低的目标、漏检和重复框都要人工过一遍再导出。
3D 点云标注
什么时候用:自动驾驶、机器人等需要 3D 框的场景。CVAT 提供 Top / Side / Front 三视角同步视图,主视图绘制 3D cuboid 时,三个正交投影视图会实时联动,方便对准深度方向。
团队协作与质量控制
- 用组织(Organization)和角色划分成员权限,把任务分配给不同标注员
- 支持在画布上评论、发起 issue,定位到具体对象沟通问题
- 开启 consensus 模式让多名标注员独立标注同一份数据,再按质量分合并结果
- 质量报告可通过 API 拉取,接入自有流水线
自动化与集成
界面操作之外,CVAT 适合脚本化调用:
- REST API:cvat/schema.yml 提供了完整的接口描述
- Python SDK:
pip install cvat-sdk,代码见 cvat-sdk/ - 命令行工具:
pip install cvat-cli,见 cvat-cli/ - Webhook:事件触发外部通知与处理
避坑指南
- 端口冲突:改 docker-compose.yml 的端口映射,不要直接占用已有服务端口
- 内存不够:建议至少 8GB,处理长视频或大点云时预留更多
- 自动标注里没有模型:说明 serverless 组件没部署,或对应函数还没用
nuctl发布 - 浏览器兼容:官方主要测试 Chromium 系浏览器,Safari 不在支持范围
- 上传失败:先检查视频/点云编码是否常见格式,异常会记录在服务日志里,容器内可查看
下一步建议
跑通基础流程后,可以按下面的方向继续深入:
- 浏览 serverless/ 查看各框架(PyTorch、ONNX、OpenVINO、TensorFlow)的预置模型与部署说明
- 查看 components/ 了解 Grafana 分析看板和 serverless 的独立部署
- 需要 Kubernetes 环境时,直接使用仓库自带的 helm-chart/
- 参考 tests/python/ 中的 REST API 与 SDK 测试用例,快速搭建自己的集成脚本
- 视频任务多时,重点练习关键帧插值;多人团队建议先小范围试跑一次 consensus 流程再铺开
【免费下载链接】cvatComputer Vision Annotation Tool (CVAT) is a leading platform for building high-quality visual datasets for vision AI. It offers open-source, cloud, and enterprise products, as well as labeling services, for image, video, and 3D annotation with AI-assisted labeling, quality assurance, team collaboration, analytics, and developer APIs.项目地址: https://gitcode.com/GitHub_Trending/cvat/cvat
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考