YOLOv11 + TensorRT 在 Jetson 设备上的实时部署

YOLOv11 + TensorRT 在 Jetson 设备上的实时部署

模型导出:从 PyTorch 到 TensorRT 引擎

# 1. 导出 ONNX 格式(中间格式)
yolo export model=best.pt format=onnx imgsz=640
# 2. 导出 TensorRT 引擎(GPU 优化格式)
yolo export model=best.pt format=engine device=0 half=True imgsz=640

关键参数

  1. format=engine:指定导出 TensorRT 引擎
  2. device=0:强制使用 GPU 导出(必须)
  3. half=True:启用 FP16 精度(速度提升 1-2 倍,精度损失小)
  4. imgsz=640:固定输入尺寸(与训练一致,避免推理报错)
格式 特点 适用场景
.pt PyTorch 原生格式,支持动态尺寸 训练、调试
.onnx 跨框架中间格式,支持多后端 跨平台部署(如 OpenVINO)
.engine TensorRT 优化格式,绑定硬件 / 版本 Jetson 设备实时推理(最快)

常见错误

  1. ERROR: TensorRT model exported with a different version
    引擎版本与当前 TensorRT 版本不匹配 重新导出引擎(在当前环境中执行 export)
  2. AssertionError: input size … not equal to max model size
    推理尺寸与导出时尺寸不匹配 推理时用 imgsz=导出尺寸 或重新导出指定尺寸引擎

Jetson 设备性能优化

  1. 电源模式切换(释放性能)
    Jetson 设备默认可能处于低功耗模式,需切换到高性能模式:
sudo nvpmodel -q    # 查看当前模式
sudo nvpmodel -m 2  # 设置为最大性能模式
sudo jetson_clocks  # 启用最大频率
  1. 性能监控
# 安装 jetson-stats(设备监控工具)
sudo pip3 install jetson-stats
# 启动监控界面(查看 CPU/GPU 使用率、频率、温度)
jtop

摄像头读取优化(解决帧率低)

  1. 核心问题
    Jetson 上 cv2.VideoCapture(0) 默认使用 V4L2 后端,读取速度慢(单帧耗时 >200ms),导致帧率被限制。
  2. 优化方案:GStreamer 硬件加速
    USB 摄像头配置
# 配置摄像头(高效参数,与TensorRT配合最大化性能)
cap = cv2.VideoCapture(0)
# 1. 启用MJPG格式(压缩编码,读取速度提升3-5倍)
cap.set(cv2.CAP_PROP_FOURCC, cv2.VideoWriter.fourcc('M', 'J', 'P'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值