Ultralytics YOLO27: Вступи в список ожидания.
Лицензия YOLO
Интеграции

Руководство по архитектуре U-Net и её применению

Узнай об архитектуре U-Net, её применении в сегментации изображений и значении для развития компьютерного зрения.

Абирами ВинаAbirami Vina8 мин. чтения
Архитектура U-Net для сегментации изображений

Компьютерное зрение — это область искусственного интеллекта (AI), посвящённая анализу визуальных данных. Оно открыло путь ко множеству практических систем, например автоматизации проверки продукции на заводах и помощи беспилотным автомобилям в навигации по дорогам.

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

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

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

Одна из таких моделей — U-Net. Несмотря на то что более новые и продвинутые модели превзошли её по производительности, U-Net занимает важное место в истории компьютерного зрения. В этой статье мы подробно рассмотрим архитектуру U-Net, принцип её работы, области применения и сравним её с доступными сегодня более современными моделями сегментации.

Сегментация аэрофотоснимка с помощью модели глубокого обучения U-Net

Рис. 1. Пример сегментации с помощью модели глубокого обучения U-Net. (Источник)

История сегментации изображений#

Прежде чем перейти к разбору U-Net, давай сначала посмотрим, как развивались модели сегментации изображений.

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

После подъема глубокого обучения в 2012 году исследователи в 2014 году представили концепцию полностью сверточных сетей (FCNs) для таких задач, как семантическая сегментация. В этих моделях некоторые части сверточной сети заменили, чтобы компьютер мог одновременно анализировать все изображение, а не разбивать его на небольшие фрагменты. Благодаря этому модель смогла создавать подробные карты, на которых содержимое изображения отображается более наглядно.

Хронология развития алгоритмов сегментации на основе глубокого обучения

Рис. 2. Развитие алгоритмов сегментации на основе глубокого обучения. (Источник)

Развивая идеи FCNs, исследователи из Фрайбургского университета представили U-Net в 2015 году. Изначально модель предназначалась для сегментации биомедицинских изображений. В частности, U-Net разрабатывали так, чтобы она хорошо работала в условиях ограниченного количества размеченных данных.

В последующих версиях, таких как UNet++ и TransUNet, появились такие улучшения, как слои внимания и более эффективное извлечение признаков. Слои внимания помогают модели сосредоточиться на ключевых областях, а улучшенное извлечение признаков позволяет получать более подробную информацию.

Что такое U-Net и как признаки проходят через модель?#

U-Net — это модель глубокого обучения, созданная специально для сегментации изображений. На вход она получает изображение, а на выходе формирует маску сегментации, которая классифицирует каждый пиксель в соответствии с объектом или областью, к которым он относится.

Модель получила свое название благодаря U-образной архитектуре. Она состоит из двух основных частей: кодировщика, который сжимает изображение и изучает его признаки, и декодировщика, который восстанавливает изображение до исходного размера. Такая конструкция образует симметричную форму буквы U и помогает модели понимать как общую структуру изображения, так и его мелкие детали.

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

Обзор архитектуры U-Net#

Кратко рассмотрим принцип работы архитектуры U-Net:

  • Входное изображение: U-Net получает двумерное изображение, например медицинский снимок или спутниковую фотографию. Цель — присвоить метку класса каждому пикселю изображения.
  • Понижение разрешения: Изображение проходит через сверточные слои, которые извлекают важные визуальные признаки. По мере прохождения через слои разрешение изображения уменьшается, а модель выявляет более общие закономерности.
  • Узкий слой: В центре сети карты признаков достигают минимального пространственного разрешения, сохраняя при этом высокоуровневые семантические признаки. Проще говоря, сжатое представление карт признаков передает общий контекст входных данных.
  • Повышение разрешения: Затем сеть восстанавливает изображение, постепенно увеличивая разрешение. Транспонированные свертки помогают расширить карты признаков до исходного размера.
  • Пропускающие соединения: Карты признаков из ветви понижения разрешения объединяются с картами из ветви повышения разрешения. Это помогает сохранять мелкие пространственные детали и одновременно учитывать контекстную информацию высокого уровня.
  • На выходе получается карта сегментации: Итоговый результат — маска сегментации на уровне пикселей, соответствующая размеру входного изображения. Каждый пиксель относится к такой категории, как объект, фон или интересующая область.

Схема архитектуры кодировщика-декодировщика U-Net

Рис. 3. Схема архитектуры U-Net. (Источник)

В чем разница между ViT и U-Net#

Изучая U-Net, ты можешь задуматься, чем она отличается от других моделей глубокого обучения, например визуального трансформера (ViT), который тоже умеет выполнять сегментацию. Хотя обе модели решают похожие задачи, они различаются устройством и подходом к сегментации.

U-Net обрабатывает изображения на уровне пикселей с помощью сверточных слоев в структуре «кодировщик-декодировщик». Ее часто используют для задач, требующих точной сегментации, например для анализа медицинских снимков или дорожных сцен для беспилотных автомобилей.

В свою очередь, визуальный трансформер (ViT) разбивает изображения на фрагменты и одновременно обрабатывает их с помощью механизмов внимания. В отличие от сверточного подхода U-Net, ViT использует механизм самовнимания, позволяющий модели оценивать относительную важность разных частей изображения и учитывать взаимосвязи между ними.

Ещё одно важное отличие: ViT обычно требуется больше данных для эффективной работы, зато она хорошо выявляет сложные закономерности. U-Net, напротив, хорошо работает с небольшими наборами данных и часто обучается быстрее.

Применение модели U-Net#

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

Сегментация кровоизлияний в мозге на медицинских изображениях#

U-Net стала надежным методом сегментации сложных медицинских изображений на уровне пикселей, особенно в период ее активного использования в исследованиях. С ее помощью исследователи выделяли ключевые области на медицинских снимках, например опухоли и признаки внутреннего кровотечения на изображениях КТ и МРТ. Такой подход значительно повысил точность диагностики и упростил анализ сложных медицинских данных в исследовательской среде.

Один из примеров влияния U-Net на исследования в здравоохранении — ее применение для выявления инсультов и кровоизлияний в мозг на медицинских снимках. Исследователи могли анализировать снимки головы с помощью U-Net и выделять подозрительные области, чтобы быстрее находить случаи, требующие срочного внимания.

Сегментация очагов геморрагического инсульта на медицинских снимках с помощью 3D U-Net

Рис. 4. Сегментация очагов геморрагического инсульта с помощью 3D U-Net. (Источник)

Сегментация сельскохозяйственных культур#

Еще одна область применения U-Net — сельское хозяйство, в частности сегментация сельскохозяйственных культур, сорняков и почвы. Модель помогает фермерам следить за состоянием растений, оценивать урожайность и принимать более взвешенные решения на больших фермах. Например, U-Net может отделять культурные растения от сорняков, повышая эффективность применения гербицидов и сокращая потери.

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

U-Net отделяет сельскохозяйственные культуры от сорняков на поле

Рис. 5. Разделение сельскохозяйственных культур и сорняков на полях с помощью U-Net. (Источник)

Автономное вождение#

До появления более продвинутых моделей ИИ U-Net играла важную роль в изучении того, как сегментация может улучшить автономное вождение. В беспилотных автомобилях семантическую сегментацию с помощью U-Net можно использовать для классификации каждого пикселя изображения: например, отнести его к дороге, автомобилю, пешеходу или дорожной разметке. Это даёт автомобилю чёткое представление об окружающей обстановке и помогает безопасно ориентироваться и эффективно принимать решения.

Дорожная сцена с сегментацией проезжей части с помощью U-Net

Рис. 6. Дорожная сцена с сегментацией проезжей части с помощью U-Net. (Источник)

Преимущества и недостатки U-Net#

Даже сегодня исследователи выбирают U-Net для сегментации изображений благодаря сочетанию простоты, точности и адаптивности. Вот несколько ключевых преимуществ этой модели:

  • Адаптация к различным модальностям: U-Net адаптировали для разных типов данных, включая трехмерные медицинские снимки, спутниковые изображения и даже видеокадры.
  • Быстрый инференс после оптимизации: При правильной настройке U-Net может работать эффективно, поэтому подходит для приложений реального и почти реального времени.
  • Открытый исходный код и сообщество: U-Net доступна в основных библиотеках глубокого обучения, а её поддерживает большое сообщество разработчиков и исследователей.

Несмотря на многочисленные преимущества U-Net, у нее есть и некоторые ограничения, которые стоит учитывать. Вот несколько факторов, которые нужно иметь в виду:

  • Чувствительность к качеству данных: Низкое качество данных, например шумные изображения или изображения с низким разрешением, может ухудшить производительность U-Net.
  • Склонность к переобучению на небольших наборах данных: Хотя U-Net хорошо работает с ограниченным объемом данных, без правильной регуляризации она все равно может переобучиться, особенно если набор данных слишком мал или недостаточно разнообразен.
  • Вычислительные ресурсы: U-Net может требовать значительных вычислительных ресурсов, особенно при работе с большими наборами данных, и для обучения ей нужно мощное оборудование.

Главные выводы#

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

Это достижение открыло путь к более продвинутым решениям в самых разных областях. Компьютерное зрение продолжает развиваться, но модели сегментации, такие как U-Net, по-прежнему лежат в основе технологий, которые позволяют машинам с высокой точностью понимать и интерпретировать визуальные данные.

Хочешь создавать собственные проекты в области компьютерного зрения? Загляни в наш репозиторий на GitHub, чтобы узнать больше об ИИ, и ознакомься с нашими вариантами лицензирования. Узнай, как компьютерное зрение в здравоохранении повышает эффективность, и изучи влияние ИИ в розничной торговле на страницах наших решений. А ещё присоединяйся к нашему растущему сообществу.

Автор

Abirami Vina
Abirami Vina

Создатель контента · Ultralytics

Начав карьеру инженером по компьютерному зрению, Абирами Вина заложила прочную основу в области ИИ для компьютерного зрения и машинного обучения. Она создает контент для Ultralytics и является основательницей и главным автором Scribe of AI, где готовит качественные технические материалы для компаний, работающих в сфере ИИ. Стремясь сделать ИИ понятным и увлекательным, она помогает связать передовые технологии с их практическим применением.

Комментарии

Задай вопрос, поделись результатами или помоги кому-нибудь.

Изучи решения

Компьютерное зрение в спорте

Компьютерное зрение в спорте

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

Компьютерное зрение для аэросъёмки

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

Компьютерное зрение в аэрокосмической отрасли

Применяй компьютерное зрение в аэрокосмической отрасли с Ultralytics YOLO: для осмотра самолётов, обнаружения посторонних предметов на взлётно-посадочных полосах, наземного обслуживания аэропортов и выявления дефектов композитных материалов.
Подробнее
Компьютерное зрение в сфере безопасности

Компьютерное зрение в сфере безопасности

Защити любой объект с помощью моделей Ultralytics YOLO. ИИ на базе компьютерного зрения обеспечивает мониторинг периметра, обнаружение угроз, распознавание номерных знаков и безопасность на рабочем месте.
Подробнее
Компьютерное зрение в робототехнике

Компьютерное зрение в робототехнике

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

Компьютерное зрение в логистике

Оптимизируй логистику с моделями Ultralytics YOLO. Визуальный AI обеспечивает проверку посылок, сортировку, отслеживание транспорта и мониторинг безопасности на складе в реальном времени.
Подробнее
Компьютерное зрение в розничной торговле

Компьютерное зрение в розничной торговле

Переосмысли розничную торговлю с моделями Ultralytics YOLO. Визуальный AI обеспечивает отслеживание запасов, мониторинг полок, управление очередями и более глубокое понимание поведения покупателей.
Подробнее
Компьютерное зрение в здравоохранении

Компьютерное зрение в здравоохранении

Создавай решения для здравоохранения с моделями Ultralytics YOLO. Визуальный AI в здравоохранении ускоряет медицинскую визуализацию, улучшает диагностику и мониторинг пациентов.
Подробнее
Компьютерное зрение в производстве

Компьютерное зрение в производстве

Оптимизируй производство с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ обеспечивает контроль качества, обнаружение дефектов, контроль использования СИЗ и автоматизацию сборочных линий.
Подробнее
Компьютерное зрение в автомобильной отрасли

Компьютерное зрение в автомобильной отрасли

Применяй компьютерное зрение в автомобильной отрасли с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ повышает безопасность дорожного движения, улучшает помощь водителю и автоматизацию автомобилей, делая дороги умнее.
Подробнее
Компьютерное зрение в сельском хозяйстве

Компьютерное зрение в сельском хозяйстве

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

Давай вместе строить будущее ИИ!

Начни свой путь в будущее машинного обучения