At the end of 2014 I used ARCSI (Atmospheric and Radiometric Correction of Satellite Imagery) for the first time. ARCSI is an open software project that provides a command line tool for the atmospheric correction of Earth Observation imagery. It provides a pretty much automatic way of running 6S.
Details of the software can be found here: https://bitbucket.org/petebunting/arcsi
At tutorial can be found here: https://spectraldifferences.wordpress.com/2014/05/27/arcsi/
This post is based largely on the tutorial linked to above but I also try to pull together some of the tips I read about in the help forums here: https://groups.google.com/forum/#!forum/rsgislib-support
Set up
All of the following instructions are run on an installation of the Ubuntu 14.04 operating system.
First, download the Anaconda 3.4 python distribution: http://docs.continuum.io/anaconda/
Install the Anaconda version of Python and the conda package manager using the command line. Once the bash script has run then install ARCSI and TuiView (a fast image viewer) using conda. If a warning comes up regarding gdal then install the gdal-data package.
bash Anaconda3-2.1.0-Linux-x86_64.sh conda install -c https://conda.binstar.org/osgeo arcsi tuiview conda update rsgislib arcsi conda install -c jjhelmus gdal-data
For a successful installation I needed to change the default installation path for Anaconda from ~/anaconda3 to ~/anaconda
You should now be able to check your installation using the following command:
arcsi.py -h | less
To finalise the set up you need t point the GDAL driver path to the KEA drivers. Run the following to set up the path:
export GDAL_DRIVER_PATH=~/anaconda/gdalplugins:$GDAL_DRIVER_PATH GDAL_DATA="/home/username/anaconda/share/gdal" export GDAL_DATA
where username is the user account on the Ubuntu installation.
Run the code
When you run ARCSI, you’ll enter a command similar to the following:
arcsi.py -s ls8 -f KEA --stats -p RAD TOA SREF --aeropro NoAerosols --atmospro Tropical --aot 0.25 -o dir/to/outputs -i metadatafile_MTL.txt
To break this down a bit it first calls the arcsi.py script, passing to it the following parameters:
- Sensor (-s) – landsat 8
- Output image format (-f) – KEA
- Parameters to compute (-p) – RAD Radiance conversion, TAO Top of atmosphere, SREF surface reflectance using 6S (for the full range please consult the official documentation)
- Output directory (-o) – dir/to/outputs, into which the three computed outputs will be saved
- Information (-i) – Landsat metadata file, using the format provided by the images available through Earth Explorer
Further information of all the parameters can be found in the help forums, the arcsi help command and in the code.
If an error is reported when you first run the ARCSI command, it might be that LIBGFORTRAN.SO.3 cannot be found. This will lead to the 6S model failing. You will need to install the required files using the following command:
sudo apt-get install libgfortran3
Dealing with outputs
The best way to view the output is to start the supplied viewer using the ‘tuiview‘ command. This is an intuitive to use and very responsive viewer that handles the KEA format natively. To transform the KEA format outputs into a format readable by a wide range of GIS software, use the GDAL Translate command.
gdal_translate -of GTiff keafile.kea outputfile.tif
Thanks for the write up. You should be able to install anaconda to the default location of ~anaconda3 (or ~miniconda3) as long as the environmental variables are set to point to the correct location.
Also for the latest version of KEA (1.4.5) the GDAL driver is installed to a different location so you need to export:
GDAL_DRIVER_PATH=~/anaconda/lib/gdalplugins
Thanks for the corrections. I’ll update my software and check them out.
Great. You also shouldn’t install gdal-data from jjhelmus as this is is included with our builds of GDAL and the package will pull in a different version of GDAL than we built RSGISLib against. This has previously caused problems (see https://groups.google.com/forum/#!topic/rsgislib-support/AVSI2r4CCng).