Перейти к содержанию

Краткое руководство по началу работы: NVIDIA Jetson с Ultralytics YOLO11

Это подробное руководство содержит детальное описание процесса развертывания Ultralytics YOLO11 на устройствах NVIDIA Jetson. Кроме того, в нем представлены сравнительные тесты производительности, демонстрирующие возможности YOLO11 на этих компактных и мощных устройствах.

Новая поддержка продуктов

Мы обновили это руководство с использованием новейшего NVIDIA Jetson Orin Nano Super Developer Kit, который обеспечивает до 67 TOPS производительности AI, что в 1,7 раза больше, чем у его предшественника, для бесперебойной работы самых популярных моделей AI.



Смотреть: Как использовать Ultralytics YOLO11 на устройствах NVIDIA JETSON

Экосистема NVIDIA Jetson

Примечание

Это руководство было протестировано с NVIDIA Jetson AGX Orin Developer Kit (64GB) под управлением последней стабильной версии JetPack JP6.2, NVIDIA Jetson Orin Nano Super Developer Kit под управлением JetPack release of JP6.1, Seeed Studio reComputer J4012, который основан на NVIDIA Jetson Orin NX 16GB под управлением JetPack release of JP6.0/ JetPack release of JP5.1.3 и Seeed Studio reComputer J1020 v2, который основан на NVIDIA Jetson Nano 4GB под управлением JetPack release of JP4.6.1. Ожидается, что он будет работать на всей линейке оборудования NVIDIA Jetson, включая новейшие и устаревшие версии.

Что такое NVIDIA Jetson?

NVIDIA Jetson — это серия встраиваемых вычислительных плат, предназначенных для обеспечения ускоренных вычислений ИИ (искусственного интеллекта) на периферийных устройствах. Эти компактные и мощные устройства построены на базе архитектуры GPU NVIDIA и способны запускать сложные алгоритмы ИИ и модели глубокого обучения непосредственно на устройстве, без необходимости использования ресурсов облачных вычислений. Платы Jetson часто используются в робототехнике, автономных транспортных средствах, промышленной автоматизации и других приложениях, где вывод ИИ необходимо выполнять локально с низкой задержкой и высокой эффективностью. Кроме того, эти платы основаны на архитектуре ARM64 и потребляют меньше энергии по сравнению с традиционными вычислительными устройствами GPU.

Сравнение серий NVIDIA Jetson

Jetson Orin — это последняя версия семейства NVIDIA Jetson, основанная на архитектуре NVIDIA Ampere, которая значительно повышает производительность ИИ по сравнению с предыдущими поколениями. В таблице ниже сравниваются некоторые устройства Jetson в экосистеме.

Jetson AGX Orin 64GB Jetson Orin NX 16GB Jetson Orin Nano Super Jetson AGX Xavier Jetson Xavier NX Jetson Nano
Производительность ИИ 275 TOPS 100 TOPS 67 TOPs 32 TOPS 21 TOPS 472 GFLOPS
GPU GPU NVIDIA Ampere с 2048 ядрами и 64 тензорными ядрами GPU NVIDIA Ampere с 1024 ядрами и 32 тензорными ядрами GPU NVIDIA Ampere с 1024 ядрами и 32 тензорными ядрами GPU NVIDIA Volta с 512 ядрами и 64 тензорными ядрами GPU NVIDIA Volta™ с 384 ядрами и 48 тензорными ядрами GPU NVIDIA Maxwell™ с 128 ядрами
Максимальная частота GPU 1,3 ГГц 918 МГц 1020 MHz 1377 МГц 1100 МГц 921 МГц
CPU 12-ядерный NVIDIA Arm® Cortex A78AE v8.2 64-bit CPU 3MB L2 + 6MB L3 8-ядерный NVIDIA Arm® Cortex A78AE v8.2 64-bit CPU 2MB L2 + 4MB L3 6-ядерный Arm® Cortex®-A78AE v8.2 64-bit CPU 1.5MB L2 + 4MB L3 8-ядерный NVIDIA Carmel Arm®v8.2 64-bit CPU 8MB L2 + 4MB L3 6-ядерный NVIDIA Carmel Arm®v8.2 64-bit CPU 6MB L2 + 4MB L3 Четырехъядерный процессор Arm® Cortex®-A57 MPCore
Максимальная частота CPU 2,2 ГГц 2,0 ГГц 1.7 GHz 2,2 ГГц 1,9 ГГц 1,43 ГГц
Память 64 ГБ 256-bit LPDDR5 204.8 ГБ/с 16 ГБ 128-bit LPDDR5 102.4 ГБ/с 8GB 128-bit LPDDR5 102 GB/s 32 ГБ 256-bit LPDDR4x 136.5 ГБ/с 8 ГБ 128-bit LPDDR4x 59.7 ГБ/с 4 ГБ 64-bit LPDDR4 25.6 ГБ/с

Для более подробной сравнительной таблицы, пожалуйста, посетите раздел Технические характеристики на официальной странице NVIDIA Jetson.

Что такое NVIDIA JetPack?

NVIDIA JetPack SDK, лежащий в основе модулей Jetson, является наиболее полным решением и предоставляет полноценную среду разработки для создания комплексных ускоренных AI-приложений и сокращает время выхода на рынок. JetPack включает Jetson Linux с загрузчиком, ядро Linux, среду рабочего стола Ubuntu и полный набор библиотек для ускорения GPU-вычислений, мультимедиа, графики и компьютерного зрения. Он также включает в себя примеры, документацию и инструменты разработчика как для хост-компьютера, так и для комплекта разработчика, и поддерживает SDK более высокого уровня, такие как DeepStream для потоковой аналитики видео, Isaac для робототехники и Riva для разговорного AI.

Прошивка JetPack на NVIDIA Jetson

Первый шаг после получения устройства NVIDIA Jetson — это прошить NVIDIA JetPack на устройство. Существует несколько различных способов прошивки устройств NVIDIA Jetson.

  1. Если у вас есть официальный комплект разработчика NVIDIA, такой как Jetson Orin Nano Developer Kit, вы можете загрузить образ и подготовить SD-карту с JetPack для загрузки устройства.
  2. Если у вас есть какой-либо другой комплект разработчика NVIDIA, вы можете прошить JetPack на устройство с помощью SDK Manager.
  3. Если у вас есть устройство Seeed Studio reComputer J4012, вы можете прошить JetPack на прилагаемый SSD, а если у вас есть устройство Seeed Studio reComputer J1020 v2, вы можете прошить JetPack на eMMC/ SSD.
  4. Если у вас есть какое-либо другое стороннее устройство на базе модуля NVIDIA Jetson, рекомендуется использовать прошивку через командную строку.

Примечание

Для методов 3 и 4, после прошивки системы и загрузки устройства, пожалуйста, введите "sudo apt update && sudo apt install nvidia-jetpack -y" в терминале устройства, чтобы установить все оставшиеся необходимые компоненты JetPack.

Поддержка JetPack в зависимости от устройства Jetson

В таблице ниже показаны версии NVIDIA JetPack, поддерживаемые различными устройствами NVIDIA Jetson.

JetPack 4 JetPack 5 JetPack 6
Jetson Nano
Jetson TX2
Jetson Xavier NX
Jetson AGX Xavier
Jetson AGX Orin
Jetson Orin NX
Jetson Orin Nano

Быстрый старт с Docker

Самый быстрый способ начать работу с Ultralytics YOLO11 на NVIDIA Jetson — это запустить предварительно созданные docker-образы для Jetson. Обратитесь к таблице выше и выберите версию JetPack в соответствии с имеющимся у вас устройством Jetson.

t=ultralytics/ultralytics:latest-jetson-jetpack4
sudo docker pull $t && sudo docker run -it --ipc=host --runtime=nvidia $t
t=ultralytics/ultralytics:latest-jetson-jetpack5
sudo docker pull $t && sudo docker run -it --ipc=host --runtime=nvidia $t
t=ultralytics/ultralytics:latest-jetson-jetpack6
sudo docker pull $t && sudo docker run -it --ipc=host --runtime=nvidia $t

После этого перейдите к разделу Использование TensorRT на NVIDIA Jetson.

Начало с собственной установки

Для нативной установки без Docker, пожалуйста, обратитесь к шагам ниже.

Запуск на JetPack 6.1

Установка пакета Ultralytics

Здесь мы установим пакет Ultralytics на Jetson с необязательными зависимостями, чтобы мы могли экспортировать модели PyTorch в другие различные форматы. Мы в основном сосредоточимся на экспорте NVIDIA TensorRT, потому что TensorRT позволит нам получить максимальную производительность от устройств Jetson.

  1. Обновите список пакетов, установите pip и обновите до последней версии

    sudo apt update
    sudo apt install python3-pip -y
    pip install -U pip
    
  2. Установите ultralytics пакет pip с необязательными зависимостями

    pip install ultralytics[export]
    
  3. Перезагрузите устройство

    sudo reboot
    

Установка PyTorch и Torchvision

Приведенная выше установка Ultralytics установит Torch и Torchvision. Однако эти 2 пакета, установленные через pip, не совместимы для работы на платформе Jetson, основанной на архитектуре ARM64. Поэтому нам необходимо вручную установить предварительно собранный pip wheel PyTorch и скомпилировать/установить Torchvision из исходного кода.

Установите torch 2.5.0 и torchvision 0.20 согласно JP6.1

pip install https://github.com/ultralytics/assets/releases/download/v0.0.0/torch-2.5.0a0+872d972e41.nv24.08-cp310-cp310-linux_aarch64.whl
pip install https://github.com/ultralytics/assets/releases/download/v0.0.0/torchvision-0.20.0a0+afc54f7-cp310-cp310-linux_aarch64.whl

Примечание

Посетите страницу PyTorch для Jetson, чтобы получить доступ ко всем различным версиям PyTorch для разных версий JetPack. Для получения более подробного списка совместимости PyTorch и Torchvision посетите страницу совместимости PyTorch и Torchvision.

Установите cuSPARSELt чтобы исправить проблему с зависимостями с torch 2.5.0

wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/arm64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt-get update
sudo apt-get -y install libcusparselt0 libcusparselt-dev

Установите onnxruntime-gpu

Параметр onnxruntime-gpu пакет, размещенный в PyPI, не имеет aarch64 бинарных файлов для Jetson. Поэтому нам нужно вручную установить этот пакет. Этот пакет необходим для некоторых экспортов.

Вы можете найти все доступные onnxruntime-gpu packages — с разбивкой по версии JetPack, версии Python и другим деталям совместимости — в Jetson Zoo ONNX Runtime compatibility matrixЗдесь мы загрузим и установим onnxruntime-gpu 1.20.0 с Python3.10 поддержкой.

pip install https://github.com/ultralytics/assets/releases/download/v0.0.0/onnxruntime_gpu-1.20.0-cp310-cp310-linux_aarch64.whl

Примечание

onnxruntime-gpu автоматически вернет версию numpy к последней. Поэтому нам нужно переустановить numpy до 1.23.5 чтобы исправить проблему, выполнив:

pip install numpy==1.23.5

Запуск на JetPack 5.1.2

Установка пакета Ultralytics

Здесь мы установим пакет Ultralytics на Jetson с дополнительными зависимостями, чтобы мы могли экспортировать модели PyTorch в другие различные форматы. Мы сосредоточимся в основном на экспорте NVIDIA TensorRT, потому что TensorRT позволит нам получить максимальную производительность от устройств Jetson.

  1. Обновите список пакетов, установите pip и обновите до последней версии

    sudo apt update
    sudo apt install python3-pip -y
    pip install -U pip
    
  2. Установите ultralytics пакет pip с необязательными зависимостями

    pip install ultralytics[export]
    
  3. Перезагрузите устройство

    sudo reboot
    

Установка PyTorch и Torchvision

Приведенная выше установка Ultralytics установит Torch и Torchvision. Однако эти 2 пакета, установленные через pip, не совместимы для работы на платформе Jetson, основанной на архитектуре ARM64. Поэтому нам необходимо вручную установить предварительно собранный pip wheel PyTorch и скомпилировать/установить Torchvision из исходного кода.

  1. Удалите установленные в данный момент PyTorch и Torchvision

    pip uninstall torch torchvision
    
  2. Установите torch 2.2.0 и torchvision 0.17.2 согласно JP5.1.2

    pip install https://github.com/ultralytics/assets/releases/download/v0.0.0/torch-2.2.0-cp38-cp38-linux_aarch64.whl
    pip install https://github.com/ultralytics/assets/releases/download/v0.0.0/torchvision-0.17.2+c1d70fe-cp38-cp38-linux_aarch64.whl
    

Примечание

Посетите страницу PyTorch для Jetson, чтобы получить доступ ко всем различным версиям PyTorch для разных версий JetPack. Для получения более подробного списка совместимости PyTorch и Torchvision посетите страницу совместимости PyTorch и Torchvision.

Установите onnxruntime-gpu

Параметр onnxruntime-gpu пакет, размещенный в PyPI, не имеет aarch64 бинарных файлов для Jetson. Поэтому нам нужно вручную установить этот пакет. Этот пакет необходим для некоторых экспортов.

Вы можете найти все доступные onnxruntime-gpu packages — с разбивкой по версии JetPack, версии Python и другим деталям совместимости — в Jetson Zoo ONNX Runtime compatibility matrixЗдесь мы загрузим и установим onnxruntime-gpu 1.17.0 с Python3.8 поддержкой.

wget https://nvidia.box.com/shared/static/zostg6agm00fb6t5uisw51qi6kpcuwzd.whl -O onnxruntime_gpu-1.17.0-cp38-cp38-linux_aarch64.whl
pip install onnxruntime_gpu-1.17.0-cp38-cp38-linux_aarch64.whl

Примечание

onnxruntime-gpu автоматически вернет версию numpy к последней. Поэтому нам нужно переустановить numpy до 1.23.5 чтобы исправить проблему, выполнив:

pip install numpy==1.23.5

Использование TensorRT на NVIDIA Jetson

Среди всех форматов экспорта моделей, поддерживаемых Ultralytics, TensorRT предлагает самую высокую производительность вывода на устройствах NVIDIA Jetson, что делает его нашей главной рекомендацией для развертываний Jetson. Инструкции по настройке и расширенному использованию см. в нашем специальном руководстве по интеграции TensorRT.

Преобразование модели в TensorRT и запуск вывода

Модель YOLO11n в формате PyTorch преобразуется в TensorRT для запуска инференса с экспортированной моделью.

Пример

from ultralytics import YOLO

# Load a YOLO11n PyTorch model
model = YOLO("yolo11n.pt")

# Export the model to TensorRT
model.export(format="engine")  # creates 'yolo11n.engine'

# Load the exported TensorRT model
trt_model = YOLO("yolo11n.engine")

# Run inference
results = trt_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TensorRT format
yolo export model=yolo11n.pt format=engine # creates 'yolo11n.engine'

# Run inference with the exported model
yolo predict model=yolo11n.engine source='https://ultralytics.com/images/bus.jpg'

Примечание

Посетите страницу экспорта, чтобы получить доступ к дополнительным аргументам при экспорте моделей в различные форматы.

Использование NVIDIA Deep Learning Accelerator (DLA)

NVIDIA Deep Learning Accelerator (DLA) — это специализированный аппаратный компонент, встроенный в устройства NVIDIA Jetson, который оптимизирует вывод глубокого обучения для повышения энергоэффективности и производительности. Перенося задачи с GPU (освобождая его для более интенсивных процессов), DLA позволяет моделям работать с меньшим энергопотреблением, сохраняя при этом высокую пропускную способность, что идеально подходит для встроенных систем и приложений искусственного интеллекта в реальном времени.

Следующие устройства Jetson оснащены аппаратным обеспечением DLA:

Устройство Jetson Ядра DLA Максимальная частота DLA
Серия Jetson AGX Orin 2 1.6 GHz
Jetson Orin NX 16GB 2 614 МГц
Jetson Orin NX 8GB 1 614 МГц
Серия Jetson AGX Xavier 2 1.4 GHz
Серия Jetson Xavier NX 2 1.1 GHz

Пример

from ultralytics import YOLO

# Load a YOLO11n PyTorch model
model = YOLO("yolo11n.pt")

# Export the model to TensorRT with DLA enabled (only works with FP16 or INT8)
model.export(format="engine", device="dla:0", half=True)  # dla:0 or dla:1 corresponds to the DLA cores

# Load the exported TensorRT model
trt_model = YOLO("yolo11n.engine")

# Run inference
results = trt_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TensorRT format with DLA enabled (only works with FP16 or INT8)
# Once DLA core number is specified at export, it will use the same core at inference
yolo export model=yolo11n.pt format=engine device="dla:0" half=True # dla:0 or dla:1 corresponds to the DLA cores

# Run inference with the exported model on the DLA
yolo predict model=yolo11n.engine source='https://ultralytics.com/images/bus.jpg'

Примечание

При использовании экспорта DLA некоторые слои могут не поддерживаться для работы на DLA и будут переключаться на GPU для выполнения. Этот откат может привести к дополнительной задержке и повлиять на общую производительность логического вывода. Поэтому DLA в первую очередь предназначен не для уменьшения задержки логического вывода по сравнению с TensorRT, работающим полностью на GPU. Вместо этого его основная цель — увеличить пропускную способность и повысить энергоэффективность.

NVIDIA Jetson Orin YOLO11 Benchmarks

Бенчмарки YOLO11 были проведены командой Ultralytics на 10 различных форматах моделей, измеряющих скорость и точность: PyTorch, TorchScript, ONNX, OpenVINO, TensorRT, TF SavedModel, TF GraphDef, TF Lite, MNN, NCNN. Бенчмарки проводились на NVIDIA Jetson AGX Orin Developer Kit (64GB), NVIDIA Jetson Orin Nano Super Developer Kit и Seeed Studio reComputer J4012 на базе устройства Jetson Orin NX 16GB с точностью FP32 и размером входного изображения по умолчанию 640.

Сравнительные графики

Несмотря на то, что все экспортированные модели работают с NVIDIA Jetson, мы включили в сравнительную таблицу ниже только PyTorch, TorchScript, TensorRT, поскольку они используют GPU на Jetson и гарантированно обеспечивают наилучшие результаты. Все остальные экспортированные модели используют только CPU, и производительность у них не такая высокая, как у вышеупомянутых трех. Вы можете найти бенчмарки для всех экспортированных моделей в разделе после этой таблицы.

NVIDIA Jetson AGX Orin Developer Kit (64GB)

Jetson AGX Orin Benchmarks
Протестировано с Ultralytics 8.3.157

NVIDIA Jetson Orin Nano Super Developer Kit

Эталонные тесты Jetson Orin Nano Super
Протестировано с Ultralytics 8.3.157

NVIDIA Jetson Orin NX 16GB

Эталонные тесты Jetson Orin NX 16GB
Протестировано с Ultralytics 8.3.157

Подробные сравнительные таблицы

В таблице ниже представлены результаты эталонного тестирования для пяти различных моделей (YOLO11n, YOLO11s, YOLO11m, YOLO11l, YOLO11x) в десяти различных форматах (PyTorch, TorchScript, ONNX, OpenVINO, TensorRT, TF SavedModel, TF GraphDef, TF Lite, MNN, NCNN), что дает нам статус, размер, метрику mAP50-95(B) и время вывода для каждой комбинации.

NVIDIA Jetson AGX Orin Developer Kit (64GB)

Производительность

Формат Статус Размер на диске (МБ) mAP50-95(B) Время инференса (мс/изобр.)
PyTorch 5.4 0.5101 9.40
TorchScript 10.5 0.5083 11.00
ONNX 10.2 0.5077 48.32
OpenVINO 10.4 0.5058 27.24
TensorRT (FP32) 12.1 0.5085 3.93
TensorRT (FP16) 8.3 0.5063 2.55
TensorRT (INT8) 5.4 0.4719 2.18
TF SavedModel 25.9 0.5077 66.87
TF GraphDef 10.3 0.5077 65.68
TF Lite 10.3 0.5077 272.92
MNN 10.1 0.5059 36.33
NCNN 10.2 0.5031 28.51
Формат Статус Размер на диске (МБ) mAP50-95(B) Время инференса (мс/изобр.)
PyTorch 18.4 0.5783 12.10
TorchScript 36.5 0.5782 11.01
ONNX 36.3 0.5782 107.54
OpenVINO 36.4 0.5810 55.03
TensorRT (FP32) 38.1 0.5781 6.52
TensorRT (FP16) 21.4 0.5803 3.65
TensorRT (INT8) 12.1 0.5735 2.81
TF SavedModel 91.0 0.5782 132.73
TF GraphDef 36.4 0.5782 134.96
TF Lite 36.3 0.5782 798.21
MNN 36.2 0.5777 82.35
NCNN 36.2 0.5784 56.07
Формат Статус Размер на диске (МБ) mAP50-95(B) Время инференса (мс/изобр.)
PyTorch 38.8 0.6265 22.20
TorchScript 77.3 0.6307 21.47
ONNX 76.9 0.6307 270.89
OpenVINO 77.1 0.6284 129.10
TensorRT (FP32) 78.8 0.6306 12.53
TensorRT (FP16) 41.9 0.6305 6.25
TensorRT (INT8) 23.2 0.6291 4.69
TF SavedModel 192.7 0.6307 299.95
TF GraphDef 77.1 0.6307 310.58
TF Lite 77.0 0.6307 2400.54
MNN 76.8 0.6308 213.56
NCNN 76.8 0.6284 141.18
Формат Статус Размер на диске (МБ) mAP50-95(B) Время инференса (мс/изобр.)
PyTorch 49.0 0.6364 27.70
TorchScript 97.6 0.6399 27.94
ONNX 97.0 0.6409 345.47
OpenVINO 97.3 0.6378 161.93
TensorRT (FP32) 99.1 0.6406 16.11
TensorRT (FP16) 52.6 0.6376 8.08
TensorRT (INT8) 30.8 0.6208 6.12
TF SavedModel 243.1 0.6409 390.78
TF GraphDef 97.2 0.6409 398.76
TF Lite 97.1 0.6409 3037.05
MNN 96.9 0.6372 265.46
NCNN 96.9 0.6364 179.68
Формат Статус Размер на диске (МБ) mAP50-95(B) Время инференса (мс/изобр.)
PyTorch 109.3 0.7005 44.40
TorchScript 218.1 0.6898 47.49
ONNX 217.5 0.6900 682.98
OpenVINO 217.8 0.6876 298.15
TensorRT (FP32) 219.6 0.6904 28.50
TensorRT (FP16) 112.2 0.6887 13.55
TensorRT (INT8) 60.0 0.6574 9.40
TF SavedModel 544.3 0.6900 749.85
TF GraphDef 217.7 0.6900 753.86
TF Lite 217.6 0.6900 6603.27
MNN 217.3 0.6868 519.77
NCNN 217.3 0.6849 298.58

Протестировано с Ultralytics 8.3.157

Примечание

Время логического вывода не включает предварительную/постобработку.

NVIDIA Jetson Orin Nano Super Developer Kit

Производительность

Формат Статус Размер на диске (МБ) mAP50-95(B) Время инференса (мс/изобр.)
PyTorch 5.4 0.5101 13.70
TorchScript 10.5 0.5082 13.69
ONNX 10.2 0.5081 14.47
OpenVINO 10.4 0.5058 56.66
TensorRT (FP32) 12.0 0.5081 7.44
TensorRT (FP16) 8.2 0.5061 4.53
TensorRT (INT8) 5.4 0.4825 3.70
TF SavedModel 25.9 0.5077 116.23
TF GraphDef 10.3 0.5077 114.92
TF Lite 10.3 0.5077 340.75
MNN 10.1 0.5059 76.26
NCNN 10.2 0.5031 45.03
Формат Статус Размер на диске (МБ) mAP50-95(B) Время инференса (мс/изобр.)
PyTorch 18.4 0.5790 20.90
TorchScript 36.5 0.5781 21.22
ONNX 36.3 0.5781 25.07
OpenVINO 36.4 0.5810 122.98
TensorRT (FP32) 37.9 0.5783 13.02
TensorRT (FP16) 21.8 0.5779 6.93
TensorRT (INT8) 12.2 0.5735 5.08
TF SavedModel 91.0 0.5782 250.65
TF GraphDef 36.4 0.5782 252.69
TF Lite 36.3 0.5782 998.68
MNN 36.2 0.5781 188.01
NCNN 36.2 0.5784 101.37
Формат Статус Размер на диске (МБ) mAP50-95(B) Время инференса (мс/изобр.)
PyTorch 38.8 0.6266 46.50
TorchScript 77.3 0.6307 47.95
ONNX 76.9 0.6307 53.06
OpenVINO 77.1 0.6284 301.63
TensorRT (FP32) 78.8 0.6305 27.86
TensorRT (FP16) 41.7 0.6309 13.50
TensorRT (INT8) 23.2 0.6291 9.12
TF SavedModel 192.7 0.6307 622.24
TF GraphDef 77.1 0.6307 628.74
TF Lite 77.0 0.6307 2997.93
MNN 76.8 0.6299 509.96
NCNN 76.8 0.6284 292.99
Формат Статус Размер на диске (МБ) mAP50-95(B) Время инференса (мс/изобр.)
PyTorch 49.0 0.6364 56.50
TorchScript 97.6 0.6409 62.51
ONNX 97.0 0.6399 68.35
OpenVINO 97.3 0.6378 376.03
TensorRT (FP32) 99.2 0.6396 35.59
TensorRT (FP16) 52.1 0.6361 17.48
TensorRT (INT8) 30.9 0.6207 11.87
TF SavedModel 243.1 0.6409 807.47
TF GraphDef 97.2 0.6409 822.88
TF Lite 97.1 0.6409 3792.23
MNN 96.9 0.6372 631.16
NCNN 96.9 0.6364 350.46
Формат Статус Размер на диске (МБ) mAP50-95(B) Время инференса (мс/изобр.)
PyTorch 109.3 0.7005 90.00
TorchScript 218.1 0.6901 113.40
ONNX 217.5 0.6901 122.94
OpenVINO 217.8 0.6876 713.1
TensorRT (FP32) 219.5 0.6904 66.93
TensorRT (FP16) 112.2 0.6892 32.58
TensorRT (INT8) 61.5 0.6612 19.90
TF SavedModel 544.3 0.6900 1605.4
TF GraphDef 217.8 0.6900 2961.8
TF Lite 217.6 0.6900 8234.86
MNN 217.3 0.6893 1254.18
NCNN 217.3 0.6849 725.50

Протестировано с Ultralytics 8.3.157

Примечание

Время логического вывода не включает предварительную/постобработку.

NVIDIA Jetson Orin NX 16GB

Производительность

Формат Статус Размер на диске (МБ) mAP50-95(B) Время инференса (мс/изобр.)
PyTorch 5.4 0.5101 12.90
TorchScript 10.5 0.5082 13.17
ONNX 10.2 0.5081 15.43
OpenVINO 10.4 0.5058 39.80
TensorRT (FP32) 11.8 0.5081 7.94
TensorRT (FP16) 8.1 0.5085 4.73
TensorRT (INT8) 5.4 0.4786 3.90
TF SavedModel 25.9 0.5077 88.48
TF GraphDef 10.3 0.5077 86.67
TF Lite 10.3 0.5077 302.55
MNN 10.1 0.5059 52.73
NCNN 10.2 0.5031 32.04
Формат Статус Размер на диске (МБ) mAP50-95(B) Время инференса (мс/изобр.)
PyTorch 18.4 0.5790 21.70
TorchScript 36.5 0.5781 22.71
ONNX 36.3 0.5781 26.49
OpenVINO 36.4 0.5810 84.73
TensorRT (FP32) 37.8 0.5783 13.77
TensorRT (FP16) 21.2 0.5796 7.31
TensorRT (INT8) 12.0 0.5735 5.33
TF SavedModel 91.0 0.5782 185.06
TF GraphDef 36.4 0.5782 186.45
TF Lite 36.3 0.5782 882.58
MNN 36.2 0.5775 126.36
NCNN 36.2 0.5784 66.73
Формат Статус Размер на диске (МБ) mAP50-95(B) Время инференса (мс/изобр.)
PyTorch 38.8 0.6266 45.00
TorchScript 77.3 0.6307 51.87
ONNX 76.9 0.6307 56.00
OpenVINO 77.1 0.6284 202.69
TensorRT (FP32) 78.7 0.6305 30.38
TensorRT (FP16) 41.8 0.6302 14.48
TensorRT (INT8) 23.2 0.6291 9.74
TF SavedModel 192.7 0.6307 445.58
TF GraphDef 77.1 0.6307 460.94
TF Lite 77.0 0.6307 2653.65
MNN 76.8 0.6308 339.38
NCNN 76.8 0.6284 187.64
Формат Статус Размер на диске (МБ) mAP50-95(B) Время инференса (мс/изобр.)
PyTorch 49.0 0.6364 56.60
TorchScript 97.6 0.6409 66.72
ONNX 97.0 0.6399 71.92
OpenVINO 97.3 0.6378 254.17
TensorRT (FP32) 99.2 0.6406 38.89
TensorRT (FP16) 51.9 0.6363 18.59
TensorRT (INT8) 30.9 0.6207 12.60
TF SavedModel 243.1 0.6409 575.98
TF GraphDef 97.2 0.6409 583.79
TF Lite 97.1 0.6409 3353.41
MNN 96.9 0.6367 421.33
NCNN 96.9 0.6364 228.26
Формат Статус Размер на диске (МБ) mAP50-95(B) Время инференса (мс/изобр.)
PyTorch 109.3 0.7005 98.50
TorchScript 218.1 0.6901 123.03
ONNX 217.5 0.6901 129.55
OpenVINO 217.8 0.6876 483.44
TensorRT (FP32) 219.6 0.6904 75.92
TensorRT (FP16) 112.1 0.6885 35.78
TensorRT (INT8) 61.6 0.6592 21.60
TF SavedModel 544.3 0.6900 1120.43
TF GraphDef 217.7 0.6900 1172.35
TF Lite 217.6 0.6900 7283.63
MNN 217.3 0.6877 840.16
NCNN 217.3 0.6849 474.41

Протестировано с Ultralytics 8.3.157

Примечание

Время логического вывода не включает предварительную/постобработку.

Ознакомьтесь с результатами других тестов от Seeed Studio, выполненных на различных версиях оборудования NVIDIA Jetson.

Воспроизведение наших результатов

Чтобы воспроизвести вышеуказанные тесты Ultralytics для всех форматов экспорта, запустите этот код:

Пример

from ultralytics import YOLO

# Load a YOLO11n PyTorch model
model = YOLO("yolo11n.pt")

# Benchmark YOLO11n speed and accuracy on the COCO128 dataset for all all export formats
results = model.benchmark(data="coco128.yaml", imgsz=640)
# Benchmark YOLO11n speed and accuracy on the COCO128 dataset for all all export formats
yolo benchmark model=yolo11n.pt data=coco128.yaml imgsz=640

Обратите внимание, что результаты тестов могут варьироваться в зависимости от конкретной конфигурации оборудования и программного обеспечения системы, а также от текущей нагрузки на систему во время проведения тестов. Для получения наиболее надежных результатов используйте набор данных с большим количеством изображений, например, data='coco.yaml' (5000 изображений для проверки).

Рекомендации по использованию NVIDIA Jetson

При использовании NVIDIA Jetson рекомендуется соблюдать несколько правил, чтобы обеспечить максимальную производительность YOLO11 на NVIDIA Jetson.

  1. Включите режим максимальной производительности (MAX Power Mode)

    Включение режима MAX Power Mode на Jetson гарантирует, что все ядра CPU и GPU будут включены.

    sudo nvpmodel -m 0
    
  2. Включите Jetson Clocks

    Включение Jetson Clocks обеспечит работу всех ядер CPU и GPU на их максимальной частоте.

    sudo jetson_clocks
    
  3. Установите приложение Jetson Stats

    Мы можем использовать приложение Jetson Stats для мониторинга температуры компонентов системы и проверки других системных данных, таких как использование CPU, GPU, RAM, изменение режимов питания, установка максимальной частоты, проверка информации о JetPack.

    sudo apt update
    sudo pip install jetson-stats
    sudo reboot
    jtop
    

Jetson Stats

Следующие шаги

Поздравляем с успешной настройкой YOLO11 на вашем NVIDIA Jetson! Для дальнейшего обучения и поддержки посетите документацию Ultralytics YOLO11!

Часто задаваемые вопросы

Как развернуть Ultralytics YOLO11 на устройствах NVIDIA Jetson?

Развертывание Ultralytics YOLO11 на устройствах NVIDIA Jetson — это простой процесс. Сначала прошейте ваше устройство Jetson с помощью NVIDIA JetPack SDK. Затем используйте предварительно собранный образ Docker для быстрой настройки или вручную установите необходимые пакеты. Подробные инструкции для каждого подхода можно найти в разделах Быстрый старт с Docker и Начало с нативной установки.

Каковы ожидаемые показатели производительности моделей YOLO11 на устройствах NVIDIA Jetson?

Модели YOLO11 были протестированы на различных устройствах NVIDIA Jetson, демонстрируя значительное повышение производительности. Например, формат TensorRT обеспечивает наилучшую производительность инференса. В таблице в разделе «Подробные таблицы сравнения» представлен всесторонний обзор показателей производительности, таких как mAP50-95 и время инференса, для различных форматов моделей.

Зачем использовать TensorRT для развертывания YOLO11 на NVIDIA Jetson?

TensorRT настоятельно рекомендуется для развертывания моделей YOLO11 на NVIDIA Jetson из-за его оптимальной производительности. Он ускоряет вывод, используя возможности GPU Jetson, обеспечивая максимальную эффективность и скорость. Узнайте больше о том, как преобразовать в TensorRT и запустить вывод в разделе Использование TensorRT на NVIDIA Jetson.

Как установить PyTorch и Torchvision на NVIDIA Jetson?

Чтобы установить PyTorch и Torchvision на NVIDIA Jetson, сначала удалите все существующие версии, которые могли быть установлены через pip. Затем вручную установите совместимые версии PyTorch и Torchvision для архитектуры ARM64 Jetson. Подробные инструкции для этого процесса приведены в разделе Установка PyTorch и Torchvision.

Каковы лучшие практики для максимальной производительности на NVIDIA Jetson при использовании YOLO11?

Чтобы максимизировать производительность YOLO11 на NVIDIA Jetson, следуйте этим рекомендациям:

  1. Включите режим MAX Power Mode, чтобы использовать все ядра CPU и GPU.
  2. Включите Jetson Clocks, чтобы все ядра работали на максимальной частоте.
  3. Установите приложение Jetson Stats для мониторинга системных показателей.

Для получения команд и дополнительных сведений обратитесь к разделу Рекомендации по использованию NVIDIA Jetson.



📅 Создано 1 год назад ✏️ Обновлено 2 месяца назад

Комментарии