BioMedIA / MIRTK

The Medical Image Registration ToolKit (MIRTK), the successor of the IRTK, contains common CMake build configuration files, core libraries, and basic command-line tools. Extension packages are hosted by the MIRTK GitHub group at
https://github.com/MIRTK
Apache License 2.0
186 stars 71 forks source link

WIP: Self-intersection with divider after merge-surfaces #752

Closed schuhschuh closed 3 years ago

schuhschuh commented 3 years ago

This should fix self-intersections after insertion of divider. However, in the particular case of the dHCP release 3 (CC00152AN04-65700), the actual appropriate fix would be to patch subdivide-brain-image to do a better job at filling in "holes" between the hemispheres in the Draw-EM segmentation. Alternatively, could try and identify the surface patch that intersects with the interior of the divider polygon and remove the hole interior surface, but that may be a bit more tricky.

The change here simply joins the surface with the intersecting divider. This should preserve topology. After doing so, there were still a few self-intersections probably due to very small triangles, but these might be resolved by a subsequent smoothing.

Screen Shot 2020-11-23 at 2 05 50 AM

CC @jcupitt @amakropoulos

schuhschuh commented 3 years ago

This change can alter topology. It would be better to look for a different fix of this issue, such as by patching subdivide-brain-image rather. Also, there could be some remaining issues with vtkIntersectionPolyDataFilter (cf. https://gitlab.kitware.com/vtk/vtk/-/issues/16990).

schuhschuh commented 3 years ago

Added -fill-wm-holes to subdivide-brain instead (cf. #757).