Skip To Content

Настройка модуля ArcGIS Image Server для растрового анализа с глубоким обучением

Модуль ArcGIS Image Server предоставляет набор инструментов глубокого обучения с непрерывными рабочими процессами для классификации и обнаружения объектов на изображениях. Эти инструменты позволяют создавать обучающие наборы данных и экспортировать их в среду глубокого обучения для разработки модели глубокого обучения. Затем можно выполнять рабочие процессы логического анализа данных, такие как классификация изображений и обнаружение объектов.

Для использования преимуществ GPU-обработки на сайте сервера для растровой аналитики, состоящего из нескольких машин, один GPU должен быть доступен на каждом узле сервера на сайте. Карта GPU не требуется для запуска инструментов глубокого обучения в вашем развертывании для растрового анализа в модуле ArcGIS Image Server. Если у машины сервера для растрового анализа нет карты GPU, инструменты будут запускаться только на ЦПУ.

Примечание:

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

В модуле ArcGIS Image Server растровая аналитика может использовать модули TensorFlow, PyTorch, CNTK и Keras Python с применением аппаратного ускорения.

Добавление поддержки глубокого обучения в развертывании среды растрового анализа

После настройки развертывания среды растрового анализа, выполните следующие действия, чтобы установить ресурсы Python для глубокого обучения. Если сайт модуля ArcGIS Image Server многоузловой, повторите эти действия на каждом узле сервера.

После настройки развертывания среды растрового анализа, выполните следующие действия, чтобы установить ресурсы Python для глубокого обучения. Если сайт модуля ArcGIS Image Server многоузловой, повторите эти действия на каждом узле сервера.

Учетная запись ОС, используемая для выполнения этих действий, должна совпадать с учетной записью установки модуля ArcGIS Image Server.

  1. Если вы будете использовать графические процессоры для рабочего процесса аналитики растров с глубоким обучением, установите соответствующие драйверы NVIDIA.
    • Установите на компьютер CUDA Toolkit. Дополнительные сведения см. на веб-сайте CUDA NVIDIA.
    • Установка библиотеки CUDA Deep Neural Network (cuDNN). Дополнительные сведения см. на веб-сайте NVIDIA cuDNN.
  2. Выполните следующие команды в среде Python 3.6, по умолчанию поставляемой с программой установки ArcGIS Server. Установлен Python по умолчанию в C:\Program Files\ArcGIS\Server\framework\runtimes\ArcGIS\bin\Python.
  3. Установите каждый модуль Python, который хотите использовать в рабочих процессах аналитики растров с глубоким обучением. В подразделе b ниже укажите имя среды. Имя модуля указывает, используете ли вы процессор (CPU) или модуль с поддержкой аппаратного ускорения (GPU).
    1. Введите PS C:\Program Files\arcgis\server\framework\runtime\ArcGIS\bin\Python\Scripts> .\proenv.bat
    2. Введите (arcgispro-py3) C:\Program Files\arcgis\server\framework\runtime\ArcGIS\envs\arcgispro-py3>conda create --name <specify environment name> --clone arcgispro-py3
    3. Введите (arcgispro-py3) C:\Program Files\arcgis\server\framework\runtime\ArcGIS\envs\arcgispro-py3>activate <environment name>
    4. Введите (<environment name>) C:\Program Files\arcgis\server\framework\runtime\ArcGIS\envs\arcgispro-py3>conda install <module name>

    Пример установки TensorFlow для использования CPU

    PS C:\Program Files\arcgis\server\framework\runtime\ArcGIS\bin\Python\Scripts> .\proenv.bat
    (arcgispro-py3) C:\Program Files\arcgis\server\framework\runtime\ArcGIS\envs\arcgispro-py3>conda create --name tf-cpu --clone arcgispro-py3
    (arcgispro-py3) C:\Program Files\arcgis\server\framework\runtime\ArcGIS\envs\arcgispro-py3>activate tf-cpu
    (tf-cpu) C:\Program Files\arcgis\server\framework\runtime\ArcGIS\envs\arcgispro-py3>conda install tensorflow

    Пример установки TensorFlow для использования GPU

    PS C:\Program Files\arcgis\server\framework\runtime\ArcGIS\bin\Python\Scripts> .\proenv.bat
    (arcgispro-py3) C:\Program Files\arcgis\server\framework\runtime\ArcGIS\envs\arcgispro-py3>conda create --name tf-gpu --clone arcgispro-py3
    (arcgispro-py3) C:\Program Files\arcgis\server\framework\runtime\ArcGIS\envs\arcgispro-py3>activate tf-gpu
    (tf-gpu) C:\Program Files\arcgis\server\framework\runtime\ArcGIS\envs\arcgispro-py3>conda install tensorflow-gpu

  4. Проверьте и установите зависимости всех пакетов Python, которые потребуются для моделей глубокого обучения.
  5. После установки всех необходимых модулей Python запустите пакетный скрипт proswap, чтобы заменить стандартную среду Python 3.6, используемую сервисом анализа растров, на клонированную среду, введя PS C:\Program Files\arcgis\server\framework\runtime\ArcGIS\bin\Python\Scripts> .\proswap.bat -n <environment name>

    Примечание:
    Рекомендуется создать виртуальную среду для каждой платформы глубокого обучения, чтобы избежать конфликтов зависимостей. Если две или более платформ находятся в одной среде Python, они могут зависеть от разных версий модулей, которые не могут работать вместе.

  6. Повторите шаги с 1 по 5 на каждом компьютере сайта модуля ArcGIS Image Server.

    Только один экземпляр сервиса может использовать графический процессор на каждом узле сервера. Максимальное число экземпляров на компьютер сервиса RasterProcessingGPU всегда должно устанавливаться как 1, и это является значением по умолчанию.

  7. В ArcGIS Server Manager выберите Сервисы > Управление сервисами > RasterProcessingGPU и проверьте значения для минимального и максимального числа экземпляров.

    Внимание:
    Не увеличивайте максимальное число экземпляров на машину для этого сервиса.

  8. Перезапустите модуль ArcGIS Image Server для растрового анализа после переключения на клонированное развертывание с установленными модулями глубокого обучения python.

Каждый запрос в рабочих процессах растрового анализа с глубоким обучением включает параметр среды processorType. Убедитесь, что этот параметр правильно указывает, что следует использовать при выполнении запросов - CPU или GPU. Параметр среды processorType задается в интерфейсе инструмента или функции растра в ArcGIS Pro, Map Viewer, ArcGIS REST API или ArcGIS API for Python.