Please test with the latest Slicer Preview Release. If you still experience any errors then provide screen capture video or step-by-step instructions (every click you make) that we can use to reproduce what you see.
Older Slicer versions do not get any feature updates or fixes, so going back is not a solution. There are so many updates and news features and so many more coming that you really don’t want to miss those.
All you need is to provide us information that allows us to reproduce the problem.
Most likely the issue is related to the content of the saved scene, so you could send us the scene files (upload somewhere and post the link here). We can also set up a meeting with you (with screen sharing) to see what you do and what the scene contains that may cause problems.
Please report the exact steps to reproduce the issue if the workflow was contained within Slicer. Or if there was another program that generated a nrrd file with inconsistent header data please report to the maintainers of that program so the issue can be resolved.
I’m not sure where the mask is generated. But I change the segmentation matrix element dtype from float32 to int32 and it’s solved. I didn’t change the header. I think some python package generate the classification label matrix by float32 but not int32 and that is the problem.
is everyone having this issue running on Mac? I am getting the same issue and the only clue I can seem to find is that it happens when the volume and the segmentation are in different types (float/short) and the sizes are different, however on windows, slicer seems to have no problem with the same files that crash on Mac - also worth noting is the issue happens only in the brush tool, not in the erase or other paint based tools for me
This came up again recently and it seems there’s a floating point exception generated on the arm64 (apple silicon) when editing float segmentations. It wasn’t the case with intel macs. For now yes, converting to an integer format via the workaround suggested by @da5ideber sounds like a good option.
Using floating-point types for storing binary labelmaps is bad for performance and may result in additional complications. Therefore, never use float or double type for storing labelmaps and if you get data sets like this from somewhere then report it as an issue to the developers of that software.
Unfortunately, we cannot rely on other software producing valid output, so Slicer needs to detect and report this error (maybe even do an automatic conversion to a suitable integer type). We already have an issue for this: