Page MenuHomePhabricator

[SEG] Rework properties of Label class + add instance information
Open, NormalPublic


Label class should be reworked. See basic draft in T28525 for orientation. This can also be done befor the LabelSetImage is reworked.

Basic Idea is to help alignment with DICOM better.

Some things are already done in mitkDICOMSegmentationPropertyHelper.h.

  • Segment Number (0062,0004) -> pixel value
  • Segment Label (0062,0005) -> label name
  • Segment Description (0062,0006) -> undefined


We should also include

  • Tracking ID (0062,0020)
  • Tracking UID (0062,0021)

These are neede/helpfull for managing instances.
And should also be explicit properties in the Label class.

Further I propose to rework the use property pathes. The are stored in the label with the preceeding Segment Sequence tag (0062,0002). The constructed path is invalid as it should be a sequence. I would propos to skip the (0062,0002) tag at the Label level an there only use the "final level tag". So e.g. only (0062,0005) instead of (0062,0002),(0062,0005) for the label name.
Open question for that change. should we at least have a backwards compatible getter. (Remark: should not be a big problem currently as we have problems with rewriting DICOM seg from nrrd anyways)

Implementation Remark (24/03/14)
Instead first design proposal values like color etc. should be members of label but still be stored in properites (which are the members of a label instance and are observed by eventguards).
Reason: 1) we ensure that mtime is always correct and the same no matter how it is accessed. 2) we are always notified about the change of a value (no matter if it happens via property or direct label class members.

Related Objects

Event Timeline

floca triaged this task as Unbreak Now! priority.Jun 3 2022, 3:52 PM
floca created this task.
floca updated the task description. (Show Details)
floca lowered the priority of this task from Unbreak Now! to Normal.Jun 3 2022, 5:15 PM

Discussed: Proposal is fine, we should do it this way.