APP下载

基于D-YOLOv3检测网络的温室叶菜幼苗图像检测

2021-11-14刘芳刘玉坤张白

江苏农业学报 2021年5期

刘芳 刘玉坤 张白

摘要:   为解决温室叶菜子叶期幼苗生长密集情况下的图像识别问题,提出一种密集连接型D-YOLOv3检测网络。该网络以YOLOv3为基础构建主干网络,改进检测结构和损失函数。以穴盘培育的油菜幼苗为例展开一系列试验。首先确定了YOLOv3和D-YOLOv3检测网络中损失函数的修正系数;其次通过构建的几种检测网络的对比试验验证了对YOLOv3主干网络、检测结构和损失函数改进的有效性,D-YOLOv3的幼苗检测精度高达93.44%,检测时间低至12.61 ms,与YOLOv3相比精度提升9.4个百分点,时间降低4.07 ms;最后进行不同密集程度和光照环境下幼苗图像的检测性能对比试验,结果表明D-YOLOv3的檢测精度、检测时间及对小目标的特征提取能力均优于YOLOv3。D-YOLOv3能够对温室环境下的叶菜幼苗进行有效检测,可以为智能检测装备的作物识别提供依据。

关键词:  小目标; 图像检测; 密集连接; D-YOLOv3检测网络

中图分类号:  S636;TP391.41    文献标识码: A    文章编号:  1000-4440(2021)05-1262-08

Image detection of leafy vegetable seedlings in greenhouse based on D-YOLOv3 detection network

LIU Fang, LIU Yu-kun, ZHANG Bai

(College of Electrical Information Engineering, North Minzu University, Yinchuan 750021, China )

Abstract:   In order to solve the problem of detecting densely planted leafy vegetable seedlings at cotyledon stage in greenhouse, a densely connected detection network named D-YOLOv3 was proposed. The backbone network of D-YOLOv3 was built based on that of YOLOv3. Simultaneously, the detection structure and loss function of D-YOLOv3 were constructed as the improvement of those of YOLOv3. A series of comparative tests were carried out with rape seedlings cultivated in pot as an example. Firstly, the correction coefficients of loss function in YOLOv3 and D-YOLOv3 detection networks were determined. Then, the effectiveness of the derived backbone network, detection structure and loss function of D-YOLOv3 was verified according to comparative tests with some networks mentioned in the paper. The test results showed that the detection accuracy of D-YOLOv3 was as high as 93.44%, and the detection time was as low as 12.61 ms. Compared with YOLOv3, the detection accuracy was improved by 9.4 percentage point and the detection time was reduced by 4.07 ms. Finally, the performance of YOLOv3 and D-YOLOv3 detection networks was obtained with images of rape seedlings growing under different density and illumination environments. The detection precision and speed of D-YOLOv3 for the proposed image were better than those of YOLOv3 at various densities. The ability of D-YOLOv3 was stronger than that of YOLOv3 to extract features of small targets under different illumination and density conditions. Consequently, the D-YOLOv3 detection network proposed in this paper can effectively identify rape seedlings in the greenhouse and serve as a powerful tool for crop recognition with intelligent detection equipment.

Key words:  small target; image detection; dense connection; D-YOLOv3 detection network

幼苗识别是植物表型检测的重要组成部分,对幼苗生长、品种选育等具有重要意义  [1-4] 。利用图像处理技术来准确高效识别幼苗十分必要。图像处理具有成本低、直观、非接触式等优点,在智慧农业领域备受青睐  [5] 。传统图像识别方法利用支持向量机(SVM)  [6] 、K近邻算法(KNN)  [7] 、随机森林算法  [8] 等方法手动提取颜色、纹理、形态等特征来分割图像,然后结合反向传播神经(BP)网络进行作物识别。上述方法对于小目标或由光照等自然环境因素导致的图像颜色不均匀、有阴影等情况,识别效果不理想  [9-10] 。

深度卷积神经网络(Deep convolutional neural network, DCNN)对作物具有较好的识别能力  [11] 。目前基于DCNN的主流目标检测算法有Fast R-CNN  [12] 、Faster R-CNN  [13] 以及YOLO(You only look once)系列网络  [14-16] 等。孫哲等  [17] 利用Faster R-CNN网络检测株距较大的田间西兰花幼苗图像,检测精度达到91.73%,平均耗时249 ms。该方法针对田间幼苗图像,每幅图像只含有1个目标,且在图像中占比较大(常规目标)。温室环境下利用穴盘培育的叶菜类子叶期幼苗生长密集,在图像中占比较小(小目标)且光照变化多样。相较于田间西兰花幼苗等常规目标,温室叶菜幼苗等小目标所含信息量较少,导致其图像检测难度增大。目前温室环境下叶菜类子叶期幼苗的图像检测鲜有报道。

本研究以YOLOv3检测网络为基础,根据幼苗图像的特点,对主干网络和检测结构进行改进,同时对损失函数进行改善,提出一种基于密集连接的D-YOLOv3检测网络,构建适用于不同光照环境下的小目标图像检测方法。

1 试验材料与试验平台

以穴盘中培育的油菜幼苗为例,采集其从萌发到子叶期的生长图像。为保证样本多样性,对温室环境下不同时段、不同密集程度的幼苗进行拍摄。光源包含了白天的正常光照、复合光照以及夜间光照,其中复合光照是由不同配比的红、蓝光复合而成。所有图像均由C6C型号萤石云摄像机自动拍摄,白天为彩色,夜间为灰度,分辨率为 1 920 像 素×  1 080 像素,保存为JPEG格式。图1为一组典型不同光照环境下的幼苗图像,可以看出幼苗生长密集且大多较小。

选取500幅图像,其中正常光照137幅,复合光照174幅,夜间光照189幅。为了丰富图像数据集、减小因样本数量不足导致检测网络过拟合的概率,对图像进行旋转、缩放等操作,实现图像数据扩增;然后进行直方图增强处理,减小因不同光照环境导致幼苗识别率降低的影响,提升检测网络的泛化能力。处理后得到 4 000 幅图像,其中 3 200 幅作为训练集用于检测网络的训练,400幅作为验证集用于检测网络的参数优化调节,400幅作为测试集用于检测网络的泛化能力验证。此外,将所有图像压缩至416像素×416像素以缩减试验时间,之后进行人工标注。考虑到图像中幼苗均为小目标,因此利用每个幼苗的最小外接矩形进行标注,尽量减小标注框内包含的背景像素。最后对幼苗图像重新聚类,得到合适的初始锚框以提升检测精度。

试验平台为台式计算机,处理器为Inter core i7-9800X,主频3.8GHz,16GB内存,1T固态硬盘,GPU为NVIDIA GeForce GTX 2080Ti。操作系统为64位Ubuntu16.04,深度学习框架为Darknet。部分参数设置为:初始学习率0.001,衰减方式为阶梯型(step-based),最大迭代次数 2.0× 10 4次,每次迭代训练64个样本数,学习率分别在 1.6× 10 4和 1.8× 10 4次迭代时衰减为原学习率的0.1,动量设置为0.9。

2 密集连接型D-YOLOv3幼苗检测网络

选用兼顾速度与精度的YOLOv3作为基础检测网络,针对其小目标检测效果不理想等问题,改进如下:(1)借鉴密集连接网络(Densely connected convolutional networks, DenseNet)的密集连接思想  [18] ,对基于残差思想的YOLOv3主干网络进行改进,提升小目标检测精度;(2)精简检测结构,降低检测时间;(3)改进损失函数,调整小目标预测框定位权重,进一步提高检测精度。将上述基于密集连接方式而改进的检测网络命名为密集连接型D-YOLOv3(Dense-YOLOv3)。

2.1 密集连接方式的优势

残差块是YOLOv3检测网络进行特征提取的基本单元,密集块(Dense block)是DenseNet的基本组成单元(图2)。两者结构上的不同之处在于:(1)残差块利用旁路连接将前层卷积输出信息直接传递给后层,密集块将每一层的输入与前面所有卷积层输出相连接。(2)残差块将两层卷积层进行累加,输出特征图的维度不增加;密集块将所有卷积层进行张量拼接,输出特征图的维度增加,可以提取更多特征信息。综上所述,密集连接方式可以增强特征传播,促进特征复用,减少参数量,故而对小目标检测有着极大的促进作用。

2.2 D-YOLOv3幼苗检测网络的构建

小目标的检测需要通过特征图的浅层信息充分获取小目标的特征信息  [19] 。本研究根据幼苗图像的特点,针对YOLOv3检测网络在小目标检测中的不足,设计基于DenseNet的主干网络和多尺度检测结构,构建D-YOLOv3幼苗检测网络。

YOLOv3检测网络结构如图3(a)所示,其中卷积单元由卷积层、批量归一化层和激活函数顺序组成。YOLOv3主干网络对输入图像进行5次下采样,第 3~ 5次下采样顺序产生52像 素× 52像素、26像 素× 26像素、13像 素× 13像素特征图。对小目标的检测,需要利用残差块3提取第3次下采样后特征图中的浅层信息,但其提取能力不足导致YOLOv3的检测能力不足。另一方面,叶菜幼苗大多集中在52像 素× 52像素尺度下,小部分在26像 素× 26像素尺度下,采用两尺度检测结构即可完成幼苗检测,而YOLOv3检测结构含有3个尺度,导致检测时间增大。通过上述分析,构建如图3(b)所示的新型D-YOLOv3检测网络。其改进思路如下:(1)针对YOLOv3中残差结构对小目标特征提取能力不足问题,借鉴密集连接思想,将YOLOv3的残差块1、2、3、4分别替换为密集块1、2、3、5,融合更多层的特征信息来提取更丰富的特征信息,提升小目标的特征提取能力。(2)针对YOLOv3只在第3、4次下采样后分别利用一个残差块进行特征提取,对浅层信息提取能力不足等问题,D-YOLOv3在第3、4次下采样后添加2个密集块4、6充分提取浅层特征信息。由于密集块将所有卷积层进行张量拼接导致特征维度增加,尤其是网络层级较深时特征维度一般较大,若不加以限制,特征维度无限增加,网络将耗时较长,浪费计算资源。因此,在密集块3、4、5、6之间添加卷积单元作为过渡层以降低特征维度,用以节约计算资源。(3)根据叶菜幼苗不会出现在13像素×13像素尺度下的特点,优化检测结构。保留中、小目标的检测层1、2,删除YOLOv3中用于提取较大目标特征的残差块5和检测较大目标的检测层3,在不降低幼苗检测能力的同时可以节约计算资源,减少检测时间。

综上所述,借鉴DenseNet密集连接思想,从主干网络和检测结构2个层面对YOLOv3进行重构。D-YOLOv3检测网络的主要模块及其功能如下:(1)采用6个密集块提升对小目标特征提取的能力;(2)采用4次下采样提取特征信息,在第3、4次下采样之后分别加入2个密集块提取浅层特征信息并利用张量拼接融合2次下采样的特征;(3)采用2层检测层对小、中尺度幼苗进行检测,缩减网络检测时间。

2.3 损失函数的改进

小目标检测的难点之一在于其难以定位,合理的损失函数可以有效降低小目标的定位误差,加快训练速度,提升检测精度。YOLOv3的损失函数包含预测框定位误差、置信度误差和类别误差3部分。本研究从降低小目标预测框定位误差的角度对YOLOv3损失函数进行改进。借鉴Kisantal等  [20] 的小目标检测思想,通过修正预测框中心点和长宽误差的权重系数减小原损失函数的预测框定位误差。据此,将YOLOv3的损失函数 L 改进如下:

L=k(2-w*h)[L(x,y)+L(w,y)]+k  conf  L(conf)+ k cL(c)  (1)

式中, L(x,y) 、 L(w,y) 分别为预测边界框中心坐标( x、y )和宽( w)、 高 (h) 的误差; L(conf) 、 L(c) 分别为预测置信度( conf )和类别( c )的误差; k  conf  、 k c 为相应误差的权重系数; k 为预测框中心点和宽高误差的修正系数。

3 叶菜幼苗图像检测試验结果与分析

首先确定最佳修正系数,然后将YOLOv3检测网络与D-YOLOv3检测网络进行对比试验。为验证D-YOLOv3检测网络在温室复杂环境中的检测性能,分别以幼苗密集程度、光照为控制变量对检测网络的性能进行评估,并与YOLOv3检测网络的检测效果进行对比。

3.1 检测网络的性能评价指标

采用检测精度( P   a )、检测时间( t   d )作为检测网络的主要性能评价指标。 P   a 为检测网络测试目标的平均检测精度,其值越大检测网络的性能越好。 t   d 为检测网络测试时所用时间,其值越小检测性能越好。准确率( P )表示所有被预测为正样本中实际为正样本的概率,召回率( R )表示实际为正样本中被预测为正样本的概率。检测精度( P   a )与准确率( P )和召回率( R )有关,三者的计算公式如下:

P =  T  P  T  P+ F  P  (2)

R =  T  P  T  P+ F  N  (3)

P  a= ∫ 1 0 P*RdR  (4)

式中  T   P 为被正确划分为正样本的数量, F   P 为被错误划分为正样本的数量, F   N 为被错误划分为负样本的数量。

P   a 从 R 和 P 两方面来衡量检测算法的准确性,是评价检测模型准确性的直观评价标准,可以用来分析单个类别的检测效果  [21] 。

3.2 修正系数的确定

保持式(1)其他参数不变,改变修正系数( k ),分别针对YOLOv3和D-YOLOv3检测网络进行训练。由于损失函数( L )对修正系数( k )的变化较为敏感,因此对 k 进行微调即可, k 取值区间为[1.0,2.0],步长取0.1。网络训练结束时得到一组对应的损失函数值,再利用训练好的网络对测试集进行测试,得到对应的检测精度值,试验结果如表1和表2所示。

由表1、表2可以看出,当  k = 1.5时,YOLOv3的损失函数( L )最小,检测精度 P   a 最高;当  k = 1.7时,D-YOLOv3的损失函数( L )最小,检测精度( P   a )最高。1.5和1.7即分别为YOLOv3和D-YOLOv3的最佳修正系数。

3.3 不同检测网络的性能对比

为了验证D-YOLOv3检测网络中主干网络、检测结构以及损失函数3方面的改进效果,选取表3所示的5种对比网络。其中(1)保留YOLOv3的主干网络和3层检测结构,只改进损失函数,将其称为D1-YOLOv3;(2)以YOLOv3为基础,主干网络采用密集连接方式,保留3层检测结构,不改进损失函数,将其称为D2-YOLOv3;(3)以YOLOv3为基础,主干网络采用密集连接方式,采用2层检测结构,不改进损失函数,将其称为D3-YOLOv3。

衡量检测网络的2个重要指标是平均检测精度( P   a )和检测时间( t   d )。上述5种检测网络的检测性能试验结果(表4)显示:(1)无论是采用残差块连接方式的YOLOv3和D1-YOLOv3,还是采用密集块连接方式的D3-YOLOv3和D-YOLOv3对比试验组,单独改进损失函数均可以不同程度地提升检测精度( P   a );(2)与采用残差块连接方式的YOLOv3相比,采用密集块连接方式的D2-YOLOv3的检测精度( P   a )显著提升且检测时间( t   d )略有降低;(3)与检测层数较多的D2-YOLOv3相比,检测层数较少的D3-YOLOv3的检测时间( t   d )大幅下降;(4)与没有任何改进的YOLOv3相比,同时改进了主干网络、检测结构以及损失函数的D-YOLOv3,其检测精度提升9.40个百分点,检测时间降低4.07 ms,检测性能全面超越YOLOv3。

3.4 D-YOLOv3和YOLOv3网络对不同密集程度幼苗的检测性能对比

以幼苗密集程度作为控制变量采集正常光照环境下的图像190幅,按照每幅图像所含幼苗的株数 n 分为3类,其中 n <40的图像有36幅, 40≤   n ≤ 60的图像有82幅,  n > 60的图像有72幅。图4a、图4b分别为D-YOLOv3和YOLOv3两种检测网络对不同密集程度幼苗的检测结果,紫色方框代表幼苗的预测框,预测框位置正确且数量越多表示幼苗识别率越高。可以看出,在 40≤   n ≤ 60尤其是 n >60情况下图4a中预测框数量明显偏多,意味着 D-YOLOv3检测网络的植株识别能力确实比YOLOv3的识别能力强。表5为两种网络对不同密集程度幼苗的检测性能指标。可以看出,(1)在不同幼苗密集程度下D-YOLOv3检测网络的检测精度( P   a )均高于YOLOv3,尤其在  n > 60的情况下 P   a 高出16.41个百分点。这是因为随着幼苗数量的增加其分布越密集,每株幼苗在图像中的占比越小,YOLOv3检测网络对小目标的检测能力不足,因此精度大幅下降。另一方面,在密集程度不同的情况下D-YOLOv3检测网络的 P   a 波動不大,说明D-YOLOv3检测网络在不同密集程度下均具有良好的性能。(2)随着幼苗密集程度的增大,D-YOLOv3和YOLOv3两种检测网络的检测时间( t   d )均有不同程度的增大,但在相同密集程度下D-YOLOv3检测网络的 t   d 均比YOLOv3的 t   d 小,且密集程度越大D-YOLOv3检测网络的 t   d 与YOLOv3检测网络的 t   d 的差值越大。

3.5 D-YOLOv3和YOLOv3网络在不同光照环境下检测性能对比

分别取正常光照、夜间光照、复合光照图像93幅、64幅、43幅,用D-YOLOv3和YOLOv3检测网络对不同光照环境下幼苗进行检测。可以看出,在复合光照和夜间光照环境下图5a中紫色预测框的数量明显偏多,即D-YOLOv3对幼苗的识别能力优于YOLOv3。

由表6可以看出:(1)无论是D-YOLOv3检测网络还是YOLOv3检测网络,正常光照环境下的性能指标均为最好,夜间光照环境下的性能指标均为最差。原因是夜间光照下幼苗特征信息丢失严重,导致其平均检测精度降低,易产生误检和漏检。(2)无论哪种光照环境下D-YOLOv3检测网络的检测精度( P   a )和检测时间( t   d )均优于YOLOv3网络。说明D-YOLOv3检测网络在不同光照下对小目标的特征提取能力更强,检测幼苗的能力更为突出。需要指出的是,正常光照、夜间光照环境下图像中幼苗数量较少 ( n < 40),而在复合光照环境下图像中幼苗个数较多 ( n > 60),导致复合光照环境下的检测时间偏长。

4 结 论

基于Kisantal等  [20] 的小目标检测思想改进损失函数,通过试验确定了修正系数。构建了几种检测网络,通过对比试验验证了采用改进YOLOv3主干网络、检测结构和损失函数的方法可以有效地提升检测网络的检测精度、检测时间等性能指标。

针对温室环境下叶菜幼苗图像识别问题,通过改进YOLOv3的主干网络、检测结构和损失函数,提出了一种密集连接型D-YOLOv3检测网络,检测精度达到93.44%,单幅图像平均检测时间为12.61 ms。

对YOLOv3和D-YOLOv3检测网络在不同密集程度和不同光照环境下幼苗图像的检测性能进行了对比试验。在不同幼苗密集程度下D-YOLOv3的检测精度和检测时间均优于YOLOv3;在不同密集程度下D-YOLOv3检测网络的检测精度波动不大,且密集程度越大D-YOLOv3检测网络的检测时间比YOLOv3检测网络缩短的越大;D-YOLOv3在不同光照环境下对小目标的特征提取能力均好于YOLOv3。

参考文献:

[1]  GRINBLAT G L, UZAL L C, LARESE M G, et al. Deep learning for plant identification using vein morphological patterns [J]. Computers and Electronics in Agriculture, 2016, 127: 418-424.

[2]  DYRMANN M, KARSTOFT H, MIDTIBY H S. Plant species classification using deep convolutional neural network [J]. Biosystems Engineering, 2016, 151: 72-80.

[3]  OPPENHEIM D, SHANI G. Potato disease classification using convolution neural networks [J]. Advances in Animal Biosciences, 2017, 8: 244-249.

[4] LU H, CAO Z, XIAO Y, et al. Tasselnet: Counting maize tassels in the wild via local counts regression network [J]. Plant Method, 2017, 13: 79-92.

[5] 刘 芳,刘玉坤,林 森,等. 基于改进型YOLO的复杂环境下番茄果实快速识别方法[J].农业机械学报, 2020,51(6):229-237.

[6] TELLAECHE A, PAJARES G, BURGOS-ARTIZZU X P, et al. A computer vision approach for weeds identification through Support Vector Machines [J]. Applied Soft Computing, 2011, 11(1): 908-915.

[7] JAGAN K M, BALASUBRAMANIAN M, PALANIVEL S. Detection and recognition of diseases from paddy plant leaf images [J]. International Journal of Computer Applications, 2016, 144: 34-41.

[8] 崔日鲜,刘亚东,付金东. 基于机器学习和可见光光譜的冬小麦叶片氮积累量估算[J].光谱学与光谱分析, 2016, 36(6): 1837-1842.

[9] DUAN L, HUANG C, CHEN G, et al. Determination of rice panicle numbers during heading by multi-angle imaging[J]. The Crop Journal, 2015, 3: 211-219.

[10] SADEGHI T P, SABERMANESH K, VIRLET N, et al. Automated method to determine two critical growth stages of wheat: Heading and flowering [J]. Front Plant Science, 2017, 8: 252-265.

[11] 翁 杨,曾 睿,吴陈铭,等. 基于深度学习的农业植物表型研究综述[J]. 中国科学: 生命科学, 2019, 49(6): 698-716.

[12] GIRSHICK R. Fast R-CNN[C]. Santiago, Chile: Proceedings of the IEEE international conference on computer vision, 2015: 1440-1448.

[13] REN S, HE K, GIRSHICK R, et al. Faster R-CNN: towards real-time object detection with region proposal networks [J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 39(6):1137-1149.

[14] REDMON J, DIVVALA S, GIRSHICK R, et al. You only look once: unified, real-time object detection[C]. Ohio: conference on Computer Vision and Pattern Recognition, 2016: 779-788.

[15] REDMON J, FARHADI A. YOLO9000: better, faster,stronger[C]. Ohio: Conference on Computer Vision and Pattern Recognition, 2017: 6517-6525

[16] [16] REDMON J, FARHADI A. YOLOv3: An incremental improvement [DB/OL]. (2018-04-18) [2020-03-01]. https://arxiv.org/pdf/1804.02767.pdf.

[17] 孙 哲,张春龙,葛鲁镇,等. 基于Faster R-CNN的田间西兰花幼苗图像检测方法[J].农业机械学报, 2019, 50(7): 216-221.

[18] GAO H,ZHANG L.Densely connected convolutional networks[C]. Ohio: Conference on Computer Vision and Pattern Recognition, 2017:1-28.

[19] 吴天舒,张志佳,刘云鹏,等. 基于改进SSD的轻量化小目标检测算法[J]. 红外与激光工程,2018,47(7):47-53.

[20] KISANTAL M, WOJNA Z, MURAWSKI J, et al. Augmentation for small object detection[DB/OL]. (2019-02-19) [2020-03-01]. https://www.researchgate.net/publication/338171640.

[21] 冯小雨,梅 卫,胡大帅. 基于改进Faster R-CNN的空中目标检测[J].光学学报,2018,38(6):250-258.

(责任编辑:张震林)