Skip to main content
CVAT provides comprehensive quality control features to ensure annotation accuracy and consistency. Quality control includes validation workflows, ground truth comparison, consensus annotation, and automated quality metrics.

Overview

CVAT’s quality system includes:
  • Quality settings: Configurable comparison parameters
  • Ground truth jobs: Reference annotations for validation
  • Quality reports: Automated comparison and metrics
  • Validation workflows: Review and approval stages
  • Consensus annotation: Multiple annotators for agreement analysis
  • Honeypot tasks: Hidden validation frames

Quality Settings

Quality settings define how annotations are compared and validated.

Creating Quality Settings

For a project:
For a task:
Using the REST API:

Quality Setting Parameters

Shape Matching Parameters

Comparison Options

Quality Targets

Advanced Options

Updating Quality Settings

Ground Truth Validation

Ground truth jobs provide reference annotations for quality comparison.

Creating Ground Truth Jobs

Random frame selection:
Random per job:
Manual frame selection:
Using the API:
Each task can have only one ground truth job. The GT job must be annotated separately to serve as the quality reference.

GT Job Frame Selection

Honeypot Validation

Honeypot tasks contain hidden validation frames mixed with regular frames.

Creating Honeypot Tasks

Configure validation during task creation:
Validation modes:
  • gt: Standard ground truth validation
  • gt_pool: Honeypot validation with hidden frames

Managing Honeypot Frames

Honeypot frames are only supported in 2D image tasks. Video tasks and 3D tasks cannot use honeypot validation.

Quality Reports

Quality reports compare job annotations against ground truth.

Creating Quality Reports

For a job:
For a task:
For a project:
Using the API:

Quality Report Structure

A quality report includes:

Quality Metrics

Accuracy: valid_count / total_count
  • Percentage of correctly annotated objects
  • Considers both false positives and false negatives
Precision: valid_count / ds_count
  • Percentage of annotated objects that are correct
  • High precision = few false positives
Recall: valid_count / gt_count
  • Percentage of ground truth objects found
  • High recall = few false negatives

Conflict Types

Retrieving Quality Reports

Using the API:

Consensus Annotation

Consensus annotation assigns the same data to multiple annotators for agreement analysis.

Creating Consensus Tasks

This creates 3 jobs for each segment, allowing multiple annotators to work on identical data. Using the API:

Analyzing Consensus

Compare annotations between consensus replicas:
Consensus replicas must be between 2 and the configured maximum (default: 10). Setting consensus_replicas=0 disables consensus annotation.

Validation Workflows

Job Stages and States

Jobs progress through workflow stages: Stages:
  1. annotation: Initial annotation phase
  2. validation: Review and quality check
  3. acceptance: Final approval
States:
  • new: Not started
  • in progress: Work ongoing
  • completed: Finished
  • rejected: Needs rework

Moving Jobs Through Workflow

Automatic Acceptance

Configure automatic acceptance based on quality thresholds:
If job quality exceeds target_metric_threshold, it can be automatically accepted. After max_validations_per_job attempts, manual review is required.

Best Practices

  • Set quality thresholds before annotation begins
  • Choose appropriate iou_threshold for your use case:
    • 0.5-0.6 for general object detection
    • 0.7-0.8 for precise segmentation
  • Enable compare_attributes for attribute validation
  • Set realistic target_metric_threshold values
  • Create GT jobs with 5-10% of total frames
  • Use random_per_job for balanced coverage
  • Ensure GT annotations are high quality
  • Review GT jobs with domain experts
  • Update GT as annotation guidelines evolve
  • Assign jobs to annotators in annotation stage
  • Move to validation stage for quality review
  • Use quality reports to identify issues
  • Provide feedback before rejecting jobs
  • Track metrics over time to measure improvement
  • Enable consensus for critical or ambiguous data
  • Use 2-3 replicas (more is usually unnecessary)
  • Analyze agreement to identify labeling issues
  • Refine guidelines based on disagreements
  • Balance cost vs quality requirements
  • Generate reports regularly during annotation
  • Track accuracy, precision, and recall trends
  • Investigate common conflict types
  • Identify struggling annotators for training
  • Adjust quality settings based on results

Quality Control Workflow Example

Complete quality control setup:

Next Steps

Creating Projects

Set up new projects with quality settings

Managing Tasks

Create and manage tasks and jobs

Monitoring

View quality metrics and performance analytics

API Reference

Quality API documentation