Как использовать CVAT: Дружелюбное пошаговое руководство по быстрой и точной аннотации
Если вы когда-либо пытались обучить модель компьютерного зрения, вы, вероятно, сталкивались с той же проблемой, что и все остальные: данные нуждаются в качественной разметке. CVAT (Computer Vision Annotation Tool) — одна из самых популярных платформ для создания высококачественных аннотаций изображений и видео. Это открытый, мощный инструмент, предназначенный для масштабирования от небольших проектов до производственных конвейеров. Это руководство проведет вас через установку, настройку, рабочие процессы разметки, инструменты автоматизации, контроль качества и экспорт, чтобы вы могли перейти от нуля к чистым наборам данных без хаоса.
Мы будем придерживаться практичного и прямого подхода, с примерами, советами и распространенными ошибками, которых следует избегать.
Что такое CVAT и зачем его использовать?
CVAT — это веб-инструмент для аннотирования изображений и видео. Он поддерживает обнаружение объектов, сегментацию, классификацию и отслеживание. Вы можете запускать его локально или на сервере, приглашать товарищей по команде, управлять проектами/задачами и экспортировать метки в распространенные форматы (например, COCO, YOLO, VOC). Если вам нужна повторяемая, совместная и точная маркировка — CVAT справится.
- Работает в браузере, подходит для командной работы
- Обрабатывает изображения и длинные видео с интерполяцией/отслеживанием
- Гибкая схема меток и атрибутов
- Множество форматов экспорта для популярных фреймворков обучения
В качестве официального ознакомления полезно изучить вводный материал от команды CVAT “Getting Started”.
Быстрая настройка: самый быстрый способ запустить CVAT
Типичный путь установки CVAT использует Docker. Он объединяет сервер, базу данных и зависимости, чтобы вы могли начать работу за считанные минуты.
- Установите необходимые компоненты
- Docker и Docker Compose (или Docker Desktop)
- Рекомендуется: современный процессор, достаточно оперативной памяти (8–16 ГБ+ для задач с большим объемом видео)
- Получите и запустите CVAT
- Клонируйте репозиторий CVAT и запустите скрипт compose или используйте образы контейнеров напрямую. В официальной документации приведены точные команды и переменные среды. Также есть опубликованный образ сервера в Docker Hub.
- Получите доступ к интерфейсу
- После запуска контейнеров откройте браузер (обычно ), создайте администратора/пользователя и войдите в систему.
Совет: хранение данных на подключенных томах гарантирует, что ваши задачи, проекты и аннотации сохранятся после обновлений.
Обзор рабочего процесса CVAT
Думайте в трех слоях: Проект → Задача → Работа.
- Проект: коллекция связанных задач (например, «Обнаружение товаров на полках в розничном магазине 2025»). Определяет глобальные метки.
- Задача: единая единица разметки (например, одна партия из 1000 изображений или 2-часовое видео).
- Работа: часть задачи (например, фрагменты длинного видео), назначенная аннотаторам.
Эта структура позволяет вам управлять большими наборами данных, назначать работу товарищам по команде и обеспечивать согласованность определений меток.
Шаг 1: Создайте проект и метки (проектирование схемы)
Перед загрузкой данных определите свою онтологию — что вы маркируете и как.
- Классы: например,
человек, автомобиль, шлем, трещина.
- Атрибуты: например,
закрыто: да/нет, погода: солнечно/дождливо, серьезность повреждения: 1–5.
- Цветовое кодирование: улучшает визуальную ясность.
Рекомендации:
- Сохраняйте имена классов короткими, согласованными и описательными.
- Используйте атрибуты для метаданных, которые не требуют рисования (например, «is_crowd»).
- Избегайте перекрывающихся классов, если только они не являются намеренно иерархическими (например,
транспортное средство > автомобиль/автобус/грузовик).
Вы можете определять метки на уровне проекта, чтобы все связанные задачи наследовали их.
Шаг 2: Создайте задачу и загрузите данные
На панели управления:
- Новая → Задача → Назовите свою задачу.
- Выберите проект (необязательно, но рекомендуется).
- Загрузите данные: перетащите изображения, укажите каталог или предоставьте ссылки на облачное хранилище (например, S3, Azure Blob) в зависимости от вашей настройки.
- Убедитесь, что метки верны (унаследованы или специфичны для задачи), и нажмите «Создать».
Для длинных видео рассмотрите возможность разделения на части или включения автоматического разделения заданий, чтобы каждое задание было управляемым и отзывчивым для аннотаторов.
Шаг 3: Выберите правильный режим аннотации
CVAT поддерживает несколько инструментов аннотации:
- Ограничивающие рамки: быстрее всего для обнаружения объектов.
- Многоугольники/Полилинии: для сегментации экземпляров/семантической сегментации, дорожных полос, трещин.
- Параллелепипеды: для трехмерных перспективных прямоугольников на 2D-изображениях.
- Точки: ключевые точки или ориентиры (позы, ориентиры лица).
- Теги: метки уровня изображения (например, «дневное время»).
Горячие клавиши значительно ускоряют работу:
- N: создать следующую фигуру
- V: переключение инструментов
- Удерживайте Shift/Alt для создания фигур с ограничениями (в зависимости от инструмента) и привязки.
Совет: список меток должен быть небольшим и сфокусированным. Слишком большое количество классов замедляет работу аннотаторов и увеличивает частоту ошибок.
Шаг 4: Аннотация видео — интерполяция и отслеживание
Для видео не аннотируйте каждый кадр.
- Создайте рамку или многоугольник на ключевом кадре.
- Включите интерполяцию/отслеживание: CVAT может распространять формы вперед, а затем вы корректируете их по мере необходимости на новых ключевых кадрах.
- Разделяйте или объединяйте дорожки, когда объекты перекрываются или появляются снова.
- Отмечайте состояния, такие как «снаружи» или «закрыто», чтобы поддерживать чистоту последовательностей.
Это значительно сокращает время, сохраняя при этом временную согласованность. Исследования и передовые методы сообщества также рекомендуют интерактивную/самостоятельную помощь в аннотировании для ускорения разметки видео.
Шаг 5: Используйте инструменты автоматической аннотации и помощи
CVAT поддерживает аннотацию с помощью помощника для ускорения работы. В зависимости от вашего развертывания вы можете:
- Использовать встроенные функции, поддерживаемые моделями, для предложения рамок/масок.
- Запускать модели на стороне сервера для предварительной разметки кадров, а затем исправлять.
- Применять интерполяцию для заполнения пробелов.
Начните с небольшого, высококачественного исходного набора, обучите быструю модель и используйте ее для предварительной разметки оставшихся данных. Повторно исправляйте и переобучайте.
Примечание. Конкретные детали зависят от того, какие модели вы включите в своей среде. В официальной документации и обучающих материалах сообщества показано, как подключить модели к CVAT и включить автоматическую аннотацию в пользовательском интерфейсе.
Шаг 6: Сотрудничайте с ролями и рецензиями
CVAT — это многопользовательский инструмент. Типичные роли включают в себя:
- Администратор: управляет сервером и пользователями
- Менеджер проекта: определяет метки, создает задачи/работы, назначает аннотаторов
- Аннотатор: создает и редактирует метки
- Рецензент/QA: проверяет работу, запрашивает исправления
Установите четкие правила: примеры правильных/неправильных аннотаций, определения атрибутов и крайние случаи (например, «маркировать отражения?»). Используйте инструменты рецензирования — комментарии, флажки проблем и изменения статуса — для повышения качества.
Шаг 7: Контроль качества, которому вы можете доверять
Несколько практических стратегий контроля качества:
- Золотые задачи: вставьте несколько изображений, размеченных экспертами, для оценки аннотаторов.
- Перекрытие: назначьте одну и ту же работу двум аннотаторам; сравните IoU и согласованность.
- Выборочные проверки: рецензенты проверяют определенный процент каждой работы.
- Метрики: отслеживайте шаблоны путаницы по классам во время обучения модели, чтобы уточнить правила.
Согласованность во времени важнее, чем разовые идеальные метки. Документируйте решения и обновляйте руководство по меткам по мере обнаружения крайних случаев.
Шаг 8: Сохраните, создайте версию и экспортируйте
Сохраняйте часто (CVAT также автоматически сохраняет). Когда будете готовы:
- Форматы экспорта: COCO, YOLO, Pascal VOC и другие. Выберите формат, который ожидает ваш код обучения.
- Диапазоны кадров: экспортируйте определенные сегменты или всю задачу.
- Фильтры: экспортируйте только определенные метки или атрибуты, если это необходимо.
Обратитесь к официальной документации для получения актуальных вариантов экспорта и параметров. Для получения подробной информации об установке и образе сервера документация и страницы Docker Hub являются авторитетными источниками.
Практические сценарии и советы
Сценарий 1: Обнаружение объектов на полках розничных магазинов
- Метки:
продукт, ценник, рекламный_знак.
- Используйте рамки для скорости; добавьте такие атрибуты, как
акция=да/нет.
- Экспортируйте в YOLO для упрощенного конвейера обучения.
Сценарий 2: Сегментация дорожных полос
- Используйте полилинии или многоугольники.
- Интерполируйте по кадрам; корректируйте на поворотах.
- Экспортируйте в COCO panoptic/segmentation в зависимости от вашего фреймворка.
Сценарий 3: Соблюдение требований к защитному снаряжению
- Отслеживайте
человек, шлем, жилет на протяжении всего видео.
- Используйте отслеживание + атрибуты (
шлем=есть/нет).
- Тщательно проверяйте перекрытия в точках входа/выхода.
Профессиональные советы:
- Сохраняйте задачи размером до нескольких тысяч изображений или разделяйте длинные видео, чтобы пользовательский интерфейс оставался отзывчивым.
- Нормализуйте размеры изображений или сжимайте видео, чтобы сбалансировать производительность и четкость.
- Создавайте версии наборов данных — экспортируйте с четким тегом (например,
v1.2.0) и блокируйте задачи после завершения.
Устранение распространенных проблем
- Задержка пользовательского интерфейса на больших видео: разделите на более короткие задания; уменьшите разрешение предварительного просмотра и размер предварительной выборки.
- Смещение аннотаций при отслеживании: чаще добавляйте ключевые кадры, особенно во время быстрого движения или перекрытий.
- Запутанные метки: переработайте онтологию; переместите конкретные детали в атрибуты; предоставьте визуальные примеры.
- Несоответствие экспорта: перепроверьте ожидаемые поля вашей целевой библиотеки обучения (например, сопоставление индексов классов YOLO, идентификаторы категорий COCO).
Интеграция в ваш конвейер машинного обучения
- Предварительная обработка: измените размер/нормализуйте изображения перед загрузкой, чтобы ускорить аннотацию.
- Автоматизация: Предварительно разметьте с помощью быстрой модели, исправьте в CVAT, а затем повторите.
- CI для данных: относитесь к меткам как к коду — экспорты с версиями, контрольные суммы и журналы изменений.
- Хранилище: используйте облачные корзины и политики жизненного цикла для больших наборов видеоданных.
Стоит отметить: если вы используете AI-ассистентов для документирования рекомендаций, создания таксономий меток или обобщения отзывов рецензентов, такой инструмент, как Sider.AI, может помочь вам создать четкие инструкции и согласованные контрольные списки рецензирования. Вы можете фиксировать решения, создавать примеры и превращать их в общедоступные руководства для своей команды. См. Sider.AI для получения дополнительной информации. 30-минутный стартовый план
- 5 минут: установите и запустите CVAT локально.
- 5 минут: создайте проект с 3–5 метками и 2 атрибутами.
- 5 минут: создайте задачу со 100 изображениями.
- 10 минут: Аннотируйте 20 изображений с помощью рамок; изучите сочетания клавиш.
- 5 минут: экспортируйте в YOLO и выполните быстрый проход обучения.
К концу у вас будет полный цикл от необработанных изображений до обучаемого набора данных.
Где узнать больше
- Основы CVAT и учебные пособия от команды.
- Подробности установки и настройки.
- Образ сервера и ссылки на контейнеры.
- Исследования интерактивной/самостоятельной аннотации для видео, которые помогут ускорить рабочие процессы.
Основные выводы
- Сначала определите свои метки — проектирование схемы предотвращает проблемы в дальнейшем.
- Используйте интерполяцию и отслеживание для видео; разумно используйте ключевые кадры.
- Автоматическая аннотация ускоряет работу; проверка человеком обеспечивает качество.
- Экспортируйте в формате, который ожидает ваш код обучения; создавайте версии всего.
- Начните с малого, быстро повторяйте и масштабируйте с четкими правилами.
Часто задаваемые вопросы
Q1: Что такое CVAT и как его использовать для аннотации изображений?
CVAT — это платформа для разметки изображений и видео на основе браузера. Создайте проект, определите метки, загрузите данные в виде задачи, аннотируйте с помощью рамок или многоугольников и экспортируйте в таких форматах, как COCO или YOLO.
Q2: Как быстро установить CVAT?
Самый простой путь — использовать Docker. Следуйте официальным шагам установки, чтобы запустить сервер локально, а затем получите доступ к веб-интерфейсу в своем браузере для настройки и создания пользователя.
Q3: Может ли CVAT автоматически аннотировать или помогать с отслеживанием в видео?
Да, CVAT поддерживает интерполяцию и отслеживание для распространения аннотаций по кадрам и может интегрировать разметку с помощью модели для предварительной разметки объектов и ускорения проверки.
Q4: Какие форматы экспорта поддерживает CVAT?
Обычные экспорты включают COCO, YOLO и Pascal VOC. Выберите формат, который соответствует ожидаемой схеме вашей обучающей платформы и сопоставлению индексов классов.
Q5: Как управлять командами и контролем качества в CVAT?
Создавайте проекты с общими метками, разделяйте задачи на задания, назначайте роли (аннотаторы, рецензенты) и используйте рецензии, комментарии, золотые задачи и проверки перекрытий для обеспечения стабильного качества.