主要内容

im2double

转换图像双精度

描述

例子

I2= im2double (将图像转换为双精度。可以是灰度强度图像、真彩色图像或二值图像。im2double将输出从整数数据类型调整到范围[0,1]。

I2= im2double (,“索引”)转换索引图像双精度。im2double向整数数据类型的输出添加偏移量1。

例子

全部折叠

读取数据类型的示例图像uint8

我= imread (“peppers.png”);谁
Name Size Bytes Class Attributes I 384x512x3 589824 uint8

将图像转换为数据类型

I2 = im2double(我);谁I2
Name Size Bytes Class Attributes I2 384x512x3 4718592 double

将数组转换为类在GPU上。此示例需要并行计算工具箱™。

I1 = gpuArray(重塑(uint8(linspace(1,255,25)),[5 5]));I2 = im2double (I1);

输入参数

全部折叠

输入图像,指定为数字标量、向量、矩阵或多维数组。

  • 如果是灰度或真色(RGB)图像,可以是uint8uint16逻辑,或int16

  • 如果是索引图像,可以吗uint8uint16逻辑

  • 如果是二值图像,它一定是吗逻辑

如果安装了并行计算工具箱,则可以是一个gpuArray和im2double转换在GPU上。

数据类型:||int16|uint8|uint16|逻辑

输出参数

全部折叠

转换后的图像,作为与输入图像大小相同的数字数组返回

数据类型:

提示

  • 如果输入图像的数据类型,或逻辑,则输出像素值与输入像素值相同。

    请注意

    许多MATLAB®对于数据类型的真彩色图像,函数期望像素值在[0,1]范围内。的im2double函数在输入图像具有时不会调整输出数据类型。如果您的输入图像是数据类型的真彩色图像如果像素值超出此范围,则可以使用重新调节将像素值缩放到预期范围[0,1]的函数。

  • 如果具有数据类型的灰度图像或真彩色图像uint8uint16int16,然后im2double将输出像素值重新缩放到范围[0,1]。

  • 如果索引图像是否具有数据类型uint8uint16,然后im2double添加偏移量1到输出像素值。

扩展功能

C / c++代码生成
使用MATLAB®Coder™生成C和c++代码。

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

另请参阅

|(图像处理工具箱)|(图像处理工具箱)|(图像处理工具箱)|(图像处理工具箱)|(并行计算工具箱)

主题

之前介绍过的R2006a