Extract center line from CT empty shell

Hello, I know there is a post about extracting a centerline from a solid 3D model. However, my case is more complicated: it is an empty shell with an internal cavity. What I actually want to do is extract a centerline from this cavity, save it as an .obj file, and then obtain contours of several equally spaced cross-sections perpendicular to the centerline for mathematical fitting. Could I get some suggestions on how to approach this?

I can show an example figure to illustrate what I mean. Centerline is shown as B, and the cross-section is shown as C.

ExtractCenterline can work with a model also. I’m not familiar with .obj files, but my understanding is that they get presented as models, which are surface models. The problem with your specimen is that each individual coil is connected with the previous and/or the next. That may be bad for ExtractCenterline. If you get a valid centerline, you may next check the CrossSectionAnalysis module. Again the effect of the connectivity between successive coils is yet to be seen.

I’m also wondering how I could automatically extract the cavity itself, so that everything else can proceed more easily, not that sure?

I imported the .obj file into 3D slicer, so it’s actually called model in software

This part should be easy. Just fill the cavity as a separate segment in Segment Editor using WrapSurfaceSolidify. And then use this segment to create center line.

This part you will probably have to code yourself.