| 技能模块 | 具体内容 | 推荐工具/技术 |
|---|---|---|
| 1. 模型训练与导出 | 训练模型、导出为 ONNX、TorchScript、SavedModel | PyTorch / TensorFlow → ONNX |
| 2. 模型优化 | 量化(INT8)、剪枝、层融合、精度校准 | TensorRT、ONNX Runtime、cuDNN |
| 3. 推理加速 | GPU 并行计算、CUDA 编程、内存优化 | CUDA、cuDNN、TensorRT API |
| 4. 部署框架 | 构建推理引擎、服务化部署、容器化 | TensorRT、Triton Inference Server、Docker |
| 5. 系统集成 | C++/Python 混合部署、摄像头/传感器接入、前后处理 | OpenCV、GStreamer、Jetson Multimedia API |
| 6. 边缘部署 | Jetson 特有优化、功耗控制、实时推理 | JetPack、DeepStream、TensorRT DLA |
[训练模型] → [导出 ONNX] → [TensorRT 优化] → [生成 .engine] → [部署运行]
- 使用 PyTorch / TensorFlow 训练模型
- 确保模型支持导出为 ONNX(避免使用不支持的操作)
torch.onnx.export(model, dummy_input, "model.onnx", opset_version=11)-
两种方式:
-
自动转换:使用
trtexec工具bash
复制
trtexec --onnx=model.onnx --saveEngine=model.engine --fp16
-
手动构建:使用 TensorRT Python/C++ API 构建网络(适合自定义层)
-
- 本地调用:C++ 或 Python 加载
.engine文件推理 - 服务化部署:
- 使用 Triton Inference Server 提供 HTTP/gRPC 接口
- 或自行用 FastAPI + Flask 封装 API
| 任务 | 工具链 | 说明 |
|---|---|---|
| 环境准备 | JetPack 5.x + CUDA 11.4 + cuDNN 8.6 + TensorRT 8.5 | 使用 NVIDIA SDK Manager 一键安装 |
| 模型优化 | TensorRT + INT8 量化 | 使用 calibration images 做量化,提升 2-4 倍速度 |
| 视频流处理 | DeepStream + GStreamer | 支持 RTSP、USB 摄像头输入,GPU 加速 |
| 多模型并发 | Triton Server | 支持多个模型同时部署,自动调度 GPU 资源 |
| 远程调试 | VS Code + Docker + SSH | 在本地开发,远程部署到 Jetson |
| 类型 | 名称 | 链接 |
|---|---|---|
| 官方文档 | TensorRT Quick Start Guide | NVIDIA 官方文档 |
| 实战教程 | TensorRT 部署实战(分类/检测/分割) | 微信公众号教程 |
| 课程推荐 | 《CUDA + TensorRT 模型加速实战》 | 深蓝学院课程 |
| 项目模板 | Jetson 部署 YOLOv8 + TensorRT | GitHub 搜索关键词:yolov8 tensorrt jetson |
表格
复制
| 天数 | 任务 |
|---|---|
| Day 1-2 | 在 Jetson 上安装 JetPack + TensorRT + PyTorch |
| Day 3-4 | 训练一个小模型(如 ResNet18)并导出 ONNX |
| Day 5 | 使用 TensorRT 转换为 .engine 并测试推理 |
| Day 6 | 用 C++ 写一个简单推理程序,读取图片输出结果 |
| Day 7 | 用 Triton Server 部署模型,并通过 HTTP 调用测试 |