基于深度学习的高压水鱼片切段装置控制系统设计

2023-10-26 11:18肖哲非马田田张军文李彦龙
渔业现代化 2023年5期
关键词:掩膜鱼片准确率

肖哲非,马田田,张军文,李彦龙,沈 建,4

(1 中国水产科学研究院渔业机械仪器研究所,上海 200092;2 农业农村部远洋渔船与装备重点实验室,上海 200092;3 国家水产品加工装备研发分中心,上海 200092;4 大连工业大学海洋食品精深加工关键技术省部共建协同创新中心,辽宁 大连,116034)

中国水产品加工行业在过去的几十年中取得了显著发展,目前已经成为世界上首屈一指的水产品加工大国,2021年水产品加工总量达到了2 522.68万t[1]。然而随着市场的发展,中国水产品加工线逐渐暴露出其机械化、自动化程度低的问题[2-5],大部分的切鱼作业依旧由人工完成;而与此同时,2021年中国渔业从业人口比2020年下降了54.96万人[1]。由此可见,研发出符合产业需求的高效自动鱼片切段加工设备已经迫在眉睫。

水刀切割由于其清洁节能且不会改变加工物体物理化学特性的优点,现已在各行业中广泛应用[6-7]。由于消费者对食品安全和健康日益关注,学者们逐渐开始研究水刀在水产品加工中的应用方向。Kasperowiczm等[8]研究了水刀切割虹鳟鱼的基本参数数值,在恒定的进料速度、喷嘴角度和喷嘴距离下,得到了切断不同位置的鱼体所需的最小水压。李仁杰等[9]研究了射流角度、距离以及进料速度对鲫鱼去鳞率和损伤率之间的关系。Azarmdel等[10]通过提取RGB通道的特征,识别图像中鳟鱼的方向和胸鳍、肛门、腹鳍和尾鳍的位置,以胸鳍的起点和肛门鳍的终点将被应用于鳟鱼加工系统作为头部和腹部切割点。自动化切割要求设备精准对鱼片的位置、轮廓都能够进行较为精准的识别。近年来,深度学习由于其准确可靠的特性,现已在农业中有越来越多的应用[11-13]。翟永杰等[14]设计的基于视觉检测的蝴蝶兰自动切割系统,将上机位识别结果转化为切割坐标传输到执行机构,在试验中可达到86%的切割合格率。杨柯等[15]提出了非接触式的大蒜定位切割方法,采用深度学习对大蒜图像进行目标检测,电机控制系统调整刀具完成切根处理,在实验中切割合格率达到96.7%。李艳君等[16]通过实例分割网络对鱼体进行检测,配合双目摄像机的三维点云数据,实现了测量自由活动下的鱼体尺寸。

提出了一种基于深度学习的鱼片切段控制系统,该系统使用深度学习识别鱼片轮廓并根据用户需求计算切割路径,控制切割执行装置以完成切割作业,并在样机上进行了实际试验。

1 材料与方法

1.1 数据集制作

试验采用鲐鱼鱼片,来源于浙江兴业集团。为了获取鲐鱼片的数据集,选取完整、表面无明显缺陷和破损的20条鲐鱼片,对其进行拍摄采样。将鲐鱼片随意得摆放在输送带上向前传送,使用工业相机Basler acA1920-155ucMED不间断采样,拍摄图像大小为1 920×1 200。从拍摄的图像中选取400张作为数据集,使用Labelme进行标注,标注方法是人工使用多点折线描画出图像中的鱼片,标注示例如图1所示。

图1 标注图片示例

为了简化模型,无论是图像中是鱼肉还是鱼皮朝上,都视为同一类别。除了Mosaic数据增强外,还使用了增加噪声、高斯模糊、动态模糊、增加亮度、水平翻转和垂直翻转的方式扩充数据集,将400张图像最终扩充到2 500张,并按照4∶1的比例划分训练集和测试集。共有2 000张图像参与训练和验证,500张图片用于测试模型的泛化能力。

1.2 鱼片切段机整体设计

鱼片切割机构主要由视觉识别模块、输送装置、切割执行机构、高压水装置以及控制系统组成,如图2所示。视觉识别模块包括工业相机和条形光源。控制系统中的工控机根据视觉识别模块拍摄的图像识别鱼片并计算切割路径,当传感器被鱼片触发后,切割执行机构根据运动控制器输入的指令,完成切割作业。切割作业流程如图3所示。

图2 鱼片切段机结构图

图3 控制流程图

程序启动后,首先设置记录拍照数量和切割数量,分别用参数fish和cut表示。启动输送带,当光电传感器1号检测到信号后,工控机将相机拍摄的图像送入深度学习模型。如果输出的结果置信度阈值大于设定值,则认为图像中包含可被切割的鱼片,参数fish在原有基础上加1。接着,工控机将规划好的切割路径存入控制器的缓存区域。缓存区实行先进先出,即每一次新存入的路径数据都放在缓存区的队末。当光电传感器2号检测到信号并且参数fish的值大于参数cut的值时,控制器从缓存区取出排在最前列的路径数据并执行。否则,控制器一直处于等待状态。在执行切割的过程中,输送带会停止,直到切割完成后再继续启动。

1.3 硬件控制系统设计

1.3.1 硬件控制系统结构设计

硬件控制系统由位置控制系统、电机控制系统、高压水控制系统、工业相机以及工控机组成,如图4所示。光电传感器1号和2号用于确定鱼片在输送带上的位置,X轴、Y轴和Z轴的原点开关用于确定每次切割的起始位置,X轴和Y轴的限位开关用于防止机构的行程超出极限而发生碰撞,导致机构损坏;Z轴限位开关的信号由与高压水装置中的PLC读取。当限位开关被触发后,高压水装置开始出水,当信号消失后,则停水。电机控制系统中,运动控制器将运动指令分配给对应轴的伺服驱动器,使其按照上层软件计算好的路径和运动参数完成运动。工控机与工业相机和运动控制器相连,一方面,从工业相机获取拍摄的图像,经过深度学习后计算切割路径;一方面,将切割路径拆解为运动指令,输出到运动控制器中。

图4 控制系统硬件图

1.3.2 硬件系统选型

切割执行机构由成都福誉科技生产的FSL80三轴丝杆直线模组构成,由于涉及水刀切割,丝杆为全封闭结构。丝杆宽度为80 mm,其中X轴的行程为800 mm,Y轴为350 mm,Z轴为100 mm,精度均为0.05 mm。水刀喷嘴安装在Z轴的滑块上,可在三轴的行程范围内达到空间中的任意一点。

三轴的伺服电机采用台达ECMA-C20604RS,伺服驱动器采用台达ASD-B2-1521-F。运动控制器采用正运动技术开发的ECI1408网络运动控制卡,支持4轴运动控制并内置直线插补、圆弧插补等运动指令,每轴最大输出脉冲频率5 MHz,内部包括36路输入口以及12路输出口,支持以太网和RS232通讯方式。光电传感器为NPN常开型。

1.4 软件系统设计

1.4.1 深度学习算法

本研究旨在根据图像中识别的鱼片轮廓规划切割路径。尽管鱼片形状具有一定规律性,但在实际生产中,上料时很难保证鱼片的位置和姿态始终保持不变。此外,输送带链条、复杂的背景和残留的鱼肉都会对视觉检测造成干扰。因此,为了准确检测出鱼片的轮廓,采用了Mask R-CNN作为实例分割鱼片的基准模型,并在此基础上进行了一定的改进。

整体网络结构如图5所示,分为输入、骨架网络、区域建议网络、ROI Align以及最终的三分支输出。

图5 改进Mask R-CNN模型

Mask R-CNN是2017年出现的实例分割算法[17],由于其灵活性以及出色的检测效果,一经提出,就在各个领域取得了广泛的应用[18-19]。

Mask R-CNN使用ResNet和特征金字塔网络(FPN)结合作为骨架网络,提取输入图像的特征图(feature map);在区域建议网络(Region Proposal Network)中特征图上的每一点生成多个感兴趣区域(ROI),对这些候选的感兴趣区域进行二值分类以及回归,淘汰不包含目标物体的以及偏移量过大的感兴趣区域;剩余的感兴趣区域和原始特征图通过ROI Align进行像素级对齐,通过后续的全连接层以及全卷积层得到最终的输出结果,即类别、边界框以及掩膜。

为了更好适应实际生产环境中各种变化,本研究对Mask R-CNN进行了改进,首先,引入了Mosaic数据增强[20],将多个鱼片图像经过旋转、裁剪等操作后拼接在一起,提高了模型的鲁棒性以及泛化能力。其次,使用ResNeXt50作为骨架网络,并在其中插入注意力机制SKNet,在减少网络层数的同时使模型更加关注鱼片的关键部位,忽略背景等干扰因素,提高了鱼片轮廓的识别精度[21-22]。

1.4.2 切割路径规划

在实际生产过程中,切割需求千差万别。考虑到仅仅通过单目摄像头无法获取鱼片的三维体积,本研究中的切割方案仅考虑二维图像设定。切割路径规划的参考依据主要为深度学习模型输出的掩膜。以掩膜中最左端点作为切割起始点,并连接起始点和鱼片的平面质心,切割长度为掩膜最小外接矩形的长。为了消除深度学习分割误差等因素对切割的影响,在切割路径上增加了一定的切割余量。

质心的计算方法为:

(1)

式中:xC,yC为质心的横坐标和纵坐标;M,N表示图像的行数和列数;f(i.j)表示掩膜,即深度学习输出结果,在图像中属于鱼片的像素点合集。

在规划切割路径同时要考虑到中相机所处的相机坐标系、获取图像的像素坐标系、鱼片所处的世界坐标系以及三轴的坐标系之间的转化。坐标系之间的转化公式如下:

(2)

式中:s为比例因子;u,v为图像坐标系中横坐标和纵坐标的坐标值;Cx,Cy为基准坐标;Fx,Fy是单位为像素的相机焦距;R是相机旋转矩阵;T偏移向量矩阵;(xw,yw,zw)某点在世界坐标系下的坐标值;Δxm,Δym,Δzm三轴的原点和世界坐标系的原点的距离差。

切割路径规划方案如图6所示。

图6 切割路径规划方案

在实际生产中切割的需求多种多样,并考虑到仅通过单目摄像头无法获得鱼片的三维体积,本研究中的切割方案仅根据二维图像设定。切割路径规划的参考依据主要为深度学习模型输出的掩膜。将掩膜中最左端点设为切割起始点,第一刀连接起始点和鱼片的平面质心,长度为掩膜最小外接矩形的长,将鱼片一分为二;再沿着鱼片的短边方向,根据最小外接矩形的长度,将鱼片平均等距切为3份,最终经过三刀,鱼片被切为6份。为了消除深度学习分割误差等因素,在每一次切割路径上增加切割余量,即延长切割路径。

1.4.3 控制系统界面

采用Python+Tkinter开发了基于深度学习的高压水鱼片切割控制系统的操作界面,如图7所示。

图7 控制系统界面

界面包括视觉检测、系统控制、信息提示和设备参数监控4个功能区。光电传感器收到信号后,视觉检测界面显示识别结果和切割路径。系统控制界面提供设备启动、紧急停止和参数设定功能。信息提示界面显示系统反馈信息。设备参数监控界面显示切割坐标、三轴直线模组运行参数以及切割数据。

2 结果与分析

2.1 深度学习模型训练与结果分析

深度学习的训练在框架Pytorch 1.10.0以及Torchvision 0.11.0下进行,使用Ubuntu 18.04 系统,处理器和图像处理器分别为Intel酷睿i 7和NVIDIA RTX 2080 Ti。采用动量为0.9的随机梯度下降,设置100个训练周期,前50个周期学习率为0.001,后50个周期学习率为0.000 1。为了缩小训练时间,将训练集的图像大小缩小为原先的1/2,即960×600。

采用准确率(p,Precision)、召回率(r, Recall)、mAP@0.5和mAP@0.5-0.95作为指标评价深度学习模型的目标检测能力。计算公式如下:

(3)

(4)

(5)

(6)

式中:tp表示真正类(True Positive),即被正确分类的正样本的数量;Fp为假正类(False Positive),即原本为负样本却被错误识别为正样本的数量;Fn为假负类(False Negative),原本为正样本却被错误分类为负样本数量。tp+Fp为所有被识别为正样本的数量;tp+Fn为数据集中正样本的数量。Ap(average precision)表示平均精度,为召回率从0到1所有值对应的准确率的平均值。mAP@0.5表示当IoU(Intersection over Union)设为0.5时,在所有分类上的平均精度;mAP@0.5-0.95表示IoU取值范围从0.50到0.95,步长为0.05,计算得到所有mAP的平均值。图8展示了训练过程中模型3个分支输出的函数值变化曲线。

图8 训练过程中损失值变化曲线

其中分类损失值最低,并且很快收敛,原因是模型中仅有一种目标物体需要识别。矩形框损失值一开始高于分割损失值,但收敛迅速,最终稳定在0.011左右。分割损失值较高的,原因在于使用二进制交叉熵计算每一个像素值的损失,其最小值出现在第97次迭代,为0.019 11。在训练过程中,掩膜的准确率、召回率和mAP@0.5以及mAP@0.5-0.95的最大值分别出现在第96、98、91以98 迭代。综合考虑选择第98次迭代的权重文件作为最终结果。

2.2 模型有效性验证

为验证本研究提出改进算法对原深度学习模型准确率提高的有效性,在相同的数据集上训练和测验,并以矩形框的各项指标为评价标准进行消融实验,表1展示了试验结果。

表1 消融试验结果

SKNet注意力机制和Mosaic数据增强对模型的各项指标均有明显提升,特别是回归率,在原模型的基础上提高了9.92%。这是因为SKNet加强了网络中有价值通道的权重,并增大了感受野,从而提高了模型对特征的学习能力。同时,Mosaic数据增强通过丰富现有数据集的样本,提高了模型的泛化能力。

为了验证模型的有效性,使用ResNet50、ResNet101、ResNeXt50、ResNeXt101以及改进的算法作为主干网络,在相同的数据集上进行了试验。计算了矩形框和掩膜的准确率、回归率以及mAP@0.5、mAP@0.5-0.95和平均单张所需的检测时间,并将结果展示在表2中。

表2 不同算法对比

试验结果显示,5种主干网络均可有效识别并分割鱼片。具体而言,以ResNet50作为主干网络时,各项结果均为最低,但平均单张检测时间最短。而ResNet101的准确率和mAP明显高于ResNet50,但平均单张检测时间也多耗时0.016 s。改进的算法的准确率、mAP等均高于ResNet101,并且检测时间更短。以ResNeXt101作为主干网络时,鱼片识别的矩形框以及分割的掩膜准确率均为最高,其中掩膜的准确率较ResNet50提高了0.146。此外,改进算法掩膜的准确率略高于ResNeXt101,并且平均单张检测时间仅为ResNetXt101的77%。

综合考虑各项指标,改进算法在保证检测速度的前提下达到了掩膜分割的最高准确率,更适合鱼片的检测和分割任务。因此,认为改进算法具有实用价值和应用前景。

图9展示了以ResNet50作为主干网络和本研究改进后算法在同一张图片上的分割结果。ResNet50为主干网络时,鱼片左侧尖端并未有效分割。改进算法完全将鱼片从背景中分割出来,而且分割曲线也更加平顺。

图9 ResNet50与本研究算法识别结果对比图

2.3 鱼片切段试验

为了验证鲐鱼片切割系统的实际效果,选取50片鲐鱼片,分为5组,每组10片进行切割实验。在试验中,设置输送带的速度为120 mm/s,三轴中x轴的运动速度为120 mm/s,y轴和z轴运动速度为100 mm/s,高压水压为50 MPa,使用的喷头为红宝石喷头,直径为0.25 mm。

由于鱼片薄厚分布不均匀,难以以质量评价鱼片切割效果,因此本研究约定,如被切割的鱼片达到以下条件,本研究将视其为切割合格:切割的第一刀贯穿鱼片的重心,大致位置正确且切割路径足够长,可使鱼片一切为二无明显粘连;切割的第二刀以及第三刀可将鱼片等距分为3份,距离误差在5%以内。试验现场的相关图像如图10所示。

图10 切割现场图

切割统计结果如表3所示。在5组试验中,鱼片切割合格率最高为100%,平均合格率为90%。第一刀的最高合格率为100%,平均合格率为98%,第二刀和第三刀的最高合格率为100%,平均合格率为92%。

表3 鱼片切割试验结果

在不合格的样本中,因第一刀失误判定不合格的有1个,因鱼片尖端未被有效识别,导致切割起始点和重心计算失误,切割路径明显偏移。第二、三刀判定不合格的有4个,原因在于光电传感器未感应到鱼片过薄的前端,导致鱼片定位不准,从而使鱼片分割不均匀。后续研究中,将针对上述几种情况进行提高和改善。

3 讨论

3.1 改进算法对比

相比于人工,计算机视觉具有高通量、高精度的特点[23-24],并且无侵入式的检测识别减少了样品被污染的可能性。相较于传统的图像处理方法,深度学习在复杂环境中有更强的鲁棒性[25-27],因此在养殖、加工等领域中应用案例越来越多。李琦等[28]为解决传统方法测量牛体耗时耗力的问题,使用Mask R-CNN识别牛体,最终平均准确率为0.87。张凯中等[29]使用改进的Mask R-CNN模型识别群猪图像,在验证集上达到了0.851的召回率,为智能化管理大量猪只提供了新的思路和方法。钟伟镇等[30]使用Mask R-CNN对4中植物进行识别和分割,分割准确率达到97.51%。本研究在ResNet50作为骨架网络的基础上对Mask R-CNN进行改进,在掩膜分割的准确率和召回率上分别达到0.98和0.932,证明本研究改进方法的可靠性。

3.2 影响切割精度和成功率的因素

除了识别算法,伺服电机、传感器、控制系统逻辑等都对切割精度和成功率有一定的影响。本研究在试验过程中发现,部分鱼片因厚度较薄,无法被光电传感器有效识别,导致切割失败。另外,水刀在连续切割作业过程中产生的水雾,会使光在光电传感器发射端发生折射,接收端无法准确接收,从而导致控制系统误判。由此可见,使用水刀的切割装置不能仅仅依靠光电传感器作为定位的依据。开发基于多传感器信息融合的定位方法是本研究未来的研究方向之一。使用超声波、红外线、视觉和其他类型传感器的组合,可以精确定位鱼片位置,提供更准确的信息和更高的精度,提高设备的准确性和可靠性。此外,也可加入压力传感器,用于检测和调整水射流的压力,使设备能够相应调整其切割参数。

本研究所试验的切割路径只是众多可能性中的一种,在实际生产中,切割需求多种多样,例如等重切段[31]、定制切段[32]等。本研究仅使用了单目摄像机,因此,局限于获取的信息仅为二维平面图像,无法进行等重或者定重切段。加入线激光相机,获取鱼片的外轮廓,实现等重切段,也是本研究的未来研究方向之一。

4 结论

设计了一种基于深度学习的高压水鱼片切割控制系统,该系统采用了改进的实例分割模型Mask R-CNN作为鱼片轮廓的检测器,并基于识别的结果规划切割路径,使用手眼标定完成视觉识别系统和切割执行机构之间的坐标转换,通过运动控制器对三轴直线模组进行控制,以完成对鱼片的精准切割。改进算法的准确率达到98%,相比于原模型提高0.99%,平均单张检测时间为0.058 s。在样机上进行切割试验,最终鱼片切割成功率为90%。

猜你喜欢
掩膜鱼片准确率
利用掩膜和单应矩阵提高LK光流追踪效果
一种结合图像分割掩膜边缘优化的B-PointRend网络方法
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
高速公路车牌识别标识站准确率验证法
光纤激光掩膜微细电解复合加工装置研发
煲鱼汤高招
多层阴影掩膜结构及其制造和使用方法
糟溜鱼片