【数字图像处理】图像的平滑处理
- 格式:pdf
- 大小:322.84 KB
- 文档页数:4
【数字图像处理】图像的平滑处理
图像平滑的⽬的模糊:在提取较⼤⽬标前,去除太⼩细节,或将⽬标内的⼩间断连接起来。
消除噪声:改善图像质量,降低⼲扰。
平滑处滤波对图像的低频分量增强,同时削弱⾼频分量,⽤于消除图像中的随机噪声,起到平滑作⽤。
图像平滑处理的基本⽅法领域平均法领域加权平均法选择式掩模法
中值滤波
领域平均法
模板在图像上移动,模板的中⼼对应⽬标像素点,在模板范围内对⽬标像素点进⾏卷积运算(对应系数乘对应像素点),然后相加除上模板⼤⼩得到均值,这个均值就是⽬标像素点处理后的值。
如图,对5⾏四列的图像进⾏3*3模板的邻域平均法处理:
邻域平均法存在的问题
抑制了⾼频成分,使⽤图像变得模糊,平滑效果不好,减少噪⾳的同时,损失了⾼频信息。
注意:模板不宜过⼤,因为模板越⼤对速度有直接影响,且模板⼤⼩越⼤变换后图像越模糊,特别是在边缘和细节处
优点:算法简答,计算速度快。
缺点:造成图像⼀定程度上的模糊。
3*3模板邻域平均法⽰例:
Use_ROWS:⾏
Use_Line:列
图像边界不处理:只处理1-----n-1。
int count = 0; for(int i = 1; i < Use_ROWS-1; i++)
{
for(int j = 1; j < Use_Line-1; j++)
{
//邻域平均法
count=0;
count = Image_Use[i][j]+Image_Use[i][j-1]+Image_Use[i][j+1]+Image_Use[i-1][j]+Image_Use[i-1][j-1]+Image_Use[i-1][j+1]+Image_Use[i+1][j]+Image_Use[i+1][j-1]+Image_Use[i+1][j+1];
Image_Use[i][j] = (int)(count/9);
}
}
邻域加权平均法
加权:系数不再全部为1。
选择式掩模法
中值滤波
中值滤波器,使⽤滤波器窗⼝包含区域的像素值的中值来得到窗⼝中⼼的像素值,本质上是⼀种⾮线性平滑滤波器。
中值滤波:抑制噪声⼜可以尽量保持图像细节,对滤除脉冲⼲扰及图像扫描噪声最为有效。不
注意:对⼀些细节多,特别是点,线,尖顶细节多的图像不宜采⽤中值滤波。不同的窗⼝选择常⽤窗⼝
复合型中值滤波介绍
3*3模板的中值滤波处理
int cmp(const void *a,const void *b)
{
return *(int *)a-*(int *)b;//这是从⼩到⼤排序,若是从⼤到⼩改成: return *(int *)b-*(int *)a;
}
int temp[9],index=0; for(int i = 1; i < Use_ROWS-1; i++)
{
for(int j = 1; j < Use_Line-1; j++)
{
//中值滤波
memset(temp, 0, sizeof(temp));
temp[index]=Image_Use[i][j];
temp[index+1]=Image_Use[i-1][j];
temp[index+2]=Image_Use[i-1][j-1];
temp[index+3]=Image_Use[i-1][j+1];
temp[index+4]=Image_Use[i][j-1];
temp[index+5]=Image_Use[i][j+1];
temp[index+6]=Image_Use[i+1][j];
temp[index+7]=Image_Use[i+1][j-1];
temp[index+8]=Image_Use[i+1][j+1];
qsort(temp,9,sizeof(temp[0]),cmp);//(数组,需要排序的数字个数,单个数字所占内存⼤⼩,⽐较函数)
Image_Use[i][j] = temp[4];
}
}