毕业论文

打赏
当前位置: 毕业论文 > 自动化 >

MATLAB图像处理的钢材表面裂纹检测系统设计(8)

时间:2017-02-22 18:01来源:毕业论文
其中,f(x,y),g(x,y)分别为原始图像和处理后图像。W为二文模板,通常为22或者33的区域,当然,也可以类似于线状,圆形,十字形,圆环形等形状。实现


其中,f(x,y),g(x,y)分别为原始图像和处理后图像。W为二文模板,通常为2×2或者3×3的区域,当然,也可以类似于线状,圆形,十字形,圆环形等形状。实现方法:(1)通过从图像中的某个采样窗口取出奇数数据进行排序用。(2)使用排序后的中值来取代要处理的数据以此达到滤波(去噪)的效果。
 
图10 中值滤波3×3模板处理方式
可以看到如图所示,原图中“9”值和周围的灰度值相差很大,可以被认为是一个噪声点。经过模板3×3的中值滤波之后,原先为“9”的地方变为了“1”,可以被认为噪声点被去除了。
中值滤波的优势:中值滤波法对消除椒盐噪声非常有效,在光学测量条纹图像的相位分析处理方法中有特殊作用;中值滤波在图像处理中,常用于用来保护边缘信息,是经典的平滑噪声的方法。(椒盐噪声:椒盐噪声是由图像传感器,传输信道,解码处理等产生的黑白相间的亮暗点噪声。其中椒盐噪声是指两种噪声,一种是盐噪声(salt noise),另一种是胡椒噪声(pepper noise)。盐=白色,椒=黑色。前者是高灰度噪声,后者属于低灰度噪声。一般两种噪声同时出现,呈现在图像上就是随机黑白杂点。)
 
图11 为了中值滤波加入椒盐噪声后的图像效果(原图为图6)
图12 (椒盐噪声)中值滤波后的图像效果(原图为图6)
(2)均值滤波
均值滤波,即邻域平均滤波,是典型的线性滤波算法,它是指在图像上对目标像素给一个模板,该模板包括了其周围的临近像素(以目标象素为中心的周围8个象素,构成一个滤波模板,即去掉目标象素本身)。再用模板中的全体像素的平均值来代替原来像素值。这种处理方法降低了图像灰度的尖锐程度,能明显的滤除图像噪声点,又能使相邻区域中像素灰度值较为接近平均值,但是图像的清晰度会受到一定程度的影响,导致图像模糊。
MATLAB中使用的命令是B=filter2(A, I),其中B位均值滤波后的图像,A为滤波时采用的模板,可通过fspecial命令自己建立或者调用特定的滤波算子以供均值滤波使用,I为原图像。原理公式:
g(x,y)=1/m∑▒〖f(x,y)〗                       (3.4)
其中,m为该模板中包含当前像素在内的像素的总个数,f(x,y)为当前模板中的像素点,g(x,y)为均值滤波处理后的像素点。
均值滤波通俗的将就是将原图中的每一个点的灰度和它周围的八个点的灰度相加,然后除以九,作为新图中对应点的灰度。主要步骤:将模板在途中漫游,并将模板中心与途中某个象素位置重合;将模板上系数与模板下对应象素相乘;将所有乘积相加;将和(模板的输出响应)赋给途中对应模板中心位置的象素。
 
图13 普通均值滤波模板
如图十所示,中间带黑点元素就表示被选中元素,它的灰度值与周围八个点的灰度值相加除以九,得到的值在赋给其本身变得到均值,以此类推对整张图像做到均值滤波的效果。当然在某些特殊情况下,由于离中心点越近的点对其影响越大,所以我们可以适当的加入加权平均数,例如将1/9改为1/16,具体情况均有不同,如果改动加权数,则不可直接调用MATLAB本身的均值滤波函数,需要自己根据需求编写算法公式来实现所需均值滤波的效果。 MATLAB图像处理的钢材表面裂纹检测系统设计(8):http://www.youerw.com/zidonghua/lunwen_3272.html
------分隔线----------------------------
推荐内容