Компьютерное зрение
Понимание аннотаций Pascal VOC и COCO для обнаружения объектов
Вступление
В предыдущем блоге мы создали наборы данных COCO и Pascal VOC для обнаружения и сегментации объектов. Итак, мы собираемся глубоко погрузиться в эти наборы данных.
Паскаль VOC
PASCAL (Анализ шаблонов, статистическое моделирование и вычислительное обучение) - это сеть передового опыта ЕС. Они проводили Visual Object Challenge (VOC) с 2005 по 2012 год.
Файловая структура, полученная после аннотаций от VoTT, выглядит следующим образом.
Этими четырьмя компонентами являются Annotations, ImageSets, JPEGImages, и pascal_label_map.pbxt..
Перейдем к аннотациям; наконец, JPEGImages - это папка, содержащая оригинальные изображения. Наборы изображений содержат два текстовых файла, один поезд и другой действительный внутри основной папки, содержащей список изображений в поездке и действительный.
Pascal_label_map.pbxt содержит идентификатор и имя обнаруживаемого объекта.
pascal_label_map.pbxt
item { id: 1 name: ‘cricketers’ }
Последний и самый важный раздел - Аннотации, файлы аннотаций создаются для каждого изображения в данной папке.
Аннотации хранятся в XML-файле, и давайте рассмотрим один образец XML-файла.
Выводу XML соответствуют различные компоненты или теги.
папка: содержит изображения.
filename: относительный путь к аннотируемому изображению.
путь: абсолютный путь к выходному файлу после аннотаций.
размер: высота, ширина в пикселях, глубина, указывающая количество каналов для изображения RGB, равна 3, для черно-белого - 1.
объект: содержит имя, позу, усеченный, сложный.
- name: содержит имя аннотируемого объекта, в нашем случае это игроки в крикет.
- поза: ориентация влево, вправо и т. д.
- усеченный: если объекты выходят за пределы ограничивающей рамки, усеченное значение равно 1, иначе 0.
- сложно: если не оценивается, сложно - 1, иначе 0.
bndbox: ограничивающая рамка состоит из верхнего левого и нижнего правого углов (xmin-top left, ymin-top left, xmax-bottom right, ymax-bottom right)
COCO
COCO - это обычный объект в контексте. Набор данных содержит 91 тип объектов из 2,5 миллионов помеченных экземпляров на 328 000 изображений.
COCO используется для обнаружения объектов, сегментации и подписи набора данных.
- Сегментация объекта
- Признание в контексте
- Сегментация суперпиксельного материала
COCO хранит аннотации в формате JSON, в отличие от формата XML в Pascal VOC.
В официальном документе COCO указано, что у него есть пять обнаружение объектов, обнаружение ключевых точек, сегментация материала, паноптическая сегментация и субтитры к изображениям.
Базовая структура данных аннотаций COCO одинакова для всех пяти типов. Для всех изображений существует единая аннотация, отличная от аннотаций Pascal VOC.
Давайте подробнее рассмотрим файл аннотации.
Четыре основных компонента: информация, изображения, аннотации и лицензия.
info: содержит стандартную информацию / описание изображений.
изображения: все сведения о каждом отдельном изображении, как показано на рисунке выше.
лицензия: состоит из лицензии, применимой к этому изображению.
Здесь мы сосредоточимся на аннотациях обнаружения объектов.
Аннотации, чтобы понять их, сначала нужно понять, что такое категории.
Категории содержат список всех изображений с уникальным идентификатором и его суперкатегорией, например, суперкатегория игроков будет игроками в крикет, и каждый игрок в крикет будет иметь уникальный идентификатор.
"categories": [ {"supercategory": "cricketers","id": 1,"name": "Sachin"}, {"supercategory": "cricketers","id": 2,"name": "Stokes"}, {"supercategory": "umpire","id": 3,"name": "Bucknor"}, {"supercategory": "cricketers","id": 4,"name": "Waugh"}, {"supercategory": "umpire","id": 5,"name": "Taufel"}, ]
Количество аннотаций будет равно общему количеству объектов, представляющих полные наборы данных изображений.
Маска конвертируется в аннотацию COCO.
Аннотация состоит из segmentation, iscrowd, image_id, category_id, id, bbox, и area.
[{'segmentation': [[236.0,616.5,610.5,...,613.5,233.0,612.5,236.0,616.5]], 'iscrowd': 0, 'image_id': 1, 'category_id': 1, 'id': 1, 'bbox': (199.5, 126.5, 474.0, 490.0), 'area': 103944.0}]
- сегментация: используется список вершин многоугольника для кластера с кодированием длин серий (RLE). RLE сохраняет повторяющиеся значения по количеству их повторений.
- iscrowd: 0 для отдельного объекта и 1 для кластера объектов.
- image_id: уникальный идентификатор, соответствующий изображению в наборе данных.
- category_id: соответствует категории.
- id: уникальный идентификатор для каждой аннотации.
- площадь: площадь ограничивающей рамки в пикселях.
- bbox: список, содержащий [верхнее левое положение по x, верхнее левое положение по оси Y, ширина, высота]
В следующем блоге мы читаем о различных методах обнаружения объектов и используем данные COCO и Pascal VOC.
😊