wang-xinyu/tensorrtx
Implementation of popular deep learning networks with TensorRT network definition API
解决的问题
TensorRTx 提供了一种使用 TensorRT 网络定义 API 实现流行深度学习网络的方法,而不是依赖标准解析器(如 ONNX 或 UFF)。这种方法避免了自动化解析器的“黑箱”特性,使开发者能够完全控制网络结构和优化过程。
工作原理
该项目遵循特定的工作流程,从训练好的模型过渡到高性能推理引擎:
- 权重导出:从 PyTorch、MXNet 或 TensorFlow 等框架中提取权重,并导出为纯文本格式的
.wts文件。 - 网络定义:使用 TensorRT 的复杂 API 从头开始重建网络,定义各层和结构。
- 引擎构建:将
.wts权重加载到已定义的网络中,构建 TensorRT 引擎。 - 推理:加载并执行生成的引擎进行推理。
适用人群
需要在 NVIDIA 硬件上通过 TensorRT 部署模型时,对网络进行最大程度修改、调试中间层结果,或学习深度学习模型内部结构的开发者和研究人员。
特色亮点
- 高度灵活:可轻松添加、删除或替换层,并将预处理和后处理直接集成到网络中。
- 详细调试支持:支持增量式开发,可检查中间层输出结果。
- 丰富的模型库:包含多种模型的实现,包括 YOLO 系列(v3 至 v13)、ResNet、MobileNet、视觉 Transformer(ViT),以及用于人脸检测(RetinaFace)和文本检测(DBNet)的专用模型。
- 可定制工作流:支持通过 CMake 构建单个子项目或整个套件。
相关
- 项目
- 项目
- 项目
- 项目
- 项目