Hello all.
I’m trying to do MRI segmentation on a very thin and round structure (knee cartilage). I was wondering if there is any to create a surface on a set of polynomial curves like this:
Looking forward to hearing from you.
Mohammadreza
Hello all.
I’m trying to do MRI segmentation on a very thin and round structure (knee cartilage). I was wondering if there is any to create a surface on a set of polynomial curves like this:
Looking forward to hearing from you.
Mohammadreza
If you use a closed curve instead of an open curve, the Baffle planner module in the SlicerHeart extension can create a model out of it (not a segmentation).
Thanks a lot for your response. I just tried Baffle planner, it could be definitely helpful in my workflow. One thing about it, I need to create a surface from multiple curves (on every slice). It apparently works with one curve only, and the knee cartilage is a complex geometry:
Do you really need the curve representation? You might only need that if you are exporting to a CAD tool, and that’s a hard problem to do right.
You may be better off making a segmentation (binary labelmap) and reconstructing a surface from that. You should definitely supersample the segmentation so that the thinnest structures are several voxels thick. Then you can look at the wrapsolidify extension to get a smooth contour. Search for similar work people do with thin temporal bones.
Thanks a lot, this is a very thin structure on non-isotropic MRI. I had tried Wrap Solidify, but it was not successful. That’s why I ended up with this idea.
What is your overall goal and plan? How will you use the surface? I ask because lofting splines is a non-trivial operation whereas working with segmentations is well studies and you can make it work without developing new tools.
My application is kind of Finite Element Analysis (not exactly; cartilages contact force analyses during physical activities using musculoskeletal modeling: opensim-jam/opensim-jam-release/examples/walking/graphics/walking_contact.gif at master · clnsmith/opensim-jam · GitHub).
So I need the cartilage surfaces accurate, and smoothed. But what I have already doesn’t allow me to use the common workflows in any medical imaging segmentation software.
Thanks for your help.
Okay, cool, yes, that helps. I would definitely supersample the segmentation heavily. Like use the crop volume to get just the cartilage are and the supersample as much as your computer can manage (or get a bigger computer) and then you may be able to paint with threshold and use smoothing to get a faithful surface. (As an aside, joining curves manually draw slice-by-slice will always lead to bumpy surfaces so some kind of smoothing is needed here).
Thanks again. There were two main issues in this approach: first, thresholding doesn’t work well for these kinds of MRI as this is not the best type for cartilage segmentation; second, the cartilages in children are so thin and narrow, the Brush or Draw tools were a nightmare. Overall, this approach is so boring for 60 patients
. I’ve been thinking about doing sth like this: https://superhivemarket.com/products/curves-to-mesh
Yes, that’s a classic CAD approach. There’s some support for doing things like that in Slicer extensions (surface markups) but I haven’t used them myself. Maybe someone else can chime in. If you are willing / able to do some coding I’m sure it’s doable with vtk or some python packages.