陈立辛,王 磊,乔印虎,张春雨,柏云磊,李 博
(1.安徽科技学院 机械工程学院,安徽蚌埠 233100;2.安徽科技学院 电气与电子工程学院,安徽蚌埠 233100)
花生在深加工生产过程中,大量各种缺陷的不良品会给食品加工厂商在产品的附加值方面造成巨大的经济损失。及时有效地检测识别缺陷花生米能保证花生深加工产业的可持续绿色健康发展[1],一直以来是农副食品加工研究领域的热点。传统的花生米品质缺陷识别分拣大多还是依靠人工,然而人工成本比较高、效率低、容易出现漏检,导致品质不稳定。近年来,基于深度学习的图像识别技术在花生米识别检测方面的理论研究和实践成果层出不穷。
赵志衡等[2]提出基于卷积神经网络的花生籽粒完整性识别算法,提取花生图像特征,对花生分类的准确率达到98.18%,平均检测1 幅单粒花生图像的时间为18 ms。张永超等[3]提出基于卷积神经网络的花生种子的筛选识别算法,提取花生种子图像的颜色特征和纹理特征,以优化网络提高筛选的准确率和快速性,结果表明优化完成后的卷积神经网络筛选准确率为98.21%,筛选速度为16.4 ms/粒。张思雨等[4]提出基于机器视觉与自适应卷积神经网络的花生质量检测方法,利用卷积神经网络自动提取常见霉变、破碎和干瘪等缺陷花生图像特征,最终结果表明,对花生常见缺陷的平均识别率可达99.7%。诸多已有的文献研究中只是提出如何解决花生米品质分级筛选的方法,对缺陷花生米在物料线上柔性识别后分拣抓取问题却很少有报道。
本文提出一种基于深度学习的SSD 花生米缺陷识别检测算法,通过对缺陷花生米进行大量训练,能自动识别缺陷花生米图像的特征,并能高精度地检测出3 种常见的花生米缺陷;为花生米在智能自动识别分拣缺陷领域提供技术借鉴。
选用基于位置及目标在线跟踪的控制方式,完成在线时对散乱无序花生米目标物的动态跟踪和快速抓取工作。系统结构如图1所示,整个花生米分拣系统由基于深度学习的视觉检测单元、并联机器人单元、传送带单元、人机显示界面以及MS 驱控一体机控制单元组成。
图1 花生米识别分拣系统Fig.1 Peanut identification and sorting system
散乱不规则的花生米在传送带上匀速前进,视觉单元采集到花生轮廓图像信息并传送给PC上位机,由视觉处理系统通过对采集并处理好的二值化图像与深度学习训练的模型图片进行分析计算,获得缺陷花生米的位置信息;通过实时通讯反馈信息至机器人控制器,机器人单元发送运动程序指令,将零散的花生米抓取并放置到缺陷不良品物料框中,完成筛选分拣操作。
系统平台工作流程如图2所示。视觉系统采用基于位置及目标在线动态跟踪控制方式对传送带上移动的物体进行识别;选取单目相机的深度学习视觉系统控制方式。工业相机固定在物料输送线两侧且易于采集的位置。
图2 系统平台工作流程图Fig.2 Working flow chart of system platform
深度学习视觉系统根据工业相机所采集到的实时图像特征信息,通过工业相机坐标与并联机器人坐标的变换,计算出目标相对于并联机器人的位置;再由视觉控制器根据并联机器人位置计算出目标物的实际坐标值,编码器值信息及视觉处理的信息将传递给机器人控制器,经控制算法计算;最后TCP/IP 通讯方式通过写值与读取指令传输至机器人控制系统,完成对机器人识别抓取的控制。
采用典型的3-RSS 型Delta 并联机器人为研究对象,虚拟样机结构由机架、静平台、动平台、3 个主动臂、由平行四边形结构组成的3 组支链从动臂、旋转伸缩轴、伺服电机及行星减速机等组成。
并联机器人参数为具有三维空间XYZ 平动与饶Z 轴转动的工作直径D=800 mm,H=225 mm,负载为3 kg;在工作过程中,伺服电机通过驱动主动臂回转,带动从动臂与旋转伸缩轴,进而实现动平台的三维平动与转动。
Delta 机器人结构简化的数学模型如图3所示,静平台以中心O 建立坐标系O-XYZ,动平台以中心p 建立坐标系p-xyz[5]。3 条支链完全对称,圆心O 所在的平面为静平台,圆心p 所在平面为动平台,A1A2A3和B1B2B3为等边三角形,点A1,A2,A3,B1,B2,B3分别为3 个主动臂和3 个从动臂与上下2 个平台的连接点;末端p 为关节B1B2B3组成的等边三角形的中心。
图3 Delta 机构简化数学模型Fig.3 Simplified mathematical model of Delta mechanism
深度学习是基于深层次的网络结构模型,其目的是通过构建1 个多层网络,在计算机上自动进行模型训练学习,对数据特征进行提取。近年来,缺陷物目标检测领域已将深度学习技术框架分为传统目标检测框架和基于深度学习的目标检测框架[6]。目前,深度学习目标检测模型有多种,常用的有SSD、YOLO 和Faster RCNN 模型等。
结合花生米检测与识别系统的技术需求,视觉检测系统主要由光电传感器、海康威视500 万像素的Gige 工业面阵黑白相机、MVL-HF0828M型焦距为8 mm 的工业镜头、酷睿i7 主频为4.4 GHz 处理器的工业计算机和JL-AR-7045 型(白光)散射光源等部分组成。
使用Labview 进行整个系统软件的开发,能有效缩短软件系统的开发周期[7]。光源暗箱安置于输送线的两侧,同时为提高图像采集质量,花生米放在暗白色磨砂亚光PVC 带式输送机上,避免采集图像时受到其他环境的光照影响。
3.2.1 位置关系的分析
当花生米跟随输送带运行到并联机器人抓取范围内时,机器人开始执行程序进行抓取。因此,对并联机器人、视觉系统及输送带位置关系的分析计算是保障并联机器人高速精确分拣缺陷花生米的重要因素[8]。
如图4所示,3 者之间位置关系的转换坐标系包括:视觉系统坐标系ov-xvyv,输送带坐标系ow-xwyw和Delta 并联机器人坐标系or-xryrzr。由于输送带运行的方向与标定块均为横向平行,因此在样机试验中视觉坐标系和输送带坐标系在理想状态下完全重合。α1为视觉检测系统坐标系与输送带坐标系绕Z 轴的角度值;α2为并联机器人坐标系x、y 向分量与传送带坐标系绕Z 轴的角度值。
图4 机器人、视觉检测系统与分拣生产线之间位置关系Fig.4 Position relationship between robot, visual inspection system and sorting production line
由3 者的位置关系图,可以得出视觉检测系统与花生米输送带的空间位置关系:
式中 Lw——花生米在输送带坐标系中的坐标;
Lv——花生米在视觉系统坐标系中的坐标;表示视觉检测系统同分拣生产线之间绕z 轴的旋转关系矩阵。
在Delta 并联机器人本体零点标定过程中,已保证机器人坐标系x-y 的平面在水平方向,故并联机器人与分拣生产线之间位置关系式:
式中 Lr—— 目标抓取位置点在输送带坐标系中横坐标和纵坐标方向的分量;
t=(TxTy)T,表示并联机器人与花生米分拣生产线之间的平移关系。
3.3.1 SSD 算法
综合系统识别的准确率和识别速度,选用SSD 算法作为试验的视觉识别算法。SSD 算法是LIU 等提出的一种经典的单级目标检测算法[9],综合借鉴了Faster R-CNN 算法的anchor box 采样和YOLO 算法单级检测思想,以VGG16 为主干网络进行改进,将Conv4_3,Conv7,Conv8_2,Conv9_2,Conv10_2,Conv11_2 这6 层作为输出特征进行检测[10]。SSD 网络结构如图5所示。
图5 SSD300 算法框架Fig 5 SSD300 algorithm framework
3.3.2 损失函数
SSD 损失函数由位置误差和置信度误差的加权和组成,表示为:
式中 N——先验框的正样本数量;
x——预测框与真实框是否匹配;
c——类别置信度预测值;
α——位置误差和分类误差的加权系数;
l——先验框所对应边界框的预测值;
g——真实框的位置参数。
其中对于位置误差采用Smooth L1 Loss:
式中 Pos——样本中的正样本集合;
Bx——预测框中心坐标、高和宽的集合;
Neg——样本中负样本集合;
3.3.3 模型训练与结果分析
以某花生食品公司深加工后花生米为素材,分别采集油污粒、霉粒及损伤粒3 种缺陷图片,并通过平移、旋转、镜像和高斯模糊等图像处理技术进行数据增强,得到10×103张训练图片和2×103张测试图片,以提高模型的泛化能力[11]。
训练参数设置:训练次数为15×103,Batch_size 为6,初始学习率为0.001,权重衰减系数为1×10-4,优化器使用SGD 函数。算法的精度和损失函数曲线如图6所示。
图6 训练结果曲线图Fig.6 Training result curve
分析可知,在SSD 算法训练5×103次左右后,损失函数逐渐减小并趋于稳定,且精度达到0.983,从而验证了SSD 算法在花生米缺陷检测方面的有效性。部分测试结果如表2所示。
表2 基于深度学习的检测精确度Tab.2 Detection accuracy based on deep learning
SSD 算法在对3 种花生缺陷检测的过程中,其平均准确率达到98.71%,每张图片平均检测时间为50.3 ms,证明选用的SSD 算法在花生米缺陷检测的过程中既能够达到较高的识别准确率,也能够进行实时检测,从而满足工厂的生产需求。
结合基于点位的目标特征目标物,针对各个目标点进行动态式实时跟踪[12],建立训练特征模型。每一帧采集图片经过深度学习图像处理和信息提取后,得到该图片上所有目标点的位置和轮廓信息。
根据理论分析与模型训练完成整个系统设备的搭建,试验测试如图7所示。
图7 工程样机试验验证Fig.7 Engineering prototype test verification
花生米物料输送带由减速电机驱动,编码器记录每次转动的位置。运动控制系统在抓取点和放置点之间产生一系列的位置点,并联机器人呈现出“门字形”运动轨迹[13]。为避免在抓取过程中出现无先后次序的“乱抓”现象,系统对同一帧图片上目标点的记录信息按照其坐标的大小进行排序,实现机器人对进入到指定运动范围内的物体有序地分拣。
通过深度学习系统获得传送带上花生米的位置信息,并联机器人的控制系统根据识别算法对花生米进行分拣;由视觉模块和减速电机控制的输送传动模块,采用TCP/IP 总线通信的模式控制,两模块并行运行。样机试验识别抓取的结果如表3所示。
表3 样机试验抓取结果Tab.3 Grasping results of prototype test
当花生米输送线速度为1.0 m/s 时,漏抓率为1.27‰,误抓率为0,末端轴抓取对应的合成加速度曲线如图8所示。
图8 抓取加速度合成曲线图Fig.8 Composite curve of grasping speed
抓取加速度合成趋于柔顺的轨迹效果,试验结果表明:基于深度学习SSD 花生米缺陷识别检测算法引导的并联机器人花生米抓取系统设计合理,稳定可靠;同时验证了识别算法能准确完成花生米的在线跟踪识别,控制系统能控制并联机器人实现105 次/min 的实时快速准确识别与定位,完成抓取缺陷花生米的作业生产。
(1)提出基于深度学习花生米的检测方法,完成花生米识别分拣的工程样机研制,在平均抓取耗时在0.61 s 内完成散落无序多缺陷的花生米的识别柔性抓取任务;(2)研究训练的识别模型,可以准确区分油污粒、霉粒及损伤粒等缺陷与正常的花生米的智能识别分拣;(3)运用检测识别系统,实现花生米在线综合检测,识别定位速度快,精度可达到98.71%,合成速度为最佳运动轨迹;(4)对比传统的识别算法,采用深度学习SSD框架的检测技术针对不同花生米缺陷特征,大幅减轻工作量,提高检测识别效率。识别系统定位速度快,精度高,为在线式农产品缺陷检测提供技术借鉴和参考。