uustar920 发表于 2024-4-23 10:31:55

yolov8使用分类模型预测后保存的问题

大佬们,用yolov8训练了一个二分类模型,使用该模型predict的图片怎么保存到一个文件夹里面呢,每次保存都会新创建一个文件夹,里面只能保存该次预测的结果,求助

FishC 发表于 2024-4-23 10:32:17

你好!根据你的描述,你想把通过yolov8预测的图片保存到一个新的文件夹中。你可以按照以下步骤进行操作:

1. 导入所需的库:

import cv2
import os

2. 创建保存结果的文件夹:

result_folder = 'results'# 定义结果文件夹的名称
if not os.path.exists(result_folder):
    os.makedirs(result_folder)

3. 使用yolov8模型进行预测并保存图片:

def save_predictions(image, predictions):
    img_name = os.path.splitext(os.path.basename(image))# 获取图片的名称(不含扩展名)
    save_path = os.path.join(result_folder, img_name + '_predictions.jpg')# 定义保存路径

    for pred in predictions:
      xmin, ymin, xmax, ymax, confidence, class_id = pred# 解析预测结果
      xmin, ymin, xmax, ymax = int(xmin), int(ymin), int(xmax), int(ymax)

      # 在图像上绘制边界框和类别标签
      cv2.rectangle(image, (xmin, ymin), (xmax, ymax), (0, 255, 0), 2)
      cv2.putText(image, str(class_id), (xmin, ymin - 10), cv2.FONT_HERSHEY_SIMPLEX, 0.9, (0, 255, 0), 2)

    cv2.imwrite(save_path, image)# 保存图片

以上代码中,`image` 是输入图片,`predictions` 是通过yolov8模型预测的边界框和类别信息。

4. 调用 `save_predictions` 函数保存预测结果:

image_path = 'your_image.jpg'# 输入待预测的图片路径

# 调用yolov8模型进行图片预测
predictions = yolov8_model.predict(image_path)

# 保存预测结果
image = cv2.imread(image_path)
save_predictions(image, predictions)

这样,预测结果将保存在 `results` 文件夹内,每次保存都会创建一个新的文件来存储该次预测的结果。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页: [1]
查看完整版本: yolov8使用分类模型预测后保存的问题