python - 如何从自定义 YOLOv5 模型中设置和获取置信度阈值?
问题描述
我正在尝试对我的自定义 YOLOv5 模型进行推理。官方文档使用默认detect.py
脚本进行推理。
例子:python detect.py --source data/images --weights yolov5s.pt --conf 0.25
我已经编写了自己的 python 脚本,但我既不能在初始化期间设置置信度阈值,也不能从模型的预测中检索它。我只能获取标签和边界框坐标。这是我的代码:
import torch
model = torch.hub.load('ultralytics/yolov5', 'custom', path_or_model='best.pt')
results = model("my_image.png")
labels, cord_thres = results.xyxyn[0][:, -1].numpy(), results.xyxyn[0][:, :-1].numpy()
解决方案
要设置自定义训练的 YOLOv5 模型的置信度阈值,请使用以下命令:
import torch
model = torch.hub.load('ultralytics/yolov5', 'custom',
path='absolute/path/to/.pt/file', source='local')
model.conf = 0.25
要检索推理图像和其他值,请使用
# Inference Result
img = "my_image.png"
results = model(img)
# Results
results.print() # or .show(), .save(), .crop(), .pandas(), etc.
推荐阅读
- javascript - 如何在带有按钮的测验应用程序中增加问题索引
- angular - 仅运行一次 Angular 更改检测并停止检测该组件的更改
- python - 如何在 django 中对秒外键执行计数?
- android - 应用程序关闭后我无法保持广播接收器运行
- jquery - 如何根据显示的内容更新导航项列表
- docker - 在 docker (2.2.7) 上找不到最新的 dotnet 核心映像
- r - 如何让分位数与 summarise_at 和 group_by (dplyr) 一起使用
- powershell - 我想删除特定文件名但保留特定文件名
- unity3d - 如何在 doxygen 中使用更直观的代码块?
- sql - 如果我在 SSRS 中有两个来自存储过程的数据集,我可以在它们之间传递数据吗?