刘军
(广东省湛江卫生学校,湛江 524037)
图像运算指以图像为单位进行的搡作(该操作对图像中的所有像素同样进行),运算的结果是一幅其灰度分布与原来参与运算图像灰度分布不同的新图像。具体的运算主要包括算术和逻辑运算,它们通过改变像素的值来得到图像增强的效果[1]。
代数运算也叫算术运算,是指对两幅或两幅以上的输入图像中对应像素的灰度值作加、减、乘或除等运算后,将运算结果作为输出图像相应像素的灰度值。代数运算不会改变像素的空间位置[2]。图像代数运算是一种比较简单和有效的图像增强处理操作,是遥感图像增强处理中常用的一种方法[3]。
图像的加法算法运算是指两幅或多副图像通过对应像素之间的加运算得到输出图像的方法[4],运算的数学表达式如式(1)所示:
其中,A(x,y)和B(x,y)表示需要进行加法运算的两幅图像,∁(x,y)是A(x,y)和B(x,y)叠加后的图像。
在MATLAB图像处理工具箱中可以用函数imadd()实现两幅图像的相加或者一幅图像和常量的相加[5],其函数表达式为Z=imadd(X,Y)。该表达式中X和Y都是大小相等的图像矩阵,它们相加的结果返给Z,也就是说Z是叠加后的新图像。可以用图1来表示加法运算的图像叠加。
图1 图像叠加
图像加法运算还可以对图像中的每个像素加一个常量,从而改变图像亮度,实现图像增强。数学表达式为 ∁(x,y)=A(x,y)+B,其中B为常数,∁(x,y)是图像A( )x,y增强后的图像。可以用图2来表示图像增强,其中图2(a)为原始图像,图 2(b)是每个像素值增值100后的图像。
图像加法运算不但得到图像的叠加效果,通过叠加原理的外延还可以把同一图像的多重影像加起来再求平均,以此来减少图像的随机噪声,达到降噪效果。
图2 每个像素值增加100后的图像
图像加法运算降噪的基本原理可以描述为以下:
假设原图像f(x,y),混入噪声,形成含噪声图像集{gi(x,y),i}=1,2,…M。其关系可以用式(2)来表示。
其中gi(x,y)为混入噪声的图像,f(x,y)为原始图像,ei(x,y)为随机噪声。在噪声图像集{gi(x,y),i}=1,2,…M中,M个图像的均值可以表示为式(3)。
当噪声ei(x,y)为互不相关,而且均值为0时,上述图像均值(x,y)将可以降低图像gi(x,y)噪声[6]。
根据加法运算降噪的原理,为了验证图像加法算法的降噪效果,在MATLAB中通过函数imnoise()给图像添加随机噪声,该函数表达式为:
J=imnoise(I,type,parameters)
其中I为原始图像;type为添加的噪声类型,类型可以是泊松噪声poisson、高斯噪声gaussian、椒盐噪声salt&pepper、乘性噪声speckle和零均值的高斯噪声localvar等;Parameters则是指不同类型噪声的参数值。
本文随机采用两种不同的噪声类型进行试验验证,其中一种类型为“高斯噪声gaussian”,参数值是“均值为0,方差为0.05”;另外一种类型为“椒盐噪声salt&pepper”,参数值是“0.05”。
通过for循环来实现图像和噪声图像的叠加。为了取得适合的均值和验证降噪效果的高低,M分别赋值为 3、9、99,则图像的叠加次数分别为 4、10、100。
本实例在MATLAB下的关键程序代码如下所示:
R=imread('eight.tif');%读入 eight.tif图像
A=imnoise(R,'gaussian',0,0.05);%添加高斯白噪声,椒盐噪声的代码应为 A=imnoise(R,'salt&pepper',0.05)
I=A;
M=3;%M分别赋值为3、9、99
I=im2double(I);%将数据类型uint8转换成double
R=im2double(R);
for i=1:M%叠加次数分别为4、10、100
I=imadd(I,R);%对原图像与带噪声图像进行多次叠加,结果返回I
end
avg_A=I/(M+1);%求叠加图像的均值
需要注意的是在MATLAB中图像数据默认类型是uint8,当进行加法运算时有可能产生属性溢出,所以应当在进行图像加法运算之前先将数据类型转换成double,从而确保结果的准确性。
在MATLAB中进行加法算法降噪实验,降噪实验结果如图3和图4所示。图3(a)和图4(a)是原始的图像,图3(b)为添加“均值为0,方差为0.05”高斯白噪声后的图像,图4(b)为添加“0.05”椒盐噪声后的图像。图 3和图 4(c)、(d)、(e)分别是 M 为 3、9、99时降噪后的图像。根据图像质量主观判断标准,图3和图4(c)、(d)、(e)都能有效的滤去噪声,达到降噪效果。就本实验而言,降噪后图像与原始图像对比,降噪效果从高到低分别是(e)、(d)、(c)。由此可以得到,加法运算对图像随机添加的噪声有明显的降噪效果。
图3 降噪实验结果(高斯白噪声)
图4 降噪实验结果(椒盐噪声)
本文介绍了图像代数运算中加法算法可以使两幅或者多幅图像叠加,图像增强以及降噪原理,根据加法运算降噪的原理利用MATLAB图像工具箱中的函数,编写代码进行仿真实验,并对实验结果进行图像质量主观标准判断,证明图像加法运算能有效滤去随机添加的噪声,达到降噪效果。