zoukankan      html  css  js  c++  java
  • 读《Adaptive Thresholding Using the Integral Image》自适应图像阈值

    图像的二值化问题总是一个问题。虽然使用深度学习的方法取得了不小的进展,但是传统的方法还是值得借鉴。

    刚好随机游走到这篇文章 挖个07年的坟  地址:http://people.scs.carleton.ca/~roth/iit-publications-iti/docs/gerh-50002.pdf 

      这是二值化后的效果。

    全局阈值法在上面的情况下会失效,所以本文使用了一种自适应的阈值算法。

    作者使用了积分图 (Integral Image) 作为阈值分割工具,这也算是积分图的应用吧。

     

    公式(1)是坐标(x,y)处的积分值的计算方法, (2)是计算两个对角点像素的和。

    图像2给出了积分图的计算事例。 左:图像灰度值 中:计算的对应的积分图   最后一个是解释公式(2),类似于几何文氏图

    作者给出的阈值分割判据是:

    计算目标点周围S邻域正方形内的均值

    比较该目标点与均值的差距

      如果目标点灰度值小于均值的 某一百分比(阈值) 目标点为0

      如果目标点灰度值大于均值的某一百分比(阈值)    目标点为1

    作者取的邻域S,和百分比 没有找到,公布代码的网址也挂掉了。

     检测结果:

    乱侃:

    这是很早的一篇文章了,和现在Opencv里的adaptivethreshold原理差不多。

    该文章里引用的另一个人的方法比较有意思:

    对图像进行按行扫描,计算前s个像素的滑动平均值,对于要判定的像素,比较其与这个滑动平均值的大小,然后判定。

    总之,这篇文章比较老,作者使用了积分图来加快计算某一像素领域内的均值,这点在当时应该比较新,对于深度学习来说就是做了个sxs的均值卷积,现在根本不是问题。

    当然,现在这种局部自适应阈值的方法还是大量使用,因为他最能讲的通,简单明了。但是就像图1里的阈值分割结果,四周的假阳性有点多啊。这个的消除才是现在的难点。

    消除这些假阳性的方法有: 形态学的方法(膨胀,腐蚀) ,几何尺寸先验知识过滤,等 ,传统论文大概都是这个套路。总之,难点还是如何消除分割错误的像素。

     
  • 相关阅读:
    chrome 插件备份
    github下载单个文件
    idea插件备份
    外卖类应用的竞争与趋势
    使用终端和Java API对hbase进行增删改查操作
    分布式文件系统的布局、文件查找
    Java上机实验报告(4)
    Java上机实验报告(3)
    Java上机实验报告(2)
    Java上机实验报告(1)
  • 原文地址:https://www.cnblogs.com/yjphhw/p/11319624.html
Copyright © 2011-2022 走看看