Skip to content

Commit

Permalink
ENH: change setting of TrackingIdentifier
Browse files Browse the repository at this point in the history
Use SegmentationType CodeMeaning and SegmentDescription. This help better identify
segments in the situatins where the same finding is segmented by different tools/readers.
  • Loading branch information
fedorov committed Nov 13, 2018
1 parent 83b510c commit 93c5d6e
Showing 1 changed file with 10 additions and 0 deletions.
10 changes: 10 additions & 0 deletions labs/pyradiomics-dcm/pyradiomics-dcm.py
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,12 @@ def getTrackingUniqueIdentifier(self, segmentNumber):
except BaseException:
return None

def getSegmentDescription(self, segmentNumber):
try:
return self.dcm.SegmentSequence[segmentNumber].SegmentDescription
except BaseException:
return None

def getSegmentAnatomicLocationCode(self, segmentNumber):
try:
return self.dcm.SegmentSequence[segmentNumber].AnatomicRegionSequence[0]
Expand Down Expand Up @@ -508,6 +514,10 @@ def main():
m.m["Measurements"][-1]["TrackingIdentifier"] = segTrackingIdentifier
else:
m.m["Measurements"][-1]["TrackingIdentifier"] = segmentationType.CodeMeaning
segmentDescription = segmentationMetadataAccessor.getSegmentDescription(int(segmentNumber)-1)
# SegmentDescription is Type 3, and can be missing
if segmentDescription is not None:
m.m["Measurements"][-1]["TrackingIdentifier"] = segmentationType.CodeMeaning+" - "+segmentDescription

if segTrackingUniqueIdentifier:
m.m["Measurements"][-1]["TrackingUniqueIdentifier"] = segTrackingUniqueIdentifier
Expand Down

0 comments on commit 93c5d6e

Please sign in to comment.