CoastSat
Este proyecto es un fork de CoastSat https://github.com/kvos/CoastSat
Instalación
Crear el entorno
Para crear el entorno virtual hay que ejecutar con conda, dentro de la carpeta del proyecto, el comando:
conda env create -f environment.yml -n coastsat
Después de crear el entorno hay que activarlo con el comando:
conda activate coastsat
Con el entorno activado, también dentro de la carpeta del proyecto, hay que instalar las dependencias con pip con el comando:
python -m pip install -r requirements.txt
Crear el entorno (cluster)
Para crear el entorno virtual hay que ejecutar con conda, dentro de la carpeta del proyecto, el comando:
conda create -n coastsat
Después de crear el entorno hay que activarlo con el comando:
conda activate coastsat
Con el entorno activado instalar GDAL
conda install gdal==2.3.3
Con el entorno activado, también dentro de la carpeta del proyecto, hay que instalar las dependencias con pip con el comando:
python -m pip install -r requirements.txt
Activar API Google Earth Engine
Para poder acceder a Google Earth Engine hay que pedir acceso https://signup.earthengine.google.com/.
Cuando ya se tenga el acceso, con el entorno de coastsat activado hay que ejecutar:
earthengine authenticate
Esto abrirá una ventana de navegadore pidiendo las credenciales, devolverá un código que hay que pegar en la terminal.
Ejecución
Inputs
Site
Dentro de la carpeta data crear una carpeta con un nombre de site, por ejemplo "Prueba".
Site kml
Crear un kml con el mismo nombre que el site "Prueba.kml".
Dentro de la carpeta Example/Template hay un kml de ejemplo llamado Example.kml
Linea de costa csv
Crear un fichero csv con las columnas x,y (longitud,latitud) en el sistema de coordenadas que se haya decidido, con el nombre del site + _shoreline.csv, "Prueba_shoreline.csv".
Dentro de la carpeta Example/Template hay un csv de ejemplo llamado Example_shoreline.csv
Perfiles
Capa shp con los perfiles en el sistema de coordenadas que se haya decidido, con el nombre Perfiles.shp.
Dentro de la carpeta Example/Template hay un shp de ejemplo llamado Perfiles.zip
Argumentos
Site
Argumento --site, nombre del site entre comillas, ejemplo: --site "Prueba"
Start
Argumento --start, fecha de inicio para la descarga de imágenes, ejmeplo: --start "2020-01-01"
End
Argumento --end, fecha de fin para la descarga de imágenes, ejemplo: --end "2020-01-01"
Mode
Argumento --mode, tipo de ejecución, valor númerico, los tipos de ejecución son:
1-Coastal detection: Hace la descarga y ejecuta hasta la detección de costa.
2-Slope: Con la detección de costa ya realizada, ejecuta el cálculo de pendiente.
3-Full: Hace la ejecución completa. Ejemplo: --mode 1
Slope
Argumento --slope, opcional, si no aparece, realiza el cálculo de pendiente, si se introduce valor se calcula con el valor indicado, ejemplo: --slope 0.1
Ejemplo
Con el entorno activado y dentro de la carpeta del proyecto:
python -m processor.py --site "Prueba" --start "2020-01-01" --end "2020-01-10" --mode 3 --slope 0.01
El ejemplo anterior hará una ejecución completa del site prueba, entre el uno de enero de 2020 hasta el diez de enero de 2020 y con una pendiente por defecto de 0.01.
En la terminal se puede ejecutar, con el entorno coastsat activado, el siiguiente comando que devuelve una ayuda con los argumentos.
python processor.py -h
usage: processor.py [-h] [-S SITE] [-s START] [-e END] [-m MODE]
[--slope SLOPE]
optional arguments:
-h, --help show this help message and exit
-S SITE, --site SITE Sitename (string)
-s START, --start START
Start date (yyyy-mm-dd) (string)
-e END, --end END End date (yyyy-mm-dd) (string)
-m MODE, --mode MODE 1-Coast Detection, 2-Slope, 3-Full (integer)
--slope SLOPE Default slope value (double)
Credits
License
This software use:
- Conda - BSD-3 license