基于YOLOv8深度学习的橙子病害智能诊断与防治系统【python源码+Pyqt5界面+数据集+训练代码】深度学习实战、目标分类(2)

简介: 基于YOLOv8深度学习的橙子病害智能诊断与防治系统【python源码+Pyqt5界面+数据集+训练代码】深度学习实战、目标分类

基于YOLOv8深度学习的橙子病害智能诊断与防治系统【python源码+Pyqt5界面+数据集+训练代码】深度学习实战、目标分类(1)https://developer.aliyun.com/article/1536810

二、模型的训练、评估与推理

1.YOLOv8的基本原理

YOLOv8是一种前沿的深度学习技术,它基于先前YOLO版本在目标检测任务上的成功,进一步提升了性能和灵活性,在精度和速度方面都具有尖端性能。在之前YOLO 版本的基础上,YOLOv8 引入了新的功能和优化,使其成为广泛应用中各种物体检测任务的理想选择。主要的创新点包括一个新的骨干网络、一个新的 Ancher-Free 检测头和一个新的损失函数,可以在从 CPU 到 GPU 的各种硬件平台上运行

YOLO各版本性能对比:

其主要网络结构如下:

2. 数据集准备与训练

本文使用的橙子病害数据集共包含1790张图片,分为4个病害类别,分别是['黑斑病','溃疡病','健康','绿化病']。部分数据集及类别信息如下:

图片数据集的存放格式如下,在项目目录中新建datasets目录,同时将分类的图片分为训练集与验证集放入Data目录下。

3.模型训练

数据准备完成后,通过调用train.py文件进行模型训练,epochs参数用于调整训练的轮数,batch参数用于调整训练的批次大小【根据内存大小调整,最小为1】,代码如下:

#coding:utf-8
from ultralytics import YOLO
import matplotlib
matplotlib.use('TkAgg')
if __name__ == '__main__':
    # 训练模型配置文件路径
    yolo_yaml_path = 'ultralytics/cfg/models/v8/yolov8-cls.yaml'
    # 官方预训练模型路径
    pre_model_path = "yolov8n-cls.pt"
    # 加载预训练模型
    model = YOLO(yolo_yaml_path).load(pre_model_path)
    # 模型训练
    model.train(data='datasets/Data', epochs=150, batch=4)

4. 训练结果评估

在深度学习中,我们通常用损失函数下降的曲线来观察模型训练的情况。YOLOv8在训练结束后,可以在runs/目录下找到训练过程及结果文件,如下所示:

本文训练结果如下:

通过accuracy_top1图片准确率曲线图我们可以发现,该模型在验证集的准确率约为0.99,结果还是很不错的。

5. 利用模型进行推理

模型训练完成后,我们可以得到一个最佳的训练结果模型best.pt文件,在runs/trian/weights目录下。我们可以使用该文件进行后续的推理检测。

图片检测代码如下:

#coding:utf-8
from ultralytics import YOLO
import cv2
# 所需加载的模型目录
path = 'models/best.pt'
# 需要检测的图片地址
img_path = "TestFiles/cancro_teste (14).jpg"
# 加载模型
model = YOLO(path, task='classify')
# 检测图片
results = model(img_path)
print(results)
res = results[0].plot()
# res = cv2.resize(res,dsize=None,fx=0.3,fy=0.3,interpolation=cv2.INTER_LINEAR)
cv2.imshow("YOLOv8 Detection", res)
cv2.waitKey(0)

执行上述代码后,会将执行的结果直接标注在图片上,结果如下:

以上便是关于此款橙子病害智能诊断与防治系统的原理与代码介绍。基于此模型,博主用pythonPyqt5开发了一个带界面的软件系统,即文中第二部分的演示内容,能够很好的支持图片、批量图片、视频及摄像头进行检测

相关文章
|
5天前
|
机器学习/深度学习 人工智能 监控
【机器学习】Python与深度学习的完美结合——深度学习在医学影像诊断中的惊人表现
【机器学习】Python与深度学习的完美结合——深度学习在医学影像诊断中的惊人表现
20 3
|
9天前
|
机器学习/深度学习 存储 计算机视觉
基于YOLOv8深度学习的PCB板缺陷检测系统【python源码+Pyqt5界面+数据集+训练代码】目标检测
基于YOLOv8深度学习的PCB板缺陷检测系统【python源码+Pyqt5界面+数据集+训练代码】目标检测
|
9天前
|
机器学习/深度学习 存储 算法
基于YOLOv8与ByteTrack的车辆行人多目标检测与追踪系统【python源码+Pyqt5界面+数据集+训练代码】深度学习实战、目标追踪、运动物体追踪
基于YOLOv8与ByteTrack的车辆行人多目标检测与追踪系统【python源码+Pyqt5界面+数据集+训练代码】深度学习实战、目标追踪、运动物体追踪
|
4天前
|
机器学习/深度学习 搜索推荐 Python
深度学习在医学影像诊断中的应用正在改变医学诊断的方式
深度学习在医学影像诊断中的应用正在改变医学诊断的方式
|
1天前
|
机器学习/深度学习 算法 数据安全/隐私保护
深度学习在医疗影像分析中的应用与挑战
【6月更文挑战第21天】随着人工智能技术的飞速发展,深度学习已成为推动医学影像分析进步的关键力量。本文将探讨深度学习技术如何革新医疗影像的诊断流程,包括自动化病变检测、图像分割以及疾病预测等方面。同时,我们将讨论实施这些技术时遇到的伦理和法律问题。
|
23小时前
|
机器学习/深度学习 自然语言处理 数据处理
深度学习在自然语言处理中的应用与挑战
【6月更文挑战第21天】随着人工智能技术的飞速发展,深度学习已成为自然语言处理(NLP)领域的核心技术之一。本文将探讨深度学习技术如何革新NLP领域,包括语言模型的进步、机器翻译的突破以及情感分析的精细化。同时,我们将指出当前面临的主要挑战,如数据偏差问题、模型解释性不足以及资源消耗问题,并提出可能的解决方向。
|
2天前
|
机器学习/深度学习 自动驾驶 安全
基于深度学习的图像识别技术在自动驾驶汽车中的应用
【5月更文挑战第52天】 随着人工智能技术的飞速发展,特别是深度学习在图像处理和模式识别领域取得的突破性进展,自动驾驶汽车技术迎来了前所未有的发展机遇。本文旨在探讨基于深度学习的图像识别技术如何赋能自动驾驶系统,提升其在复杂交通环境中的感知能力、决策效率和安全性。通过对当前主流的深度学习模型进行分析,并结合最新的研究成果,文章详细阐述了卷积神经网络(CNN)在车辆检测、行人识别和路标理解等方面的应用实例,同时指出了现有技术的局限性和未来可能的发展趋势。
|
1天前
|
机器学习/深度学习 人工智能 算法
探索深度学习在图像识别中的应用
【6月更文挑战第21天】本文深入探讨了深度学习技术,特别是卷积神经网络(CNN)在图像识别领域的应用。文章首先介绍了深度学习的基础知识,然后详细解析了卷积神经网络的结构和工作原理,最后通过案例分析展示了深度学习在图像识别中的实际效果和潜力。
|
3天前
|
机器学习/深度学习 传感器 自动驾驶
基于深度学习的图像识别技术在自动驾驶系统中的应用
【5月更文挑战第50天】 随着人工智能技术的迅猛发展,深度学习已成为推动多个领域进步的关键力量。特别是在图像识别领域,深度学习模型如卷积神经网络(CNN)已表现出超越传统算法的性能。本文将探讨深度学习技术在自动驾驶系统中图像识别的实际应用,分析其在提高道路安全性和车辆自主性方面的潜力,并讨论面临的主要挑战及未来的发展方向。
|
4天前
|
机器学习/深度学习 人工智能 监控
深度学习在图像识别中的应用
随着人工智能技术的飞速发展,深度学习已成为图像识别领域的核心技术之一。本文将探讨深度学习如何革新图像识别技术,包括其基本原理、关键技术以及在不同场景下的应用案例。我们将深入分析卷积神经网络(CNN)和循环神经网络(RNN)等深度学习模型在图像处理中的作用,并讨论当前面临的挑战与未来的发展方向。