IP_1:图像处理_开始&二值化

1. 开始    

    最近开始学习《数字图像处理》,用几天时间把所用书籍的前半部分过了一下,感觉还挺感兴趣。想到写博客可能更能给我一个反馈,这样能让我更愿意持续地学习。

    总结了下,在学习《数字图像处理》中,我主要就要抓住两条主线来学习:

        第一条是空域和频域,第二条是具体要实现的功能。

    因为二值化应该是最基本的图像处理操作了(我在项目组一开始接触图像处理的时候,第一个接触的操作就是二值化),这篇博文开始谈二值化。当然这些算法不可能都在我所用书籍中找到,而是结合了网上其他一些更加优秀的博客。

    当然不可能涉及到所有的算法,要是真的涉及到所有的算法不仅我吃不消,而且所获也有限。


2. 二值化方法

    二值化是图像分割最简单的一种方法,可把灰度图像转化成二值化图像。

    二值化主要就是在空域上面操作的,目前没见过在频域上进行的二值化;而且在我看来,这也是不可能的。

    二值化的方法固然有很多种,许多算法看起来结果还行,所以我就不知道用哪一个算法比较好。这是因为在我现在所知里面,缺乏一个描述二值图像好坏的一个量,但是想来这样一个量也是各有偏好的,否则就只有寥寥几个算法了,不会有这么多算法。

    2.1    固定阈值法(平均阈值法)

            使用一个固定的阈值作为图像阈值。或者改进下,使用图像灰度的平均值作为阈值。

    2.2    百分比阈值法    (P-Tile)

            这个方法保证最后二值化之后,白的像素的占比是给定的阈值。另外,如果 grey(P1)>grey(P2),那么P1比P2更易被二值化。

    2.3    基于灰度直方图有双峰的阈值

            这种方法要求先对灰度直方图进行平滑处理,平滑处理之后检测是否为双峰。对于灰度直方图是双峰的灰度图,这样我们会做出判断:谷底,或者双峰的平均值或者,使我们选取的阈值。

            这里需要注意的是如何进行平滑处理:一方面,平滑处理的算法会影响我们的精度;另一方面,平滑处理的算法亦会影响我们的速度。

            在网上看到的算法看起来比较笨拙,不断地进行平均,上限是遍历1000次灰度直方图,没有找到双峰就去你妹的。这个算法简单可行,但是我还有别的思路:实际上平滑要做的就是用一个平滑的函数来拟合原来的直方图,另外,如果三个邻近的直方图连起来接近一条直线,那么就是平滑的。根据上面两点,我们可以在三个直方图之间用一个线性函数来拟合,不断修正,最后得出一个平滑曲线。实际上,上面的算法就是我们这个算法的一个特殊情况:使用的是斜率为0的线性函数;当然我们也可以不用线性函数来拟合,使用二次函数甚至三次函数也是可以的(这一点可以参考经典证明定积分的几种方法,不过证明定积分的时候是以直代曲,现在是以以曲代直)。但是这不仅需要考虑到数学上的精确,还需要考虑到工程上的实用,这样看来,线性函数似乎是最好的。我还没有具体想出这个算法,但是我可以指出这个算法的步骤:

                1. 使用一个线性函数来拟合一定范围的直方(当然线性函数的参数是需要和误差函数挂钩的)

                2. 采用一个误差函数,在更换范围的同时,不断累积误差

                3. 检测误差函数是否在可允许的范围内,如果可以,结束,不可以继续;

                4. 如果在一个规定的时间内结束拟合,如果有双峰,ok;没有就去你妹的。

            如此简单看来,这个算法需要有一些挺多的难点:

                1. 误差函数的选取

                2. 线性函数和误差函数的关系

                3. 允许的误差范围和规定的时间

            另外,很有意思,在网上看见了别的算法:在一定范围内加权平均(类似一个一维算子?)

    2.4    迭代最佳阈值
        该算法先假定一个阈值,然后计算该阈值下的前景灰度平均和背景灰度平均的平均值,如果假定的阈值和这个平均值相等就结束;否则就需要一个收敛的操作:把下一次迭代的阈值置为平均值与假设值的平均值。
        这个算法很美,很希望能写出同样美的程序来描述它。
    2.5    OTSU法(大津法)

        这个算法很有意思:这个算法似乎是从上面这些算法看下来,第一个提出了描述二值图像好坏的一个算法(也有可能是我才疏学浅;若是,望指出)。

        这个算法从最小灰度遍历到最大灰度,当灰度值使得类间方差值取得最大值的时候,取这个灰度作为二值化的阈值。这个算法依赖类间方差函数的实际形状:当目标与背景的大小比例悬殊时,类间方差准则函数可能呈现双峰或多峰,此时效果不好。

    2.6    一维最大熵

        这个算法本质也是提出一个标准:该算法把信息论中的熵的概念引入到图像中,把这个认为是二值图像好坏的标准(之一)。

  

3. 参考资料

    1.      Imageshop : 十三种基于直方图的图像全局二值化算法原理、实现、代码及效果。

    2.    《数字图像处理》. 霍宏涛 编著 . 《机械工业出版社》

    3.    参考自 douglax 的CSDN博客:大律法(OTSU法)

    4.    参考自 fanhongweifd 的CSDN博客:一维最大熵阈值分割



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值