我读了以下_2426669_的 im2double
类支持:Intensity和truecolor图像可以是uint8,uint16,double,logical,single **或int16 . 索引图像可以是uint8,uint16,double或logical . 二进制输入图像必须是逻辑的 . 输出图像是双倍的
我正在使用64位机器(即MATLAB使用 8 bytes 来表示double类型的变量) . 我有一个 uint32 类型的索引图像,我相信我应该能够将其转换为 double 类型,但 im2double
似乎不支持它,即我收到以下错误:
使用im2double时出错预期输入数字1,Image,是以下类型之一:double,logical,uint8,uint16,int16,single相反,它的类型是uint32 .
那么,如何将 uint32
类型的矩阵(索引图像)转换为 double
?
这一切都在 MATLAB 2012a
1 回答
根据this page(也有一些信息here):
因此MATLAB不支持类uint32的索引图像 . 我想你必须做某种color quantization .