Build Object Height Model (OHM) AWS Step Function
This step function postprocessing-build-ohm-step-function orchestrates the tiling, difference calculation, uploading and configuration of the Object Height Model (OHM). This layer is the difference between a DSM and DTM layer. These layers need to have the same dimensions. The function handles tiling based on a tile size. Uploading can be switched off if necessary.
Step functions
The step functions that are used within this step function:
- A PostprocessingRasterOptimization step function that generates the COG dataset.
Lambdas
The lambdas orchestrated by the Step function are the following:
- A UtilityGetPrefixFunction to generate the prefix used to find the input files and where data will be stored in S3.
- A UtilityTaskController generates payloads with input Parameters for the next Lambda Tasks.
- A PostprocessingBuildPropertiesFunction function to build properties files necessary for Geoserver coverage configuration.
./datastore.properties # contains database schema information
./indexer.properties # contains coverage information (EPSG)
./timeregex.properties # contains regex string to determine date
./footprint.properties # contains trigger for COG hosting
- A PostprocessingGetInstanceRequirements function to estimate EC2 resource requirements.
- A PostprocessingPublishRaster function to generate the publication information for Serverless infrastructure.
- A PostprocessingRunRasterCalc function to generate the publication information for Serverless infrastructure.
- A PostprocessingBuildRaster function call the Geoserver REST API to fullfill the ImageMosaic plugin generation. After this step the imagery should be visible online through Geoserver UI and front end WebApp.
- A PostprocessingBuildCache function calls the GeoWebCache API to start creating TileLayers and pre-seeding.
Invocation description
The following keys are required:
job_idstr - job id referenceclient_tagstr - client tag to determine costing
The following keys are optional:
legacybool - prepare data for Geoserver of Serverless infrastructure, defaults to false.tilesizeinteger - pixel dimension size of output tiles. Defaults to 5000.uploadbool - allow step function to upload to either infrastructure, defaults to true.optionsobject - object, define all options or it will default to default options.coloursarray - html colour codes. Defaults to Geoserver colour code set.nodatanumber - overwriting the nodata value. Defaults to tile nodata.si_unitstr - measure unit used in the legend. Defaults to "m" for meters.
{
"job_id": "n8732rh872g-1337-239hd923hd934hd9q3h438jf43932qd",
"client_tag": "Some Client",
"tilesize": 5000,
"upload": true,
"legacy": false
}