Extract centerlines irregularities

Hi everyone,

I’m using the Extract Centerline module and I’m experiencing some irregularities in the extracted curve (see attached image). I’m not sure why this is happening. The problem becomes more evident when I use Cross-section analysis to compute the vessel area.


Is there any possibility of adjusting parameters or applying some automatic smoothing to improve the result?

Thanks a lot for your help!

Since all smoothing methods of the segment editor require input variables, smoothing cannot be automatic. Extract centerline works on a surface as it is. So you should prepare the surface beforehand. CrossSectionAnalysis is downstream, it works on the input surface and the input centerline as they are.

1 Like

It’s worth learning and thinking about how ExtractCenterline is really working: Computing Centerlines | vmtk - the Vascular Modelling Toolkit

The most important conceptual idea is

Briefly, centerlines are determined as weighted shortest paths traced between two extremal points. In order to ensure that the final lines are in fact central, the paths cannot lie anywhere in space, but are bound to run on the Voronoi diagram of the vessel model. There’s a huge literature on Voronoi diagrams, however, as a first approximation, you can consider it as the place where the centers of maximal inscribed spheres are defined. A sphere inscribed in an object is said to be maximal when there’s no other inscribed sphere that contains it. So, for every point belonging to the Voronoi diagram, there’s a sphere centered in that point that is a maximal inscribed sphere (the information relative to the radius is therefore defined everywhere on the Voronoi diagram).

The jagged centerline you get comes from the centerline deviating to a path where locally larger maximally inscribed spheres are because such paths are lower weight. Because your model is lumpy, the locally largest inscribed sphere is bouncing around along the length of this section of the model. The centerline is forced to be continuous, so the actual optimization is more complicated than just jumping to largest inscribed sphere locations, but the cost function is based on that. The usual suggestion is to find the centerline based on an aggressively smoothed version of your model. The centerline one wants is usually only minimally perturbed by smoothing the outer boundary, and it can help smooth out undesirable centerline wiggles.

1 Like