默认访问端口为 8080,需用创建的超级用户登录;自动标注需额外启用 components/serverless/docker-compose.serverless.yml 并安装 nuctl 部署模型;浏览器主要测试 Chromium 系,Safari/WebKit 不受支持。

cvat
cvat-aiMIT活跃维护面向图像、视频、音频和 3D 数据的开源标注平台,支持 AI 辅助标注、质量校验、团队协作和开发者 API,适合构建计算机视觉数据集。
CVAT is a leading data annotation platform for image, video, audio, and 3D datasets. It offers open-source, cloud, and enterprise products, as well as labeling services, with AI-assisted labeling, quality assurance, team collaboration, analytics, and developer APIs.
git clone https://github.com/cvat-ai/cvat
cd cvat
docker compose up -d
docker exec -it cvat_server bash -ic 'python3 ~/manage.py createsuperuser'README 未说明具体显存或 GPU 型号要求;默认部署依赖 Docker Engine 与 Docker Compose,自动标注需额外启用 serverless 组件并用 nuctl 部署模型。
自托管开源标注平台,支持图像视频音频和3D数据,数据不出内网
面向图像、视频、音频和 3D 数据的开源标注平台,支持 AI 辅助标注、质量校验、团队协作和开发者 API,适合构建计算机视觉数据集。
核心能力
- 标注图像、视频、音频与3D点云,支持框、多边形、掩码、关键点等
- 接入自有ML模型实现自动标注,覆盖检测、分割、姿态与跟踪
- 按项目、任务、作业拆分数据并分配标注员,实时跟踪进度
- 通过共识、Ground Truth与Honeypot机制做质量检查
- 支持20+格式导入导出,并连接S3、Azure、Google Cloud存储
容易踩的坑
- v2.82.0最新正式版2026-11-05 · 2026-11-05 14:06 UTC
Added
-
An option to configure a variable IoU threshold that depends on the GT annotation area in annotation quality checks. (https://github.com/cvat-ai/cvat/pull/11308)
-
Added an option to check object boundaries using the Boundary F1 metric in quality checks. Available for bounding boxes, ellipses, polygons, masks, and polylines. (https://github.com/cvat-ai/cvat/pull/11366)
Changed
- [Server API] Quality requirements now allow to select the object similarity metric used. OKS and IoU use different configuration options for the similarity metric threshold: IoU -
iou_threshold; OKS -oks_threshold. The existing IoU thresholds for points are moved. (https://github.com/cvat-ai/cvat/pull/11366)
Fixed
-
The image is no longer darkened when a conflict is highlighted with the grid enabled (https://github.com/cvat-ai/cvat/pull/11368)
-
Skeletons are now compared in the image space when the Point size base quality setting is set to Image size, which allows matching skeletons whose bounding boxes don't overlap, e.g. skeletons with a single visible point (https://github.com/cvat-ai/cvat/pull/11415)
Security
-
Fixed a permission problem that could allow users who were removed from an organization to still perform auto-annotation on tasks and jobs in that organization (https://github.com/cvat-ai/cvat/pull/11389)
-
Prevented users with global worker role that were removed from an organization from accessing jobs in that organization to which they were previously assigned (https://github.com/cvat-ai/cvat/pull/11414)
-
- v2.81.02026-10-29 · 2026-10-29 06:09 UTC
查看更新说明
Added
-
[Server API] Replica jobs can be deleted (
DELETE /api/jobs/{id}) (https://github.com/cvat-ai/cvat/pull/11321) -
[Server API] Replica jobs can be created (
POST /api/jobs) (https://github.com/cvat-ai/cvat/pull/11328) -
The "Add replicas" job action, which adds the specified number of replica jobs to each selected annotation job (https://github.com/cvat-ai/cvat/pull/11328)
-
Hold Ctrl while using intelligent scissors to draw straight segments (https://github.com/cvat-ai/cvat/pull/11362)
Changed
-
Made moving and pasting many selected objects smoother in the 2D annotation workspace (https://github.com/cvat-ai/cvat/pull/11295)
-
[SDK] The
python-dateutilpackage is no longer a dependency (https://github.com/cvat-ai/cvat/pull/11337) -
[Server API] Frames can no longer be deleted or restored in replica jobs (
PATCH /api/jobs/{id}/data/meta) (https://github.com/cvat-ai/cvat/pull/11344) -
Reformatted canvas hints with headings, tips, action lists, and highlighted controls (https://github.com/cvat-ai/cvat/pull/11362)
Removed
- Removed the Block button, its shortcut, and the option to postpone AI and OpenCV interaction algorithms (https://github.com/cvat-ai/cvat/pull/11362)
Fixed
-
Fixed the brush cursor disappearing when restarting editing of the same mask (https://github.com/cvat-ai/cvat/pull/11298)
-
Prevented context menus from opening when right-clicking resize or rotation handles in the 2D annotation workspace, including when using Ctrl-click on macOS (https://github.com/cvat-ai/cvat/pull/11350)
-
Internal links in Markdown notifications can now be opened in a new tab or copied using browser link actions (https://github.com/cvat-ai/cvat/pull/11363)
-
Quality settings and requirement copies with attribute rules for deleted attributes could not be saved, such rules are now highlighted in the requirement form (https://github.com/cvat-ai/cvat/pull/11369)
-
Improved display in the UI for server validation errors (displayed as
[object Object]) (https://github.com/cvat-ai/cvat/pull/11369) -
Kept single-object and selection context menus fully opaque and highlighted while dropdowns are open. (https://github.com/cvat-ai/cvat/pull/11376)
-
Made the selection box visible in bitmap mode. (https://github.com/cvat-ai/cvat/pull/11376)
-
Preserved selected objects in the sidebar when hiding them and restored the selection box when showing them again. (https://github.com/cvat-ai/cvat/pull/11376)
-
Entered Select objects mode when selecting objects with Ctrl/Cmd-click. (https://github.com/cvat-ai/cvat/pull/11376)
-
Made plain canvas clicks clear selection and dragging draw a new selection box in Select objects mode. (https://github.com/cvat-ai/cvat/pull/11376)
-
Kept context menu details accessible when expanded near the bottom of the viewport. (https://github.com/cvat-ai/cvat/pull/11376)
-
[Helm] Pull PostgreSQL, ClickHouse, and Redis images from Docker Hub to prevent Helm CI failures caused by ECR Public anonymous download limits. (https://github.com/cvat-ai/cvat/pull/11378)
-
- v2.80.02026-10-21 · 2026-10-21 16:34 UTC
查看更新说明
Added
-
[Server API] The
initial_replicasparameter of the task creation request (POST /api/tasks) sets the number of replica jobs created for each annotation job. The value is returned in the task responses (GET /api/tasks) (https://github.com/cvat-ai/cvat/pull/11305) -
Add a link to AI agent setup documentation in model selectors, including when no models are available (https://github.com/cvat-ai/cvat/pull/11304)
Changed
-
[Server API] The
consensus_replicajob type is renamed toreplica(https://github.com/cvat-ai/cvat/pull/11305) -
The "Consensus Replicas" field of the task creation form is renamed to "Initial replicas" (https://github.com/cvat-ai/cvat/pull/11305)
-
[Server API] An annotation job in the annotation stage of a 2D task can be merged (
POST /api/consensus/merges) when it has one or several started replica jobs (https://github.com/cvat-ai/cvat/pull/11305) -
[Server API] The number of replica jobs per annotation job is no longer limited at task creation, and 1 is accepted. Instead, merging rejects an annotation job with more started replica jobs than the
CVAT_MAX_CONSENSUS_REPLICASserver setting allows (11 by default) (https://github.com/cvat-ai/cvat/pull/11305) -
The "Consensus management" and "Merge consensus jobs" actions are available for every task, the "Merge consensus job" action is available for every annotation job that has replica jobs (https://github.com/cvat-ai/cvat/pull/11305)
-
[SDK] The
typing_extensionspackage is no longer a dependency (https://github.com/cvat-ai/cvat/pull/11327)
Deprecated
- [Server API] The
consensus_replicasparameter of the task creation request (POST /api/tasks) is deprecated, useinitial_replicasinstead (https://github.com/cvat-ai/cvat/pull/11305) - [Server API] The
consensus_replicajob type is still accepted as an alias ofreplicain thetypeandfilterparameters ofGET /api/jobs(https://github.com/cvat-ai/cvat/pull/11305)
Removed
-
[SDK, CLI] Removed Python 3.10 support (https://github.com/cvat-ai/cvat/pull/11290)
-
[Server API] The
consensus_enabledfield of tasks and the deprecatedconsensus_replicasfield of jobs are removed from the REST API responses (https://github.com/cvat-ai/cvat/pull/11305)
Fixed
-
Missing shell line continuations in the CLI README's task creation example (https://github.com/cvat-ai/cvat/pull/11320)
-
Added a workaround for the API documentation page failing to render (https://github.com/cvat-ai/cvat/pull/11324)
-
Restored resizing and rotating annotation objects while holding Ctrl, without triggering multi-object selection. (https://github.com/cvat-ai/cvat/pull/11331)
-
HTTP 500 when confirming an email address in the same browser session used to register with mandatory email verification. (https://github.com/cvat-ai/cvat/pull/11342)
Security
-
Updated root CA certificates to mitigate the eMudhra CA security incident (https://github.com/cvat-ai/cvat/pull/11345)
-
Fixed a user information disclosure vulnerability (https://github.com/cvat-ai/cvat/security/advisories/GHSA-7w7g-2854-hxx5)
-
Fixed a bug allowing organization maintainers to grant other members owner/maintainer roles (https://github.com/cvat-ai/cvat/security/advisories/GHSA-92cv-2cwp-4gxh)
-
- v2.79.02026-10-15 · 2026-10-15 17:12 UTC
查看更新说明
Added
- Added registration survey fields to user profiles and made the primary role editable on the profile page (https://github.com/cvat-ai/cvat/pull/11216)
Changed
-
Multi-selection now uses fixed Shift-drag and Ctrl/Cmd-click modifiers instead of configurable shortcuts, eliminating false conflict warnings involving these modifiers (https://github.com/cvat-ai/cvat/pull/11281)
-
Improved annotation workspace performance for jobs with many objects (https://github.com/cvat-ai/cvat/pull/11220)
Fixed
-
Improve performance while using the brush tool for larger segments (https://github.com/cvat-ai/cvat/pull/11119)
-
Model loading now waits for organization initialization, preventing functions from switching organization context between pages. (https://github.com/cvat-ai/cvat/pull/11266)
-
Copying and pasting skeleton tracks with attributes could fail or lose keypoint attribute values (https://github.com/cvat-ai/cvat/pull/11279)
-
Keyboard shortcuts preventing selected text from being copied and interfering with text editing. (https://github.com/cvat-ai/cvat/pull/11280)
-
Fixed intermittent generic errors when retrieving chunks so the API reliably reports the underlying failure (https://github.com/cvat-ai/cvat/pull/11282)
-
Links in quality control card tooltips could be difficult to click because the tooltip closed too quickly (https://github.com/cvat-ai/cvat/pull/11284)
Security
-
Fixed disclosure of user/task names and IDs via the browsable API (https://github.com/cvat-ai/cvat/security/advisories/GHSA-pv9q-68mq-qwpm)
-
Fixed multiple path traversal vulnerabilities (https://github.com/cvat-ai/cvat/security/advisories/GHSA-qpmj-jxq7-67fg)
- v2.78.02026-10-06 · 2026-10-06 18:19 UTC
查看更新说明
Added
-
Added multi-object selection and batch operations to the 2D annotation workspace, with canvas and sidebar selection methods and undo and redo support (https://github.com/cvat-ai/cvat/pull/11084)
-
Annotations from audio projects now can be exported (https://github.com/cvat-ai/cvat/pull/11238)
Changed
- Show icons and colors for job stages and states on the Jobs page and in stage/state selectors on the task job list (https://github.com/cvat-ai/cvat/pull/10981)
Fixed
-
Invalid handling of the
stop_frameoption in task creation from PDF. It was producing 1 less frame than specified. (https://github.com/cvat-ai/cvat/issues/11175) -
Made audio interval Tab navigation deterministic by following the selected right bar ordering. (https://github.com/cvat-ai/cvat/pull/11236)
-
Kept the layout toolbar attached to the top edge of the 3D canvas frame (https://github.com/cvat-ai/cvat/pull/11244)
-
Restored the missing overlap threshold setting in point-based quality requirements. Improved documentation on the point and skeleton matching. (https://github.com/cvat-ai/cvat/pull/11259)
-
Task quality settings now display the inherited project settings and requirements as read-only when "Use project settings" is enabled. (https://github.com/cvat-ai/cvat/pull/11256)
Security
-
Prevented arbitrary file reads via imported dataset media paths (https://github.com/cvat-ai/cvat/security/advisories/GHSA-8p5p-rh49-4qc9)
-
Prevented arbitrary file reads via symlinks in task data (https://github.com/cvat-ai/cvat/security/advisories/GHSA-rvw4-fjrw-pqf4)
-
用户点评
登录用户的真实使用记录,可按版本和硬件筛选还没有人点评。第一个说出真实体验的人最有价值。
CVAT: Computer Vision Annotation Tool
Website · Docs · Changelog · Tutorials · Academy · Blog
What is CVAT Community?
CVAT Community is the free, self-hosted open-source edition of CVAT — one of the most widely used platforms for image, video, audio, and 3D annotation. Since 2018, CVAT has become one of the best-known data annotation tools in computer vision, with a large open-source community, millions of Docker pulls, and broad adoption across research and production AI teams.
CVAT Community supports image, video, audio, and 3D annotation, dataset management, team collaboration, cloud storage integration, developer-friendly SDKs and APIs, and gives your team full control over your data and annotation infrastructure. The platform serves as the foundation of CVAT Online and CVAT Enterprise, and is actively maintained by the CVAT engineering team.
Why teams choose CVAT Community:
- Own your data: Run entirely within your own infrastructure. No data leaves your environment.
- AI-powered annotation: Connect your own ML models for detection, segmentation, and tracking to speed up labeling.
- Team collaboration: Multi-user and multi-organization support with roles, task assignments, and review workflows.
- MIT-licensed core: Use, modify, and distribute CVAT Community under the permissive MIT License. Some serverless assets and dependencies may have separate licenses.
- Production-grade: The foundation of all CVAT commercial products — battle-tested at scale.
- True open-source: Transparent development, active community, on GitHub since 2018.
This repository contains the source code and deployment assets for CVAT Community.
For a fully managed setup, annotation services, or enterprise features, see CVAT Online, CVAT Enterprise and CVAT Labeling Services.
Getting Started
💡 Want to explore CVAT before deploying anything? Try CVAT Online (Free plan) directly in your browser. Feature availability and usage limits vary by plan; see CVAT Online pricing for details.
Installation
Prerequisites:
💡 CVAT is primarily tested with Chromium-based browsers (Google Chrome, Microsoft Edge). Firefox may work with some caveats; Safari/WebKit is not supported.
1. Start the default stack
Clone the repository and launch the services.
git clone https://github.com/cvat-ai/cvat
cd cvat
# Optional: set your IP or domain
# export CVAT_HOST=your-ip-or-domain
docker compose up -d
2. Create an admin account
docker exec -it cvat_server bash -ic 'python3 ~/manage.py createsuperuser'
See the Installation Guide for full instructions and OS-specific setup.
3. Sign in and start labeling
- Open http://localhost:8080 (or your
CVAT_HOST) in your browser. - Log in with your superuser account.
- Create a project or task, upload your data (images, videos, audio files, or point clouds), and define labels to start annotating.
Learn more about annotation tools and workflows in the CVAT Documentation or take our free course – CVAT Academy.
For alternative deployments (AWS, Kubernetes, external PostgreSQL, backups, upgrades), see the Deployment Guides.
Key Capabilities
- Manual & Auto-labeling: Annotate images, videos, audio, and 3D point clouds with bounding boxes, polygons, masks, keypoints, cuboids, tags, intervals and more. Speed up labeling by connecting your own models for automatic annotation.
- Task Management: Organize datasets into projects, split them into tasks and jobs, assign work to annotators, and track progress in real time.
- Collaboration: Create organizations, invite teammates, assign roles, and collaborate on annotations with comments and issues.
- Quality Control: Review annotations, flag issues, compare results across annotators with consensus, and run Ground Truth and Honeypot checks through the server API.
- Analytics: Monitor user activity, working time by job, events, and server logs with Grafana dashboards.
- Data Ops & Integrations: Export/import in 20+ formats (COCO, YOLO, Pascal VOC, KITTI, etc.), connect to cloud storage (S3, Azure, Google Cloud), and automate via REST API and Python SDK.
Advanced capabilities such as advanced project analytics, quality control UI, built-in auto-labeling with SAM 2 and SAM 3, AI agents, SSO, and more are available in CVAT Online paid plans (Solo, Team) and CVAT Enterprise.
Developer Tools
CVAT is designed for automation. Beyond the Web UI, you can integrate it into your pipelines using:
- Python SDK: install with
pip install cvat-sdkand automate task creation, uploads, and exports from Python. - Command line tool: install with
pip install cvat-cliand script common CVAT workflows from the terminal. - REST API: full programmatic control over CVAT.
Data and Formats
CVAT Community supports image, video, audio, and 3D (point cloud) annotation workflows. You can move data in and out using 20+ supported formats: CVAT (XML), COCO (JSON), YOLO (TXT), Ultralytics YOLO (TXT/YAML), Pascal VOC (XML), KITTI (TXT), MOT (TXT), Generic TSV (TSV), and more.
Full list of supported formats.
ML and AI Models
CVAT Community supports automatic annotation via pre-built serverless models powered by Nuclio, covering detection, segmentation, pose estimation, and tracking:
| Model | Framework | Type |
|---|---|---|
| Segment Anything (SAM) | PyTorch | Interactor |
| Inside-Outside Guidance (IOG) | PyTorch | Interactor |
| RetinaNet R101 | PyTorch | Detector |
| HRNet32 Whole Body Pose | PyTorch | Pose Estimation |
| TransT | PyTorch | Tracker |
| YOLO v7 | ONNX | Detector |
| Mask RCNN Inception ResNet v2 | OpenVINO | Detector |
| Face Detection 0205 | OpenVINO | Detector |
| Faster RCNN Inception v2 | TensorFlow | Detector |
To enable automatic annotation, add the serverless component to your deployment:
docker compose -f docker-compose.yml -f components/serverless/docker-compose.serverless.yml up -d
This starts the serverless infrastructure. To make models available in CVAT, install nuctl and deploy
the functions you need, for example SAM or YOLO, as described in the Automatic Annotation Guide.
Which CVAT edition should I choose?
- CVAT Online: the fastest way to try CVAT and start labeling without deployment. Use it to evaluate CVAT in the browser, explore managed features, and move to cost-efficient paid plans when you need more capacity or team workflows.
- CVAT Community: the MIT-licensed self-hosted edition for teams that want to run CVAT themselves, customize the stack, and control their infrastructure.
- CVAT Enterprise: for organizations that need CVAT in their own cloud or internal environment, enterprise support, security controls such as SSO, paid platform features, and SLAs.
- Labeling Services: for teams that want to outsource annotation work to CVAT.ai’s experienced labeling team instead of building an internal labeling operation. Customers get trial access to CVAT Online during the project.
For detailed plan limits and feature availability, see CVAT Online pricing, CVAT Enterprise, and Labeling Services.
Support
- Usage questions: ask the community on Discord or
Stack Overflow with the
cvattag. - Bugs and feature requests: use GitHub Issues.
- FAQ: Installation, upgrades, troubleshooting.
For dedicated support, SLAs, or advanced deployments, consider CVAT Enterprise.
Contributing
We welcome all contributions: bug reports, documentation fixes, integrations, and code.
- If you'd like to contribute to CVAT, please refer to our contribution documentation.
- For bug reports or feature requests, please use the GitHub Issues tracker.
Security
- Please review our Security Policy before reporting vulnerabilities.
- For sensitive issues, contact: [email protected].
License
CVAT Community is released under the MIT License.
- Code in
/serverlessis also MIT-licensed, but may use third-party assets under separate licenses (including non-commercial). Review those licenses before use. - This software uses FFmpeg libraries under LGPL/GPL. See the Dockerfile and FFmpeg legal info for details.
Additional Resources
For the latest product releases, feature walkthroughs, and all things CVAT see:
