一种基于机器视觉的柑橘表面质量检测方法

时间:2022-06-28 04:24:42

一种基于机器视觉的柑橘表面质量检测方法

摘要 为了保证柑橘质量,有必要对柑橘进行质量检测和分级。针对传统人工筛选检测成本高、效率低的问题,提出了一种基于机器视觉的智能分析方法,能够快速、准确地判别柑橘表面质量。通过对CCD采集到的图像进行预处理、目标分割、缺陷特征提取,利用支持向量机(SVM)训练缺陷样本,最后对测试样本进行模式识别。实验结果证明,通过该方法研制的柑橘检测系统可以实现无损化、智能化检测,具有良好的应用前景。

关键词 柑橘质量;机器视觉;检测;支持向量机

中图分类号TP39 文献标识码A 文章编号 1674-6708(2014)112-0140-02

1系统原理与结构

柑橘自动检测系统分为硬件和软件部分组成。硬件部分包括:光照箱、LED光源、CCD彩色摄像机、图像采集卡、计算机、水果传输系统、PLC等。软件部分包括:Visual Studio 2010、OpenCV等,通过Visual Studio 2010开发上位机平台,OpenCV处理图像[5]。系统对传输带上的柑橘进行图像采集、图像处理、分类分级和分拣操作。CCD摄像机安装在光照箱内,当传输带运动一定距离时,就会通过电感式接近开关触发CCD采集一帧柑橘的图像,然后计算机及其软件系统针对该图像进行处理识别,并将结果发送给PLC,最后通过旋转电磁铁动作分拣柑橘。

2 图像处理与识别

2.1 图像预处理

CCD采集到的柑橘图像以RGB位图的形式储存在PC上,为了方便后续图像处理,备份原图。图像预处理的目的是找到柑橘单果目标,而柑橘和背景的亮度差别很大,这有利于分割目标。首先将彩色图像灰度化,并增强对比度,然后采用大津法将图像二值化,得到带毛边的二值图像,可以利用中值滤波去掉毛刺。接着对二值图像进行边缘检测,采用Canny 算子效果较好。然后通过形态学处理,比如膨胀连通边缘小区域,得到完整的柑橘轮廓。

设为输入图像,是结构元素,用b对函数 f进行膨胀运算,定义为 ⑴

其中 和 分别是 f和 b 的定义域。若结构元素为正,则输出图像变亮,暗的细节被消除或者减少。

最后利用轮廓搜索算法找到柑橘的外部轮廓。保留轮廓区域内的彩色图像,而将轮廓区域外的区域填充为白色,也就得到了柑橘的单果图像。

2.2 图像分割

通过观察水果彩色图像可知,水果缺陷处的颜色一般较深,与果皮正常颜色反差较大。由于HIS色彩空间用色调H、饱和度S和亮度I来描述色彩信息,更符合人类的视觉特性,所以这里将其中一幅RGB位图转换为HIS位图,使用如下公式进行转换。

(2)

(3)

(4)

(5)

重点分析亮度分量I的图像,将其灰度图二值化,得到了了带有缺陷纹理和柑橘边缘的黑白图像,为了去掉边缘,将该黑白图像与柑橘轮廓图像求和,得到了只剩黑色缺陷区域的二值图像。保留缺陷区域内的彩色图像,而将缺陷区域外的区域填充为白色,分别为腐烂、干疤(褐斑)、日灼和网纹。

2.3 特征提取

为了后续的柑橘损伤识别工作,要对损伤图像提取特征值。彩色图像常用的特征一般包括:颜色特征、纹理特征、形状特征和空间关系特征。这里不涉及对空间关系的研究,只考虑前三种图像特征信息。

1)颜色特征

通过提取颜色和灰度特征,如缺陷位置颜色平均值 R、G、B、H、S、I ,以及灰度平均值 Gray 等都可以获得。

2)纹理特征

描述纹理的名词有平滑、粗糙、精细、粒度、规律性和方向性等,但将这些描述转变为数学模型比较困难,因此这里运用了统计方法中的灰度共生矩阵,提取图像纹理的4个主要特征,即缺陷能量、清晰度、熵值、相关性等。

3)几何特征

与水果分级相关的几何特征主要有缺陷种类、缺陷数目、缺陷面积、水果面积以及缺陷面积与果表面积的比例等。

2.4 图像识别

支持向量机(SVM)是目前较理想的学习分类算法,广泛应用于统计分类、图像识别、生物信息学等领域。相比其他的分类算法,SVM具有很多优点,比如不需要庞大的学习样本,训练收敛速度快,具有较强的逼近能力和泛化能力。SVM通过核函数将特征向量映射到高维空间,将线性不可分问题转换为线性可分问题,最终构建了一个最优超平面分离正负样本,解决了二分类问题。使用最优判别函数来判断向量所对应的类别,定义为

(6)

(7)

其中,表示内积函数,是线性函数的常数项,是超平面的法向量,和分别是两个类中的“支持向量”。符号函数括号里大于0时取1,小于0取-1,所以的取值要么是 1 ,要么是 -1,分别对应两种类别。

为了识别柑橘的4类基本损伤,即腐烂、干疤、日灼和网纹,需要6()个二类SVM来实现。另外特征的选择要综合考虑完备性和冗余性,使识别的效果和效率达到均衡。因此这里选用6个特征组成特征向量={色调H,饱和度S,亮度I,缺陷能量,清晰度,熵值},作为SVM的输入特征向量,该向量在通过6个二分类SVM分类器后产生了6个输出结果。把输出结果表示为向量,并且和识别模板矩阵中的各行相比较,如果一致表示该特征向量属于对应行的损伤类别。矩阵如表1所示,其中A/B表示A类和B类的判别情况,数值为1时判为A类,为-1时判为B类,为0时判为其它类。

损伤类别 腐烂/干疤 腐烂/日灼 腐烂/网纹 干疤/日灼 干疤/网纹 日灼/网纹

腐烂

干疤

日灼

网纹 1

-1

0 1

-1

0 1

-1 0

1

-1

0 0

1

-1 0

1

-1

表1 识别模板矩阵

3 实验与结果

3.1 分类实验

针对4类缺陷,每类给出10个训练样本,共40个训练样本组成训练集,用来训练SVM分类器。另外提供120个测试样本(每类30个)进行测试,得到测试结果如表2所示。

损伤类别 腐烂 干疤 日灼 网纹 准确率/%

腐烂 29 0 1 0 97.7

干疤 0 28 0 2 93.3

日灼 2 0 28 1 93.3

网纹 0 0 1 29 97.7

合计 95

表2 柑橘损伤识别结果

柑橘120个测试样本中有114个判断为正确,总体识别率为95%,满足规定的应用要求。相比较BP神经网络等其他识别算法,SVM不仅有较高的识别率,而且训练和识别时间较短,实验结果比较理想。但是,本课题识别的缺陷种类较少,可以尝试添加其他常见缺陷,扩充识别的范围。由此带来了新的问题,即缺陷特征的选择也要随之改变。所以在以后的实验中,还可以尝试新的缺陷特征,提高区分度,最终提高缺陷种类的识别率。

3.2 分级实验

柑橘的等级可以划分为优等果、一等果、二等果和等外果。分级的参考依据有缺陷种类、数目、直径、面积以及缺陷面积与果表面积的比例。根据识别的结果和几何特征提取的参数,参照柑橘的等级对照表,通过上位机软件编程实现柑橘的分级,并通过下位机系统和旋转电磁铁动作进行分拣。

4 结论

搭建了柑橘表面图像的采集平台,针对腐烂、干疤、日灼、网纹四种损伤的识别,进行包括图像增强、彩色空间转换、形态学处理等预处理措施,得到单果图像。然后利用缺陷处较果皮正常颜色反差大的特点,进行图像分割,得到缺陷图像。接着提取缺陷处的颜色特征和纹理特征,组成识别的特征向量。最后,设计了6个二类SVM分类器,实现了柑橘的表面损伤识别。此外,根据识别结果和几何特征参数,成功地实现了柑橘的分级。

参考文献

[1]应义斌,黄永林.用于水果实时分级系统的同步跟踪自动控制装置[J].农业工程学报,2002,18(4):163-168.

[2]林开颜,吴军辉.基于计算机视觉的水果分级技术研究进展[J].微型机与应用.2009,28(10):1-4.

[3]王水平,唐振民.基于SVM的水果分类算法研究[J].武汉理工大学学报.2010,32(16):44-47.

[4]刘禾.计算机视觉在水果自动分级中的应用研究[D]:[博士学位论文].北京:北京农业工程大学,1995.

[5]刘瑞祯,于仕琪.OpenCV教程[M].北京:北京航空航天大学出版社,2009-4.

[6]章毓晋.图像工程[M].北京:科学出版社,2005.

上一篇:500kV无人值守变电站巡视质量的智能优化建议 下一篇:蒸发温度对工程机械空调系统的影响简析