User Manual
In this manual the general functionality of EODIE is described. In the end you can also find a usage example Small example (no external data needed). For more examples with explanations, please check out Tutorial.
Inputs
The following sections describe EODIEs command line arguments and the configuration files. All of the following only matters when using EODIE as command line tool.
Command line arguments
The following parameters can be used in the commandline: Note that some parameters have options, some have defaults and some are optional, all flags are optional. See Necessary inputs for inputs that need to be given
--platform
--rasterdir
--rasterfile
--rasterfile
instead of --rasterdir
. Cannot be used together with --rasterdir
.--vector
--out
./results
--id
--vector
.--id id
--input_type
--gpkg_layer
--epsg_for_csv
--statistics_out
--geotiff_out
--array_out
--statistics
count
(always included)--statistics sum median percentile_10 percentile_90
--index
--index ndvi evi2 B04 B8A
--start
20160101
--end
--keep_splitted
--exclude_border
--external_cloudmask
--exclude_splitbytile
--verbose
--test
Configuration file
Some adjustments only need to be set once by the user. These are available in user_config.yml. The most important setting in the userconfig is the path to the tile shapefile (tileshp) and the fieldname where the tilename is stored (fieldname). The tileshapefile is a shapefile containing the units, also called tiles, that data is provided for each platform.
[TODO: image of Sentinel-2 tiles over Finland]
When processing data that is not tiled, or no tile shapefile is provided, this parameter can be left empty.
Other settings that can be adjusted in the configuration file are:
maxcloudcover
maxcloudcover: 99
excludes all files in the directory that have > 99 % cloudcover over the whole tile according to metadata.pixelsize
pixelsize : 10
will use bands that are available in 10 m as is and resample bands that are only available in larger pixelsizes to 10m before extracting statistics/array/geotiffresampling method
resampling_method: 'bilinear'
will use bilinear resampling for all necessary resampling of the rasterdataEODIE also includes other configuration files called config_x.yml with x being some platform name or tif. These configuration files do not need to be touched or changed in general. One exception to this is for example a ‘red edge’ band should be used in indices instead of the nir band, that could be changed in the platform specific configuration files. See more about this and about the possibility of extending EODIE to work with other platforms in ref:platform_spec.
Necessary inputs
--platform --rasterdir/--rasterfile --vector --out --id
and at least one of --statistics_out/--geotiff_out/--array_out
--index
also needs to be given, unless --platform tif
Outputs
A logfile: YYYYMMDD-hhmmss.log
--statistics_out
One csv per tile, band/vegetation index and date with polygon identifiers in the first column and statistics is the following columns.
--array_out
One pickeled numpy array per tile, band/vegetation and date with all polygons
--geotiff_out
One geotiff with georeferenced raster per tile, band/vegetation index and polygon
Usage of external cloudmask
If a cloudmask for each file to be processed is available from an external source, make sure the cloudmask fulfills the following requirements:
date (YYYYMMDD, eg 20210603) and tilename (NNCCC , eg 34VFN) in end of filenames: xxx_date_tile.xx
supported raster file format (.tif, .jp2, and other formats supported by rasterio)
binary rastervalues (1,0; with 1 representing clouds/invalid pixels)
pixelsize == output pixelsize (given in config_x.yml)
The latter two criteria can be achieved by using the auxiliary script create_binary_cloudmask.py (but be aware of issue https://gitlab.com/eetun-tiimi/EODIE/-/issues/62)