Hi 3D Slicer community! My current project has an image stack of 23 images with features that need to be converted into 3D models. Unfortunately, the image spacing is quite high relative, so the side and the top views appear choppy when creating segmentations.
Is there a way to change the filling from extrusions to splines? Thanks.
It is recommended to resample highly anisotropic volumes before segmentation. See more details here: Segment editor — 3D Slicer documentation
Thanks! The process seems to cause a lot of lag in my computer. Is there a way to reduce this?
Resampling to have higher resolution can indeed hugely increase its memory usage. Spacing scale 0.5 increases memory need (and processing time) by a factor of 8x, and spacing scale of 0.2 increases it by 125x.
To compensate for this, crop image to the minimum necessary size. That’s why it is always recommended to use Crop volume module to resample&crop the image at the same time. You can also experiment with different spacing scale factors to find one that allows segmentation with sufficient details and your computer can still handle with reasonable speed. If you regularly need to edit high-resolution segmentations then it may worth investing into adding more physical RAM to your computer and high CPU frequency (having more CPU cores does not usually help much, because most image segmentation algorithms are not parallelized).
Does this mean they are inherently single-threaded, or with some development effort can they be parallelized?
Simple algorithms can be parallelized easily (they are typically already implemented as multi-threaded), while other algorithms need lots of new ideas to efficiently utilize multiple cores.
It depends on many factors what the performance bottleneck is in a processing workflow. The best is to do some performance profiling to see where most of the time is spent and then focus on making that very specific part of the software faster. If you identify any performance bottlenecks then let us know and we can brainstorm on possible solutions.
I’ve tried the processing on a couple slices, after changing the oversampling ratio by 2.00 for both segmentation and the volume stack. Unfortunately, I’m still not getting anything different at least in the 3d-rendering that is. Is there an order that I have to perform the oversampling in “specify geometry”? I’m also getting the message, “Failed to determine labelmap geometry from segmentation node” at the specify geometry window, not sure if that is related.
If the segmentation node is still empty then it cannot be used as a basis for specifying geometry. You can choose any volume or you can choose a model or ROI and specify spacing.
If you already have non-empty segments then oversampling should work and you need to apply smoothing after increasing oversampling as described in the documentation.