发表于267 天前
⁄ 图像处理
⁄ 被围观 289 views+
图像去噪是数字图像处理中的重要环节和步骤。去噪效果的好坏直接影响到后续的图像处理工作如图像分割、边缘检测等。图像信号在产生、传输过程中都可能会受到噪声的污染,一般数字图像系统中的常见噪声主要有:高斯噪声(主要由阻性元器件内部产生)、椒盐噪声(主要是图像切割引起的黑图像上的白点噪声或光电转换过程中产生的泊松噪声)等;
目前比较经典的图像去噪算法主要有以下三种:
均值滤波算法:也称线性滤波,主要思想为邻域平均法,即用几个像素灰度的平均值来代替每个像素的灰度。有效抑制加性噪声,但...
matlab, 图像处理, 滤波阅读全文
发表于267 天前
⁄ 图像处理
⁄ 被围观 84 views+
//code written by Kay(zhang_xiaoli@163.com) 2011/03/17
BOOL WienerFilter(WORD *pData, int iWid, int iHgh, int ihoodW, int ihoodH)
{
if (pData == NULL)
{
return FALSE;
}
int iSize = iWid*iHgh;
float *pKernel=new float[ihoodW*ihoodH];
for ( int i = 0 ; i < ihoodW*ihoodH ; i ++ ) { pKernel[i] = (float)1/(ihoodW*ihoodH);}
float *pMean=new float[iSize];
float *pVal =new float[iSize];
for ( i = 0 ; i < iSize ; i ++ )
{ pMean[i] = (float)(pData[i]*pData[i]);}
...
VC, 图像处理, 椒盐噪声, 滤波阅读全文
发表于540 天前
⁄ 图像处理
⁄ 被围观 364 views+
中值滤波(median filter)是一种有效消除椒盐噪声的算法。
基本原理是,对图像中所有点进行遍历,对于每个点,取以其为中心的 n * n 的矩形区域,对矩形区域中点的灰度值进行排序,取其中间值替换当前点。
这样,如果这个点灰度值与周围点相差较大的话,就可以将其平滑化。
当然,这里要求 n 是个大于 1 的奇数。
在这里,我对算法进行了优化,使只有当前点是矩形区域灰度值的最大或者最小值的时候才进行替换,这样效果好了很多。
原始图像:
椒盐噪声:
中值滤波后:
可以看到,图像损失很小,只有边缘处有小...
滤波阅读全文
发表于540 天前
⁄ 图像处理
⁄ 被围观 269 views+
上次提到产生高斯噪声的算法,我们知道,椒盐噪声是可以通过中值滤波来修复的,高斯噪声也可以通过均值滤波来还原。
顾名思义,均值滤波也是构建一个 n*n 的模板,然后取其平均值来替代模板中间的值。这样做出的效果明显不如用中值滤波修复椒盐噪声的效果好,不过当 n 取很大值的时候,图片看起来像是高斯模糊,不知道是不是一个原理……
看效果,n=3 时:
n=11 时:
算法更加简单,有以前的基础不成问题:
BmpPixmap &
BmpPixmap::mean_filter (int n)
{
assert (n >= 3 && n % 2);
...
滤波阅读全文
最新评论
博客不错 加油
学习LZ好榜样哟
如果再给我一次机会我会说我爱
过来学习下·······
博主的文章很棒,支持! ht
文章很不错 值得学习 呵呵
好文章!值得一看
很不错的,顶一下下
很少关注