yolov5部署

https://www.rs-online.com/designspark/nvidia-cudagpujetson-nano-tensorrt-2-cn
在这里插入图片描述

https://github.com/wang-xinyu/tensorrtx/tree/yolov5-v5.0/yolov5

For yolov5 v5.0, download .pt from yolov5 release v5.0, git clone -b v5.0 https://github.com/ultralytics/yolov5.git and git clone -b yolov5-v5.0 https://github.com/wang-xinyu/tensorrtx.git, then follow how-to-run in tensorrtx/yolov5-v5.0.
python gen_wts.py -w weights/yolov5s.pt -o yolov5s.wts

https://github.com/wang-xinyu/tensorrtx/tree/yolov5-v5.0/yolov5
v5和转换的对应

报错

python gen_wts.py
Traceback (most recent call last):
File “gen_wts.py”, line 6, in
from utils.torch_utils import select_device
ModuleNotFoundError: No module named ‘utils’

from utils.torch_utils import select_device
ModuleNotFoundError: No module named ‘utils.torch_utils’

环境的问题
解决办
https://www.i4k.xyz/article/qq_42362891/116107108

 [E] [TRT] Parameter check failed at: ../builder/Network.cpp::addScale::482, condition: shift.count > 0 ? (shift.values != nullptr) : (shift.values == nullptr)
yolov5: /home/ll/Documents/20220111_yolov5/tensorrtx/yolov5/common.hpp:155: nvinfer1::IScaleLayer* addBatchNorm2d(nvinfer1::INetworkDefinition*, std::map<std::__cxx11::basic_string<char>, nvinfer1::Weights>&, nvinfer1::ITensor&, std::__cxx11::string, float): Assertion `scale_1' failed.
Aborted

是因为不是拷贝过去的tensorx而是从新下载的才报错的。

ll@ll:~/Documents/20220111_yolov5/tensorrtx/yolov5/build$ nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2019 NVIDIA Corporation
Built on Wed_Oct_23_21:14:42_PDT_2019
Cuda compilation tools, release 10.2, V10.2.89

lov5s.engine …/samples
98ms
42ms
36ms
36ms
37ms
32ms
31ms
33ms
24ms
24ms
27ms
29ms
24ms
25ms
24ms
23ms
24ms
22ms
23ms
23ms
22ms
22ms
23ms
22ms
22ms
22ms
23ms
22ms
26ms
22ms
23ms
28ms
22ms
22ms
22ms
22ms
25ms
22ms
22ms
22ms
22ms
22ms
22ms
22ms
22ms
24ms
22ms
25ms
29ms
23ms
22ms
23ms
25ms
22ms
22ms
22ms
22ms
22ms
23ms
22ms
23ms
28ms
23ms
23ms
22ms
22ms
22ms
22ms
25ms
24ms
22ms
22ms
22ms
22ms
22ms
22ms
22ms
22ms
23ms
26ms
23ms
22ms
23ms
25ms
22ms
22ms
22ms
22ms
23ms
22ms
23ms
22ms
22ms
22ms
22ms
26ms
22ms
29ms
27ms
22ms
22ms
24ms
25ms
23ms
22ms
22ms
22ms
22ms
23ms
22ms
22ms
22ms
22ms
23ms
23ms
22ms
24ms
23ms
23ms
24ms
24ms
23ms
22ms
24ms
24ms
22ms
23ms
22ms
22ms
22ms
22ms
22ms
23ms
22ms
22ms
22ms
22ms
22ms
22ms
23ms
22ms
22ms
22ms
22ms
22ms
22ms
22ms
22ms
22ms
22ms
22ms
22ms
22ms
22ms
22ms
22ms
22ms
22ms
22ms
22ms
23ms
22ms
22ms
22ms
22ms
22ms
22ms
22ms
22ms
22ms
23ms
22ms
22ms
22ms
22ms
22ms
22ms
23ms
24ms
24ms
24ms
24ms
24ms
22ms
22ms
22ms
22ms
22ms
22ms
22ms
23ms
23ms
22ms
22ms
22ms
22ms
22ms
22ms
23ms
22ms
22ms
22ms

### YOLOv5 部署环境设置需求 YOLOv5 是一种高效的实时目标检测算法,其部署环境的配置取决于具体的硬件平台以及运行场景。以下是关于 YOLOv5部署环境中所需的关键要素及其说明。 #### 1. Python 版本 PythonYOLOv5 运行的核心依赖之一。推荐使用的版本为 **Python 3.7 或更高**[^1]。较低版本可能会导致兼容性问题或无法安装必要的库文件。 #### 2. PyTorch 安装 YOLOv5 基于 PyTorch 构建,因此需要正确安装对应版本的 PyTorch 库。PyTorch 支持多种操作系统和 GPU 加速功能。可以通过以下命令完成安装: ```bash pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118 ``` 上述命令适用于 CUDA 11.8 环境下的 GPU 加速支持。如果不需要 GPU,则可以省略 `--index-url` 参数并下载 CPU-only 版本[^4]。 #### 3. 其他必要依赖项 除了 PyTorch 外,还需要其他一些常用的 Python 库来辅助模型训练与推理。这些依赖通常通过 pip 自动安装,也可以手动指定版本号以确保稳定性。主要依赖包括但不限于: - numpy - opencv-python - matplotlib - pandas 完整的依赖列表可以在项目的 `requirements.txt` 文件中找到,并可通过如下方式一次性安装所有必需组件: ```bash pip install -r requirements.txt ``` #### 4. 数据集准备 为了使 YOLOv5 能够正常工作,需按照特定格式准备好数据集。这一步骤涉及创建标签文件(`.txt`)、定义类别名称(`classes.names`),并将图像路径整理成标准结构化目录形式[^2]。 #### 5. 模型权重加载 预训练好的权重文件对于快速启动项目至关重要。可以从 Ultralytics 提供的官方仓库获取不同大小变体(如 yolov5s.pt、yolov5m.pt 等)。将选定的 `.pt` 权重放置到适当位置后,在脚本初始化阶段调用即可实现迁移学习或者直接预测操作[^3]。 #### 6. 推理服务封装 当基本框架搭建完成后,可根据实际应用场景进一步优化接口设计。比如利用 Flask/Django 开发 RESTful API;借助 ONNX/TensorRT 实现轻量化转换等等方法提升性能表现。 ---
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值