Sign inSign up

ecognition/win_cle

By ecognition

•Updated over 1 year ago

Trimble eCognition Command-line engine for windows (based on WS2019 image)

Image
0

1.1K

ecognition/win_cle repository overview

⁠Trimble eCognition Command-line Engine for Windows

Trimble eCognition software is used by GIS professionals, remote sensing experts & data scientists to automate geospatial data analytics. Users can design feature extraction solutions to transform geo-data into geo-information.

The Windows version of Docker image for Trimble eCognition command-line engine. This image is based on windows server 2019 OS image. You will need a valid Trimble eCognition Server license to run it.

⁠Prerequisite

To use the eCognition command-line engine requires a valid eCognition Server license and the latest eCognition License Server⁠.

Note: If License Server is running on a different machine than container, you will need to make sure license server ports (default: 27000-27009) and vendor daemon (random by default) are open. You can set those ports via license server admin console using your favorite browser: http://[LicenseServer IP address]:8090 (or http://localhost:8090⁠ from within License Server machine). in Administration tab you can set those in "Vendor Daemon Configuration" and "Server Configuration" sections.

⁠Run

To use the container you can run it interactively and explore DIACmdEngine.exe:

docker pull ecognition/win_cle:10.4.0
docker run -it -e “LM_LICENSE_FILE=@mylicenseIPaddress” -v C:\path\to\mydata:c:\mnt ecognition/win_cle:10.4.0

Once inside terminal session you can access DIACmdEngine.exe directly and invoke it.

To run the container and the job in it, you can combine 2 command-lines together:

docker run -e “LM_LICENSE_FILE=@mylicenseIPaddress” -v C:\path\to\mydata:c:\mnt ecognition/win_cle:10.4.0 DIACmdEngine.exe image-dir=c:\mnt\data import-connector=myimportconnector import-connector-file=c:\mnt\myimportconnector.xml ruleset=c:\mnt\myruleset.dcp output-dir=c:\mnt

Note: It is also recommended to give at least 4GB of RAM for container as it might be resource intensive (docker -m 4GB .. will do it)

⁠Configuration via environment

While running container any configuration setting (found in config/eCognition.cfg) can be set via environment variable use the following notation: ECOG_CONFIG_{config-group}="key1=value1;key2=value2;.."

for example, to set log file location and trace level (this overrides appropriate <logging> values in eCognition.cfg):

docker run -it -e ECOG_CONFIG_logging="log path=C:\mnt\logs;trace level=Detailed" ...

⁠Command-line tools for managing eCognition GRID

This image includes tools for eCognition GRID:

DIAMkWksp - command-line tool for creating workspace (.dpj), that can be submitted for processing to eCognition Job Scheduler⁠

DIACmdClient - command-line tool for submitting / monitoring workspace, it interacts with eCognition Job Scheduler⁠

⁠Command-line engine

Docker container contains DIACmdEngine.exe which is a eCognition engine command-line interface. It has following command-line parameters:

- analyze image file:
    DIACmdEngine image=path1 [image=pathN..] [thematic=pathN] ruleset=path [options]
- analyze image imported using connector:
    DIACmdEngine image-dir=path import-connector=name [import-connector-file=path] ruleset=path [options]

- options:
    param:nameN=valueN - parameter to the rule set, where nameN is name of rule set variable and valueN is the value of the parameter. There can be arbitrary amount of params.
    array-param:nameN=value1,value2,..,valueN - array parameter to the rule set, where nameN is name of a rule set array and valueN is the comma-separated value list, for example: array-param:myArray=0,90,180,270. There can be arbitrary amount of array-params.
    output-dir=path              - output diretory for export files
    --save-dpr                        - save project file
    --map path1=path2        - local drive - network path mapping
    --log-file=path                 - log file path (if not specified, default log file is written based on path in eCognition.cfg)
    --pause                             - pause application after done

Return value: DIACmdEngine.exe returns 0 on success, -1 otherwise. This can be used by scripts invoking executable to check job success.

The command-line engine can be run in 2 different ways depending on the set up of the Trimble eCognition Workspace: For example, 1) to simple analysis on a single image:

DIACmdEngine.exe image=c:\mnt\data\myimage.tif thematic=c:\mnt\myvector.shp ruleset=c:\mnt\myruleset.dcp output-dir=c:\mnt\results

For example, 2) to run analysis on image(s) imported via predefined import connector:

DIACmdEngine.exe image-dir=c:\mnt\data import-connector="myimportconnector" import-connector-file=c:\mnt\myimportconnector .xml ruleset=c:\mnt\myruleset.dcp output-dir=c:\mnt\results

if '''import-connector'' parameter defers to predefined import connector (like "Generic raster - one file per scene"), then '''import-connector-file''' parameter can be omitted.

Tag summary

Content type

Image

Digest

sha256:751aeb90b…

Size

8 GB

Last updated

over 1 year ago

docker pull ecognition/win_cle:10.5.0