Main Content

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

im2uint8

将图像转换为 8 位无符号整数

说明

示例

J = im2uint8(I) 将灰度、RGB 或二值图像 I 转换为 uint8,并根据需要对数据进行重新缩放或偏移。

如果输入图像属于 uint8 类,则输出图像相同。如果输入图像属于 logical 类,则 im2uint8 将 true 值元素更改为 255。

J = im2uint8(I,'indexed') 将索引图像 I 转换为 uint8,并根据需要对数据进行偏移。

示例

全部折叠

创建一个数据类型为 uint16 的数组。

I = reshape(uint16(linspace(0,65535,25)),[5 5])
I = 5x5 uint16 matrix

       0   13653   27306   40959   54613
    2731   16384   30037   43690   57343
    5461   19114   32768   46421   60074
    8192   21845   35498   49151   62804
   10923   24576   38229   51882   65535

将该数组转换为数据类型 uint8

I2 = im2uint8(I)
I2 = 5x5 uint8 matrix

     0    53   106   159   213
    11    64   117   170   223
    21    74   128   181   234
    32    85   138   191   244
    43    96   149   202   255

输入参数

全部折叠

输入图像,指定为任意大小和维度的数值数组或逻辑数组。

  • 如果 I 是灰度或 RGB 图像,则它可以是 uint8uint16doublelogicalsingleint16singledouble 类的输入图像的强度值必须在 [0, 1] 范围内。

    注意

    如果 I 属于 singledouble 类,且值超出范围 [0, 1],则您可以使用 rescale 函数将值重新缩放到预期范围。

  • 如果 I 是索引图像,则它可以是 uint8uint16doublelogical

    注意

    索引图像并非始终能转换为 uint8。如果索引图像属于 double 类,则最大值必须等于或小于 256。如果索引图像属于 uint16 类,则最大值必须等于或小于 255。

  • 如果 I 是二值图像,则它必须为 logical

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

输出参数

全部折叠

具有类 uint8 的图像,返回为与输入图像 I 大小相同的数值数组。

数据类型: uint8

扩展功能

GPU 代码生成
使用 GPU Coder™ 为 NVIDIA® GPU 生成 CUDA® 代码。

版本历史记录

在 R2006a 之前推出

全部展开