zhiqwang/yolort

yolort is a runtime stack for yolov5 on specialized accelerators such as tensorrt, libtorch, onnxruntime, tvm and ncnn.

What it solves

yolort 是一個旨在簡化 YOLOv5 目標檢測模型部署的運行時堆疊。它解決了整合訓練與推理的複雜性,特別是透過減少在專用加速器部署階段對複雜外部函式庫的依賴。

How it works

該專案實作了 YOLOv5 模型結構,但引入了動態形狀機制。這允許專案將預處理(letterbox)與後處理(Non-Maximum Suppression 或 NMS)直接嵌入到模型圖中。透過這種方式,模型成為一個自包含的單元,使其在各種後端上導出與運行更加容易。

Who it’s for

想要使用 LibTorch、ONNX Runtime、TVM 或 TensorRT 等後端將 YOLOv5 模型部署到生產環境的開發者與 AI 工程師,以及偏好更簡單、類似 torchvision 的目標檢測實作方式的人。

Highlights

  • Integrated Pipeline: 嵌入預處理與後處理到模型圖中以簡化部署。
  • Multi-Backend Support: 提供對 LibTorch、ONNX Runtime、TVM 和 TensorRT 導出與推理的原生支持與範例。
  • Dynamic Shape Support: 支持動態形狀與批次推理。
  • Compatibility: 能夠載入使用官方 Ultralytics YOLOv5 實作所訓練的權重檔。
  • Visualization: 包含用於視覺化模型圖的工具。