基于MATLAB的计算机视觉水果分级检测系统

一、课题介绍

计算机视觉应用于水果的品质检测,带来了许多方便。既可以提高检测的精度、准确度。又节省了大量的劳动力,让人们从繁重的人工检测工作中解脱出来。本文以苹果为研究对象,研究了计算机视觉技术应用于水果分级检测的基本理论和方法。

研究了苹果图像的预处理,包括平滑滤波、图像的灰度化以及图像的二值化。

研究了苹果的大小检测。先把苹果图像与背景分离,再计算出苹果图像的像素点数,通过预先测定出的一个像素点与真是面积的比值,进而算出苹果的真是面积,最后通过直径的大小来确定苹果大小等级。

研究了苹果的颜色检测,通过HIS颜色模型中的H分量来判定出苹果的着色面积,通过着色面积与苹果的大小做比,得出苹果的着色比,通过着色比来判定苹果颜色等级。

研究了苹果的缺陷检测。对苹果图像的灰度化,再通过用合适的阀值二值化图像确定出缺陷区域,在通过一些简单的运算得出缺陷的面积,通过缺陷的面积确定苹果的缺陷等级。

二 背景

2.1 研究的目的与意义

自古以来我们国家就是一个农业大国,农业在国民收入中占据了很大的比重。而在农业中水果的种植又十分广泛。但一直以来我国水果出口情况一直不如国外,这不是说我国的水果质量比别国的差,而是我国的水果在后序的分级方面做的比不上外国。现在随着人们的生活水平提高,对于质量的要求就高了,所以说水果的分级就显得十分的必要。但是我国的水果分级工作大部分是靠人力完成,这就产生了很多的问题,比如说:工作量十分大,要占用许多的劳动力来完成这件事,而且效率也不高;再者说人的疲劳和天生对色泽等方面的敏感度不高,同样对分级的质量产生影响。虽然近些年我国在机器检测中取得了一些成就,使得在水果的大小、颜色方面的检测可以让机器代替人工去完成。但由于检测方法比较简单,所以完全达不到市场的要求和人的期望。

随着计算机的迅速发展,计算机视觉技术被广泛应用于农产品检测中。所以通过将计算机技术和图像处理等许多学科知识综合起来,先通过对水果大小、颜色、缺陷各个方面分别进行检测,再对各个检测结果进行综合分析。这样得出的判断包含的方面比较全面,而且图像处理知识的应用使得检测更加精确。这样水果的检测才达到真正意义上的智能化。本课题就是介绍了基于计算机图像处理的水果分级检测。

三、 技术路线

采用CCD摄像头和图像采集卡工具完成对图像的采集。并传输到计算机上为后续的图像处理做准备。

对采集到得图像进行图像的预处理,使得后续的检测分级更加的精确。

确定图像的分级参数,从水果图像的大小、颜色和缺陷这三个方面来分别进行分级。

对各个方面的分级结果进行综合,得出水果的品质等级。

三 苹果的大小检测

3.1 大小检测分级研究

目前水果的大小识别方法主要有两个方面:通过水果的外接矩形等方法确定水果的的果径大小,进而通过果径的大小来确定水果的大小等级;通过对水果的边缘进行傅里叶变换,通过傅里叶系数来确定水果的大小、形状等一些特征值,以此来判定水果的大小。现有的水果大小识别方法有以下几种方式:

最小外接矩形法

其基本的方法是先确定水果的形心,然后将水果每绕形心旋转3度后就拍一照片,找出所有照片中苹果外接矩形最小的那一张。那么这张图片的最长的那条边的长度就是苹果的果径长度。进而通过果径的长度来判定水果的大小等级。

图3-1 外接矩形法

最大果宽法

水果的大小可以通过水果的直径来表示,所以可以用果宽来对苹果的大小进行分级。对于确定果宽大小,第一步要求出苹果的果轴,果轴就是花萼和花梗的连线。果轴的确定对于静态的图像来说非常容易。果宽就是垂直于果轴的直线与苹果边缘交线中最长的那一条长度。

图3-2 最大果宽法

果径法

这种方法把苹果看成是球体,通过边缘提取和细节处理后,计算出水果的形心,果梗与形心的连线就是果径,通过形心与果径垂直的线就是果宽。通过果宽的大小来确定出苹果的大小等级。

投影面积法

CCD摄像头拍摄的水果图像是二维的平面图,计算此投影面积S,根据大量试验找到一个合适系数K'使得K乘以S接近水果真实的表面积。最后用这个近似的表面积来表示水果大小,并用于分级。由于很难找到合适的K值使所有的苹果近似面积接近真实表面积,该方法稳定性差。准确率低,不宜用在在线苹果大小检测上。

综上所述,最小外接矩形法计算量太大,不满足快速检测的要求.最大果宽法和果径法计算量小,但是根据得到的苹果图像不易找到果轴,因此算法难以实现。投影面积法对于一个苹果只拍摄一个图像,稳定性差,准确率低。

本课题中每个苹果经过采集区域的过程中不停滚动,并被连续采集到3幅不同表面图像,覆盖整个果面的90%以上,可以较完整地反映苹果表面信息,且每幅图像中苹果的面积即苹果最大横截面面积。由于苹果属于圆形果种类,可以把图像中苹果近似看作圆形,带入圆的面积公式计算半径R。R为苹果最大横截面半径,对每个苹果的三幅图像求取三个R值,再求平均,即得到苹果的平均半径R。大小用最大横切面积直径来

表示,因此使R乘以2得到苹果平均直径D,并把D作为大小特征值,这就是改进的投影面积法。

3.2 苹果大小特征提取

用这种改进过的投影面积法,先找出三幅苹果不同侧面拍出来的照片,分别计算他们的面积s1,s2,s3,然后使用公式:

R=sqre(s/pi)

由于判定水果的大小等级一般都是使用水果的直径来判别,所以要计算出水果的直径大小。

D=2*R

然后通过计算出的三个直径D1,D2,D3.求出他们的平均值作为最后得出的直径大小

D=(d1+d2+d3)/3

三幅苹果图像如下:

图3-3 苹果图像1

图3-4 苹果图像2

图3-5 苹果图像3

3.3 苹果大小分级试验与结果

GB10654—89中对于大型果、中型果、小型果的果径大小要求如下。本课题通过对水果的投影面积法,进而计算初水果的直径大小,再利用特定的阀值来对苹果的大小进行区分。

表3-1 苹果等级划分标准

等级 优等 一等 二等 等外
大型果 >=70 >=65 >=60 <60
中型果 >=65 >=60 >=55 <55
小型果 >=60 >=55 >=50 <50

苹果的分级模型可以表示为:

If D>=th1 属于优等果

Elseif D>=th2 属于一等果

Elseif D>=th3 属于二等果

Else 属于等外果

四 水果的颜色检测

4.1 引言

苹果的颜色反映了苹果的品质与口感等一系列方面。品质好的苹果,其色泽、颜色的着色率都很好,而相反品质差的苹果其色泽、颜色的着色率一般都比较差。同时,含糖量多、口感好的一般来说也是着色率比较高的。这样来说,对于水果的颜色检测就显得十分的重要。目前在水果检测中,国外的技术受到硬件和算法的局限,所以技术的成熟度不高,而在我们国内,水果的分级一般都是采用机械分类的方法,其对颜色这方面的检测基本上都无法实现。

4.2 颜色模型

目前的颜色模型可以分为两种类型:一种是面向硬件设备的,比如RGB模型,他是面向打印机、显示器等设备的。另外一种是面向人的视觉感受的,不如HIS模型。而本课题中对于水果颜色的分级是基于人的视觉的,所以选用HIS模型,这种模型更利于我们对水果的特征进行提取。下面介绍几种颜色模型:

RGB模型

在多媒体计算机技术中,用得最多的是RGB模型。其采用R、G、B相加混色的原理,通过发射出三种不同强度的电子束,使屏幕内侧覆盖的红,绿、篮磷光材料发光而产生颜色。RGB是一个加色立方体模型,光源的亮度、色度、纯度混合在R、G、B三个参数中.RGB模型里面任意色光F都可以用R,G,B三色不同分量的相加混合而成:

F=R+G+B

RGB模型采用物理三基色表示,因而物理意义很清楚,适合彩色显象管工作,显示器和扫描仪都采用RGB模型。然而这一体制并不适应人的视觉特点。这种模型从感知来说是不均匀的,并依赖于硬件设备。RGB模型的缺点有:

RGB模型用红、绿、蓝三原色的混合比例定义不同的色彩,使色彩难以用准确的数值来表示,并进行定量分析;

在RGB模型中,由于彩色合成图像通道之间相关性很高,使合成图像的饱和度偏低,色调变化不大,图像视觉效果差;

人眼不能直接感觉红、绿、蓝三色的比例,而只能通过感知颜色的亮度、色调以及饱和度来区分物体,而色调和饱和度与红、绿、蓝的关系是非线性的,因此,难以在RGB模型中对图像进行直接处理.

以下是实验中得出的R,G,B分量:

图4-1 RGB模型中R分量的图像

图4-2 RGB模型中G分量的图像

图4-3 RGB模型中B分量的图像

YUV颜色模型

YUV颜色模型也是使用比较多的颜色模型,由于人眼对于亮度的敏感度远远大于对于色度的敏感度,所以YUV这个模型中,相邻的像素间使用同样的色度值。这样的图像是用牺牲色度来达到压缩图像的目的。这个模型一般用于图像传输中对图像进行压缩处理。

HIS颜色模型

这一模型是面向彩色处理的最常用的模型。HIS模型是基于视觉原理的一个系统,定义了三个互不相关,容易预测的颜色属性,即色调(H),亮度(I)和饱和度(S)。其中,H是表面呈现近似红、黄,绿、蓝等颜色的一种或几种的目视感知属性;I是物体表面相对明暗特性;S是颜色具有“白光”的程度.它有两个特点:

其一,I分量与图像的彩色信息无关,因此对彩色信息处理只需考虑两个分量。

其二,H和S分量与人感受颜色的方式非常相近。这些特点使HIS模型适合于视觉系统感受彩色特性的图像处理算法。

由于人的视觉对亮度的敏感程度远强于对颜色浓淡的敏感程度,为了便于颜色处理和识别,人的视觉系统经常采用HIS颜色空间,它比RGB颜色空间更符合人的视觉特性。RGB与HIS的相互关系分正反两种情况,这里只讨论从RGB转换到HIS的情况。对任何3个在【0,1】范围内的R、G、B三基色,其对应HIS模型中的H、I、S分量可由下面给出的公式计算:

Temp1 =0.5*((r-g)+(r-b)) (4-1)

temp2 =sqrt((r-g).^2 + (r-b).*(g -b)) (4-2)

theta = arccos(temp1./temp2) (4-3)

H=theta G>=B (4-4)

H=360-theta G<=B (4-5)

S=1-3*min(R,G,B)/(R+G+B) (4-6)

I=(R+G+B)/3 (4-7)

以下是本课题实验中所得出的HIS三个分量的图像

图4-4 H分量的图像

图4-5 I分量的图像

图4-6 S分量的图像

4.3苹果表面颜色特性分析

苹果的颜色等级划分包含的方面很多,但主要的方面有三个:红区比例,色度,苹果的着色均匀度

红区的比例反映了苹果的红色区域的面积大小。红色区域面积越大,则苹果的含糖量越高,口感也越好。

色度也是苹果颜色的一个方面,偏黄的苹果色度比偏绿的小。而偏黄的苹果品质要比偏绿的要好。

苹果的着色均匀度也同样重要,着色越均匀的苹果,美观度高、口感好。

4.4 苹果颜色着色度提取与等级划分

苹果的着色度是苹果颜色分级中十分重要的方面,他反映了苹果的红区面积于苹果实际的面积的比。提取的方法是,先提取出苹果HIS模型中的H分量,然后选择合适的阀值对红区进行二值化处理,计算红区的面积。最后用红区面积与苹果的实际面积做比,进而就可以求出苹果的着色度。

下图是苹果的着色区域图:

图4-7 苹果的着色区域

等级的划分可以以下表为依据:

表4-1 苹果等级划分标准

等级 优等果 一等果 二等果 等外果
着色比 >=66% >=50% >=25% <25%

五、 水果的缺陷检测

5.1引言

水果的缺陷检测是检测中最重要的,也是复杂度很高的一个方面,目前的缺陷检测一般采用边缘检测求出缺陷的区域,进而对缺陷进行评估。这其中边缘检测是最重要的环节。

李庆中等[7].通过双金字塔数据形式的盒维数快速计算,得出五个分形维数作为可疑缺陷区的参数,再通过BP形网络结构的人工神经网络,最终实现对梗、萼和缺陷的准确判断。

冯斌等[8].先对水果进行图像的获取与分割,而对于梗萼和缺陷的判决,则通过观察可疑区是上凸的还是下凹来判定,因为如果是梗萼的话那么应在下凹区,而如果是缺陷区,那么大部分都是在上凸区的。这种方法准确度还是挺高的。

5.2水果缺陷检测研究

图像的边缘对人的视觉具有重要意义,一般来说,当人看一个物体时,首先感觉到的就是边缘。边缘是一个区域的结束也是一个区域的开始。利用这一个特性可以分割图像,将缺陷区域从苹果图像中分割出来。目前边缘检测主要有roberts模板、sobel模板、prewitt模板、拉斯算子、canny边缘检测算子这5种方法检测。

Roberts模板检测

-1 0
0 1

图5-1 Roberts模板

Sobel模板检测

-1 -2 -1
0 0 0
1 2 1

图 5-2 Sobel模板

Prewitt模板检测

-1 -1 -1
0 0 0
1 1 1

图5-3 prewitt模板

LOG模板检测

0 1 0
1 -4 1
0 1 0

图 5-4 LOG模板

Canny边缘检测算子

在图像的边缘检测中,抑制噪声和边缘精确定位是无法同时满足的,边缘检测算法通过平滑滤波法去除图像噪声的同时,也增加了边缘定位的不确定性;反之,提高边缘检测算子对边缘的敏感性的同时,也提高了对噪声的敏感性,canny算子力图在抗噪声干扰和精确定位之间寻求最佳的折中方案。

Canny算子检测图像边缘的步骤如下:

平滑图像;

计算滤波后的图像的梯度的幅值和方向;

对梯度幅值应用非极大值抑制,其过程为找出图像梯度中的局部极大值 点,把其他非极大值点置零以得到细化边缘;

用双阀值算法检测和连接边缘;

对比各种算法,本课题我所选用的算法是Canny边缘检测算子进行的检测。效果比较好,可以明显的看出缺陷的区域。

5.3水果缺陷检测试验与结果

下面是对有缺陷的苹果进行的检测,分别用各种边缘检测算子检测出来的图像:

用roberts模板检测

图5-1 用Roberts检测后的图像

用sobel模板检测

图5-2 用Sobel检测后的图像

用prewitt算子检测

图5-3 用Prewitt算子检测后的图像

用log算子检测

图5-4 用log算子检测后的图像

用Canny算子检测

图5-5 用Canny检测后的图像

六 水果分级的系统研究

6.1引言

对于水果的分级检测的研究,国外经过几十年的研究,技术发展的已经比较成熟了。但在国内由于这方面的起步比较晚,所以大部分的分级检测还是采用机械分级,不仅效率不高,最主要的是精度也不是很高。所以本课题的研究是十分具有应用价值的。本课题通过运用计算机技术、图像处理技术达到了对苹果的分级检测的目的。

6.2系统工作原理

水果分级检测的步骤如下:

通过CCD摄像头采集苹果的图像。

对采集到的图像进行传输,传到PC机上。用Matlab软件对图像进行处理。

对图像进行预处理,包括滤波、灰度化、二值化等。

对苹果进行大小检测,通过果径大小进行等级划分。

对苹果进行颜色检测,先将图像RGB模型转换为HIS模型。通过HIS模型中的H分量进行颜色分级。

对苹果进行缺陷检测,使用canny边缘检测算子进行边缘检测,进而检测出苹果的缺陷部分。

系统的流程如下图所示:

图6-1 系统流程图

系统包括硬件部分和软件部分:

硬件部分主要是图像的采集部分,包括CCD摄像机、数据传输设备、一台安装了Matlab软件的计算机。

软件部分主要是图像的处理部分,Matlab编码对图像进行处理与仿真。具体到软件内部的工作流程情况如下所示:

图6-2 软件工作流程图

基于计算机视觉的水果分级检测系统的设计相关推荐

  1. 基于MATLAB机器视觉的水果分级检测系统的设计

    摘 要 计算机视觉应用于水果的品质检测,带来了许多方便.既可以提高检测的精度.准确度.又节省了大量的劳动力,让人们从繁重的人工检测工作中解脱出来.本文以苹果为研究对象,研究了计算机视觉技术应用于水果分 ...

  2. 输电线缺陷检测 计算机工程与设计,基于计算机视觉的焊点缺陷检测系统的设计...

    摘要: Because of unmaturity technology in the pipeline of the spot welding machine,problems such as so ...

  3. 【火灾检测】基于计算机视觉实现森林火灾检测系统带GUI界面

    1 简介 森林是自然中的宝贵资源,同时还维持着生态平衡.森林火灾一旦发生,危害十分巨大,如果能在林火的萌芽状态就进行识别,则可以减少不必要的损失.随着互联网技术的发展,传统的人工监控森林火灾已经被互联 ...

  4. 计算机视觉农作物检测,基于计算机视觉的农作物病害检测系统的研究

    摘要: 农作物病害是制约农业发展的主要因素之一,准确,高效地识别病害对于保证农作物的正常生长具有重要的意义.计算机视觉技术对加速农业现代化建设,提高生产效率影响深远. 本文以农作物病害类别的检测与识别 ...

  5. 基于51单片机的蓄电池容量检测系统的设计(毕业设计资料)

    51,检测蓄电池的容量,并在液晶1602上显示,显示分为4档,0-25%,25%-50%,50%-75%,75%-100%. [资源下载]下载地址如下: https://docs.qq.com/doc ...

  6. 基于51单片机的蓄电池容量检测系统的设计(设计资料)

    51单片机设计,检测蓄电池的容量,并在液晶1602上显示,显示分为4档,0-25%,25%-50%,50%-75%,75%-100%. [资源下载]下载地址如下:https://docs.qq.com ...

  7. 基于单片机的光伏电量检测系统的设计-毕设课设protues仿真

    百度网盘下载地址(991):点击下载 #include <reg51.h> #include <intrins.h>#include "get_status.h&qu ...

  8. 基于单片机的光伏电量检测系统的设计1-毕设课设全套资料

    百度网盘下载地址(992):点击下载 #include<reg51.h> #include<intrins.h> #define uchar unsigned char #de ...

  9. 基于MATLAB的水果分级设计

    基于MATLAB的水果分级识别技术研究 摘 要 本次毕业设计介绍了基于MATLAB的水果分级自动识别,利用手机端获取苹果的样本图像,应用MATLAB软件编程实现了对样本图像的预处理,包括图像滤波.图像 ...

最新文章

  1. python的 局部变量与全局变量
  2. 新年不宕机就等它了!戴尔官网高效编程电脑OptiPlex 直降2500,低至3099!
  3. Python编程语言学习:判断变量是否为NONE或False的几种常见写法(if not用法教程)
  4. 把玩Fedora29操作系统
  5. 比较两个二维数组是否相等
  6. Bounce 弹飞绵羊
  7. 流星,刹那间划过天际
  8. 前端学习(669):流程控制
  9. 【机器学习】 - 关于合适用均方误差(MSE)何时用交叉熵(cross-entropy)
  10. 01-08-02【Nhibernate (版本3.3.1.4000) 出入江湖】二级缓存:NHibernate自带的HashtableProvider...
  11. 极简主义︱使用Turicreate进行快速图像分类迁移训练与预测(六)
  12. Vue指令之v-if
  13. Word文档批量导入
  14. ds1302时钟芯片工作原理引脚电路图及功能
  15. 浏览器访问网站标签页小图标显示
  16. python列表输出学生姓名学号链表_建立一个链表,记录学生的姓名,学号和成绩,
  17. 数据处理过程的潜在风险和应对逻辑
  18. 湖北大学知行学院怎么考计算机,2021年湖北大学知行学院开学时间入学考试及新生转专业相关流程说明...
  19. C++核心准则​NR.4:不要坚持将每个类声明放在其自己的源文件中
  20. 新型和增强的Guardium离群值检测

热门文章

  1. 【调剂】华东交通大学信息工程学院2022年硕士研究生招生预调剂公告
  2. 用PS给外景人像添加逆光效果
  3. linux php curl 升级,Linux下为php添加curl扩展 | 严佳冬
  4. verilog脉冲产生高电平
  5. 火车头伪原创php,使用网站采集软件必备伪原创秘笈
  6. 【FLASH 操作】FLASH 读写等操作 学习
  7. 完美收纳特色装饰 日本小两口的56平温馨窝
  8. Java绝对/相对路径获取与getResourceAsStream()方法
  9. X86与非X86服务器
  10. 2017ios android比例,[图表]iOS与Android全球份额差距正越拉越大