Luxonis OAK 部署用于 Ultralytics YOLO#
Luxonis OAK 相机在使用 Luxonis 工具转换后,可在设备上运行 Ultralytics YOLO 模型。这是一个手动部署工作流;Luxonis 不是原生的 Ultralytics model.export(format="...") 目标。
本指南涵盖 RVC2 和 RVC4 设备。请为你的相机平台进行转换:RVC2 和 RVC4 的产物不通用。支持的模型系列和任务各有不同;转换前请查看 Luxonis Tools 支持矩阵。
从受支持的 YOLO .pt 检查点开始,例如 yolo26n.pt,或你自己的训练模型。转换后的神经网络归档打包了模型和运行时元数据。
使用 Luxonis Hub 进行云端转换#
- 登录 Luxonis Hub 并打开快速转换。
- 选择 YOLO,选择 RVC2 或 RVC4,然后上传你的
.pt检查点。 - 设置输入形状和转换参数,然后提交转换。
- 完成后,复制转换后模型的标识符用于下方的推理示例,或下载其神经网络归档。
如需自动化转换或自定义 RVC4 校准数据,请使用 HubAI SDK。在 Python 3.10+ 环境中遵循其安装说明。详细转换提供了注册表管理和预定义的校准数据集。
使用 Tools 和 ModelConverter 进行本地转换#
使用 Python 3.10+ 和 Docker。使用其上游设置说明安装 Luxonis Tools,包括依赖项约束。Tools 为 Luxonis 解析准备 YOLO 输出;通用的 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.0Tools 会在 output/ 下方的一个带时间戳的目录中写入 yolo26n.tar.xz。将下方的示例路径替换为该文件。对于 RVC4 INT8 转换,请用具代表性的部署图像填充 calibration_images/;请参阅校准数据要求。
modelconverter convert rvc4 --path output/yolo26n_20260807_104858/yolo26n.tar.xz \
calibration.path calibration_images/对于 RVC2,请使用 rvc2 代替 rvc4;其 FP16 转换不需要校准图像。使用 ModelConverter 输出目录中生成的已编译神经网络归档进行推理,而不是中间的 ONNX 归档。有关输出路径和平台特定选项,请参阅 ModelConverter。
在 OAK 相机上运行推理#
连接兼容的 OAK 相机并在你的 Python 环境中安装 DepthAI:
pip install depthai==3.9.0对于私有的 Hub 模型,请在运行脚本之前将 DEPTHAI_HUB_API_KEY 设置为 Luxonis Hub API 密钥。将 your-model-identifier 替换为来自 Hub 的标识符,或使用本地编译的神经网络归档替代方案。
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 还支持兼容的实例分割和姿态估计模型。对于包括语义分割和分类在内的其他任务,请遵循特定于任务的推理指南。
对于立体深度流水线,请参阅空间检测示例。使用基准测试指南在目标相机上评估你的模型;吞吐量取决于模型、输入大小、精度和流水线配置。