Main Content

本页翻译不是最新的。点击此处可查看最新英文版本。

im2bw

基于阈值将图像转换为二值图像

不建议使用 im2bw。请改用 imbinarize。有关详细信息,请参阅兼容性注意事项

说明

示例

BW = im2bw(I,level) 将灰度图像 I 转换为二值图像 BW,方法是将输入图像中亮度大于 level 的所有像素替换为值 1(白色),将所有其他像素替换为值 0(黑色)。

此范围与图像的类的可能信号级别相关。因此,0.5level 值对应于类的最小值和最大值之间的中等强度值。

BW = im2bw(X,cmap,level) 将具有颜色图 cmap 的索引图像 X 转换为二值图像。

BW = im2bw(RGB,level) 将真彩色图像 RGB 转换为二值图像。

示例

全部折叠

load trees
BW = im2bw(X,map,0.4);
imshow(X,map), figure, imshow(BW)

Figure contains an axes object. The axes object contains an object of type image.

Figure contains an axes object. The axes object contains an object of type image.

输入参数

全部折叠

二维灰度图像,指定为 m×n 数值矩阵。

数据类型: single | double | int16 | uint8 | uint16

二维索引图像,指定为 m×n 数值矩阵。

数据类型: single | double | int16 | uint8 | uint16

与索引图像 X 相关联的颜色图,指定为由范围 [0, 1] 内的值组成的 c×3 数值矩阵。每行是一个三元素 RGB 三元组,指定颜色图的单个颜色的红、绿和蓝分量。

数据类型: single | double | int16 | uint8 | uint16

二维 RGB 图像,指定为 m×n×3 数值矩阵。

数据类型: single | double | int16 | uint8 | uint16

亮度阈值,指定为 [0, 1] 范围内的数值。要计算 level,您可以使用 graythresh 函数。

数据类型: single | double | int16 | uint8 | uint16

输出参数

全部折叠

二值图像,以 m×n 逻辑矩阵形式返回。

数据类型: logical

算法

如果输入图像不是灰度图像,则 im2bw 使用 ind2grayrgb2gray 将输入图像转换为灰度图像,然后通过阈值化将此灰度图像转换为二值图像。

版本历史记录

在 R2006a 之前推出

全部展开