使用浮点32时,Numpy读取数组失败
我正在使用Python和GDAL来处理Landsat卫星图像。简单来说,我想把这些图像转换成Tasseled Cap格式。通常,我会读取7个大小为7281 x 8051的整数数组,这些数组分别被命名为波段1到5和波段7,还有一个叫fmask的掩膜。fmask是一个由0和1组成的掩膜波段。
brightBand=( .2043*band1 + .4158*band2 + .5524*band3+.5741*band4+.3124*band5+ .2303*band7)*fmask
greenBand=( -0.1603*band1+ -.2819*band2 + -.4934*band3 + .7940*band4 + -.0002*band5 + -.1446*band7)*fmask
wetBand=( .0315*band1 + .2021*band2 + .3102*band3 + .1594*band4 + -.6806*band5 + -.6109*band7)*fmask
我可以把这些波段导入为整数16位,而不是32位浮点数,但一旦我尝试进行上述操作,就会收到"内存错误"的提示。我使用的是Spyder/Python 2.7和正确的Python绑定。我有64GB的内存,但似乎只能使用到2GB或8GB。我还在使用32位的Python和GDAL。有没有什么建议?