CN110060233B - 一种玉米果穗破损检测方法 - Google Patents
一种玉米果穗破损检测方法 Download PDFInfo
- Publication number
- CN110060233B CN110060233B CN201910212339.0A CN201910212339A CN110060233B CN 110060233 B CN110060233 B CN 110060233B CN 201910212339 A CN201910212339 A CN 201910212339A CN 110060233 B CN110060233 B CN 110060233B
- Authority
- CN
- China
- Prior art keywords
- picture
- target
- box
- prediction
- training
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30168—Image quality inspection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30181—Earth observation
- G06T2207/30188—Vegetation; Agriculture
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Quality & Reliability (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
一种玉米果穗破损检测方法,包括如下步骤:获取训练集图片及其标签,并用所述标签对所述训练集图片和真实图片进行标注,所述训练集图片包括合成图片和真实图片,所述标签包括目标参数和目标所属类别的数字;修改网络结构,重新聚类计算先验框,使用标注后的所述训练集图片进行检测模型的训练,并用标注后的所述真实图片精调所述检测模型的参数;以及目标检测,用训练好的检测模型对玉米果穗图片进行破损检测,以通过算法预测得到图片中破损的玉米果穗位置及数量。本发明是一种基于深度学习的玉米果穗破损检测方法,用于解决机收复杂场景下实时检测玉米果穗破损的问题。
Description
技术领域
本发明涉及一种玉米果穗的检测方法,特别是一种基于深度学习的玉米果 穗破损检测方法。
背景技术
随着我国农业机械化水平的提高,玉米机械化收获的需求越来越大。目前 玉米以果穗收获为主,由于机收时玉米成熟情况不同,绿叶比例和水分含量高 的秸秆易引起多种机械故障,同时也会导致部分玉米果穗破损。玉米果穗破损 将带来籽粒破损率高、随抛撒物落粒多等问题,因此,对于机收玉米果穗破损 情况的实时检测就变得十分重要。玉米采摘的实时情况经过图像检测技术处理, 并通过屏幕显示,可及时提醒前端操作手按相应策略做出调整,进而降低整体 收割破损率。
破损玉米果穗的检测需要使用目标检测算法。由于农机工作场景中存在光 照变化剧烈,杂物较多,物体间遮挡,目标姿态角度多变等问题,传统的目标 检测算法所使用的人工设计的特征,如Haar特征、Hog特征等,很难胜任如 此复杂场景下的检测任务。近年来,深度学习技术得到较大发展,随着大规模 训练数据集的构建以及硬件计算能力的不断增强,深度网络结构在不同的视觉 任务中取得了巨大的成功。在目标检测方面,出现了很多优秀的基于深度学习 的目标检测算法,从RCNN、SPP-Net、Faster-RCNN到YOLOv2,目标检测的准确率和速度都达到了新的高度。其中,YOLOv2目标检测算法在精度和速 度上都表现得尤为突出。
与本发明相关的技术中,S.Ioffe and C.Szegedy.Batch normalization:Acceleratingdeep network training by reducing internal covariate shift.arXivpreprint arXiv:1502.03167,2015.2,5一文,提出批归一化(Batch normalization,BN),它是目前普遍应用的一种网络正则化方法。该算法是指在 网络的每一层输入之前插入一个归一化层,该层通过求取输入数据的均值和方 差,对输入网络的小批量数据进行归一化,并引入可学习参数γ、β还原输入 数据的分布,经过处理的数据再被送入下一层网络。通过引入批归一化层,可 加快网络训练时的收敛速度,降低网络过拟合,提高网络的泛化能力。
而S.Ren,K.He,R.Girshick,and J.Sun.Faster r-cnn:Towards real-timeobject detection with region proposal networks.arXiv preprint arXiv:1506.01497, 2015.2,3,4,5,6一文,提出使用先验框(Anchor Boxes)来预测预测框(bounding box)的方法。先验框是指在进行目标检测时,预先定义的一些不同尺度和比 例的矩形框。但该文中先验框的选取是通过人工设计的。
而Redmon J,Farhadi A.YOLO9000:better,faster,stronger[J].arXivpreprint, 2017.一文中的YOLOv2目标检测算法是在训练集图片目标物体的真实边界框(ground truth)中使用k均值(参见D.Napoleon,P.Ganga lakshmi“An Efficient K-MeansClustering Algorithm for Reducing Time Complexity using Uniform DistributionData Point”IEEE 2010,pp.42-45.)聚类算法,统计k个不同先验框 分别与ground truth的重叠面积(IOU),以此面积函数作为距离,选取合适 数量和大小的先验框。在网络预测时,不是直接预测目标的位置和其边界框大 小,而是预测边界框相对于先验框的偏移值。该算法大大提高了网络的召回率, 使网络的检测能力更强。
Neubeck A,Van Gool L.Efficient non-maximum suppression[C]//PatternRecognition,2006.ICPR 2006.18th International Conference on.IEEE,2006,3: 850-855.一文,提出非极大值抑制算法(Non-maximum suppression)。该算法 在许多计算机视觉任务中都有应用,比如边缘检测、人脸识别、目标检测等。 在yolov2目标检测算法得到很多预测框后,对这些框的目标置信度得分进行 排序,选中最高分及其对应框,之后遍历剩余的框,若和当前最高分框的重叠 面积(IOU)大于一定阈值,就将框删除,小于阈值的则保留。其在目标检测 中的应用主要是作为一种后处理算法,用于去除冗余的重叠预测框。
发明内容
本发明所要解决的技术问题是提供一种基于深度学习的玉米果穗破损检 测方法,用于解决机收复杂场景下实时检测玉米果穗破损的问题。
为了实现上述目的,本发明提供了一种玉米果穗破损检测方法,其中,包 括如下步骤:
S100、获取训练集图片及其标签,并用所述标签对所述训练集图片和真实 图片进行标注,所述训练集图片包括合成图片和真实图片,所述标签包括目标 参数和目标所属类别的数字;
S200、修改网络结构,重新聚类计算先验框,使用标注后的所述训练集图 片进行检测模型的训练,并用标注后的所述真实图片精调所述检测模型的参数; 以及
S300、目标检测,用训练好的检测模型对玉米果穗图片进行破损检测,以 通过算法预测得到图片中破损的玉米果穗位置及数量。
上述的玉米果穗破损检测方法,其中,所述合成图片由玉米联合收获机升 运器处拍摄的图片和破损玉米果穗图片合成。
上述的玉米果穗破损检测方法,其中,所述目标参数包括每张所述训练集 图片中的破损玉米果穗的中心点x,y坐标对参数和边界框的宽高参数,所述中 心点坐标参数和边界框的宽高参数相对于原始图片尺寸归一化到(0,1)之间; 所述目标所属类别的数字为(corn)。
上述的玉米果穗破损检测方法,其中,步骤S200中,修改网络结构包括:
修改卷积方式,将卷积层中使用的标准3*3卷积核,替换为深度分离的 3*3卷积与1*1卷积的组合,深度分离的卷积核数量等于输入特征图的数量, 每个卷积核只作用于单通道的一个特征图,之后再使用1*1卷积作用于所有 3*3深度分离卷积输出的特征图,而后再通过激活函数;以及
压缩网络结构,将网络结构中的23个卷积层压缩为10个。
上述的玉米果穗破损检测方法,其中,步骤S200中,所述检测模型的训 练包括如下步骤:
S201、首先从配置文件中读取网络结构以及训练的学习率和迭代次数参数, 构建整个算法网络;
S202、所述算法网络在Imagenet分类数据集上进行所述检测模型的预训 练;以及
S203、使用预训练的所述检测模型部分权重初始化目标检测模型的特征提 取网络,读入所述训练集图片进行迁移学习,并训练网络。
上述的玉米果穗破损检测方法,其中,训练时最小化误差函数中的定位误 差、目标误差和分类误差,最小化误差函数时使用带动量的随机梯度下降法更 新权重参数,并将训练好的模型参数保存到权重文件中。
上述的玉米果穗破损检测方法,其中,步骤S200中,重新聚类计算先验 框包括:
从训练图片的标签文件中读取目标边界框的宽高值,将高宽分别乘以 416/32,得到先验框的值;
根据聚类的距离度量公式:d(box,centroid)=1-IOU(box,centroid),计 算距离指标d,其中,box指标签中的每个边界框,centroid表示选出的聚类中 心框,IOU(box,centroid)表示标签中的框与聚类中心框的重叠面积;
统计标签中所有边界框的大小,得到三个距离尽可能大的初始聚类中心框;
设定聚类中心框的数量为3,迭代计算距离d更新初始聚类中心框,最终 得到3个新的破损玉米果穗的先验框。
上述的玉米果穗破损检测方法,其中,所述步骤S300中,所述算法预测 包括如下步骤:
S301、载入训练好的模型参数,使用全卷积神经网络对输入图片做特征提 取得到特征图,所述特征图的每个单元格预测多个预测框,共得到n个预测框;
S302、从所述n个预测框中得到目标框,首先滤除目标置信度小于目标阈 值的无目标预测框;使用NMS算法进行非极大值抑制,合并重叠的冗余预测 框;
S303、对检测到的目标类别进行判断,所述预测框的类别置信度大于类别 阈值的为破损玉米果穗;
S304、获得所述输入图片中破损玉米果穗的位置和数量。
上述的玉米果穗破损检测方法,其中,目标置信度计算公式为:
上述的玉米果穗破损检测方法,其中,类别置信度Conf的计算公式为:
本发明的技术效果在于:
1)能有效解决训练数据过少的问题
目标检测算法基于卷积神经网络做特征提取,需要大量训练图片。但从玉 米联合收获机升运器处拍摄的图片中,含有破损玉米果穗的图片数量较少,难 以满足目标检测模型训练时对于训练数据的需求。本发明可在这种小样本情况 下,通过图片合成以及多种数据增强方法可扩充训练数据集。最终效果显示, 合成的图片使网络泛化能力得到提升。
2)模型参数少
修改网络结构,主要包括两方面:修改卷积方式以及压缩网络结构。修改 卷积方式是指将卷积层中使用的标准3*3卷积核,替换为深度分离的3*3卷积 与1*1卷积的组合。深度分离的卷积核数量等于输入特征图的数量,每个卷积 核只负责一个特征图,即只作用于单通道,之后再使用1*1卷积作用于所有 3*3深度分离卷积输出的特征图,而后再通过激活函数。压缩网络结构是指将 原网络结构中的23个卷积层压缩为10个。通过修改网络结构,使得模型变得 更小,参数更少。
3)检测算法耗时少
本发明计算速度较快。因为通过修改原来yolov2算法的网络结构,使得 模型参数大大减少,更少的参数在做检测时运算量更少。还因为通过将算法移 植到嵌入式GPU平台,利用cuda和cudnn加速库使算法可以并行化运算,也 减少了耗时;而由于算法在训练时使用了多尺度训练,所以在做检测时通过使 用320*320这种像素更少的图片使算法计算用时更短。
4)检测精度更高
针对破损玉米果穗这一特定目标,使用k均值算法对训练集中的边界框进 行聚类,得到3个新的破损玉米果穗的先验框。相比于使用人工设计的先验框, 在新的数据集上聚类得到的先验框更有助于对目标的定位,使得玉米果穗的检 测精度更高,漏检率更少。
以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的 限定。
附图说明
图1为本发明一实施例的检测算法流程图;
图2为本发明一实施例的合成训练示意图;
图3为本发明一实施例的NMS合并冗余框以及类别判断示意图。
具体实施方式
下面结合附图对本发明的结构原理和工作原理作具体的描述:
本发明的玉米果穗破损检测方法,包括如下步骤:
步骤S100、获取训练集图片及其标签,并用所述标签对所述训练集图片 和真实图片进行标注,所述训练集图片包括合成图片和真实图片,所述标签包 括目标参数和目标所属类别的数字,所述合成图片由玉米联合收获机升运器处 拍摄的图片和破损玉米果穗图片合成,所述目标参数包括每张所述训练集图片 中的破损玉米果穗的中心点x,y坐标对参数和边界框的宽高参数,所述中心点 坐标参数和边界框的宽高参数相对于原始图片尺寸归一化到(0,1)之间;所 述目标所属类别的数字为(corn);
步骤S200、修改网络结构,重新聚类计算先验框,使用标注后的所述训 练集图片进行检测模型的训练,并用标注后的所述真实图片精调所述检测模型 的参数,其中,修改网络结构包括:
修改卷积方式,将卷积层中使用的标准3*3卷积核,替换为深度分离的 3*3卷积与1*1卷积的组合,深度分离的卷积核数量等于输入特征图的数量, 每个卷积核只作用于单通道的一个特征图,之后再使用1*1卷积作用于所有 3*3深度分离卷积输出的特征图,而后再通过激活函数;以及
压缩网络结构,将网络结构中的23个卷积层压缩为10个;
重新聚类计算先验框包括:
从训练图片的标签文件中读取目标边界框的宽高值,将高宽分别乘以 416/32,得到先验框的值;
根据聚类的距离度量公式:d(box,centroid)=1-IOU(box,centroid),计 算距离指标d,其中,box指标签中的每个边界框,centroid表示选出的聚类中 心框,IOU(box,centroid)表示标签中的框与聚类中心框的重叠面积;
统计标签中所有边界框的大小,得到三个距离尽可能大的初始聚类中心框;
设定聚类中心框的数量为3,迭代计算距离d更新初始聚类中心框,最终 得到3个新的破损玉米果穗的先验框;
所述检测模型的训练包括如下步骤:
步骤S201、首先从配置文件中读取网络结构以及训练的学习率和迭代次 数参数,构建整个算法网络;
步骤S202、所述算法网络在Imagenet分类数据集上进行所述检测模型的 预训练;以及
步骤S203、使用预训练的所述检测模型部分权重初始化目标检测模型的 特征提取网络,读入所述训练集图片进行迁移学习,并训练网络,训练时最小 化误差函数中的定位误差、目标误差和分类误差,最小化误差函数时使用带动 量的随机梯度下降法更新权重参数,并将训练好的模型参数保存到权重文件中; 以及
步骤S300、目标检测,用训练好的检测模型对玉米果穗图片进行破损检 测,以通过算法预测得到图片中破损的玉米果穗位置及数量,其中,所述算法 预测包括如下步骤:
步骤S301、预测时将直接载入训练好的模型参数,使用全卷积神经网络 对输入图片做特征提取得到特征图,所述特征图的每个单元格预测多个预测框, 共得到n个预测框;
步骤S302、从所述n个预测框中得到目标框,首先滤除目标置信度小于 目标阈值的无目标预测框;使用NMS算法进行非极大值抑制,合并重叠的冗 余预测框;
步骤S303、对检测到的目标类别进行判断,所述预测框的类别置信度大 于类别阈值的为破损玉米果穗;
步骤S304、获得所述输入图片中破损玉米果穗的位置和数量。
本实施例中,目标置信度计算公式优选为:
类别置信度Conf的计算公式优选为:
具体说,本发明包括首先获取训练集图片及其标签。大部分训练集图片由 玉米联合收获机升运器处拍摄的图片和破损玉米果穗图片合成得到,少部分真 实图片用于精调模型参数。标签为每张图片中的破损玉米果穗的中心点(x,y) 坐标和其边界框的宽高,这四个参数都相对于原始图片尺寸归一化到(0,1) 之间;以及该目标所属类别的数字,此处只有一类(corn)。在合成图片时自 动计算标签数值,并保存在与图片同名的txt文件中,真实图片的标签需要手 工标注。
修改网络结构,重新聚类计算先验框,使用已经做好标注的训练图片进行 训练。训练过程如下:算法首先从配置文件中读取网络结构以及训练的学习率、 迭代次数等参数,构建整个网络;之后网络首先在Imagenet分类数据集上进 行训练。而后使用上述预训练的部分权重初始化目标检测模型的特征提取网络, 读入训练集图片进行迁移学习,训练网络。训练时最小化误差函数中的定位误 差、目标误差和分类误差,最小化误差函数时使用带动量的随机梯度下降法更 新权重参数,最终保存训练好的模型参数到权重文件中。
参见图1,图1为本发明一实施例的检测算法流程图。如图所示,算法预 测过程如下:预测时将直接载入训练好的模型参数,网络对输入图片做特征提 取得到13*13大小的特征图,特征图的每个单元格预测3个预测框,共得到 507个预测框。为了从这些预测框中得到包含目标的那些框,首先滤除目标置 信度小的无目标预测框;之后使用NMS算法,合并重叠的预测框;然后对检 测到的目标类别进行判断,大于阈值(0.5)的视为破损玉米果穗;最终得到 该图片中破损玉米果穗的位置、数量。
下面以一个具体实施例详细说明本发明基于深度学习的玉米果穗破损检 测方法:
步骤S100、获取合成训练图片与标签
合成的训练图片由背景和前景组成。背景使用数百张真实玉米联合收获机 升运器场景图片,图片中含有秸秆、玉米皮、尘土和玉米粒等杂物;前景使用 数百张破损玉米果穗图片,图片中是不同形状、光照、姿态的破损玉米果穗。 合成图片时随机选取背景和前景图片,首先对前景图片中属于背景的部分进行 手工标记,将背景区域像素标记为黑色。而后对前景图片灰度图进行高斯滤波 平滑去除噪点,二值化,闭操作进一步填补空洞,最终得到前景图片的模板 (mask)。之后随机选取背景图片的某块区域(roi),通过判断mask像素类 型,将该区域选择性替换为前景,并通过对合成图片添加噪声、调整饱和度等 方法增加样本多样性,得到20000余张复杂背景训练图片。效果如图2所示。
每张合成图片的标签由破损玉米果穗类别、中心点坐标(x,y坐标对)、 玉米果穗边界框的宽高组成,其中破损玉米果穗类别由0表示,中心点坐标和 高宽相对于整张图片的尺寸做了归一化,标签格式如下(0 0.28359375 0.2671875 0.1671875 0.115625)。训练集图片的标签在合成图片时自动求取: 记录roi区域的左上角坐标,以此为起点,通过使用前景图片的宽高得到破损 玉米果穗中心点在整张图片中的位置,这样避免了人工标注,节省人力。
步骤S200、修改网络结构,重新计算先验框
从训练图片的标签文件中读取目标边界框的宽高值,由于标签中的宽高值 是相对于原始图片大小归一化得到的,所以将高宽分别乘以416/32,得到先验 框的值。根据聚类用到的距离度量公式: d(box,centroid)=1-IOU(box,centroid),计算距离指标d,其中,box指标 签中的每个边界框,centroid表示选出的聚类中心框,IOU(box,centroid)表示 标签中的框与聚类中心框的重叠面积。由于k均值算法对聚类中心初值的选取 很敏感,故聚类中心的选取使用改进后的k均值算法,首先统计标签中所有边 界框的大小,得到三个距离尽可能大的初始聚类中心框。设定聚类中心框的数 量为3,迭代计算距离d更新初始聚类中心框,最终得到3个新的先验框: (1.70,1.40),(2.94,1.49),(1.13,2.74)。
然后,迁移学习训练网络。由于修改了网络结构,所以网络先在Imagenet 分类数据集上进行训练,而后使用得到的模型参数初始化卷积层网络。之后载 入一批训练图片,调整输入图片大小,进行多尺度训练。训练时网络对输入图 片进行特征提取,通过下采样,最终得到13*13大小的特征图。之后网络对得 到的特征图进行预测,得到一系列预测框,这些框包含定位信息、框内含有目 标的概率信息(Pr(Object))和框内存在物体时是破损玉米果穗的概率信息 (Pr(Corn|Object))。定位信息包含框的中心点坐标相对于先验框的偏移、框 的高宽。目标置信度计算方式为:
Pr(Object)表示预测框内含有目标的概率,表示预测框与groundtruth的重叠面积。若预测框内含有目标,则Pr(Object)=1,该预测框的目标 置信度为否则,Pr(Object)=0,认为预测框中没有 目标,Conf(Object)=0。
网络使用交叉熵损失函数给出预测框内是破损玉米果穗的条件概率 Pr(Corn|Object),框内目标的类别置信度的Conf计算方式为:
接下来最小化误差函数,和ground truth匹配的预测框计算定位误差、目 标置信度误差和分类误差,其他预测框只计算目标置信度误差。误差函数使用 均方误差。误差函数如下:
式中,l表示各误差函数,W,H分别指网络最后输出的特征图(13*13) 的宽和高,A指先验框的数量,此处是3,C表示类别数量,上标中o表示目 标,r表示坐标,k表示先验框,c表示类别,truth表示与ground truth匹配, 下标中t表示迭代次数,k表示先验框,noobj表示无目标即背景,prior表先 验框,coord表坐标,obj表目标,class表类别,ijk表示每个先验框的某个像 素点,各个λ值是各个误差的权重系数,λnoobj表背景置信度误差的权重,λprior表先验框proior与预测框b坐标误差的权重,λcoord表负责预测的先 验框得到的预测框与ground truth坐标误差的权重,λobj表目标置信度误差权 重,λclass表示分类误差的权重。第一项误差是计算背景的置信度误差,首 先计算预测框和标签中目标的边界框的IOU值,并取最大值Max_IOU,如果该 值小于一定的阈值Thresh(此处取0.6),那么该预测框就被标记为背景,计 算noobj(无目标)的置信度误差第二项是计算先验框prior与预 测框b的坐标误差,但是只在前12800次迭代中计算。第三大项计算与某个ground truth匹配的预测框各部分误差值,包括定位误差、目标置信度误差以 及分类误差。对于某个ground truth,首先要确定其中心点落在哪个单元格上, 然后计算这个单元格的3个先验框与ground truth的IOU值,IOU值最大的那 个先验框与ground truth匹配,对应的预测框用来预测这个ground truth。在计 算目标(obj)置信度时,有目标取1,但在求目标置信度误差时,目标置信度 取预测框与ground truth的真实IOU值。对于那些没有与ground truth匹配的 先验框得到的预测框,除去那些Max_IOU低于阈值作为背景的,其它的就全 部忽略,不计算任何误差。
在迭代训练目标检测模型的过程中,首先使用合成图片训练,当误差较小 时,再使用一部分标注好的真实图片继续训练,精调模型参数,最后使用未参 与训练的图片做测试集,验证网络训练效果。
步骤S300、目标检测。首先对输入图片进行缩放,缩放时保持图片的宽 高比,短边通过补零操作,将图片缩放为320*320像素大小。然后使用全卷积 神经网络对图片进行特征提取,通过卷积核滑动步长以及池化操作,对特征图 进行下采样,最终得到13*13大小的特征图。最终得到的特征图,每个单元格 使用先验框预测3个预测框。由于我们只检测一类,所以将得到507个预测框。 对于得到的预测框,首先将目标置信度小于阈值(此处取0.5)的框滤除,而 后对剩余框进行非极大值抑制,合并那些IOU值大于阈值(此处取0.45)的 冗余框。若剩下的预测框类别置信度大于阈值(此处取0.5),则判断为破损 玉米果穗(参见图3)。最终得到图片中破损的玉米果穗位置及数量。
当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情 况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但 这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (2)
1.一种玉米果穗破损检测方法,其特征在于,包括如下步骤:
S100、获取训练集图片及其标签,并用所述标签对所述训练集图片和真实图片进行标注,所述训练集图片包括合成图片和真实图片,所述标签包括目标参数和目标所属类别的数字;所述合成图片由背景图片和前景图片组成,所述背景图片采用真实玉米联合收获机升运器场景图片;所述前景图片采用破损玉米果穗图片;合成图片时随机选取所述背景图片和前景图片,首先对所述前景图片中属于背景的部分进行手工标记,将背景区域像素标记为黑色;而后对所述前景图片的灰度图进行高斯滤波平滑去除噪点,二值化,闭操作填补空洞;最终得到所述前景图片的模板;之后随机选取所述背景图片的任一区域,通过判断所述前景图片的模板像素类型,将该区域选择性替换为前景,并通过对合成图片添加噪声和调整饱和度增加样本多样性,得到复杂背景训练图片;
S200、修改网络结构,重新聚类计算先验框,使用标注后的所述训练集图片进行检测模型的训练,并用标注后的所述真实图片精调所述检测模型的参数;以及
S300、目标检测,用训练好的检测模型对玉米果穗图片进行破损检测,以通过算法预测得到图片中破损的玉米果穗位置及数量;
其中,所述目标参数包括每张所述训练集图片中的破损玉米果穗的中心点x,y坐标对参数和边界框的宽高参数,所述中心点坐标参数和边界框的宽高参数相对于原始图片尺寸归一化到(0,1)之间;所述目标所属类别的数字为corn;
步骤S200中,所述检测模型的训练包括如下步骤:
S201、首先从配置文件中读取网络结构以及训练的学习率和迭代次数参数,构建整个算法网络;
S202、所述算法网络在Imagenet分类数据集上进行所述检测模型的预训练;以及
S203、使用预训练的所述检测模型部分权重初始化目标检测模型的特征提取网络,读入所述训练集图片进行迁移学习,并训练网络;
其中,训练时最小化误差函数中的定位误差、目标误差和分类误差,最小化误差函数时使用带动量的随机梯度下降法更新权重参数,并将训练好的模型参数保存到权重文件中;
所述步骤S200中,修改网络结构包括:
修改卷积方式,将卷积层中使用的标准3*3卷积核,替换为深度分离的3*3卷积与1*1卷积的组合,深度分离的卷积核数量等于输入特征图的数量,每个卷积核只作用于单通道的一个特征图,之后再使用1*1卷积作用于所有3*3深度分离卷积输出的特征图,而后再通过激活函数;以及
压缩网络结构,将网络结构中的23个卷积层压缩为10个;
所述步骤S200中,重新聚类计算先验框包括:
从训练图片的标签文件中读取目标边界框的宽高值,将高宽分别乘以416/32,得到先验框的值;
根据聚类的距离度量公式:d(box,centroid)=1-IOU(box,centroid),计算距离指标d,其中,box指标签中的每个边界框,centroid表示选出的聚类中心框,IOU(box,centroid)表示标签中的框与聚类中心框的重叠面积;
统计标签中所有边界框的大小,得到三个距离尽可能大的初始聚类中心框;
设定聚类中心框的数量为3,迭代计算距离d更新初始聚类中心框,最终得到3个新的破损玉米果穗的先验框;
步骤S300中,所述算法预测包括如下步骤:
S301、载入训练好的模型参数,使用全卷积神经网络对输入图片做特征提取得到特征图,所述特征图的每个单元格预测多个预测框,共得到n个预测框;
S302、从所述n个预测框中得到目标框,首先滤除目标置信度小于目标阈值的无目标预测框;使用NMS算法进行非极大值抑制,合并重叠的冗余预测框;
S303、对检测到的目标类别进行判断,所述预测框的类别置信度大于类别阈值的为破损玉米果穗;
S304、获得所述输入图片中破损玉米果穗的位置和数量;
其中类别置信度Conf的计算公式为:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910212339.0A CN110060233B (zh) | 2019-03-20 | 2019-03-20 | 一种玉米果穗破损检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910212339.0A CN110060233B (zh) | 2019-03-20 | 2019-03-20 | 一种玉米果穗破损检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110060233A CN110060233A (zh) | 2019-07-26 |
CN110060233B true CN110060233B (zh) | 2022-03-18 |
Family
ID=67317307
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910212339.0A Active CN110060233B (zh) | 2019-03-20 | 2019-03-20 | 一种玉米果穗破损检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110060233B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110674720A (zh) * | 2019-09-18 | 2020-01-10 | 深圳市网心科技有限公司 | 图片识别方法、装置、电子设备及存储介质 |
CN110647931A (zh) * | 2019-09-20 | 2020-01-03 | 深圳市网心科技有限公司 | 物体检测方法、电子设备、系统及介质 |
CN111311540A (zh) * | 2020-01-13 | 2020-06-19 | 平安科技(深圳)有限公司 | 车辆定损方法、装置、计算机设备和存储介质 |
CN111612797B (zh) * | 2020-03-03 | 2021-05-25 | 江苏大学 | 一种水稻图像信息处理系统 |
CN111476165A (zh) * | 2020-04-07 | 2020-07-31 | 同方赛威讯信息技术有限公司 | 基于深度学习的电子文档中标题印章指纹特征检测方法 |
CN111583197B (zh) * | 2020-04-23 | 2022-05-13 | 浙江大学 | 结合SSD及Resnet50网络的电力箱图片锈蚀破损识别方法 |
CN112435214B (zh) * | 2020-10-21 | 2024-03-12 | 北京工业大学 | 基于先验框线性缩放的花粉检测方法、装置和电子设备 |
CN112488006A (zh) * | 2020-12-05 | 2021-03-12 | 东南大学 | 一种基于小麦图像的目标检测算法 |
CN113139481B (zh) * | 2021-04-28 | 2023-09-01 | 广州大学 | 基于yolov3的教室人数统计方法 |
CN116543189B (zh) * | 2023-06-29 | 2023-09-26 | 天津所托瑞安汽车科技有限公司 | 一种目标检测方法、装置、设备及存储介质 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102663344A (zh) * | 2012-03-04 | 2012-09-12 | 南京理工大学常熟研究院有限公司 | 基于图像分割的破损道路检测装置 |
CN106157273B (zh) * | 2015-03-30 | 2020-01-21 | 阿里巴巴集团控股有限公司 | 生成合成图片的方法及装置 |
EP3128728B1 (en) * | 2015-08-06 | 2018-05-02 | Alcatel Lucent | Method and device for detecting a broken binder |
CN107223411A (zh) * | 2016-03-24 | 2017-10-03 | 中国农业机械化科学研究院 | 一种玉米收获机及其玉米籽粒回收装置 |
US11210777B2 (en) * | 2016-04-28 | 2021-12-28 | Blancco Technology Group IP Oy | System and method for detection of mobile device fault conditions |
CN108617266B (zh) * | 2017-03-20 | 2020-06-23 | 中国农业机械化科学研究院 | 一种玉米穗茎收割台 |
CN107516311A (zh) * | 2017-08-08 | 2017-12-26 | 中国科学技术大学 | 一种基于gpu嵌入式平台的玉米破损率检测方法 |
CN108734117A (zh) * | 2018-05-09 | 2018-11-02 | 国网浙江省电力有限公司电力科学研究院 | 基于yolo的电缆设备外部腐蚀破损识别方法 |
CN109064461A (zh) * | 2018-08-06 | 2018-12-21 | 长沙理工大学 | 一种基于深度学习网络的钢轨表面缺陷检测方法 |
CN109359683B (zh) * | 2018-10-15 | 2021-07-27 | 百度在线网络技术(北京)有限公司 | 目标检测方法、装置、终端和计算机可读存储介质 |
-
2019
- 2019-03-20 CN CN201910212339.0A patent/CN110060233B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110060233A (zh) | 2019-07-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110060233B (zh) | 一种玉米果穗破损检测方法 | |
Yu et al. | Fruit detection for strawberry harvesting robot in non-structural environment based on Mask-RCNN | |
CN108648191B (zh) | 基于贝叶斯宽度残差神经网络的害虫图像识别方法 | |
CN113392775B (zh) | 一种基于深度神经网络的甘蔗幼苗自动识别与计数方法 | |
CN110222215B (zh) | 一种基于f-ssd-iv3的作物害虫检测方法 | |
CN107886086A (zh) | 一种基于图像视频的目标动物检测方法及装置 | |
CN111696101A (zh) | 一种基于SE-Inception的轻量级茄科病害识别方法 | |
CN115661943B (zh) | 一种基于轻量级姿态评估网络的跌倒检测方法 | |
CN110517311A (zh) | 基于叶片病斑面积的病虫害监测方法 | |
US11256915B2 (en) | Object tracking across multiple images | |
CN113298023B (zh) | 一种基于深度学习及图像技术的昆虫动态行为识别方法 | |
CN114842238B (zh) | 一种嵌入式乳腺超声影像的识别方法 | |
CN111340019A (zh) | 基于Faster R-CNN的粮仓害虫检测方法 | |
CN112580662A (zh) | 一种基于图像特征识别鱼体方向的方法及系统 | |
CN106845456A (zh) | 一种视频监控系统中人体摔倒监测的方法 | |
CN114445715A (zh) | 一种基于卷积神经网络的农作物病害识别方法 | |
CN111199245A (zh) | 油菜害虫识别方法 | |
CN111310827A (zh) | 一种基于双阶段卷积模型的目标区域检测方法 | |
CN110163103B (zh) | 一种基于视频图像的生猪行为识别方法和装置 | |
CN113627240B (zh) | 一种基于改进ssd学习模型的无人机树木种类识别方法 | |
Lin et al. | A novel approach for estimating the flowering rate of litchi based on deep learning and UAV images | |
CN113902901A (zh) | 一种基于轻量化检测的物体分离方法与系统 | |
CN108765384B (zh) | 一种联合流形排序和改进凸包的显著性检测方法 | |
CN114494441B (zh) | 基于深度学习的葡萄及其采摘点同步识别定位方法、装置 | |
CN113723281B (zh) | 基于局部自适应尺度集成学习的高分辨率影像分类方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |