APP下载

基于YOLO v5-TL的褐菇采摘视觉识别-测量-定位技术

2023-01-05邹明萱施浩楠DENGYiming

农业机械学报 2022年11期
关键词:锚框轮廓边缘

卢 伟 邹明萱 施浩楠 王 玲 DENG Yiming

(1.南京农业大学人工智能学院,南京 210031;2.密歇根州立大学,东兰辛 48824)

0 引言

褐菇具有丰富的食用价值,可提供优质的蛋白质、脂肪、维生素、微量元素等,其栽种面积广、产量大、经济效益高[1],目前以工厂化种植为主,并逐渐实现机械化和智能化,但采收环节仍为手工方式,效率低、劳动力成本高。随着科技发展,通过机器人实现自动化采收是未来发展方向[2],其中褐菇的识别、尺寸测量和精确定位是机器人自动化采收作业的关键[3-4]。

很多学者采用机器视觉进行果蔬识别,可分为“Eye-in-hand”、“Eye-to-hand”两种方式,“Eye-in-hand”将相机安装在末端执行器上[5],靠近目标果蔬进行识别,识别和测量精度高,但对果蔬逐个识别耗时较长。“Eye-to-hand”将相机固装在移动平台上[6],对目标区域的果蔬进行一次性识别、测量和定位,效率高但对远处目标的测量精度降低[7]。在工厂化褐菇种植中,出菇时褐菇生长速度快且分布密集,大量集中出菇亟需高效采收,因此本文选用“Eye-to-hand”方式进行褐菇的识别、测量和定位。

1 数据集构建与方法流程

1.1 数据采集和数据集构建

本文褐菇数据采集自扬州市奥吉特生物科技有限公司的褐菇种植菇房,采集不同光线、不同角度下的褐菇图像。采集设备为RealSense d435i型相机,采集图像分辨率为1 280像素×720像素,图像保存为.jpg格式。采集设备分别放置于菇架侧方和上方,如图1所示,相机1所示为侧方拍摄,相机1距离菇架边缘35 cm;相机2所示为上方拍摄,相机2距离水平菇架40 cm,采集光线包括顺光、逆光、遮光等情况,菇房环境中共采集415幅褐菇图像。图2 为不同光线条件下的褐菇图像。

图1 采集设备安装位置

图2 不同条件下的褐菇图像

1.2 褐菇视觉识别-测量-定位方法流程

针对昏暗环境下,菇床表面高低起伏,菌丝密布,菇盖形状不规则等造成褐菇视觉识别困难的问题,提出一种褐菇快速、精准识别-测量-定位一体化方法。该方法包括基于YOLO v5-TL的褐菇快速识别和基于褐菇三维边缘信息的直径动态估测、定位,具体流程如图3所示。

图3 本文方法流程图

2 基于YOLO v5-TL的褐菇快速识别

由于深度学习在目标检测领域具有高精度、高效率的优势,近年来不断被用于果蔬采摘识别,但深度学习需要依赖大量优质的数据、高性能的训练平台,这在农业领域较难满足。因此,对于小样本数据对象常采用基于模型的深度迁移算法[16]。

基于模型的迁移算法采用预训练模式,本文采用基于ImagNet预训练好的YOLO v5模型参数进行迁移训练,具体迁移训练逻辑如图4所示[17]。深度学习中的浅层网络多用于学习通用的边角等低级特征,如图4中的足球和褐菇低级特征均为圆形;随着层次的加深,网络可学习特殊对象的特定特征以实现目标检测,基于模型的深度迁移学习可节约褐菇识别时间成本,同时提高模型的鲁棒性和泛化能力。

图4 基于模型迁移学习的逻辑图

YOLO系列算法采取回归手段提取图像特征[18],网络结构将输入图像均匀划分为S×S的网络格子,在每个网格中设置不同的边框,实现对特定对象的检测[19]。YOLO v5分为YOLO v5s、YOLO v5m、YOLO v5l、YOLO v5x共4个不同的模型,模型区别在其深度和宽度不同。YOLO v5网络的BackBone模型是由Focus、CSP和SPP结构组成的CSPDarknet;输入端采用Mosaic数据增强法,有利于小目标快速检测;采用自适应Anchor机制,可动态更新锚框大小,适用于自定义数据集中对象边界框预测;采用CIOU_Loss作为Boundingbox的损失函数,该函数考虑预测框和目标框的重叠面积、边界框中心位置、边界框长宽比,有效提高预测精度;非极大值抑制采用DIOU准则,有效减小重复识别对象的影响,基于YOLO v5-TL的褐菇网络结构如图5所示。

图5 褐菇目标检测模型结构图

3 褐菇三维边缘信息的直径动态估测法

3.1 基于锚框的褐菇裁剪

褐菇菇盖尺寸测量首先需要获取菇盖的边缘轮廓,流程如图6所示。首先,褐菇实时图像输入YOLO v5模型,模型识别到褐菇并以该褐菇为中心在其周围画一个矩形区域(锚框),输出锚框对应的长和宽;再根据识别模型输出数据对实时采集图像上每一个锚框进行裁剪,输出裁剪后的单个褐菇的锚框区域;最后返回褐菇的锚框图像和锚框信息,如图6所示裁剪出的锚框区域主要包含单个褐菇,可有效减少背景菌丝影响,有利于后续褐菇轮廓检测。

图6 锚框裁剪逻辑图

3.2 褐菇轮廓检测

褐菇菇盖尺寸是褐菇品质分级的重要评估指标之一[20],为实现菇盖精确测量[21],首先需要实现菇盖的轮廓提取[22]。由于菇房环境昏暗不均,采集的褐菇图像轮廓存在噪声,首先需对锚框内褐菇进行图像增强,提高亮度。图像增强算法逻辑如图7所示,将原始裁剪得到的RGB空间的褐菇图像转换至HSV空间,获取图像亮度值并判断是否需要增强亮度;再对HSV图像获取直方图分位点,以便图像亮度均匀化;最后去除分位点区间以外的像素点,并将剩余像素值变换至0~255区间实现图像亮度增强,增强效果如图7c所示。

图7 图像亮度增强效果

通过图像裁剪和增强,可实现褐菇轮廓提取,但由于褐菇生长中存在多个蘑菇簇拥在一起的情况,造成褐菇图像粘连,其中多为2个褐菇粘连,需要进行粘连褐菇图像分割。识别的褐菇锚框若存在与其他褐菇锚框重叠区域则判定褐菇存在粘连,针对粘连褐菇先进行锐化处理,结果如图8所示;再对锐化图像进行灰度化和自适应二值化处理。此时二值化图像蘑菇边界存在少许粘连;通过先腐蚀再膨胀对二值化图像进行形态学处理,最后,基于轮廓拟合算法提取单个褐菇轮廓。

图8 轮廓拟合过程

3.3 坐标转换

由于菇床表面的高低不平和褐菇生长的随机性,菇盖存在倾斜情况,对褐菇轮廓的二维成像[23]和尺寸测量带来较大误差[24]。为减少褐菇菇盖倾斜带来的尺寸测量误差,本文提出三维褐菇轮廓尺寸测量方法。菇盖三维轮廓坐标定位的关键是坐标系转换,包括裁剪像素坐标系、像素坐标系、图像坐标系和相机坐标系,本文将二维褐菇轮廓的像素坐标转换成三维的相机坐标,坐标转换如图9所示,OcXcYcZc为相机坐标系,OXY为图像坐标系,opuv为像素坐标系,oij为裁剪像素坐标系。

第三,使用丰富的副文本。林语堂在进行译创工作中常常会使用较为丰富的副文本,包括副标题、序言、导读、注释、绘画或附录等等。通过这些副文本,将他对原作品的理解与认识进行了说明,也解释了一些需要对读者进行说明的内容,实现了与读者的交流。利用副文本,林语堂为读者有效地清除了从文化到语言各种方面的阅读障碍,完成对文章内容的准确、深度理解。可以说,通过对副文本的使用,林语堂做到了让译本与读者之间的距离更近,更加吸引着读者的兴趣,促进了作者、译者与读者的良性互动(冯志强、朱一凡2011:31)。

图9 坐标转换图

(1)

Zc是相机光心与物体的距离即图像深度值,因此,根据图像的深度信息则可计算出点P的三维坐标。

基于以上坐标转换,可实现褐菇菇盖的轮廓尺寸测量和中心点的定位,过程如图10所示。首先,将已检测到的褐菇轮廓像素坐标提取并存储在像素轮廓列表(P1),然后融合深度相机采集的P1中每一点的深度信息把轮廓像素坐标转换成世界坐标并存储在立体轮廓列表(P2)。接着,在立体轮廓列表P2中遍历所有点,任选图10三维坐标系褐菇轮廓中一点A,自点A起计算轮廓中其他任意一点与点A的距离,取最大值为点A对应的直径,最后,取列表P2中所有点对应直径的平均值为褐菇直径,取裁剪图像的中心点为褐菇摘取的定位点,如图10中的Key point所示,实现褐菇尺寸测量和定位。

图10 三维边缘尺寸测量和定位

实际的褐菇生长形状差异大,且由于图像采集视角、阴影等影响造成褐菇图像边缘凹陷,如图11中的M2、M3。对此,先对菇盖轮廓每点直径从大到小排序并进行线性拟合(y=kx+b),求取每个菇盖轮廓拟合的k值。根据统计数据,菇盖形状规则的轮廓拟合的|k|小,菇盖边缘凹陷的轮廓拟合的|k|大,当|k|>0.1时视作褐菇图像边缘存在凹陷。当0.1<|k|≤0.3时取所有点所在直径从大到小的前95%的平均值作为褐菇直径,当|k|>0.3时取所有点所在直径从大到小的前90%平均值作为褐菇直径,当|k|≤0.1时则取所有点所在直径的平均值作为褐菇直径。

图11 边缘动态尺寸估测图

4 试验

4.1 YOLO v5模型训练和最优模型选择

使用褐菇训练集训练YOLO v5-TL模型,根据测试集预测结果进行模型优选。其中,网络训练所用计算机主要配置参数为Intel i5-10400F CPU,GeForce GTX 1660 Ti GPU 和16 GB运行内存,开发环境为Windows 10,Visual Studio 2017,CUDA 9.0,OpenCV 3.4(x64),并使用Python 3.7结合torch 1.11.0实现。

训练过程中优化器采用随机梯度下降法(SGD),初始学习率设置为0.000 1,批量大小设为8,subdivisions设为8,filter设为18,迭代周期为100,训练过程中,通过平均损失曲线来观察损失值的变化,当损失值不再继续减小趋于稳定时停止训练。对于复杂菌丝背景下褐菇目标的识别,需要考虑检测网络的精度与实时性,本文采用平均精度均值(Mean average precision,mAP)作为模型检测精度的评价指标,单帧检测时间作为模型检测速度的评价指标。

YOLO v5模型根据不同深度和宽度的网络可分为YOLO v5s、YOLO v5m、YOLO v5x、YOLO v5l共4种,本文分别对这4种网络进行褐菇训练和测试,试验结果如表1所示。

表1 YOLO v5-TL检测结果对比

YOLO v5s-TL检测速度最优,但是其检测精度相较于YOLO v5m-TL、YOLO v5l-TL和YOLO v5x-TL较低,且对于较小褐菇会出现遗漏检测的情况;YOLO v5x-TL的检测精度较高,但其检测速度较慢,检测时间是YOLO v5l-TL的4.6倍。综合检测精度和检测速度,YOLO v5l-TL模型最优,其mAP达99.5%,单帧检测时间为0.17 s,可满足工厂环境下的褐菇快速、精准识别。

4.2 基于褐菇三维边缘信息直径动态估测结果

为评价本文提出的基于三维坐标褐菇菇盖尺寸测量算法的精度,搭建试验平台进行测试,测试环境如图12所示,其中图像采集使用RealSense d435i深度相机,体积较小且融合RGB-D信息。

图12 试验平台

为评估本文提出的三维边缘信息直径动态估测方法,进行两组尺寸测量对比试验,相机位于菇架侧方距菇床边缘38 cm,位置固定,改变菇床褐菇位置;每组对褐菇进行二维尺寸测量法和三维尺寸测量法对比试验,每组试验测量18个褐菇。二维尺寸测量法采用褐菇边缘的二维像素坐标实现尺寸测量,1像素为1.417 mm。二维尺寸测量法将三维边缘信息直径动态估测法中的三维坐标转换为二维坐标,其他规则一致;三维尺寸测量法基于褐菇三维边缘信息直径动态尺寸测量法实现尺寸测量,测量结果如表2所示。基于二维尺寸测量法的褐菇菇盖尺寸测量平均精度为88.14%,基于三维边缘信息直径动态尺寸测量法的菇盖尺寸测量平均精度为96.13%,尺寸测量精度较二维法提高7.99个百分点。试验数据表明,基于褐菇三维边缘信息直径动态尺寸测量法对褐菇尺寸的测量精度较二维尺寸测量明显提高。

表2 对比试验结果

为评估本文方法适应光线变化的鲁棒性,进行两组褐菇光线变化检测试验,每组试验褐菇样本12个,共计24个样本,光线变化为顺光、遮光、逆光,现场测试结果如图13所示。试验相机均位于菇架侧方,距菇床边缘38 cm,试验时12个褐菇位置保持不变,只改变测试环境光线,测试结果见表3、4。

图13 现场测试结果

表3 尺寸测量结果1

由表3、4可见,顺光情况下基于YOLO v5-TL模型的12个褐菇均能成功识别;在遮光和逆光情况下分别漏检1个和2个,整体识别成功率为91.67%。基于三维边缘信息直径动态尺寸测量法的菇盖尺寸测量结果1、结果2平均精度分别为97.45%、97.10%,两组试验整体平均精度为97.28%,直径测量误差±4 mm,单帧图像平均处理时间为50 ms。顺光和部分遮光的菇盖测试精度优于逆光情况的测量,由于逆光情况下菇盖边缘存在阴影造成轮廓提取不精准,进而影响三维边缘轮廓坐标提取。

表4 尺寸测量结果2

5 结论

(1)针对菇床表面高低起伏、菌丝密布、光线昏暗复杂环境下,褐菇自动化视觉采收困难的问题,提出一种基于YOLO v5-TL结合褐菇三维边缘信息直径动态估测法的识别-测量-定位一体化方法。构建褐菇目标检测的YOLO v5-TL模型,实现在复杂菌丝背景下快速识别褐菇;融合锚框区域褐菇边缘点深度提取褐菇轮廓三维信息,结合褐菇三维边缘信息直径动态估测法实现褐菇菇盖尺寸精确测量和中心点定位。

(2)对比研究三维边缘信息直径动态估测法进行尺寸测量时,不同光照对褐菇视觉识别测量的影响,试验结果表明,菇床昏暗环境下褐菇识别成功率为91.67%;光照情况下褐菇识别成功率达100%;三维测量法菇盖的尺寸测量平均精度为97.28%,具有较好的鲁棒性;对分辨率为1 280像素×720像素的单帧图像平均处理时间为50 ms。试验结果表明,本文方法可以满足工厂环境下褐菇的自动化采摘需求。

猜你喜欢

锚框轮廓边缘
锚框策略匹配的SSD飞机遥感图像目标检测
基于GA-RoI Transformer的遥感图像任意方向目标检测
一种可变锚框候选区域网络的目标检测方法
基于深度学习的齿轮视觉微小缺陷检测①
跟踪导练(三)
一张图看懂边缘计算
儿童筒笔画
创造早秋新轮廓
在边缘寻找自我
走在边缘