Preprocess using the Fmask algorithm & Balance Constrast Enhance Technique LANDSAT 8 Geotiffs for spectral analysis
These scripts are used to preprocess and contrast enhance LANDSAT 8 OLI & TIRS geotiffs using the cloud, snow and shadow Fmask algorithm (Zhu, Z., Wang, S. and Woodcock, C.E., 2015) and the BCET algorithm (Liu, J.G., 1991).
With a user-specified region of interest (ROI) within the Landsat scene, each Landsat bands 1-7 will have histogram shapes conserved but with an adjusted range of 0-255 with mean intensity of 110. Doing so enables the normalised comparison of spectral signatures within the BCETed scene across each band.
- Generate a masked set of tiffs to remove areas of nodata (useful with oblique LANDSAT tiles)
- Cloud, snow and shadow masks using Fmask (http://pythonfmask.org/en/latest/)
- Produce band-specfic ROI BCET normalised geotiffs (http://dx.doi.org/10.1080/01431169108955241)
Preprossing scripts require the follows scripts and their dependencies in the path:
The GDAL library.
Including ...
From Fmask ...
- fmask_usgsLandsatMakeAnglesImage.py
- fmask_usgsLandsatSaturationMask.py
- fmask_usgsLandsatStacked.py
- fmask_usgsLandsatTOA.py
Python scripts require the following and their dependencies ...
- python 2.7.11+
- numpy
- matplotlib
- RIOS
- georasters 0.57
- Download a LANDSAT scene tifs and metadata and extract into LANDSAT8 directory (like this)
- Set output, name and ROI (UTM coordinates) in config
- Preprocess and run BCET algorithm on geotiffs with bcet_batch.sh