二值化_图像处理学习笔记(七)——二值化、阈值处理、灰度、分段线性(理论篇)...

语言:C++

环境:vs2019

本章主要学习:

1、图像二值化;

2、阈值处理;

3、灰度变换处理;

4、分段线性变换;

上一章,讲了灰度变换有线性变换和非线性变换;这一章,我们还是将线性变换;

一、二值化法

如图

6062b394302b21ef83398e9459e9daca.png

对应表达式如下式:

23a4ec4c359ff5022ea3bf753d84085c.png
公式一

经过二值化后(给个阈值),大于阈值取0或255,或者小于阈值取255或0,最终结果获取一副二值图像;

二值化很重要,对一副图片进行二值化处理后,我们就可以进一步进行去噪处理和特征提取;

对于二值化,看上去简单,其实难得是对阈值的处理,阈值太大,目标就小;阈值太小,噪音就含在你的目标里面了,进行分析的话,判断失误性就太多。后面我们还有方法来找这个阈值,找阈值很难。比如人脸识别,阈值找的很正确的话,我们可以一下就可以把人脸识别出来了,比如一幅图有人脸,身子,背景;只需要把黄颜色的皮肤找到,其他都去掉,一下就二值化了;

但是,这个黄颜色,如果只指定一种黄颜色行不行呢???

我们可以根据实际去考虑,有的人黄颜色还不一样,有的是偏白的黄,有偏深黄;

所以,这个阈值就不好取。

一般情况下,我们对一张图片进行底层的处理之后,建立一些模型来取。

比如:如下图的细胞,我们取不同的阈值进行处理看看结果:

阈值取100和阈值取200的结果:

8fb3c97e601182d2c5e01aa3f683236d.png
阈值100

d397ca0df435c87736e4cbb64808d112.png
阈值200

对于这个阈值怎么选取,我们可以有很多方法,比如直方图法去选择波峰或波谷,迭代阈值法、自适应阈值法能都直接算出阈值;

在公式一中,T是一个参数,我们可以叫固定阈值法,但是是不是可以有两个阈值呢???

肯定的回答是:有的;

我们称为:双固定阈值法;

4f7d9561f564ef8efe641f3bad5f4355.png

如下图,在0到T1之间和T2到255之间,将图像设为黑;T1到T2之间为白;:

336628daf121fb9ba0955c8b0c571469.png

你也可以自己改,例如下图,在0到T1和T2到255之间,将图像设为黑;T1到T2之间设为白;

d57968635ef3d8032d9d6edb0fb1e9f1.png

窗口灰度变换处理:

灰度窗口变换的变换函数表达式如下:

8908ae28a8f64a0135dc5733d8b4da9c.png

L表示窗口的下限,U表示窗口的上限;小于下限的设为黑,大于上限的设为白;

分段线性变换:

如下如,三段分别代表三个不同的线性变换;

ccabb471073936c7c7be195a2d489632.png
分段线性表达式

d67fee7d10e55d2cddc8a92b040954f1.png
分段线性图像

到此为止,本篇文章就介绍完了。主要讲解了一些常用的灰度变换;欢迎大家阅读,觉得有用的话,点击关注,一起学习,一起进步;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值