0025_阈值分割算子的说明

阈值处理,用来分割图像

当图像中物体的灰度值存在差异,可以通过阈值分割的方法提取出目标所在区域

1. auto_threshold

auto_threshold(Image : Regions : Sigma : )

直方图自动阈值(自适应阈值)

自动阈值输入必须是是单通道图像,会有多阈值分割,Sigma用于对灰度直方图进行高斯平滑,决定了平滑的程度(分割细致程度),当sigma很大时,灰度直方图基本会被平滑为只剩下一个波峰,而分割是根据平滑后直方图的波谷来进行的,Sigma小,分割的越细致。

2. bin_threshold

bin_threshold(Image : Region : : )

使用自动确定的阈值分割图像

3. binary_threshold

binary_threshold(Image : Region : Method, LightDark : UsedThreshold)

Image:需要进行阈值的图像

Region:处理后的区域

Method:分割方法('max_separability':最大限度的可分性, 'smooth_histo':直方图平滑)

LightDark:提取的是黑色部分还是白色部分

UsedThreshold:自动阈值使用的阈值值

针对全图像进行阈值分割处理,获得的区域要么是亮区域,要么是暗区域。

4. dual_threshold

dual_threshold(Image : RegionCrossings : MinSize, MinGray, Threshold : )

Threshold 表示用于分割的阈值数值

MinSize表示分割出来的区域的最小面积(即数像素的数目个数)

MinGray表示分割出来的区域对应的原图中图像像素的最高灰度不能低于MinGray设定值。

5. dyn_threshold

dyn_threshold(OrigImage, ThresholdImage : RegionDynThresh : Offset, LightDark : )

局部阈值分割,一般与mean_image联合使用:

mean_image(Image,Mean,21,21)

dyn_threshold(Image,Mean, RegionDynThresh,15,'dark')

当前背景之间差异明显时,可以设定全局阈值进行threshold,但很多情况下由于背景不均一,目标体经常表现为比背景局部亮一些或暗一些,无法确定全局阈值操作,需要通过其邻域找到一个合适的阈值进行分割。

6. fast_threshold

fast_threshold(Image : Region : MinGray, MaxGray, MinSize : )

快速二值化

针对全图像进行阈值分割处理,阈值分割部分的效果和threshold是相同的,但是,该算子还增加了最小块的限制,直接能去掉小于MinSize 的区域。

7. threshold

threshold(Image : Region : MinGray, MaxGray : )

- Image是输入图像 

- Region是分割后的结果 

- MinGray 和MaxGray是输入的控制参数,分割的最小灰度值与最大灰度值

针对全图像进行阈值分割处理,输出的是最小灰度值和最大灰度值之间的区域

8. var_threshold

var_threshold(Image : Region : MaskWidth, MaskHeight, StdDevScale, AbsThreshold, LightDark : ) 

MaskWidth、 MaskHeight是用于滤波平滑的掩膜单元;

StdDevScale是标准差乘数因子(简称标准差因子);

AbsThreshold是设定的绝对阈值;

LightDark有4个值可选,’light’、’dark’、’equal’、’not_equal’。

动态阈值分割-根据局部均值和方差 

var_threshold图像灰度值在均值与方差之和以上或在均值与方差之差以下 

需要强调的是var_threshold算子和dyn_threshold算子极为类似。不同的是var_threshold集成度更高,并且加入了“标准差×标准差因子”这一变量。

猜你喜欢

转载自blog.csdn.net/ymj7150697/article/details/83119538