在Matlab中加载卫星图像

时间:2012-11-16 11:29:42

标签: image matlab

我有一个关于如何在Matlab上加载Landsat图像的问题。我的图片格式为.img,并提供以下信息:

Columns and rows= 9487 x 8543
Number of bands= 6
Cellsize= 25 x 25
Source Type= continuous
Píxel type= unsigned integer
Pixel Depth= 16 bit
Scale factor= 0,9996

这是我的代码:

  

IM = multibandread('2000.img',[9487,8543,   6],'int16',0,'ieee-le',{'Row','Range',[9487 8543]);

但是出现以下错误:

错误:不平衡或意外的括号或括号。

我试图改变但它不起作用。我该怎么办?

提前致谢,

艾玛

2 个答案:

答案 0 :(得分:2)

丹尼斯是对的,你错过了一个闭合的大括号。它应该插在支架和末端的括号之间,如下所示:

  

IM = multibandread('2000.img',[9487,8543,6],'int16',0,'ieee-le',{'Row','Range',[9487 8543] } );

答案 1 :(得分:0)

我认为您可能希望完全保留子集参数,除了使用unsigned uint16之外,请尝试以下操作:

multibandread('2000.img',[9487, 8543, 6],'uint16',0,'ieee-le')

请注意,对于您当前的通话,您似乎正在尝试将第9487行提取为8543。