数字图像处理 第3章灰度变换与空间滤波

灰度变换与空间滤波

一、灰度变换函数:

  • 图像反转变换:s =L -1- r 适合黑色主导图像
  • 对数变换:压缩图像的动态范围
g=im2unit8(mat2gray(log(1+double(f))));

   

  • 幂次变换:

MATLAB灰度变换:



  • 直方图处理

图像中不同灰度级像素出现的次数

imhist(g)直方图绘制
histeq(g)直方图均衡化 求变换函数用cumsum()

bar(h,g)条形图 h:水平增量 h=linspace(0,255,25)

axis([0 255 0 60000])坐标范围 xlim('auto')自动范围

xlabel轴标尺 text文本

stem杆状图 plot曲线图

  • 应用:镜头边界检测

镜头检测方法1——连续帧相减
镜头检测方法2——连续帧的直方图相减
镜头检测方法3——时空切片分析


二、空间滤波器

使用空间模板进行的图像处理,被称为空间滤波。模板本身被称为空间滤波器,乘积求和

  • 平滑空间滤波器:去除图像中一些不重要的细节,减小噪声

平滑空间滤波器的分类:

线性滤波器:均值滤波器、加权平均

w=ones(31)
w1=rot90(w,2) w旋转180
g=imfilter(f,w,‘conv’,'replicate') w滤波模板 conv 滤波模式 replicate边界选项
非线性(统计排序)滤波器,可能改变图像性质
最大值滤波器(寻找最亮点)
中值滤波器(适合椒盐噪声,去噪)

最小值滤波器(寻找最暗点)

f=[1 2;3 4]

fp=padarray(f,[3,2],'replicate','post')填充图像f


g=colfilt(f,[m,n], 'sliding', fun) 非线性滤波


  • 锐化空间滤波器:突出灰度过度部分 

使用拉普拉斯算子(二阶微分)突出细节


使用非锐化屏蔽和高提升滤波:平滑的忽略

使用梯度(一阶微分)突出边缘

Roberts交叉梯度算子

Prewitt梯度算子
Sobel梯度算子

混合空间增强法:组合方法


空间滤波器--MATLAB工具箱

  • 线性滤波
>> w=fspecial('laplacian',0) type滤波器类型-拉普拉斯
>> f=imread('a.tif');
>> g1=imfilter(f,w,'replicate');
>> imshow(g1,[])
>> f2=tofloat(f);
>> g2=imfilter(f2,w,'replicate');
>> figure,imshow(g2)
>> figure,imshow(g);
  • 非线性滤波

排序滤波器ordfilt2()、工具箱medfilt2()

猜你喜欢

转载自blog.csdn.net/u011752195/article/details/80743743