Семантическая сегментация изображений в CVAT |
||
МЕНЮ Главная страница Поиск Регистрация на сайте Помощь проекту Архив новостей ТЕМЫ Новости ИИ Голосовой помощник Разработка ИИГородские сумасшедшие ИИ в медицине ИИ проекты Искусственные нейросети Искусственный интеллект Слежка за людьми Угроза ИИ ИИ теория Внедрение ИИКомпьютерные науки Машинное обуч. (Ошибки) Машинное обучение Машинный перевод Нейронные сети начинающим Психология ИИ Реализация ИИ Реализация нейросетей Создание беспилотных авто Трезво про ИИ Философия ИИ Big data Работа разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика
Генетические алгоритмы Капсульные нейросети Основы нейронных сетей Распознавание лиц Распознавание образов Распознавание речи Творчество ИИ Техническое зрение Чат-боты Авторизация |
2022-04-22 14:07 Друзья, мы начинаем цикл статей-туториалов по разметке данных с помощью разного ПО. Начать мы решили с самого знаменитого из всех бесплатных инструментов - Computer Vision Annotation Tool. Им может воспользоваться буквально любой желающий, достаточно только зарегистрироваться. Однако, для новичков интерфейс и управление может показаться непонятным. Мы решили исправить это и разобрать разметку в CVAT на примере задач семантической сегментации. Шаг 1: регистрация и создание проекта в CVAT Как только мы попадаем на сайт, нам сразу предлагают авторизоваться в личном кабинете. Без этого этапа вы не сможете ни присоединиться к выполнению, если вы исполнитель, ни создать свой собственный проект. Если аккаунта нет, пройдите простую процедуру регистрации. Далее вы попадаете в основной интерфейс CVAT. Чтобы создать свой первый проект, переходим во вкладку Project и кликаем на + (см. скриншот ниже) Выбираем “Create a new project” и начинаем заполнять информацию. На скриншоте мы уже ввели название проекта “Семантическая сегментация” и указали классы и их цвета, актуальные для наших изображений. А именно background:0,0,0:: Далее, нам нужно создать Task. Для этого заходим в Project, выбираем созданный нами проект и в открывшемся окне кликаем на + (см. скриншот ниже). В новом окне нам нужно написать имя таска и загрузить исходные данные. Можно либо перетащить изображения по одному или загрузить сразу архив. Также нужно задать дополнительные настройки ниже в разделе Advanced configuration. Кликните по нему, чтобы открылось окно. В нем нас будут интересовать 3 параметра:
Не забудьте нажать на кнопку submit в конце страницы, чтобы сохранить свои настройки. После всех этих манипуляций в окне вашего таска появится первый джоб. Кликните по кнопке Open и всё, можно будет приступить к разметке (см. скриншот ниже). Шаг 2: Семантическая сегментация объектов в CVAT ВНИМАНИЕ: все описанные действия относятся к многоклассовой семантической сегментации. Ее используют для задач, в которых на одной сцене могут присутствовать сразу несколько классов объектов. В нашем случае это машины, люди, дорога, велосипедисты. Но бывает и так, что нужно сегментировать только один объект в кадре. Например, кружку. В таком случае вы просто создаете один класс. Итак, мы попадем в основной интерфейс для разметки в CVAT. Перед нами представлено само изображение, справа меню с объектами, слоями и классами, а слева инструменты. При наведении на него, откроется окно с выбором классов. Выберите тот, с которого хотите начать и нажмите Shape. Теперь наша задача — как можно аккуратнее обвести нужный объект по контуру. Сделать это одним движением - очень сложно, поэтому мы используем полигоны, расставляя точки, которые потом будут соединены в одну маску. Вот как выглядит полностью разметка одного объекта: Учитывайте то, что эта видео ускорено в несколько раз. На самом деле процесс сегментации достаточно долгий, так как важно очень точно соблюсти контуры. Точки можно расставлять двумя способами:
Следующая неочевидная вещь, полезная при сегментации изображений — отмена неправильно поставленных точек. Рефлекторно многие разметчики нажимают комбинацию Ctrl+Z, однако это неправильно. Это комбинация отменяет маску целиком, а не точку. Чтобы отменять неправильные точки, нужно кликать на правую кнопку мыши. Пример ниже: Когда вы проставите точки по всему контуру объекта, маску необходимо закрыть. Для этого доведите последнюю точку до первой и нажмите английскую клавишу N. После этого появится завершенная маска с цветом, соответствующим выбранному классу. Пример ниже: Следующий лайфхак, которым мы хотим поделиться связан с разметкой границ между двумя соприкасающимися объектами. Например, на нашем фото контур человека и машины пересекаются. В этом месте уже стоят точки от маски пешехода. Как быть в такой ситуации? Чтобы не размечать по одному и тому же контуру и сделать всё аккуратно, достаточно воспользоваться еще одной фишкой CVAT. В тех местах, где контур масок соприкасается, нужно выбрать первую, вторую и последнюю точки соприкосновения. Сервис автоматически пометит остальные точки между ними. Пример ниже: Таким образом мы сэкономили много времени, не размечая одно и то же два раза. Также можно и поступить с сегментацией дороги. Ведь она же соприкасается не только с машинами, но и с двумя пешеходами. Еще раз воспользуемся уже размеченные контуры и проблемные места получается аннотировать за считанные секунды. Ниже пример: Таким образом можно разметить классы всех нужных объектов и перейти к экспорту уже размеченного датасета. ВНИМАНИЕ: Напоминаем, что CVAT — это веб-инструмент. Ошибки с сервером или интернетом могут возникнуть в любой момент. Поэтому рекомендуем после сегментации каждого класс сохранять прогресс. Шаг 3: Экспорт разметки Чтобы экспортировать данные, кликаем на меню и выпавшем списке выбираем Export task dataset. В появившемся окне нужно выбрать формат выгрузки (в случае сегментации изображений это segmentation mask), ставим галочку, чтобы в архиве были не только маски, но исходники, и даем название архиву. Скаченный архив будет содержать:
Заключение В этой статье мы рассмотрели самые главные нюансы и способы семантической сегментации изображений в CVAT. Мы очень надеемся, что статья была вам полезна. Мы и впредь будет писать подобные материалы с разборами разных видов разметки и сервисов. Дайте знать, если у вас будут конкретные пожелания и вопросы. Источник: habr.com Комментарии: |
|