Thank you.
I’m using a similar method for “manual” georeferencing I found on stackoverflow, I was just wondering why sen2cor output does not provide it automatically.
Here’s the code I use:
def readFile(filename):
filehandle = gdal.Open(filename)
band1 = filehandle.GetRasterBand(1)
geotransform = filehandle.GetGeoTransform()
geoproj = filehandle.GetProjection()
band1data = band1.ReadAsArray()
xsize = filehandle.RasterXSize
ysize = filehandle.RasterYSize
return xsize,ysize,geotransform,geoproj,band1data
def writeFile(filename,geotransform,geoprojection,data):
(x,y) = data.shape
format = "GTiff"
driver = gdal.GetDriverByName(format)
dst_datatype = 2 #gdal.GDT_Byte
dst_ds = driver.Create(filename,y,x,1,dst_datatype)
dst_ds.GetRasterBand(1).WriteArray(data)
dst_ds.SetGeoTransform(geotransform)
dst_ds.SetProjection(geoprojection)
return 1
Usage:
(x,y,transform,proj,data) = readFile(filenameIn)
writeFile(filenameOut,transform,proj,data)