图像二值化中阈值算法浅析

本文介绍了图像二值化的概念及其在图像处理中的重要性。讲解了常用的阈值选择算法,包括OSTU大津法、迭代法和Sobel算子。大津法基于全局图像直方图自动选取阈值,迭代法则通过逐次逼近找到最佳阈值,Sobel算子用于边缘检测并具备一定的抗噪能力。文章还提到了Sobel算子在处理噪声时的局限性。
摘要由CSDN通过智能技术生成

什么是二值化

所谓图像二值化,就是将256个亮度等级的灰度图像,通过适当的阈值选取而获得仍然可以反映图像整体和局部特征的二值化图像。
由于我们用摄像头拍到的图像为灰度图像,若直接处理会加大很多不必要的工作量,而将图像二值化,则可以使目标图像变得简单且数据量小,同时又不丢失图像中的重要信息。由此可见,在图像处理中,二值化步骤显得尤为重要。
我们知道,二值化的步骤无非是将获得的图像数据中大于阈值的像素点用255表示,而小于阈值的像素点用0表示。
那么如何选择二值化所需的阈值,就成为了非常重要的一个步骤。

常见的求阈值算法

OSTU大津法

概念及原理

OTSU算法又称为最大类间方差法。这是我们很常见的一种求阈值的方法,它的思路就是通过统计整个图像的直方图特性来实现全局阈值T的自动选取。
该算法进行前先设一个i作为分类阈值,通过归一化的直方图,统计图像中各个灰度级的像素占整幅图像的比例w0,并统计前景像素和背景像素的平均灰度u0和u1,和背景像素所占比例w1;通过公式g = w0w1(u0-u1) (u0-u1)计算前景像素和背景像素的方差 ,每进行完一次循环i值加一,直道i=256时停止循环,并将最大的g值作为图像阈值。
大津法二值化的代码实现在网上比较多,这里不做详细介绍。

iteration迭代法

概念及原理

迭代法也叫最小概率误判法,它使用逐次逼近的思想,通过不断更新迭代,求出满足整幅图像偏差等级error的阈值。
具体步骤为:首先设定初始阈值T0和偏差等级,此阈值将图像分割为前景和背景,此时可以算出前景和背景的平均灰度值T1和T2,则新的最佳阈值为T_center=(T1+T2),将新阈值与上一个阈值比较。若两者之差在偏差等级之内,则将标志位置为0,结束运算,得到的阈值极为当前阈值;若大于此偏差,则标志位置为1,继续下一次循环运算,由此逐渐逼近真实阈值。

代码实现

 do{
   
  	for(i=0;i<MT9V03X_H;i++)
    {
   
      for(j=0;j<MT9V03X_W;j++)
      {
   
        if(Im[i][j] < T2)
        {
   
          S0 += Im[i][j];
          N0++;   //像素点数统计
        }
        else
        {
   
          S1 += Im[i][j];
          N1++;   //像素点数统计
        }
      }
    }
    T1 = S0/N0;   //平均灰度值
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Carry_qing

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值