Semantic Segmentation
Изучи семантическую сегментацию для попиксельного понимания изображений. Узнай, как обучать и развёртывать точные модели сегментации с помощью Ultralytics YOLO26 уже сегодня.
Семантическая сегментация — это задача компьютерного зрения, которая заключается в разделении изображения на отдельные области путем присвоения определенной метки класса каждому отдельному пикселю. В отличие от более простых задач, таких как классификация изображений, при которой всему изображению присваивается одна метка, или обнаружение объектов, при котором вокруг объектов рисуются ограничивающие рамки, семантическая сегментация обеспечивает понимание сцены на уровне пикселей. Такой детальный анализ критически важен для приложений, где точная форма и границы объекта так же важны, как и его идентичность. Это позволяет машинам «видеть» мир более подобно человеку, различая точные пиксели, из которых состоят дорога, пешеход или опухоль на медицинском снимке.
Как работает семантическая сегментация#
В основе семантической сегментации лежит представление изображения в виде сетки пикселей, которые необходимо классифицировать. Для этой задачи стандартной архитектурой являются модели глубокого обучения, особенно сверточные нейронные сети (CNNs). Типичная архитектура, например широко используемая U-Net, построена по структуре «кодировщик—декодировщик». Кодировщик сжимает входное изображение, извлекая высокоуровневые признаки, такие как текстуры и формы, а декодировщик увеличивает разрешение этих признаков до исходного разрешения изображения, создавая точную маску сегментации.
Для этого модели обучаются на больших аннотированных наборах данных, в которых специалисты вручную тщательно окрашивают каждый пиксель в соответствии с его классом. Такие инструменты, как Ultralytics Platform, упрощают этот процесс благодаря функциям автоматической аннотации, ускоряющим создание высококачественных эталонных данных. После обучения модель выдает маску, в которой значение каждого пикселя соответствует идентификатору класса, фактически «раскрашивая» изображение смыслом.
Различие между связанными понятиями#
Семантическую сегментацию часто путают с другими задачами на уровне пикселей. Понимание различий важно для выбора правильного подхода к проекту:
- Сегментация экземпляров: Семантическая сегментация рассматривает все объекты одного класса как единую сущность, например все «автомобили» окрашиваются в синий цвет, тогда как сегментация экземпляров различает отдельные объекты, например «автомобиль A» — синий, а «автомобиль B» — красный.
- Паноптическая сегментация: Она объединяет оба подхода. Каждому пикселю присваивается класс (семантическая сегментация), а отдельные экземпляры подсчитываемых объектов также разделяются (сегментация экземпляров), что обеспечивает наиболее полное понимание сцены.
Практические применения#
Возможность анализировать визуальные данные с точностью до каждого пикселя стимулирует инновации во многих отраслях, где цена ошибки особенно высока:
- ИИ в автомобильной отрасли: Автономные транспортные средства активно используют сегментацию для безопасной навигации. Различая области, по которым можно проехать, и тротуары, а также точно очерчивая пешеходов, автомобили и препятствия, системы беспилотного вождения могут принимать критически важные решения в реальном времени.
- ИИ в здравоохранении: При анализе медицинских изображений модели выделяют органы, поражения или опухоли на КТ- и МРТ-снимках. Это помогает радиологам рассчитывать объем опухоли для планирования лечения или с чрезвычайной точностью направлять роботизированные хирургические инструменты.
- ИИ в сельском хозяйстве: Фермеры используют аэрофотосъемку с дронов и сегментацию для мониторинга состояния посевов. Классифицируя пиксели как «здоровые посевы», «сорняки» или «почву», автоматизированные системы могут направленно распылять гербициды, сокращая расход химикатов и повышая урожайность.
Реализация сегментации с помощью Ultralytics#
Современным моделям сегментации необходимо находить баланс между точностью и скоростью, особенно при инференсе в реальном времени на периферийных устройствах. Семейство моделей Ultralytics YOLO26 включает специализированные модели сегментации, обозначаемые суффиксом -seg, которые изначально поддерживают сквозную обработку и обеспечивают более высокую производительность по сравнению со старыми архитектурами, такими как YOLO11.
В следующем примере показано, как выполнить сегментацию изображения с помощью пакета ultralytics для Python. В результате создаются бинарные маски, очерчивающие границы объектов.
from ultralytics import YOLO
# Load a pre-trained YOLO26 segmentation model
model = YOLO("yolo26n-seg.pt")
# Run inference on an image
results = model("https://ultralytics.com/images/bus.jpg")
# Visualize the results
# This will display the image with the segmentation masks overlaid
results[0].show()Проблемы и дальнейшие направления развития#
Несмотря на значительный прогресс, семантическая сегментация по-прежнему требует больших вычислительных ресурсов. Формирование классификации для каждого отдельного пикселя требует значительных ресурсов GPU и большого объема памяти. Исследователи активно работают над повышением эффективности этих моделей, изучая такие методы, как квантизация моделей, чтобы запускать тяжелые сети на мобильных телефонах и встраиваемых устройствах.
Кроме того, узким местом остается необходимость в огромных наборах размеченных данных. Для решения этой проблемы отрасль переходит к созданию синтетических данных и обучению с самоконтролем, позволяя моделям учиться на исходных изображениях без необходимости вручную размечать миллионы пикселей. По мере развития этих технологий можно ожидать, что сегментация станет еще более распространенной в приложениях для умных камер, робототехники и дополненной реальности.









