2 Nov 2010

灰度变换

首先提取一幅图像的一个象素,在BMP格式中一个象素由8位红色亮度值,8位绿色亮度值和8位蓝色亮度值组成,只要按一定的变换函数去变换

这种3种颜色的亮度值就可以起到灰度变换的目的。 变换原理是这样的:

比如线性变换
可以用一个线性函数
f(x,y)=a'+(b'-a')/(b-a)×(f(x,y)-a)
f(x,y)代表一个象素
[a,b]是原始图像的灰度范围,[a',b']是变换后新图像的灰度范围
用这个线性函数分别对R,G,B分量进行变换可以起到单色增强的目的,然后再混合输出。
如果b'-a' > b-a ,则使得图像灰度范围增大,即对比度增大,图像会变得清晰
如果b'-a' < b-a ,则使得图像灰度范围缩小,即对比度减小。 分段线性变换 和线性变换差不多 不过对于单一一个R或G或B分量采用分段函数进行变换。 如 f(x,y)=a'+(b'-a')/(b-a)×(f(x,y)-a) 当f(x,y)在[a,b]范围内 f(x,y)=0 当f(x,y)n
这样就指定了一个变换段 a,b,只有灰度在a,b段内的点才会增强,灰度b的变成白色。

非线性变换
可以根据需要制定非线性函数对灰度进行变换,典型的有
对数变换
f(x,y)=a+ ln[f(x,y)+1]/(b×lnc) 这里a,b,c是参数而不是灰度范围了,对数变换用于扩展低灰度区
指数变换
f(x,y)=b^(c*[f(x,y)]-a]) ,a,b,c同样是参数,指数变换用来压缩低灰度区

No comments :

Post a Comment