基于深度学习与目标跟踪的苹果检测与视频计数方法

2022-01-27 02:39高芳芳武振超周忠贤傅隆生
农业工程学报 2021年21期
关键词:卡尔曼滤波计数果园

高芳芳,武振超,索 睿,周忠贤,李 瑞,傅隆生,张 昭

基于深度学习与目标跟踪的苹果检测与视频计数方法

高芳芳1,武振超1,索 睿1,周忠贤1,李 瑞2,傅隆生1,3,4※,张 昭5

(1. 西北农林科技大学机械与电子工程学院,杨凌 712100; 2. 绥德县兰花花生态食品有限责任公司,绥德 718000;3. 农业农村部农业物联网重点实验室,杨凌 712100; 4. 陕西省农业信息感知与智能服务重点实验室,杨陵 712100;5. 北达科他州立大学农业与生物系统工程系,美国法戈 58102)

基于机器视觉技术自动检测苹果树上的果实并进行计数是实现果园产量测量和智慧果园生产管理的关键。该研究基于现代种植模式下的富士苹果视频,提出基于轻量级目标检测网络YOLOv4-tiny和卡尔曼滤波跟踪算法的苹果检测与视频计数方法。使用YOLOv4-tiny检测视频中的苹果,对检测到的果实采用卡尔曼滤波算法进行预测跟踪,基于欧氏距离和重叠度匹配改进匈牙利算法对跟踪目标进行最优匹配。分别对算法的检测性能、跟踪性能和计数效果进行试验,结果表明:YOLOv4-tiny模型的平均检测精度达到94.47%,在果园视频中的检测准确度达到96.15%;基于改进的计数算法分别达到69.14%和75.60%的多目标跟踪准确度和精度,较改进前算法分别提高了26.86和20.78个百分点;改进后算法的平均计数精度达到81.94%。该研究方法可有效帮助果农掌握园中苹果数量,为现代化苹果园的测产研究提供技术参考,为果园的智慧管理提供科学决策依据。

视频计数;YOLOv4-tiny;卡尔曼滤波器;匈牙利算法;果实匹配

0 引 言

苹果等经济作物产量信息的获取是精细技术体系中的重要环节,也是果农进行果园生产管理的关键指标。苹果是中国大规模种植的农产品之一,是农业经济发展的重要支柱[1]。随着苹果种植模式的改进,矮化密植、小树冠、宽行距、窄株距的现代苹果园栽培模式已成为主流,大幅提高了果园土地利用率[2]。果园产量的预测有助于有效利用资源并合理分配劳动力、仓储空间和采收设备等资源[3]。但是,当前商业果园中果实数量主要由人工抽样计数估测,耗时费力[4]。因此,果实的自动计数对获取果园产量信息至关重要。

近年来,面向果实测产的果实自动计数方法得到了广泛研究。Dorj等[5]利用果实的颜色特征对柑橘图像进行检测与计数研究,开发的算法与人工计数之间的决定系数2为0.93。Mekhalfi等[6]基于Viola-Jones目标检测算法检测田间环境下的猕猴桃图像并进行计数,试验在两个果园内的计数误差分别为6%和15%。尽管许多相关研究获得了较好的计数性能,但是这些研究都集中在静态图像[7-8],并未对视频中的果实进行动态的计数研究。

快速有效检测苹果树上的果实是实现果实视频计数的前提。传统的目标检测算法多依赖于目标的颜色、纹理和形状等特征,并结合形态学操作进行图像分割以检测出目标区域[9-12]。但是传统的算法难以兼顾实时性和准确性,且研究结果不具有通用性。基于深度学习的目标检测算法对数据集的表达更高效和准确,泛化能力更强,更容易应用于实际场景[13]。其中YOLO等的一阶检测算法与Faster R-CNN等的二阶检测算法相比具有较快的检测速度[14],被广泛应用于果实的检测研究[15-18]。

目标跟踪可以建立视频中相同果实的联系,是实现果实视频自动计数的另一重要环节。近年来,诸多学者提出了多种跟踪算法[19],主要用于军事航空航天、安全监控和智能驾驶领域[20-22]。其中卡尔曼滤波算法因为可以在连续变化的系统中进行状态估计,且占用内存较小而被广泛应用[23]。Wang等[24]基于卡尔曼滤波器对果园视频中的芒果果实进行运动跟踪,从而实现视频中果实的自动计数,其计数结果与人工计数结果比较产生了9.9%的重复计数和7.3%的计数错误,导致计数高出约2.6%。刘军等[25]通过匈牙利匹配和卡尔曼滤波算法实现车辆跟踪,改善了重叠遮挡时的车辆跟踪效果。

本文基于深度学习目标检测算法结合卡尔曼滤波器和改进匈牙利算法的目标跟踪框架实现视频中苹果的自动计数。为保证苹果检测跟踪算法的实时性与准确性,采用YOLOv4的简化版本,即YOLOv4-tiny,作为目标检测网络,以期在保证检测精度的前提下实现更快的处理速度。基于卡尔曼滤波算法对目标进行预测跟踪。基于欧式距离和交并比(Intersection over Union,IoU)改进匈牙利算法对目标进行匹配,降低目标产生过度计数的概率,提高果实计数精度。

1 材料与方法

1.1 试验数据采集

试验果园位于陕西省宝鸡市扶风县法门镇(107°9′ E,34°38′ N),以广泛种植的红富士品种为研究对象,于2020年的收获季节9月下旬采集了苹果图像和视频数据。现代化果园通过使用铁丝将树枝进行约束以规范树木生长,其株间距在0.3~1.5 m之间,行间距约为3.5~4.0 m,如图1a所示。研究人员通过控制搭载RealSense D435相机的遥控小车在树行间行走获取果园数据。为保证获取果树的完整视野,相机距离地面最低高度为1.43 m,距离树行最少2.07 m。共获取果园图像800张(如图1b所示),分辨率为720×1 280,采集时段为8:00–18:00,涵盖了顺光、逆光与侧光等可能的光照情况。采集同一果园的有效视频10个,保存为MP4格式,分辨率为720×1 280,视频帧率为30帧/s。

1.2 数据集制作

根据实际计数需求,人工标注了800张图像用于训练与测试检测网络。使用LabelImg工具对原始数据集中苹果目标进行边界框标注。标注时将苹果的最小外接矩形框作为真实框,仅对可人工识别或能推测出果实轮廓的苹果目标进行标记,其中处于树行后排和图像边界的果实以及掉落在地和绑在树上的果实不进行标注。

采用旋转、镜像翻转、运动模糊和亮度变换对原始图像数据进行扩增。数据扩增是深度学习中常用的方法,即在不改变图像类别的情况下,增加训练数据集,让数据集尽可能的多样化,这有助于改善学习过程并提高模型的泛化能力[26]。使用自行开发的软件将800张原始数据扩增至8 000张后,并经人工检查确认扩增结果无误。通过对原始图像进行旋转和镜像翻转处理改变苹果的分布方向,对原始图像进行90°、180°和270°度旋转,以及水平和垂直翻转操作扩大数据集为4 800张;为更好的检测运动中的果实目标,研究通过运动模糊操作扩增数据集至6 400张;通过亮度变换增强原始数据集的亮度范围,将数据集扩增为8 000张。按照4:1随机划分为训练集和测试集[27]。

1.3 果实多目标跟踪计数方法

图2为本文方法的处理流程图。算法主要包含以下步骤:1)检测视频:使用YOLOv4-tiny网络检测视频中的苹果,得到目标检测框和相应特征;2)预测目标:使用卡尔曼滤波算法对目标在视频中下一帧的位置和状态进行预测;3)匹配目标:使用改进的匈牙利算法对视频前后两帧之间若干目标进行最优匹配,得到目标在视频中的轨迹,匹配失败的目标轨迹将被暂时保存,并继续参与后续帧预测匹配,直到该目标连续30帧都匹配失败后被视为消失果实,进而删除该轨迹。匹配成功则输出结果,并进行参数更新,重新开始目标检测。

图2 果实计数流程图

1.3.1 基于YOLOv4-tiny的果实检测

在使用基于YOLO深度学习网络进行目标检测方面,YOLOv4-tiny可以快速且高精度的检测果实。YOLO于2016年被首次提出,近年来不断改进,产生了YOLOv2、YOLOv3和YOLOv4等系列网络。相应的专为低端图像处理器(Graphic Processing Unit,GPU)设备而设计的轻量级网络,如YOLOv3-tiny和YOLOv4-tiny,也随之被提出。其中,YOLOv4-tiny在具有80个分类类别的MS COCO数据集中实现了40.2%的mAP(mean Average Precision)[28],比YOLOv3-tiny高7.1%,。因此,本研究拟选择YOLOv4-tiny进行果实检测。

YOLOv4-tiny网络包括Darknet层和YOLO层两部分,Darknet是YOLOv4-tiny的特征提取层,YOLO层是目标检测层。该网络层主要由卷积层和池化层构成,如图3所示,网络中每层的输出特征图尺寸表示为“分辨率宽×分辨率高×通道数/步长”。网络主要包含1个输入层(图像输入尺寸为416×416),21个带激活的卷积层(激活函数为Leaky和Linear),11个路由层,3个最大池化层和2个输出层(输出层特征图尺度为13×13,26×26)。其中11个路由层均分布在卷积层之后,用于在当前层引出之前卷积所得到的特征层。

图3 YOLOv4-tiny网络结构

YOLOv4-tiny网络与YOLO系列其他网络一样采用darknet深度学习框架实现输入图像端到端的训练。YOLO网络首先将输入图像划分为×网格(cell)[29]。如果一个对象的中心落在某cell内,则该cell负责检测该对象。每个cell都预测边界框(bounding box)和这些框的置信度得分。每个bounding box包含5个预测参数:和confidence,其中(,)表示目标检测框的坐标,(,)是目标检测框的宽度和高度。最后通过非极大值抑制选择置信度最高的bounding box作为最后结果。

1.3.2 基于卡尔曼滤波的果实跟踪

卡尔曼滤波器是一种广泛使用的线性系统的最优跟踪算法。由于本文获取的果园视频帧率达到30帧/s,视频序列之间果实目标的位置变化很小,可基本视为匀速运动[28],因此可假设果实跟踪系统随时间变化是线性相关的。算法采用匀速和线性观测模型预测和更新目标轨 迹[30]。在预测阶段,卡尔曼滤波器使用视频上一帧的估计,做出对当前帧的预测,即根据YOLOv4-tiny网络的检测位置预测对应的果实跟踪位置和其协方差矩阵。

在更新阶段,滤波器利用对当前帧的观测值优化在预测阶段获得的预测值,以获得一个更精确的新估计值,即根据检测果实和预测果实之间的匹配关系更新果实跟踪位置及其协方差矩阵。

1.3.3 基于改进匹配算法的果实匹配

匈牙利算法是一种在多项式时间内求解任务分配问题的组合优化算法,在本研究中被用来建立检测果实和预测果实之间的关系,即匹配果实。分别通过2.1与2.2小节算法得到果园视频中果实的检测结果与预测结果,并采用欧氏距离衡量卡尔曼预测结果和YOLOv4-tiny检测结果之间的相似性,如公式(6)所示。

式中(x,y)和(x,y)分别表示目标跟踪框坐标和检测框坐标。

在果实匹配阶段,使用匈牙利算法寻求预测结果与检测结果的匹配最优解,如公式(7)和(8)所示。匹配成功则进入卡尔曼滤波的更新阶段。

式中和分别是跟踪到的果实数目以及检测到的果实数目。

匹配失败主要分为跟踪目标匹配失败以及检测目标匹配失败。跟踪目标匹配失败是由YOLOv4-tiny网络的漏检或视频中果实的消失导致的,两种原因下视频帧中都不存在该果实的检测框,所以匹配失败。检测框中的目标匹配失败产生的原因也有两个可能,一是该果实是视频中新出现的,二是该果实长时间被遮挡。新出现的果实尚未存在轨迹,而长时间被遮挡但尚未判定为消失状态的果实尽管一直在被跟踪,但是由于跟踪框中并不存在该果实,使得卡尔曼滤波器预测结果的不确定性逐步增加,导致该果实的轨迹与检测结果不能成功匹配。

针对上述匹配失败问题,对匹配失败的跟踪目标与匹配失败的检测目标进行IoU匹配,如公式(9)所示,同时试验确定最大阈值以去除相关性较低的检测框与跟踪框之间的匹配,若匹配成功则进入卡尔曼滤波的更新阶段。

式中和分别表示检测框和跟踪框区域。

再次匹配失败的跟踪目标的轨迹将被暂时保存,并继续进行预测,直到该轨迹连续30帧都匹配失败才被视为消失果实,进而删除该轨迹。再次匹配失败的检测框中的目标将被视为新果实,进行跟踪。最后按照果实在视频帧中的出现顺序赋予果实数字ID(从1开始)实现果实的计数。

1.4 试验设计

本文试验分为以下3部分:

1)果实检测:首先应用5 120张果园图像基于Darknet框架分别训练出YOLOv3-tiny和YOLOv4-tiny网络模型,平台为配备有Intel Core i5-6400(2.70 GHz)的CPU, 16 GB的RAM和NVIDIA GTX 1080 8 GB的GPU的台式计算机。软件工具包括CUDA 9.0,cuDNN 7.1.3,Microsoft Visual Studio 2015,CMake-3.16,Python 3.6和OpenCV 3.1.0。根据网格搜索算法设置网络中的最优超参数为初始学习率为0.001,权重衰减系数为0.000 5,训练策略采用动量项为0.9的动量梯度下降算法,迭代次数设置为50 000。随后使用训练得到的网络模型分别测试果园图像,比较检测精度。

2)视频跟踪:使用卡尔曼滤波算法结合未改进和改进的匈牙利匹配算法对果园视频分别进行跟踪,对比效果,测试果实跟踪精度。测试平台为配备有Intel Core i7-8565U(1.80 GHz)CPU,8 GB RAM和NVIDIA GeForce MX250 2 GB GPU的笔记本电脑。软件工具包括CUDA 10.0,cuDNN 7.6.5,Microsoft Visual Studio 2017,Python 3.8和OpenCV 4.4.0。

3)果实计数:首先由3名研究人员分别对获取的10个果园视频进行计数,通过对3名研究人员所得计数结果进行均值处理,得到视频中果实的实际数目。计数时,研究人员将视频逐帧播放,首先记录第一帧中果实数目,然后在后续帧中记录新出现的果实数目,直至视频结束,得到视频中总的果实数目,实现视频中果实的计数。随后基于算法分别获取视频中的果实数目,并将结果与人工计数结果进行比较,测试果实计数精度。

1.5 试验评价指标

1.5.1 果实检测试验

本文使用准确率(Precision,)、召回率(Recall,)、准确率和召回率的调和平均数(1 score,1)、平均检测精度值(Average Detection Precision,ADP)和检测一张图像所用时间(Detection time)来评价训练得到的网络模型性能,计算公式如下所示。此外,使用视频平均检测准确度(Video Detection Accuracy,VDA)表示模型正确检测到的目标占所有目标的比值,数值越高表示模型性能越好。

式中TP(True Positive)为正确检测出来的目标果实;FP(False Positive)为误检出来的目标果实;FN(False Negative)为漏检的目标果实。

1.5.2 果实跟踪试验

本文使用果实ID切换率(ID Switch Rate,IDSR)、多目标跟踪准确度(Multiple Object Tracking Accuracy,MOTA)和多目标跟踪精度(Multiple Object Tracking Precision,MOTP)来评价跟踪算法性能。果实ID切换率指视频中ID发生变换的果实占所有计数果实的比值,值越小越好。多目标跟踪准确度表示跟踪算法在保持跟踪轨迹时的性能,值越大越好,如公式(14)所示。多目标跟踪精度指所有跟踪目标匹配成功率,精度越高表示算法性能越好,如公式(15)所示。

MOTA=/(14)

MOTP=/(15)

式中表示视频中跟踪到的果实总数目,即算法计数数目;表示视频中跟踪匹配正确的果实个数;表示视频中跟踪匹配的果实总数目,即检测数目。

1.5.3 果实计数试验

本文使用ACP值(Average Counting Precision)来评价算法的计数精度,计算公式如式(16)所示。

式中表示人工计数数目;v是视频个数。

2 试验结果与分析

2.1 果实检测试验结果

分别使用训练得到的YOLOv3-tiny和YOLOv4-tiny网络在相同的测试数据集下对比试验。测试集中共包含 1 600张图像,78 776个标注样本。YOLOv4-tiny和YOLOv3-tiny网络分别检测到73 266和71 501个TP样本,11 346和12 291个FP样本,5 510和7 275个FN样本。基于式(10)~(13)计算得到相应指标如表1所示,YOLOv4-tiny比YOLOv3-tiny网络检测精度高1.76个百分点,且检测用时少0.009 s/帧,证明研究所选用YOLOv4-tiny网络的优越性。此外,该网络94.47%的ADP可为卡尔曼滤波器提供可靠的果实检测位置信息,为果实计数的实现奠定基础。

表1 不同网络的检测结果对比

YOLOv4-tiny网络的检测效果如图4所示,部分果实被漏检或错误检测。错误检测主要是检测出了一些不需要被计数的果实样本,主要包括掉落在地的果实(图4b)、绑在树上的果实(图4c)、后排果树上的果实(图4d)和图像边界处遮挡较为严重的果实(图4e)。错误检测将会导致算法对一些非目标果实进行计数,从而增大果实计数数目。为降低错误检测带来的计数误差,算法在检测视频中的果实时,将会提高置信度阈值,以避免对检测精度较低的果实执行跟踪匹配过程。漏检果实多为被果实或树叶遮挡严重的果实,这是因为难以人工识别或推测出果实轮廓的苹果目标默认不做标记。漏检会导致果实的计数数目小于实际数目。但在本文中,研究对象为视频中的果实,它会因为连续出现在多个视频帧中而增加被检测到的概率。因此,视频中极少出现漏检果实。

使用训练得到的YOLOv4-tiny模型对同一果园的10段果园视频分别进行检测,过程中提高置信度阈值为0.8,其VDA达到96.15%,证明训练出的模型具备高精度检测果园视频的能力。视频中很少出现果实漏检的情况,因为多数果实都因连续出现在视频帧中而被成功检测。但是依然存在少量非目标果实被错误检测。未来研究将通过比较果实的检测框特征进一步去除非目标果实的错误检测,例如通过设置检测框长宽比阈值去除边界处非目标检测框、设置检测框面积阈值去除果树后排的非目标检测框等措施来改善果实计数效果。

b. 掉落在地的苹果b. Apples on the groundc. 绑在树上的苹果c. Apples tied to tree a. 果园图像检测示例a. Detection example of orchard imaged. 后排果树上的苹果d. Apples on the back row of treese. 图像边界处的苹果e. Apples at the boundary of image

图4 基于YOLOv4-tiny的苹果检测图

Fig.4 Image detection of apples based on YOLOv4-tiny

2.2 果实跟踪试验结果

基于开发的算法对果园视频进行跟踪试验并获得了良好的跟踪效果。图5是基于本文算法对果园视频序列跟踪结果的示例,图5a中1号以及3号果实在视频连续50帧中都一直被检测并跟踪,36号果实一直处于遮挡状态下直到该果实的置信度低于0.8不再执行跟踪匹配过程,可以看出,本文的算法可以有效跟踪果实。图5a中42号果实因为被遮挡导致该果实间断性的被检测,但是该果实的匹配过程并未出现差错。图5b中99号果实在运动过程中接连被两片树叶遮挡导致在视频的61帧到100帧之间出现间断性检测情况,第3片树叶的出现更是导致该果实在连续20多帧中都未能成功检测,但是该果实的匹配过程也并未出现差错。因此可以看出,尽管在视频运动过程中存在果实被间断性检测甚至长时间检测不到,但是算法依然可以跟踪到该目标,并保持原有ID不变。

图5 不同检测情况下果实跟踪结果示例

分别使用改进前与改进后计数算法对10个果园视频(220~524帧)进行跟踪计数,所得跟踪指标如表2所示。改进后算法的MOTA为69.14%,较改进前算法提高了26.86个百分点,MOTP提高了20.78个百分点,跟踪可信度得到大幅提高。果园环境的复杂以及视频拍摄的精度导致果实ID极易发生跳变,甚至存在部分果实的ID会多次发生跳变,这也是产生跟踪误差的主要原因。匹配算法的改进使得视频IDSR由25.91%降低到了11.92%,在一定程度上降低了果实跟踪误差。

表2 算法改进前后跟踪结果的比较

2.3 果实计数试验结果

由3名研究人员对采集到的原始视频进行计数获得果实数量真实值。研究人员秉持客观原则,对视频中所有可见果实进行计数。对3名研究人员所得计数结果进行均值处理得到相应视频中果实的实际数目。

视频中人工计数数值与算法计数数值的拟合结果如图6所示。基于算法获取的果实数目与人工计数获得的果实数目之间的RMSE为33.711。基于公式(16)计算10个果园视频的计数精度均在80%左右,平均精度为81.94%。从拟合结果看,决定系数2值为0.986,表明本文算法对现代果园视频中的果实计数值与真实值具有显著的线性相关性。由图6的数据可知,视频计数精度不会随着视频中果实数量的增多而降低,表明研究提出的方法具有较好的稳定性。

图6 视频中人工计数值与算法计数值的拟合结果

3 结 论

本文分别基于YOLOv4-tiny网络、卡尔曼滤波器和改进的匈牙利匹配算法对自然环境下的苹果进行检测、跟踪和匹配,提出了一种基于现代化苹果园视频的果实计数方法。基于所获取的果园图像训练YOLOv4-tiny网络模型,其平均检测精度值(Average Detection Precision,ADP)和视频平均检测准确度(Video Detection Accuracy,VDA)值分别达到94.47%和96.15%,检测一张图像仅用时0.018 s。通过该模型对视频中的果实进行逐帧检测,得到果实的像素坐标。基于卡尔曼滤波器对果实位置进行预测,并先后基于欧式距离和交并比(Intersection over Union,IoU)衡量预测果实和检测果实之间的相似性,通过匈牙利算法匹配连续视频帧中的相同果实,多目标跟踪准确度(Multiple Object Tracking Accuracy,MOTA)和多目标跟踪精度(Multiple Object Tracking Precision,MOTP)分别为69.14%和75.60%。最后,基于视频中果实出现顺序赋予果实数字ID实现果实的计数,且ACP值(Average Counting Precision)达到81.94%,在获得的10个果园视频中基于算法得到的果实数目与人工计数得到的果实数目的决定系数为0.986,RMSE为33.711,表明了算法的有效性,研究结果可以为实际应用过程中自动估计现代化苹果园以及其他现代化果园的果实数目提供参考。

[1] Gao F, Fu L, Zhang X, et al. Multi-class fruit-on-plant detection for apple in SNAP system using Faster R- CNN[J]. Computers and Electronics in Agriculture, 2020, 176: 105634.

[2] Fu L, Majeed Y, Zhang X, et al. Faster R-CNN-based apple detection in dense-foliage fruiting-wall trees using RGB and depth features for robotic harvesting[J]. Biosystems Engineering, 2020, 197: 245-256.

[3] Rahnemoonfar M, Sheppard C. Deep count: Fruit counting based on deep simulated learning[J]. Sensors, 2017, 17(4): 0905.

[4] Liu X, Chen S W, Liu C, et al. Monocular camera based fruit counting and mapping with semantic data association[J]. IEEE Robotics and Automation Letters, 2019, 4(3): 2296-2303.

[5] Dorj U O, Lee M, Yun S. An yield estimation in citrus orchards via fruit detection and counting using image processing[J]. Computers and Electronics in Agriculture, 2017, 140: 103-112.

[6] Mekhalfi M L, Nicolò C, Ianniello I, et al. Vision system for automatic on-tree kiwifruit counting and yield estimation[J]. Sensors, 2015, 20(15): 4214.

[7] Bargoti S, Underwood J P. Image segmentation for fruit detection and yield estimation in apple orchards[J]. Journal of Field Robotics, 2017, 34(6): 1039-1060.

[8] Koirala A, Walsh K B, Wang Z, et al. Deep learning for real-time fruit detection and orchard fruit load estimation: benchmarking of ‘MangoYOLO’[J]. Precision Agriculture, 2019, 20(6): 1107-1135.

[9] Lv J, Ni H, Wang Q, et al. A segmentation method of red apple image[J]. Scientia Horticulturae, 2019, 256: 108615.

[10] 傅隆生,孙世鹏,Manuel V,等.基于果萼图像的猕猴桃果实夜间识别方法[J].农业工程学报,2017,33(2):199-204.

Fu Longsheng, Sun Shipeng, Manuel V, et al. Kiwifruit recognition method at night based on fruit calyx image[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2017, 33(2): 199-204. (in Chinese with English abstract)

[11] 马翠花,张学平,李育涛,等.基于显著性检测与改进 Hough 变换方法识别未成熟番茄[J].农业工程学报,2016,32(14):219-226.

Ma Cuihua, Zhang Xueping, Li Yutao, et al. Identification of immature tomatoes base on salient region detection and improved Hough transform method[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2016, 32(14): 219-226. (in Chinese with English abstract)

[12] Liu X, Zhao D, Jia W, et al. A detection method for apple fruits based on color and shape features[J]. IEEE Access, 2019, 7: 67923-67933.

[13] 薛月菊,黄宁,涂淑琴,等.未成熟芒果德改进YOLOv2识别方法[J].农业工程学报,2018,34(7):173-179.

Xue Yueju, Huang Ning, Xu Shuqin, et al. Immature mango detection based on improved YOLOv2[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2018, 34(7): 173-179. (in Chinese with English abstract)

[14] Mazzia V, Khaliq A, Salvetti F, et al. Real-time apple detection system using embedded systems with hardware accelerators: An edge AI application[J]. IEEE Access, 2020, 8: 9102-9114.

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

Liu Fang, Liu Yukun, Lin Sen, et al. Fast recognition method for tomatoes under complex environments based on improved YOLO[J]. Transactions of the Chinese Society for Agricultural Machinery, 2020, 51(6): 229-237. (in Chinese with English abstract)

[16] 刘天真,滕桂法,苑迎春,等.基于改进 YOLOv3 的自然场景下冬枣果实识别研究[J].农业机械学报,2021,52(5):17-25.

Liu Tianzhen, Teng Guifa, Yuan Yingchun, et al. Winter jujube fruit recognition based on improved YOLOv3 under natural scene[J]. 2021, 52(5):17-25. (in Chinese with English abstract)

[17] 吕石磊,卢思华,李震,等.基于改进 YOLOv3-LITE 轻量级神经网络的柑橘识别方法[J].农业工程学报,2019,35(17):205-214.

Lv Shilei, Lu Sihua, Li Zhen, et al. Orange recognition method using improved YOLOv3-LITE lightweight neural network[J]. Transactions of the Chinese Society of Agricultural Engineering(Transactions of the CSAE), 2019, 35(17): 205-214. (in Chinese with English abstract)

[18] Kuznetsova A, Maleva T, Soloviev V. Using YOLOv3 algorithm with pre- And post-processing for apple detection in fruit-harvesting robot[J]. Agronomy, 2020, 10(7): 1016.

[19] Lukežič A, Vojíř T, Čehovin Z L, et al. Discriminative correlation filter tracker with channel and spatial reliability[J]. International Journal of Computer Vision, 2018, 126(7): 671-688.

[20] Lee H, Cho A, Lee S, et al. Vision-based measurement of heart rate from ballistocardiographic head movements using unsupervised clustering[J]. Sensors, 2019, 19: 3263.

[21] Ngo T N, Wu K, Yang E, et al. A real-time imaging system for multiple honey bee tracking and activity monitoring[J]. Computers and Electronics in Agriculture, 2019, 163(1): 104841.

[22] Wawrzyniak N, Hyla T, Popik A. Vessel detection and tracking method based on video surveillance[J]. Sensors, 2019, 19(23): 5230.

[23] Wojke N, Bewley A, Paulus D. Simple online and realtime tracking with a deep association metric[C]. Taipei: International Conference on Image Processing, 2018: 3645-3649.

[24] Wang Z, Walsh K, Koirala A. Mango fruit load estimation using a video based MangoYOLO — Kalman filter — hungarian algorithm method[J]. Sensors, 2019, 19(12): 2742.

[25] 刘军,后士浩,张凯,等.基于增强 Tiny YOLOV3 算法的车辆实时检测与跟踪[J].农业工程学报,2019,35(8):118-125.

Liu Jun, Hou Shihao, Zhang kai, et al. Real-time vehicle detection and tracking based on enhanced Tiny YOLOV3 algorithm[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2019, 35(8): 118-125. (in Chinese with English abstract)

[26] Song Z, Zhou Z, Wang W, et al. Canopy segmentation and wire reconstruction for kiwifruit robotic harvesting[J]. Computers and Electronics in Agriculture, 2021, 181: 105933.

[27] 傅隆生,冯亚利,Elkamil Tola, 等.基于卷积神经网络的田间多簇猕猴桃图像识别方法[J].农业工程学报,2018,34(2):205-211.

Fu Longsheng, Feng Yali, Elkamil Tola, et al. Image recognition method of multi-cluster kiwifruit in field based on convolutional neural networks[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2018, 34(2): 205-211. (in Chinese with English abstract)

[28] Han B, Lee J, Lim K, et al. Design of a scalable and fast yolo for edge-computing devices[J]. Sensors, 2020, 20(23): 6779.

[29] Fu L, Feng Y, Wu J, et al. Fast and accurate detection of kiwifruit in orchard using improved YOLOv3‑tiny model[J]. Precision Agriculture, 2021, 22(3): 754-776.

[30] 乔虹,冯全,张芮,等.基于时序图像跟踪的葡萄叶片病害动态监测[J].农业工程学报,2018,34(17):167-175.

Qiao Hong, Feng Quan, Zhang Rui, et al. Dynamic monitoring of grape leaf disease based on sequential images tracking[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2018, 34(17): 167-175. (in Chinese with English abstract)

Apple detection and counting using real-time video based on deep learning and object tracking

Gao Fangfang1, Wu Zhenchao1, Suo Rui1, Zhou Zhongxian1, Li Rui2, Fu Longsheng1,3,4※, Zhang Zhao5

(1712100;2.718000;3.712100;4.712100;5.58102)

Yield estimation for apples is a key for predicting stock volumes, allocating needed labor, and planning harvesting operations. Manual visual yield estimation for a small number of trees to predict the number of fruits in an orchard has traditionally been employed, resulting in inaccurate and misleading information. Therefore, an automated solution for orchard yield measurement is urgently needed. Detection and counting of fruits infield based on machine vision coupled with advanced machine learning algorithms is a key to realizing orchard yield measurement automatically, which can provide baseline information for better production management. Therefore, this study aims to develop an automated video processing method to realize the automated detection and counting of apple fruits in an orchard environment with a modern vertical fruiting-wall architecture. This study proposed a fruit counting method based on a lightweight YOLOv4-tiny network and Kalman filter algorithm toward this end. ‘Fuji’ variety was selected, which is widely planted in modern planting patterns. 800 images and 10 videos of apple trees were acquired using a remote-controlled car equipped with a Realsense D435 camera. Firstly, fruits in the orchard video were detected using the trained YOLOv4-tiny model. Secondly, all detected apples would be predicted based on the Kalman filter algorithm. Subsequently, all predicted and detected apples in the subsequent frame would be optimally matched based on the Hungarian algorithm of the Euclidean distance and Intersection over Union (IoU). Successfully matched fruits would be added to the tracked track, based on which the corresponding Kalman filter was updated. The trajectory that failed to match would be temporarily saved until the match failed for 30 consecutive frames, while the detection target that failed to match was regarded as a new fruit. Finally, the fruit digital ID would be assigned based on the appearance sequence of the fruit in the video frame to realize the fruit count. In order to prove the superior performance of the deep learning network trained in this study, YOLOv3-tiny was chosen to use the same test dataset for comparison with YOLOv4-tiny. The test results showed that the Average Detection Precision (ADP) based on YOLOv4-tiny reached 94.47%, which was 1.76 percentage points higher than that of YOLOv3-tiny. Besides, YOLOv4-tiny only took 0.018 s on average to detect fruits in one image with the resolution of 720×1 080 pixels, which was 0.009 s faster than YOLOv3-tiny. It could be seen that YOLOv4-tiny could achieve high-precision detection of fruits at a faster speed, which provided a good foundation for fruit counting. The Multiple Object Tracking Accuracy (MOTA) and the Multiple Object Tracking Precision (MOTP) based on Kalman and improvement Hungarian algorithms were 69.14% and 75.60%, which were 26.86 percentage points and 20.78 percentage points higher than the indicators based on Kalman and the unimproved Hungarian algorithm, respectively, indicating the reliability of the tracking algorithm. Furthermore, an average precision of 81.94% and a determination coefficient of 0.986 with counting performed by manual observation were reached in 10 orchard videos. The method developed in this study can effectively feedback the detection and counting results of apples in the orchard for growers, provide technical reference for the production measurement research of modern apple orchards, and provide scientific decision-making basis for intelligent management of orchards.

video counting; YOLOv4-tiny; Kalman filter; Hungarian algorithm; fruit matching

10.11975/j.issn.1002-6819.2021.21.025

TP391.41

A

1002-6819(2021)-21-0217-08

高芳芳,武振超,索睿,等. 基于深度学习与目标跟踪的苹果检测与视频计数方法[J]. 农业工程学报,2021,37(21):217-224.doi:10.11975/j.issn.1002-6819.2021.21.025 http://www.tcsae.org

Gao Fangfang, Wu Zhenchao, Suo Rui, et al. Apple detection and counting using real-time video based on deep learning and object tracking[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2021, 37(21): 217-224. (in Chinese with English abstract) doi:10.11975/j.issn.1002-6819.2021.21.025 http://www.tcsae.org

2021-07-14

2021-10-10

国家自然科学基金(32171897);陕西省创新人才推进计划-青年科技新星项目(2021KJXX-94);中国博士后科学基金资助项目(2019M663832);中国科学技术部国家外国专家局高端外国专家引进计划(G20200027075)

高芳芳,研究方向为果实测产方法与技术。Email: gaofangfang@nwafu.edu.cn

傅隆生,博士,副教授,博士生导师,研究方向为智慧农业技术与装备。Email:fulsh@nwafu.edu.cn

中国农业工程学会会员:傅隆生(E042600025M)

猜你喜欢
卡尔曼滤波计数果园
天、空、地一体化“未来果园”看一下
基于深度强化学习与扩展卡尔曼滤波相结合的交通信号灯配时方法
秋天的果园
脉冲星方位误差估计的两步卡尔曼滤波算法
古代的计数方法
呼噜猪的大果园
古代的人们是如何计数的?
卡尔曼滤波在信号跟踪系统伺服控制中的应用设计
果园
基于递推更新卡尔曼滤波的磁偶极子目标跟踪