Редактор аннотаций
Платформа Ultralytics включает мощный редактор аннотаций для разметки изображений с помощью ограничивающих рамок, полигонов, ключевых точек, ориентированных рамок и классификаций. Редактор поддерживает ручную аннотацию, интеллектуальную аннотацию на базе SAM и автоматическую разметку YOLO.
graph TB
subgraph Manual["✏️ Manual Tools"]
A[Box] & B[Polygon] & C[Keypoint] & D[OBB] & E[Classify]
end
subgraph AI["🤖 AI-Assisted"]
F[SAM Smart] & G[Auto-Annotate]
end
Manual --> H[📁 Save Labels]
AI --> H
Поддерживаемые типы задач
Редактор аннотаций поддерживает все 5 типов задач YOLO:
| Задача | Инструмент | Формат аннотации |
|---|---|---|
| Обнаружение | Прямоугольник | Ограничивающие рамки (x, y, ширина, высота) |
| Сегментация | Полигон | Пиксельно-точные маски (вершины полигона) |
| Поза | Ключевая точка | 17-точечный скелет COCO |
| OBB | Ориентированная рамка | Повернутые ограничивающие рамки (4 угла) |
| Классификация | Селектор классов | Метки уровня изображения |
Детали задания
Обнаружение объектов
Что он делает: идентифицирует объекты и их местоположение с помощью ограничительных прямоугольников, выровненных по осям.
Формат этикетки: class_id center_x center_y width height (все нормализовано 0-1)
Пример: 0 0.5 0.5 0.2 0.3 — Класс 0 с центром в точке (50%, 50%), шириной 20% и высотой 30%.
Примеры использования: инвентаризация, мониторинг трафика, обнаружение диких животных, системы безопасности
Сегментация экземпляров
Что он делает: создает маски с пиксельной точностью для каждого экземпляра объекта.
Формат этикетки: class_id x1 y1 x2 y2 x3 y3 ... (вершины многоугольника, нормализованные 0-1)
Пример: 0 0.1 0.1 0.9 0.1 0.9 0.9 0.1 0.9 — Четырехугольная маска
Варианты использования: медицинская визуализация, автономные транспортные средства, редактирование фотографий, анализ в сельском хозяйстве
Оценка позы
Что он делает: обнаруживает ключевые точки тела для отслеживания скелета.
Формат этикетки: class_id cx cy w h kx1 ky1 v1 kx2 ky2 v2 ...
- Флаги видимости:
0=без маркировки,1=меченый, но окклюзированный,2=маркированный и видимый
Пример: 0 0.5 0.5 0.2 0.3 0.6 0.7 2 0.4 0.8 1 — Человек с 2 ключевыми моментами
Примеры использования: спортивный анализ, физиотерапия, анимация, распознавание жестов
Oriented Bounding Box (OBB)
Что он делает: обнаруживает повернутые объекты с помощью ограничительных рамок с учетом угла.
Формат этикетки: class_id x1 y1 x2 y2 x3 y3 x4 y4 (четыре угловые точки, нормализованные)
Пример: 0 0.1 0.1 0.9 0.1 0.9 0.9 0.1 0.9 — Повернутый прямоугольник
Варианты использования: аэрофотосъемка, анализ документов, контроль производства, обнаружение судов
Классификация изображений
Что делает: присваивает одно обозначение всему изображению.
Формат этикетки: На основе папок — изображения организованы по имени класса (train/cats/, train/dogs/)
Варианты использования: модерация контента, контроль качества, медицинская диагностика, распознавание сцен
Начало работы
Для аннотирования изображений:
- Перейдите к вашему набору данных
- Нажмите на изображение, чтобы открыть полноэкранный просмотрщик
- Нажмите Редактировать, чтобы войти в режим аннотирования
- Выберите инструмент аннотирования
- Нарисуйте аннотации на изображении
- Нажмите Сохранить по завершении
Инструменты ручной аннотации
Ограничивающая рамка (detect)
Нарисуйте прямоугольные рамки вокруг объектов:
- Выберите инструмент «Прямоугольник» или нажмите
B - Нажмите и перетащите, чтобы нарисовать прямоугольник
- Отпустите, чтобы завершить создание рамки
- Выберите класс из выпадающего списка
Изменение размера и перемещение
- Перетащите углы или края для изменения размера
- Перетащите центр для перемещения
- Нажмите
Deleteчтобы удалить выбранную аннотацию
Полигон (segment)
Нарисуйте точные полигональные маски:
- Выберите Полигон или нажмите
P - Нажмите, чтобы добавить вершины
- Дважды нажмите или нажмите
Enterчтобы замкнуть полигон - Выберите класс из выпадающего списка
Редактирование вершин
- Перетащите отдельные вершины для настройки
- Перетащите весь полигон для перемещения
- Нажмите на вершину и нажмите
Deleteчтобы удалить ее
Ключевая точка (Поза)
Разместите 17 ключевых точек COCO для позы человека:
- Выберите Ключевая точка или нажмите
K - Нажмите, чтобы разместить ключевые точки последовательно
- Следуйте порядку скелета COCO
17 ключевых точек COCO:
| # | Ключевая точка | # | Ключевая точка |
|---|---|---|---|
| 1 | Нос | 10 | Правое запястье |
| 2 | Левый глаз | 11 | Левое бедро |
| 3 | Правый глаз | 12 | Правое бедро |
| 4 | Левое ухо | 13 | Левое колено |
| 5 | Правое ухо | 14 | Правое колено |
| 6 | Левое плечо | 15 | Левая лодыжка |
| 7 | Правое плечо | 16 | Правая лодыжка |
| 8 | Левый локоть | 17 | (зарезервировано) |
| 9 | Правый локоть |
Oriented Bounding Box (OBB)
Нарисуйте повернутые ограничивающие рамки для наклонных объектов:
- Выберите OBB или нажмите
O - Нажмите и перетащите, чтобы нарисовать исходную рамку
- Используйте маркер поворота для регулировки угла
- Выберите класс из выпадающего списка
Классификация (classify)
Назначение меток классов на уровне изображения:
- Выберите режим classify
- Нажимайте кнопки классов или цифровые клавиши
1-9 - На одно изображение можно назначить несколько классов
Умная аннотация SAM
Segment Anything Model (SAM) позволяет выполнять интеллектуальную аннотацию всего за несколько кликов:
- Выберите SAM режим или нажмите
S - Левый клик для добавления положительных точек (включить эту область)
- Правый клик для добавления отрицательных точек (исключить эту область)
- SAM генерирует точную маску в реальном времени
- Нажмите Принять, чтобы преобразовать в аннотацию
Советы по SAM
- Начните с положительного клика по центру объекта
- Добавьте отрицательные клики для исключения фона
- Лучше всего работает для отдельных объектов с четкими границами
Интеллектуальная аннотация SAM может генерировать:
- Полигоны для задач сегментации
- Ограничивающие рамки для задач обнаружения
- Ориентированные рамки для задач obb
Автоматическая аннотация YOLO
Используйте обученные модели YOLO для автоматической разметки изображений:
- Выберите Автоматическая аннотация режим или нажмите
A - Выберите модель (официальную или ваши обученные модели)
- Установите порог достоверности
- Нажмите Запустить, чтобы сгенерировать предсказания
- Просмотрите и отредактируйте результаты по мере необходимости
Модели автоаннотирования
Вы можете использовать:
- Официальные Ultralytics (YOLO26n, YOLO26s и т. д.)
- Ваши собственные обученные модели с Платформы
Управление классами
Создание классов
Определите классы аннотаций для вашего набора данных:
- Нажмите Добавить класс на панели классов
- Введите имя класса
- Цвет назначается автоматически
Добавить новый класс во время аннотирования
Вы можете создавать новые классы непосредственно во время аннотирования, не выходя из редактора:
- Нарисуйте аннотацию на изображении
- В раскрывающемся списке классов нажмите «Добавить новый класс».
- Введите имя класса
- Нажмите Enter, чтобы создать и назначить
Это позволяет обеспечить бесперебойный рабочий процесс, в котором вы можете определять классы по мере появления новых типов объектов в ваших данных.
Таблица унифицированных классов
Все классы в вашем наборе данных управляются в единой таблице. Изменения в названиях классов или цветах автоматически применяются ко всему набору данных.
Редактирование классов
- Нажмите на класс, чтобы выбрать его для новых аннотаций
- Дважды нажмите для переименования
- Перетащите для изменения порядка
- Нажмите правой кнопкой мыши для дополнительных опций
Цвета классов
Каждому классу присваивается цвет из палитры Ultralytics. Цвета единообразны по всей Платформе для легкого распознавания.
Горячие клавиши
Эффективное аннотирование с помощью горячих клавиш:
| Горячая клавиша | Действие |
|---|---|
B | Инструмент «Прямоугольник» (detect) |
P | Инструмент «Полигон» (segment) |
K | Инструмент «Ключевые точки» (pose) |
O | Инструмент obb |
S | Умное аннотирование SAM |
A | Автоаннотирование |
V | Режим выбора/перемещения |
1-9 | Выбрать класс 1-9 |
Delete | Удалить выбранную аннотацию |
Ctrl+Z | Отменить |
Ctrl+Y | Повторить |
Escape | Отменить текущую операцию |
Enter | Завершить полигон |
←/→ | Предыдущее/следующее изображение |
Посмотреть все сочетания клавиш
Нажмите ? для открытия диалогового окна сочетаний клавиш.
Отменить/Повторить
Редактор аннотаций поддерживает полную историю:
- Отменить:
Ctrl+Z(Cmd+Z на Mac) - Повторить:
Ctrl+Y(Cmd+Y на Mac)
История включает:
- Добавление аннотаций
- Редактирование аннотаций
- Удаление аннотаций
- Изменение классов
Сохранение аннотаций
Аннотации сохраняются при нажатии кнопки Сохранить или при переходе на другую страницу:
- Сохранить: Нажмите кнопку сохранения или нажмите
Ctrl+S - Отмена: Нажмите отмену, чтобы отменить изменения
- Предупреждение об автосохранении: Несохраненные изменения вызывают запрос перед выходом
Сохраните свою работу
Всегда сохраняйте изменения перед переходом к другому изображению. Несохраненные изменения будут потеряны.
Часто задаваемые вопросы
Насколько точна аннотация SAM?
SAM обеспечивает высококачественные маски для большинства объектов. Точность зависит от:
- Отличимость объекта от фона
- Качество и разрешение изображения
- Количество предоставленных положительных/отрицательных точек
Для достижения наилучших результатов начните с положительной точки в центре объекта и добавьте отрицательные точки для исключения близлежащих объектов.
Можно ли импортировать существующие аннотации?
Да, загрузите свой набор данных с файлами меток в формате YOLO. Платформа автоматически анализирует и отображает их в редакторе.
Как аннотировать несколько объектов одного класса?
После создания аннотации:
- Сохраняйте выбранный класс
- Создайте следующую аннотацию
- Повторяйте, пока все объекты не будут размечены
Сочетание клавиш 1-9 быстро выбирает классы.
В чем разница между SAM и автоматической аннотацией?
| Функциональность | SAM | Автоматическая аннотация |
|---|---|---|
| Метод | Интерактивные точечные подсказки | Инференс модели |
| Скорость | По одному объекту за раз | Все объекты сразу |
| Точность | Очень высокая с подсказками | Зависит от модели |
| Лучше всего подходит для | Сложных объектов, мелких деталей | Массовой разметки, простых объектов |
Можно ли обучать модели на частично аннотированных наборах данных?
Да, но для достижения наилучших результатов:
- Разметьте все объекты целевых классов на каждом изображении
- Используйте разбиение unknown для неразмеченных изображений
- Исключите неразмеченные изображения из конфигурации обучения