Дополнительный модуль 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 добавляется к Portal for ArcGIS и готов к задачам вывода модели. Запустите инструменты растрового анализа, чтобы обнаружить и классифицировать объекты или классифицировать пикселы из Map Viewer, 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 для растровой аналитики. См. дополнительные шаги по настройке сервера Raster Analysis для использования нескольких графических процессоров на один узел сервера.
- Создайте и экспортируйте обучающие выборки.
- Используйте инструмент Подписи объектов для глубокого обучения в ArcGIS Pro для выбора или создания схемы классификации.
- Создайте обучающую выборку для категорий классов или интересующих объектов. Сохраните файл обучающей выборки.
- Запустите инструмент анализа растров Экспорт обучающих данных для глубокого обучения, чтобы конвертировать исходные изображения и обучающую выборку в обучающие данные глубокого обучения. В качестве исходных изображений может использоваться сервис изображений. Выходные данные инструмента – это строка хранилища данных, в которой будут храниться выходные чипы изображений, надписи и файлы метаданных. Дополнительные выходные данные этого инструмента – это шаблон файла .emd, который будет заполняться специалистом по данным.
- Обучите модель глубокого обучения.
- Используйте чипы изображений, сгенерированные на шаге 1 выше, чтобы обучить модель с помощью инструмента растрового анализа Тренировать модель глубокого обучения. В качестве альтернативы пользователи могут обучать модели глубокого обучения, используя ArcGIS API for Python arcgis.learn или сторонние API-интерфейсы среды глубокого обучения.
- Если модель глубокого обучения обучается с использованием инструмента растрового анализа модели глубокого обучения, результатом будет элемент пакета модели глубокого обучения, опубликованный на портале. Пакет модели глубокого обучения (.dlpk) может быть непосредственно использован на следующем шаге.
- Если для обучения модели используется сторонний API инфраструктуры глубокого обучения, пользователям необходимо обновить .emd файл с именем инфраструктуры глубокого обучения, конфигурацией модели, другими необязательными свойствами и, необязательно, пользовательской растровой функцией Python для вывода модели. Сведения об обязательных и дополнительных параметрах в файле .emd см. в разделе Файл определения модели Esri.
- Запустите инструменты анализа растров из Map Viewer, ArcGIS API for Python, ArcGIS REST API, или ArcGIS Pro.
- Используйте инструменты Обнаружить объекты, используя глубокое обучение, Классификация объектов с использованием глубокого обучения или инструмент растрового анализа Классифицировать пикселы, используя глубокое обучение для обработки ваших изображений. Если обученная модель включила пользовательские растровые функции Python с дополнительными переменными, такими как заполнение или доверительный порог для тонкой настройки чувствительности, эти переменные появятся в диалоговом окне инструмента анализа растров ArcGIS Pro или Map Viewer для пользовательских входных данных. Тип данных, например, string или numeric, задается в функции растра Python.
Выходные данные инструментов Обнаружить объекты, используя глубокое обучение или Классификация объектов с использованием глубокого обучения – это класс объектов, показывающий объекты, обнаруженные или классифицированные моделью, а инструмент Классифицировать пикселы, используя глубокое обучение выводит классифицированный растр.
Примечание:
Среда модели глубокого обучения должна быть установлена на компьютере сервиса Raster Analysis для запуска инструментов вывода данных, поскольку логика вывода встроена в API Python платформы и требуется для вычислений.
- Используйте инструменты Обнаружить объекты, используя глубокое обучение, Классификация объектов с использованием глубокого обучения или инструмент растрового анализа Классифицировать пикселы, используя глубокое обучение для обработки ваших изображений. Если обученная модель включила пользовательские растровые функции Python с дополнительными переменными, такими как заполнение или доверительный порог для тонкой настройки чувствительности, эти переменные появятся в диалоговом окне инструмента анализа растров ArcGIS Pro или Map Viewer для пользовательских входных данных. Тип данных, например, string или numeric, задается в функции растра Python.
Файл определения модели Esri
Файл .emd – это файл JSON, который описывает обученную модель глубокого обучения. Он содержит параметры определения модели, необходимые для запуска инструментов вывода, и должен быть изменен специалистом по данным, который обучал модель. В файле есть обязательные и необязательные параметры, как описано в таблице ниже.
Параметр файла определения модели | Объяснение |
---|---|
Рабочая среда | Имя платформы глубокого обучения, используемой для обучения модели. Поддерживаются следующие платформы глубокого обучения:
|
ModelConfiguration | Имя конфигурации модели. Конфигурация модели определяет входные и выходные данные модели, логику выходных данных и предположения для входных и выходных данных. Существуют рабочие процессы глубокого обучения с открытым исходным кодом, которые определяют стандартную конфигурацию ввода –вывода данных и логику вывода. ArcGIS поддерживает набор предопределенных конфигураций: TensorFlow
Keras
Если используется одна из предопределенных конфигураций, введите имя конфигурации в файле .emd. При обучении модели глубокого обучения с использованием пользовательской конфигурации потребуется полностью описать входные и выходные данные в файле .emd или в пользовательском файле Python. |
ModelFile | Путь к файлу обученной модели глубокого обучения. Многие форматы файлов платформы модели основаны на буферах протокола, поэтому обученная модель глубокого обучения является файлом .pb, но поддерживаются и другие форматы файлов. |
ModelType | Тип модели. Поддерживаются следующие типы:
|
InferenceFunction (Дополнительный) | Путь к функции вывода данных. Функция вывода понимает обученный файл данных модели и предоставляет логику вывода данных. В инструментах анализа растров с помощью глубокого обучения ArcGIS поддерживаются шесть функций вывода:
|
ImageHeight (Дополнительный) | Число строк в классифицируемом или обрабатываемом изображении. |
ImageWidth (Дополнительный) | Количество столбцов в классифицируемом или обрабатываемом изображении. |
ExtractBands (Дополнительный) | Индексы каналов или имена каналов для извлечения из входного изображения. |
Classes (Дополнительный) | Информация о категориях или объектах выходного класса. |
Ниже приведен пример файла определения модели (.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.
Когда все компоненты будут готовы, можно сжать все файлы в файл .zip и загрузить файл .zip на портал как элемент .dlpk. Более подробно см. Добавление файлов с вашего компьютера. Вы также можете изменить расширение файла .zip на .dlpk, чтобы при добавлении элемента автоматически обнаруживались элементы типа .dlpk.
Примечание:
Необходимо сжать все файлы, включенные в пакет модели глубокого обучения, на уровне корневой папки.