带标注的茶叶缺陷识别数据集,可识别健康和7种病害叶子,识别率76.1%,3886张图,支持yolo,coco json,voc xml,文末有模型训练代码

带标注的茶叶缺陷识别数据集,可识别健康和7种病害叶子,识别率76.1%,3886张图,支持yolo,coco json,voc xml,文末有模型训练代码

模型训练指标参数:

模型训练图:

数据集拆分

总图数:3886 张图数

训练集

3503 张图

验证集

275 张图

测试集

108 张图

预处理

自动定向:应用

调整大小:拉伸到640x640

增强

单个训练样本扩增输出 3 张图片

图像翻转:水平翻转、垂直翻转

亮度调整:上下浮动 ±24%

模糊处理:最大模糊半径 1.6 像素

数据集标签:

'white_spot', 'red_leaf_spot', 'healthy', 'gray_light', 'brown_blight', 'algal_leaf', 'bird_eye_spot', 'Anthracnose'

标签解释

| 英文标识 | 中文病害名称 |

| ---- | ---- |

| white_spot | 白斑病 |

| red_leaf_spot | 红叶斑病 |

| healthy | 健康植株(无病害) |

| gray_light | 灰斑病 |

| brown_blight | 褐疫病 |

| algal_leaf | 藻斑病 |

| bird_eye_spot | 鸟眼斑病 |

| Anthracnose | 炭疽病 |

数据集图片和标注信息示例:

数据集下载:

yolo26:https://download.csdn.net/download/pbymw8iwm/92931576

yolo v12:https://download.csdn.net/download/pbymw8iwm/92931577

yolo v11:https://download.csdn.net/download/pbymw8iwm/92931575

yolo v9:https://download.csdn.net/download/pbymw8iwm/92931573

yolo v8:https://download.csdn.net/download/pbymw8iwm/92931570

yolo v7:https://download.csdn.net/download/pbymw8iwm/92931572

coco json:https://download.csdn.net/download/pbymw8iwm/92931574

pascal voc xml:https://download.csdn.net/download/pbymw8iwm/92931571

YOLO模型训练

下载数据集之后解压到当前文件夹,然后将 我的仓库 https://gitcode.com/pbymw8iwm/YOLOProject 里的训练模型脚本复制到文件夹下,假设你使用的是yolov8来训练你就用python train_yolov8.py

​​

模糊图片在模型训练中的优势分析

该数据集中包含了如果包含了一些模糊图片,这并非数据缺陷,而是一种精心设计的数据增强策略,能为模型训练带来以下显著优势:

  1. 提升模型鲁棒性:现实场景中,可能发生在运动模糊,对焦不准或光线不足的情况下。在训练集中引入模糊样本,可以迫使模型学习更本质的特征,而不是过度依赖清晰的边缘或纹理细节,从而提升模型在复杂、非理想成像条件下的识别能力。
  2. 模拟真实世界噪声:监控摄像头、手机等设备在低光照或快速移动时极易产生模糊。包含此类图片的数据集能让模型提前"见识"并适应这种噪声,减少在实际部署时因图像质量下降而导致的性能骤降。
  3. 防止模型过拟合 :如果训练集全是高清、摆拍的完美图片,模型容易记住这些特定场景下的"干净"特征,而对新的、稍有模糊的图片泛化能力差。模糊图片作为一种有效的正则化手段,可以增加数据分布的多样性,防止模型过拟合到有限的清晰样本上。
    总结 :因此,数据集中包含的模糊图片,与你看到的"水平翻转"、"剪切形变"、"随机遮挡"等增强操作一样,都是为了构建一个更接近真实世界复杂分布的数据环境,从而训练出更健壮、更泛化、更实用的模型。

模型验证测试情况:

验证测试代码:

python 复制代码
#需要安装pip install ultralytics
from ultralytics import YOLO
import cv2

# ===================== 1. 加载YOLO模型 =====================
# 自动下载预训练模型(yolov8n最轻量快速),也可换 yolov8s/m/l/x
model = YOLO("best.pt")
# ===================== 2. 推理配置 =====================
image_path = "326_jpg.rf.8ad64cc0668df32c4e5f59b50e899e9c.jpg"  # 你的图片路径
save_result = True       # 是否保存标注后的图
# ===================== 3. 执行推理 =====================
results = model.predict(
    source=image_path,
    conf=0.01,          # 置信度阈值(低于该值忽略)
    save=False,         # 关闭默认保存,自定义保存
    verbose=False       # 关闭冗余日志
)

# ===================== 4. 解析结果:目标区域 + 标注信息 =====================
print("="*50)
print("YOLO 推理结果(目标区域 + 标注信息)")
print("="*50)

# 获取图片(用于绘制框)
img = cv2.imread(image_path)

# 遍历所有检测目标
for idx, result in enumerate(results):
    boxes = result.boxes  # 所有检测框
    
    for box in boxes:
        # ========== 提取目标区域(坐标) ==========
        # xyxy: 左上角x, 左上角y, 右下角x, 右下角y
        x1, y1, x2, y2 = box.xyxy[0].cpu().numpy()
        # 宽高
        w = x2 - x1
        h = y2 - y1
        
        # ========== 提取标注信息 ==========
        cls_id = int(box.cls[0])          # 类别ID
        cls_name = model.names[cls_id]    # 类别名称
        conf = float(box.conf[0])         # 置信度
        
        # ========== 打印信息 ==========
        print(f"目标 {idx+1}:")
        print(f"  标注类别:{cls_name}")
        print(f"  置信度:{conf:.2f}")
        print(f"  目标区域坐标:")
        print(f"    左上角 ({x1:.1f}, {y1:.1f})")
        print(f"    右下角 ({x2:.1f}, {y2:.1f})")
        print(f"    宽×高:{w:.1f} × {h:.1f}")
        print("-"*30)
        
        # ========== 在图片上绘制检测框 ==========
        cv2.rectangle(img, (int(x1), int(y1)), (int(x2), int(y2)), (0, 255, 0), 2)
        cv2.putText(img, f"{cls_name} {conf:.2f}", 
                    (int(x1), int(y1)-10), 
                    cv2.FONT_HERSHEY_SIMPLEX, 0.5, (0, 255, 0), 2)

# ===================== 5. 保存/显示结果 =====================
if save_result:
    cv2.imwrite("yolo_result.jpg", img)
    print("✅ 标注图片已保存为:yolo_result.jpg")

# 显示图片(可选)
cv2.imshow("YOLO Result", img)
#cv2.waitKey(0)
#cv2.destroyAllWindows()

推理结果:

{

"predictions": [

{

"x": 383.5,

"y": 537.5,

"width": 495,

"height": 961,

"confidence": 0.599,

"class": "brown_blight",

"class_id": 3,

"detection_id": "faf5e177-9912-44c4-b882-272306cc1fef"

}

]

}

相关推荐
stsdddd1 小时前
YOLO系列目标检测数据集大全【第六期】
yolo·目标检测·目标跟踪
apcipot_rain1 小时前
计科八股20260602——YOLO、弱监督学习、nnu-net、SAM
人工智能·神经网络·yolo·计算机视觉
机 _ 长14 小时前
YOLO26-Mamba:融合MambaVision思想的目标检测创新实践
yolo·mamba·yolo26
懷淰メ14 小时前
【AI加持】基于PyQt+YOLO+DeepSeek的疟原虫检测系统(详细介绍)
人工智能·yolo·计算机视觉·pyqt·医疗·ai分析·疟原虫
动物园猫1 天前
铁路障碍物目标检测数据集分享(适用于YOLO系列深度学习分类检测任务)
深度学习·yolo·目标检测
stsdddd1 天前
YOLO系列目标检测数据集大全【第四期】
yolo·目标检测·目标跟踪
MR_Colorful1 天前
阿里云ECS部署YOLO教程
yolo·阿里云·云计算
福大大架构师每日一题2 天前
YOLO v8.4.56 修复 QNN 导出兼容性:builtin provider wheels 也能稳定导出,Linux x86-64 更友好
linux·运维·yolo
YOLO数据集集合2 天前
低空林业巡检数据集|生态监测树木识别|深度学习树种分类数据集
人工智能·深度学习·yolo·目标检测·分类·无人机