MATLAB 帮助中心
本页翻译不是最新的。点击此处可查看最新英文版本。
将图像转换为 8 位无符号整数
J = im2uint8(I)
J = im2uint8(I,"indexed")
J = im2uint8(I) 将灰度、RGB 或二值图像 I 转换为 uint8,并根据需要对数据进行重新缩放或偏移。
J
I
uint8
如果输入图像属于 uint8 数据类型,则输出图像相同。如果输入图像属于 logical 数据类型,则 im2uint8 将值为 true 的元素更改为 255。
logical
im2uint8
示例
J = im2uint8(I,"indexed") 将索引图像 I 转换为 uint8,并根据需要对数据进行偏移。
全部折叠
创建一个数据类型为 uint16 的数组。
uint16
I = reshape(uint16(linspace(0,65535,25)),[5 5])
I = 5×5 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 = 5×5 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 图像,则它可以是 uint8、uint16、int16、double、single 或 logical 数据类型。im2uint8 需要数据类型为 double 和 single 的图像的值在 [0, 1] 的范围内。如果 I 的值超出范围 [0, 1],则可以使用 rescale 函数将值重新缩放到需要的范围。
int16
double
single
rescale
如果 I 是索引图像,则其数据类型可以是 uint8、uint16、double 或 logical。如果索引图像属于 double 数据类型,则最大值必须等于或小于 256。如果索引图像属于 uint16 数据类型,则最大值必须等于或小于 255。
如果 I 是二值图像,则它必须为 logical。
数据类型: single | double | int16 | uint8 | uint16 | logical
具有数据类型 uint8 的图像,以与输入图像 I 大小相同的数值数组形式返回。
数据类型: uint8
全部展开
用法说明和限制:
im2uint8 支持 C 代码生成(需要 MATLAB® Coder™)。请注意,如果您选择通用的 MATLAB Host Computer 目标平台,im2uint8 生成的代码将使用平台特定的预编译共享库。使用共享库可保留性能上的优化,但适用范围仅限于生成的代码所适用的目标平台。有关详细信息,请参阅Image Processing Toolbox 中代码生成支持的类型。
MATLAB Host Computer
backgroundPool
ThreadPool
此函数完全支持基于线程的环境。有关详细信息,请参阅在基于线程的环境中运行 MATLAB 函数。
此函数完全支持 GPU 数组。有关详细信息,请参阅GPU 上的图像处理。
im2uint8 现在支持基于线程的环境。
im2double | im2int16 | im2single | im2uint16 | uint8
im2double
im2int16
im2single
im2uint16
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
欧洲
亚太
联系您当地的办事处