I was trying to implement a dicomseg file that can contain both segmentation masks and their corresponding texts. I can compute the exact location of all the texts. For instance, I have L1 and L2 segmented, and I want L1 and L2 to appear in front of each vertebra when I open the dicomseg file in mimics.
I have tried the overlay plane module, but it seems that the slicer does not support it. Do you have any suggestions for that?
I have attached what I want below. And I like this happens for every slice.
A dicom seg instance will not support specifying the text display in any standard way. I don’t know if anyone here has experience with mimics to know if there’s a kind of file you could generate to control that behavior.
Can you please explain your workflow so that we know why you want text burnt into your image? This should not be necessary if you use the right tools in the right workflow.
We are developing a model for our customers and their PACS (visage) can only view dicomseg so I want to embed this text into the dicomseg. So when they open the dicomseg file, they can see the texts.
I don’t understand, what kind of model are you developing?
This does not seem correct. I suggest exporting DICOM SC (Secondary Capture) images, as historically that is the modality to store annotated screenshots. Any PACS must support that, it is part of DICOM for decades.
“The model” is an AI model for segmenting some stuff.
I tried secondary capture; however, if it is text, it won’t show up directly in the image like in my screenshot.
If it is a picture, I am unsure how it will appear in the visage, but in the 3D slicer, it won’t work. Moreover, a screenshot does not work in my case.
If something else comes to your mind, please share it. Thanks again for your help.
I think OP is misunderstanding or conflating dicom seg and GSPS-type presentation state objects.
DICOM seg and GSPS are both separate dicom files that reference some source dicom file. That source file contains the source image voxel information. A DICOM seg object references a source file and defines which voxels of it correspond to specific structures of interest. So the “pixel information” of a DICOM seg object is often a pixel mask, were 0 = “not the structure of interest” and 1 = “the structure of interest”. In this scenario, there is no concept in that seg file “pixel data” to hold a label, circle, or other sort of annotation. The labels that tell you what the structure is (“L1 vertebral body”, for example) are in the dicom seg header metadata, not the pixel data.
Similarly GSPS is a dicom file that references a source image file. In GSPS you can define text annotations, arrows, etc, and define which source file they reference, and precisely where on the source file they are to be drawn.
So you can’t solve this problem only by considering the dicom seg object. But you can create GSPS or similar objects along with the seg objects. The seg will define where the structure is, the the presentation state will define what text overlays to apply and where - you can use the information from the seg object to determine this. Both are meaningless without the referent DICOM image file, but together might address the issue.