图像分割 阈值处理综述

学习DIP第51天 转载请标明本文出处: ,出于尊重文章作者的劳动,转载请标明出处!文章代码已托管,欢迎共同开发:https://github.com/Tony-Tan/DIPpro

开篇废话

新年第一篇博客,,图像分割进行到阈值处理,前面学的边缘检测,然后将边缘连接起来,达到分割区域的目的,用到的基础原理是图像灰度的变化,而阈值处理用到的是阈值的不变,也就是把具有相同或相似的灰度的一类像素定义为一个区域,根据这个特点来定义并区分一个区域。而阈值可以理解为一个界限,或者一个划分,超过这个界限的是一个区域,没超过划分为另一个区域,而核心问题式确定这个阈值。

阈值概述

阈值处理用到的唯一公式如下,这是阈值处理的核心操作:

式子中T就是我们的阈值,我们将要学习的算法都是来确定这个T的。 当然这是单阈值的方法,如果有多个模式的时候我们也会使用多阈值,但多阈值难度较大,一般很少使用。 阈值根据不同得到阈值的方法可以将阈值分成以下几种类型:

可见阈值可以分成全局阈值,局部阈值和动态阈值,这些不同的阈值要根据不同的图像情况来确定使用不同的方法。 理解阈值我们可以将一副图像想象成一个三维场景,图像长和宽为三维空间中的x轴和y轴,而灰度强度为z轴,对于lena图,用Matlab产生下图,三维图像沿着x轴旋转:

其他角度观察此图:

我们使用一个简单的阈值处理,比如使用128作为阈值,大于128的灰度设为128,小于128的保持不变,可以理解为以横着切一刀,效果就下面:

阈值处理通过观察原图的直方图也可以得出很好的理解,当直方图为双峰,且波谷越深越宽的,使用阈值处理越好。 阈值处理可以产生二值图或者其他灰度图,可以根据需要来产生所需要的结果,一般可以产生下面几种结果,对于单阈值:

Minvalue最小值,最小灰度值,0Maxvalue最大值,最大灰度值,255dst(x,y)=src(x,y)>T?src(x,y):Minvalue;dst(x,y)=src(x,y)>T?Maxvalue:src(x,y);dst(x,y)=src(x,y)>T?Maxvalue:Minvalue;//此处产生二值图像dst(x,y)=src(x,y)>T?Minvalue:Maxvalue;//此处产生二值图像,将上图反转影响阈值处理的因素

影响阈值处理的主要两个因素是噪声和光照观察下图为两个灰度的图像。 原图:

原图直方图:

加入标准差为1%(255的1%),均值为0的高斯噪声:

直方图:

加入标准差为3%(255的3%),均值为0的高斯噪声:

直方图:

加入标准差为5%(255的5%),均值为0的高斯噪声:

直方图:

加入标准差为7%(255的7%),均值为0的高斯噪声:

直方图:

加入标准差为10%(255的10%),均值为0的高斯噪声:

直方图:

加入标准差为15%(255的15%),均值为0的高斯噪声:

直方图:

开始的时侯,我们就知道,总会有终结。

图像分割 阈值处理综述

相关文章:

你感兴趣的文章:

标签云: