yolov8 原木识别模型

本文介绍了如何使用yolov8模型在SKU-110k数据集上进行10轮训练后微调,通过200张原木图片进一步优化。作者提供了微调后的模型下载链接,以及使用YOLO进行物体检测的代码示例,展示了模型在实时图像上的应用和可能的扩展至圆管检测。
摘要由CSDN通过智能技术生成

一、模型介绍

  • 模型基于 yolov8
  • 数据集采用SKU-110k,这数据集太大了十几个 G,所以只训练了 10 轮左右就拿来微调了
  • 原木数据微调:纯手工标注 200 张左右原木图片,训练 20 轮的效果

PS:因为训练时间比较长 Google 的 Colab 老是自动断开,所以一直在 CPU上训练,截止文章发布已经连续训练了 24h,平均 1h40m 一轮(GPU 估计也就 5 分钟左右)

如果想要更高精度的模型,可以关注领取


10SKU-110k + 20 轮原木微调模型下载地址:
https://wwxd.lanzouu.com/ilUyp1gd9dfi
密码:a67b

下载完把模型格式修改为 pt

二、模型测试

  • 废话不多说上代码:
import cv2
from ultralytics import YOLO

# 加载模型
model = YOLO('原木.pt')  # 预训练的 YOLOv8n 模型



image_url = '123.jpeg'
# 在图片列表上运行批量推理
results = model([image_url])  # 返回 Results 对象列表

image = cv2.imread(image_url)  # 替换成实际图像路径

# 处理结果列表
for result in results:
    boxes = result.boxes  # 边界框输出的 Boxes 对象
    probs = result.probs  # 分类输出的 Probs 对象

    boxes_np = boxes.xyxy.numpy()
    for i in range(boxes_np.shape[0]):
        box_coordinates = boxes_np[i]
        x1, y1, x2, y2 = box_coordinates.astype(int)
        image = cv2.rectangle(image, (x1, y1), (x2, y2), (0, 255, 0), 2)  # 绿色框

        # 计算边界框中心点坐标
        center_x = (x1 + x2) // 2
        center_y = (y1 + y2) // 2
        # if i == boxes_np.shape[0]-1:
        cv2.putText(image, str(i + 1), (center_x, center_y), cv2.FONT_HERSHEY_SIMPLEX, 1, (255, 0, 0), 2,
                        cv2.LINE_AA)  # 红色数字



# 创建窗口并展示图像
cv2.namedWindow('Bounding Boxes', cv2.WINDOW_NORMAL)
cv2.imshow('Bounding Boxes', image)
cv2.waitKey(0)
cv2.destroyAllWindows()

三、模型效果

此外,也可以考虑对圆管进行微调,相信在相同数据集下,模型效果会更加出色。

四、实时推理

  • 10
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值