将3000x2512复数double导出到tiff文件

时间:2016-04-19 07:18:12

标签: matlab matrix tiff geotiff

我创建了一个3000x2512复数双矩阵,其中每个单元格代表一个值。我想将此矩阵导出到tif文件,以便我可以在另一个应用程序(Arcmap)中进行进一步的图像处理。 最好的方法是什么?

请注意,我通常不是matlab用户。 我尝试使用(I =矩阵):

imwrite(I, 'my_graphics_file.tif','tif');

但输出只是一个空白的tif文件。 我知道矩阵有效,因为当我尝试将其显示为图形时,我可以成功查看它。

非常感谢!

2 个答案:

答案 0 :(得分:1)

您不能指望从复杂矩阵中获取tiff文件。也许你想创建两个图像,一个用于实际部分:

imwrite(real(I), 'my_graphics_file_real.tif','tif');

和假想部分的一个

imwrite(imag(I), 'my_graphics_file_imag.tif','tif');

或者替代绝对值和相位。另请注意,使用双矩阵输入的imwrite假定值在[0,1]范围内。

答案 1 :(得分:1)

我不认为这在MATLAB中是可行的。虽然LibTIFF支持双复杂数据类型,但MATLAB似乎没有实现这一点。

表示here(在SampleFormat下 )'不支持'Void,ComplexInt和ComplexIEEEFP。' (复杂的IEEEFP指的是复杂的IEEE浮点数据)