Atmospheric correction of Sentinel 2 imagery in Google Earth Engine using Py6S.
The following docker container has all dependencies to run the code in this repository
docker pull samsammurphy/ee-python3-jupyter-atmcorr:v1.2
You can also build a docker container from scratch using this Dockerfile from the gee-community repo.
This repo has the following prerequisites
To run the docker container with access to a web browser
$ docker run -i -t -p 8888:8888 samsammurphy/ee-python3-jupyter-atmcorr:v1.2
Once inside the container, authenticate Earth Engine
earthengine authenticate
then grab the source code for this repo
git clone https://github.com/samsammurphy/gee-atmcorr-S2
and run the example jupyter notebook
cd gee-atmcorr-S2/jupyer_notebooks/
jupyter-notebook sentinel2_atmospheric_correction.ipynb --ip='*' --port=8888 --allow-root
this will print out a URL that you can copy/paste into your web browser to run the code.
If the URL is http://(something_in_parentheses) then you will need to change the parentheses and its contents for localhost. A valid URL should look something like..
http://localhost:8888/?token=...
After authenticating with earthengine
and cloning the repository you can save the changes
you've made to the container with docker commit
. Docker commit will create a new image from
a running containers current state.
With the container still running, open a new terminal to get the container's ID:
docker ps
copy the ID to clipboard and run
docker commit [ID] gee-atmcorr-s2:myauth
to commit the image. Now if you run
docker images
your newly committed image should be at the top of the list.
You can now start the note book with
docker run -i -t -p 8888:8888 gee-atmcorr-s2:myauth
jupyter-notebook /gee-atmcorr-S2/jupyer_notebooks/sentinel2_atmospheric_correction.ipynb --ip='*' --port=8888 --allow-root