Feature: Ability to specify a list with work items. Each work item specifies (a) an image that should be segmented, (b) (if existant) a pre segmentation (that should be reviewed/checked/refined), (c) confirmation criteria and (d) other relevant config settings (e.g. like the preset label list or custom label name list).
Key feature ideas:
- Format: json or xml
- css like behavior. Properties/Settings (like the preset label list, confirmation criteria) can be specified for the whole list or per item. Definition in Items overrules global definition.
TODO further specification
IMPORTANT: For the actual specification, please see comments further down: https://phabricator.mitk.org/T29160#239621. The example immediately below named "Proposal" has **not** been implemented as-is!
```lang=json, lines=1, name="Proposal", COUNTEREXAMPLE
{
"Version": 1,
"UID": "abcde", //unique id for the worklist
"Name": "Study XY Worklist #1", //Display name / human readable name of work list
"Segmentation.labelSetPreset": "./labels.preset",
"Segmentation.customLabelNames": "./optionalLabelNames.json",
"ConfirmationRules": [
{
"RuleID": "NoEmptyLabel",
"IncludeOptionalLabels": 'True'
"LabelScopeProperty": { //rule applies to labels that have properties that fit the following specification
"Prop1": "Propvalue"
}
},
{
"RuleID": "NoUnlabeledPixels"
}
]
"Items": [
{
"UID": "item1", //unique id for the worklist item
"Name": "Optional item name", //Display name / human readable name of work list item. optional
"InputPath": "./item1/image.nrrd",
"SegmentationPath": "./item1/preseg.nrrd",
"SegmentationNodeName": "segmentation", //option to specify the name of the node that will contain the segmentation (either preloaded or generated)
"ResultPath": "./output/item1/result.nrrd"
},
{
"UID": "item2", //unique id for the worklist item
"Name": "Optional item name", //Display name / human readable name of work list item. optional
"InputPath": "./item2/image.nrrd",
"SegmentationPath": "./item2/preseg.nrrd",
"Segmentation.labelSetPreset": "./item2/labels.preset"
},
{
"UID": "item3", //unique id for the worklist item
"Name": "Optional item name", //Display name / human readable name of work list item. optional
"ScenePath": "./item3/item3.mitkscene",
"SegmentationNodeName": "segmentation", //option to specify the name of the node that will contain the segmentation (either preloaded or generated) also helps in context of scene loading to know which node should be used for the annotation.
"ResultPath": "./output/item3/result.nrrd",
"Segmentation.labelSetPreset": "./item3/labels.preset"
}
]
}
```