当我们运行一个简单的影像显示程序时,有可能会报出如下错误
[A,R] = readgeoraster('boston.tif');
mapshow(A,R)
这是因为我们加载的影像是single格式存储的,需要我们进一步对其进行数据格式的转换 ,按照mapshow函数的需求,可以进行如下的变换,选择一种即可。
建议转换为double数据类型,因为matlab中数值一般默认采用double型(64位)存储和运算。
A=im2double(A); %or A=double(A)
or
A=im2uint16(A);
or
A=im2uint8(A);
也可以直接读入影像的时候进行变换,便可将原来single格式读取为double格式
[A,R] = readgeoraster('1.tif',"OutputType" , "double" );
这样再调用这个代码便不会报错了。