基于计算机视觉的水果分级检测系统的设计
基于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 软件工作流程图
基于计算机视觉的水果分级检测系统的设计相关推荐
- 基于MATLAB机器视觉的水果分级检测系统的设计
摘 要 计算机视觉应用于水果的品质检测,带来了许多方便.既可以提高检测的精度.准确度.又节省了大量的劳动力,让人们从繁重的人工检测工作中解脱出来.本文以苹果为研究对象,研究了计算机视觉技术应用于水果分 ...
- 输电线缺陷检测 计算机工程与设计,基于计算机视觉的焊点缺陷检测系统的设计...
摘要: Because of unmaturity technology in the pipeline of the spot welding machine,problems such as so ...
- 【火灾检测】基于计算机视觉实现森林火灾检测系统带GUI界面
1 简介 森林是自然中的宝贵资源,同时还维持着生态平衡.森林火灾一旦发生,危害十分巨大,如果能在林火的萌芽状态就进行识别,则可以减少不必要的损失.随着互联网技术的发展,传统的人工监控森林火灾已经被互联 ...
- 计算机视觉农作物检测,基于计算机视觉的农作物病害检测系统的研究
摘要: 农作物病害是制约农业发展的主要因素之一,准确,高效地识别病害对于保证农作物的正常生长具有重要的意义.计算机视觉技术对加速农业现代化建设,提高生产效率影响深远. 本文以农作物病害类别的检测与识别 ...
- 基于51单片机的蓄电池容量检测系统的设计(毕业设计资料)
51,检测蓄电池的容量,并在液晶1602上显示,显示分为4档,0-25%,25%-50%,50%-75%,75%-100%. [资源下载]下载地址如下: https://docs.qq.com/doc ...
- 基于51单片机的蓄电池容量检测系统的设计(设计资料)
51单片机设计,检测蓄电池的容量,并在液晶1602上显示,显示分为4档,0-25%,25%-50%,50%-75%,75%-100%. [资源下载]下载地址如下:https://docs.qq.com ...
- 基于单片机的光伏电量检测系统的设计-毕设课设protues仿真
百度网盘下载地址(991):点击下载 #include <reg51.h> #include <intrins.h>#include "get_status.h&qu ...
- 基于单片机的光伏电量检测系统的设计1-毕设课设全套资料
百度网盘下载地址(992):点击下载 #include<reg51.h> #include<intrins.h> #define uchar unsigned char #de ...
- 基于MATLAB的水果分级设计
基于MATLAB的水果分级识别技术研究 摘 要 本次毕业设计介绍了基于MATLAB的水果分级自动识别,利用手机端获取苹果的样本图像,应用MATLAB软件编程实现了对样本图像的预处理,包括图像滤波.图像 ...
最新文章
- python的 局部变量与全局变量
- 新年不宕机就等它了!戴尔官网高效编程电脑OptiPlex 直降2500,低至3099!
- Python编程语言学习:判断变量是否为NONE或False的几种常见写法(if not用法教程)
- 把玩Fedora29操作系统
- 比较两个二维数组是否相等
- Bounce 弹飞绵羊
- 流星,刹那间划过天际
- 前端学习(669):流程控制
- 【机器学习】 - 关于合适用均方误差(MSE)何时用交叉熵(cross-entropy)
- 01-08-02【Nhibernate (版本3.3.1.4000) 出入江湖】二级缓存:NHibernate自带的HashtableProvider...
- 极简主义︱使用Turicreate进行快速图像分类迁移训练与预测(六)
- Vue指令之v-if
- Word文档批量导入
- ds1302时钟芯片工作原理引脚电路图及功能
- 浏览器访问网站标签页小图标显示
- python列表输出学生姓名学号链表_建立一个链表,记录学生的姓名,学号和成绩,
- 数据处理过程的潜在风险和应对逻辑
- 湖北大学知行学院怎么考计算机,2021年湖北大学知行学院开学时间入学考试及新生转专业相关流程说明...
- C++核心准则​NR.4:不要坚持将每个类声明放在其自己的源文件中
- 新型和增强的Guardium离群值检测
热门文章
- 【调剂】华东交通大学信息工程学院2022年硕士研究生招生预调剂公告
- 用PS给外景人像添加逆光效果
- linux php curl 升级,Linux下为php添加curl扩展 | 严佳冬
- verilog脉冲产生高电平
- 火车头伪原创php,使用网站采集软件必备伪原创秘笈
- 【FLASH 操作】FLASH 读写等操作 学习
- 完美收纳特色装饰 日本小两口的56平温馨窝
- Java绝对/相对路径获取与getResourceAsStream()方法
- X86与非X86服务器
- 2017ios android比例,[图表]iOS与Android全球份额差距正越拉越大