当前位置: 首页 > news >正文

YOLOv5 + TensorRT(MX150显卡)完整操作手册

YOLOv5 + TensorRT(MX150显卡)完整操作手册

整体流程概览

安装前置软件

配置专属Python环境

安装核心依赖

导出ONNX模型

转换TensorRT引擎

运行加速推理

验证成果

一、前置条件安装(基础环境搭建)

1. 安装 Anaconda/Miniconda

  • 下载地址:https://www.anaconda.com/download/success(选 Windows 64位)
  • 安装步骤
    1. 双击安装包,勾选Add Anaconda3 to my PATH environment variable(添加环境变量);
    2. 其余选项默认,等待安装完成;
    3. 验证:打开 cmd,输入conda --version,输出版本号即成功。

2. 安装 CUDA 10.2(适配 MX150)

  • 下载地址:https://developer.nvidia.com/cuda-10.2-download-archive(选 Windows 10/11 64位)
  • 安装步骤
    1. 双击安装包,选择自定义安装
    2. 取消勾选Visual Studio Integration(无VS可忽略);
    3. 安装路径默认(C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2);
    4. 验证:cmd 输入nvcc -V,输出 CUDA 10.2 版本信息即成功。

3. 安装 cuDNN 8.2.0(适配 CUDA 10.2)

  • 下载地址:https://developer.nvidia.com/rdp/cudnn-archive(需登录NVIDIA账号,选 cuDNN 8.2.0 for CUDA 10.2)
  • 安装步骤
    1. 解压下载的压缩包,得到includelibbin三个文件夹;
    2. 将三个文件夹分别复制到 CUDA 10.2 安装目录(C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2)对应的文件夹中;
    3. 验证:CUDA 示例可运行(可选,仅需确保文件复制到位)。

4. 安装 TensorRT 8.2.5.1

  • 下载地址:https://developer.nvidia.com/nvidia-tensorrt-8x-download(选 TensorRT 8.2.5.1 for CUDA 10.2 Windows 64-bit)
  • 安装步骤
    1. 解压压缩包到D:\TensorRT-8.2.5.1(路径无中文/空格);
    2. 配置环境变量:
      • 新增系统变量TENSORRT_DIR,值为D:\TensorRT-8.2.5.1
      • D:\TensorRT-8.2.5.1\lib添加到系统变量Path中;
    3. 验证:解压后D:\TensorRT-8.2.5.1\python下有tensorrt-8.2.5.1-cp38-none-win_amd64.whl即成功。

二、配置专属 Python 环境

# 1. 打开 Anaconda Prompt(管理员模式)# 2. 创建 Python 3.8 环境(命名为 trt-yolo,适配所有依赖)conda create-ntrt-yolopython=3.8-y# 3. 激活环境(所有后续操作必须在此环境执行)conda activate trt-yolo

三、安装核心依赖(适配 CUDA 10.2/TensorRT)

# 1. 安装 PyTorch 1.8.1+cu102(适配 CUDA 10.2 和 Python 3.8)pip3installtorch torchvision# 2. 安装 TensorRT Python 绑定(关键,从解压包安装)cdD:\TensorRT-8.2.5.1\python pipinstalltensorrt-8.2.5.1-cp38-none-win_amd64.whl# 3. 下载 YOLOv5-7.0 代码(无 Git 则手动下载 zip 解压)cdD:\Users\24611\homework\专业实习\projectgitclone-bv7.0 https://github.com/ultralytics/yolov5.gitcdyolov5# 4. 安装 YOLOv5 基础依赖pipinstall-rrequirements.txt# 5. 安装 ONNX 相关依赖(适配 TensorRT 模型转换)pipinstallonnx==1.12.0onnxruntime==1.13.1 onnx-simplifier==0.4.18# 6. 降级兼容包(解决版本冲突,关键!)pip uninstall pandas matplotlib numpy-ypipinstallpandas==1.3.5matplotlib==3.3.4numpy==1.19.5

四、导出 YOLOv5 为 ONNX 模型

# 在 yolov5 文件夹下执行(自动下载 yolov5s.pt 权重)python export.py--weightsyolov5s.pt--includeonnx--opset12--simplify# 成功标志:终端输出 "ONNX export success: yolov5s.onnx"

五、转换为 TensorRT 引擎(FP16 精度,MX150最优)

# 在 yolov5 文件夹下执行trtexec--onnx=yolov5s.onnx--saveEngine=yolov5s.engine--fp16--workspace=4096# 成功标志:终端输出 "[I] PASSED",生成 yolov5s.engine 文件(等待 3-10 分钟)

六、运行 TensorRT 加速推理

trtexec--onnx=yolov5s.onnx--saveEngine=yolov5s.engine--fp16# 在 yolov5 文件夹下执行python detect.py--weightsyolov5s.pt--sourcedata/images/bus.jpg--devicecpu

七、验证最终成果

1. 终端验证(核心输出)

YOLOv5 v7.0-0-g915bbf29 Python-3.8.20 torch-1.8.1+cu102 CUDA:0 (GeForce MX150, 2048MiB) Loading yolov5s.engine for TensorRT inference... image 1/1 ... 4 persons, 1 bus, 31.0ms Speed: 11.7ms pre-process, 31.0ms inference, 85.5ms NMS per image Results saved to runs\detect\exp3

2. 可视化验证

  • 打开路径:D:\Users\24611\homework\专业实习\project\yolov5\runs\detect\exp3
  • 查看bus.jpg,可见公交车(bus)和4个行人(person)被红色框标注,附带置信度。

关键注意事项

  1. 路径要求:所有软件/代码解压路径均不能包含中文、空格或特殊字符;
  2. 环境唯一性:全程必须在trt-yolo环境中执行,退出后需重新激活;
  3. 显存适配:若转换引擎提示内存不足,将--workspace=4096改为--workspace=2048
  4. 速度参考:MX150 显卡推理速度约 32 FPS(原生 PyTorch 仅 3-5 FPS),加速效果显著。

总结

阶段核心目标验证标准
前置安装搭建 CUDA/TensorRT 基础环境nvcc -V输出 CUDA 10.2,TENSORRT_DIR配置生效
环境配置适配 Python 3.8 依赖import tensorrt/torch无报错,torch.cuda.is_available()返回 True
模型转换生成 TensorRT 引擎生成 yolov5s.engine,无转换报错
加速推理完成 GPU 目标检测生成带检测框的图片,推理速度提升 2-5 倍

YOLOv5 + TensorRT 部署核心软件作用清单(含CMake补充)

软件名称核心作用
Anaconda/Miniconda1. 创建独立Python环境,隔离不同项目的依赖冲突;
2. 一键管理Python版本和第三方包。
CUDA Toolkit 10.21. 提供NVIDIA显卡的GPU计算底层接口;
2. 是PyTorch/TensorRT调用GPU的基础。
cuDNN 8.2.01. CUDA的深度神经网络加速库;
2. 优化卷积、池化等深度学习核心运算,提升GPU计算效率。
TensorRT 8.2.5.11. NVIDIA专属的推理加速引擎,将ONNX模型转换为GPU优化的.engine文件;
2. 通过FP16精度压缩模型,实现MX150显卡的硬件级加速。
CMake1. 跨平台编译工具,ONNX安装过程中需要通过CMake编译底层C++代码;
2. 缺失会导致ONNX源码编译失败,无法完成安装。
YOLOv5 v7.01. 提供目标检测基础代码和预训练权重(yolov5s.pt);
2. 内置ONNX导出和TensorRT推理接口,衔接全流程。
PyTorch 1.8.1+cu1021. 加载YOLOv5预训练模型,完成ONNX格式导出;
2. 适配CUDA 10.2,提供GPU版模型推理能力。
ONNX/ONNX Runtime1. ONNX:作为YOLOv5到TensorRT的模型格式转换中间件;
2. ONNX Runtime:支撑ONNX模型的解析和验证。
NumPy/Pandas/Matplotlib1. NumPy:提供数值计算基础,支撑模型张量运算;
2. Pandas:处理YOLOv5数据加载和标注;
3. Matplotlib:实现检测结果可视化。

补充说明

  • CMake 是ONNX安装的前置依赖:在安装onnx==1.12.0时,其底层C++代码需要通过CMake编译,因此必须提前安装CMake并配置环境变量,否则会报Could not find cmake executable!错误。
  • 所有软件的核心作用围绕“MX150显卡加速YOLOv5”展开:CUDA/cuDNN提供GPU计算基础,TensorRT实现核心加速,YOLOv5提供检测逻辑,其余工具均为流程衔接和环境适配的必要支撑。
http://www.cnnetsun.cn/news/2061582.html

相关文章:

  • 想发医学图像处理论文?这份CVPR、MICCAI等顶会与TPAMI、MIA等SCI期刊的投稿难度与经验全解析
  • 异构GPU集群调度优化:GOGH框架实践与性能提升
  • 手把手教你用MSP430G2553单片机驱动DS18B20测温(附Proteus 8.13仿真文件)
  • Hitboxer:电竞玩家的键盘映射革命,彻底告别方向键冲突
  • 免费神器VMware vCenter Converter Standalone 6.2:手把手教你10分钟把物理机C盘变成可移动的虚拟机(附下载链接)
  • WarcraftHelper终极指南:轻松解决魔兽争霸3在现代系统上的四大兼容性难题
  • 如何实现5倍速ComfyUI下载:ComfyUI-Manager终极加速指南
  • Yakit实战:WebFuzzer热加载与魔术方法的场景化应用
  • WebPlotDigitizer终极指南:5分钟掌握图表数据提取技巧
  • 别再只用Sobel了!手把手教你用MATLAB实现四种经典边缘检测算子(附完整代码对比)
  • 网盘直链下载助手:6大平台免客户端高速下载终极指南
  • Flutter for OpenHarmony 第三方库六大核心模块整合实战全解|从图片处理、消息通知到加密存储、设备推送 一站式鸿蒙适配开发总结
  • TranslucentTB开机自启动终极指南:3种方法解决启动失败问题
  • 3步轻松解决C盘爆红!Windows Cleaner系统清理工具完全指南
  • CefFlashBrowser:让Flash游戏重获新生的终极解决方案
  • 猿创征文 | 初见乍惊欢,久处亦怦然--我web前端的技术成长之路
  • ConfettiSwiftUI性能优化:如何在大规模动画中保持流畅体验
  • 高档数控机床市场深度调研与创业机会分析
  • Sentaurus实战解析:准静态仿真中的电压斜坡与耦合求解
  • 汽车ECU诊断入门:手把手教你用CANoe发送0x10服务切换会话模式
  • AI与生物技术驱动的医疗健康革命
  • 1Backend客户端库生成原理:实现跨语言类型安全API
  • YOLO12模型多GPU训练指南:大幅缩短训练时间
  • QSkinny实战:如何用这个轻量级Qt UI库打造嵌入式汽车仪表盘
  • 告别手动搬运:PanTools v1.0.11 如何用批量转存与智能切换重塑多网盘工作流
  • Wooey任务调度与监控:实时跟踪Python脚本执行状态
  • Python强大的语法支持你知道吗
  • Numbat编程语言:科学计算的终极解决方案,原生支持物理单位计算
  • Flux2-Klein-9B-True-V2快速部署:单卡RTX 4090 D运行FP8Mixed模型
  • 终极指南:Vagas社区生态如何与其他技术招聘平台协同发展