首页> 中国专利> 一种基于YOLOv3-CIoU的松材线虫病树检测方法及系统

一种基于YOLOv3-CIoU的松材线虫病树检测方法及系统

摘要

本申请提供一种基于YOLOv3‑CIoU的松材线虫病树检测方法及系统,该方法包括:构建基于YOLOv3‑CIoU算法的目标检测模型,利用训练集对目标检测模型进行训练,得到训练好的目标检测模型;利用测试集对训练好的目标检测模型进行检测,若训练好的目标检测模型的多个预设性能指标中任一者未达标,则继续训练训练好的目标检测模型,直至目标检测模型的多个预设性能指标均达标。本申请训练目标检测模型时,采用兼容重叠率损失函数(CIoU)改进YOLOv3检测算法的损失函数,从而,训练好的目标检测模型能实现短时间、高精度、低漏检率的变色木检测,适用于准确率和实时性要求较高的场合。

著录项

说明书

技术领域

本申请涉及松材线虫病检测技术领域,具体涉及一种基于YOLOv3-CIoU 的松材线虫病树检测方法及系统。

背景技术

变色木检测是林业病虫害监测工作中的重要研究内容。利用树木的表型特 征可判断树木染病情况。然而,传统林业病虫害监测通常受到监测方法及检测 算法性能的制约,无法进行高精度变色木监测。目前,基于深度学习的目标检 测方法因其检测效果出众而受到广泛关注,可以有效提升变色木检测性能。但 目前研究大多集中于Faster R-CNN、SSD等较早期算法框架,无法满足高精 度、低漏检率的检测松材线虫病树等变色木的需要。

传统的松材线虫病树监测研究中,主要监测方法有人工踏查、高空遥感监 测以及基于机器学习的变色木检测方法。上述方法不仅消耗大量人力物力、难 以实施,而且需要繁复的后期数据处理工作,导致监测效率不高。基于深度学 习的变色木无人机检测方法,很大程度上解决了传统方法的难题,但是,其所 使用的检测算法大都基于早期目标检测框架,导致检测精度不高,且存在大概 率漏检目标的缺陷,因此,在林业病虫害监测领域没有得到推广普及。

因此,需要提供一种短时间、高精度、低漏检率的松材线虫病树检测方法 及系统。

发明内容

本申请的目的是提供一种基于YOLOv3-CIoU的松材线虫病树检测方法及 系统。

本申请第一方面提供一种基于YOLOv3-CIoU的松材线虫病树检测方法, 包括:

基于Pascal VOC数据集制作带有松材线虫病树目标标注的训练集和测试 集;

构建基于YOLOv3-CIoU算法的目标检测模型,利用所述训练集对目标检 测模型进行训练,直至训练集输出的损失函数值小于等于损失阈值或达到设置 的最大迭代次数时停止训练,得到训练好的目标检测模型;

利用所述测试集对训练好的目标检测模型进行检测,判断训练好的目标检 测模型的多个预设性能指标是否达标;

若训练好的目标检测模型的多个预设性能指标均达标,则将训练好的目标 检测模型作为最终的目标检测模型;

若训练好的目标检测模型的多个预设性能指标中任一者未达标,则继续训 练所述训练好的目标检测模型,直至所述目标检测模型的多个预设性能指标均 达标,将此时的目标检测模型作为最终的目标检测模型;

将采集的包含松线虫病树的图片输入最终的目标检测模型,以进行松线虫 病树的检测。

在本申请的一些实施方式中,所述利用所述训练集对目标检测模型进行训 练,直至训练集输出的损失函数值小于等于损失阈值或达到设置的最大迭代次 数时停止训练,得到训练好的目标检测模型,包括:

调取目标检测模型的初始参数,将训练集输入目标检测模型进行训练,不 断进行训练调整目标检测模型的卷积层的权重值以及偏置值,并输出训练集的 损失函数值Loss,其中,所述损失函数值是目标框位置回归损失函数、目标 置信度交叉熵损失和类别交叉熵损失之和;

直至训练集输出的损失函数值小于等于损失阈值或达到设置的最大迭代次 数时停止训练,将停止训练时得到的模型作为训练好的目标检测模型。

在本申请的一些实施方式中,采用检测框与真实目标框的交并比,确定所 述目标框位置回归损失函数,其中,所述目标框位置回归损失函数的公式表示 为:

式中,IoU是检测框与真实目标框的交并比;

ρ

c表示最小闭合凸面的对角线距离;

α是用来平衡比例的参数;

v是衡量检测框和真实目标框之间的比例是否一致的参数。

在本申请的一些实施方式中,所述利用所述训练集对目标检测模型进行训 练时,使用Adam优化器,设置初始学习率为0.001,以16张图像为一个批 次,所述目标检测模型的最大迭代次数为10000。

在本申请的一些实施方式中,所述基于Pascal VOC数据集制作带有松材 线虫病树目标标注的训练集和测试集,包括:

所述Pascal VOC数据集共包含M张图像,对M张图像中的松材线虫病 树目标进行标注后,将标注后的M张图像随机分成训练集和测试集两个部 分。

在本申请的一些实施方式中,所述训练集和所述测试集的数据量比为9: 1。

在本申请的一些实施方式中,所述利用所述测试集对训练好的目标检测模 型进行检测,判断训练好的目标检测模型的多个预设性能指标是否均达标,包 括:

将测试集输入训练好的目标检测模型,得到所述测试集的松线虫病的检测 结果;

根据所述检测结果判断训练好的目标检测模型的精确率是否大于预设精 度、召回率是否大于预设召回率、准确率

是否大于预设准确率和单张图像处理速度是否大于预设速度。

在本申请的一些实施方式中,所述预设精度为95%,所述预设召回率为 92%,所述预设准确率为92%,所述预设处理速度为0.4秒/图。

在本申请的一些实施方式中,采用无人机搭载RGB高分镜头采集松材线 虫病树的图片。

本申请第二方面提供一种基于YOLOv3-CIoU的松材线虫病树检测系统, 包括:

图像采集单元,包括搭载有RGB高分镜头的无人机,所述RGB高分镜 头用于采集松材线虫病树的图片;

图像标注单元,用于基于M张包含松材线虫病树的图片制作带有松材线 虫病目标标注的训练集和测试集;其中,所述目标标注包括采用目标框标识图 片中的松材线虫病部分和记录所述松材线虫病的类别;

目标检测模型,用于输入包含松线虫病树的图片,以进行松线虫病树的检 测,且所述目标检测模型是基于YOLOv3-CIoU算法构建的模型,采用上述方 法中的目标检测模型的训练方法对所述目标检测模型进行训练。

相较于现有技术,本申请提供的一种基于YOLOv3-CIoU的松材线虫病树 检测方法以及系统,目标检测模型进行训练时,采用兼容重叠率损失函数 (CIoU)优化YOLOv3检测算法,直接最小化预测框与真实目标框之间的归 一化距离,解决了IoU损失值为零的情况,兼顾检测框的重叠面积以及检测 框中心点的距离,同时增加检测框和真实目标框的长宽比一致性的衡量参数, 使目标检测模型更倾向于向重叠区域密集的方向优化,目标检测模型在训练速 度上得到提升,模型在兼顾精准率和召回率的同时,准确率能达到了 98.88%,单张图像平均处理时间为0.32秒,从而,目标检测模型能实现短时 间、高精度、低漏检率的变色木检测,适用于准确率和实时性要求较高的场 合。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领 域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并 不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的 部件。在附图中:

图1示出了本申请的一些实施方式所提供的一种基于YOLOv3-CIoU的松 材线虫病树检测方法的一种流程图;

图2示出了本申请的一些实施方式所提供的一种基于YOLOv3-CIoU的松 材线虫病树检测系统对变色木检测流程图;

图3示出了本申请的一些实施方式所提供的一种基于YOLOv3-CIoU的松 材线虫病树检测方法的平均损失曲线;

图4a示出了本申请的一些实施方式所提供的一种基于YOLOv3-CIoU的 松材线虫病树检测方法的P-R曲线图;

图4b示出了YOLOv3检测模型测试过程中的P-R曲线图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施方式。虽然附图中显示 了本公开的示例性实施方式,然而应当理解,可以以各种形式实现本公开而不 应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻 地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当 为本申请所属领域技术人员所理解的通常意义。

另外,术语“第一”和“第二”等是用于区别不同对象,而不是用于描述特定 顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的 包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限 定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选 地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。

本申请实施例提供一种基于YOLOv3-CIoU的松材线虫病树检测方法,下 面结合实施例及附图进行示例性说明。

如图1至4所示,本申请的一种基于YOLOv3-CIoU的松材线虫病树检测 方法,可以包括:

步骤101、基于Pascal VOC数据集制作带有松材线虫病目标标注的训练 集和测试集。

该步骤中,采用无人机平台搭载RGB高分镜头采集多张松材线虫病树图 片,其中,采集的多张松材线虫病树图片构建成Pascal VOC数据集。该 Pascal VOC数据集共包含M张图像,对M张图像中的松材线虫病树目标进行 标注后,将标注后的M张图像随机分成训练集和测试集两个部分。例如, Pascal VOC数据集包括836张病树图片,利用LabelImg软件标注松材线虫病 树图像,标定的矩形框内包含松材线虫病树及其类别,如图2所示。标定完成后,按训练集:测试集为9:1的比例进行随机分配,最终将752张图片分为训 练集,84张图片分为测试集。

步骤102、构建基于YOLOv3-CIoU算法的目标检测模型,利用训练集对 目标检测模型进行训练,直至训练集输出的损失函数值小于等于损失阈值或达 到设置的最大迭代次数时停止训练,得到训练好的目标检测模型。

一般而言,根据对YOLOv3的定义,其损失函数通常由三部分组成,分 别是Bounding Box损失、置信度损失以及类别损失,定义为:

式中L

上式表示目标框左上角位置经过交叉熵运算所得到的损失,

上式表示目标框宽高经均方误差运算得到的损失。

可见,YOLOv3检测算法采用均方误差作为目标框位置回归损失函数, 在进行目标边界框回归时对目标尺度过于敏感。

重叠率不仅能反映预测检测框与真实检测框的检测效果,还具备尺度不变 性,所以使用重叠率替换均方误差损失函数和交叉熵损失函数。由于使用重叠 率作为损失函数在检测框与真实目标框没有重合部分时,不存在梯度,无法进 行梯度下降优化;而在重叠率相同时,重叠率损失并不能反应两个框如何重 叠,亦无法说明检测框的定位效果相同。

因此,该步骤中,采用兼容重叠率损失函数(Compatible-IoU,CIoU)优化 YOLOv3检测算法,直接最小化预测框与真实目标框之间的归一化距离,解 决了IoU损失值为零的情况,兼顾检测框的重叠面积以及检测框中心点的距 离,同时增加检测框和真实目标框的长宽比一致性的衡量参数,使模型更倾向 于向重叠区域密集的方向优化。

具体地,在目标检测模型进行训练的过程中,采用检测框与真实目标框的 交并比,确定目标框位置回归损失函数,其中,目标框位置回归损失函数的公 式表示为:

式中,

ρ

v的公式表示为:

α的公式表示为:

进一步地,本申请在v的梯度计算过程中为避免w和h处于[0,1]范围内 时,w

步骤103、利用测试集对训练好的目标检测模型进行检测,判断训练好的 目标检测模型的多个预设性能指标是否达标。

该步骤中,设置四种指标来评价目标检测模型的性能表现情况,分别为精 确率(Precision)、召回率(Recall)、准确率(Accuracy)以及单张图像处理速度。

可选地,预设精度可以为95%,预设召回率可以为92%,预设准确率可 以为92%,预设处理速度可以为0.4秒/图。

根据检测结果判断训练好的目标检测模型的精确率P是否大于预设精 度、召回率R是否大于预设召回率、准确率A是否大于预设准确率和单张图 像处理速度是否大于预设速度,其中,

精确率P的公式表示为:

式中,TP(True Positive)是被判定为正样本,事实上也是正样本;

TP+FP是训练好的目标检测模型在测试集上标定的检测框总数;

召回率R的公式表示为:

式中,FN(False Negative)是被判定为负样本,但事实上是正样本;

TP+FN为测试集中标注框的总数;

准确率A的公式表示为:

式中,FP(False Positive)是被判定为正样本,但事实上是负样本;

TN(True Negative)是被判定为负样本,事实上也是负样本。

步骤104、若训练好的目标检测模型的多个预设性能指标均达标,则将训 练好的目标检测模型作为最终的目标检测模型。

步骤105、若训练好的目标检测模型的多个预设性能指标中任一者未达 标,则继续训练训练好的目标检测模型,直至目标检测模型的多个预设性能指 标均达标,将此时的目标检测模型作为最终的目标检测模型。

步骤106、将采集的包含松线虫病树的图片输入最终的目标检测模型,以 进行松线虫病树的检测。

相较于现有技术,本申请提供的一种基于YOLOv3-CIoU的松材线虫病树 检测方法以及系统,目标检测模型进行训练时,采用兼容重叠率损失函数 (CIoU)优化YOLOv3检测算法,直接最小化预测框与真实目标框之间的归 一化距离,解决了IoU损失值为零的情况,兼顾检测框的重叠面积以及检测 框中心点的距离,同时增加检测框和真实目标框的长宽比一致性的衡量参数, 使目标检测模型更倾向于向重叠区域密集的方向优化,目标检测模型在训练速 度上得到提升,模型在兼顾精准率和召回率的同时,准确率能达到了 98.88%,单张图像平均处理时间为0.32秒,从而,目标检测模型能实现短时 间、高精度、低漏检率的变色木检测,适用于准确率和实时性要求较高的场 合。

进一步参考图2,作为对上述方法的实现,本申请实施例提供了一种基于 YOLOv3-CIoU的松材线虫病树检测系统的一个实施例,该基于YOLOv3- CIoU的松材线虫病树检测系统的实施例与图1所示的业务数据处理方法的实 施例相对应,由此,上文针对图1至图1中基于YOLOv3-CIoU的松材线虫病 树检测方法描述的操作和特征同样适用于业务数据处理装置及其中包含的模 块,在此不再赘述。

如图2所示,该基于YOLOv3-CIoU的松材线虫病树检测系统可以包括:

图像采集单元41,包括搭载有RGB高分镜头的无人机,所述RGB高分 镜头用于采集松材线虫病树的图片;

图像标注单元42,用于基于M张包含松材线虫病树的图片制作带有松材 线虫病目标标注的训练集和测试集;其中,所述目标标注包括采用目标框标识 图片中的松材线虫病部分和记录所述松材线虫病的类别;

目标检测模型43,用于输入包含松线虫病树的图片,以进行松线虫病树 的检测,且所述目标检测模型是基于YOLOv3-CIoU算法构建的模型,采用上 述方法中的目标检测模型的训练方法对所述目标检测模型进行训练。

为了验证本申请所提出基于YOLOv3-CIoU的松材线虫病树检测方法的有 效性,以及评估目标检测模型的性能,利用开源深度学习框架TensorFlow来 验证所提YOLOv3-CIoU松材线虫病树检测方法的性能,并与YOLOv3、 Faster R-CNN以及SSD方法进行对比试验。

模型训练阶段采用数据扩充手段增加训练样本数量,使用Adam优化器, 设置初始学习率为0.001,以16张图像为一个批次,每种模型共迭代10000 次。模型训练完成后,YOLOv3、YOLOv3-CIoU的平均损失下降到0.1以 下,在移动工作站对检测模型进行性能测试。

测试完成后,检测结果及预设性能指标如表1所示。从整体检测准确率来 看,YOLOv3-CIoU检测模型性能较好,SSD300次之,而Faster R-CNN由于 训练迭代次数不足,误报检测目标20个,误报数过多,实际场景应用效果不 理想。从平均单张图像处理时间来看,在移动终端上YOLOv3的处理速度与 SSD300基本持平,均优于Faster RCNN。因此,基于YOLOv3的松材线虫目 标检测模型较符合快速、准确检测的防疫需求。

本发明为验证检测模型性能设置四种指标来评价四种松材线虫目标检测模 型的性能表现情况,分别为精确率(Precision)、召回率(Recall)、准确率 (Accuracy)以及单张图像处理速度。

表1

YOLOv3-CIoU松材线虫病树检测方法在训练期间损失值置空现象明显减 少,该模型在平均损失下降速度上较YOLOv3进一步加快,收敛更加明显, 说明YOLOv3-CIoU松材线虫目标检测模型在训练速度上得到提升。

在目标检测模型的预设性能指标中,Recall和Precision分别表示召回率 和精确率,而精确率和召回率是一对矛盾的度量,一般来说,精确率高时,召 回率往往偏低;而召回率高时,精确率往往偏低。YOLOv3-CIoU在精确率和 召回率方面都明显比未改进的YOLOv3性能优异,在兼顾召回率的同时,准 确率也达到了98.88%,较YOLOv3提升5.33%,单张图像平均处理时间为 0.32秒,也比YOLOv3减少了13%。

图3是YOLOv3和YOLOv3-CIoU检测方法训练过程中的损失值与迭代 次数之间的关系曲线。可以看出,YOLOv3-CIoU松材线虫病树检测方法在 训练期间损失值置空现象明显减少,该模型在平均损失下降速度上较 YOLOv3算法进一步加快,收敛更加明显,说明经过改进,YOLOv3-CIoU松 材线虫目标检测模型在训练速度上得到提升。

图4是YOLOv3和YOLOv3-CIoU检测模型测试过程中的P-R曲线,可 以看出,YOLOv3-CIoU在精确率和召回率方面都明显比未改进的YOLOv3性 能优异。

以上实验结果表明,本申请在高精度检测变色木的同时进一步降低了平均 单张图像处理时间。针对早期目标检测框架对松材线虫病树之类的变色木检测 效率不高的问题,本发明利用YOLOv3检测框架高效性及重叠率损失函数的 普适性实现松材线虫病树之类的变色木检测。本发明实现了短时间、高精度、 低漏检率的变色木检测,适用于准确率和实时性要求较高的场合。

需要说明的是,附图中的流程图和框图显示了根据本申请的多个实施例的 系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点 上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分, 所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的 可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也 可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基 本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。 也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或 者可以用专用硬件与计算机指令的组合来实现。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述 的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过 程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可 以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所 述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方 式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特 征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合 或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可 以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为 单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者 也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部 单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中, 也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元 中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用 时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技 术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以 软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若 干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备 等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包 括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存 储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代 码的介质。

最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其 限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术 人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者 对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相 应技术方案的本质脱离本申请各实施例技术方案的范围,其均应涵盖在本申请 的权利要求和说明书的范围当中。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号