Page MenuHomePhabricator

[Multilabel Segmentation] Definition and usage of masking and maskstamping
Open, NormalPublic


Several classes and functions can be found that have something to do with image masking and maskstamping:

mitk::LabelSetImage::MaskStamp, which is used inside

  • QmitkMaskStampWidget::OnStamp
  • QmitkConvertMaskToLabelAction::Run

These two classes in turn are used inside:
QmitkMaskStampWidget --> QmitkImageMaskingWidget
QmitkConvertMaskToLabelAction --> contextMenuAction for nodeDescriptorName="ImageMask"

The QmitkImageMaskingWidget exists two times and is used inside

  • QmitkSegmentationUtilitiesView
  • QmitkMultiLabelSegmentationUtilitiesView

It corresponds to the ImageMasking-toolbox which allows to "cut" parts of an image.
However, the QmitkMaskStampWidget is actually not visible / usable. It seems to be added to the "Labels" tab, but this label tab is empty (see T27809: [Segmentation Utilities] "Labels" tabs in operations of Utilities view is empty).

Several questions arise here:

  1. Did anyone ever use the QmitkMaskStampWidget?
  2. What exactly is an "ImageMask" and how to generate one?
    • It seems as if the QmitkConvertMaskToLabelAction is only available for binary images. If this is an image mask, how do we handle this in the future - do we keep binary images?
  3. What is the QmitkConvertMaskToLabelAction actually supposed to do? I tried to play around with it and it does not seem to produce reasonable results - just adds an incorrect label to the working image / selected segmentation.