Introduction

Coronary heart disease is a serious threat to human health because of the high morbidity and mortality. It is one of the leading cause of death in the world [1]. Coronary artery stenosis or obstruction caused by atherosclerotic lesions is the pathophysiological basis of coronary heart disease. Therefore, the detection and quantification of coronary artery stenosis is of great significance in the early diagnosis and risk assessment of coronary heart disease [2].

In clinical practice, Conventional Coronary Angiography (CCA) has always been the gold standard for evaluating coronary heart disease [3]. CCA has high resolution and won’t affected by the nature of plaque. The location, number and severity of stenosis can be well evaluated through CCA, where the segmentation of coronary angiogram images is the key to do visualization and quantization to complicated vessel data sets [4]. Accurate segmentation result not only can locate the focus position accurately to assist doctors to diagnose and treat coronary heart disease, but also is the basis to rebuild three-dimensional coronary artery [5]. As the topological structure of coronary artery is complex and the distribution of contrast medium is non-uniform, which causes the angiogram image having problems as indistinction and low contrast ratio inevitably, and creates huge difficulty to segmentation.

Scholars at home and abroad have done a lot of research on coronary arteries segmentation, where more and more image segmentation methods do not only use the gray-scale features of the image, but also use the texture features, spatial features, context features and other high-level features of the image [6]. Each pixel is represented by a feature space vector with multiple features, which can describe the image information more comprehensively and obtain better segmentation results. According to the modeling angle of segmentation model, the related segmentation research work is divided into three kinds of modes: global mode, local mode and hybrid mode. Global pattern refers to adjusting the segmentation rules or parameters in the global perspective so as to achieve the purpose of accurate segmentation, such as threshold, edge detection, region growth, Gauss mixture model and so on. Such models are not universal enough to adapt to the accurate segmentation of complex images. Local pattern is a local data processing model of image, which can achieve accurate segmentation of target details, such as Snake, Active Shape Model (ASM) and so on. Among them, the expression of active contour model is simple and the calculation efficiency is high, especially suitable for modeling or extracting deformed contour of arbitrary shape [7]. Active contour model has achieved good results in image segmentation applications, and it is also a widely used model in existing image segmentation applications [8]. Active contour models can be divided into geometric active contour models and parameter active contour models according to the expression form of contour curves. Geometric active contour model describes the curves by the idea of curve evolution and the form of level set. Parametric active contour model curves are composed of discrete points arranged regularly or described as a continuous parametric form by some basis functions, but it is sensitive to noise and can not deal with the change of curve topology well [9]. In order to solve this problem, Turani et al. [10] created a vesselness function for segmentation by analyzing the eigenvalues of Hessian matrix with blob-like, tubular and plate-like structure under a certain dimension, so the vessel in two-dimensional and three-dimensional images can be strengthened so as to be convenient for the segmentation of next step [11].

Taking into account the division of high precision and topology adaptability advantages, the level set method has obtained wide range of applications after it has been introduced into the field of image segmentation. Level set method is a kind of model-based segmentation methods in image segmentation in recent years. Chan-Vese model is adopted for image processing as its high precision and topology and good adaptability [12]. For the model can not segment uneven gray images and the selection of the initial contour has dependency, Cervantes-Sanchez et.al [13] discusses an improved image segmentation model with a fusion of fuzzy clustering, uses the information of fuzzy clustering to guide the selection of initial contour in Chan-Vese model. Firstly, deal the CT data to gain clustering information and membership matrix using fuzzy clustering method; second, define the initial contour of level set method using the clustering information; last, extract the coronary artery using C-V model and complete the image segmentation [14]. Zhang et al. [15] improve the imperfection of vessel enhancement arithmetic based on Hessian matrix, which includes that parameters in vesselness function are difficult to set, vascular structure is extracted incompletely, and especially the tiny structures many deficiencies and breakages, but this method is too complicated. Yihui C et al. [16] proposed a novel and effective Hessian-matrix-based segmentation method, which firstly utilizes the relation of Hessian matrix eigenvalues corresponding to tubular objects, creates a novel vesselness function to strengthen coronary artery, and leaves out the parameters setting. Then combines the characteristics of maximum variance between clusters, which are rapid, efficiency and powerful anti-noise ablity, proceed thresholding to coronary artery image strengthened, and gains the segmentation result.

There are often noises in CT coronary angiography images and the background is extremely complex [17]. The pixels in the image are non-homogeneous. The vascular structure and gray distribution in different regions are also different. It is difficult to capture the real information only by considering the gray information or gradient information of the image. In order to solve the above problems [18], a novel yet effective segmentation algorithm is proposed in this paper. Firstly, the contours of the region of interest of the cardiac CT image are extracted using the improved FCM and CV model. Next, the multi-scale gradient vector information is obtained from the cardiac image data to construct the energy function with shape priors and then the multi-scale vascular function based on the Hessian matrix is used to perform the enhancement filtering for the cardiac region of interest to obtain the vessel prior shape information for constraining the energy function. Finally, the boundary and regional energy functionals are combined and the variational principle and level set method are used to obtain the level set evolution equation suitable for coronary vessel segmentation. Since the gradation of the blood vessel image is uneven and the end region of the blood vessel is tinier, our proposed algorithm is implemented to face the blood vessel divided into a plurality of sub-regions, and the contour is evolved within the narrowed range. Finally, the effectiveness of the proposed algorithm is verified by a large number of qualitative and quantitative analysis.

Related works

A geometric active contour model (GAC) model is a typical representative of geometric active contour model based on boundary [19]. It uses gradient information of image to construct stopping function of evolution curve to guide contour curve to approximate real target boundary [20]. By minimizing the following energy functional, GAC model minimizes the closing curve with g(⋅) as the weighting coefficient at the segmentation target, and the energy functional is:

$$ {E}^{GAC}={\int}_0^{L(C)}g\left(|\nabla \left[C(s)\right]|\right) dS $$
(1)

where L(C) represents the arc length of the closed contour curve C(s) in the Eq. (1); ∇(I) is the gradient of image I; and g(⋅) is the edge stopping function.

The level set evolution equation corresponding to the minimized Eq. (1) is:

$$ \frac{\partial \phi }{\partial t}=g\left(\nabla I\right)\left(\mathit{\operatorname{div}}\left(\frac{\nabla \phi }{\mid \nabla \phi \mid}\right)+{v}_0\right)+\nabla g\cdot \nabla \phi $$
(2)

where v0 is a constant, whose function is to accelerate the rate of curve contraction to the interior in the smoothness area of the image; div is a divergence operator; g(⋅) is a decreasing function of image gradient modulus ∇(I); and ∇g ⋅  ∇ φ is an additional term of “attraction factor”, which is used to correct the motion of contour curve, and improve the model’s ability to segment the boundary with dim edge. Generally, edge function g(⋅) can be defined as:

$$ g\left(\nabla I\right)=\frac{1}{1+{\left|\nabla I\right|}^p},p=1,2 $$
(3)

where ∇I = I ∗ Gσ and Gσ are Gauss kernel function with variance σ.

It can be seen from formula (3) that edge function g(∇I) is an approximate image gradient from the single scale σ. However, if the scale is too large, it will be difficult to separate the two objects which are close to each other in scale space. On the contrary, if the scale is too small, the existing large area of image gradient are zero for the image with noise, which makes the correction term of evolutionary curve be zero, thus reducing the segmentation ability of the model for the boundary and the image with noise. In addition, the geometric active contour model has some disadvantages such as the high complexity of the algorithm and its poor convergence to the weak edges of medical images.

According to the analysis of Hessian matrix anisotropy [21], eigenvalues and eigenvectors, this paper improves the vascular response function, which uses the vascular response function and threshold to get the rough segmentation image of the blood vessel; and then this information is used to initialize the level set function and construct the shape-priori term. It overcomes the sensitivity of the level set model to initialization and the sensitivity of the regional energy fitting term to noise. In addition, geometric operators are constructed by using the area, width and height of the connected domain to eliminate the artifacts between the focus for the result of level set model segmentation and the small connected domain area. And the final segmentation result of coronary artery is obtained [22].

Our improved two-steps coronary artery segmentation

Analysis of geometric meaning of hessian matrix

First-order derivatives and second-order derivatives can describe local feature changes of objects, so they are often used to construct energy-driven terms and feature-described terms in numerical image processing based on partial differential equations [23, 24]. For example, the direction indication function of edge terms in level set models can be constructed by gradients containing first-order and second-order derivatives, and the characteristics of linear and tubular objects can be described by second-order derivatives.

Considering that the coronary artery image just presents a tubular structure, the Hessian matrix constructed by the second-order partial derivative is introduced. Because of the noise and artifacts in numerical images, the original image and the second-order partial derivative of the Gaussian function with scale σ are convoluted to get the Hessian matrix. The definition of the Hessian matrix is as follows [25, 26]:

$$ H\left(x,y\right)={I}_{GrayS}\times \left[\begin{array}{cc}\frac{\partial^2{G}_{\sigma}\left(x,y\right)}{\partial {y}^2}& \frac{\partial^2{G}_{\sigma}\left(x,y\right)}{\partial x\partial y}\\ {}\frac{\partial^2{G}_{\sigma}\left(x,y\right)}{\partial y\partial x}& \frac{\partial^2{G}_{\sigma}\left(x,y\right)}{\partial {y}^2}\end{array}\right] $$
(4)

Two-dimensional Hessian matrix is a real symmetric matrix with two eigenvalues λ1 and λ2. Assuming that in the vascular image, the eigenvector corresponding to λ1 represents the blood vessel trend, and the eigenvector corresponding to λ2 represents the direction perpendicular to the blood vessel trend. Then if∣λ1 ∣  <  <  ∣ λ2∣, that is, there is a point (x, y) on the blood vessel, its curvature of the blood vessel trend is much smaller than that the direction perpendicular to the blood vessel trend. In the non-vascular background area, because there is no obvious tubular structure, the feature value of each point has ∣λ1 ∣  ≈  ∣ λ2∣. If ∣λ1 ∣  ≈  ∣ λ2 ∣  >  > 0, which means that there is obvious gray value change (noise point or focus) between this point and the surrounding point; if ∣λ1 ∣  ≈  ∣ λ2 ∣  ≈ 0, it means that there is no obvious gray value change between this point and the surrounding point. It means that the blood vessel is brighter than the background (convex) and that the blood vessel is darker than the background (concave).

Construction of vascular response function

According to Hessian matrix’s eigenvalue descriptions of different point (x, y) in the image, a descriptive operator can be constructed to distinguish blood vessels from background. Khan et al. [27] proposed using Ridgness score 1/Rβ = λ2/λ1 to describe blood vessels and using F norm of Hessian matrix to remove the influence of background and weak signals. The F norm of second-order Hessian matrix is defined as follows [28, 29]:

$$ \mathrm{S}={\left\Vert H\right\Vert}_F=\sqrt{\sum_{i=1}^2{\lambda}_i^2} $$
(5)

Because the gray value of non-noise points in the background does not mutate in the two orthogonal trends and λi ≈ 0, i = 1, 2, norm F and Rβ are smaller. Because ∣λ1 ∣  <  <  ∣ λ2∣ and ∣λ2 ∣  > 0, norm F and Rβ are larger in the blood vessel, the blood vessel and background can be successfully divided. But at the noise point ∣λ1 ∣  ≈  ∣ λ2 ∣  >  > 0, Rβ is still smaller, but norm F is larger, so it inevitably produces wrong vascular response. In this paper, a new vascular description operator is constructed. It is defined as J,whose equation is written as follows,

$$ J={\left(|{\lambda}_1|-|{\lambda}_2|\right)}^2{\left(|{\lambda}_1|+|{\lambda}_2|\right)}^2 $$
(6)

so when the point (x, y) is in the blood vessel, ∣λ1 ∣  <  <  ∣ λ2∣, so J is larger; when the point (x, y) is in the noise or background, ∣λ1 ∣  ≈  ∣ λ2∣, soJ is smaller.

Based on the above properties, this paper constructs the vascular response function vσ(x, y) to distinguish the vessels from the background, so as to preliminarily estimate the coronary artery image. The definition of vσ(x, y) is written as follows:

$$ {v}_{\sigma}\left(x,y\right)=\Big\{{\displaystyle \begin{array}{c}0,\kern16.999996em {\lambda}_2<0\\ {}\left(1-\exp \left(-\frac{R_{\beta}^2}{2{\beta}^2}\right)\right)\left(1-\exp \left(-\frac{J}{\sqrt{J_{\mathrm{max}}}}\right)\right),\kern0.36em {\lambda}_2\ge 0\end{array}} $$
(7)

Where, β is the size parameter, usually taking β = 0.5; σ is the size of Gauss kernel function, Jmax is the maximum value of J. In this way, formula (4) can maximize the response of vascular pixels, make the vascular response function vσ(x, y) → 1, and make the vascular response function vσ(x, y) → 0 in the flat area of non-vascular background, i.e. vσ(x, y) ∈ [0, 1]. This is the difference between the corresponding function of blood vessels in this paper and that in literature [8]. Therefore, it is necessary to calculate the vascular response function vσ(x, y) in multi-scale. Finally, the maximum response values at each scale are defined as follows:

$$ v\left(x,y\right)=\underset{\sigma_{\mathrm{min}}\le \sigma \le {\sigma}_{m\mathrm{ax}}}{\max }{v}_{\sigma}\left(x,y\right) $$
(8)

where σmin and σmax are the smallest and largest sizes of interested vessels. Their purpose is to retain more edge information. So more vascular information can be included in the initialization and less non-vascular structure can be included in the construction of shape constraints, so as to improve the anti-noise ability of the model and the accuracy of vascular segmentation.

Coronary artery segmentation based on improved level set model in combination with weighted constraints

Using the results of coronary artery rough segmentation, we can construct a level set model including regional energy fitting terms, shape constraints, regularization terms, length penalty terms and area constraints. Among them, regional energy fitting term have the ability to fit local regional data, which can overcome the problem of gray value intersection between background and vessel, and ensure correct segmentation of the adjacent vessels, crossing vessels and micrangiums; the shape constraint terms and area constraints term can overcome the noise sensitivity of the regional energy fitting terms; the regular penalty terms can make the level set function regular in the process of evolution and ensure that the level set function can obtain accurate numerical solutions in the process of evolution; and length penalty terms can make the segmentation contour curve smooth. In this paper, we use the interaction of regional energy fitting terms, shape constraints, regularization terms, length penalty and area constraints to segment adjacent vessels, crossing vessels and micrangiums correctly, and to overcome noise interference. Its basic framework is described in Fig. 1. The energy model is defined as follows:

$$ E\left(\phi, {f}_1{f}_2\right)={E}_R\left(\phi, {f}_1{f}_2\right)+\eta {E}_s\left(\phi \right)+\mu {P}_R\left(\phi \right)+v{L}_P\left(\phi \right)+\gamma {A}_R\left(\phi \right) $$
(9)

where on the right side of formula (6) are respectively local regional energy constraints, regularization maintenance of the level set function, length penalty, and area constraints; γ, η, λ, v are weight coefficient.

Fig. 1
figure 1

Basic framework

Local energy fitting

Two-level set model uses inside and outside functions fi(x), i = 1, 2 of the curve to fit the local regional gray value, and its local ability is mainly limited by the Gaussian kernel function kσ(x − y). With y as the center, when x is gradually away from y, the smaller the weight of energy fitting representing x points is. So it can overcome the problem of gray value intersection between the blood vessel and the background, and guide the segmentation curve to approximate the region of the blood vessel edge. The regional energy fitting is defined as follows:

$$ {E}_R\left(\varphi, {f}_1,{f}_2\right)={\sum}_{i=1}^2{\beta}_i\int \left(\int {k}_{\sigma}\left(x-y\right){\left|I(x)-{f}_i(x)\right|}^2{M}_i^{\varepsilon}\left(\varphi (y)\right) dy\right) dx $$
(10)

where σ is the Gauss kernel size parameter; βi, i = 1, 2 is the weight coefficient of the regional energy fitting; φ is the level set function; \( {\mathrm{M}}_i^{\varepsilon}\left(\varphi \right),i=1,2 \) is the regional function, representing the internal and external of the curve. Take \( {M}_i^{\varepsilon}\left(\varphi \right)={H}^{\varepsilon}\left(\varphi \right) \), \( {M}_2^{\varepsilon}\left(\varphi \right)=1-{H}^{\varepsilon}\left(\varphi \right) \), where Hε(φ) is the Heaviside function with regularity and its derivative is the Dirac function δε(φ).

$$ {\mathrm{H}}^{\varepsilon}\left(\phi \right)=0.5\left(1+\frac{2}{\pi}\arctan \left(\frac{\phi }{\varepsilon}\right)\right) $$
(11)
$$ {\delta}^{\varepsilon}\left(\phi \right)=\frac{\varepsilon }{\pi \left({\varepsilon}^2+{\phi}^2\right)} $$
(12)

where ε is size parameter, generally it is set to ε = 1.

Shape-prior constraint

Coronary artery segmentation based on region energy fitting ER(φ, f1, f2) is sensitive to noise, and it is easy to mistakenly divide some non-vessel noise areas into vessels, resulting in loss of accuracy. In order to overcome the shortcomings of region energy fitting, the shape constraints of vessels are constructed by obtaining binary images. Firstly, the following level set function is initialized according to binary vessel images; then, GAC model or RSF model are used to control the evolution of contour curve C, and symbolic distance function is obtained at Time t to represent the shape of blood vessel.

In the level set segmentation model, the contour curve C evolves toward the target edge by minimizing the energy expression. Therefore, ϕ(x, t) can be used to represent the prior shape of blood vessels, and the energy functional expression Es(ϕ) for level set functions φ and ϕ(x, t) can be constructed. The energy expression Es(ϕ) of shape constraint is defined as:

$$ {\mathrm{E}}_s\left(\varphi \right)={\int}_{\varOmega }{\left|{H}^{\varepsilon}\left(\varphi \right)-{H}^{\varepsilon}\left(\phi \right)\right|}^2 dx $$
(13)

In the process of minimizing energy functional, when the contour curve of coronary artery segmentation deviates from the shape constraint prior, it will be punished. The bigger the deviation distance is, the bigger the penalty is, so as to overcome the sensitivity of region energy fitting to noise.

Level set function φ must always have regularity in the process of evolution. This regularity requires that the level set function should not be too flat or too steep to ensure the stable evolution of the level set function, so as to control the contour curve C to approximate the edge of the target gradually and obtain accurate numerical solutions. Therefore, this paper introduces the level set regularization PR(φ) in literature [2], which is defined as follows:

$$ {\mathrm{P}}_R\left(\phi \right)=\frac{1}{2}{\int}_{\varOmega }{\left(|\nabla \phi |-1\right)}^2 dx $$
(14)

In the process of energy minimization, in order to make the contour curve C as short and smooth as possible and to eliminate the local minimum problem caused by noise and focus in the image, the length penalty LP(φ) of the contour curve C should be added to the energy expression, which is defined as follows:

$$ {\mathrm{L}}_{\mathrm{P}}\left(\phi \right)={\int}_{\varOmega}\mid \nabla {\mathrm{H}}^{\varepsilon}\left(\phi \right)\mid dx $$
(15)

In order to overcome the mistaken segmentation caused by noise and focus in vascular images, we construct a weighted area constraint which fuses the edge gradient information of blood vessel, it is defined as follows:

$$ {\mathrm{A}}_R\left(\phi \right)={\int}_{\varOmega }g\left(1-{H}^{\varepsilon}\left(\phi \right)\right) dx $$
(16)

where g = 1/(1 + |∇G × IRea|2) is non-negative monotone decreasing function and G is Gauss function. According to the definition of formula (16), the area constraint has a larger penalty in the non-vascular background area with g = 1, while the constraint area only gets a smaller penalty in the vicinity of the blood vessel with g → 0.

Experiment results

In order to analyze the segmentation performance of our proposed algorithm, a dual-source CT coronary image are used for segmentation experiments. 8 groups of real clinical cardiac CT sequences in the experiment are provided by West China Hospital. The acquisition instrument is Siemens SOMATOM dual-source CT cardiac scanner, which has the extremely prominent superiority in the heart image formation and may demonstrate the more heart structure detail. The image pixel size is 0.50~0.92 mm, the thickness is 0.625~1.00 mm, the spatial resolution is 0.33~0.33 mm, and the scanning layers is 220~522. The selected software platform in this paper is the Matlab 2013 under Windows. The hardware configuration: CPU is Intel Core i5, and memory is 16GB; GPU is Titan X,

Parameter settings

The following parameters can be set to the same value in process of the experiment: iteration step τ = 0.1, evolution constant v0 = 1, energy-based penalty coefficient γ = 1; Area Constraint Coefficient γ = 3.5; Length Penalty Coefficient β = 7, Regularization Coefficient u = 1; Gauss Kernel parameter σ = 3with the size [9, 9] and λ1 = λ2 = 1. The the upper and lower threshold α, β ∈ (0, 1) of the blood vessel area information function Pvessel is set according to the degree of blurring degree, noise, and size in the blood vessel image. In general, when the background image is clear and the vascular structure is obvious, the value of the similarity function obtained by our proposed coarse coronary segmentation more uniform (the values corresponding to the intra-vascular pixel points almost approach 1, while the values outside the blood vessels are close to 0), a larger fraction (such as 0.98) can be taken. The weight coefficient of the boundary term and the shape-prior item is determined according to factors such as the feature and quality of the segmented image. Because the curve evolution guided by the shape-priori is often more efficient than the curve controlled by the gradient information, especially when there is interference such as noise in the image. In most cases, α ≥ β and the α should be greater than 0.5. in most instances, the larger α can make the active contour model insensitive to the position of the initialization curve. The reason is that the shape-prior energy function is used in two levels segmentation model to obtain the coronary artery position, which can produce a shape force, which makes the evolution curve is fixed around the coronary artery, and finally the true contour of the coronary artery structure is approximated by the gradient term energy function.

Performance indexes

In order to facilitate quantitative analysis of performance between comparison algorithms, three evaluation metrics are adopted in experiment, namely Dice coefficient, sensitivity and precision. The Dice similarity index is a measure of region overlap defined by:

$$ {\mathrm{Dice}}_i=\frac{2\times \mid G{T}_i\cap Seg\mid }{\mid G{T}_i\mid +\mid Seg\mid } $$
(17)

where GTi is the ground truth region marked by the expert i and Seg is the automatically segmented region. Obviously, Dice is always between 0 and 1, with higher values indicating better automatic segmentation performance. Precision is the rate of true-positives to the total number of positives. It is expressed by the following formula:

$$ \mathrm{ACC}=\frac{TP+ TN}{TP+ FP+ FN+ TN} $$
(18)

where TP, TN, FP and FN are indicated as the number of true positive, true negative, false positive and false negative, respectively.

Sensitivity measures the proportion of ground truth positives which are correctly identified as such. It is deined as follows,

$$ \mathrm{SENS}=\frac{TP}{TP+ FN} $$
(19)

For each quantitative metric, statistical analysis is done so as to understand whether the means are actually different or the difference between empiric means may be due to chance.

Comparison of experimental results

The comparison algorithms used in this paper are HS [14], SEMT [18], DRLSE [19] and Sparse_SM. Figure 2 firstly shows the results of coronary artery image segmentation. Figure 2a is the original image, Fig. 2b, c, d and e are the results of different algorithms, where Fig. 2b is the rough estimation of coronary artery image by corresponding Hessian matrix and response function, and the image is denoised by using threshold 0.005 and morphological operator respectively; Fig. 2c further uses the segmentation results of DRLSE model proposed in reference [18]; Fig. 2d is the segmentation result of the SEMT algorithm, which directly improves the histogram threshold of the coronary image and adaptively segment the blood vessel area; Fig. 2e is based on the sparse feature segmentation method, where the sparse Dictionary of the blood vessel area is used to automatically learn the blood vessel features, and the precise segmentation is realized by SVM; Fig. 2f is a two-stage segmentation algorithm combined with prior information proposed in this paper. From the results of Fig. 2, we can see that threshold and morphological are difficult to eliminate the non-vascular noise in the image, and seriously deplete the real blood vessel segmentation precision and can not get the real blood vessel edge. The segmented blood vessel image has a large number of breaks in the small blood vessel, i.e. discontinuous, and it is difficult to solve the problem of adjacent blood vessels connecting when the Hessian matrix and response function preliminarily estimate the blood vessel. The DRLSE in Fig. 2c can remove image noise well and ensure the continuity of the small vessels to a certain extent, but it is not enough to segment the small vessels. According to Fig. 2 d and e, we can see that although the sparse feature can segment large arterial regions, it is not good for the segmentation of small regions, mainly because of the error caused by sparse approximation, and the dictionary atom has insufficient ability to fit small targets. Figure 2f is the result of our proposed algorithm in this paper. This method can not only remove the non-vascular noise in the image, but also successfully solve the problem of blood vessel image connection caused by the adjacent vessels too close, and the continuity of the small vessels. The segmentation curve can be close to the real blood vessel edge. In the pre-process, we used rough segmentation to enhance the images, but found that it had lots of miss-judgment. Then, two-step segmentation proposed in this paper is adopted eventually, whose result approximate the benchmark results from expert manual segmentation. Therefore, our proposed method has great advantages in coronary artery segmentation.

Fig. 2
figure 2

Performance comparison of different algorithms on Left coronary artery; a original image; b HS; c SEMT; d DRLSE; e Sparse_SM; f Multi-scale Hessian; g our proposed algorithm; h manual benchmark

Figure 3 shows performance comparison of different algorithms on Right coronary artery. Compared with the results of manual segmentation, the experimental results of SEMT and DRLSE can extract the coronary structure, but there are many problems. The edge of the blood vessel segmented by the SEMT algorithm is relatively fuzzy, and there is serious edge leakage at the subtle vascular structure and small blood vessel loss. The result obtained by the DRLSE algorithm is relatively complete, but there is a lot of noise. By comparing the local details of the segmentation results, we can find that the coronary structure obtained by the DRLSE algorithm has many fractures in the lower contrast region and the micro vessels, while the coronary artery extracted by the SEMT algorithm guarantees continuity, but there are a large number of speckle noise. Sparse_SM and Multi-scale Hessian also have incomplete small-area segmentation and mis-segmentation. In contrast, the coronary vessels extracted by the algorithm are more complete and continuous, and can be successfully detected for coronary end, small vessel branches and blood vessels in low contrast areas, and the background noise is effectively suppressed.

Fig. 3
figure 3

Performance comparison of different algorithms on Right coronary artery; a original image; b HS; c SEMT; d DRLSE; e Sparse_SM; f Multi-scale Hessian; g our proposed algorithm; h Manual benchmark

Figure 4a is the original image; Fig. 4b is the results of the proposed rough algorithm, but our algorithm without Priori information in the energy function require 150 iterations to obtain satisfactory segmentation results so as to eliminate non-vascular noise. Figure 3c is the fine segmentation result for our segmentation algorithm with shape constraints, where only 60 iterations are needed to obtain satisfactory results; Fig. 3d is the manual benchmark from imaging specialists. It should also be pointed out that the weight factor of length penalty is α=16 so as to eliminate non-vessel noise as much as possible and to make the segmentation curve as close as possible to the real benchmark, while the weight factor of length penalty is α=7 in the case of shape constraint. If the weight coefficient of the shape penalty term is too large, the segmentation curve will be too rigid, it will be difficult to smooth, and it will be difficult to approach the real coronary edge in some complex region. It can be seen that adding shape constraints can not only greatly reduce the time cost of segmentation, but also make the segmentation curve more close to the real edge.

Fig. 4
figure 4

Segmentation Results for different step; a original image; b Rough segmentation; c; Fine segmentation; d Manual benchmark

According to the rules of coronary artery image extraction, the higher the sensitivity, accuracy, specificity, accuracy and the lower the false positive rate, the better the feasibility of the segmentation algorithm. Table 1 shows that DRLSE algorithm is better than SEMT algorithm, but our propsoed algorithm is better than DRLSE algorithm. Compared with DRLSE, the sensitivity, accuracy, specificity and accuracy of the proposed algorithm are 3.97%, 0.98%, 0.06%, 0.57% and 0.06% respectively, while the false positive rate is 0.06%. Sensitivity is the correct recognition of vascular pixels, and the sensitivity should be as high as possible. This shows that the proposed algorithm has strong feasibility in vascular segmentation of coronary image.

Table 1 Quantitative results for different comparison algorithms

Conclusion

The segmentation of coronary angiogram images is the key to do visualization and quantization to complicated vessel data sets. Accurate segmentation result not only can locate the focus position accurately to assist doctors to diagnose coronary heart disease, but also is the basis to rebuild three-dimensional coronary artery. As the topological structure of coronary artery is complex and the distribution of contrast medium is non-uniform, which causes the angiogram image having problems as in-distinction and low contrast ratio inevitably, and creates huge difficulty to segmentation. For this problem, a two-steps segmentation algorithm based on Hessian matrix and level set is proposed in this paper. Firstly, potential blood vessels of coronary images are preliminary extracted via Hessian matrix eigenvalues feature vectors of the geometric features and the response function. Then a new regularization and area constraint is introduced into the local data energy fitting functional. Finally, the precision of Coronary Artery image is obtained in the evolution of the level set function. Experiments show that our proposed algorithm has better performance to these comparison segmentation algorithms. In future, we will integrate the proposed model into the ultrasound equipment so as to provide accurate diagnostic results in real time.