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

Автоматизация подготовки датасета для задачи сегментации объектов: от сбора данных до готового прототипа за пару дней

2025/12/31 14:15
5м. чтение
Для обратной связи или замечаний по поводу данного контента, свяжитесь с нами по адресу crypto.news@mexc.com

Проблема

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

Классический подход для решения задачи под ключ для уникальных типов классов — это дни и даже недели ручной работы для получения качественного результата:

  • Сбор и запись данных

  • Удаление дубликатов вручную

  • Ручная разметка тысяч изображений (Это и деньги, и время)

  • Валидация качества данных (Это тоже и деньги, и время)

  • Подготовка датасета для обучения

Для маленькой команды, стартапа, ...

У нас нет на это времени. Прототипируем быстро!
У нас нет на это времени. Прототипируем быстро!

Огромным боттлнэком для нас тут является разметка данных.

А что если весь этот процесс можно автоматизировать и сократить с недель до нескольких минут? Именно такую систему мы разработали буквально за пару дней для проекта.

Ограничения и вызовы

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

  • Модели должны быть компактными (мы используем YOLO-like сеточку размера nano, small)

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

  • Нужна максимальная эффективность каждого этапа пайплайна

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

Решение: автоматизированный пайплайн

af7cab984104e865cf7b0de1a340e198.png

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

1. Сбор данных из ROS2 bag-файлов

Данные записываются в ROS2 bag-формате, затем извлекаются с помощью ros2_bag_exporter. Это стандартный подход для робототехнических проектов.

2. Умное удаление дубликатов

57a9b2ad0a2e1b4d5138a83818d36f72.png

Компонент: dataset_aggregator.py

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

  • Извлекает эмбеддинги изображений с помощью ResNet50

  • Хранит их в Milvus Lite (легковесная векторная БД)

  • Сравнивает новые изображения с существующими по косинусному сходству

  • Добавляет только те изображения, которые семантически отличаются (порог настраивается, по умолчанию 0.95)

Это позволяет отфильтровать похожие кадры, которые не принесут нам пользу во время обучения. А хранение эмбеддингов в БД дает нам большую скорость обработку данных и сравнение кадров almost real-time.

3. Автоматическая преданотация с SAM3

29e4cdad7cd01364ba1e92a9c825524a.png

Компонент: sam3_preannotator.py

  • SAM3 работает с текстовыми промптами для семантической сегментации

  • Система автоматически генерирует аннотации в формате COCO

  • Объединяет перекрывающиеся детекции одного класса

  • Валидирует аннотации для совместимости с CVAT

PS Кстати, доступ к модели можете получить тут

У них еще есть модификация sam3d-objects. Мы так же думаем ее использовать для генерации 3д моделей объектов для проекта.

Результат: 1000 изображений размечаются за 5 минут вместо нескольких дней ручной работы!

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

4. Активное обучение для селективного отбора данных

Компонент: active_learning.py

Это ключевой компонент для эффективного обучения. Система автоматически отбирает наиболее информативные изображения:

  1. Запускает инференс обученной YOLO-модели на новых изображениях

  2. Запускает SAM3 на тех же изображениях

  3. Сравнивает результаты — если детекции сильно отличаются, это означает, что модель не уверена или ошибается

  4. Сохраняет такие изображения с аннотациями от SAM3 для дальнейшей выгрузки в CVAT

Логика проста: если модель и SAM3 дают разные результаты, значит, это случай, который поможет нашей модели улучшиться. Если результаты совпадают, skip. Тут мы предполагаем, что качество SAM3 плюс-минус равно GT, словно мы каждый кадр вручную размечали.

Дополнительно система:

  • Фильтрует дубликаты через эмбеддинги

  • Создает визуализации для анализа (опционально) c легендами для нашей модели и SAM3.

В качестве примера я приобрел 3 редбулла и буквально за час в итоге прошёл весь пайплайн
В качестве примера я приобрел 3 редбулла и буквально за час в итоге прошёл весь пайплайн
  • Генерирует готовый датасет в формате COCO для CVAT

5. Подготовка для обучения

Компонент: dataset_preparations.py

После проверки и правки аннотаций в CVAT, система:

  • Загружает COCO-датасет

  • Разделяет на train/val/test

  • Экспортирует в формат YOLO сегментации

  • Создает data.yaml

6. Обучение и оптимизация

Компоненты: train.py, export_openvino.py

  • Обучение YOLO с интеграцией ClearML для трекинга экспериментов и сравнения качества моделей.

  • Экспорт в OpenVINO с INT8 квантизацией для CPU-инференса

  • Автоматическая верификация экспортированной модели

🤙 Результаты

Что мы получили:

  • Время подготовки датасета: с дней или недель до нескольких минут

  • Качество данных: выше за счет умного отбора и удаления дубликатов

  • Эффективность обучения: активное обучение фокусируется на сложных случаях

  • Автоматизация: весь пайплайн работает практически без ручного вмешательства. За исключением валидации и корректировки разметки при необходимости.

Демка. Прикрутил к детекции fusion с глубиной (RGBD). Проект у нас решает задачи пикинга.
Демка. Прикрутил к детекции fusion с глубиной (RGBD). Проект у нас решает задачи пикинга.

Технический стек

  • YOLO11 — для детекции и сегментации

  • SAM3 — для автоматической преданотации

  • Milvus Lite — векторная БД для поиска дубликатов и хранения эмбеддингов изображений

  • OpenVINO — для оптимизированного CPU-инференса

  • CVAT — для финальной проверки и правки аннотаций

Будущие направления

Далее планируем:

  • Запустить это всё на роботе и отладить

  • Улучшение стратегии активного обучения

  • построение полноценного автоматизированного пайплайна

  • Интеграцию дополнительных метрик для отбора данных

  • Развивать проект для поддержки большего количества объектов

  • Попробовать в сторону model serve in the cloud

Хотелось бы узнать ваше мнение и опыт:

  1. Активное обучение: Использовали ли вы активное обучение в своих проектах? Какие стратегии отбора данных работали лучше всего?

  2. CPU-инференс: Как вы решаете задачу обучения и инференса на CPU? Какие чаще используете подходы к оптимизации? Или, может, пробовали model serving in cloud?

  3. Дистилляция: Применяли ли knowledge distillation для сжатия моделей? Какие техники показали лучшие результаты?

  4. Автоматизация разметки: Используете ли вы SAM/Grounding DINO/другие модели для преданотации? Как интегрируете их в пайплайн?

  5. Удаление дубликатов: Какие методы используете для дедупликации датасетов? Работали ли с векторными БД для этой задачи?

Буду рад обсуждению в комментариях! Если у вас есть идеи по улучшению пайплайна или интересные кейсы — делитесь.

P.S. Также буду рад видеть Вас в своем канале, где делюсь своими проектами и всякими штуками по AI. https://t.me/ilia_sevostianov

Источник

Возможности рынка
Логотип RedStone
RedStone Курс (RED)
$0.1462
$0.1462$0.1462
+0.55%
USD
График цены RedStone (RED) в реальном времени
Отказ от ответственности: Статьи, размещенные на этом веб-сайте, взяты из общедоступных источников и предоставляются исключительно в информационных целях. Они не обязательно отражают точку зрения MEXC. Все права принадлежат первоисточникам. Если вы считаете, что какой-либо контент нарушает права третьих лиц, пожалуйста, обратитесь по адресу crypto.news@mexc.com для его удаления. MEXC не дает никаких гарантий в отношении точности, полноты или своевременности контента и не несет ответственности за любые действия, предпринятые на основе предоставленной информации. Контент не является финансовой, юридической или иной профессиональной консультацией и не должен рассматриваться как рекомендация или одобрение со стороны MEXC.

Вам также может быть интересно

Bitcoin нацелен на «стену безубыточности» $76 800 на фоне усиления макроэкономических попутных ветров

Bitcoin нацелен на «стену безубыточности» $76 800 на фоне усиления макроэкономических попутных ветров

Bitcoin держится около $75 000, а данные он-чейн указывают на $76 800 как ключевое сопротивление, в то время как ETF MSBT от Morgan Stanley по сниженной цене привлекает $100 млн на фоне ослабления макроэкономических трудностей
Поделиться
Crypto.news2026/04/17 00:30
Революция ИИ Google: как модели Gemini хирургически нацелены на 8,3 миллиарда плохих объявлений

Революция ИИ Google: как модели Gemini хирургически нацелены на 8,3 миллиарда плохих объявлений

BitcoinWorld Революция ИИ Google: Как модели Gemini хирургически нацеливаются на 8,3 миллиарда плохих объявлений В знаковом сдвиге в управлении цифровой рекламой, Google
Поделиться
bitcoinworld2026/04/16 23:50
BlackRock добавил биткоинов на $505 млн в новой волне покупок

BlackRock добавил биткоинов на $505 млн в новой волне покупок

The post BlackRock Adds $505 Million of Bitcoin in New Buying Spree appeared on BitcoinEthereumNews.com. BlackRock buys Bitcoin BlackRock recovers from February Статья BlackRock добавляет Bitcoin на 505 миллионов $ в новой волне покупок появилась на BitcoinEthereumNews.com. BlackRock покупает Bitcoin BlackRock восстанавливается после февраля
Поделиться
BitcoinEthereumNews2026/04/16 23:45

Генезис USD1: 0% + 12% APR

Генезис USD1: 0% + 12% APRГенезис USD1: 0% + 12% APR

Новые пользователи: Стейкайте и получите до 600% APR