I was just working with the “Markups To Model” extension for the first time and I saw that it only accepts markup fiducial lists as an input. Is there a reason why it does not take markup curves (open or closed) as input? I know how to convert a markups open curve into a markup fiducial list programmatically (via arrayFromMarkupsCurvePoints()), but the name “Markups to Model” implies that this is already supported anyway, directly from the UI.
A bit of context why I’m doing this: I’m currently trying to find an easy way to accurately segment bone fractures, specifically skull fractures. The way I do it right now works, but is a bit cumbersome, with roughly the following steps:
- segment the skull via thresholding
- erode that by 1mm and export that as a model
- use “Probe Volume With Model” to get a textured mesh with ImageScalars (the fracture is nicely visible in these scalars)
- place an open-curve-markup with a few control points on the mesh surface
- constrain the curve path to lie on the skull surface model, and the path should follow a shortest-distance path on the model with an “Additive” cost function that is “distance + 10*ImageScalars” - Now, the open curve follows exactly the HU intensity dip along the fracture line.
- Here is where the above part is a bit of an inconvenience… I wanna import this path into the segmentation node… to do this I have to i) resample the path with a large number of fiducials, ii) convert the curve to a fiducials list, iii) use “Markups to Model” to convert this into a model, and iv) import the model into the segmentation.
Especially point 6 would get a bit simpler, if it was possible to directly convert the open curve into a model (without resampling and/or converting to a fiducial list).
Maybe this way to segment a fracture is way too complex. If anyone has an idea how to do it better, I’d be greatful for suggestions. I can also open a new topic for this… This topic is mainly for the “Markups to Model” feature request to accept “Open Curve Markups” as well.