Interfaces

Interfaces are used to describe objects such as images, masks, annotations and other values used throughout Grand Challenge. They are used to define the inputs and outputs of algorithms, the display sets in a reader study, and the archive items in an archive. Consider for example an image uploaded to Grand Challenge. Without an interface, it can be any kind of image. By linking the interface Brain MRI to the image, it defines the type of image. Interfaces are thus used to give meaning to objects.

There are several interface types, which can be categorized into three types:

  1. Images, which are subdivided in
    • Images
    • Segmentations
    • Heat maps
  2. Files
  3. Values

For algorithms, the interface determines the paths where input values are provided to the algorithm and where output values are expected. For reader studies, the interfaces can be used to create display sets, custom layouts and to link default values to questions.

Segmentation masks

For interfaces of type Segmentation, a dictionary needs to be provided that lists the possible voxel values and corresponding labels for each voxel value. This dictionary is called Overlay Segments. This will be used to validate any data linked to that interface that is uploaded to Grand Challenge. If the data contains voxel values not listed in the Overlay Segments, an error will be shown and the data will not be stored in Grand Challenge. The most simple Overlay Segments for a binary mask would look like this:

[
    {"name": "Background", "visible": true, "voxel_value": 0},
    {"name": "Tissue", "visible": true, "voxel_value": 1}
]

Json data

For interfaces of type Json, a Json schema needs to be provided. Any data linked to the interface that is uploaded to Grand Challenge will be validated against that schema.