I had some issues with the blanking array which is not generated correctly when multiple inlet branches are present. Consider the following example:
I have 2 inputs coming from the left and right vertebral arteries (LVA and RVA). The vmtk script using pyepad gives the following output and fails to generate/combine all centerlines correctly.
Reference: Computing Centerlines | vmtk - the Vascular Modelling Toolkit
When I use 3D slicer, I tried different variations as shown in the figure to combine all the centerline vtk files into one object. But every time, I have 2 source points defined for a single Centerline model object, the output changes and just one centerline curve gets saved instead.
So I used just 1 source point and multiple target points as shown below. In that case, the centerlines do get assembled into 1 vtk object but the blanking regions are not correctly produced at the bifurcation.
Does the vmtk centerline code need to be modified for generating the parent child relationships correctly when multiple parent vessels are present at the bifurcation?
Centerline extraction must know the blood flow direction in each section of the vessel network, therefore your network must have a forest topology (one or more trees). When we used VMTK to model cardiac PDA then we performed two centerline extractions (with switching up some inflow/outflow points) and then merge the two trees by cutting both trees in the middle of the PDA and connecting the two endpoints.
Can you explain what you mean to say by a figure possibly? Do you mean that for vasculatures having multiple inlets, the centerline trees should be extracted considering every inlet separately and then merging all of them?
Annotating this figure might help.
References Xiong, J., Sun, Q., Qian, Y., Hu, L., Tong, Z., Liu, J., & Liu, J. (2021). Effects of patent ductus arteriosus on the hemodynamics of modified Blalock-Taussig shunt based on patient-specific simulation. Frontiers in Physiology , 12 , 707128.
In my case I have 2 vertebral arteries (parent arteries) merging into the basilar. I need to quantify the parent child relationship properly to quantify the overall loss due to bifurcations correctly. I am referring to this publication, but here parts of the vasculature having just a single inlet have been used for analysis. Chnafa, C., Valen-Sendstad, K., Brina, O., Pereira, V. M., & Steinman, D. A. (2017). Improved reduced-order modelling of cerebrovascular flow distribution by accounting for arterial bifurcation pressure drops. Journal of Biomechanics, 51, 83–88.
Thank you for the suggestion!
I used that to generate separate centerline trees starting from the inlet and connecting the outlets separately, but still I lose the blanking part near the bifurcations, after merging the 2 trees.
Yes, sure I will need the 1D curvature to build a reduced order model. I shall probably use the aforementioned reference to isolate the bifurcation regions.
What modifications need to be done in the underlying vmtk code to take into account multiple inlets converging into a single daughter artery or for generating a forest of centerlines with the correct set of blanked regions?
Is there a way to generate centerlines considering multiple inlets for a fully connected Circle Of Willis? Even if I generate separate centerline trees for all inlets, the common portions (communicating arteries) should share a daughter branch between both the centerline trees. This does not happen using vmtk. It would be great if we can obtain the correct set of bifurcation vectors and bifurcation reference systems considering the blood flow direction in the patient specific centerline trees.