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

Как экспортировать в TF GraphDef из YOLO11 для развертывания

При развертывании передовых моделей компьютерного зрения, таких как YOLO11, в различных средах вы можете столкнуться с проблемами совместимости. Google's TensorFlow GraphDef или TF GraphDef , предлагает решение, обеспечивая сериализованное, независимое от платформы представление вашей модели. Используя формат модели TF GraphDef , вы можете развернуть свою модель YOLO11 в средах, где полная экосистема TensorFlow может быть недоступна, например, на мобильных устройствах или специализированном оборудовании.

В этом руководстве мы шаг за шагом расскажем вам о том, как экспортировать ваши Ultralytics YOLO11 модели в формат модели TF GraphDef . Конвертировав модель, вы сможете упростить развертывание и использовать возможности компьютерного зрения YOLO11 в более широком спектре приложений и платформ.

TensorFlow GraphDef

Почему вы должны экспортировать на TF GraphDef ?

TF GraphDef это мощный компонент экосистемы TensorFlow , который был разработан Google. Его можно использовать для оптимизации и развертывания моделей, подобных YOLO11. Экспорт в TF GraphDef позволяет перенести модели из исследовательской области в реальные приложения. Он позволяет запускать модели в средах без полного фреймворка TensorFlow .

Формат GraphDef представляет модель в виде сериализованного графа вычислений. Это позволяет использовать различные методы оптимизации, такие как сворачивание констант, квантование и преобразование графов. Эти оптимизации обеспечивают эффективное выполнение, сокращение использования памяти и более высокую скорость вывода.

GraphDef Модели могут использовать аппаратные ускорители, такие как GPU, TPU и чипы искусственного интеллекта, обеспечивая значительный прирост производительности для конвейера вывода YOLO11 . Формат TF GraphDef создает самодостаточный пакет с моделью и ее зависимостями, что упрощает развертывание и интеграцию в различные системы.

Ключевые особенности моделей TF GraphDef

TF GraphDef предлагает отличные возможности для упрощения развертывания и оптимизации моделей.

Вот обзор его ключевых характеристик:

  • Сериализация моделей: TF GraphDef предоставляет возможность сериализации и хранения моделей TensorFlow в платформонезависимом формате. Это сериализованное представление позволяет загружать и выполнять модели без исходной Python кодовой базы, что упрощает развертывание.

  • Оптимизация графов: TF GraphDef позволяет оптимизировать вычислительные графы. Эти оптимизации позволяют повысить производительность за счет оптимизации потока выполнения, сокращения избыточности и адаптации операций под конкретное оборудование.

  • Гибкость развертывания: Модели, экспортированные в формат GraphDef , можно использовать в различных средах, включая устройства с ограниченными ресурсами, веб-браузеры и системы со специализированным оборудованием. Это открывает возможности для более широкого развертывания ваших моделей TensorFlow .

  • Ориентация на производство: GraphDef предназначен для развертывания на производстве. Он поддерживает эффективное выполнение, функции сериализации и оптимизации, которые соответствуют реальным ситуациям использования.

Варианты развертывания с TF GraphDef

Прежде чем мы погрузимся в процесс экспорта моделей YOLO11 в TF GraphDef , давайте рассмотрим некоторые типичные ситуации развертывания, в которых используется этот формат.

Вот как можно эффективно развернуть TF GraphDef на различных платформах.

  • TensorFlow Обслуживание: Этот фреймворк предназначен для развертывания моделей TensorFlow в производственных средах. TensorFlow Serving предлагает управление моделями, версионирование и инфраструктуру для эффективного обслуживания моделей в масштабе. Это удобный способ интегрировать модели, основанные на GraphDef, в производственные веб-сервисы или API.

  • Мобильные и встраиваемые устройства: С помощью таких инструментов, как TensorFlow Lite, вы можете конвертировать модели TF GraphDef в форматы, оптимизированные для смартфонов, планшетов и различных встраиваемых устройств. Затем ваши модели можно использовать для выводов на устройстве, где выполнение происходит локально, что часто обеспечивает прирост производительности и возможность работы в автономном режиме.

  • Веб-браузеры: TensorFlow.js позволяет развертывать модели TF GraphDef непосредственно в веб-браузерах. Это открывает путь к созданию приложений для обнаружения объектов в реальном времени, работающих на стороне клиента, используя возможности YOLO11 через JavaScript.

  • Специализированное аппаратное обеспечение: TF GraphDef 's platform-agnostic nature allows it to target custom hardware, such as accelerators and TPUs (Tensor Processing Units). Эти устройства могут обеспечить преимущества в производительности для моделей с интенсивными вычислениями.

Экспорт моделей YOLO11 в TF GraphDef

Вы можете преобразовать модель обнаружения объектов YOLO11 в формат TF GraphDef , совместимый с различными системами, чтобы улучшить ее работу на разных платформах.

Установка

Чтобы установить необходимый пакет, выполните команду:

Установка

# Install the required package for YOLO11
pip install ultralytics

Для получения подробных инструкций и лучших практик, связанных с процессом установки, ознакомьтесь с нашим руководством по установкеUltralytics . При установке необходимых пакетов для YOLO11, если вы столкнетесь с какими-либо трудностями, обратитесь к нашему руководству по общим проблемам, чтобы найти решения и советы.

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

Прежде чем перейти к инструкциям по использованию, важно отметить, что, хотя все моделиUltralytics YOLO11 доступны для экспорта, вы можете убедиться, что выбранная вами модель поддерживает функцию экспорта , здесь.

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

from ultralytics import YOLO

# Load the YOLO11 model
model = YOLO("yolo11n.pt")

# Export the model to TF GraphDef format
model.export(format="pb")  # creates 'yolo11n.pb'

# Load the exported TF GraphDef model
tf_graphdef_model = YOLO("yolo11n.pb")

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

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

Аргументы экспорта

Аргумент Тип По умолчанию Описание
format str 'pb' Целевой формат экспортируемой модели, определяющий совместимость с различными средами развертывания.
imgsz int или tuple 640 Желаемый размер изображения для входных данных модели. Может быть целым числом для квадратных изображений или кортежем (height, width) для получения конкретных размеров.
batch int 1 Указывает размер пакетного вывода экспортной модели или максимальное количество изображений, которые экспортируемая модель будет обрабатывать одновременно в predict режим.

Более подробную информацию о процессе экспорта можно найти на странице документацииUltralytics , посвященной экспорту.

Развертывание экспортированных YOLO11 TF GraphDef моделей.

После того как вы экспортировали модель YOLO11 в формат TF GraphDef , следующий шаг - развертывание. Основным и рекомендуемым первым шагом для запуска модели TF GraphDef является использование метода YOLO("model.pb"), как было показано ранее в фрагменте кода использования.

Однако для получения дополнительной информации о развертывании моделей TF GraphDef ознакомьтесь со следующими ресурсами:

  • TensorFlow Обслуживание: Руководство по TensorFlow Serving, которое учит, как эффективно развертывать и обслуживать модели машинного обучения в производственных средах.

  • TensorFlow Lite: На этой странице описано, как конвертировать модели машинного обучения в формат, оптимизированный для вывода данных на устройстве, с помощью TensorFlow Lite.

  • TensorFlow.js: Руководство по преобразованию моделей, которое учит, как конвертировать модели TensorFlow или Keras в формат TensorFlow.js для использования в веб-приложениях.

Резюме

В этом руководстве мы рассмотрели, как экспортировать модели Ultralytics YOLO11 в формат TF GraphDef . Это позволяет гибко развертывать оптимизированные модели YOLO11 в различных средах.

Более подробную информацию об использовании можно найти в официальной документацииTF GraphDef .

Для получения дополнительной информации об интеграции Ultralytics YOLO11 с другими платформами и фреймворками, не забудьте заглянуть на страницу нашего руководства по интеграции. На ней вы найдете множество ресурсов и идей, которые помогут вам максимально эффективно использовать YOLO11 в своих проектах.

ЧАСТО ЗАДАВАЕМЫЕ ВОПРОСЫ

Как экспортировать модель YOLO11 в формат TF GraphDef ?

Ultralytics YOLO11 Модели можно легко экспортировать в формат TensorFlow GraphDef (TF GraphDef ). Этот формат обеспечивает сериализованное, независимое от платформы представление модели, идеально подходящее для развертывания в различных средах, таких как мобильная и веб-среда. Чтобы экспортировать модель YOLO11 в формат TF GraphDef , выполните следующие действия:

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

from ultralytics import YOLO

# Load the YOLO11 model
model = YOLO("yolo11n.pt")

# Export the model to TF GraphDef format
model.export(format="pb")  # creates 'yolo11n.pb'

# Load the exported TF GraphDef model
tf_graphdef_model = YOLO("yolo11n.pb")

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

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

Дополнительные сведения о различных вариантах экспорта см. в документации по экспорту моделей на сайтеUltralytics .

В чем преимущества использования TF GraphDef для развертывания модели YOLO11 ?

Экспорт моделей YOLO11 в формат TF GraphDef имеет множество преимуществ, в том числе:

  1. Независимость от платформы: TF GraphDef предоставляет платформонезависимый формат, позволяющий развертывать модели в различных средах, включая мобильные и веб-браузеры.
  2. Оптимизации: Формат позволяет использовать несколько оптимизаций, таких как сворачивание констант, квантование и преобразование графов, которые повышают эффективность выполнения и сокращают потребление памяти.
  3. Аппаратное ускорение: Модели в формате TF GraphDef могут использовать аппаратные ускорители, такие как GPU, TPU и чипы искусственного интеллекта, для повышения производительности.

Подробнее о преимуществах читайте в разделеTF GraphDef нашей документации.

Почему стоит использовать Ultralytics YOLO11 , а не другие модели обнаружения объектов?

Ultralytics YOLO11 обладает множеством преимуществ по сравнению с другими моделями, такими как YOLOv5 и YOLOv7. Среди основных преимуществ можно выделить следующие:

  1. Современная производительность: YOLO11 обеспечивает исключительную скорость и точность обнаружения, сегментации и классификации объектов в режиме реального времени.
  2. Простота использования: Удобный API для обучения, проверки, прогнозирования и экспорта моделей, что делает его доступным как для новичков, так и для экспертов.
  3. Широкая совместимость: Поддерживает множество форматов экспорта, включая ONNX, TensorRT, CoreML и TensorFlow, что обеспечивает широкие возможности развертывания.

Более подробную информацию вы найдете в нашем обзоре YOLO11.

Как развернуть модель YOLO11 на специализированном оборудовании с помощью TF GraphDef ?

После экспорта модели YOLO11 в формат TF GraphDef вы можете развернуть ее на различных специализированных аппаратных платформах. Типичные сценарии развертывания включают:

  • TensorFlow Сервировка: Используйте TensorFlow Serving для масштабируемого развертывания моделей в производственных средах. Он поддерживает управление моделями и эффективное обслуживание.
  • Мобильные устройства: Преобразование моделей TF GraphDef в TensorFlow Lite, оптимизированные для мобильных и встроенных устройств, что позволяет делать выводы на устройстве.
  • Веб-браузеры: Развертывание моделей с помощью TensorFlow.js для выводов на стороне клиента в веб-приложениях.
  • Ускорители ИИ: Использование TPU и пользовательских чипов ИИ для ускорения вычислений.

Подробную информацию см. в разделе "Параметры развертывания ".

Где можно найти решения распространенных проблем при экспорте моделей YOLO11 ?

Для устранения распространенных проблем с экспортом моделей YOLO11 на сайте Ultralytics представлены подробные руководства и ресурсы. Если вы столкнулись с проблемами при установке или экспорте модели, см:

Эти ресурсы помогут вам решить большинство проблем, связанных с экспортом и развертыванием моделей YOLO11 .

📅 Создано 1 год назад ✏️ Обновлено 3 дня назад

Комментарии