




免费预览已结束,剩余14页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数字图像处理课程论文题 目:瓶子灌装流水线是否灌装满瓶体的 检测姓 名 学 院 专业班级 学 号 指导教师 日 期 2015年 6月 10日 瓶子灌装流水线是否灌装满瓶体的检测摘要:使用数字图像处理方法分析图像中液面高度来检测瓶中的液体体积是否符合要求。通过对瓶子中装满液体的区域进行提取,以此区域的大小作为判断的依据。首先对采集的实际图像进行RGB三种颜色分量的提取,将其中的两种分量作差,除去背景,接下来将作差后的图像采用大津法计算阈值并二值化,再通过腐蚀、膨胀等运算去除躁声点。最后标记连通域、计算各连通域的面积,判断出未装满的瓶子,将其标注出来,同时统计瓶子总数及未装满的个数。所有处理过程通过matlab编程实现。关键词:数字图像处理;液体体积检测0 引言 随着消费水平的提高,相关法律法规的完善,在食品(饮料、调料)和医药等行业中,产品的质量变得越来越重要。而产品的重量符合要求正是产品质量的基本要求之一。但现在,这些行业的生产规模日益扩大,生产现代化水平日益提高。采用传统手段对大规模现代化生产线上的产品灌装后的液体体积进行逐一检测,已经是很困难的了。 在固定的同一种瓶中,其液体的液位变化直接反应了所装液体体积的变化,所以对液位的检测实际上就是对灌装液体体积的检测。本文利用数字图像处理技术对灌装后瓶内液位进行检测的算法,能满足对液体体积进行快速在线检测的要求。 在当前市面上液面的检测是基于传感器等芯片实现的,结构复杂。而基于数字图像处理的算法只能处理一些简单的理想的图片,事实上流水线由于空气浮沉、机械振动等的影响根本无法采集到躁点少,杂波低的理想图片。 本算法利用作差法实现了去噪,又运用了图像增强法实现了对目标图像的提取,克服了传统算法的缺点。1 检测原理 在瓶子灌装流水线上要实现对液体是否灌装满瓶体的检测,可以有下面三种方法: (1)以液面的高度作为判断依据。将刚好装满时的液位高度作为标准,若液面高度低于此标准,则认为未装满。 (2)以瓶口处未装满的体积作为判断依据。由于同一流水线上的瓶子的尺寸和规格都是一样的,所以当瓶口处未装满的体积大于标准值时则认为未装满。而实际通过摄像头采集的图像是二维的,无法计算体积,于是有面积代替。 (3)以瓶子装满的体积作为判断依据。由于同一流水线上的瓶子的尺寸和规格都是一样的,所以当瓶子装满的体积小于标准值时则认为未装满。而实际通过摄像头采集的图像是二维的,无法计算体积,于是用面积代替。 考虑到算法的简便性,本文采用了第三种方法。图像处理的流程如下: 二 值 化 去 噪 生计算装满区图像的面积 比较判断是否装满并标记 统计总数并计算不合格率 去 背 景 图(1)图像处理流程图 2 去背景 由于我们最终要提取的是瓶子装满区域的面积,所以我们感兴趣的部分就是瓶子装满液体的区域,其他部分则为背景。去除背景的干扰才能便于后续的面积提取。例如模拟瓶子灌装流水线上的初始图像如图所示: 图(2)初始图像 其中瓶子本身为无色透明的,所装液体为橙黄色,瓶后的挡板为白色(由于采集光线所致,挡板略显粉红)。若直接进行灰度变换(如图3),所得图像难以将装满区域提取。 图(3)直接进行灰度变换后图像应用matlab编写程序为: clear close allI=imread(E:图像处理6.png); figure,imshow(I)I=rgb2gray(I); figure,imshow(I)因此不能直接进行灰度变换,只能考虑先对彩色图像进行处理。首先将彩色图像的RGB三个彩色分量提取出来。应用matlab编写程序为:fR=I(:,:,1); %获取图像的红色分量fG=I(:,:,2); %获取图像的绿色分量fB=I(:,:,3); %获取图像的蓝色分量 figure,imshow(fR) %分别显示图像 figure,imshow(fG) figure,imshow(fB) 图(4)红色分量图像图(5)绿色分量图像图(6)蓝色分量图像 将RGB三个色彩分量的图形进行分析可发现,在每一种分量的图像中瓶子装满区域与其他部分的差别不大不易提取,但将三种分量的图像进行对比可以发现瓶子已灌装液体的区域与未装满的在分量图像中各有差异,因此可以采用图像代数运算中的图像减法来实现图像装满区域的提取,即图像的去背景。 图像减法也称为差分方法,是一种常用于检测图像变化及运动物体的图像处理方法。图像减法可以作为许多图像处理工作的准备步骤。例如,可以使用图像减法来检测一系列相同场景图像的差异。图像减法与阈值化处理的综合使用往往是建立机器视觉系统最有效的方法之一。 对原始图像分析可得到如下特征: (1)瓶后的挡板为白色,RGB三种分量的灰度值都接近255,因此任意两种分量的图像做减法运算均可以去掉挡板。 (2)瓶中液体为橙黄色,瓶子本身为无色,因此:红色分量减去蓝色分量可提取出瓶中装有液体的区域: 图(7)红色分量减去蓝色分量后的图像图(8)红色分量减去绿色分量后的图像 显然,对液体区域的提取红色分量减去绿色分量没有没有红色分量减去蓝色分量的清晰。 图(9)绿色分量减去红色分量后的图像图(10)绿色分量减去蓝色分量后的图像图(11)蓝色分量减去红色分量后的图像图(12)蓝色分量减去绿色分量后的图像 经过对以上处理方法所得结果进行对比,决定给采用红色分量减去蓝色分量来提取瓶子中装满液体区域的方法。此方法可有效提取液体区域,且噪点少,便于后续的二值化等处理。 综上可得,用不同颜色分量做作差去背景的方法十分灵活,可根据瓶子的颜色及瓶中液体的颜色来选择不同的作差方式。尤其适用于瓶子颜色与所装液体颜色不同情况下。以上处理应用matlab编写的程序为:fR_B=fR-fB; %红色分量减去蓝色分量 figure,imshow(fR_B) fR_G=fR-fG; %红色分量减去绿色分量 figure,imshow(fR_G)fG_R=fG-fR; %绿色分量减去红色分量 figure,imshow(fG_R) fG_B=fG-fB; %绿色分量减去蓝色分量 figure,imshow(fG_B) fB_R=fB-fR; %蓝色分量减去红色分量 figure,imshow(fB_R) fB_G=fB-fG; %蓝色分量减去绿色分量 figure,imshow(fB_G) 3 二值化 图像的二值化处理就是将图像上的点的灰度置为0或255,也就是将整个图像呈现出明显的黑白效果。即将256个亮度等级的灰度图像通过适当的阈值选取而获得仍然可以反映图像整体和局部特征的二值化图像。利于再对图像做进一步处理时,图像的几何性质只与像素值为0或255的点的位置有关,不在涉及像素的多级值,使处理变得简单,而且数据量减小,能凸显出感兴趣的目标的轮廓。 图像二值化的具体实现方法就是将所有灰度大于或等于阈值的像素判定为属于特定物体,其灰度值为255表示,而其他的像素点被排除在物体区域以外,灰度值为0,表示背景或者例外的区域。 因此图像二值化的选择十分关键,根据其对像素的处理方式,主要分为三类: (1)全局阈值法:是指整个图像采用单一阈值(全局阈值)T进行图像二值化。一般有图像的直方图或灰度的空间分布确定一个全局阈值T,将图像的每个像素的灰度值与T进行比较。若大于T,则取为前景色;否则取为背景色;典型的全局阈值法有Ostu法、最大熵法等。 (2)局部阈值法:由当前像素灰度值与该像素周围点局部灰度特征来确定像素的阈值。通过定义考察点的邻域,并由邻域计算模板实现考察点灰度与邻域点的比较。典型的局部阈值法有Bernsen法、Nilblack法等。 (3)动态阈值法:当光照不均匀、或者背景灰度变化较大等情况时,必须根据图像的坐标位置关系自动确定不同阈值,实施动态的阈值确定。该法的阈值选择不仅取决与该像素及周围像素的灰度值。而且还与该像素的坐标位置有关。邻域均值法是较为常见的一种动态阈值确定技术。 对去背景后的图像(图(7)分析得到,图像整体光照均匀,适合用全局阈值法,这里我们采用Ostu法(最大类间方差法,又称大津法)来选取阈值。应用MATLAB进行图像处理时使用函数level=graythresh(I)来计算全局阈值(level).处理后图像如图(13)。图(13)采用Ostu法选取阈值并将进行二值化的图像 二值化后的图像基本可以,已能将瓶中装满液体的区域提取。应用matlab编写程序为:bw1=im2bw(fG_B,level); %二值化 figure,imshow(bw1)四 滤波 通常,由于噪声的影响,图像在阈值化后所得到边界往往是很不平滑的,物体区域具有一些噪声,背景区域上散布着一些小的噪声物体。连续的开和闭运算可以有效地改善这种情况。有时需要经过多次腐蚀之后在加上相同次数的膨胀,才可以产生比较好的效果。 开运算: 先腐蚀后膨胀的过程称为开运算。用来消除小物体、在纤细点处分离物体、平滑较大物体的边界的同时并不明显改变其面积。 闭运算: 先膨胀后腐蚀的过程称为闭运算。用来填充物体内细小空间、连接邻近物体、平滑其边界的同时并不明显改变其面积。 腐蚀: 腐蚀是一种消除边界点,使边界向内部收缩的过程。可以用来消除小且无意义的物体。 膨胀: 膨胀是将与物体接触的所有背景点合并到该物体中,使边界向外部扩张的过程。可以用来填充物体中的空洞。经过二值化后的图像虽然能基本提取所需区域,但扔存在一些纤细处分离的物体类噪声点。我们要将这些噪声点去掉,对于每一个瓶子的位置只保留一个连通的区域来计算面积,所以采用开运算的方法来消除噪声。由于噪声点不是很多,可进行一次开运算便得到了很好的效果(如图(14)。如果小物体类噪声点较大可采用多次腐蚀后在经相同次数的膨胀来完成。图(14)经开运算后的图像应用matlab编写程序为: %SE1=strel(arbitrary,eye(5); %设置腐蚀结构元素 %bw2=imerode(bw1,SE1); %腐蚀 %figure,imshow(bw2) bw3=bwmorph(bw1,open); %开运算 figure,imshow(bw3) %bw3=bwmorph(bw2,open); %开运算 %figure,imshow(bw3);五 装满区域面积的计算 对瓶中装满液体区域面积的计算实际就是对目标所占像素数的计算。经过开运算后,每个装满的区域都成了一个连通的区域,为计算每一个区域的面积首先要各个区域进行标记,可以利用matlab中的bwlabel函数来实现;然后计算被标记的各区域的大小,可以利用matlab中的regionprops来实现;Bwlabel的作用是在二值图像中标记连通区域,用法如下: L=bwlabel(BW,n) 返回一个和BW大小相同的L矩阵,包含标记了BW中每个连通区域的类别标签,这些标签的值为1、2、num(连通区域的个数)。n的值为4或8,表示是按4连通寻找区域,还是按8连通寻找区域。 L,num=bwlabel(BW,n) 这里num返回的就是BW中连通区域的个数。 regionprops,它的用途是get the properties of region,即用来度量图像区域属性的函数。用法如下: TATS=regionprops(L,properties) 测量标注矩阵L中每一个标注区域的一系列属性。L中不同的正整数元素对应不同的区域,例如:L中等于整数1的元素对应区域1;L中等于整数2的元素等于对应区域2;以此类推。返回值STATS是一个长度为max(L(:))的结构数组,结构数组的相应域定义了每一个区域相应属性下的度量。Properties可以是由逗号分隔的字符串列表、包含字符串的单元数组、单个字符串all或者basic。如果properties没有指定或者等于basic,则属性:Area,Centroid和BoundingBox将被计算。 在这里我们要得到的是Area属性,即面积属性。Matlab代码为:L,n=bwlabel(bw3,8); %STATS=regionprops(L,Area);%计算连通域大小 stats=regionprops(L); Cen=cat(1,stats.Centroid); S=cat(1,stats.Area);经上述处理后图像中4个装满区域的面积分别为:12873,,11860,10655,13653.六 比较判断是否装满并标记和统计瓶子数目及不合格率 不难发现,装满的瓶子区域面积都在11000左右,而未装满的瓶子区域面积小于11000,所以我们可以以11000作为区分装满与未装满的阈值。小于次阈值的认为未装满,其余的认为装满。并利用提取的重心坐标将未装满的瓶子在图像中标记出来。同时可统计瓶子数量及未装满的数量,计算不合格率。Matlab代码为:hold on; x=0; for i=1:n if S(i,1)15000 plot(Cen(i,1),Cen(i,2),r+); x=x+1; end end p=x./n; p=100*p; str=sprintf(共%d个瓶子,其中有%d个未装满,不合格率为%d%,n,x,p); title(str,color,r);同时还在图像上显示了统计结果,如图(15) 图(15)标记出未装满瓶子的图像七 总结 在瓶子灌装流水线上,产品在出厂前是否灌满流体的检测时十分必要的。本文是基于数字图像处理的检
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 45888-2025托管土地利用准则
- 院区车辆管理办法
- 高铁车票管理办法
- 生产研发与管理办法
- 乡政府食堂管理办法
- 中国博士后管理办法
- 附属公司管理办法
- 煤矿班组长安全管理课件
- 标签页优化管理办法
- 版权运营与管理办法
- 2025年宁波市交通建设工程试验检测中心有限公司招聘笔试参考题库附带答案详解
- 【MOOC】《武术基础教与学》(东北大学)中国大学慕课答案
- 基础设施以工代赈项目可行性研究报告
- 2025年战略合作协议和框架协议
- 糖尿病足溃疡伤口评估
- GB/T 45089-20240~3岁婴幼儿居家照护服务规范
- 燃气表施工应急预案方案
- 平安在线测评 iq 30题 答案
- 老年人多重用药评估与管理中国专家共识
- 重庆市园林水生植物栽植技术标准
- 2024年海南省海口市规划信息资料服务中心招聘4人(高频重点复习提升训练)共500题附带答案详解
评论
0/150
提交评论