⚔️ Спор / 🤖 Технологии и ИИ
📅 01.08.2026 21:07

Crazy Studio: редактор датасетов для изображений, текста, аудио и видео

Создайте и редактируйте датасеты для изображений, текста, аудио и видео с помощью Crazy Studio — мощного редактора, который упрощает работу с различными медиаформатами.

Краткий пересказ от QRazy ИИ

  • Crazy Studio позволяет быстро создавать проекты и разметить данные для обучения моделей ИИ.
  • Редактор поддерживает разметку изображений, текстов, аудио и видео, с возможностью добавления нескольких классов к объектам.
  • Каждый датасет может быть экспортирован в разные форматы, включая COCO JSON и YOLO, что упрощает интеграцию с фреймворками.

Я занимаюсь разработкой в области искусственного интеллекта и постоянно сталкиваюсь с задачами, для которых недостаточно просто взять готовую модель и запустить её на своих данных. Модель может хорошо работать на стандартных тестах, но начинать ошибаться, как только условия немного отличаются от тех, на которых её обучали.

В таких случаях модель приходится дообучать. А для дообучения нужны собственные данные: изображения, тексты, аудиозаписи или видео с разметкой, которая соответствует конкретной задаче.

Недавно мне понадобилось экспериментировать с моделями, способными находить объекты в небе и определять их тип. Например, отличать самолёт от вертолёта, беспилотника, птицы или другого небольшого объекта. Для тестов были нужны свои датасеты, собранные из материалов с конкретных камер и размеченные по моим правилам.

Я посмотрел существующие решения, но для небольших экспериментов многие из них оказались слишком перегруженными. Где-то нужно долго настраивать проект, где-то интерфейс рассчитан на большие команды, а где-то половина функций мне просто не нужна.

Поэтому я сделал Crazy Studio — свой браузерный редактор датасетов. В нём можно быстро создать проект, загрузить материалы, добавить классы и перейти к разметке без долгой подготовки.

Зачем вообще нужны собственные датасеты

Готовые модели обычно обучаются на больших универсальных наборах данных. Это полезная отправная точка, но реальная задача почти всегда имеет свои особенности.

Допустим, модель умеет находить самолёты на фотографиях. На обычных снимках из интернета она работает хорошо: самолёт крупный, фон чистый, ракурс понятный. Но камера наблюдения может давать совсем другое изображение. Объект занимает несколько десятков пикселей, небо закрыто облаками, картинка шумит, а форма самолёта почти неразличима.

Для модели это уже другой набор данных. Если она не видела подобных примеров во время обучения, результат может оказаться слабым.

Поэтому для узкой задачи я стараюсь собирать материалы именно из тех условий, в которых система будет работать:

  • с разных камер и объективов;
  • при ясной и облачной погоде;
  • днём, вечером и в сумерках;
  • с крупными и очень маленькими объектами;
  • с размытием, цифровым шумом и сильным увеличением;
  • с разными углами и расстояниями до объекта.

После сбора изображения ещё нужно разметить. Необходимо указать модели, где именно находится объект и к какому классу он относится. Именно для этого мне и понадобился отдельный инструмент.

Как устроен Crazy Studio

Crazy Studio работает в браузере. Для начала нужно создать проект и выбрать тип данных, с которыми предстоит работать:

  • изображения;
  • тексты;
  • аудиозаписи;
  • видео.

Тип задаётся при создании проекта. Это сделано специально: инструменты разметки изображений сильно отличаются от инструментов для текста или аудио, поэтому смешивать всё в одной рабочей области нет смысла.

Внутри проекта можно создать несколько датасетов. Например, отдельно хранить данные для обучения, проверки и финального тестирования модели:

Training
Validation
Test

Другой вариант — разделить материалы по источнику или условиям съёмки:

Camera 1
Camera 2
Day
Night
Cloudy

Такое разделение помогает понимать, какие данные уже собраны и на каких материалах модель показывает слабый результат.

Разметка объектов на изображениях

Для изображений в Crazy Studio доступны прямоугольные области и полигоны.

Прямоугольные рамки

Прямоугольник подходит для большинства задач обнаружения объектов. Пользователь выделяет нужную область на изображении и назначает ей класс.

В моём случае набор классов может выглядеть так:

airplane
helicopter
drone
bird
unknown

Если на одном кадре находится самолёт и несколько птиц, каждый объект размечается отдельно. В результате модель получает не только название класса, но и координаты объекта на изображении.

Такой формат можно применять не только для неба. Прямоугольные области подходят для разметки людей, автомобилей, животных, дорожных знаков, товаров, деталей и других объектов.

Полигоны

Иногда прямоугольник захватывает слишком много фона. Тогда объект можно обвести полигоном, последовательно расставляя точки по его границе.

Полигоны пригодятся для разметки объектов сложной формы:

  • дорог и тротуаров;
  • зданий;
  • полей и водоёмов;
  • трещин и других повреждений;
  • деталей оборудования;
  • областей на медицинских снимках.

Для моих тестов с небом полигон может понадобиться, когда нужно выделить точный силуэт объекта, а не просто его примерное положение.

Несколько классов для одного объекта

Один объект не всегда описывается одной меткой. Например, беспилотник можно обозначить не только классом drone, но и дополнительными характеристиками:

drone
small
far
blurred

В Crazy Studio одной области можно назначить несколько классов. Это удобнее, чем создавать отдельные категории для каждого сочетания признаков.

Вместо класса small_blurred_drone объект получает три независимые метки:

drone
small
blurred

В дальнейшем такие данные проще фильтровать и преобразовывать под нужный формат обучения.

Разметка текстов

Crazy Studio можно использовать не только для компьютерного зрения. В текстовом проекте пользователь выделяет отдельные слова, предложения или произвольные фрагменты.

Например, в тексте можно отмечать:

  • имена людей;
  • названия компаний;
  • страны и города;
  • даты;
  • адреса;
  • товары;
  • события;
  • модели устройств.

В предложении:

Компания CrazyLayer разработала новый редактор датасетов.

можно выделить слово CrazyLayer и назначить ему класс company.

Такие датасеты подходят для обучения моделей, которые извлекают сущности из новостей, документов, договоров, сообщений пользователей и других текстовых материалов.

Текстовые проекты также можно использовать для классификации контента. Например, размечать сообщения по категориям:

spam
advertising
insult
threat
normal

На такой выборке можно дообучить модель для модерации комментариев или автоматической сортировки обращений.

Разметка аудиозаписей

В аудиопроектах разметка создаётся на временной шкале. Пользователь указывает начало и конец нужного фрагмента, а затем назначает ему класс.

Например, в записи разговора можно отметить:

operator
client
silence
background_noise

В проекте по распознаванию звуков набор классов будет другим:

engine
alarm
music
dog
shot

Созданные интервалы можно перемещать и изменять по длине. Это полезно, когда границы события удалось определить точнее уже после первого прослушивания.

Для задачи с объектами в небе можно собирать записи двигателей самолётов, вертолётов и беспилотников, а затем отмечать участки, на которых звук действительно слышен.

Разметка видео

Видео размечается временными интервалами по похожему принципу. Пользователь указывает момент начала события и момент его окончания.

Так можно отмечать:

  • появление объекта в кадре;
  • начало движения;
  • падение человека;
  • остановку автомобиля;
  • смену сцены;
  • определённое действие;
  • нарушение техники безопасности.

В моём случае интервал может обозначать время, в течение которого самолёт или беспилотник остаётся видимым в кадре.

Это не заменяет покадровую разметку, если она действительно нужна модели. Но для задач обнаружения события во времени интервалы позволяют подготовить данные намного быстрее.

В какие форматы можно экспортировать датасет

Форматы датасетов
Форматы датасетов

Сделать разметку — только половина работы. Дальше её нужно передать в скрипт обучения, библиотеку компьютерного зрения или собственный обработчик. Поэтому в Crazy Studio я добавил несколько вариантов экспорта под разные типы проектов.

При выгрузке можно выбрать текущий датасет или весь проект. Также можно добавить в ZIP исходные изображения, тексты, аудио и видео. Если файлы уже лежат отдельно и нужна только разметка, эту опцию можно отключить.

Universal JSON

Универсальный JSON доступен для изображений, текста, аудио и видео. Он сохраняет структуру проекта целиком: классы, датасеты, материалы, объекты разметки, геометрию и назначенные метки.

Этот формат удобен для резервной копии, переноса данных в собственный сервис или написания своего конвертера. Если мне нужен максимум информации без привязки к конкретному фреймворку, я выбираю именно Universal JSON.

JSON Lines

В формате JSON Lines каждый материал записывается отдельной строкой в файле dataset.jsonl. В строке находятся данные проекта, название датасета, сведения о файле и все его аннотации.

Такой вариант проще читать последовательно, не загружая весь экспорт в память. Он подходит для больших наборов данных, серверной обработки и собственных Python-скриптов.

YOLO

YOLO доступен для проектов с изображениями. Для прямоугольной разметки сохраняются номер класса, центр рамки, ширина и высота. Все координаты нормализованы и записываются в диапазоне от 0 до 1.

Полигоны тоже поддерживаются: после номера класса в строку записываются координаты всех точек. Поэтому один и тот же экспортёр можно использовать и для обнаружения объектов, и для сегментации.

В архив входят dataset.yaml, classes.txt, каталог labels и, если включена соответствующая опция, каталог images. Этот формат я использую, когда хочу быстро перейти от разметки к обучению модели семейства YOLO.

Crazy Studio не разбивает один экспорт автоматически на train, validation и test. Для этого я создаю отдельные датасеты Training, Validation и Test и выгружаю их раздельно.

COCO JSON

COCO JSON также предназначен для изображений. В одном файле annotations.json сохраняются список изображений, категории и аннотации. Прямоугольники записываются как bounding box, а полигоны — как сегментация с набором точек.

Этот формат удобен, когда код обучения или готовая библиотека уже ожидают структуру COCO. Он также подходит для обмена датасетом между разными инструментами компьютерного зрения.

Pascal VOC

При экспорте в Pascal VOC для каждого изображения создаётся отдельный XML-файл с размерами изображения, названием класса и координатами прямоугольной области.

Pascal VOC пригодится для старых проектов и инструментов, которые работают с XML-разметкой. Нужно учитывать, что полигон при таком экспорте превращается в обычную прямоугольную рамку по его внешним границам. Точная форма объекта в этом формате не сохраняется.

spaCy JSON

Для текстовых проектов доступен экспорт в spaCy JSON. В нём сохраняется исходный текст и список выделенных сущностей: начальная позиция, конечная позиция и название класса.

Например, выделенное название компании можно выгрузить как сущность company, а имя человека — как person. Такой файл можно использовать при подготовке данных для распознавания именованных сущностей и других задач обработки текста.

Audacity Labels

Для аудио и видео можно выбрать Audacity Labels. Crazy Studio создаёт текстовый файл, где каждая строка содержит время начала, время окончания и названия классов временного интервала.

Файл можно открыть вместе с записью в Audacity или обработать собственным скриптом. Формат подходит для разметки речи, шума, музыки, звуков оборудования и событий в видео.

Что происходит с несколькими классами

В Crazy Studio одному объекту можно назначить несколько классов. Универсальные форматы сохраняют их вместе с объектом. Если выбран формат, в котором одна запись рассчитана только на один класс, редактор создаёт отдельную запись для каждой метки.

Например, объект с классами drone, small и blurred попадёт в YOLO как три строки с одинаковыми координатами, но разными номерами классов. Это стоит учитывать перед обучением: дополнительные признаки не всегда нужно смешивать с основными категориями объектов.

Для каких задач можно использовать редактор

Изначально я делал Crazy Studio для собственных экспериментов, но сам принцип разметки подходит для разных направлений.

Обнаружение объектов

Можно собирать датасеты с автомобилями, людьми, животными, товарами, документами, объектами в небе или деталями оборудования.

Поиск дефектов

На изображениях можно отмечать трещины, сколы, царапины, коррозию, загрязнения и другие повреждения. Затем эти данные используются для обучения модели, которая должна находить похожие дефекты автоматически.

Обработка документов

В текстах можно выделять даты, суммы, номера договоров, организации, имена и адреса. Такие датасеты пригодятся для обработки счетов, договоров, анкет и обращений.

Распознавание звуков

Аудиозаписи можно размечать по голосам, типам шума, сигналам, звукам транспорта или оборудования.

Анализ событий в видео

В видео можно отмечать момент появления объекта, начало действия или нужный эпизод. Это подходит для видеонаблюдения, спортивной аналитики и анализа длинных записей.

Как я обычно начинаю новый датасет

Я стараюсь не загружать в проект сразу тысячи файлов. Сначала беру небольшой набор примеров и прохожу весь процесс от начала до конца.

  1. Создаю проект нужного типа.
  2. Добавляю тестовый датасет.
  3. Загружаю несколько десятков материалов.
  4. Создаю основные классы.
  5. Размечаю первые примеры.
  6. Проверяю, достаточно ли выбранных классов.
  7. При необходимости меняю правила разметки.
  8. Только после этого загружаю основную выборку.

На первых двадцати или тридцати примерах обычно становится понятно, какие ситуации я не учёл.

Например, в проекте по объектам в небе быстро появляется вопрос: что делать с маленькой точкой, которую невозможно уверенно определить? Можно ли считать её беспилотником, нужно ли использовать класс unknown или такой кадр лучше вообще не добавлять в обучающую выборку?

Подобные правила лучше определить до массовой разметки. Иначе одинаковые случаи будут обозначаться по-разному, а в данных появится лишний шум.

Почему качество разметки важнее количества файлов

Большой датасет сам по себе не гарантирует хороший результат. Если в нём перепутаны классы, пропущены объекты или неточно выставлены границы, модель будет учиться на этих ошибках.

Представим, что похожая маленькая точка в небе на одном изображении размечена как drone, на другом как bird, а на третьем вообще не отмечена. Для человека причина может быть понятна: объект плохо различим. Модель видит только противоречивые ответы.

Поэтому я предпочитаю сначала сделать небольшой, но аккуратный набор данных. Если он даёт нужный результат, объём уже можно постепенно увеличивать.

Почему я не стал перегружать Crazy Studio

В крупных системах разметки есть роли пользователей, сложные рабочие процессы, контроль качества, распределение задач и десятки дополнительных инструментов. Для больших команд всё это может быть необходимо.

Моя задача была другой. Мне нужен был простой редактор, с которым можно быстро проверить идею:

  1. Создать проект.
  2. Загрузить материалы.
  3. Добавить классы.
  4. Разметить данные.
  5. Выгрузить результат.

Я не пытался заменить все существующие платформы. Я собрал инструмент под ситуации, когда нужно быстро подготовить собственный датасет и перейти к тестированию или дообучению модели.

Что я планирую добавлять дальше

Crazy Studio остаётся рабочим проектом, который я продолжаю дорабатывать по мере появления новых задач.

В дальнейшем в редакторе могут появиться новые форматы импорта, дополнительные экспортёры, инструменты проверки разметки, статистика по классам, предварительная автоматическая разметка и более удобная работа с большими выборками.

Но основной принцип я хочу сохранить: между загрузкой файла и созданием первой разметки должно быть как можно меньше лишних действий.

Как попробовать Crazy Studio

Редактор доступен по адресу studio.crazylayer.com .

После входа можно создать проект для изображений, текста, аудио или видео, добавить собственные классы и загрузить тестовые материалы.

Для начала лучше взять небольшой реальный пример из своей задачи. Так быстрее становится понятно, подходит ли выбранный способ разметки и какие классы действительно нужны.

В общем, пользуйтесь редактором датасетов Crazy Studio — он абсолютно бесплатный! А я постараюсь регулярно его обновлять, улучшать и добавлять новые возможности.

Открыть Crazy Studio и создать первый датасет

👁 119 💬 0 👍 0 👎 0