我有一个关于如何在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]);
但是出现以下错误:
错误:不平衡或意外的括号或括号。
我试图改变但它不起作用。我该怎么办?
提前致谢,
艾玛
答案 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。