使用Otsu方法计算全局图像阈值 语法:
T
= graythresh(I
)
[T
,EM
] = graythresh(I
)
说明:
T
= graythresh(I
) 使用 Otsu 方法 , 根据灰度图像 I 计算全局阈值 T。Otsu 方法选择一个阈值,使阈值化的
黑白像素的类内方差最小化。全局阈值 T 可与 imbinarize 结合使用以将灰度图像转换为二值图像。
[T
,EM
] = graythresh(I
) 还返回有效性度量 EM。
示例 使用灰度级阈值将强度图像转换为二值图像
clear all
close all
clc
I
=imread('timg.jpg');
I
=rgb2gray(I
);
%使用graythresh计算阈值。阈值归一化至范围
[0,1]。
level
=graythresh(I
);
%使用阈值将图像转换为二值图像。
BW
= imbinarize(I
,level
);
%在二值图像旁边显示原始图像。
imshowpair(I
,BW
,'montage')
默认情况下,函数 imbinarize 使用通过 Otsu 方法获得的阈值创建二值图像。该默认阈值与 graythresh 返回的阈值相同。但是,imbinarize 只返回二值图像。如果需要灰度级或有效性度量,请在调用 imbinarize 之前使用 graythresh。