一种基于 FPGA 的水果分级检测系统的设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一种基于 FPGA 的水果分级检测系统的设计
毛丽民;刘叔军;朱培逸;高珏
【摘要】为了降低目前水果检测与分级系统的复杂性和成本,提出了以 FPGA 代
替计算机进行图像数据处理的方法。
首先使用高斯滤波器对水果的图像进行预处理,然后采用 soble 算法提取水果的边缘,最后运用直方图的方法实现水果大小分级
功能。
实验结果表明,该检测系统具有处理速度快,开发周期短等优点,在水果品质检测与分级方面具有较高的实用价值。
%In order to reduce the complexity and cost of the fruit detection and classification system .In this paper , put forward the FPGA processing of image data instead of the computer .The first to use the Gaussian filter preprocessing fruit image , then use soble algorithm to extract fruit edge , finally use the histogram method to achieve fruit size grading .Ex-perimental results show that the detection system has a fast processing speed , short development cycle advantages and so on , has a high practical value at fruit quality detection and classification .
【期刊名称】《农机化研究》
【年(卷),期】2013(000)011
【总页数】4页(P120-123)
【关键词】FPGA;水果检测;Soble 算法
【作者】毛丽民;刘叔军;朱培逸;高珏
【作者单位】常熟理工学院电气与自动化工程学院,江苏常熟 215500;常熟理工学院电气与自动化工程学院,江苏常熟 215500;常熟理工学院电气与自动化工程学院,江苏常熟 215500;常熟理工学院电气与自动化工程学院,江苏常熟215500
【正文语种】中文
【中图分类】TP391.41
0 引言
水果无损检测技术是指在不损坏水果的情况下,应用检测技术和方法对水果的内在和外在品质进行检测,并对其做出分级的过程[1]。
虽然国内外对基于机器视觉的水果品质检测进行了广泛应用研究,如苹果的形状、大小、颜色等。
但是,我国目前基于机器视觉的水果检测以及分级系统存在诸多问题,如分级速度慢、系统庞大和成本高等。
为此,提出了一种基于FPGA机器视
觉的水果检测分级系统,利用该系统提取水果图像的边缘、大小等特征数据,具有开发周期短、成本低等优点。
1 水果品质检测系统的设计
通过摄像像头获取图像,将数据输入到FPGA,根据算法实现水果边缘及分级检测。
系统整体设计如图1所示。
图1 系统设计方案框图
2 水果图像的处理及边界提取
本文采用Soble算法实现水果图像边界的提取,Soble算法对图像的每个像素以检
测像素点为中心,考虑3×3领域内像素灰度的加权差。
根据带点否处于极限状态进行边缘的检测,其本质是一种梯度的幅值,通过选取适当的门限,判定是否为边缘
点。
在水果图像边界提取前需要对图像预处理,达到准确提取边界的要求。
本文采用高斯滤波法的方法,对水果图像进行预处理。
1)高斯滤波法简介。
用二维零均值离散高斯函数作平滑滤波器,函数表达式为
(1)
其中,高斯分布参数δ决定了高斯滤波器的宽度。
高斯滤波器是一类根据高斯函数的形状来选择权值的线性平滑滤波器,对去除服从正态分布的噪音是有效的。
2)高斯算法的实现。
高斯滤波算法的结构搭建,如图2所示。
图2 高斯平滑滤波器模型
模型测试实验结果,如图3所示。
图3为本次实现的原始图像,而图4为高斯滤波的图像处理的结果。
3 Sobel 边缘检测在水果分级中的应用
3.1 Soble算法的原理[2]
Sobel边缘检测算法的原理如图5所示。
在进行边缘检测时,先计算出水平、垂直梯度, 然后将两者结合,通过调试,选择合适的门限,输出水果图像的边缘检测结果。
图3 原始图像
图4 高斯滤波后的图像
图5 Sobel 算法边缘检测实现框图
图6(a)为水果图像的3×3区域,图7(b)和图6(c)分别为Sobel算法的x,y方向梯度算法。
当对图6(a)所示区域计算梯度时,x,y方向的梯度分别可以表示为
Gx=(z7+2z8+z9)-(z1+2z2+z3)
(2)
Gy=(z3+z6+z9)-(z1+2z4+z7)
(3)
计算时,Gx,Gy与hist[k]=0(k=0,···,L-1)一起使用。
图6 水果图像的3×3区域
当门限处理时,如果水果图像的某个像素点(x,y)的梯度值不小于T值时,该点值赋值为255,否则赋值为0,即
(4)
3.2 Soble算法的system generator实现
根据Sobel 边缘检测算法框图,首先利用图像输入结构将图像转变成system generator可以提取的数据,计算出x方向梯度和y方向梯度。
再把两者结合,通过选择合适的门限,使输出的水果边缘最理想。
如图7所示,通过图像输入过程即可将图像转变成system generator系统可以提取的数据。
图7 图像输入结构
图8和图9分别为Sobel算法的对图像的水平梯度和垂直梯度的计算模型。
完整的Sobel结构,如图10所示。
图8 XSobel子系统
图9 YSobel子系列
图10 Sobel算法完整结构图
其中,Determine是结构图中的门限处理模块,可以通过改变Determine的结构中的数据来改变实现的效果。
3.3 基于FPGA的Sobel算法的调试
调试过程中,选择不同的阈值,水果图像的边缘检测将发生变化。
通过调试,选择
合适的阈值,得到最理想的边缘检测结果,如图11~图14所示。
图11 阈值为4时图像处理结果
图12 阈值为3时的图像处理结果
图13 阈值为2时的图像处理结果
图14 阈值为0.8时的图像处理结果
由图11~图14可见,其阈值越小则使Soble算法对色度的变化越敏感,边缘也会越敏感;但是由于某些原因导致的亮度的变化也会被认为是边缘而被Soble算法保留下来,边缘出现毛刺。
4 水果分级检测的实现
前面进行水果边缘的提取只是特征量的提取,在对水果进行边缘提取后可以得到相对应的边缘提取的图片进行面积的测定,实现水果分级检测的功能。
4.1 直方图的表示方法
用于表示水果图像的一维信息,统计水果图像中像素不同灰度值出现的次数。
图中横坐标表示灰度级别,纵坐标表示该灰度级别出现的频率。
按直方图的定义,可表示为
(5)
其中,N为一幅图像的总像素;nk是第k级灰度的像素数;rk表示第k个灰度等级;P(rk)表示该灰度出现的相对应频率。
4.2 基于FPGA的直方图的实现
基于FPGA的水果分级检测系统是一个时序系统,根据功能框图搭建的模型如图15所示。
图15 直方图模型
图16为边缘提取图像,图17为直方图处理结果。
图16 边缘提取图像
图17中横坐标数值大的为白色像素点,而横坐标数值小的为黑素像素点,纵坐标为像素点个数。
通过计算得出白色的像素点越多,说明图像的面积相对较大,从而实现水果的分级。
图17 灰度直方图
5 结论
本文采用了Soble算法对水果图像进行边缘提取,使用直方图对边缘图像进行检测,使用像素点统计的方法,实现对水果大小的检测,从而实现水果的分级。
与目前其他的基于计算机的视觉检测与分级系统相比,基于FPGA的水果分级检测系统能够达到与之同等水平的检测精度和处理速度。
系统脱离了PC机平台,成本低,检测速度较快,在水果检测与分级方面具有很好的应用前景。
【相关文献】
[1] 党宏社,宋晋国.基于ARM的嵌入式水果大小检测与分级系统的实现[J].四川农业大学学报,2011,29(1) :89-92.
[2] 李明,赵勋杰.Sobel边缘检测的FPGA实现[J].现代电子技术,2009(16):44-46.
[3] 展慧,李小昱.基于机器视觉的板栗分级检测方法[J].农业工程学报,2010,26(4): 327-331.
[4] 袁江南.一种图像边缘检测FPGA实现的快速设计方法[J]. 厦门理工学院学报,2010, 18(1):56-59.
[5] 安爱琴,余泽通.基于机器视觉的苹果大小自动分级方法[J].农机化研究,2008(4):163-166.
[6] 张辉,曲仕茹.基于FPGA硬件实现的图像边缘检测及仿真[J].计算机仿真,2010, 27(3):232-236.。