图像分割➕二值化

二值化是图像分割的一种方法。在二值化图象的时候把大于某个临界灰度值的像素灰度设为灰度极大值,把小于这个值的像素灰度设为灰度极小值,从而实现二值化。
根据阈值选取的不同,二值化的算法分为固定阈值自适应阈值。 比较常用的二值化方法则有:双峰法P参数法迭代法OTSU法等。

1、双峰法

在一些简单的图像中,物体的灰度分布比较有规律,背景与目标在图像的直方图各自形成一个波峰,即区域与波峰一一对应,每两个波峰之间形成一个波谷。那么,选择双峰之间的波谷所代表的灰度值T作为阈值,即可实现两个区域的分割。如图所示

 

图像分割➕二值化_第1张图片

灰度直方图

在直方图中我们可以明显的看到两个山峰状的图像分布,山峰的顶点我们记为Hmax1和Hmax2,他们对应的灰度值分别为T1和T2,那么双峰法图像分割的思想就是找到图像两个山峰之间的谷地最低值,即在[T1,T2]的灰度范围内寻找阈值T,使其满足对应的像素数目最少,表现在图像上就是高度最低,用T对图像进行分割或二值化。

2、P参数法

2.1 原理

所谓P分位法图像分割,就是在知道图像中目标所占的比率Ratio时,循环不同的灰度值对图像进行分割,并计算对应的目标所占的比率,如果该比率与Ratio的差值足够小,那么该阈值就是所求的最佳分割阈值。

2.2 算法

算法过程如下:

  1. 已知目标图像所占比率P;
  2. 设定一阈值Th,它将图像分割为两部分,目标部分A和背景部分B,统计两部分所包含的像素数目分别为Na和Nb;
  3. 将Th从1-254迭代,每改变一次Th ,计算一次Na,Nb,根据Na,Nb计算目标所占的比率P,公式如下:

     

  4. 计算当前阈值对应的分割比率与已知比率的差值,若小于某阈值则停止迭代,否则,转至3继续进行,公式如下:

     

    其中T为某一小数

3、迭代法

3.1 原理

迭代选择法是首先猜测一个初始阈值,然后再通过对图像的多趟计算对阈值进行改进的过程。重复地对图像进行阈值操作,将图像分割为对象类和背景类,然后来利用每一个类中的灰阶级别对阈值进行改进。

3.2 算法

  1. 为全局阈值选择一个初始估计值T(图像的平均灰度)。
  2. 用T分割图像。产生两组像素:G1有灰度值大于T的像素组成,G2有小于等于T像素组成。
  3. 计算G1和G2像素的平均灰度值m1和m2;
  4. 计算一个新的阈值:T = (m1 + m2) / 2;
  5. 重复步骤2和4,直到连续迭代中的T值间的差小于一个预定义参数为止。

3.3 代码



作者:木夜溯
链接:https://www.jianshu.com/p/6efd324e8677
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

你可能感兴趣的:(图像分割➕二值化)