APP下载

基于机器视觉的玉米种粒破损识别方法研究

2019-12-22徐文腾马伟童金城谦

农机化研究 2019年2期
关键词:向量分类函数

崔 欣,张 鹏,赵 静,徐文腾,马伟童,金城谦

(1.山东理工大学 农业工程与食品科学学院,山东 淄博 255000;2.雷沃重工股份有限公司,山东 潍坊 261206)

0 引言

我国是农业生产大国,玉米作为我国重要的粮食作物之一,于2012年开始成为我国第一大粮食作物,其战略地位可见一斑[1]。由于玉米种粒在收获、储藏的过程中会因机械啃伤等各种因素产生损伤,影响发芽率及玉米产量,所以玉米种粒的播前破损检测工作不可或缺。这一过程可以保证玉米种粒发芽率,对玉米的增产具有重要意义。

20世纪70年代初,机器视觉技术在生物医学图像和遥感图像处理两项应用中取得不俗成果,并由此开始逐渐发展起来[2]。随着计算机技术的快速发展,计算机的性价比和处理速度不断提高,为机器视觉相关技术的研究和应用奠定了坚实基础,使机器视觉技术广泛地应用于图像分析、对象分类与品质检测等领域中。机器视觉检测技术与人工检测技术相比,具有精度高、速度快、重复性好、信息量大等优点,在谷物外观品质检测领域的发展及应用前景十分广阔。机器视觉技术在谷物外观品质检测中的应用主要有:农产品及作物种子表面裂纹检测、农作物种子精选及分级、根据农产品表面信息进行损伤缺陷检测并进行分级等。机器视觉检测技术逐渐取代人工检测,是自动化检测发展的必然趋势。因此,机器视觉检测技术在农产品外观品质检测方面的研究具有比较高的理论价值和实际意义[3]。

在基于机器视觉的玉米种子外观品质检测方面的研究方面,国外一些发达国家起步的较早,于20世纪90年代就开展相关研究。研究内容主要包括玉米种粒的颜色、质量、尺寸等品质特征检测及玉米种粒的缺陷检测等。21世纪以来,我国也围绕机器视觉技术逐渐开展了玉米种子品质检测、品质分类、形态识别及自动精选等方面的研究。目前,国内外针对玉米种粒的破损检测大多偏向于特征参数的提取检测及算法研究上,有关破损玉米种粒智能自动识别模型的研究较少。

本文将机器视觉技术运用到玉米种粒的破损识别检测中,对玉米种粒图像进行了噪声分析、降噪和分割等预处理,并提取了玉米种粒的特征值。将机器学习中的支持向量机监督学习模型应用到玉米种粒的破损识别检测中,通过训练支持向量机(SVM)形成玉米种粒破损识别模型,从而根据玉米种粒的几何、形状特征自动判断种粒是否合格,为实现玉米种粒的在线破损识别及自动分类奠定了基础。

1 玉米种粒图像获取及预处理

1.1 图像获取

玉米种粒的图像采集均在玉米种粒图像获取装置上进行,如图1所示。玉米种粒的品种是登海605;相机选用CCD工业相机,焦距4mm,光圈F1.2,安装时镜头光轴距传送转盘的高度为15mm,采集的图像尺寸为200×200像素;光源采用环形白色光LED灯,内直径为27mm,外直径为46mm。共采集破损玉米种粒图像与完整玉米种粒图像各100幅,用来进行图像预处理、特征提取、对SVM进行训练及识别效果检测等工作。

1.支架 2.CCD工业相机 3.环形光源 4.图像采集区图1 玉米种粒图像获取装置

1.2 图像预处理

在进行玉米种粒特征提取之前,需要将CCD采集到的玉米种粒图像进行预处理。图像预处理能很好地改善在图像的获取、传输、变换过程中因失真、噪声、曝光不足或过量等因素与原图像产生的差异,以便进行后续图像识别等工作[4]。首先,将采集到的玉米种粒图像进行灰度化处理,判断噪声类型,选择适当的方法对图像进行降噪;图像降噪完成后,进行玉米种粒图像的分割,通过忽略目标区域外的其他区域得到待检图像,以便进行特征提取。

1.2.1 图像降噪

灰度化后的玉米种粒图像如图2所示。由图2可知:采集到的玉米种粒图像存在噪点及细小杂质点,噪声种类人工初步判断为椒盐噪声。采用差影法对采集到的玉米种粒图像进行噪声分析,在采集环境完全相同的前提下(即保证采集对象、采集设备、采集角度、光源光照强度等都相同),连续采集2幅玉米种粒的图像,将获得的2幅连续采集的图像作减法运算,得到的分析结果如图3所示。由图3可以清晰地看出噪声类型为椒盐噪声,据此判断采集到的玉米种粒图像噪声类型为椒盐噪声[5]。用上述方法对另外两组连续采集的玉米种粒图像进行差影法分析,得出一致结论。

图2 灰度化后的玉米种粒图像

查阅资料可知,去除椒盐噪声效果比较好的方法是中值滤波法,故本文对玉米种粒图像采用中值滤波法进行图像降噪。经中值滤波降噪处理过的玉米种粒图像噪点大大减少(见图4),适合对图像进行下一步处理。

图4 玉米种粒降噪后的图像

1.2.2 图像分割

对经过降噪处理的玉米种粒图像进行图像分割。玉米种粒的拍摄背景选择与玉米种粒颜色反差较大的黑色,由于同一品种的不同玉米种粒在外观、颜色等方面区别不大,其灰度直方图峰值相似,故本文采用灰度阈值法中的二值化处理来对玉米种粒图像进行分割。图像二值化处理即选择一个合适阈值,将图像转化为黑白二值图像,从而完成目标图像和背景图像的分割。二值化分割具体定义为

(1)

式中T—阈值。

通过观察分析采集到的玉米种粒图像的灰度直方图,可以快速、准确地找出合适的图像分割阈值约为20,如图5(a)所示。图5(b)为用此阈值分割后的玉米种粒图像,可以看出分割后的玉米种粒图像还存在部分大的噪点或者杂质点,所以本文将所有闭合区域的像素数最小值设为100,把图像中像素数小于100的目标区域设置为背景。处理后的图像如图5(c)所示。此方法可以有效地去除图像中较大的噪点和杂质点,得到的图像中玉米种粒轮廓明显,适合进行下一步的玉米种粒特征值提取工作。

2 玉米种粒图像特征提取

在玉米种粒的图像识别系统中,玉米种粒的特征参数的选用和提取直接关系到玉米种粒的识别精度。图像的特征种类包括颜色特征、几何特征、形状特征及纹理特征等。由于玉米种粒的破损部分主要集中在胚部分,破损部分与完整玉米种粒颜色特征对比不明显,所以本文不采用玉米种粒的颜色特征,只从几何特征与形状特征中提取特征参数作为玉米种粒破损的检测指标[6-8]。

图5 玉米种粒分割图像

2.1 几何特征提取

破损玉米种粒的外在形状与完整玉米种粒差异较为明显,所以本文选择提取玉米种粒的部分形状特征作为检测指标。根据玉米种粒的形态特征,分别提取玉米种粒的周长、面积、周长面积比、长轴长、短轴长及长宽比6个几何特征[9]。玉米种粒的几何、外观特征示意图如图6所示。

图6 玉米种粒几何及外观特征示意图

图6中,L为周长;Pab为长轴长度;Pcd为短轴长度;S为面积;S1为最小外接矩形面积;S2为最小外接圆面积。几何特征及参数如表1所示。

表1 玉米种粒几何特征及参数

2.2 形状特征提取

除上述6个几何特征之外,还提取了玉米种粒的10个形状特征,其中包括玉米种粒的矩形度(S/S1)、圆形度(4πS/L2)、紧凑度(S2/Lab),如表2所示。

表2 玉米种粒的形状特征及参数

除此之外,还包含7个彼此独立的Hu不变矩特征量。矩在其数学定义中可以表征随机量的分布情况,如果把灰度或者二值图像看作一个二维密度分布函数,就可以把矩概念引入到图像分析中。各阶矩的物理意义分别为:零阶矩(m00)表征二值图像的面积;一阶矩(m01,m10)表征目标区域质心位置;二阶矩(m02,m11,m20)反映目标的主轴、辅轴的长短及主轴方向角;三阶矩(m03,m12,m21,m30)描述图像细节,如目标的方向和斜度、反应目标的扭曲程度等。Ming-Kuei Hu在1962年利用二阶和三阶中心矩构造了7个不变矩,即Hu不变矩。Hu不变矩满足RST(rotate,scale,translation,即旋转、缩放、平移)不变性,不因目标在图像中的位置、大小、角度而有所改变,对于识别纹理简单的图像识别精度较高,效果较好。7个Hu不变矩的具体定义如式(2)~式(8)所示。式中,ηpq分别代表各阶矩中心矩。

I1=η20+η02

(2)

I2=(η20-η02)2+(2η11)2

(3)

I3=(η30-3η12)2+(3η21-η03)2

(4)

(5)

I5=(η30-3η12)(η30+η12)×

[(η30+η12)2-3(η21+η03)2]+

(3η30-η03)(η21+η03)×

[3(η30+η12)2-(η21+η03)2]

(6)

I6=(η20-η02)[(η30+η12)2-(η21+η03)2]+

4η11(η30+η12)(η21+η03)

(7)

I7=(3η21-η03)(η30+η12)×

[(η30+η12)2-3(η21+η03)2]-

(η30-3η12)(η21+η03)×

[3(η30+η12)2-(η21+η03)]

(8)

Hu不变矩提取流程图如图7所示。

图7 提取Hu不变矩流程图

3 玉米种粒图像识别检测算法

本文提出的破损玉米种粒识别方法可以概括为3部分,即玉米种粒的预处理、玉米种粒特征提取、模型训练与目标识别。图像识别流程图如图8所示。

图8 图像识别流程图

3.1 支持向量机分类原理

支持向量机(SVM,Support Vector Machine)是20世纪90年代初由Vapnik和Corinna Cortes等人根据统计学习理论提出的一种机器学习的新方法[10-11]。SVM是一个有监督的学习模型,与传统的人工神经网络相比,结构更加简单而且泛化(generalization),能力明显提高,通常应用在模式识别、分类以及回归分析等领域。

支持向量机的核心思想在于核函数,就是利用合适的非线性映射把低维空间向量集映射到一个较高维数的特征空间,并在这个空间里找到一个具有最大边界的最优线性分类面(最优分类超平面)(见图9),从而解决了低维空间向量集难以划分的问题。

图9 最优分类超平面示意图

SVM最初是针对二值分类问题提出的,对于样本集(xi,yi),i=1,2,...,n;xi∈Rn;yi∈{-1,1},构造分类面WX+b=0,能将两类样本准确无误地分开,并且使两类之间的分类超平面距离达到最大[12]。W为权值向量;X为输入向量;b为偏置。线性判别函数的一般形式为g(x)=WX+b,用同倍缩放W、b的方法进行归一化,使离分类面最近的样本满足|g(x)|=1,那么两类所有样本都满足|lg(x)|≥1,两类样本的分类间隔为2/‖W‖。

综上所述,SVM分类器要解决的问题用数学来表述:在满足式(9)的前提下,求式(10)的最小值,则

yi(wTxi+b)-1≥0i=1,2,...n

(9)

(10)

3.2 支持向量机核函数选择

支持向量机通过非线性变换,将输入空间映射到高维度特征空间,可以用低维输入空间的某函数代替高维特征空间的内积计算,大大降低计算量,有效避免“维数灾难”,这样的函数即被称为核函数。

核函数包括线性核函数、多项式核函数及高斯核函数等。其中,高斯核函数最常用,可以将数据映射到无穷维,也叫做径向基函数(RBF)。本文在多种核函数中选用了RBF核函数,此核函数可以适用于低维、高维及不同样本量等情况[13-14]。

3.3 SVM训练

本文在完成玉米种粒的破损检测及分类的前提下,尽量简化识别分类系统,缩短检测时间。根据识别系统要实现的功能,选择使用二值SVM分类器。利用图像采集装置采集玉米种粒图像,将采集到的玉米种粒图像均分为训练样本和测试样本,即训练样本和测试样本均含各不相同的50幅完整玉米种粒图像和50幅不同程度的破损玉米种粒图像。用训练样本对SVM进行训练,特征量共16个,将待检测的玉米种粒分为两类,“合格”输出为1,“不合格”输出为0,即SVM训练有16个输入量、2个输出量。

建立训练样本集,选择RBF核函数,将输入玉米种粒图像样本进行归一化并构造核矩阵H{1,1},计算出权值向量W和超平面系数b,最终构造出最优分类超平面并训练获得识别模型。

4 试验设计与结果分析

4.1 试验设计

本文的实验运行平台的计算机主机配置:Intel(R) Core(TM) i5-3230M CPU@2.60GHz,RAM 8.00GB,显卡NVIDA GeForce GT 650M;试验运行环境:MatLab R2014a编程语言环境。

4.1.1 Hu不变矩的不变性试验

为验证Hu不变矩的旋转、缩放和平移不变性,本文设计了1组测试Hu矩不变性的试验。利用图像采集装置分别采集同一粒玉米种子正放、顺时针旋转90°、缩放0.5倍、向右平移20像素等4幅图像,确保采集环境完全相同,图像大小均为200×200像素。将4幅图像分别进行Hu矩计算,得到Hu不变矩的值,如表3所示。

表3 玉米种粒图像旋转、缩放和平移后的Hu不变矩

Table 3 The Hu invariant moments of corn seed images after rotated, scaled and translation

4.1.2 SVM模型测试试验

针对前面训练得到的SVM识别模型,为验证其可行性与准确率,设计了一组SVM识别模型测试试验。

用预先采集的测试样本对得到的SVM识别模型进行验证,以测试识别正确率、测试识别时间作为衡量SVM模型的指标。其中,测试识别率是指正确识别的玉米种粒的个数占所有参检玉米种粒的比值;测试识别时间是指用训练好的SVM识别模型对测试样本进行识别所需时间;试验重复10次,各指标的值取10次的平均值。

用100幅测试样本图像对SVM模型进行验证,将每次测试得到的100个玉米种粒完整性检测结果与人工判断结果做对比,以人工判断为准,计算模型识别正确率,并记录测试100幅图像所需时间。识别正确率与识别时间取10次测试均值之后,最终得到结果的如表4所示。

表4 试验结果

4.2 试验结果分析

针对Hu矩不变性的验证试验,由表3数据可知:玉米种粒在目标区域内旋转90°、缩放0.5倍、向右平移20像素后Hu矩没有变化,证明图像的Hu不变矩具有不变性。

针对SVM识别模型的测试试验,由表4中数据结果可知:经过10次试验,训练得到的SVM玉米种粒图像识别模型对玉米种粒破损识别准确率达到95%以上,识别100幅图像的时间为1.27s,识别效果较好,识别速度较快。

5 结论

1)利用差影法确定了玉米种粒图像噪声类型,采用中值滤波法对图像降噪,通过灰度阈值法完成了图像的分割。

2)提取了玉米种粒的周长、面积、周长面积比、长轴长、短轴长及长宽比6个几何特征和矩形度、圆形度、紧凑度和7个Hu不变矩10个形状特征,共16个特征值。利用提取的玉米种粒的16个特征量对SVM进行训练,构造了SVM智能识别模型。

3)对图像Hu不变矩的不变性进行试验验证,结果表明:图像的Hu矩具有旋转、缩放和平移不变性。

4)对训练好的SVM识别模型的识别精度及识别时间进行测试,结果表明:SVM识别模型能够较好地完成对玉米种粒破损的识别。

猜你喜欢

向量分类函数
向量的分解
二次函数
第3讲 “函数”复习精讲
分类算一算
聚焦“向量与三角”创新题
二次函数
函数备考精讲
教你一招:数的分类
说说分类那些事
向量垂直在解析几何中的应用