Abstract
Despite its twodimensional nature, Xray angiography (XRA) has served as the gold standard imaging technique in the interventional cardiology for over five decades. Accordingly, demands for tools that could increase efficiency of the XRA procedure for the quantitative analysis of coronary arteries (CA) are constantly increasing. The aim of this study was to propose a novel procedure for threedimensional modeling of CA from uncalibrated XRA projections. A comprehensive mathematical model of the image formation was developed and used with a robust genetic algorithm optimizer to determine the calibration parameters across XRA views. The frames correspondences between XRA acquisitions were found using a partialmatching approach. Using the same matching method, an efficient procedure for vessel centerline reconstruction was developed. Finally, the problem of meshing complex CA trees was simplified to independent reconstruction and meshing of connected branches using the proposed nonuniform rational Bspline (NURBS)based method. Because it enables structured quadrilateral and hexahedral meshing, our method is suitable for the subsequent computational modelling of CA physiology (i.e. coronary blood flow, fractional flow reverse, virtual stenting and plaque progression). Extensive validations using digital, physical, and clinical datasets showed competitive performances and potential for further application on a wider scale.
Introduction
Coronary arteries (CA) are small and dynamic vessels that branch from the aorta and supply myocardium with oxygenrich blood. According to the clinical reports, coronary artery disease (CAD) represents leading cause of death in the developed world^{1}. Briefly, CAD features CA wall stiffening and lumen narrowing, which may be diagnosed using various imaging modalities. Despite its invasiveness and twodimensional nature, Xray angiography (XRA) has served as the gold standard technique in interventional cardiology for over five decades. Moreover, XRA has facilitated many of the catheterbased cardiovascular procedures developed in the meanwhile (fractional flow reserve, angioplasty, intravascular ultrasound, optical coherence tomography and stenting). Consequently, there are increasing needs for tools that could enable accurate 3D quantification of CAD using the standard monoplane (when at least two views are available) and biplane (two views are acquired simultaneously) XRA devices^{2,3}.
Typical XRA device consists of the Xray source (\(\overrightarrow{{\bf{F}}}\)) and the image detector (\(\overrightarrow{{\bf{O}}}\)) mounted on the mobile Carm that can be rotated around an object, which is placed on the mobile patient table and subjected for the imaging. The sketch on Fig. 1 shows the Carm in its neutral (vertical), anteriorposterior (AP) position, when the Xray source is below the patient table. The XRA imaging is performed by a trained physician, who uses a catheter to inject the radioopaque contrast agent into the arteries and positions the device to obtain optimal twodimension projections of the vasculature. Particularly, one could rotate Carm around a point called isocenter (\(\overrightarrow{{\bf{I}}}\)) by using two rotations: positioner primary (α) and secondary (β) angle. The angle α may vary from +180° at the patient left hand side (LAO) to −180° at the patient right hand side (RAO). The secondary angle β range from +90° (cranial – CRA) to −90° (caudial – CAU). And one could change the distances between the patient and the Xray source (SOD) as well between the Xray source and the detectorplane (SID). Together with the images, these parameters are stored within the DICOM file header and represent routinely acquired data during the XRA imaging.
Related work
The majority of the available methods for reconstructing CA from XRA are semiautomatic and consist of these five steps: (1) pairing of frames acquired from different views; (2) vessel segmentation, decomposition and tracking in the XRA dynamic runs; (3) calibration of the parameters defining the device orientations; (4) modeling of CA centerline from its synchronized segmentations; and (5) reconstruction of the CA tree surface. In this part of the section, we briefly review state of the art approaches for solving these reconstruction tasks (see also Table 1).
XRA device calibration
The first attempts to reconstruct CAs from their XRA projections assumed that only the extrinsic device parameters from the DICOM tags are required^{4,5,6}. Since the angles and distances stored in DICOM headers are of limited accuracy, various methods based on optimization of both gantry extrinsic and intrinsic parameters have been proposed to avoid dependence on nonstandard calibration equipment. Chen and Carroll aimed at the minimization of errors caused by the movement of isocenter between two projections^{7}. Besides the calibration of pincushion distortion, Shechter et al. investigated the influence of inplane affine motions during vessel projection on the image intensifier^{8}. Yang et al. ignored both pincushion distortion (which is appropriate for the flat panel detectors) and inplane rotation of image detector, but they included movement of the patient table, intensifier inplane translation and skewness (in x direction) within the projection matrix^{9}.
Centerlines and surface reconstruction
Regarding the 3D reconstruction of vessel centerlines, various deformable models^{10,11,12} and dynamic programming methods^{8,13,14} are suggested to avoid the epipolar geometry problem when a curve’s point from one view intersects the corresponding centerline on other views more than once^{15}. Obtaining a 3D vessel surface from its 2D projections remains a nontrivial task. Although pioneering studies on the topic used circles and ellipses to fit the crosssections^{16,17}, a recent study of Yang et al.^{9} proposed a model for fitting elliptical patches. Recently, some studies have suggested various weighting techniques for obtaining a complex polygonal approximation of the lumen in situations when the XRA projection of vessel 3D crosssections at an arbitrary centerline point does not match 2D crosssection orientation at the corresponding point in the intensifier plane^{18,19,20}.
XRA frames gating and temporal reconstruction of CAs
Reconstructing a sequence of XRA frames requires finding the correspondence between the frames acquired from different viewpoints, which is commonly addressed by using ECGgating or by using a biplane XRA device. Beside using additional inplane compensation of complex cardiac motions^{21}, recent studies have assumed that a referent static 3D reconstruction is performed from the corresponding frames and then CA is tracked over time^{13,14}. The second approach independently reconstructed CA sequences and then used various algorithms for temporal matching of the CA tree – for example, starting from the timepoint with the least global motion^{19}.
The summarized overview of the previous studies that are comparable with ours in terms of input requirements and aims are given in Table 1. As it may be noted, the majority of previous contributions in each area were tackled independently and separately, and so far, only few studies integrated all the five steps^{16,18,22}. Moreover, we found that previous studies overlook the recent breakthrough of numerical simulations into the field of biomedicine^{23}.
The bottleneck for further advancements and wider scale applications of biomedical simulations of CA physiology represents improving their compatibility with the imaging procedures, which commonly deliver reconstruction results as a triangulated point cloud mesh. Since the pointcloud meshes are of fixed density and unguaranteed quality, they commonly require an afterwards manual editing (surpassing the time and effort invested into performing the reconstruction or the subsequent numerical simulation). Therefore, the aim of the present study was to propose a novel approach that will integrate all five reconstruction steps and ease using the reconstruction results for the further insilico studies of CA physiology. Considering these goals, the main contributions of the present study are: (1) the robust mathematical model of image formation integrates previous contributions reported separately in recent literature; (2) parameters that specify the orientation of the gantry were identified using robust genetic algorithm; (3) temporal gating of XRA frames acquired from different views was performed using an elastic partialmatching method; (4) the same method was applied for CA centerlines reconstruction, resulting in efficient pointtopoint correspondence between the views; (5) the vascular lumen is reconstructed using a NURBSbased method that simplifies further numerical modeling of CA physiology. Finally, the methods are suitable for the parallelization since the CA tree meshing is reduced to independent meshing of connected branches.
Methods
Inputs and data structures
To differentiate type of data used over the manuscript, we adopted this nomenclature (see S1 Appendix):
x  –  Data vectorarray, 
X  –  Matrix, 
\(\overrightarrow{{\bf{x}}}\)  –  Point in 2D space (at Xray plane detector), 
\(\overrightarrow{{\bf{X}}}\)  –  Point in 3D space, 
x  –  Constant, 
x  –  Scalar variable, 
X()  –  Scalar function, result is scalar variable (x), 
\(\overrightarrow{{\rm{x}}}()\)  –  Vector function, result is point in 2D (\(\overrightarrow{{\bf{x}}}\)), 
\(\overrightarrow{{\rm{X}}}()\)  –  Vector function, result is point in 3D space (\(\overrightarrow{{\bf{X}}}\)). 
where the temporal indices are assumed to be superscript and the spatial indices are given as subscripts (i.e. \({{\rm{X}}}_{{\rm{sequence}}\,\mathrm{number},\,{\rm{sample}}\,{\rm{ID}}\,{\rm{from}}\,{\rm{current}}\,{\rm{frame}}}^{{\rm{frame}}\,{\rm{number}}}\)).
Our procedure requires two sequences of XRA images acquired from different viewpoints (the pseudocode is given in S2 Appendix). After picking the pair of enddiastole frames, a couple (n) of corresponding points \({{\overrightarrow{{\bf{q}}}}^{k}}_{i,j}\{i=1,2;j=1,n;k=\mathrm{end} \mbox{} \mathrm{diastole}\}\) were extracted for the calibration purposes (Section 2.4). For CA centerlines (Section 2.6) and surface (Section 2.7) reconstruction, the total s vessel centerlines \({{\overrightarrow{{\rm{c}}}}^{k}}_{i,j}\{i=1,2;j=1,s;k=1,\frac{m\,for\,i=1}{p\,for\,i=2}\}\) and its corresponding borders \({{\overrightarrow{b}}^{k}}_{i,j}\{i=1,2;j=1,2s;,k=1\)\(\frac{m\,for\,i=1}{p\,for\,i=2}\}\) were extracted for each vessel branch; where index i indicates the XRA view, j indicates the point or centerline number, and k indicates the index of the XRA frame in the sequence. Both centerlines \({{\overrightarrow{{\rm{c}}}}^{k}}_{i,j}\) and borders \({{\overrightarrow{b}}^{k}}_{i,j}\) were defined as parametric curves, so the computation of intersections between the centerline’s normal and borders (required for the surface reconstruction) was performed automatically (Fig. 2(b)).
Extraction of input data from XRA images
The procedure requires from a user to pick a start and endpoint of a vessel (Fig. 3(a)), so the further extraction of its centerline and corresponding borders could be performed as described in the rest of this section.
The semiautomatic extraction of centerlines \({{\overrightarrow{{\rm{c}}}}^{k}}_{i,j}\) was performed by modeling of wave propagation over XRA image using the Eikonal equation and the Fast marching method^{24,25}. Briefly, the wave was propagated starting from the userdefined startinlet point while arrival time was stored for each pixel (Fig. 3(b,c)). Since the speed of the wave propagation depends on the image intensity, it propagates faster over the regions likely to belong to the vessel lumen and slows outside the vessel. To additionally differentiate (enhance) lumen from surrounding tissues, we preprocessed XRA images by using the Frangi filter (scale range s_{min} = 2 to s_{max} = 6, scale ratio = 0.5, λ_{1} = 0.5 and λ _{2} = 0.1) (Fig. 3(b))^{26}. After the wave reach the endpoint, the centerline was computed as backtrack shortest path to the sourcepoint. In our implementation, a user first clicks on the coronary inlet (the source point) and then on multiple coronary outlets. Afterwards, the algorithm automatically computes the paths between the inlet point to the corresponding outlets (Fig. 3(d)), and decomposes the coronary tree by splitting overlapping paths to unique segmentsbranches \({{\overrightarrow{{\rm{c}}}}^{k}}_{i,j}\) connected at bifurcation points \({{\overrightarrow{{\bf{q}}}}^{k}}_{i,j}\) (Fig. 3(e)).
The borders \({{\overrightarrow{b}}^{k}}_{i,j}\) were detected using the extracted centerlines \({{\overrightarrow{{\rm{c}}}}^{k}}_{i,j}\). The first step was enhancing the vessel borders using the edge operator^{27} and conversion of the filtered image into the eightnode graph map of the pixeledge values. Since the detected centerlines were parameterized, we used their inlet and outlet normals to automatically detect two border endpoints (Fig. 2(b)). Potential path switching over narrowed segments was prevented by unfastening graph nodes along the vessel centerline. Finally, the borders were detected by solving the Dijkstra graphsearch between the detected two borders’ endpoints (Fig. 3(f))^{28}.
With highly overlapping branches or missing the opaque contrast the segmentation procedure may require an additional manual editing of the obtained results.
Mathematical model of image formation
The device positioning was expressed using these parameters: the imager pixel spacing (κ), the primary (α) and secondary (β) angles, the distances d_{ sod } (from the patient to the Xray source) and d_{ sid } (from the Xray source to the intensifierplane):
Position of the Xray source (\(\overrightarrow{{\bf{F}}}\)) and the origin of the projection plane (\(\overrightarrow{{\bf{O}}}\)) were defined as(Fig. 4):
The imagedetector misalignment, caused by the nonideal mechanical response of the gantry, was defined with three rotational \({{\bf{R}}}_{{\rm{\Delta }}{\boldsymbol{\theta }}}={{\bf{R}}}_{x}(\Delta {\theta }_{x})\cdot {{\bf{R}}}_{y}(\Delta {\theta }_{y})\cdot {{\bf{R}}}_{z}(\Delta {\theta }_{z})\) and three translational \({\boldsymbol{\Delta }}\overrightarrow{{\bf{O}}}={[\begin{array}{cccc}\Delta {o}_{x} & \Delta {o}_{y} & \Delta {o}_{z} & 1\end{array}]}^{{\rm{T}}}\) degrees of freedom. Therefore, 3D position of any 2D DICOM point \(\overrightarrow{{\bf{p}}}=[\begin{array}{cc}{p}_{u} & {p}_{v}\end{array}]=[\begin{array}{cc}{p}_{{u}_{pixel}}{\kappa }_{u} & {p}_{{v}_{pixel}}{\kappa }_{v}\end{array}]\) was calculated as:
Since the isocenter in the primary view \({\overrightarrow{{\bf{I}}}}_{1}\) was assumed to be fixed in the origin of the global coordinate system, the secondary view has a relative isocenter movement Δi; therefore \({\overrightarrow{{\bf{I}}}}_{2}={\mathop{{\bf{I}}}\limits^{{\boldsymbol{\rightharpoonup }}}}_{1}+{\boldsymbol{\Delta }}{\bf{i}}\) and a 3D point from the secondary view was defined as \({\overrightarrow{{\bf{P}}}}_{{\rm{2}}}={\overrightarrow{{\bf{O}}}}_{{\rm{2}}}+{{\bf{R}}}_{{\boldsymbol{\Delta }}{\boldsymbol{\theta }}}\cdot {{\bf{M}}}_{2}\cdot ({\boldsymbol{\Delta }}\overrightarrow{{\bf{O}}}+{[\begin{array}{cccc}{p}_{2u} & {p}_{2v} & 0 & 1\end{array}]}^{{\rm{T}}})+{\overrightarrow{{\bf{I}}}}_{{\rm{2}}}\). Similarly, we obtained focal points \(({\overrightarrow{{\bf{F}}}}_{1},{\overrightarrow{{\bf{F}}}}_{2})\) and the projections \(({\overrightarrow{{\bf{P}}}}_{1},{\overrightarrow{{\bf{P}}}}_{2}+\) of an arbitrary \(\overrightarrow{{\bf{P}}}\) and used these to define two Xrays (lines) \({\overrightarrow{L}}_{1}({\overrightarrow{{\bf{F}}}}_{{\bf{1}}},{\overrightarrow{{\bf{P}}}}_{{\bf{1}}})\) and \({\vec{L}}_{2}({\vec{{\bf{F}}}}_{2},{\vec{{\bf{P}}}}_{2})\) (Fig. 4):
According to (4), the point \(\overrightarrow{{\bf{P}}}\) should lie on the minimal distance between the two lines (ideally on their intersecting point). There exists a unique vector \({\overrightarrow{{\boldsymbol{\psi }}}}_{{\bf{p}}}({s}_{{\eta }_{p}},{s}_{{\tau }_{p}})\) defined by two points \({\overrightarrow{{\rm{L}}}}_{1}({s}_{{\eta }_{p}})\) and \({\overrightarrow{{\rm{L}}}}_{2}({s}_{{\tau }_{p}})\) that is normal to the direction of both lines. By solving these equations for the parameters \({s}_{{\eta }_{p}}\) and \({s}_{{\tau }_{p}}\), the point \(\overrightarrow{{\bf{P}}}\) was calculated as:
Device calibration using two XRA enddiastole frames
If the primary view was posterioranterior (α_{1} = 0, β_{1} = 0), a genetic algorithm (GA)^{29} was used to identify the 11 device parameters \({\bf{X}}{\bf{A}}\{{\alpha }_{2},{\beta }_{2},{\boldsymbol{\Delta }}{\boldsymbol{\theta }},{\boldsymbol{\Delta }}\overrightarrow{{\bf{O}}},{\boldsymbol{\Delta }}\overrightarrow{{\bf{i}}}\}\) by minimizing the 2D mean square error (MSE) defined as:
where i indicates XRA projection number, j indicates point number (from total n samples), \({\overrightarrow{{\bf{q}}}}_{i,j}\) is the sampled point from ith XRA view, and \({\overrightarrow{{\bf{q}}}}_{i,j}({\overrightarrow{{\bf{Q}}}}_{j})\) represents a raytracing projection of the obtained 3D point \({\overrightarrow{{\bf{Q}}}}_{j}\) back onto the XRA detector in the ith view. When reconstructing a complex coronary tree, the sampled points \({\overrightarrow{{\bf{q}}}}_{i,j}\) were the bifurcation points; otherwise, when reconstructing a single branch we used its endpoints (Dataset IIID). Therefore, the calibration algorithm requires from a user to pick a single corresponding pair of frames at enddiastole and it returns optimized XRA parameters \(\mathop{{\bf{X}}{\bf{A}}}\limits^{\ast }\) and the calibration error \(\mathop{{\varepsilon }_{{\rm{\min }}}}\limits^{\ast }={\rm{F}}(\mathop{{\bf{X}}{\bf{A}}}\limits^{\ast })\).
Partial matching of frames acquired from two XRA projections
By using breathhold acquisitions, the gating problem could be reduced to the temporal alignment of XRA frames. However, due to the shifted cardiac phases and different lengths of acquisitions, it remains a challenging task, which usually demands an expert user interaction. The proposed procedure based on the optimal subsequence bijection^{30,31,32} aims to automatize this task. Briefly, if the series of m frames from the primary view a = (a_{1}, …, a_{ m }) and p frames from the secondary view b = (b_{1}, …, b_{ p }) are available, it computes the subsequences \({\bf{a}}\text{'}\) of a and \({\bf{b}}\text{'}\) of b (so that \({\bf{a}}\text{'}\) best matches \({\bf{b}}\text{'}\)). For each vertex (q = 1 … m,w = 1 … p), if \(q < k\wedge w < l\), the edgecost matrix was computed as:
Or set to ∞. The optimal frame correspondence was obtained by optimizing the tradeoff between the dissimilarity of \({\bf{a}}\text{'}\) and \({\bf{b}}\text{'}\) while the penalty for skipping elements from a and b was defined as:
Since n points were sampled from the two XRA views, the matching arrays were defined as series of these points \({\bf{a}}={\overrightarrow{{\bf{q}}}}_{i,j}^{k}\{i=1;j=\mathrm{1...}n;k=\mathrm{1...}m\}\) and \({\bf{b}}={\overrightarrow{{\bf{q}}}}_{i,j}^{k}\{i=2;j=\mathrm{1...}n;k=\mathrm{1...}p\}\):
The dissimilarity function δ was calculated using the function \({\rm{F}}(\mathop{{\bf{X}}{\bf{A}}}\limits^{\ast })\) from (6) for each pair of candidates (a_{ k }, b_{ l }). The obtained result was the array of optimal correspondences (pairs) CF between the series of XRA frames, suitable for the further sequential reconstruction of paired CA frames.
Vessel centerline reconstruction
Centerline reconstruction requires knowing point correspondence across XRA views. While methods based on the matching of epipolar points using dynamic programing (DP) may fail producing extra pointpairs, both DP and active contours methods are sensitive on over/under estimation of centerlines during the segmentation. Considering an arbitrary jth vessel centerline from an arbitrary kth corresponding pair of frames in the list CF, the proposed procedure aims to avoid these flaws by partial matching (described in section 2.5) of centerline projections (\({\overrightarrow{{\rm{c}}}}_{1,j}^{{\rm{k}}}\) and \({\overrightarrow{{\rm{c}}}}_{2,j}^{{\rm{k}}}\)). If the centerline \({\overrightarrow{{\rm{c}}}}_{1,j}^{{\rm{k}}}\) is interpolated with g points and centerline \({\overrightarrow{{\rm{c}}}}_{2,j}^{{\rm{k}}}\) is interpolated with h points, the penalty for skipping points from the two point series \({\bf{a}}={\overrightarrow{{\bf{c}}}}_{i,j}\{i=1;j=1\,\mathrm{...}\,g\}\) and \({\bf{b}}={\overrightarrow{{\bf{c}}}}_{i,j}\{i=2;j=1\,\mathrm{...}\,h\}\) was set to:
where \(\mathop{{\varepsilon }_{{\rm{\min }}}}\limits^{\ast }\) is the calibration error calculated using (6). The values in the cost matrix were calculated as:
if the condition \(1\le r\le g\wedge 1\le t\le h\) was satisfied; or set to be 0 if \((r=0\wedge t=0)\vee (r=g+1\vee t=h+1)\) and ∞ otherwise. In equation (11), \({\overrightarrow{{\bf{C}}}}_{rt}\) is the 3D point reconstructed by pairing rth (\({\overrightarrow{{\bf{c}}}}_{1,r}\)) point from the primary view and tth point (\({\overrightarrow{{\bf{c}}}}_{2,t}\)) from the secondary view, whereas \({\overrightarrow{{\bf{c}}}}_{1,r}({\overrightarrow{{\bf{C}}}}_{rt})\) and \({\overrightarrow{{\bf{c}}}}_{2,t}({\overrightarrow{{\bf{C}}}}_{rt})\) are the raytracing projections of \({\overrightarrow{{\bf{C}}}}_{rt}\) back on the positioned intensifier. Finally, the resultingcorresponding series of points \(\mathop{{\bf{C}}{\bf{P}}}\limits^{\ast }\) were used to define the nonuniform Bspline curve \(\overrightarrow{{\rm{C}}}(t)\) shown in Fig. 5(a)^{33}:
In equation (12), \(\mathop{{\bf{C}}{\bf{P}}}\limits^{\ast }\) are the 4D homogenous control points and N_{i,k} are kth order basis functions. The basis functions were calculated according to the Cox–de Boor recursive algorithm^{33}:
where s represents the knot vector calculated using the Chord length algorithm.
3D modeling of a single coronary branch surface
An arbitrary jth coronary artery (obtained from the kth corresponding pair of frames in the list CF) was modeled as a tubelike surface defined with crosssections positioned along the parameterized centerline \(\overrightarrow{{\rm{C}}}(t)={\overrightarrow{{\rm{C}}}}_{j}^{k}(t)\) (Fig. 5). Using the Frenet–Serret formulas, the trihedron at the point \(\overrightarrow{{\bf{C}}}(t)\) was defined via the curve’s tangent \(\overrightarrow{{\rm{T}}}(t)\), normal \(\overrightarrow{{\rm{N}}}(t)\) and binormal \(\overrightarrow{{\rm{B}}}(t)\) (Fig. 5(a))^{33}. The corresponding centerline point on ith view was estimated as \({\overrightarrow{{\bf{c}}}}_{i}({t}_{i})\) using the procedure described in the section above (note that t ≠ t_{ i }). Therefore, the vessel crosssection on the ith XRA frame was defined at the point \({\overrightarrow{{\bf{c}}}}_{i}({t}_{i})\), while its tangent \({\overrightarrow{{\rm{t}}}}_{i}({t}_{i})\) and normal \({\overrightarrow{{\rm{n}}}}_{i}({t}_{i})\) were computed from the parametric 2D curve \({\overrightarrow{{\rm{c}}}}_{{\rm{i}}}({t}_{i})\). Considering that, we first computed the intersections of the 2D normal \({\overrightarrow{{\rm{n}}}}_{i}({t}_{i})\) with the corresponding vessel borders \({\overrightarrow{{\rm{b}}}}_{i,1}({t}_{i})\) and \({\overrightarrow{{\rm{b}}}}_{i,2}({t}_{i})\). By using (3) obtained bordernormal intersecting points \({\overrightarrow{{\bf{b}}}}_{i,1}\) and \({\overrightarrow{{\bf{b}}}}_{i,2}\) were positioned in 3D and defined as \({\overrightarrow{{\bf{P}}}}_{a,i}\) and \({\overrightarrow{{\bf{P}}}}_{b,i}\), respectively (Fig. 5(b)). The lines (Xrays) from (4) were: \({\mathop{{\rm{L}}}\limits^{\rightharpoonup }}_{1}({\overrightarrow{{\rm{F}}}}_{i},{\overrightarrow{{\bf{P}}}}_{{{\bf{a}}}_{i}})\) defined by the Xray source point \({\overrightarrow{{\rm{F}}}}_{i}\) and point \({\overrightarrow{{\bf{P}}}}_{{{\bf{a}}}_{i}}\) and the second line \({\mathop{{\rm{L}}}\limits^{\rightharpoonup }}_{2}(\overrightarrow{{\bf{C}}}(t),\overrightarrow{{\rm{T}}}(t))\) was defined by the point \(\overrightarrow{{\bf{C}}}(t)\) and direction vector \(\overrightarrow{{\rm{T}}}(t)\). By solving (4), the point where the ray \({\overrightarrow{{\rm{L}}}}_{2}\) is tangent to the vessel surface was obtained and defined as \({\overrightarrow{{\bf{A}}}}_{i}({s}_{u},t)={\overrightarrow{{\rm{L}}}}_{2}({s}_{{u}_{p}})\). Finally, the position of a single point for defining one patch (vessel crosssection) was obtained by projecting \({\overrightarrow{{\bf{A}}}}_{i}({s}_{u},t)\) onto the trihedron normalbinormal plane. By repeating the same procedure for \({\overrightarrow{{\bf{b}}}}_{i,2}\to {\overrightarrow{{\bf{P}}}}_{b,i}\), the second point \({\overrightarrow{{\bf{B}}}}_{i}({s}_{u},t)\) was obtained (Fig. 5(c,d)).
From the two XRA views, four points could be obtained per patch (Fig. 5(d) black) which will fit a circle^{34}. By repeating the procedure for multiple views, either an elliptic (Fig. 5(d) blue)^{35} or a more accurate polygonal representation of the vessel patch could be obtained as shown in Fig. 5(d) (red). Regularity of points was ensured by converting them into the polar coordinates in normalbinormal plane and sorting in circular direction. Finally, the obtained 3D patches were used for NURBS surface representation and structured quadrilateral or hexahedral meshing of CA lumen surface (Fig. 5(e))^{33,36}:
where \({{\overrightarrow{{\bf{B}}}}^{h}}_{i,j}\) are the 4D homogenous points of the control net polygon, and N_{ i,k } and M_{ j,l } are basis functions of order k and l, respectively, calculated according to equation (13). Since the control net must be topologically rectangular, we interpolated each of the q patches with w points (twisting of patches along the branches was avoided by sorting the control points in the circular direction of the normalbinormal plane).
NURBSbased meshing of a single coronary branch
Discretization of a single CA branch was performed using the previously obtained parameterized vessel centerline \(\overrightarrow{{\rm{C}}}(t)\) and surface \(\overrightarrow{S}(u,v)\), enabling us to vary the mesh density in both longitudinal u and circular v directions (Fig. 6). Briefly, the procedure decomposes CA volume into connected hexahedra elements blocks, which were composed of quadrilateral patches (vessel cross sections). The supported quadrilateral patch is given on Fig. 6(a–d). Considering Fig. 6(a), which includes the enumeration of nodes and quadrilateral elements, we will introduce our approach for the patch generation assuming that it is positioned at an arbitrary position along the CA branch. The patch pattern is generated using the point in the patch centre and octagon that maps to the arbitrary shaped outer contour. It is symmetric in two directions (normalbinormal), which enables us efficient representation of connected CA branches (see the next section for detailed description of meshing complex CA trees).
Node with id 0 represents the central point and it was obtained by interpolating the vessel centreline \(\overrightarrow{{\rm{C}}}(t)\). In the example shown on Fig. 6(b), the number of circular subdivisions was set to 8 – so that the outernodes (id = 9 … 16) were obtained by interpolating the surface in circular (v) direction \(\overrightarrow{S}(u=t,v=0:1/8:1)\). The octagonnodes (id = 1 … 8) were assumed to be at 45% distance between the centralnode (id = 0) and the corresponding outernodes (id = 9 … 16). Following Fig. 6(a), the patch is subdivided into the quadrants – so that loop could be used to discretize the octagon and map the octagonedges to the outeredges. Assuming that one increased the circular subdivision to 16 (Fig. 6(b)), the procedure will interpolate 16 outernodes \(\overrightarrow{S}(t,v=0:1/16:1)\) and 16 octagonnodes while the rest of the procedure remains the same (Fig. 6(c,d)).Generation of the patches along the CA branch is shown on Fig. 6(f) (the longitudinal subdivision was set to 10 while the circular subdivision was set to 8). A single block of hexahedral elements was obtained by combining two successive quadrilateral patches, where their composing quadrilaterals were assumed to be the hexahedrablock faces (Fig. 6(g)).
3D modeling of complex CA trees as connected branches
Coronary trees were modeled as a directed graph, where CA branches (tubular structures) represent graph nodes and bifurcation points represent the graph edges (a single bifurcation has one input and two output branchesnodes) (Fig. 7(a)). After the vessel centerlines were reconstructed independently (Section 2.6), the orientations of their trihedrons were smoothed according to the endtrihedron of the input branch for each bifurcation following Fig. 7(b,c,d). The procedure from Section 2.7 was performed for every branch in the list. For each bifurcation in the series, the bifurcation sides of the corresponding branches were trimmed following the pattern illustrated in Fig. 7(e–j)^{37,38,39}. Trimming planes (Fig. 7(f,h)) were assumed to be symmetric to the directions of its corresponding branches. The trimming process consists of modifying the NURBS control points using the following approach. First, the trimplanes were used to remove endpatches, and afterwards, we added one new shared contour. The shared contour was obtained by averaging projections of nearest removed contours of two connected branches onto the trimplanes. On this way, elements continuity between connected branches was ensured during the subsequent quadrilateral or hexahedra meshing of complex CA trees. Finally, the mesh of the complete CA tree was obtained by merging meshes of the independently processed branches (the graph nodes – see S1  video) using the procedure described in Section 2.8. Figure 7(k) shows results of meshing our sample CA tree composed of two bifurcations, while Fig. 7(l,m) demonstrate how a single bifurcation mesh changes with decreasing the number of circular subdivisions.
Acquisition of imaging data sets  description and purpose
To assess the performance and accuracy of the proposed method, we designed series of experiments that represent increasingly realistic and challenging scenarios ranging from digital and physical phantoms to real clinical data sets.
Dataset I is a realistic digital phantom based on the 4D XCAT^{40} (Fig. 8). The image resolution was set to 960 × 960 pixels, the pixel spacing was set to 0.184 mm, the frame rate was set to 30 fps, and the cardiac and respiratory cycles were set to 1 s and 5 s, respectively. Since the ground truth was known a priori, the purpose of Dataset I was to study the influence of variations in lumen narrowing, XRA angulations and phase shifting of the acquired frames on the results.
Dataset II is a physical static phantom made of connected rubber tubing filled with the iodinated contrast agent (Fig. 8). The data were collected using the GE Innova 2100IQ (GE Healthcare, Waukesha, WI) angiography system with a flatpanel detector (1024 × 1024 pixel resolution at 15 fps and a pixel size of 0.287 mm). The referent geometry of the phantom was obtained using multislice 64slice CT (MSCT) Toshiba Aquilion System (Toshiba Medical Systems, Otawara, Japan). A total of 467 slices with thickness of 0.35 mm and 512 × 512 pixels resolution were acquired. Therefore, the purpose of Dataset II was to compare our results with geometry obtained from MSCT scans.
Dataset III represents elective CAs (Fig. 8 shows four of 20 considered – 15 RCAs and 5 LCAs) with CAD and stable angina pectoris acquired. All the acquisitions were performed using a routine protocol and the same Xray imaging equipment as used for the phantom Dataset II. Data of the patient who underwent both XRA and MSCT were used to additionally compare XRA results with geometry obtained from MSCT scans under the clinical conditions. The Dataset III represents data that had been routinely collected during patients’ examination in Clinical Center Kragujevac, Kragujevac, Serbia. The data were selected from the already existing clinic’s database (post hoc). The selection was approved by the Clinical Center ethical committee and was not related with the therapeutic outcomes of the patients that signed informed consent.
Data Availability
The datasets generated and analyzed during the study are publicly available in the Dropbox repository (link: https://www.dropbox.com/sh/ytn5g5idp507j4k/AAAjQOeZu9kZGiSHZxl4Boa?dl = 0). Folders contain the referent geometries, input images (DICOMs) and obtained geometries with supporting video clips. Data are organized in three folders (see section 2.10 for the detailed description):

Dataset I  static phantom (all presented data and results are provided with no restrictions).

Dataset II  digital phantom (digital phantoms images were generated by XCAT software^{40} available online at https://olv.duke.edu/technologies/4dextendedcardiactorsoxcatphantomversion20/).

Dataset III  clinical data (sample anonymized data are provided online). The rest of data are available from the corresponding author upon reasonable request (due to ethical reasons and patient privacy protection).
Results and Discussion
Adopted accuracy indicators
The validation was split into several subsections to assess each reconstruction step individually. Despite extensive progress during the past decades, no procedure for measuring accuracy of CA reconstructions from XRA has been standardized so far. Instead, a few indicators were frequently used including the measurement of: difference between ground truth and obtained vessel diameters along the branch^{41}, branches length^{42}, bifurcation angle^{18}, and mean square error (MSE) of the projection^{9}. Since the proposed framework integrates several steps and aims to deliver surfaces, we preferred measuring the deviation of the obtained CA surface geometry from its corresponding ground truth. The surface deviation was used to expresses the overall accuracy, since it accounts indicators used in the literature that studied separate reconstruction steps. After aligning two surfaces, the deviation was calculated as the closest point normal to the surface for each vertex in the mesh. This metric does not assume point correspondences between two surfaces, but in contrast to the conventional Hausdorff distance it expresses the sign of the deviation. We found beneficial the possibility to visually interpret over/under estimated regions (the negative deviation sign indicates omitted narrowing, while the positive deviation indicates overestimated regions). The quantitative error analysis also included measuring of mean, max, min and standard deviation for the surface deviation and estimation of the correlation coefficients for the centerlines.
Device calibration
Considering all three datasets, the calibration procedure was assessed by studying the sensitivity on interobserver variability (six clinicians) and number of sampled points on the results accuracy. The procedure was compared versus two alternative approaches from literature: the first (A1) assumes that the Carm is positioned by applying the primary rotation α followed by the secondary rotation β; distances (d_{ SOD }, d_{ SID }), intensifier inplane motions and intrinsic parameters were accounted via projection matrix following literature^{7,8,14}. The second approach (A2) decreases the complexity by fixing one projection so the second view is determined with three rotations around the x, y and z axes; while the projection matrix accounted for the intensifier inplane skewness and movement of the patient table^{9}.
The obtained results are given in Fig. 9 and Table 2. Compared to the alternatives that compensate XRA gantry misalignments by including various parameters into the projection matrix, the proposed model based on raycasting accounts all misalignments reported separately in literature (misalignments of the isofocus, patient table and intensifier). Therefore, it keeps the number of optimization parameters low while it eases the further reconstruction of CA surface. From Fig. 9 it may be found that the proposed approach is not sensitive to interobserver variability. Results from Table 2 showed that the robust genetic optimizer is competitive (in calibration error and resulting surface deviation) with alternative stateoftheart approaches based on using the LevenbergMarquardt optimizer (the values in Table 2 correspond to the enddiastole moment used for the calibration)^{7,9,15}.
Temporal synchronization of XRA frames
Temporal synchronization of XRA frames was assessed by using the clinical data Dataset IIIC and 4D phantom Dataset I (correspondences were known a priori). To compare with the state of the art sequential approaches based dynamic programming^{12,13,14,16,19}, we provided both DTW and the proposed procedure with four test cases assuming various mismatching of lengths and phases between the acquired XRA frame sequences (Table 3, Fig. 10b,d).
The results in Table 3 and Fig. 10 show that using the proposed procedure, which introduces a novel approach based on the partialmatching of XRA frame series, is advantageous for several reasons: (1) The procedure satisfies the requirement that the frame correspondence must be frametoframe. This is important because at a moment an artery has two projections on two views. (2) The proposed procedure is more robust when phases are shifted between the series of frames acquired from different views since it can skip false candidates. These two aspects are important since producing false frame pairs during the gating (returning two or more corresponding frames from the secondary view for one matching frame from the primary view and viceversa) further results with overestimating and delaying the length of CA beat and demotion of CA dynamics. Considering Case 1 and Case 4 (Table 3), the expected frame pairs were 25 and 13, respectively. The proposed partialmatching method shows tendency to slightly underestimate (21 and 11 pairs) while the concurrent method overestimated (43 and 20 pairs), the length of XRA frames sequence. Since in the clinical practice XRA acquisitions are approximately onetwo cardiac beats long, cases 2 and 3 remain untypical. Here, they were considered to confirm our assumption that amount of false pairs is proportional to the acquisition phase and length mismatching if one cannot avoid pairing false candidates. On the other side, for the proposed method, false pairs remain low and uncorrelated with the mentioned mismatching between two XRA sequences.
Vessel centerline reconstruction
This section assesses the procedure for centerline reconstruction in accuracy and sensitivity to overunderestimation of CA branch length during the segmentation. An example when a user, or a semiautomated segmentation method, overestimated branch length is given in Fig. 11(a–c) (A–C was marked instead of A–B in Fig. 11(b)).
The proposed method outperforms the conventional methods by skipping the false candidates and only allowing pointtopoint matching in Fig. 11(c). Regarding the main branches (determined by two bifurcations, so the problem of overestimating the branch length in 2D should not exist), experiments showed that the proposed method outperformed DTW (or any conventional method unable to skip false points) for both sides and main branches. Two sample projections of the left CA are shown in Fig. 11(d–k) (Video 2 and Video 3). By examining them from the acquisition views in Fig. 11(d–g), only slight differences between the results of the proposed (grey) and DTW (red) methods can be observed. However, when the CA is examined from an arbitrary view (Fig. 11(h–k), Video 4 and Video 5), it is found that only the proposed method resulted in a smooth transition during the complete cardiac cycle.
The assessment of the reconstructed centerlines length is shown in Fig. 11(l,m). The groundtruth lengths of the Dataset I centerlines were known a priori, whereas the centerlines of the Dataset II were computed from the MSCT following the literature^{43}. The correlation between the obtained and groundtruth centerline lengths was estimated using Pearson’s correlation coefficient. The obtained lengths in Fig. 11(l) wellcorrelated with the groundtruth lengths (r^{2} = 0.997); the mean difference, mean absolute difference, and standard deviation of 0.15 mm, 1.283 mm and 1.567 mm, respectively. Paired ttest (p = 0.9586 at 0.05 significance level) and BlandAltman plots (Fig. 11(m)) showed that the errors remained acceptable and did not correlate with the CA length.
Vascular surface (lumen) reconstruction
The assessment of surface reconstruction was performed by measuring the deviation of the obtained results from the corresponding groundtruth geometry. The referent geometry for Dataset II (obtained by MSCT) is shown with red color in Fig. 12(a,b). The obtained XRA reconstruction (white color) had the maximum surface deviations of 2.85/−2.66 mm at the inlet. The average surface deviations were +0.52 and −0.53 mm, with a standard deviation of 0.68 mm (the maximum Hausdorff distance was 2.35 mm, with the average value of 0.6 mm and the standard deviation of 0.4). A more challenging example is Dataset I shown in Fig. 12(d,e). The maximum surface deviation was +3.47/−1.83 mm, whereas the average surface deviations from the groundtruth data were 0.233/−0.202 mm, with a standard deviation of 0.318 mm (the maximum Hausdorff distance was 2.39 mm, with the average value of 0.52 mm and the standard deviation of 0.38). Although in practice clinicians are usually only interested in reconstructing the main epicardial vessels susceptible to interventional treatment, in this study the complete trees were considered for the reconstruction to evaluate the performance of the method when the view angle is not optimal for each branch. According to Fig. 12(e), good matching was obtained for the left main (LM), proximal circumflex (LCx) and proximal left anterior descending (LAD).
In order to additionally assess our procedure, we performed reconstructions using the epipolar matching for centerline reconstruction while the lumen surface was reconstructed using the multiview approach^{18}. The results obtained for static and dynamics phantom are shown on Fig. 12(c) and Fig. 12(f) (in both cases we used three XRA projections)^{18}. For the static phantom, we obtained the maximum surface deviation was +2.86/−3.13 mm, whereas the average surface deviations from the groundtruth data were 0.630/−3.696 mm, with a standard deviation of 0.848 mm. Regarding the MSCT phantom, we obtained the maximum surface deviation, which was +6.026/−3.030 mm, whereas the average surface deviations from the groundtruth data were 1.076/−0.455 mm, with a standard deviation of 1.136 mm. The obtained results showed that the proposed partial matching slightly outperformed the epripolar matching procedure for reconstructing mainshort segments of CA tree while significant improvements were obtained for longcurved branches.
From the image based modeling viewpoint, the major flaw of previous approaches was that they deliver the reconstruction results as a triangulated point cloud of fixed density and unguaranteed quality (Table 1). When the aim of reconstruction is the subsequent numerical modeling of CA, the pointcloud meshes require an afterwards manual editing that commonly surpasses the time and effort invested into performing the reconstruction. In the present study we introduce a novel NURBSbased meshing approach that enables us parameterized varying the mesh density over branches (both radial and longitudinal). For the considered data sets, we report that the quality of generated quadrilateral and hexahedral meshes was acceptable, since all generated elements had Jacobian >0.850. Therefore, there was no need for further manual editing of the obtained meshes.
Beside phantoms, we additionally considered one left CA subjected for both XRA and MSCT with aim to quantitatively compare our results with the geometry obtained from MSCT scans (Fig. 13a–f). Since CAs are highly dynamic vessels that moves and do not deform periodically over time, it is not recommended to compare the overall reconstructed surfaces (due to the inability to capture both acquisitions at the same cardiorespiratory moment). Therefore, we assumed that the vessel cross sections and length are constant over time – so that we can compare the approximated diameters over the branches. The obtained diagrams for the three main branches (LCA, LCx and OM) are given on Fig. 13g. To minimize over shortening, the 2D QCA was performed using the optimal viewpoints for each branch separately. MSCT diameters were computed as mean distance between the crosssection center of gravity and the crosssection contour points (obtained by slicing the triangulated CA surface perpendicularly to the computed branch centerline). Considering Fig. 13g, it may be found that 3D XRA showed good matching with the MSCT approximation of vessel diameters, especially compared to the traditional 2D QCA.
Sensitivity on various types of lumen constrictions and angulation between XRA views
Finally, the procedure robustness was assessed by varying the angulation between XRA projections and by varying the shape of CA lumen narrowing. Starting from the RAO90 to LAO90 view, 19 projections (Fig. 13(a–c)) of the phantom with stenosis (uniform constriction) and plaque (constriction is not uniform, so that the crosssection has a concave shape) were generated using the XCAT framework. Despite multipleview XRA is commonly related to the rotational angiography (which was not in the scope of this study), we used the generated XRA views to demonstrate extensibility of our procedure to the polygonal approximation that enables obtaining more realistic representation of CA crosssections when multiple views are available. Additionally, we aimed to compare these multipleview results with twoview results in order to quantitatively assess dependency on optimal selection of XRA views.
The multipleview reconstructions were obtained by using the polygonal (Fig. 14(d–f)), circles (Fig. 14(g–i)) and ellipses approximation (Fig. 14(j–l)). For the rounded regions, all three approaches provided promising results, with the circlefitting method exhibiting a slightly higher accuracy. For the plaque region, the polygonal approximation outperformed the other two methods providing the ability to recover the concave (plaque) crosssections (Fig. 14(m–p)).
Regarding the twoview approach, which is the subject of this study, it may be found that obtained results were comparable to the multiview approach. The circlefitting approach showed to be the most robust and least sensitive on variations of the angulation between the views – there was no significant loss of the accuracy with changing the angle between two views (in the range of 20–90 degrees, see Fig. 14q). Furthermore, we found that the ellipsefitting approach could produce inaccurate results in situations when the angle between the two XRA views is small (less than 30 degrees) because in such situations ellipse fitting could lead to sheared and stretched crosssections (ellipses) for a given set of points as shown by an example marked with blue color in Fig. 5d. On the basis of these findings, we recommend the circle fitting when only two views are available, using ellipse fitting when at least three views (with spans of at least 30 degrees between them) are available, and using a polygonal approximation when at least six views (with spans of 30 degrees, for example, from RAO90 to LAO90) are available.
Conclusions and Ongoing work
The present study proposed novel methods for modelling of CA from uncalibrated angiographic Xray projections. Extensive validations using digital, physical, and clinical datasets showed promising results and potential for clinical validation and application on a wider scale. Despite clinical studies, the proposed procedures are suitable for in silico physiology studies, such as virtual calculation of the functional severity of a coronary artery stenosis^{44,45}, plaque progression^{33} and studying CA response to stent implantation^{46,47}. Our further work will also aim at integrating other imaging techniques, such as intravascular ultrasound^{33} and optical coherence tomography^{42,48}. The complex CA trees were reconstructed by decomposing the tree in branches making the proposed framework easy to be parallelized. Finally, our method delivers the final meshes as NURBS suitable for the recently developed isogeometric finite element analysis connecting numericalmodelling techniques with recent developments in computeraided design^{49}.
References
 1.
Go, S. et al. American Heart Association Statistics Committee and Stroke Statistics Subcommittee. Heart disease and stroke statistics2013 update: a report from the American Heart Association. Circulation 27(1), e6–e245, https://doi.org/10.1161/CIR.0b013e31828124ad (2013).
 2.
Carroll, J. D., Carroll, E. P. & Chen, S. J. Coronary angiography: the need for improvement and the barriers to adoption of new technology. Cardiology Clinics. 27(3), 373–383 (2009).
 3.
Athanasiou, L. S., Fotiadis, D. I. & Michalis, L. K. Atherosclerotic Plaque Characterization Methods Based on Coronary Imaging. 2017. 1^{st} ed. London: Academic Press. ISBN: 9780128047347.
 4.
LonguetHiggins, H. C. A computer algorithm for reconstructing a scene from two projections. Nature 293, 133–135 (1981).
 5.
Saito, T., Misaki, M., Shirato, K. & Takishima, T. Threedimensional quantitative coronary angiography. IEEE Trans. Biomed. Eng. 37(8), 768–777 (1990).
 6.
Wollschläger, H. et al. Mathematical tools for spatial computations with biplane isocentric XRay equipment. Biomed. Tech. 31, 101–106 (1986).
 7.
Chen, S. J. & Carroll, J. D. 3D reconstruction of coronary arterial tree to optimize angiographic visualization. IEEE Trans. Med. Imaging. 19(4), 318–336 (2000).
 8.
Shechter, G., Shechter, B., Resar, J. R. & Beyar, R. Prospective motion correction of Xray images for coronary interventions. IEEE Trans. Med. Imaging. 24(4), 441–450 (2005).
 9.
Yang, J., Wang, Y., Liu, Y., Tang, S. & Chen, W. Novel approach for 3D reconstruction of coronary arteries from two uncalibrated angiographic images. IEEE Trans Image Process. 18(7), 1563–1572 (2009).
 10.
Cañero, C., Vilariño, F., Mauri, J. & Radeva, P. Predictive (un)distortion model and 3D reconstruction by biplane snakes. IEEE Trans. Med. Imaging. 21(9), 1188–11201 (2002).
 11.
Zheng, S., Meiying, T. & Jian, S. Sequential reconstruction of vessel skeletons from Xray coronary angiographic sequences. Comput. Med. Imaging. Graph. 34(5), 333–345 (2010).
 12.
Cong, W. et al. Quantitative Analysis of Deformable Model based 3D Reconstruction of Coronary Artery from Multiple Angiograms. IEEE Trans. Biomed. Eng. Epub. PP(99), https://doi.org/10.1109/TBME.2015.2408633 (2014).
 13.
Shechter, G., Devernay, F., CosteManière, E., Quyyumi, A. & McVeigh, E. ThreeDimensional Motion Tracking of Coronary Arteries in Biplane Cineangiograms. IEEE Trans. Med. Imaging. 22(4), 493–503 (2003).
 14.
Zheng, S. & Qi, Y. Motion estimation of 3D coronary vessel skeletons from Xray angiographic sequences. Comput. Med. Imaging. Graph. 35(5), 353–364 (2011).
 15.
Hartley, R. & Zisserman, A. Epipolar Geometry and the FundamentalMatrix. Multiple view geometry in computer vision2nd Edition. Cambridge, UK: Cambridge University Press, pp. 2004, 239–259.
 16.
Chen, S. Y. J. & Carroll, J. D. Kinematic and deformation analysis of 4D coronary arterial trees reconstructed from cine angiograms. IEEE Trans. Med. Imaging. 22(6), 710–721 (2003).
 17.
Movassaghi, B., Rasche, V., Grass, M., Viergever, M. A. & Niessen, W. J. A quantitative analysis of 3D coronary modeling from two or more projection images. IEEE Trans. Med. Imaging. 23(12), 1517–1531 (2004).
 18.
Andriotis, A. et al. A new method of threedimensional coronary artery reconstruction from Xray angiography: validation against a virtual phantom and multislice computed tomography. Cardiovasc. Interv. Ther. 71(1), 28–43 (2008).
 19.
Jandt, U., Schäfer, D., Grass, M. & Rasche, V. Automatic generation of time resolved motion vector fields of coronary arteries and 4D surface extraction using rotational xray angiography. Phys. Med. Biol. 54(1), 45–64 (2009).
 20.
Li, M., Yang, H. & Kudo, H. An accurate iterative reconstruction algorithm for sparse objects: application to 3D blood vessel reconstruction from a limited number of projections. Phys. Med. Biol. 47(15), 2599–609 (2002).
 21.
Hansis, E., Schäfer, D., Dössel, O. & Grass, M. Projectionbased motion compensation for gated coronary artery reconstruction from rotational xray angiograms. Phys. Med. Biol. 53(14), 3807–3820 (2008).
 22.
Yang, J. et al. External force backprojective composition and globally deformable optimization for 3D coronary artery reconstruction. Phys. Med. Biol. 59(4), 975–1003 (2014).
 23.
Viceconti, M., Henney, A. & MorleyFletcher, E. In silicoClinical Trials: How Computer Simulation will Transform the Biomedical Industry. Avicenna Consortium  Technical Report, https://doi.org/10.13140/RG.2.1.2756.6164 (2016)
 24.
Janssen, J. P., Koning, G., de Koning, P. J., Tuinenburg, J. C. & Reiber, J. H. A novel approach for the detection of pathlines in Xray angiograms: the wavefront propagation algorithm. Int. J. Cardiovasc. Imaging. 18(5), 317–324 (2002).
 25.
Sethian, J. A. A fast marching level set method for monotonically advancing fronts. Proc. Natl. Acad. Sci. USA 93(4), 1591–1595 (1996).
 26.
Frangi, A. F., Niessen, W. J., Vincken, K. L. & Viergever, M. A. Multiscale vessel enhancement filtering. Medical Image Computing and ComputerAssisted Intervention — MICCAI’98, Volume 1496 of the series Lecture Notes in Computer Science pp 130–137 (2006).
 27.
Canny, J. A Computational Approach To Edge Detection. IEEE Trans. Pattern. Analysis and Machine Intelligence. 8(6), 679–698 (1986).
 28.
van der Zwet, P. M. & Reiber, J. H. A new approach for the quantification of complex lesion morphology: the gradient field transform; basic principles and validation results. J. Am. Coll. Cardiol. 24(1), 216–24 (1994).
 29.
Goldberg, D. E. Genetic Algorithms in Search. Optimization & Machine Learning. (AddisonWesley, Boston, MA, USA, 1989).
 30.
Latecki, L. J., Megalooikonomou, V., Wang, Q. & Yu, D. An elastic partial shape matching technique. Pattern Recognit. 40(11), 3069–3080 (2007).
 31.
Latecki, L.J. et al. Partial Elastic Matching of Time Series. Fifth IEEE International Conference on Data Mining, Houston, https://doi.org/10.1109/ICDM.2005.118.
 32.
Latecki, L.J., Wang, Q., KoknarTezel, S. & Megalooikonomou, V. Optimal Subsequence Bijection,” Seventh IEEE International Conference on Data Mining. Omaha, NE, https://doi.org/10.1109/ICDM.2007.47.
 33.
Vukicevic, A. M., Stepanovic, N. M., Jovicic, G. R., Apostolovic, S. R. & Filipovic, N. D. Computer methods for followup study of hemodynamic and disease progression in the stented coronary artery by fusing IVUS and Xray angiography. Med. Biol. Eng. Comput. 52(6), 539–556 (2014).
 34.
Pratt, V. Direct leastsquares fitting of algebraic surfaces. Comput. Graph. 21, 145–152 (1987).
 35.
Fitzgibbon, A. W., Pilu, M. & Fisher, R. B. Direct Least Squares Fitting of Ellipses. IEEE Trans. Pattern. Anal. Mach. Intell. 21(5), 476–480 (1999).
 36.
Piegl, L., Tille, W. The Nurbs Book, (Second ed.) (SpringerVerlag, 1995).
 37.
Antiga, L. & Steinman, D. A. Robust and objective decomposition and mapping of bifurcating vessels. IEEE Trans. Med. Imaging. 23(6), 704–713 (2004).
 38.
Tuinenburg, J. C. et al. Dedicated bifurcation analysis: basic principles. Int. J. Cardiovasc. Imaging. 27(2), 167–174 (2011).
 39.
Zhang, Y., Bazilevs, Y., Goswami, S., Bajaj, C. L. & Hughes, T. J. R. PatientSpecific Vascular NURBS Modeling for Isogeometric Analysis of Blood Flow. Comput. Methods. Appl. Mech. Eng. 196(2930), 2943–2959 (2007).
 40.
Segars, W., Sturgeon, G., Mendonca, S., Grimes, J. & Tsui, B. M. W. 4D XCAT phantom for multimodality imaging research. Med Phys. 37(9), 4902–4915 (2010).
 41.
Dvir, D., Marom, H., Guetta, V. & Kornowski, R. Threedimensional coronary reconstruction from routine singleplane coronary angiograms: in vivo quantitative validation. Int. J. Cardiovasc. Intervent. 7(3), 141–145 (2005).
 42.
Tu, S., Holm, N. R., Christiansen, E. H. & Reiber, J. H. First presentation of 3dimensional reconstruction and centerlineguided assessment of coronary bifurcation by fusion of Xray angiography and optical coherence tomography. JACC Cardiovasc. Interv. 5(8), 884–885 (2012).
 43.
Van Uitert, R. & Bitter, I. Subvoxel precise skeletons of volumetric data based on fast marching methods. Med. Phys. 34(2), 627–638 (2007).
 44.
Morris, P. D., van de Vosse, F. N., Lawford, P. V., Hose, D. R. & Gunn, J. P. Virtual” (Computed) Fractional Flow Reserve: Current Challenges and Limitations. JACC Cardiovasc. Interv. 8(8), 1009–1017 (2015).
 45.
Zhang, J.M. et al. Simplified Models of NonInvasive Fractional Flow Reserve Based on CT Images. PLoS ONE. 11(5), e0153070 (2016).
 46.
Jovicic, G. R., Vukicevic, A. M. & Filipovic, N. D. Computational Assessment of Stent Durability Using Fatigue to Fracture Approach. J. Med. Device. 8(4), 041002–0410028 (2014).
 47.
Morlacchi, S. et al. Patientspecific simulations of stenting procedures in coronary bifurcations: two clinical cases. Med. Eng. Phys. 35(9), 1272–1281 (2013).
 48.
Chiastra, C. et al. Reconstruction of stented coronary arteries from optical coherence tomography images: Feasibility, validation, and repeatability of a segmentation method. PlosONE 12(6), e0177495, https://doi.org/10.1371/journal.pone.0177495 (2017).
 49.
Hughes, T. J. R., Cottrell, J. A. & Bazilevs, Y. Isogeometric analysis: CAD, finite elements, NURBS, exact geometry and mesh refinement. Computer Methods in Applied Mechanics and Engineering. 194(39–41), 4135–4195 (2005).
Acknowledgements
This study was funded by a project grant H2020PHC2015 (grant agreement 689068, SMARTool) and grants from Serbian Ministry of Education and Science (grant agreements III41007 and ON174028). This work has been partially supported by the MedIAN Network (EP/N026993/1) funded by the Engineering and Physical Sciences Research Council (EPSRC), and the European Commission H2020 Program through contract InSilc (H2020SC12017CNECT2 777119).
Author information
Affiliations
Contributions
All the listed authors have agreed to all of the contents. A.M.V. conceptualized the study, organized and processed acquired data, developed procedures, prepared figures and wrote the manuscript. S.Ç. and A.F.F. prepared virtual phantom data using 4D XCAT framework. They organized and wrote corresponding parts of the manuscript, including preparation of figures, and provided detailed editorial revisions. N.J. acquired, described and processed imaging data sets, including clinical interpretation of the obtained results. G.J. was involved in the validation and analysis of the obtained results. N.F. as project leader enabled funding acquisition, conceptualization and supervision of the study, including writing the manuscript.
Corresponding authors
Correspondence to Arso M. Vukicevic or Nenad Filipovic.
Ethics declarations
Competing Interests
The authors declare that they have no competing interests.
Additional information
Publisher's note: Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made. The images or other third party material in this article are included in the article’s Creative Commons license, unless indicated otherwise in a credit line to the material. If material is not included in the article’s Creative Commons license and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this license, visit http://creativecommons.org/licenses/by/4.0/.
About this article
Cite this article
Vukicevic, A.M., Çimen, S., Jagic, N. et al. Threedimensional reconstruction and NURBSbased structured meshing of coronary arteries from the conventional Xray angiography projection images. Sci Rep 8, 1711 (2018) doi:10.1038/s41598018194409
Received
Accepted
Published
DOI
Further reading

dfemtoolz: An opensource C++ framework for efficient imposition of material and boundary conditions in finite element biomedical simulations
Computer Physics Communications (2019)

Automated identification and grading of coronary artery stenoses with Xray angiography
Computer Methods and Programs in Biomedicine (2018)

An approach to pointtopoint reconstruction of 3D structure of coronary arteries from 2D Xray angiography, based on epipolar constraints
Procedia Computer Science (2018)
Comments
By submitting a comment you agree to abide by our Terms and Community Guidelines. If you find something abusive or that does not comply with our terms or guidelines please flag it as inappropriate.