APP下载

水果分拣机械手控制系统研究—基于BP神经网络和图像识别

2023-10-17周炜明

农机化研究 2023年12期
关键词:机械手图像处理灰度

许 娜,周炜明

(河南工业职业技术学院,河南 南阳 473000)

0 引言

近年来,我国水果种植、水果加工产业等都有了快速发展,再加上电子商务以及网络营销水平的提高,水果产业即将进入全新的发展阶段,必将呈现出更好的发展前景。水果的产后处理流程包括上线、清洗、打蜡、烘干等步骤,比较单一;而水果的分拣相对比较复杂,系统需要实现对水果的识别和等级判断。为此,设计了一套基于BP神经网络和图像识别的水果分拣机械手控制系统。

1 水果分拣机械手系统构建

1.1 水果分拣机械手控制框架

水果分拣机械手控制系统由工业相机、光源、传送带、图像采集卡、控制器及电脑和机械手等零部件组成,如图1所示。分拣过程中,不同的水果被随机放置在传送带上,被工业相机获取图像序列,经过电脑进行目标识别和坐标计算,将这些信息送给控制器,通过控制机械手完成水果的分拣工作。

图1 水果分拣机械手控制系统Fig.1 The control system of fruit sorting manipulator

1.2 工业相机

工业相机是水果分拣机械手控制系统的核心,系统对其部件要求甚高,需要同时具有高曝光率和高分辨率。综合设计需求和成本考虑,选用国内千里眼公司5KF20型号的高清工业相机。该相机采集速度高达3000帧,分辨率为1920×1080。水果分拣机械手控制系统采用5V外部触发控制器件对工业相机进行曝光控制,从而得到实时图像。

1.3 相机标定

为了实现相机坐标和实际坐标之间的转换,对工业相机进行了精准的标定。在电脑上生成5×7的棋盘方格,每个方格的尺寸为3cm×3cm,如图2(a)所示。利用打印机进行1:1打印,再从不同的角度对棋盘方格进行拍照,采集30张不同角度的照片,如图2(b)、(c)所示。

图2 工业相机标定流程Fig.2 The calibration process of industrial camera

采用图像处理算法对相机进行标定处理,通过张正友相机标定算法进行计算,可以得到相机内部参数R1和畸变参数R2的表达式为

(1)

R2=[-0.518 0.534 0.066 -0.138]

(2)

2 基于BP神经网络的目标识别

2.1 BP神经网络算法

人工神经网络是一种模拟大脑神经联系处理信息的一种数学模型,包含大量的神经元节点和细胞,用来对事物进行处理,在此采用BP神经网络进行水果的目标识别。BP神经网络是一种成熟的人工智能算法,属于多层前向型网络,采用误差逆传播算法训练。该算法包括输入、隐含和输出3层网络,可以通过迭代学习获取和保存大量输入、输出的映射关系。BP神经网络架构如图3所示。

图3 BP神经网络算法Fig.3 BP neural network algorithm

由图3可以看出:BP神经网络输入层有i个神经元,采用的表达式为X=(x1,x2,…xi)T;隐含层包括m个神经元,采用的表达为O=(o1,o2,…,om)T;输出层包括k个神经元,其表示式为Y=(y1,y2…yk)T。

BP神经网络隐含层和输入层之间的关系为

(3)

其中,f为BP神经网络隐含层的激活函数;v为权重。

同理,BP神经网络输出层和隐含层之间的关系为

(4)

其中,f为BP神经网络输出层的激活函数;w为权重。

网络模型训练预测和期望之间误差为

(5)

该算法模型在求优过程中采用梯度计算法,也就是在权值修正时迅速下降求优,计算表达式为

(6)

(7)

其中,η和δ分别为BP神经网络学习速率和误差信号因子。

2.2 基于BP神经网络的目标识别过程

为了精确地对目标进行识别,需要采用大量的数据样本对BP神经网络进行反复训练,包括训练输入和期望输出。训练输入是指采集到的图像的某些特征量,期望输出则是图像对应的代号,即识别结果。在使用样本对BP神经网络进行训练过程中,由于环境等因素,图像中包含很多干扰信息,会增加网络算法训练的复杂度,故采用不变矩的策略对干扰因素进行过滤。基于BP神经网络的目标识别过程如下:

1)采集目标图像信息,利用工业相机从不同角度获取待识别目标的图像。

2)图像预处理,采用灰度化对图像进行处理。

3)计算不变矩,利用高度浓缩的图像特征作为目标识别的依据。

4)输出训练和识别两种样本。将从各个角度获取的目标图像进行预处理后,对每张图像进行不变矩求值,把组成的向量和图像对应的代号结合起来,形成了一个训练样本。若去除掉训练样本,剩余的则都是待识别的样本。

5)建立BP神经网络。单隐含层的BP神经网络实现对目标水果的识别,网络结构如图4所示。其包括55个神经元的隐含层,该层传递函数为S函数。本文待识别的水果有苹果、梨子、桃子和李子等4种,因此将输出层设置为4个神经元,且传递函数采用线性函数。

图4 BP神经网络结构示意图Fig.4 The structure diagram of BP neural network

6)训练BP神经网络。为了使BP神经网络算法同时满足局部收敛性和具有梯度下降法,采用性能非常稳定的LM(Levenberg-Marquardt)算法。

7)识别目标。经过大量不变矩样本训练后的BP神经网络权重趋于稳定,当给出需要识别的图像时,该模型可以快速通过映射给出精准的识别结果。

基于BP神经网络的目标识别流程如图5所示。

图5 基于BP神经网络的目标识别流程图Fig.5 The flow chart of target recognition based on BP neural network

3 水果分拣系统的目标定位

3.1 图像处理的模板匹配

模板匹配是指在1幅待识别图像中寻找和给定目标模板对应关系的一种技术。该技术将建立的模板图像称为模板图像,将需要进行识别的图像称为匹配图像。根据模板匹配的概念可以得知:若需要在被识别的图像中寻找到和模板图像相似的子图像,需要对模板图像和匹配图像的相似度进行计算。当相似度高时,表示匹配上了;反之,则表示没有匹配上。正常情况下,模板图像和匹配图像在方向上和尺寸上都会存在差异,故在匹配过程中需要考虑目标物体的尺寸和方向。

创建模板匹配主要包括以下几个步骤:①获取作为模板的图像;②在图像中选择需要创建模板的区域,构建一个模板;③从实时的图像中查找模板;④得到匹配的结果。图像处理的模板匹配流程如图6所示。

图6 图像处理的模板匹配流程图Fig.6 The flow chart of template matching in image processing

基于灰度值进行模板匹配,并对目标图形进行匹配,也就在模板滑动过程中先对模板灰度值和待测目标灰度值计算差值,再对差的绝对值求平方。本文采用SSD相似性对模板图像和匹配图像进行计算。SSD是模板和图像之差的平方和,其计算表达式为

(8)

其中,c+v为模板图像T第r行、第c列的灰度值;f(r+u,c+v)为目标图形第r+u行、第c+v列的灰度值。

模板匹配的原则是:当模板图像和目标图像的差别越大时,相似度的函数值也就越大,为了提高匹配准确性,需要寻找相似度最小值。

3.2 目标定位

在水果分拣机械手控制系统中,需要获取目标水果中心点的三维坐标以及表面在绕x、y和z的旋转角度。为此,采用圆搜索区域检测目标水果的圆心边缘点,通过拟合这个圆心获取目标物体的坐标位置。

假设经过相机标定后两个相机内部参数相同,两相机在x轴的距离为B,任意一个目标物体P(xc,yc,zc)在左右两相机成像为PA(xa,ya,za)和PB(xb,yb,zb),PA和PB两点在图像坐标系分别对应为pL(uL,vL)和pR(uR,vR),vL=vR。双目相机三维坐标示意如图7所示。

图7 双目相机三维坐标示意图Fig.7 The schematic diagram of 3D coordinate of binocular camera

图7中,根据三角相似定理,可得

(9)

(10)

由相机投影原理可得

uLzc=axxc+u0zc

(11)

vLzc=ayyc+v0zc

(12)

最后,可以计算出P的三维坐标为

(13)

由此得到P在空间坐标系中的坐标,则水果分拣机械手便可对目标物体进行抓取装箱。

4 试验

为了检验水果分拣机械手系统的可行性,将苹果、梨子、桃子和李子等4种水果混在一起,每种水果取3个,进行编号。首先,进行人工测量和特征采集;然后,确定水果的类别;最后,利用水果分拣机械手进行实际的识别和分拣。分拣结果如表1所示。

表1 水果分拣机械手分拣结果Table 1 The sorting results of fruit sorting robot

由表1可以看出:基于BP神经网络和图像识别的水果分拣机械手系统得到的结果和人工识别高度一致,只是在果径测量上稍有误差。这表明,系统具有可行性。

5 结论

设计的基于BP神经网络和图像识别的水果分拣机械手系统,可以同时实现对多种水果的区分分拣,填补了水果分拣领域的空白。系统基于BP神经网络和图像处理对目标水果进行种类识别,再利用图像处理的模板匹配对目标进行实时定位,最后控制水果分拣机械手进行分拣和装箱。试验结果表明:系统可以实现对多种水果的分类,准确性非常高,具有可行性。

猜你喜欢

机械手图像处理灰度
抓取脆弱物体的机械手
采用改进导重法的拓扑结构灰度单元过滤技术
基于灰度拉伸的图像水位识别方法研究
基于图像处理的机器人精确抓取的设计与实现
机器学习在图像处理中的应用
基于最大加权投影求解的彩色图像灰度化对比度保留算法
基于灰度线性建模的亚像素图像抖动量计算
基于图像处理的定位器坡度计算
搬运机械手PLC控制系统设计
基于ADAMS与MATLAB的机械手控制系统仿真研究