YOLOv8训练好的pt文件如何用来预测

本文介绍了如何使用Ultralytics的YOLO库进行对象检测,包括加载官方预训练模型和自定义模型进行预测,以及如何在预测后保存图片。教程详细展示了代码示例和参数设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 使用原版预测

代码如下:

from ultralytics import YOLO

# Load a model
model = YOLO('yolov8n.pt')  # load an official model

# Predict with the model
results = model('https://ultralytics.com/images/bus.jpg')  # predict on an image

命令如下:

yolo detect predict model=yolov8n.pt source='https://ultralytics.com/images/bus.jpg'  # predict with official model

2.使用自己的模型

仅需要把自己的模型放入即可
代码如下:

from ultralytics import YOLO

# Load a model
model = YOLO('path/to/best.pt')  # load a custom model

# Predict with the model
results = model('https://ultralytics.com/images/bus.jpg')  # predict on an image

命令如下:

yolo detect predict model=path/to/best.pt source='https://ultralytics.com/images/bus.jpg'

会输出一下信息
在这里插入图片描述

3.如何让图片保存下来

添加save=True即可,代码如下:

from ultralytics import YOLO

# Load a model
model = YOLO('path/to/best.pt')  # load a custom model

# Predict with the model
results = model('https://ultralytics.com/images/bus.jpg', save=True)  # predict on an image

会提示保存的路径
在这里插入图片描述

### 使用训练好的YOLOv8模型(.pt文件)进行目标检测 #### 加载YOLOv8模型并准备环境 要使用训练好的YOLOv8 `.pt` 文件执行目标检测任务,首先需确保已安装必要的库和依赖项。通常情况下,这涉及到Python及其科学计算包如NumPy、OpenCV等,还有Ultralytics的YOLO工具箱。 ```bash pip install ultralytics opencv-python numpy ``` #### 导入所需模块与初始化模型 接下来,在Python脚本中导入所需的库,并加载`.pt`格式的预训练YOLOv8模型: ```python from ultralytics import YOLO import cv2 import numpy as np model_path = 'path_to_your_model/yolov8n.pt' # 替换为实际路径 model = YOLO(model_path) ``` #### 图像预处理 对于输入图片,需要做一些基本的预处理工作来适应网络的要求。这里展示了一个简单的例子,它会读取一幅图像并将颜色空间转换成RGB模式,因为大多数深度学习框架默认接受这种色彩表示方法[^4]。 ```python image_file = "bus.jpg" frame = cv2.imread(image_file) # 将BGR转为RGB rgb_frame = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB) ``` #### 执行推理过程 有了上述准备工作之后,就可以调用模型来进行预测了。此操作返回的结果包含了识别到的对象类别、置信度分数以及包围框的位置信息。 ```python results = model.predict(rgb_frame) ``` #### 结果可视化 最后一步是对得到的结果做进一步处理,比如绘制矩形框标注出被发现的目标位置,并显示最终效果给用户查看。 ```python for result in results: boxes = result.boxes.cpu().numpy() for box in boxes: r = box.xyxy[0].astype(int) cv2.rectangle(frame, (r[0], r[1]), (r[2], r[3]), color=(0, 255, 0), thickness=2) cv2.imshow('Detected Objects', frame) cv2.waitKey(0) cv2.destroyAllWindows() ``` 以上就是利用训练完毕后的YOLOv8模型(`.pt`)开展目标检测工作的全过程概述[^1]。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

有趣的野鸭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值