Chap2 灰度变换与空间滤波
灰度变换函数
imadjust 和 stretchlim
函数imadjust是一个基本的图像处理函数工具箱函数,语法格式为:
1 |
|
将处在[low_out high_out]区间的灰度值直接映射,其余值在区间端点截断
eg:明暗反转
1 |
|
有时能够自动地使用函数imadjust而不必关心上面讨论的低参数或者高参数是非常有用的。这时可使用函数strechlim,其基本语法为
1 |
|
对数及对比度拉伸变换
对数和对比度拉伸变换是动态范围运算基本工具。对数变换通过如下表达式实现:
1 |
|
主要应用是压缩动态范围。例如当傅里叶频谱的取值区间为[0,10e6]或更高时,高值部分占优势,低灰度值的可见细节部分易丢失,通过计算对数让其变得更易处理
执行对数变换时,我们希望使得压缩值出现在显示的完整范围内,例如8bit:
1 |
|
matgray()限制到区间[0,1],im2uint8先知道[0,255]
sigmoid函数是对比度拉伸变换函数 \[ s = T(r) = \frac{1}{1 + (\frac{m}{r})^E} \]
- r为输入图像的灰度
- s是输出图像的相应灰度值
- E来控制该函数的斜率
实现:
1 |
|
指定任意灰度变换
设T()是一个列向量,表示变换函数
1 |
|
f为输入图像,g为输出图像,T为前述列向量,z是一个长度与T相同的列向量,形成方式如下:
1 |
|
对f中的一个像素值,interp1先寻找横坐标值z,然后寻找T中的相应值,并将找到的内插值输出到g
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!