文章目录
- 水稻叶片病害检测数据集
- 数据集概览
- 数据特点
- AI图像识别入门教学:YOLO训练与推理
- 1. 环境安装
- 2. 训练代码(train.py)
- 3. 推理代码(infer.py)
- 关键词
水稻叶片病害检测数据集
数据集概览
本数据集专为水稻种植领域的智能病害检测场景构建,面向农业自动化植保、作物健康监测等核心需求,是深度学习目标检测模型训练的优质基础数据,适配轻量化与高精度模型训练需求,数据规范统一,可直接用于模型开发与迭代。
数据集采用标准YOLO格式存储,文件结构清晰,标注精准无冗余,无需二次格式转换即可对接主流YOLO系列训练框架,大幅降低数据预处理成本,适合深度学习数据分析师快速开展模型训练工作。
| 数据信息 | 详情 |
|---|---|
| 数据类别 | 10类:正常叶片、细菌性叶枯病、细菌性条斑病、细菌性穗枯病、稻瘟病、褐斑病、心腐病、霜霉病、胡麻叶斑病、东格鲁病 |
| 数据数量 | 2600 |
| 应用价值 | 实现水稻叶片病害的快速识别与分类,支撑农业植保自动化决策,助力精准施药与产量提升 |
数据特点
- 数据覆盖水稻生长周期内的主要病害类型,类别分布均衡,可有效避免模型训练时的类别偏置问题。
- 图像采集场景贴近真实农田环境,包含不同光照、角度与拍摄距离下的样本,提升模型的泛化能力。
- 标注采用边界框格式,精准定位病害区域,可直接用于目标检测模型的训练与评估。
AI图像识别入门教学:YOLO训练与推理
以下以YOLOv11为例,提供完整的训练与推理代码,附带中文注释,可直接运行。
1. 环境安装
pipinstallultralytics2. 训练代码(train.py)
fromultralyticsimportYOLO# 加载YOLOv11模型(可选择不同规模,如yolov11n/s/m/l/x)model=YOLO("yolov11n.pt")# 开始训练model.train(data="data.yaml",# 数据集配置文件路径epochs=50,# 训练轮数imgsz=640,# 输入图像尺寸batch=8,# 批次大小device="0",# 使用GPU训练("0"表示第一块GPU,"cpu"表示使用CPU)workers=4,# 数据加载线程数optimizer="AdamW",# 优化器选择lr0=0.001,# 初始学习率patience=10,# 早停轮数,防止过拟合name="rice_disease_detector"# 训练结果保存名称)3. 推理代码(infer.py)
fromultralyticsimportYOLOimportcv2# 加载训练好的模型权重model=YOLO("runs/detect/rice_disease_detector/weights/best.pt")# 单张图片推理defdetect_image(image_path):# 读取图像img=cv2.imread(image_path)# 模型推理results=model(img,conf=0.5)# conf为置信度阈值,低于该值的结果将被过滤# 可视化结果forresultinresults:img=result.plot()# 在图像上绘制检测框和类别# 保存结果cv2.imwrite("result.jpg",img)cv2.imshow("Detection Result",img)cv2.waitKey(0)cv2.destroyAllWindows()# 视频流/摄像头推理defdetect_video(source=0):cap=cv2.VideoCapture(source)# source=0表示默认摄像头,也可传入视频路径whilecap.isOpened():ret,frame=cap.read()ifnotret:break# 模型推理results=model(frame,conf=0.5)# 可视化结果annotated_frame=results[0].plot()# 显示结果cv2.imshow("Video Detection",annotated_frame)# 按'q'退出ifcv2.waitKey(1)&0xFF==ord('q'):breakcap.release()cv2.destroyAllWindows()if__name__=="__main__":# 示例:对单张图片进行检测detect_image("test_rice_leaf.jpg")# 示例:对摄像头视频流进行检测# detect_video()关键词
#水稻病害检测 #YOLO格式数据集 #农业计算机视觉 #目标检测 #作物健康监测