<html dir="ltr"><head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style title="owaParaStyle"><!--P {
        MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px
}
--></style>
</head>
<body ocsi="x">
<div dir="ltr"><font face="Tahoma" color="#000000" size="2">Hello,</font></div>
<div dir="ltr"><font face="tahoma" size="2">I would like to use this code written by Yann Chemin (see Feb 2009 gdal-dev archives)</font></div>
<div dir="ltr"><font face="tahoma" size="2">but I keep getting a memory error. Can anyone help me fix this. I have put the entire error below the code.</font></div>
<div dir="ltr"><font face="tahoma" size="2">Thanks in advance</font></div>
<div dir="ltr"><font face="tahoma" size="2"></font>&nbsp;</div>
<div dir="ltr"><font face="Tahoma" color="#000000" size="2">F=[]<br>
F.append('e:\Imagery\Landsat\Landsat7\L71040036_03620071224_B10.TIF')<br>
F.append('e:\Imagery\Landsat\Landsat7\L71040036_03620071224_B20.TIF')<br>
F.append('e:\Imagery\Landsat\Landsat7\L71040036_03620071224_B30.TIF')<br>
F.append('e:\Imagery\Landsat\Landsat7\L71040036_03620071224_B40.TIF')<br>
F.append('e:\Imagery\Landsat\Landsat7\L71040036_03620071224_B50.TIF')<br>
F.append('e:\Imagery\Landsat\Landsat7\L72040036_03620071224_B70.TIF')</font></div>
<div dir="ltr"><font face="Tahoma" color="#000000" size="2"># For Image Processing<br>
from math import *<br>
import numpy<br>
from osgeo import gdal<br>
from osgeo import gdalnumeric<br>
from osgeo.gdal_array import *<br>
from osgeo.gdalconst import *</font></div>
<div dir="ltr"><font face="Tahoma" color="#000000" size="2"># Set our output file format driver<br>
driver = gdal.GetDriverByName( 'GTiff' )</font></div>
<div dir="ltr"><font face="Tahoma" color="#000000" size="2"># Set our output files Projection parameters<br>
# from input file number 1<br>
tmp = gdal.Open(F[0])<br>
geoT = tmp.GetGeoTransform()<br>
proJ = tmp.GetProjection()<br>
del tmp</font></div>
<div dir="ltr"><font face="Tahoma" color="#000000" size="2">#DN to radiance conversion factors<br>
#(Check if they are correct for your image)<br>
LMax = [191.6,196.5,152.9,157.4,31.060,10.8]<br>
Lmin = [-6.2,-6.4,-5.0,-5.1,-1.0,-0.35]<br>
#Exo-Atmospheric band-wise irradiance<br>
KEXO = [1970.0,1843.0,1555.0,1047.0,227.1,80.53]<br>
#Unless you use p127r049 2000/11/04, these must be changed<br>
sun_elevation = 27.7636885<br>
doy = 358<br>
#Cos(sun zenith angle) / (pi * (Sun-Earth distance)^2)<br>
constant=(cos((90-sun_elevation) * pi/180 ) / (pi * (1&#43;0.01672 * sin<br>
(2 * pi * (doy - 93.5) / 365)) ** 2))</font></div>
<div dir="ltr"><font face="Tahoma" color="#000000" size="2">#Top Of Atmosphere Reflectance<br>
for i in range (0,6):<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tmp = gdal.Open(F[i])<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; btmp = tmp.GetRasterBand(1)<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; b = BandReadAsArray(btmp,0,0,tmp.RasterXSize,tmp.RasterYSize)<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; result = (b * ((LMax[i]-Lmin[i])/255.0) &#43; Lmin[i]) / (constant * <br>
KEXO[i])<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if i != 5:<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; output_filename='b'&#43;str(i&#43;1)&#43;'_ref.tif'<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else:<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; output_filename='b'&#43;str(i&#43;2)&#43;'_ref.tif'<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #Create output file with projection<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; result = OpenArray(result)<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; geot=result.SetGeoTransform( geoT )<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; proj=result.SetProjection( proJ )<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; output=driver.CreateCopy(output_filename, result)<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #Empty memory objects<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; del result, b, tmp, btmp, output, geot, proj</font></div>
<div dir="ltr"><font face="Tahoma" color="#000000" size="2"></font>&nbsp;</div>
<div dir="ltr"><font face="Tahoma" color="#000000" size="2">#NDVI<br>
NIR = LoadFile('b4_ref.tif')<br>
Red = LoadFile('b3_ref.tif')<br>
ndvi = (NIR-Red)/1.0*(NIR&#43;Red)</font></div>
<div dir="ltr"><font face="Tahoma" color="#000000" size="2"></font>&nbsp;</div>
<div dir="ltr"><font face="times new roman"></font>&nbsp;</div>
<div dir="ltr">Traceback (most recent call last):<br>
&nbsp; File &quot;E:\python processing\Landsat_processing.py&quot;, line 75, in &lt;module&gt;<br>
&nbsp;&nbsp;&nbsp; Red = LoadFile('b3_ref.tif')<br>
&nbsp; File &quot;C:\Python25\lib\site-packages\osgeo\gdal_array.py&quot;, line 73, in LoadFile<br>
&nbsp;&nbsp;&nbsp; return DatasetReadAsArray( ds, xoff, yoff, xsize, ysize )<br>
&nbsp; File &quot;C:\Python25\lib\site-packages\osgeo\gdal_array.py&quot;, line 90, in DatasetReadAsArray<br>
&nbsp;&nbsp;&nbsp; return BandReadAsArray( ds.GetRasterBand(1), xoff, yoff, xsize, ysize)<br>
&nbsp; File &quot;C:\Python25\lib\site-packages\osgeo\gdal_array.py&quot;, line 138, in BandReadAsArray<br>
&nbsp;&nbsp;&nbsp; buf_xsize, buf_ysize, datatype )<br>
&nbsp; File &quot;C:\Python25\Lib\site-packages\osgeo\gdal.py&quot;, line 760, in ReadRaster<br>
&nbsp;&nbsp;&nbsp; return _gdal.Band_ReadRaster(*args, **kwargs)<br>
MemoryError</div>
</body>
</html>