ACOLITE
ACOLITE bundles the atmospheric correction algorithms and processing software
developed at RBINS (Royal Belgian Institute of Natual Sciences) for aquatic applications of metre and decametre satellite
data, including Landsat (5/7/8) and Sentinel-2 (A/B). ACOLITE is in
particular suited for processing of turbid waters and small inland water bodies,
but can be used with reasonable success over clearer waters and land.
Acolite manual
This has been tested with Landsat and Sentinel-2.
- For
Sentinel-2, insure that you do not let MICRODEM delete the JP2 files
which it converts to Geotiff via GDAL.
The program will warn if this happened.
ACOLITE should mask clouds, even subtle ones, so you can process scenes and
get results for the cloud free portions.
This uses the default settings for ACOLITE. If you want other changes,
you should modigy the default settings file in config\defaults.txt.
Web links
Set up ACOLITE, one time:
- The simplest solution is to sideload the entire directory from an
existing installation, from an external hard drive or a zipped archive.
- If that is not possible:
- Download and uncompress ACOLITE from github. It does not have to
be installed, and does not need admin priviledges.
- In the defaults settings in config\defaults.txt, change the Geotiff
settings to true:
-
# GeoTIFF export options l1r_export_geotiff=True l2t_export_geotiff=True l2r_export_geotiff=True l2w_export_geotiff=True
|
- You are likely to have to download the LUTs for the different
satellites, from
https://github.com/acolite/acolite_luts, and place them in the correct
location
- With all lookups (which you don't need, but it's really hard to get just
what you do need), this will be about 9 GB.
Set up anaconda, one time
- Download and install anaconda. You can do this without admin priviledges
for the personal edition, but that works only for the single user.
- Open an anaconda prompt from the start menu
- Create a Python environment, by issuing the following commands, and
accepting all prompts. The first and last of the three commands are
slow (or very slow, depending on your perspective), but will show progress,
and you need to keep an eye open for the prompts.
-
conda create -n acolite -c conda-forge
python=3
conda activate acolite
conda install -c conda-forge numpy matplotlib scipy gdal pyproj
scikit-image pyhdf pyresample netcdf4 h5py
|
Limits when Running ACOLITE
- Strongly considering setting geographic limits. Full scenes take a long
time and create very large output files.
- You could reduce the resolution of the product grids from the 10 m
default, which runs much faster and with much smaller output files
ACOLITE L2W Parameters
- Pick the L2W parameters you want. They are listed in section 5 of
the manual, with references. A starting point would be:
-
tur_nechad2016,spm_nechad2016,ndci,chl_re_mishra
|
- tur, turbidity (units are NFU, Formazin Nephelometric Unit,, log 10
scale)
- spm, suspended particulate matter (units are g/m3, log 10
scale)
- chl, chlorphyl concentration (units are ug/l, log 10 scale)
- ndci, normalized difference chloroph index
- Parameters that cannot be computed with the satellite (for instance NDCI
or chlorphyl, which need the red edge band of Sentinel-2 which is not
present in Landsat) will be ignored
Running ACOLITE from MICRODEM, obviously the preferred choice
- Get data: Sentinel-2
directions and EarthExplorer
download. Unzip with the
MICRODEM tools option.
Open image
for a Sentinel-2 image; use folder directory selection. Make sure you
pick the directory whose name ends with "SAFE"
Subset
& zoom to just the area you want to process
- Imagery options
to set parameters
- Image analysis, ACOLITE
processing
- If the program cannot find it, you must identify the ACOLITE.EXE file,
which will be something like
'G:\acolite_py_win_20210802.0\acolite_py_win\dist\acolite\acolite.exe';
- The output will be placed in a new folder under
c:\mapdata\acolite. You
should keep an eye on this folder that it does not kill your hard disk.
- MICRODEM will delete the NC files, and a few other "unneeded" files, but
you will still have many GB for each scene.
Running ACOLITE from its GUI
- Start ACOLITE EXE. A shortcut will be near the top of the
directory structure for ACOLITE
- Pick the directory with the satellite image, which should have SAFE at
the end of the folder name
- Create and pick an output directory
- Enter the L2W parameters
- Enter geographic limits
- Run
Batch Running ACOLITE
- Open all the images
- Subset one to the desired area
- Use Files, Match other Maps, This coverage area
- Pick the option on the Analyze, Batch processing, ACOLITE
- Use with caution, and probably will not work with Sentinel-2
Output
- You can delete the large NC files, since you want the Geotiffs.
MICRODEM now automatically deletes them as well as several other files, and
the next version of ACOLITE will have this as an option.
- Output files will be in c:\mapdata\acolite, with a directory for each run of
the program. The name has the base name for the satellite image, which
includes date, location, and sensor, and the subset extent. You can
sort by the creation time to find the most recent one.

- Sentinenel-2 Levels
- Level-1C processing includes radiometric and geometric corrections
including ortho-rectification and spatial registration on a global
reference system with sub-pixel accuracy. This is what you download.
- The Level-2A processing includes a scene classification and an
atmospheric correction applied to Top-Of-Atmosphere (TOA) Level-1C
orthoimage products. Level-2A main output is an orthoimage
Bottom-Of-Atmosphere (BOA) corrected reflectance product. This is what
ACOLITE is producing.
- Reflectance files.. These will all be at 10 m resolution (unless you
have specfied another resolution), so the files will be huge
- rhot files from top of atmosphere reflectance
- rhos files from earth surface reflectance
- Output files named for the wavelength, rather than the band (Table 1)
- To reopen the L2W parameter maps later, open them as a DEM/grid
Table 1. Sentinel-2 bands used by ACOLITE (some wavelengths differ
slighlty from other sources)
Sentinel-2 Bands |
Central
Wavelength (nm) |
Central
Wavelength (µm) |
Resolution (m) |
Band 1 - Coastal aerosol |
443 |
0.443 |
60 |
Band 2 - Blue |
492 |
0.492 |
10 |
Band 3 - Green |
560 |
0.56 |
10 |
Band 4 - Red |
665 |
0.665 |
10 |
Band 5 - Vegetation Red Edge |
704 |
0.704 |
20 |
Band 6 - Vegetation Red Edge |
740 |
0.74 |
20 |
Band 7 - Vegetation Red Edge |
783 |
0.783 |
20 |
Band 8 - NIR |
833 |
0.833 |
10 |
Band 8A - NIR |
865 |
0.865 |
20 |
Band 9 - Water vapour |
945 |
0.945 |
60 |
Band 10 - SWIR - Cirrus |
1373 |
1.373 |
60 |
Band 11 - SWIR |
1614 |
1.614 |
20 |
Band 12 - SWIR |
2202 |
2.202 |
20 |
ACOLITE Errors and Likely causes
- Key error: 'B1': you deleted the JP2 files. If they are not
backed up in the the recycle bin, you will have to redownload.
- Ignore these errors:
- PROJ: utm: Invalid latitude
- RuntimeWarning: mean of empty slice
Debugging ACOLITE
- Output goes in the folder listed above
- There is a log named "acolite_run_20211108_150946_log_file.txt"which
will record the run
- Check that to see what problems are recorded
last revised 10/25/2021