Geekgineer/YOLOs-CPP
Cross-Platform Production-ready C++ inference engine for YOLO models (v5-v12, YOLO26). Unified API for detection, segmentation, pose estimation, OBB, and classification. Built on ONNX Runtime and OpenCV. Optimized for CPU/GPU with quantization support.
解決的問題
YOLOs-CPP 解決了 C++ 環境中 YOLO 生態系統的碎片化問題。它提供了一個統一且可投入生產的推論引擎,取代了針對不同 YOLO 版本和任務而存在的多個不一致的 C++ 實作,提供一致的 API 與專業級的錯誤處理與優化能力。
工作原理
該程式庫作為 ONNX Runtime 和 OpenCV 的高性能封裝。它提供了一個統一的 C++17 API,可載入並執行多種 YOLO 模型(從 v5 到 YOLO26 和 YOLOE)的推論。它使用零複製技術處理複雜的預處理(如字母框化和歸一化)與後處理(如批次 Non-Maximum Suppression),以最大化速度。
適用對象
專為需要在 C++ 中部署 YOLO 模型進行物件偵測、分割、姿態估計或深度估計,且不依賴 Python 執行時的開發人員設計。
主要特色
- 統一 API:支援從 YOLOv5 到 YOLO26 和 YOLOE 的單一介面。
- 廣泛的任務支援:支援物件偵測、實例分割、姿態估計、方向性邊界框(OBB)、影像分類,以及單目度量深度估計。
- 效能優化:具備零複製預處理、GPU 加速與批次推論,以提升吞吐量。
- 彈性載入:模型可從檔案路徑或直接從記憶體緩衝區載入(適用於加密或嵌入式資源)。
- 高保真度:透過全面的平行測試套件,與 Ultralytics Python 結果進行驗證。
- 跨平台:相容 Linux、Windows 與 macOS。
相關
- 專案
- 專案
- 專案
- 專案
- 專案