# Import the espatools module for raster I/O
import espatools
# Use matplotlib for simple plotting
import matplotlib.pyplot as plt
xmlfile='/Users/bane/Documents/OpenGeoVis/Data/data-testing/Readers/Landsat/Golden/LC080340322018062701T1-SC20180922164434/LC08_L1TP_034032_20180627_20180704_01_T1.xml'
reader = espatools.RasterSetReader(filename=xmlfile)
raster = reader.read()#cast=True, allowed=['sr_aerosol', 'sr_band7'])
bands = raster.bands
bands
{'pixel_qa': <espatools.raster.Band at 0x7fe690714080>, 'radsat_qa': <espatools.raster.Band at 0x7fe690714748>, 'sr_band1': <espatools.raster.Band at 0x7fe690714be0>, 'sr_band2': <espatools.raster.Band at 0x7fe690714fd0>, 'sr_band3': <espatools.raster.Band at 0x7fe690716438>, 'sr_band4': <espatools.raster.Band at 0x7fe690716898>, 'sr_band5': <espatools.raster.Band at 0x7fe690716cf8>, 'sr_band6': <espatools.raster.Band at 0x7fe690719160>, 'sr_band7': <espatools.raster.Band at 0x7fe6907195c0>, 'sr_aerosol': <espatools.raster.Band at 0x7fe690719ac8>}
for n,b in bands.items():
print(b.data.dtype)
uint16 uint16 int32 int32 int32 int32 int32 int32 int32 uint8
b = bands.get('sr_band3')
plt.figure(figsize=(10,10))
plt.imshow(b.data, vmin=0., vmax=2000)
plt.title(b.name)
plt.savefig('aer.png')
plt.show()
color = raster.get_rgb('false_a')
plt.figure(figsize=(10,10))
plt.imshow(color)
plt.title('RGB Color')
plt.savefig('RGB.png')
plt.show()
raster.global_metadata.satellite
'LANDSAT_8'
raster.nsamps
7791
raster.nlines
7911
color.shape
(7911, 7791, 3)
raster.global_metadata.projection_information.corner_point[0].x
318600.0
b.valid_range.min
-2000.0
b.fill_value
-9999
color.shape
(7911, 7791, 3)