YOLO Vision 2026:

Развертывание Luxonis OAK для Ultralytics YOLO#

Камеры Luxonis OAK выполняют модели Ultralytics YOLO на устройстве после конвертации с помощью инструментов Luxonis. Это ручной рабочий процесс развертывания; Luxonis не является нативной целью model.export(format="...") для Ultralytics.

Это руководство охватывает устройства RVC2 и RVC4. Выполни конвертацию для платформы своей камеры: артефакты RVC2 и RVC4 не взаимозаменяемы. Поддерживаемые семейства моделей и задачи различаются; проверь матрицу поддержки инструментов Luxonis перед конвертацией.

Начни с поддерживаемой контрольной точки .pt YOLO, такой как yolo26n.pt, или твоей собственной обученной модели. Сконвертированный архив NN упаковывает модель и метаданные среды выполнения.

Облачная конвертация с помощью Luxonis Hub#

  1. Войди в Luxonis Hub и открой Быструю конвертацию.
  2. Выбери YOLO, выбери RVC2 или RVC4 и загрузи свою контрольную точку .pt.
  3. Установи форму входных данных и параметры конвертации, а затем отправь запрос на конвертацию.
  4. После завершения скопируй идентификатор сконвертированной модели для примера инференса ниже или скачай ее архив NN.

Для автоматической конвертации или пользовательских данных калибровки RVC4 используй HubAI SDK. Следуй инструкциям по его установке в среде Python 3.10+. Подробная конвертация обеспечивает управление реестром и предопределенные наборы данных калибровки.

Локальная конвертация с помощью Tools и ModelConverter#

Используй Python 3.10+ и Docker. Установи Luxonis Tools, следуя инструкциям по настройке в исходном репозитории, включая ограничения зависимостей. Tools подготавливает выходы YOLO для синтаксического анализа Luxonis; общий экспорт ONNX не заменяет этот шаг.

# Export the checkpoint to an ONNX NN Archive
tools yolo26n.pt --imgsz "640 640" --output-dir output

# Install the target-platform converter
pip install modelconv==0.6.0

Tools записывает yolo26n.tar.xz внутри каталога с меткой времени в output/. Замени путь к примеру ниже этим файлом. Для конвертации RVC4 INT8 заполни calibration_images/ репрезентативными изображениями развертывания; см. требования к данным калибровки.

modelconverter convert rvc4 --path output/yolo26n_20260807_104858/yolo26n.tar.xz \
  calibration.path calibration_images/

Для RVC2 используй rvc2 вместо rvc4; изображения калибровки не нужны для его конвертации FP16. Используй результирующий скомпилированный архив NN из выходного каталога ModelConverter для инференса, а не промежуточный архив ONNX. См. ModelConverter для получения путей вывода и параметров для конкретной платформы.

Запуск инференса на камере OAK#

Подключи совместимую камеру OAK и установи DepthAI в своей среде Python:

pip install depthai==3.9.0

Для частной модели Hub установи для DEPTHAI_HUB_API_KEY значение API-ключа Luxonis Hub перед запуском скрипта. Замени your-model-identifier идентификатором из Hub или используй локальную альтернативу в виде скомпилированного архива NN.

import depthai as dai

model = "your-model-identifier"
# Alternatively, use your converted local artifact:
# model = dai.NNArchive("path/to/model.rvc4.tar.xz")

visualizer = dai.RemoteConnection()

with dai.Pipeline() as pipeline:
    camera = pipeline.create(dai.node.Camera).build()
    detection = pipeline.create(dai.node.DetectionNetwork).build(camera, model)

    visualizer.addTopic("rgb", detection.passthrough, group="RGB")
    visualizer.addTopic("detections", detection.out, group="RGB")

    pipeline.start()
    visualizer.registerPipeline(pipeline)

    while pipeline.isRunning():
        if visualizer.waitKey(1) == ord("q"):
            pipeline.stop()

Открой http://localhost:8082, чтобы просмотреть поток RGB и обнаружения. DetectionNetwork также поддерживает совместимые модели сегментации экземпляров и оценки позы. Для других задач, включая семантическую сегментацию и классификацию, следуй руководству по инференсу для конкретных задач.

Для конвейеров стереоглубины см. пример пространственного обнаружения. Измерь производительность своей модели на целевой камере с помощью руководства по бенчмаркингу; пропускная способность зависит от модели, размера входных данных, точности и конфигурации конвейера.

Участники

Комментарии