jetson orin nano 使用yolov8导出engine

1. 导出onnx

经过前面训练,得到了best.pt模型,现在想要使用tensorrt进行推理,需要先导出为onnx格式,再转化为engine格式。

yolo export model=best.pt format=onnx opset=12 simplify=True

2.解决错误

在导出过程中,可能会出现错误,

  1. cmake版本问题
    安装好后,默认cmake版本为3.16,需要对cmake进行升级
 sudo pip install --upgrade cmake==3.24.0 -i https://pypi.douban.com/simple
 hash -r
 使用cmake --version 查看最新版本号
  1. 没有onnxruntime、onnxsim问题
    使用以下命令安装
 pip3 install  onnxsim onnxruntime -i https://pypi.douban.com/simple

3.使用gpu进行预测

yolo task=pose mode=predict model=/home/nvidia/best.onnx source=0 show=True save=True device=0

如果出现错误

onnxruntime_inference_collection.py:69: UserWarning: Specified provider 'CUDAExecutionProvider' is not in available provider names.Available providers: 'AzureExecutionProvider, CPUExecutionProvider'
  warnings.warn(

说明没有安装onnxruntime-gpu,无法使用gpu进行预测。
解决办法:
在jetson orin nano中,先卸载onnruntime,

pip3 uninstall   onnxruntime

然后在https://elinux.org/Jetson_Zoo,根据自己的jetpack版本、cuda版本、python版本,选择对应的onnxruntime-gpu,在这里插入图片描述
例如,我的时jetpack5.1.1,cuda是11.4,python是3.8,所以选择onnxruntime1.12.1,
在官网https://onnxruntime.ai/docs/execution-providers/CUDA-ExecutionProvider.html查看cuda对应的onnruntime-gpu版本。
下载完成后,使用命令安装

pip3 install onnxruntime_gpu-1.12.1-cp38-cp38-linux_aarch64.whl

4、导出为engine

首先设置tensorrt路径,打开~/.bashrc,添加

export PATH=/usr/src/tensorrt/bin:$PATH

到文件末尾,执行

source ~/.bashrc

更新后,可以执行

trtexec --onnx=/home/nvidia/best.onnx --saveEngine=/home/nvidia/best.engine

等待5-10分钟后,转换完毕

相关推荐

  1. YOLOv8深度剖析专栏导航

    2024-01-13 22:04:03       32 阅读
  2. 记录首次使用yolov8-obb

    2024-01-13 22:04:03       57 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-13 22:04:03       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-13 22:04:03       106 阅读
  3. 在Django里面运行非项目文件

    2024-01-13 22:04:03       87 阅读
  4. Python语言-面向对象

    2024-01-13 22:04:03       96 阅读

热门阅读

  1. springboot 注解+AOP实现接口方法出入参打印

    2024-01-13 22:04:03       68 阅读
  2. 力扣labuladong——一刷day91

    2024-01-13 22:04:03       66 阅读
  3. apply、call、bind的区别 如何实现一个bind

    2024-01-13 22:04:03       69 阅读
  4. PC-lint Plus在安全系统中的应用

    2024-01-13 22:04:03       45 阅读
  5. C语言版数据结构与算法pta合集:7-3 括号匹配

    2024-01-13 22:04:03       60 阅读
  6. 【已解决】C语言如何使用宽字符输出中文

    2024-01-13 22:04:03       64 阅读
  7. mysql修复VIEWRESIDENTHIST 数据

    2024-01-13 22:04:03       59 阅读
  8. Linux数据处理的几个命令

    2024-01-13 22:04:03       94 阅读
  9. 教师如何开发期末考试成绩的查询系统

    2024-01-13 22:04:03       66 阅读
  10. xtu oj 1522 格子

    2024-01-13 22:04:03       57 阅读
  11. 标准 C++ 数据类型和 C++/WinRT

    2024-01-13 22:04:03       56 阅读
  12. Android studio GridView应用设计

    2024-01-13 22:04:03       62 阅读