处理灰度图_第三章 灰度变换与空间滤波-(二)一些基本的灰度变换函数

846463fb2636a43049927575815f610a.png

雷总说:愿你归来仍是少年。

既然本章主要是讨论灰度变换和空间滤波的。我们既然知道了什么是灰度变换,那么让我们来看一看怎么做到他们。

2.1 图像翻转

图像翻转,其实我们在第二章的例子中已经讲到过,并且用OpenCV也实现过。它的实现原理非常简单,其实就是拿最大的灰度级

去做减法。

示例:

db0c851dd78c90c16878520f986c4ddf.png
图像反转

2.2 对数变换

对数变换我们在OpenCV的DFT章节也是用过,其目的是为了将计算的大数据映射到可显示的范围内。它的通用公式:

e1ef396c30150b34facc581294238627.png
C为常数,r>=0的对数变换

由上图可以看出来,对数变换中可以把输入的较窄的范围映射到输出比较宽的范围中,也可以把输入较宽的范围映射到输出较窄的范围中。

3.3 幂律(伽马)变换

幂律变换是对数变换的反变换,所以他的作用可以认为跟对数变换相似,都是输入的窄域和宽域与输出的宽域和窄域的对应。当然,如果r=1的时候就是系数为C的线性变换。

33ad2a1c487191629bbff13e0e36050f.png
幂律变换

我们什么时候会用到幂律变换呢?如幂律变换的指数变量伽马所示,幂律变换也被称为伽马校正,是一种在日常生活中非常常见的变换。

举个例子,比如阴极射线管(CRT)设备又一个灰度-电压响应,该响应是一个指数变换范围约为1.8 ~ 2.5的幂函数。可以参考上图,它的曲线在线性变换的下方,显示输出就会比输入要小(暗)。那么如果直接用该CRT用来显示一个简单的灰度渐变图像,跟预期一样就会得到一幅输出比输入要暗的图像。补偿的方案也很简单,就是只要对输入的图像做一个预处理,即进行

的变换就可以得到显示与预期一致的图形了。

73b459d40981cb2314f170d3b41c1f8b.png
伽马校正

在如今LED为主的显示设备中,他们的显示曲线同样也不是线性的,伽马校正一样重要,其原理是一致的,而且现在几乎所有的显示器都预设了伽马校正的程序。

  • 幂律变换做对比度增强

a00b58f43a017d3f572aa194d82c4e77.png
数据增强:伽马值依此为0.6/0.4/0.3

这种结果也很容易理解,一些人眼无法辨识的细微差距,可以通过幂函数在输出的图像中放大差异,显示出来。

b260deb37b85fe2abb39497c60d4b777.png
图像增强:伽马值依此为3.0/4.0/5.0

同样道理,既然可以做到对比度的增强,也可以通过幂律大于1的函数来做到减小输出对比度的目的,这样看到的照片会明显偏暗(在线性变换的下方)。

2.4 分段线性变换

这个也很容易理解,有些照片,我们不希望是全局的变换,希望对局部的数据内容进行特殊变换,这样就可以使用分段线性变换。

  • 对比度拉伸

对比度拉伸是扩展图像灰度级动态范围的处理,因此,它可以跨越记录介质和显示装置的全部灰度范围。

官话都是概括给本来就懂的人的。我们还是举例理解:如下图在一段变换函数的中间,截取输入r1 到 r2两个点,他们对应的输出为s1 和 s2。那么(r1, s1)到(r2, s2)两个点之间的函数曲线就可以是任意形式,如果斜率变高,可以把较小的输入映射到较大范围的输出上,就达到了对比度拉伸的目的。如果更极限,r1=r2, s1=0, s2=L-1了,那么变换函数就是一条垂直于X轴的直线,这种曲线叫做阈值处理函数。 我们在OpenCv的教程中叶用到过这种方法。

31cfba877b5920b671ec1518e83fb2ea.png
对比度拉伸,图像依次为:变换函数、低对比图像、对比度拉伸的结果、阈值处理的结果
  • 灰度级分层

灰度级分层的目的很简答,需求也比较多,就是把自己感兴趣的特定灰度范围用特殊的灰度级别标定出来(比如标定成白色或者黑色),以达到突出的目的。

1df98ff1aafbac9f9f6e01484011baf1.png
图1) 把感兴趣的A-B标定成一个灰度,其他是另外一个灰度;图2) 只变动A-B的,其他范围不变

举个例子:

d4050d77fba1d73d6390b5eb89edb775.png
图1是原图,图2是用上图的第一个函数分级,图3是上图的第二个函数分级
  • 比特平面分层

既然是数字图像,那么每个像素就是由固定比特的数字组成,比如8bit的灰度级别的图像,我们把每个bit代表一位,就是有8位,拓展到整个图像,就可以得到想象中的8层(每个对应bit组成一层)。在这个想象中的空间中,很显然,位数越高,它代表的数越大,它们组成的高位比特层面,就越能体现图像的轮廓;相同道理,位数月底,它就可以表示约多的是细节。

a402dd68dd06a91213c56b729a3aa87d.png
从第二幅图开始,分别为比特平面1~8
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值