你好!根据你的描述,你想把通过yolov8预测的图片保存到一个新的文件夹中。你可以按照以下步骤进行操作:
1. 导入所需的库:
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))[0] # 获取图片的名称(不含扩展名)
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 小助理,如未能正确解答您的问题,请继续追问。 |