Segmentation Folders / Groups / Layers

Hi,

Apologies in advance if this is obvious but I have tried to search for a solution for this but not found one.

I am doing a lot of full body segmentations from CT imaging, and have been using Total Segmentator to speed up the process (what a fantastic tool!)

However, I was hoping to find a way to group the segmentations into sub-groups. For example; it would be good if I could create sub-folders within my main “Segmentation” for say “Bones” vs “Organs” vs “Muscles”. This would then allow me to quickly show/hide each sub-group. I can create sub-folders inside my segmentation node but I haven’t been able to move individual segmentations into these folders (not sure if that’s a bug or user incompetence lol)

I know I can create other “Segmentation Nodes” and move segmentations over to their respective node, but when separating by different Nodes you lose the ability to do operations like Boolean joins and subtracts for anything in a different node.

I just thought this would be a great way to keep my workspace organised when dealing with ~50+ segmentation masks in a file.

Many thanks in advance for your support!

If you have hundreds of segments in the segmentation then you can use the filter bar to search and show/hide segments in bulk (if you need multi-select then you can click the green arrow button to jump to the Segmentations module). You can filter/search by name, segment status (not started, in progress, flagged, etc.).

If you want to persistently merge segments then you can try the Atlas Editor module in OpenAnatomy extension.

Just want to cross-reference this issue, which I think exists since the day we released Segment Editor:

I am surprised you can actually create folders inside segmentation nodes! The “nodes” under the segmentation node corresponding to the segments are items in a “virtual branch”, meaning that they don’t correspond to actual MRML nodes in Slicer. At the current state I’d consider robust if Slicer wouldn’t allow you to even create/move a folder under a segmentation node.

A hybrid solution could be to allow folders to handle such virtual items, so what you say could be achieved in subject hierarchy (the Data module), while keeping the already really complicated segments table (in segment editor and segmentations) the same. I mean SH is also very complicated, but as I remember we haven’t touched this topic because we didn’t find a good way to add this to the segments table, but if we can have SH support this via the existing folders, maybe it’s a good tradeoff.

Thanks Andras, appreciate the response and the two suggestions. I didn’t even know there was a filter bar as it’s hidden by default.

The filter feature works well if I jump into “segmentations” module as you suggested, switch the masks I need, and then just back to “segmentation editor” module. It’s a little bit clunky but definitely workable all things considered!

I thought it was a bit weird that there seems to be multiple options when right clicking in the “segmentation editor” module such as “Show only selected segments” and “Toggle Selected Segments Visibility” which make it sound like I can select multiple but I cannot select multiple in the “segmentation editor” module. I’m guessing this is just shared context menu between these modules. I can see why selecting multiple would cause issues for the segmentation editing tools though…

I think just adding a prefix or suffix to my names, and then multi select and hide/show would probably work for my use case. I might hard code a lookup table of sorts for all the renaming I would typically do.

Thanks again for your support here!

Thanks Csaba!

Yes I think the fact I was able to create a sub folder became a red-herring for me, because if I was able to create a sub folder I assumed I must be able to organise my segmentations using said folders lol!

Can understand that the folders would then add an extra layer of complexity to the segmentations and segmentation editor modules for arguably little benefit to most users.

Not trying to propose my own solutions to you guys, but I had a thought of having a “category” field or something added to segmentations would be useful, that you could then filter by. Eg: if all the default bone segmentations are categorised under “Bone” and then you can filter by that. Or categorised by placement in the body such as abdominal vs head etc. It quickly gets complex…