APEER Release Notes | August 2019

22.8.2019
Release Notes

Hey peers,

welcome to this month's release notes. We have been working on some big features for you.

  • New Workflow Editor
  • Live Log Outputs From Running Modules

New Workflow Editor

We completely redesigned our workflow editor which includes some major improvements for your productivity. Apart from a design and UI revamp we also added new functionalities.

File Inputs

We now support workflows running on any number of files including list of files and files requested by modules later on in your workflow. We have two modules which you can use to provide files to your workflow. They are called Workflow Input and Module Input.

Modules for file inputs
Our two new modules for file inputs

The workflow input module is always the first module in your workflow and provides the input data which your workflow is processing. The module input module serves as a file provider for static files to your workflow - like a configuration file or a network file for a CNN based module. Let's see how that works in practice:

workflow input module with no inputs defined yet
Workflow input module with no inputs defined yet

When creating a new workflow you will always start with the workflow input module. From scratch no input is defined. Depending on what type of input your module needs you will have two options: single file input (round selector) or list of files input (square selector). In the above example the Brain MRI Abnormality Segmentation module requires a single file as input, so we connect it with the round connector. You can now select a single file to be processed or a set of files starting a batch run processing all those files in parallel.

Workflow input module with a single file selected
Workflow input module with a single file selected
Workflow input module with many files selected
Workflow input module with many files selected - creating a batch run

Some modules require a list of files as input. In the following example we'll look at the 3D Segmentation Trainer which accepts a set of training images. Since we want all of those files to go into a single execution of the workflow and not create a batch run we use the square connector to provide all selected files at once as a list.

Workflow input module with a list of 16 files selected
Workflow input module with a list of 16 files selected

As you can see the 3D Segmentation Trainer requires another set of input files namely the labels for the training. These can be provided through the module input module as shown below. You actually don't need to select the input module yourself, just click the red square, select your inputs and it will pop up automatically.

Module input module with a list of 16 files selected
Module input module with a list of 16 files selected

Another use case for the module input module would be a batch run where you want to process a large amount of files in parallel but all runs inside your batch require the same model file. The Segmentation Mask Generator is such an example. The following workflow will create a batch run but all runs inside the batch will receive the same model file.

Module input module with a single file selected which will be the same for all runs inside the batch
Module input module with a single file selected which will be the same for all runs inside the batch

Usability

We added a lot of usability features, one of which is the keyboard navigation. You can add modules using "+", select modules in the list using the arrow keys, save the workflow using "ctrl + s", etc. For a full list of supported commands check out the little legend we added at the bottom.

New little helper at the bottom of the workflow editor
New little helper at the bottom of the workflow editor

Parameters are now collapsed by default and can be extended when needed. For setting the parameters as static values you just select the little parameter icon.

Extended parametes
Extended parametes
Parameter dialog
Parameter dialog

When missing some required setting like selecting an input we will provide you with a hint and error message so you can easily fix it.

Hint how to get to a valid state
Hint how to get to a valid state

Live Log Outputs From Running Modules

Let's imaging you are running a CNN training but that takes a few hours and you are not sure how the training progresses? Now you can watch your training live using the new live logs feature.

Running module with the options to watch for log output live
Running module with the options to watch for log output live

When a module has started you can now select the live logs options which will render any new outputs written by your module in live.

Module is still running and you can already see the logs
Module is still running and you can already see the logs
Thomas Irmer

Software Developer

Related Posts

Stay in touch with our newsletter!

Thank you! Your submission has been received!

Oops! Something went wrong while submitting the form