ArcGIS Image Server позволяет использовать статистические методы или методы классификации машинного обучения для классификации изображений дистанционного зондирования. Глубокое обучение – это тип машинного обучения, который опирается на несколько уровней нелинейной обработки для идентификации объектов и распознавания образов, описанных в модели. Модели глубокого обучения могут быть интегрированы с ArcGIS Image Server для обнаружения объектов и классификации изображений. Обучающие образцы или представляющие интерес объекты генерируются в ArcGIS Pro с помощью инструментов менеджера учебных примеров классификации, затем подписываются с помощью инструмента Надписи объектов для глубокого обучения и преобразуются в формат для использования в среде глубокого обучения. Эти обучающие образцы используются для обучения модели с применением инструмента анализа растра Обучить модель глубокого обучения или ArcGIS API for Python. Обученная модель вместе с файлом определения модели (и, возможно, файлом скрипта функции растра Python) упаковывается и публикуется как элемент пакета глубокого обучения (.dlpk), который затем используется для запуска инструментов анализа растров. Инструменты вывода либо извлекают определенные объекты, либо классифицируют пикселы в изображении. Элемент .dlpk можно использовать несколько раз в качестве входных данных в инструментах анализа растров, что упрощает доступ к большому объему изображений для различных местоположений и временных периодов, после того как модель будет обучена.
Создайте обучающие выборки с помощью инструмента Надписать объекты для глубокого обучения в ArcGIS Pro и используйте инструмент анализа растров Экспорт обучающих данных для глубокого обучения в ArcGIS REST API или ArcGIS API for Python чтобы подготовить эти данные для специалиста по данным. | |
Тренируйте глубокое обучение, используя инструмент растрового анализа Обучить модель глубокого обучения. Вы можете также использовать ArcGIS REST API, чтобы обучить модель в среде глубокого обучения. Выходной пакет глубокого обучения (*.dlpk), состоящий из файла определения модели и обученной модели глубокого обучения или скрипта Python, публикуется на портале как элемент .dlpk. | |
Специалист по данным предоставляет пакет глубокого обучения, состоящий из файла определения модели и обученной модели и скрипта Python, обратно в параметры среды анализа растров ArcGIS Image Server. С помощью элемента .dlpk на портале запустите инструмент выявить объекты при помощи глубокого обучения, инструмент Классифицировать пикселы при помощи глубокого обучения, или инструмент Классифицировать объекты при помощи глубокого обучения, чтобы сгенерировать выходные данные. |
Свойства и возможности
Инструменты анализа растров с глубоким обучением позволяют использовать больше, чем стандартные методы классификации машинного обучения.
- Используйте сверхточные нейронные сети для классификации изображений и обнаружения объектов.
- Используйте модель глубокого обучения для классификации пикселов изображения, обнаружения или классификации таких объектов, как самолеты, деревья, транспортные средства, водные объекты и нефтяные скважины.
- Интегрируйте внешние среды моделей глубокого обучения, включая PyTorch, Keras и TensorFlow.
- Обработайте коллекцию растров во время вывода модели, чтобы обнаружить изменения во времени или обнаружить объекты в различных областях, представляющих интерес.
- Создайте класс полигональных объектов, показывающий обнаруженные объекты, которые будут использоваться для дополнительного анализа или рабочих процессов.
- Инструменты могут использовать центральный процессор для распределенной обработки или применять мощный графический процессор на каждом узле сервера, если он доступен.
- Для выполнения задания глубокого обучения можно использовать несколько графических процессоров на один узел сервера с конфигурациями моделей, предопределенными в ArcGIS, включая API обнаружения объектов TensorFlow и DeepLab, Keras MaskRCNN, PyTorch fastai Single Shot Detector.
- Если входной растр поставляется с соответствующим пространством карты для преобразования пространства изображений, чипы обучающих изображений можно экспортировать в пространство изображений в Экспорт обучающих данных для глубокого обучения.
Начало работы с глубоким обучением
Создание и экспорт обучающих выборок выполняются в ArcGIS опытным аналитиком изображений, так как эта деятельность требует глубоких знаний рабочих процессов классификации изображений. Модель глубокого обучения можно обучить в ArcGIS с помощью инструмента анализа растров Обучить модель глубокого обучения или ArcGIS API for Python arcgis.learn. В качестве альтернативы, модель глубокого обучения может быть обучена вне ArcGIS с использованием стороннего API глубокого обучения. Как только модель обучена, элемент .dlpk добавляется к ArcGIS Enterprise и готов к задачам вывода модели. Запустите инструменты растрового анализа, чтобы обнаружить и классифицировать объекты или классифицировать пикселы из Map Viewer Classic, ArcGIS API for Python, ArcGIS REST API или ArcGIS Pro. Весь рабочий процесс глубокого обучения может выполнять один аналитик, имеющий опыт работы с моделями глубокого обучения и классификацией изображений ArcGIS.
Также предоставляется отдельное приложение для настройки глубокого обучения, которое установит соответствующие API-интерфейсы инфраструктуры глубокого обучения (TensorFlow, Keras, PyTorch и все другие необходимые библиотеки Python) в стандартной среде ArcGIS Image Server по умолчанию arcgispro-py3. Это обязательное условие для выполнения задач глубокого обучения на ArcGIS Image Server.
Обратитесь к справочной документации по настройке и развертыванию ArcGIS Enterprise для растровой аналитики. См. дополнительные шаги по настройке сервера Анализ растров для использования нескольких графических процессоров на один узел сервера.
- Создайте и экспортируйте обучающие выборки.
- Используйте инструмент Надписать объекты для глубокого обучения в ArcGIS Pro для выбора или создания схемы классификации.
- Создайте обучающую выборку для категорий классов или интересующих объектов. Сохраните файл обучающей выборки.
- Запустите инструмент анализа растров Экспорт обучающих данных для глубокого обучения, чтобы конвертировать исходные изображения и обучающую выборку в обучающие данные глубокого обучения. В качестве исходных изображений может использоваться сервис изображений. Выходные данные инструмента – это строка хранилища данных, в которой будут храниться выходные чипы изображений, надписи и файлы метаданных. Дополнительные выходные данные этого инструмента – это шаблон файла .emd, который будет заполняться специалистом по данным.
- Обучите модель глубокого обучения.
- Используйте чипы изображений, сгенерированные на шаге 1 выше, чтобы обучить модель с помощью инструмента растрового анализа Обучить модель глубокого обучения. В качестве альтернативы пользователи могут обучать модели глубокого обучения, используя ArcGIS API for Python arcgis.learn или сторонние API-интерфейсы среды глубокого обучения.
- Если модель глубокого обучения обучается с использованием инструмента растрового анализа модели глубокого обучения, результатом будет элемент пакета модели глубокого обучения, опубликованный на портале. Пакет модели глубокого обучения (.dlpk) может быть непосредственно использован на следующем шаге.
- Если для обучения модели используется сторонний API инфраструктуры глубокого обучения, пользователям необходимо обновить файл .emd с именем инфраструктуры глубокого обучения, конфигурацию модели, другие необязательные свойства и, возможно, пользовательскую растровую функцию Python для вывода модели. Сведения об обязательных и дополнительных параметрах в файле .emd см. в разделе Файл определения модели Esri ниже.
- Запустите инструменты анализа растров из Map Viewer Classic, ArcGIS API for Python, ArcGIS REST API или ArcGIS Pro.
- Используйте инструменты растрового анализа Выявить объекты при помощи глубокого обучения, Классифицировать пикселы при помощи глубокого обучения или Классифицировать объекты при помощи глубокого обучения для обработки ваших изображений. Если обученная модель включила пользовательские растровые функции Python с дополнительными переменными, такими как заполнение или доверительный порог для тонкой настройки чувствительности, эти переменные появятся в ArcGIS Pro или диалоговом окне инструмента анализа растров для пользовательских входных данных Map Viewer Classic. Тип данных, например, string или numeric, задается в функции растра Python.
Примечание:
Среда модели глубокого обучения должна быть установлена на компьютере сервиса Анализ растров для запуска инструментов вывода данных, поскольку логика вывода встроена в API Python платформы и требуется для вычислений.
- Используйте инструменты растрового анализа Выявить объекты при помощи глубокого обучения, Классифицировать пикселы при помощи глубокого обучения или Классифицировать объекты при помощи глубокого обучения для обработки ваших изображений. Если обученная модель включила пользовательские растровые функции Python с дополнительными переменными, такими как заполнение или доверительный порог для тонкой настройки чувствительности, эти переменные появятся в ArcGIS Pro или диалоговом окне инструмента анализа растров для пользовательских входных данных Map Viewer Classic. Тип данных, например, string или numeric, задается в функции растра Python.
Файл определения модели Esri
Файл .emd – это файл JSON, который описывает обученную модель глубокого обучения. Он содержит параметры определения модели, необходимые для запуска инструментов вывода, и должен быть изменен специалистом по данным, который обучал модель. В файле есть обязательные и необязательные параметры, как описано в таблице ниже.
Параметр файла определения модели | Объяснение |
---|---|
Платформа | Имя платформы глубокого обучения, используемой для обучения модели. Поддерживаются следующие платформы глубокого обучения:
|
ModelConfiguration | Имя конфигурации модели. Конфигурация модели определяет входные и выходные данные модели, логику выходных данных и предположения для входных и выходных данных. Существуют рабочие процессы глубокого обучения с открытым исходным кодом, которые определяют стандартную конфигурацию ввода –вывода данных и логику вывода. ArcGIS поддерживает набор предопределенных конфигураций: TensorFlow
Keras
Если используется одна из предопределенных конфигураций, введите имя конфигурации в файле .emd. При обучении модели глубокого обучения с использованием пользовательской конфигурации потребуется полностью описать входные и выходные данные в файле .emd или в пользовательском файле Python Python. |
ModelFile | Путь к файлу обученной модели глубокого обучения. Многие форматы файлов платформы модели основаны на буферах протокола, поэтому обученная модель глубокого обучения является файлом .pb, но поддерживаются и другие форматы файлов. |
ModelType | Тип модели. Поддерживаются следующие типы:
|
InferenceFunction (Дополнительный) | Путь к функции вывода данных. Функция вывода понимает обученный файл данных модели и предоставляет логику вывода данных. В инструментах анализа растров с помощью глубокого обучения ArcGIS поддерживаются шесть функций вывода:
|
ImageHeight (Дополнительный) | Число строк в классифицируемом или обрабатываемом изображении. |
ImageWidth (Дополнительный) | Количество столбцов в классифицируемом или обрабатываемом изображении. |
ExtractBands (Дополнительный) | Индексы каналов или имена каналов для извлечения из входного изображения. |
Классы (Дополнительный) | Информация о категориях или объектах выходного класса. |
Ниже приведен пример файла определения модели (.emd), который использует конфигурацию стандартной модели:
{
"Framework": "TensorFlow",
"ModelConfiguration": "ObjectDetectionAPI",
"ModelFile":"tree_detection.pb",
"ModelType":"ObjectionDetection",
"ImageHeight":850,
"ImageWidth":850,
"ExtractBands":[0,1,2],
"Classes" : [
{
"Value": 0,
"Name": "Tree",
"Color": [0, 255, 0]
}
]
}
Элемент пакета Глубокое обучение (.dlpk)
Инструменты анализа растров с помощью глубокого обучения требуют в качестве входных данных пакет модели глубокого обучения (.dlpk). Пакет модели глубокого обучения состоит из JSON-файла определения модели Esri (.emd), двоичного файла модели глубокого обучения и, при необходимости, растровой функции Python Python.
Вы можете опубликовать пакет глубокого обучения напрямую из ArcGIS Pro. Или, когда все компоненты будут готовы, можно сжать все файлы в файл .zip и загрузить файл .zip на портал как элемент .dlpk. Более подробно см. Добавление файлов в качестве элементов. Вы также можете изменить расширение файла .zip на .dlpk, чтобы при добавлении элемента автоматически обнаруживались элементы типа .dlpk.
Примечание:
Необходимо сжать все файлы, включенные в пакет модели глубокого обучения, на уровне корневой папки.