灰度图像找到最佳阈值转换为二值图像的MATLAB程序

灰度图像找到最佳阈值转换为二值图像的MATLAB程序,第1张

%采用迭代运算,乱或计算图像的最佳阈值

%a为原始图像,图像大小为[width,height]

%迭代计算最佳阈值T

% output 是输出的结果图像

value=255/2%设定握陪纳初始迭代阈值T0

old=0 % 前一次迭代计算得到的阈值

%1. 迭代运算过程,计算最佳分割阈值。

while(abs(value-old)>0.1)

%阈段没值分割就是将像素分割成两类,现用 sum1和 sum2计算两类的和,n和m 用来计数。

% 下面是这些变量的初始化过程

old=value

sum1=0

n=0

sum2=0

m=0

% 迭代分类过程

for i=1:width

for j=1:height

if a(i,j)<value

sum1=sum1+a(i,j)

n=n+1

else

sum2=sum2+a(i,j)

m=m+1

end

end

end

%计算新的分割阈值T

value=(sum1/n+sum2/m)/2

end

% 2. 用得到的最终阈值对图像二值化。

output=a

for i=1:width

for j=1:height

if a(i,j)<value

output(i,j)=0 %output是二值化的结果

end

end

end

主要是三类

1) 基于点的全局阈值方法

2) 基于区域的全局阈值方法

3) 局部阈值方法和多阈值方法

1)基于点的全局阈值方法

p-分位数法

1962年Doyle提出的p-分位数法是最古老的一种阈值选取方法

迭代方法选取阈值

初始阈值选取为图像的平均灰度T0,然后用T0将图像的象素点分作两部分,计算两部分各自的平均灰度,小于T0的部分为TA,大于T0的部分为罩大TB,将T1 作为新的全局阈值代替T0,重复以上过程,如此迭代,直至TK 收敛

直方图凹面分析法

最大类间方差法

熵方法

最小误差阈值

矩量保持法

模糊集方法

2) 基于区域派宴的全局阈值方法

二维熵阈值分割方法

简单统计法

直方图变化法

松弛法

3) 局部阈值方法和多阈值方法

局部阈值(动态阈值)

阈值插值法

水线阈值算法

多阈值法 基于小波的多域值尘闷银方法 基于边界点的递归多域值方法 均衡对比度递归多域值方法


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12425259.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存