knossos
knossos copied to clipboard
Random discontinuities in segmentation borders
See attached image.
Borders should be completely continuous.
It’s a trade-off so we don’t have to slice between cubes. Previously there was a 2 pixel thick line at cube borders inside the selected object. This is the workaround, we thought it to be a non-issue.
What is meant by slice between cubes? I don't see any cost-effective trade off where the desired result is a 30 pixels long line of which a 5 pixels stretch is missing.
Determining if a voxel is an object border voxel at borders of cubes requires reading from 2 cubes. The current slicing only works on one cube at a time. Previously border voxels of cubes were considered as borders of the selected object so there was one closed line per cube with the lines within each cube colliding at cube borders if the object stretched several cubes. Currently object border highlighting is disabled for cube border voxels to prevent this, resulting in missing object borders at cube borders.
This explanation only accounts for a single voxel gap in a fixed 128-wide grid. Take a look at the image, the gap is more than a single voxel, and is present all over.
Okay I see what happens here. The gaps indeed begin at cube borders, but for some reason the border does not resume immediately after them. That's to say, one actually wonders what does trigger the border when the gap is done.
Borders are rendered if the neighboring voxels don’t belong to the selected object. The gap is 2 voxel wide, 1 at each cube border. This accounts for everything in your image except the straight border of the data (but this is probably explainable with this too somehow).
Okay, the reason for the straight one is that the cell continues outside the movement area but only
in that position. Looks a bit strange, but it's your decision if we should fix this behavior.