wang-xinyu/tensorrtx

Implementation of popular deep learning networks with TensorRT network definition API

解決的問題

TensorRTx 提供了一種使用 TensorRT 網路定義 API 實作流行深度學習網路的方法,而非依賴標準解析器(如 ONNX 或 UFF)。此方法避免了自動解析器的「黑箱」特性,讓開發者能完全掌控網路結構與最佳化過程。

工作原理

本專案遵循特定的工作流程,從訓練好的模型過渡到高效率推理引擎:

  1. 權重匯出:從 PyTorch、MXNet 或 TensorFlow 等框架中提取權重,並匯出為純文字格式的 .wts 檔案。
  2. 網路定義:使用 TensorRT 的複雜 API 從頭重建網路,定義各層與結構。
  3. 引擎建構:將 .wts 權重載入至已定義的網路中,建構 TensorRT 引擎。
  4. 推論:載入並執行生成的引擎進行推論。

適用對象

需要在 NVIDIA 硬體上透過 TensorRT 部署模型時,對網路進行最大程度修改、調試中間層結果,或學習深度學習模型內部結構的開發者與研究人員。

特色亮點

  • 高度彈性:可輕鬆新增、刪除或替換層,並將預處理與後處理直接整合至網路中。
  • 詳細調試支援:支援增量式開發,可檢查中間層輸出結果。
  • 豐富的模型庫:包含多種模型的實作,包括 YOLO 系列(v3 至 v13)、ResNet、MobileNet、視覺 Transformer(ViT),以及用於人臉檢測(RetinaFace)與文字檢測(DBNet)的專用模型。
  • 可客製化工作流程:支援透過 CMake 建構單一子專案或整個套件。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案