码迷,mamicode.com
首页 > 其他好文 > 详细

阈值分割之迭代选择阈值法

时间:2015-05-14 23:30:10      阅读:856      评论:0      收藏:0      [点我收藏+]

标签:

function [Ibw, thres] = autoThreshold(I)
% 迭代法自动阈值分割
%
% 输入:I - 要进行自动阈值分割的灰度图像
% 输出:Ibw - 分割后的二值图像
%      thres - 自动分割采用的阈值

thres = 0.5 * (double(min(I(:))) + double(max(I(:)))); %初始阈值
done = false; %结束标志
while ~done
    g = I >= thres;
    Tnext = 0.5 * (mean(I(g)) + mean(I(~g)));
    done = abs(thres - Tnext) < 0.5;
    thres = Tnext;
end;

Ibw = im2bw(I, thres/255); % 二值化
I=imread(‘a.jpg‘);
[Ibw,thres]=autoThreshold(I);
imshow(Ibw)
这是处理之前图片
技术分享


处理之后为
技术分享
很明显,此次阈值分割失败。
尝试用最大类间方差法,程序为:
I = imread(‘a.jpg‘);
        level = graythresh(I);
        BW = im2bw(I,level);
        figure, imshow(BW)

结果为

技术分享

依然错误。

技术分享

阈值分割之迭代选择阈值法

标签:

原文地址:http://www.cnblogs.com/natalie/p/4504753.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!