[原创]图像降噪

    当光线强度不够时,保证曝光度正确的方法有二,其一是增加光圈或降低速度,其二是使用高感光度的感光材料。对于数码相机和胶片都适用这两种方法。但是也有相同的局限,

    方法一中,增加光圈容易造成暗角的发生,稍稍好一点的相机将焦点距离减少到一定程度时,会自动收缩光圈,就是为了防止这种情况的发生。当降低速度后,对于高速运动的物体将无法清晰拍摄。方法二的问题是提高感光度会增加输出的噪声,在胶片相机中被称为颗粒度。

    可以通过后期的图像算法对噪声进行处理。现有的图像算法中,均值和中值两种滤波器是降噪的理想算法,并且其原理也很简单,算法速度很高。但是均值滤波器会造成边缘的模糊,与它相比,均值滤波器的效果要好得多,但是对于点状细节却无能为力。为了在降低噪声的同时保留点状细节,在中值滤波器的基础上,写了本函数,具体效果参见下图:

     图1:源图     


     图2.1:以 7*7 的算子进行中值滤波

     图2.2:以 9*9 的算子进行中值滤波

     随着模板尺寸的扩大,噪声有明显的下降。但是在噪声下降的同时,图像中的点状和线状细节也受到明显的影响,如宝宝的牙齿,衣纹。下图为本程序的输出,尽量在保存这些细节的情况下,对噪声进行有效的消除。

     图3.1:以 7*7 的算子进行中值滤波(本函数提供的智能算法)

     图3.2:以 9*9 的算子进行中值滤波((本函数提供的智能算法)

     GUI:


     基本原理:数码相机或胶片的噪声是在源图上叠加的一个随机值,它的值不会太大,而点状细节与周围像素的反差较大。因此,利用该特点,即可对噪声进行过滤和消除,并且不伤害点状和线状细节。

     其中模板范围是指算子运算的最大范围,该范围越大,则运算量越大。模板强度是拉普拉斯图在被叠加到源图时的指定强度,该值越大,则消除效果越明显。点击tabPage2上的图,则在 tabPage3 上显示预览图,调整完参数之后,点击小车图标,即可进行全图运算。

     为了防止不同通道的运算结果不同,造成色彩偏移,因此上述算法是将源图转换成灰度图后实现,返回拉普拉斯图后,再根据当前模板的整体强度(通过GUI中的模板强度加以确定)对每个点所对应的强度进行调整,并完成源图与拉普拉斯图的相减,即可得到最终输出。

猜你喜欢

转载自blog.csdn.net/zhoujk/article/details/4204741
今日推荐