Классификация пикселов

Доступно с лицензией Image Analyst.

Следующие концепции и методы являются ключевыми для понимания и выполнения классификации пикселов в ArcGIS Pro.

Семантическая сегментация

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

Семантическая сегментация

Показан пример семантической сегментации.

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

  • Растровое изображение, содержащее несколько каналов
  • Изображения с метками, содержащее метку для каждого пиксела.

Обучение с разреженными данными

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

Разреженные обучающие выборки

Показан пример разреженных обучающих выборок.

U-Net

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

Кодировщик — это первая половина процесса U-Net. Кодировщик обычно представляет собой предварительно обученную классификационную сеть, такую как VGG или ResNet, где вы применяете блоки свертки, за которыми следует снижение разрешения максимального пула, чтобы кодировать входное изображение в представления объектов на нескольких уровнях1. Декодер — это вторая половина процесса. Цель состоит в том, чтобы семантически спроецировать различающиеся объекты (более низкое разрешение), полученные кодировщиком, на пространство пикселов (более высокое разрешение), чтобы получить плотную классификацию. Декодер состоит из повышения разрешения и конкатенации, за которыми следуют обычные операции свертки1

Справочная информация

[1] Olaf Ronneberger, Philipp Fischer, Thomas Brox. U-Net: Convolutional Networks for Biomedical Image Segmentation, https://arxiv.org/abs/1505.04597, (2015).

PSPNet

Модель Pyramid Scheme Parsing Network (PSPNet) состоит из кодировщика и декодера. Кодировщик отвечает за извлечение объектов из изображения. Декодер предсказывает класс пиксела в конце процесса.

Deep Lab

Полностью сверточные нейронные сети (FCN) часто используются для семантической сегментации. Одна из проблем, связанных с использованием FCN на изображениях для задач сегментации, заключается в том, что карты входных объектов становятся меньше при прохождении через сверточные слои сети и слои слияния. Это вызывает потерю информации об изображениях и приводит к получению выходных данных, где прогнозы имеют низкое разрешение, а границы объектов нечеткие.

Модель DeepLab решает эту проблему, используя свертки Atrous и модули Atrous Spatial Pyramid Pooling (ASPP). Первая версия DeepLab (DeepLabV1) использует Atrous Convolution и полностью связанное условное случайное поле (CRF) для управления разрешением, при котором вычисляются объекты изображения.

ArcGIS Pro использует DeepLabV3. DeepLabV3 также использует Atrous Convolution, однако она также использует улучшенный модуль ASPP, включая пакетную нормализацию и объекты уровня изображения. Она больше не использует устаревшее CRF (условное случайное поле), которое использовалось в V1 и V2.

Модель DeepLabV3 имеет следующую архитектуру:

  • Объекты извлекаются из опорной сети, такой как VGG, DenseNet и ResNet.
  • Чтобы контролировать размер карты объектов, в последних нескольких блоках опорной сети используется Atrous Convolution.
  • Поверх извлеченных из опорной сети объектов добавляется сеть ASPP для классификации каждого пиксела в соответствии с его классом.
  • Выходные данные сети ASPP проходят через свертку 1 на 1 для получения фактического размера изображения, которое будет окончательной сегментированной маской для изображения.

Связанные разделы