Detection method of citrus in nighttime environment combined with active light source and improved YOLOv5s model
-
摘要:目的
解决夜间环境下遮挡和较小柑橘难以准确识别的问题,实现采摘机器人全天候智能化作业。
方法提出一种结合主动光源的夜间柑橘识别方法。首先,通过分析主动光源下颜色特征不同的夜间柑橘图像,选择最佳的光源色并进行图像采集。然后,提出一种夜间柑橘检测模型BI-YOLOv5s,该模型采用双向特征金字塔网络(Bi-FPN)进行多尺度交叉连接和加权特征融合,提高对遮挡和较小果实的识别能力;引入Coordinate attention (CA)注意力机制模块,进一步加强对目标位置信息的提取;采用融入Transformer结构的C3TR模块,在减少计算量的同时更好地提取全局信息。
结果本文提出的BI-YOLOv5s模型在测试集上的精准率、召回率、平均准确率分别为93.4%、92.2%和97.1%,相比YOLOv5s模型分别提升了3.2、1.5和2.3个百分点。在所采用的光源色环境下,模型对夜间柑橘识别的正确率为95.3%,相比白光环境下提高了10.4个百分点。
结论本文提出的方法对夜间环境下遮挡和小目标柑橘的识别具有较高的准确性,可为夜间果蔬智能化采摘的视觉精准识别提供技术支持。
Abstract:ObjectiveTo solve the problems of occlusion and difficult identification of small citrus in the nighttime environment and redlize the all-weather intelligent operation of picking robots.
MethodA nighttime citrus identification method combined with active light sources was proposed in this paper. Firstly, the best illuminant color was selected by analyzing nighttime citrus images with different color features under active light sources. Then, a nighttime citrus detection model named BI-YOLOv5s was proposed with bi-directional feature pyramid network (Bi-FPN) for multi-scale cross connection and weighted feature fusion to improve the detection performance of occlusion and small citruses. The coordinate attention (CA) module with attention mechanism was introduced to further strengthen the extraction of target location information. Meanwhile, the C3TR module integrated with a Transformer structure was adopted to reduce the computing amount and better extract global information.
ResultThe precision, recall and average precision of the citrus detection using the BI-YOLOv5s on test set were 93.4%, 92.2% and 97.1%, respectively, with 3.2, 1.5 and 2.3 percent higher than the YOLOv5s, respectively. Moreover, the identification accuracy of the proposed model with an active light source for nighttime citrus was 95.3%, with 10.4 percent higher than the model in the white light environment.
ConclusionThe proposed method in this paper has high accuracy for the identification of occlusion and small target citrus in the nighttime environment, and it can provide technical support for nighttime visual identification of intelligent picking of fruits and vegetables.
-
我国是最大的柑橘生产国,年产量占世界的四分之一[1]。随着农业机械化和信息化的发展,果蔬识别、机器人自动采摘和果实产量估计等成为近年来的研究热点[2]。水果自动化采摘对提高水果品质和市场竞争力具有重要意义[3-4]。目前,柑橘大多数是人工采摘,这种方式采摘效率低、成本高,并且采摘作业集中在白天。夜间环境下柑橘的精准识别是采摘机器人智能化全天候作业的关键,而夜间视觉系统的设计是实现采摘机器人夜间作业的重要前提[5-8]。因此,为了满足市场的需求,提高采摘效率并延长作业时间,有必要进行夜间环境下柑橘采摘机器人的研究。
在夜间环境下的目标检测,最关键在于光源的选择和视觉系统的设计,通过人工照明可以确保在稳定的光源下采集夜间图像,降低在白天太阳可变光照的影响[9-10]。近年来,针对夜间环境下果蔬识别的研究中,Xiong等[11]利用改进的模糊聚类方法(FCM)与Otsu算法结合,实现夜间荔枝果实的识别,在受图像阴影干扰的情况下,对荔枝的识别准确率为93.75%。Fu等[12]为了研究夜间照明光强与猕猴桃视觉识别效果的关系,通过改变LED灯的光照强度,采集不同光强下的猕猴桃图像,并采用Canny算法进行分割检测,当光强为30~50 lx时识别效果最佳,准确率为88.3%。项荣等[13]通过对光源种类、布局,图像采集距离等因素进行试验,设计了番茄采摘机器人夜间照明系统,并通过Otsu自动阈值图像分割算法验证了其有效性。赵德安等[14]通过对比不同光源对果实识别的影响,采用2盏白炽灯作为光源采集夜间图像,消除了阴影影响,提出改进R-G色差分割算法,并进行二次分割实现夜间苹果识别,果实的识别正确率达到83.7%。上述研究从光源的强度和种类出发来设计夜间光源系统,采集易于分割的图像,实现果实的识别,但对于重叠遮挡目标果实的识别准确率较低。
随着目标检测算法的发展,深度学习逐渐应用于农业的各个领域,Liang等[15]采用YOLOv3算法并结合U-Net检测夜间环境的荔枝果实和果梗,识别准确率分别为96.30%和95.54%,该方法在一定程度上突破了传统方法的局限。王辉等[16]提出一种基于改进DarkNet-53卷积神经网络并结合YOLOv3的水果分类识别模型,平均识别精度为85.91%,实现了复杂背景下的水果识别。熊俊涛等[17]利用环形光源提出一种多尺度卷积神经网络Des-YOLOv3算法,实现夜间环境下成熟柑橘的识别与检测,测试集平均精度达90.75%,检测速度达53帧/s,但对于较小的果实,出现了部分漏检情况。吕石磊等[18]采用一种轻量化的网络模型对自然环境下的柑橘进行识别,在全部测试集上平均准确率达91.13%,该模型占用内存低,便于部署,但整体识别准确率较低。可以看出,深度学习算法具有较强的提取图像高维特征的能力,受环境干扰程度较低,相比传统方法,在自然环境下对果实的识别效果有较好的提升,但由于野外环境复杂,提高重叠遮挡果实的识别性能仍是目前的研究重点[19]。
夜间环境背景简单,采摘机器人能在较稳定的光照环境下识别并采摘果实,对于夜间环境水果采摘的研究,通常采用白光作为光源采集夜间图像,未针对目标果实颜色特征选择合适的光源设计视觉系统,而且照明不均匀导致的阴影使得树上部分果实特征不明显,对枝叶遮挡和较小果实的准确识别存在一定的困难[20]。因此,获取果实颜色特征明显的夜间图像,是实现夜间智能采摘精准识别的关键[21-23]。
综上,为了进一步提高对夜间重叠遮挡、小目标柑橘的识别性能,在野外夜间环境下快速精准地识别目标果实,本文采用一种可调节RGB数值的灯光为夜间光源,通过试验确定最佳光源色来采集柑橘颜色显著的夜间图像,并通过改进的YOLOv5s目标检测模型对夜间柑橘进行精准识别,为夜间柑橘采摘机器人提供重要的视觉检测技术支持。
1. 材料与方法
1.1 灯光设备和试验图像采集
试验灯光设备采用SuteFoto T6光源,尺寸为96 mm × 65 mm × 18 mm,功率为8 W,CCT色温为2 500~8 500 K,其中RGB模式为0~255可调节数值,具有1 600万种组合色彩。试验图像采集地点为广东省广州市白云区百万果园农庄,采集时间为2021年12月18日夜间,采集距离为100 cm,光照强度为346 lx;使用iPhone相机进行图像采集,采集的图像为4 032像素 × 2 268像素的.jpg格式。采集场景和灯光设备如图1所示。
1.2 试验指标
夜间环境中柑橘的识别,最关键的是获取高质量的夜间图像,使在目标检测算法下能更好地提取柑橘的颜色特征。赵桂兰等[24]在光源色与物体色的研究中提到,光源颜色的变化会改变物体的颜色,物体显色性跟物体本身颜色以及光源色有关,高色温光源照射冷色调物体,低色温光源照射暖色调物体,显色更优,物体反射亮度更高。因此,为了能在夜间环境下采集柑橘果实颜色特征突出的图像,即果实与叶片颜色差距较大,首先要确定光源色。本文通过调节T6光源RGB模式下各数值来改变光源色,并结合HSV颜色空间选取最佳光源色。通过HSV颜色空间计算果实与叶片的颜色距离,颜色距离越小,两者颜色越接近,反之越远,由此选择使两者色距最大的RGB数值作为采集夜间图像的最佳光源色。颜色距离计算流程及公式如下。
1)分别获取柑橘与叶片图像的RGB数值,将图像的RGB通道转为HSV通道。
$$ \begin{aligned} & {R'} = 255/R \\ & {G'} = 255/G \\ & {B'} = 255/B \\ \end{aligned} , $$ (1) $$ \begin{array}{l} {{C}}_{\text{max}}=\text{max}({R}',{G}',{B}')\\ {{C}}_{\text{min}}=\text{min}({R}',{G}',{B}')\\ \Delta ={{C}}_{\text{max}}-{{C}}_{\text{min}}\end{array} \text{,} $$ (2) 式中,R′、G′、B′代表分别将图像的R、G、B数值归一化,使其转为[0, 1] 区间;Cmax、 Cmin分别表示R′、G′、B′的最大值和最小值。
色相 (H)计算:
$$ \left\{ {\begin{array}{*{20}{l}} 0°& \Delta =0\\ 60°\times \Bigg(\dfrac{{G}'-{B}'}{\Delta }+0\Bigg)& {{C}}_{\text{max}}={R}'\\ 60°\times \Bigg(\dfrac{{B}'-{R}'}{\Delta }+2\Bigg)& {{C}}_{\text{max}}={G}'\\ 60°\times \Bigg(\dfrac{{R}'-{G}'}{\Delta }+4\Bigg)& {{C}}_{\text{max}}={B}'\end{array}} \right.。 $$ (3) 饱和度 (S)计算:
$$ S = \left\{ {\begin{array}{*{20}{c}} 0&{{{ }}{{{C}}_{{\text{max}}}} = 0} \\ {\dfrac{\Delta }{{{{{C}}_{{\text{max}}}}}}}&{{\text{ }}{{{C}}_{{\text{max}}}} \ne 0} \end{array}} \right.。 $$ (4) 亮度 (V)计算:
$$ V = {{{C}}_{{\text{max}}}}。 $$ (5) 2)计算HSV颜色空间三维坐标:假设一个HSV锥的斜边长度R为100,底面圆半径为r,高度为h,以地圆中心为原点,以H=0为x轴正方向建立坐标轴。色值是(H, S, V),点的三维坐标为(x, y, z)。
$$ \begin{gathered} h = R \cos \Bigg(\dfrac{{{{30}^ {\circ} }}}{{{{180}^ {\circ} } {\text{π}} }}\Bigg) \\ r = R \sin \Bigg(\dfrac{{{{30}^ {\circ} }}}{{{{180}^ {\circ} } {\text{π}} }}\Bigg) \\ \end{gathered} \text{,} $$ (6) $$\left\{ { \begin{gathered} x = r V S \cos \dfrac{H}{{{{180}^ {\circ} } {\text{π}} }} \\ y = r V S \sin \dfrac{H}{{{{180}^{ \circ} } {\text{π}} }} \\ z = h(1 - V) \\ \end{gathered} 。 } \right.$$ (7) 3)计算两图像之间的颜色距离(C):
$$ \left\{ {\begin{gathered} D_x = x_1 - x_2 \\ D_y = y_1 - y_2 \\ D_z = z_1 - z_2 \\ \end{gathered} \text{,} } \right.$$ (8) $$ C = \sqrt {D_x^2 + D_y^2 + D_z^2} , $$ (9) 式中,D表示坐标点间在不同坐标轴方向上的距离。
在前期试验过程中得知,RGB模式下R决定柑橘颜色变化,B决定叶片颜色变化,然而G对叶片颜色产生加深效果,故不需要对G进行调节。因此,在0~255的可调节数值下,采用二分法向上向下进行探测,以R=128、G=0、B=128为中心点数值,分别以64、32、16、8和4为步长(分别为第1~5轮)调节R、B数值,从而改变光源色来采集夜间柑橘图像,其中每轮采集9张图像。
利用Photoshop软件将柑橘果实以及叶片背景图像分别提取出来,将柑橘及叶片图像均另存为尺寸为126像素×126像素的PNG格式图像。表1为每轮柑橘和叶片图像的颜色距离。由表1可知:在第1轮中,当R=64、G=0、B=192时,颜色距离为2.04,在第1轮为最大,因此为第1轮中最佳的RGB数值,并作为第2轮的初始值。在第2轮中,当R=96、G=0、B=224时,颜色距离为2.15,在第2轮中为最大,为第2轮最佳RGB数值,并作为第3轮的初始值。以此类推,当R=96、G=0、B=220时,颜色距离为2.16,在第5轮中为最大。因此选择该值作为最佳的夜间光源色,称为R光。
表 1 每轮柑橘和叶片HSV颜色距离Table 1. HSV color distance between citruses and leaves in each round图像
Image第1轮 Round 1 第2轮 Round 2 第3轮 Round 3 第4轮 Round 4 第5轮 Round 5 RGB 颜色距离
Color
distanceRGB 颜色距离
Color
distanceRGB 颜色距离
Color
distanceRGB 颜色距离
Color
distanceRGB 颜色距离
Color
distance1 R=128, G=0, B=128 2.02 R=64, G=0, B=192 2.04 R=96, G=0, B=224 2.15 R=96, G=0, B=224 2.15 R=96, G=0, B=224 2.15 2 R=64, G=0, B=128 1.99 R=96, G=0, B=192 2.00 R=80, G=0, B=224 2.04 R=96, G=0, B=216 1.90 R=92, G=0, B=224 2.09 3 R=64, G=0, B=64 1.78 R=32, G=0, B=192 1.62 R=112, G=0, B=224 2.06 R=96, G=0, B=232 1.91 R=100, G=0, B=224 1.88 4 R=64, G=0, B=192 2.04 R=32, G=0, B=160 1.41 R=112, G=0, B=208 2.03 R=88, G=0, B=232 1.87 R=100, G=0, B=220 1.84 5 R=128, G=0, B=192 1.80 R=64, G=0, B=160 2.01 R=96, G=0, B=208 2.01 R=88, G=0, B=224 1.89 R=96, G=0, B=220 2.16 6 R=192, G=0, B=192 1.90 R=96, G=0, B=160 2.06 R=80, G=0, B=208 1.84 R=88, G=0, B=216 1.92 R=92, G=0, B=220 2.06 7 R=192, G=0, B=128 2.07 R=96, G=0, B=224 2.15 R=80, G=0, B=240 1.86 R=112, G=0, B=216 2.01 R=92, G=0, B=228 1.93 8 R=192, G=0, B=64 1.91 R=64, G=0, B=224 1.89 R=96, G=0, B=240 1.82 R=112, G=0, B=224 2.06 R=96, G=0, B=228 1.92 9 R=128, G=0, B=64 1.98 R=32, G=0, B=224 1.79 R=112, G=0, B=240 1.87 R=112, G=0, B=232 2.08 R=100, G=0, B=228 1.95 1.3 图像数据采集及构建
采用最佳夜间光源色(R=96、G=0、B=220),在2021年12月19日夜间,于广东省广州市白云区百万果园采集夜间图像。对果园柑橘树进行不同角度(顺光、侧光)及不同果实分布情况(完整、遮挡、稀疏)的多样性图像采集,其中图像采集距离为50~150 cm,光照强度为296~385 lx,分别采用iPhone、小米手机和Azure Kinect DK相机采集图像,确保训练数据的多样性。共拍摄1 900张柑橘图像,从中选出1 688张具有代表性的图像,并使用标注工具lablelImg将图像标记为PASCEL VOC格式标签。采用8∶1∶1的数量比例将数据集划分为训练集、测试集和验证集,其中1 352张图像作为训练集,168张作为测试集,168张作为验证集。考虑到实时检测和采摘机器人的需求,本文采用YOLOv5s模型的深度和宽度作为主要框架。
1.4 改进的YOLOv5s模型
1.4.1 Coordinate attention(CA)注意力模块
CA模块是一种将位置信息嵌入到通道注意力中,在较少的计算量上获取更大区域信息的高效的注意力机制[25]。CA模块将通道注意力分解为2个不同方向的聚合特征进行特征编码,通过水平X以及垂直Y方向来捕获空间方向和位置信息,把所获取的信息在通道上进行加权融合,得到对方向感知的特征图,有助于网络更准确地定位到目标区域。CA模块简单、灵活且高效,可捕捉生成对空间选择注意力重要的位置信息,对遮挡和较小目标检测效果的提升较明显。
1.4.2 双向特征融合网络
双向特征金字塔网络(Bi-directional feature pyramid network,Bi-FPN)由Tan等[26]提出,通过重复应用自顶向下和自底向上的方式,对不同分辨率的输入图像进行快速有效的特征信息融合,可以更好地改善对遮挡、重叠和小目标的检测效果。其结构如图2所示。
图 2 Bi-FPN网络结构C3~C7表示网络的层数;$ {{P}}_{{i}}^{\text{in}} $表示输入层,$ {{P}}_{{i}}^{\text{td}} $表示中间层,$ {{P}}_{{i}}^{\text{out}} $表示输出层;w和w′等表示不同的权值矩阵;为了避免数值不稳定的小数值,∈=0.001Figure 2. Network architecture of Bi-FPNC3~C7 represents the number of layers in the network; $ {{P}}_{{i}}^{\text{in}} $ represents the input layer, $ {{P}}_{{i}}^{\text{td}} $ represents the middle layer, $ {{P}}_{{i}}^{\text{out}} $ represents the output layer; w and w′ indicate different weight matrixes; In order to avoid the unstable small values, ∈=0.001在此结构中,对从Backbone接收来的信息,中间层(
$ {{P}}_{{i}}^{\text{td}} $ )对上一层和同一尺度层进行信息融合,对于输出层($ {{P}}_{{i}}^{\text{out}} $ ),在同一尺度之间添加一个跳跃连接,实现自上而下及自下而上多层级双向特征的融合。同时,在每次卷积后利用批量归一化和激活函数集成双向跨尺度连接,并完成快速归一化。相比PANet结构[27],Bi-FPN删除了3层和7层网络(C3、C7)输入边中间的节点,仅加入同尺度的特征信息,在保证准确率的同时减少多余的计算量,提高检测速度。1.4.3 BI-YOLOv5s模型
在夜间环境中,由于灯光亮度缘故,有较多区域不能很好地覆盖;同时柑橘树上存在枝叶遮挡,部分目标果实较小,导致果实识别难度加大。结合所采集图像的特点,为解决这些存在的问题,本文采用可以提取更多信息的Bi-FPN双向特征融合替代YOLOv5s中PANet结构作为Neck,增强对目标果实颜色特征信息的提取能力。针对夜间图像存在较多小目标果实,借鉴Zhu等[28]的方法提出THP-YOLOv5思路,采用多尺度目标检测方法,添加小预测头,提高对小目标果实的识别能力。同时,将Backbone及Neck末端层C3模块替换成融入Transformer encoder block结构的C3TR模块,减少浮点运算量并提高全局信息和丰富上下文信息。基于YOLOv5s改进后的网络结构如图3所示,将其命名为BI-YOLOv5s。
图 3 BI-YOLOv5s网络结构Focus:采用切片操作将输入特征图拆成多个低分辨率特征图,CBS:卷积+批量归一化+SiLU激活函数,C3_B1:采用BottleNeck 1结构拼接的C3模块,C3_B2:采用BottleNeck 2结构拼接的C3模块,SPP:空间金字塔池化,C3TR:融入Transformer结构的C3模块,Bi_Concat:通过Bi-FPN结构连接Figure 3. Network architecture of BI-YOLOv5sFocus: Splitting the input feature map into multiple low-resolution feature maps by slicing operation, CBS: Convolution+ batch normalization+ SiLU activation function, C3_B1: A C3 module concatenated with BottleNeck1structure, C3_B2: A C3 module concatenated with BottleNeck 2 structure, SPP: Spatial pyramid pooling, C3TR: A C3 module integrated with a Transformer structure, Bi_Concat: Connecting by Bi-FPN structure在Backbone中,对C3模块剪切重复次数,减少卷积参数计算量,提高检测速度;将Backbone中第2、4、6层特征输入到Bi-FPN结构中,对不同位置进行多次自上而下的双向特征信息融合来获得更丰富的特征,减少信息丢失的同时充分学习不同层级分辨率的特征信息。同时引入CA注意力模块,提高对重要特征和位置信息的提取能力,帮助模型精准定位和识别感兴趣的目标和位置,提升对夜间自然环境下遮挡柑橘检测的性能。
2. 模型训练与结果分析
2.1 试验配置环境
软硬件平台配置如下:CPU为i7-11700K、3.60 GHz主频、六核十二线程、内存32 GB,显卡GPU为Nvidia GeForce GTX3090,操作系统为Windows10,并搭配环境CUDA 11.3、Cudnn 7.6、Python 3.8版本的Pytorch深度学习框架。
2.2 模型训练参数
采用YOLOv5作者提供的预训练权重[29]作为模型训练的初始化权重参数,模型参数设置为通过随机梯度下降法优化器进行梯度更新,初始学习率为0.01,学习下降因子为0.005,动量因子为0.937,输入图像尺寸为640像素×640像素,以24为1个批处理量,最大迭代次数为100次。
2.3 评价指标
在深度学习目标检测算法中,通常需要衡量算法的性能。本文评价算法性能和有效性的相关指标为精准率(Precision,P)、召回率(Recall,R)、F1分数(F1 score)以及平均准确率(Average precision,AP),计算公式如下所示。
$$ P=\dfrac{{\rm{TP}}}{{\rm{TP}}+{\rm{FP}}}\times 100{\text{%}} \text{,} $$ (10) $$ R=\dfrac{{\rm{TP}}}{{\rm{TP}}+{\rm{FN}}}\times 100{\text{%}} \text{,} $$ (11) $$ F1\;{\rm{score}} = \dfrac{{2PR}}{{PR}}\times 100\text{%}\text{,} $$ (12) $$ {\rm{AP}} = \displaystyle\int_0^1 {PR{\text{d}}R} \text{,} $$ (13) 式中,TP指预测为正类的正样本(真正例);FN指预测为负类的正样本(假反例);FP指预测为正类的负样本(假正例);P指在图像中所有预测的样本为正类的比例;R指预测正类的样本与所有正样本的比例;F1分数为P与R的调和平均值,综合了两者的指标;AP为P与R构成的P-R曲线下的面积,通常AP越大,模型性能越好,是衡量目标检测模型性能的重要指标。综合衡量上述指标可以较好反映模型性能,此外,使用每秒帧数(Frame per second,FPS)来评估模型的检测速度。
2.4 结果与分析
2.4.1 消融试验结果
为了验证改进模型的效果,本文设置了消融试验,在同一模型参数和设备下进行训练,采用“2.3”的评价指标来衡量模型性能,表2为各模型在测试集上的表现。
表 2 各个模型消融试验Table 2. Ablation experiment for each model模型
Model精准率/%
Precision召回率/%
Recall平均准确率/%
Average precisionF1分数/%
F1 score检测速度/(帧·s−1)
Detection speedYOLOv5s 90.2 90.7 94.8 90.4 71 YOLOv5s+CA 91.5 91.0 95.8 91.2 58 YOLOv5s+Bi-FPN 92.3 92.2 96.2 92.2 62 YOLOv5s+Bi-FPN+CA 93.0 91.4 96.8 92.2 45 BI-YOLOv5s 93.4 92.2 97.1 92.8 40 从表2可以看出,添加了CA注意力模块的YOLOv5s模型,其精准率和平均准确率分别提升1.3和1.0个百分点,说明CA注意力模块能提高从图像中提取空间位置信息和感兴趣区域的能力。然后采用Bi-FPN结构替换YOLOv5s的PANet实现双向特征信息的融合,平均准确率比YOLOv5s提升了1.4个百分点。通过Bi-FPN结构和CA模块结合,其平均准确率比YOLOv5s提升了2.0个百分点,表明两者结合是有效的,可提升模型的检测准确率。从消融试验结果可看出,本文所提出的模型可以有效提升各方面表现性能,与YOLOv5s相比,精准率和平均准确率分别提高了3.2和2.3个百分点;增加网络层数降低了检测速度,但模型的检测性能有了很大的提升。
2.4.2 不同模型的比较分析
为了充分验证本文模型的有效性,对ShuffleNetV2-YOLOv5s、GhostNet-YOLOv5s、YOLOv5s与本文模型在相同的数据集下进行测试和对比分析,各模型在测试集上的各项性能结果如表3所示。
表 3 不同模型测试结果对比Table 3. Comparison of test results of different models模型
Model精准率/%
Precision召回率/%
Recall平均准确率/%
Average precisionF1分数/%
F1 score检测速度/(帧·s−1)
DetectionspeedYOLOv5s 90.2 90.7 94.8 90.4 71 ShuffleNetV2-YOLOv5s 87.0 85.6 91.8 86.3 62 GhostNet-YOLOv5s 88.7 86.7 93.2 87.7 42 BI-YOLOv5s 93.4 92.2 97.1 92.8 40 本文模型BI-YOLOv5s的精准率、召回率、平均准确率及F1分数均为最高;其中,平均准确率比YOLOv5s提高了2.3个百分点。与ShuffleNetV2-YOLOv5s、Ghostnet-YOLOv5s相比,在检测速度降低幅度较小的情况下,本文模型的平均准确率分别提高了5.3和3.9个百分点。对比结果表明,本文模型的检测性能更优,有效实现双向特征信息融合,提升了各方面的性能,具有更高的精准率和平均准确率。虽然检测速度低于其他模型的,但已达到实时检测速度大于25帧/s的需求,满足水果采摘机器人的要求。图4展示了各模型对密集遮挡以及稀疏果实的检测效果。在密集遮挡目标果实中,YOLOv5s模型对遮挡较严重及距离远的小目标果实的识别效果较差,比本文模型漏检了6个果实;在稀疏目标果实中,出现3个果实在遮挡条件下漏检的现象。以ShuffleNetV2、GhostNet为骨架的YOLOv5s模型的检测速度较高于本文模型的,但识别准确率较低,均漏检了11个果实,有较多遮挡的果实未能识别。本文模型可以准确地识别出目标果实,漏检现象较少。
上述结果表明,本文模型可以充分融合低层位置信息和深层丰富的语义信息,减少图像特征信息丢失,有效利用不同分辨率图像的特征,整体性能比其他模型更好,对夜间自然环境下柑橘的识别具有更强的鲁棒性。
2.4.3 不同果实状态检测性能
为了进一步验证模型对不同果实状态的识别能力,本文将原始测试集分为弱光照、小目标以及重叠遮挡3种不同果实状态数据集,并分别使用改进前、后模型对3种数据集进行测试,结果如表4所示。改进前、后模型对3种数据集的检测均有较高的平均准确率;改进后的BI-YOLOv5s模型对3种数据集的平均准确率比YOLOv5s分别提高了2.0、1.7和2.5个百分点,说明本文模型对不同状态果实检测的准确度均有较明显的提升效果。
表 4 不同模型对不同果实状态数据集的测试结果Table 4. Test results of different models for data sets of different fruit states模型
Model果实状态
Fruit state精准率/%
Precision召回率/%
Recall平均准确率/%
Average precisionF1分数/%
F1 scoreYOLOv5s 弱光照 Weak illumination 87.4 90.9 93.7 89.1 小目标 Small object 89.0 92.4 95.1 90.7 重叠遮挡 Overlap and occlusion 90.0 92.9 95.2 91.4 BI-YOLOv5s 弱光照 Weak illumination 88.2 91.8 95.7 90.0 小目标 Small object 92.1 92.6 96.8 92.3 重叠遮挡 Overlap and occlusion 93.5 94.4 97.7 93.9 通过比较2种模型对3种果实状态的检测效果,YOLOv5s模型对不同果实状态的检测均存在较多漏检情况,共漏检16个果实,而BI-YOLOv5s模型能检测到更多的小目标以及重叠遮挡的果实,检测效果有显著的改善(图5)。试验结果表明,改进后模型对不同果实状态的识别能力更强,具有较高的识别准确率,更适合在夜间复杂环境下的柑橘识别。
2.4.4 与白光环境的对比分析
为了进一步验证本文模型在夜间环境下使用R光对柑橘的识别效果,本文采用同光源设备SuteFoto T6的白光模式,在该模式光强为100%、色温为5 900 K的光照条件下采集夜间柑橘图像,并筛选出R光数据集相同数量的1 688张图像,分别用于YOLOv5s及BI-YOLOv5s模型训练,与R光环境下模型进行对比分析。图6为各模型训练集的损失和平均准确率曲线。R光环境下,改进前、后的模型均优于白光环境下的模型,说明R光在夜间环境下可以减少由光线不均匀产生阴影造成的影响,能够更好地突出柑橘的颜色特征,使模型检测性能更好,具有更高的识别准确度。选取稀疏、重叠和遮挡状态果实的图像在顺光和侧光条件下进行识别,并比较识别效果,2种灯光在不同光照角度下对柑橘的识别效果和果实检测数量如图7及表5所示。
表 5 2种灯光不同光照角度下BI-YOLOv5s模型检测的果实数量统计Table 5. Quantity statistics of detected fruit by BI-YOLOv5s model under different angles of two lights灯光类型
Light type光照角度
Illumination angle实际数量
Actual quantity正检数量
Positive quantity漏检数量
Missed quantity误检数量
False quantity正确率/%
AccuracyR光
R light顺光 Frontlighting 52 50 2 0 96.1 侧光 Sidelighting 34 32 2 2 94.1 整体 Overall 86 82 4 2 95.3 白光
White light顺光 Frontlighting 52 44 8 0 84.6 侧光 Sidelighting 34 29 5 0 85.3 整体 Overall 86 73 13 0 84.9 结合图7和表5可看出,在顺光图像中,实际果实总数量为52个,在白光环境下识别出44个;在R光下识别出50个,相比白光,R光对遮挡及小目标的识别能力较强。在侧光图像中,白光环境对侧光1图像的识别效果较好,识别出所有目标果实;但对侧光2和侧光3图像共漏检了5个果实,整体识别正确率为85.3%,其原因是枝叶遮挡及柑橘颜色特征不明显。而在R光环境下,整体识别能力较好,但由于R光灯色的特点,在侧光下使得个别果实颜色变暗,无法有效提取果实的颜色特征;同时一些树叶枯黄,在该光源色下呈现跟果实相同颜色,从而出现个别漏检和误检现象。
通过以上2种灯光对比分析可知,R光环境下BI-YOLOv5s模型的整体识别正确率为95.3%,比白光环境下高10.4个百分点,说明R光能够更好地突出柑橘颜色特征,对枝叶遮挡和较小果实的检测性能更强。
3. 结论
夜间自然环境中准确检测柑橘是实现机器人全天候采摘的重要前提,提高夜间图像的质量并获得准确的果实信息对于夜间果实识别至关重要。为此,本文采用了一种可以调节光源颜色的人工光源来采集柑橘夜间图像,从而有效突出夜间环境下柑橘的颜色特征,并提出了一种结合Bi-FPN结构和CA模块的BI-YOLOv5s模型,实现了对遮挡和小目标柑橘的准确识别。该模型在测试集上的平均准确率为97.1%,检测速度为40 帧/s,为夜间采摘机器人提供了视觉技术支持。
通过改变光源设备的RGB数值可以获得不同的光源色,可广泛应用于夜间环境下不同果实的检测,为快速准确地检测果实提供了新思路。本文提出的方法取得了良好的效果,但是由于该光源颜色的特性,在研究试验中出现一些果实误检和漏检的情况,未来将通过夜间获取具有更多果实信息的图像并提高目标检测模型的鲁棒性来进一步改进。
-
图 2 Bi-FPN网络结构
C3~C7表示网络的层数;$ {{P}}_{{i}}^{\text{in}} $表示输入层,$ {{P}}_{{i}}^{\text{td}} $表示中间层,$ {{P}}_{{i}}^{\text{out}} $表示输出层;w和w′等表示不同的权值矩阵;为了避免数值不稳定的小数值,∈=0.001
Figure 2. Network architecture of Bi-FPN
C3~C7 represents the number of layers in the network; $ {{P}}_{{i}}^{\text{in}} $ represents the input layer, $ {{P}}_{{i}}^{\text{td}} $ represents the middle layer, $ {{P}}_{{i}}^{\text{out}} $ represents the output layer; w and w′ indicate different weight matrixes; In order to avoid the unstable small values, ∈=0.001
图 3 BI-YOLOv5s网络结构
Focus:采用切片操作将输入特征图拆成多个低分辨率特征图,CBS:卷积+批量归一化+SiLU激活函数,C3_B1:采用BottleNeck 1结构拼接的C3模块,C3_B2:采用BottleNeck 2结构拼接的C3模块,SPP:空间金字塔池化,C3TR:融入Transformer结构的C3模块,Bi_Concat:通过Bi-FPN结构连接
Figure 3. Network architecture of BI-YOLOv5s
Focus: Splitting the input feature map into multiple low-resolution feature maps by slicing operation, CBS: Convolution+ batch normalization+ SiLU activation function, C3_B1: A C3 module concatenated with BottleNeck1structure, C3_B2: A C3 module concatenated with BottleNeck 2 structure, SPP: Spatial pyramid pooling, C3TR: A C3 module integrated with a Transformer structure, Bi_Concat: Connecting by Bi-FPN structure
表 1 每轮柑橘和叶片HSV颜色距离
Table 1 HSV color distance between citruses and leaves in each round
图像
Image第1轮 Round 1 第2轮 Round 2 第3轮 Round 3 第4轮 Round 4 第5轮 Round 5 RGB 颜色距离
Color
distanceRGB 颜色距离
Color
distanceRGB 颜色距离
Color
distanceRGB 颜色距离
Color
distanceRGB 颜色距离
Color
distance1 R=128, G=0, B=128 2.02 R=64, G=0, B=192 2.04 R=96, G=0, B=224 2.15 R=96, G=0, B=224 2.15 R=96, G=0, B=224 2.15 2 R=64, G=0, B=128 1.99 R=96, G=0, B=192 2.00 R=80, G=0, B=224 2.04 R=96, G=0, B=216 1.90 R=92, G=0, B=224 2.09 3 R=64, G=0, B=64 1.78 R=32, G=0, B=192 1.62 R=112, G=0, B=224 2.06 R=96, G=0, B=232 1.91 R=100, G=0, B=224 1.88 4 R=64, G=0, B=192 2.04 R=32, G=0, B=160 1.41 R=112, G=0, B=208 2.03 R=88, G=0, B=232 1.87 R=100, G=0, B=220 1.84 5 R=128, G=0, B=192 1.80 R=64, G=0, B=160 2.01 R=96, G=0, B=208 2.01 R=88, G=0, B=224 1.89 R=96, G=0, B=220 2.16 6 R=192, G=0, B=192 1.90 R=96, G=0, B=160 2.06 R=80, G=0, B=208 1.84 R=88, G=0, B=216 1.92 R=92, G=0, B=220 2.06 7 R=192, G=0, B=128 2.07 R=96, G=0, B=224 2.15 R=80, G=0, B=240 1.86 R=112, G=0, B=216 2.01 R=92, G=0, B=228 1.93 8 R=192, G=0, B=64 1.91 R=64, G=0, B=224 1.89 R=96, G=0, B=240 1.82 R=112, G=0, B=224 2.06 R=96, G=0, B=228 1.92 9 R=128, G=0, B=64 1.98 R=32, G=0, B=224 1.79 R=112, G=0, B=240 1.87 R=112, G=0, B=232 2.08 R=100, G=0, B=228 1.95 表 2 各个模型消融试验
Table 2 Ablation experiment for each model
模型
Model精准率/%
Precision召回率/%
Recall平均准确率/%
Average precisionF1分数/%
F1 score检测速度/(帧·s−1)
Detection speedYOLOv5s 90.2 90.7 94.8 90.4 71 YOLOv5s+CA 91.5 91.0 95.8 91.2 58 YOLOv5s+Bi-FPN 92.3 92.2 96.2 92.2 62 YOLOv5s+Bi-FPN+CA 93.0 91.4 96.8 92.2 45 BI-YOLOv5s 93.4 92.2 97.1 92.8 40 表 3 不同模型测试结果对比
Table 3 Comparison of test results of different models
模型
Model精准率/%
Precision召回率/%
Recall平均准确率/%
Average precisionF1分数/%
F1 score检测速度/(帧·s−1)
DetectionspeedYOLOv5s 90.2 90.7 94.8 90.4 71 ShuffleNetV2-YOLOv5s 87.0 85.6 91.8 86.3 62 GhostNet-YOLOv5s 88.7 86.7 93.2 87.7 42 BI-YOLOv5s 93.4 92.2 97.1 92.8 40 表 4 不同模型对不同果实状态数据集的测试结果
Table 4 Test results of different models for data sets of different fruit states
模型
Model果实状态
Fruit state精准率/%
Precision召回率/%
Recall平均准确率/%
Average precisionF1分数/%
F1 scoreYOLOv5s 弱光照 Weak illumination 87.4 90.9 93.7 89.1 小目标 Small object 89.0 92.4 95.1 90.7 重叠遮挡 Overlap and occlusion 90.0 92.9 95.2 91.4 BI-YOLOv5s 弱光照 Weak illumination 88.2 91.8 95.7 90.0 小目标 Small object 92.1 92.6 96.8 92.3 重叠遮挡 Overlap and occlusion 93.5 94.4 97.7 93.9 表 5 2种灯光不同光照角度下BI-YOLOv5s模型检测的果实数量统计
Table 5 Quantity statistics of detected fruit by BI-YOLOv5s model under different angles of two lights
灯光类型
Light type光照角度
Illumination angle实际数量
Actual quantity正检数量
Positive quantity漏检数量
Missed quantity误检数量
False quantity正确率/%
AccuracyR光
R light顺光 Frontlighting 52 50 2 0 96.1 侧光 Sidelighting 34 32 2 2 94.1 整体 Overall 86 82 4 2 95.3 白光
White light顺光 Frontlighting 52 44 8 0 84.6 侧光 Sidelighting 34 29 5 0 85.3 整体 Overall 86 73 13 0 84.9 -
[1] 王刘坤, 祁春节. 中国柑橘主产区的区域比较优势及其影响因素研究: 基于省级面板数据的实证分析[J]. 中国农业资源与区划, 2018, 39(11): 121-128. [2] REN D, YANG S. Intelligent automation with applications to agriculture[J]. Intelligent Automation and Soft Computing, 2016, 22(2): 227-228. doi: 10.1080/10798587.2015.1095473
[3] KOIRALA A, WALSH K B, WANG Z, et al. Deep learning: Method overview and review of use for fruit detection and yield estimation[J]. Computers and Electronics in Agriculture, 2019, 162: 219-234. doi: 10.1016/j.compag.2019.04.017
[4] 杨长辉, 刘艳平, 王毅, 等. 自然环境下柑橘采摘机器人识别定位系统研究[J]. 农业机械学报, 2019, 50(12): 14-22. doi: 10.6041/j.issn.1000-1298.2019.12.002 [5] XIANG R. Image segmentation for whole tomato plant recognition at night[J]. Computers and Electronics in Agriculture, 2018, 154: 434-442. doi: 10.1016/j.compag.2018.09.034
[6] HAYASHI S, SHIGEMATSU K, YAMAMOTO S, et al. Evaluation of a strawberry-harvesting robot in a field test[J]. Biosystems Engineering, 2010, 105(2): 160-171. doi: 10.1016/j.biosystemseng.2009.09.011
[7] AREFI A, MOTLAGH A M, MOLLAZADE K, et al. Recognition and localization of ripen tomato based on machine vision[J]. Australian Journal of Crop Science, 2011, 5(10): 1144-1149.
[8] JI W, QIAN Z, XU B, et al. A nighttime image enhancement method based on Retinex and guided filter for object recognition of apple harvesting robot[J]. International Journal of Advanced Robotic Systems, 2018, 15(1): 1729881417753871.
[9] PAYNE A, WALSH K, SUBEDI P, et al. Estimating mango crop yield using image analysis using fruit at ‘stone hardening’ stage and night time imaging[J]. Computers and Electronics in Agriculture, 2014, 100: 160-167. doi: 10.1016/j.compag.2013.11.011
[10] TANG Y, CHEN M, WANG C, et al. Recognition and localization methods for vision-based fruit picking robots: A review[J]. Frontiers in Plant Science, 2020, 11: 510. doi: 10.3389/fpls.2020.00510.
[11] XIONG J, LIN R, LIU Z, et al. The recognition of litchi clusters and the calculation of picking point in a nocturnal natural environment[J]. Biosystems Engineering, 2018, 166: 44-57. doi: 10.1016/j.biosystemseng.2017.11.005
[12] FU L, WANG B, CUI Y, et al. Kiwifruit recognition at nighttime using artificial lighting based on machine vision[J]. International Journal of Agricultural and Biological Engineering, 2015, 8(4): 52-59.
[13] 项荣, 段鹏飞. 番茄采摘机器人夜间照明系统设计与试验[J]. 农业机械学报, 2016, 47(7): 8-14. doi: 10.6041/j.issn.1000-1298.2016.07.002 [14] 赵德安, 刘晓洋, 陈玉, 等. 苹果采摘机器人夜间识别方法[J]. 农业机械学报, 2015, 46(3): 15-22. doi: 10.6041/j.issn.1000-1298.2015.03.003 [15] LIANG C, XIONG J, ZHENG Z, et al. A visual detection method for nighttime litchi fruits and fruiting stems[J]. Computers and Electronics in Agriculture, 2020, 169: 105192. doi: 10.1016/j.compag.2019.105192.
[16] 王辉, 张帆, 刘晓凤, 等. 基于DarkNet-53和YOLOv3的水果图像识别[J]. 东北师大学报(自然科学版), 2020, 52(4): 60-65. [17] 熊俊涛, 郑镇辉, 梁嘉恩, 等. 基于改进YOLO v3网络的夜间环境柑橘识别方法[J]. 农业机械学报, 2020, 51(4): 199-206. doi: 10.6041/j.issn.1000-1298.2020.04.023 [18] 吕石磊, 卢思华, 李震, 等. 基于改进YOLOv3-LITE轻量级神经网络的柑橘识别方法[J]. 农业工程学报, 2019, 35(17): 205-214. doi: 10.11975/j.issn.1002-6819.2019.17.025 [19] 郑太雄, 江明哲, 冯明驰. 基于视觉的采摘机器人目标识别与定位方法研究综述[J]. 仪器仪表学报, 2021, 42(9): 28-51. [20] CHEN J, WU J, WANG Z, et al. Detecting ripe fruits under natural occlusion and illumination conditions[J]. Computers and Electronics in Agriculture, 2021, 190: 106450. doi: 10.1016/j.compag.2021.106450.
[21] 熊俊涛, 林睿, 刘振, 等. 夜间自然环境下荔枝采摘机器人别技术[J]. 农业机械学报, 2017, 48(11): 28-34. doi: 10.6041/j.issn.1000-1298.2017.11.004 [22] LIU X, ZHAO D, JIA W, et al. A method of segmenting apples at night based on color and position information[J]. Computers and Electronics in Agriculture, 2016, 122: 118-123. doi: 10.1016/j.compag.2016.01.023
[23] 贾伟宽, 赵德安, 阮承治, 等. 苹果采摘机器人夜间图像降噪算法[J]. 农业工程学报, 2015, 31(10): 219-226. doi: 10.11975/j.issn.1002-6819.2015.10.029 [24] 赵桂兰, 姚其. 蔬果照明光源与物体的照明光谱反射关系研究[J]. 灯与照明, 2019, 43(2): 1-5. doi: 10.3969/j.issn.1008-5521.2019.02.002 [25] HOU Q, ZHOU D, FENG J. Coordinate attention for efficient mobile network design[EB/OL]. arXiv: 2103.02907v1 (2021-03-04) [2022-09-09]. https://arxiv.org/pdf/2103.02907.pdf.
[26] TAN M, PANG R, LE Q. EfficientDet: Scalable and efficient object detection[C]//Proceedings of IEEE/CFV Conference on Computer Vision and Pattern Recognition (CVPR). Seattle: IEEE, 2020: 10781-10790.
[27] LIU S, QI L, QIN H, et al. Path aggregation network for instance segmentation[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2018: 8759-8768.
[28] ZHU X, LYU S, WANG X, et al. TPH-YOLOv5: Improved YOLOv5 based on transformer prediction head for object detection on drone-captured scenarios[C]//IEEE/CVF Conference on Computer Vision and Pattern Recognition Workshops. Virtual Conference: IEEE, 2021: 2778-2788.
[29] GLENN J. YOLOv5[CP/OL]. (2021-01-15) [2022-03-12]. https://github.com/ultralytics/yoloV5.
-
期刊类型引用(5)
1. 李辉,张俊,俞烁辰,李志鑫. 基于深度学习的类球状水果采摘识别算法研究进展. 果树学报. 2025(02): 412-426 . 百度学术
2. 朱德明,程香平,邱伊健,李天赐,万翔,孙旭,韦江,付远,饶雄海. 基于深度学习的农作物图像识别技术研究进展. 江西科学. 2025(01): 154-161 . 百度学术
3. 黎施欣,范小平. 图像处理与识别在果蔬成熟度监测中的研究及应用. 包装工程. 2024(03): 153-164 . 百度学术
4. 赵玉清,贾奥莹,王白娟,邓航宇,向铠铭,张悦. 柑橘果实采摘机器人目标识别算法研究进展. 江苏农业学报. 2024(08): 1552-1560 . 百度学术
5. 刘敏聪,任红卫,王江龙,吴东萍,罗瑞超,利金朗. 基于改进YOLOv5的水果识别分类算法. 广东石油化工学院学报. 2024(06): 49-54 . 百度学术
其他类型引用(4)