图像平滑的主要目的是减小图像噪声

经常使用的有高斯滤波,均值滤波,中值滤波;

均值滤波:就是将一个窗口区域中的像素计算平均值,然后将窗口中计算得到的均值设置为锚点上的像素值。对高斯噪声有较好的处理效果,但是模糊效果比较明显,会丢失一些细节。

中值滤波:中值滤波是一种非线性滤波,在处理脉冲噪声以及椒盐噪声时效果极佳,能够有效的保护好图像的边缘信息。对消除孤立点和线段的干扰十分有作用。

高斯滤波:高斯模糊实质上是一种均值模糊,高斯模糊权重比例有所变化,是按照加权平均的,距离越近的点权重越大,距离越远的点权重越小。通俗的讲,高斯滤波就是对整幅图像进行加权平均的过程,每一个像素点的值,都由其本身和邻域内的其他像素值经过加权平均后得到。

均值滤波代码:

read_image (Image, 'monkey')

get_image_size (Image, Width, Height)

*获得一个高斯噪声分布

gauss_distribution (20, Distribution)

*将高斯噪声添加到图像中

add_noise_distribution (Image, ImageNoise, Distribution)

*对图像进行均值平滑处理

mean_image (ImageNoise, ImageMean, 9, 9)

                 原图                                          加入高斯噪声图                               均值滤波后

 均值滤波的掩膜宽度和掩膜高度变化单位为奇数。

 高斯滤波代码:

read_image (Image, 'monkey')

get_image_size (Image, Width, Height)

*获得一个高斯噪声分布

gauss_distribution (20, Distribution)

*将高斯噪声添加到图像中

add_noise_distribution (Image, ImageNoise, Distribution)

*对图像进行高斯滤波

gauss_image (ImageNoise, ImageGauss, 9)

                   原图                                          加入高斯噪声                           高斯滤波之后.

gauss_image已由gauss_filter替代

gauss_filter(Image : ImageGauss : Size : )

中值滤波代码:

read_image (Image, 'monkey')

get_image_size (Image, Width, Height)

*获得一个椒盐噪声分布

sp_distribution (5, 5, Distribution)

*添加椒盐噪声到图像

add_noise_distribution (Image, ImageNoise, Distribution)

*中值滤波

median_image (ImageNoise, ImageMedian, 'square', 3, 'mirrored')

median_image (ImageNoise, ImageMedian1, 'square', 5, 'mirrored')

 

                      原图                                                 加入椒盐噪声图

                  掩膜半径3                                         掩膜半径5

相关阅读

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: