torch.hub.load加载yolo
时间: 2025-01-12 19:13:52 浏览: 136
### 使用 `torch.hub.load` 加载 YOLOv5 模型
为了成功加载 YOLOv5 模型,需先确保已安装必要的依赖包:
```bash
pip install tqdm boto3 requests regex sentencepiece sacremoses
```
#### 安装 PyTorch 和 ultralytics/yolov5 库
如果尚未安装 PyTorch 或者特定版本的 yolov5,则可以通过如下命令完成安装:
```bash
pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu113
git clone https://github.com/ultralytics/yolov5.git
cd yolov5
pip install -r requirements.txt
```
#### 载入预训练模型
对于官方发布的预训练权重文件,可以直接通过 GitHub 仓库地址来获取并初始化模型实例。
```python
import torch
model = torch.hub.load('ultralytics/yolov5', 'yolov5s')
img = 'https://ultralytics.com/images/zidane.jpg'
results = model(img)
print(results.print())
```
这段代码会下载指定架构大小(如 `'yolov5s'` 表示小型版)的默认预训练权重,并执行一次推理操作[^2]。
#### 加载本地自定义训练好的模型
当拥有自己训练过的 `.pt` 权重文件时,可通过设置 `source='local'` 参数以及提供具体的路径来进行加载。
```python
import torch
# 假设 best.pt 是位于当前目录下的最佳权重文件
model = torch.hub.load('.', 'custom', path='./best.pt', source='local')
# 测试图片路径
img_path = './data/test_image.png'
# 执行预测
results = model(img_path)
# 输出检测结果
results.print()
results.show()
```
此部分展示了如何利用本地存储的最佳权重文件创建一个定制化的YOLOv5对象[^3]。
#### 配置参数说明
- **repo_or_dir**: 可以为远程 Git 仓库 URL (`ultralytics/yolov5`) 或者指向包含模型脚本的本地文件夹(`.`表示当前位置)。
- **model**: 指定要加载的具体模型名称或标签名。如果是标准模型则传入类似'yolov5m','yolov5l'; 若为自定义模型应填入'custom'.
- **path**: 对于自定义模型而言,这是保存有`.pt`格式权值文件的确切位置字符串。
- **source**: 默认是从网络拉取资源;而设定成`local`意味着从本地读取数据而不是在线查找。
#### 解决常见问题
有时可能会遇到一些错误提示,比如找不到模块或是无法解析某些函数。这通常是因为环境变量未正确配置或者是缺少了某些必需的Python库。建议按照官方文档指示逐步排查,必要时更新至最新稳定版本的软件栈。
阅读全文
相关推荐



















