Image segmentation using Otsu thresholding

版本 1.4.0.0 (3.5 KB) 作者: Damien Garcia
OTSU(I,N) segments the image I into N classes by means of Otsu's N-thresholding method.
20.1K 次下载
更新时间 2010/3/10

查看许可证

IDX = OTSU(I,N) segments the image I into N classes by means of Otsu's N-thresholding method. OTSU returns an array IDX containing the cluster indices (from 1 to N) of each point.

IDX = OTSU(I) uses two classes (N=2, default value).

[IDX,sep] = OTSU(I,N) also returns the value (sep) of the separability criterion within the range [0 1]. Zero is obtained only with data having less than N values, whereas one (optimal value) is obtained only with N-valued arrays.

If I is an RGB image, a Karhunen-Loeve transform is first performed on the three R,G,B channels. The segmentation is then carried out on the image component that contains most of the energy.

Example:
---------
load clown
subplot(221)
X = ind2gray(X,map);
imshow(X)
title('Original','FontWeight','bold')
for n = 2:4
IDX = otsu(X,n);
subplot(2,2,n)
imagesc(IDX), axis image off
title(['n = ' int2str(n)],'FontWeight','bold')
end

------
See also:
http://www.biomecardio.com/matlab/otsu.html
-----

引用格式

Damien Garcia (2025). Image segmentation using Otsu thresholding (https://www.mathworks.com/matlabcentral/fileexchange/26532-image-segmentation-using-otsu-thresholding), MATLAB Central File Exchange. 检索时间: .

MATLAB 版本兼容性
创建方式 R2007b
兼容任何版本
平台兼容性
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
版本 已发布 发行说明
1.4.0.0

Minor modifications

1.3.0.0

The segmentation for RGB image has been improved: a KLT is performed and we keep the component of highest energy.

1.2.0.0

RGB images are now analyzed in the gray, R, G and B scales.

1.1.0.0

New screenshot.

1.0.0.0