1 Introduction

VUS is a catheter-based imaging approach used in the medical application for the clear assessment of the arterial wall internal echomorphology. It is particularly used in the study of atherosclerotic disease. IVUS produces cross-sectional images of the blood vessels that provide the quantitative evaluation of the blood vessel wall, information about the atherosclerotic lesions and shape and size of the plaque. A catheter carrying a rotating ultrasound (US) emitter is introduced inside the vessel. A piezoelectric transducer transmits US waves and collects the reflected components. The IVUS image obtained by processing the received echoes is a 360° tomographic view of the inner arterial walls. Hence, IVUS is an appropriate technique for in-vivo characterization of the coronary plaques composition (Seabra et al. 2011).

Segmentation plays a significant role in the medical imaging applications to obtain the qualitative and quantitative measurements of the anatomical structures. Automatic segmentation of the anatomical structures in the ultrasound image is a really challenging task due to the presence of ultrasound speckle, catheter artifacts or calcification shadows. The most prevalent blood vessel segmentation methods are based on the multiscale Hessian approach for handling the blood vessels with varying width (Yousefi et al. 2015). This approach requires multiple processing of the whole image to determine the blood vessel regions. Thus leads to the increase in the overall processing time. To overcome the issues in the existing segmentation approaches, this paper presents an efficient SOM and EM-based approach for the segmentation of cross-sectional view of the IVUS blood vessel image. The directional filtering is used to improve the SNR of the blood vessel image. The Hough transform is used for predicting the circle in the image. Segmentation of the image is performed using the SOM and EM algorithm. After the segmentation process, extraction of the common pixels is performed. GLCM is applied for extracting features from the image. F-RVM based classification of the image is performed for the classification of the plaques. The performance of the proposed approach is evaluated by comparing it with the existing image segmentation techniques. From the comparison results, it is clearly observed that the proposed approach is highly efficient than the existing techniques.

The rest of the paper is organized as follows: Section 2 describes the existing blood vessel image segmentation techniques. Section 3 explains the proposed SOM-based approach. Section 4 presents the performance evaluation of the proposed method. Section V involves the discussion about the conclusion and future implementation of the proposed work.

2 Related work

This section describes the existing research works related to the blood vessel image segmentation techniques. Yousefi et al. (2015) developed a hybrid Hessian/intensity-based method for segmenting and quantifying the shape and diameter of the blood vessels. Efficient quantification of micro-angiograms in ophthalmology application and diagnosing the retinal eye diseases was achieved. Kumar et al. (2015) presented a novel method for blood vessel segmentation, centerline tracking and radius estimation. The accuracy and processing speed of the proposed method were higher than the existing centerline extraction methods. Kwee-Seong (2006) presented a review of the image segmentation methods using the features developed at the medical image analysis laboratory. Kumar et al. (2015) presented a novel and semi-automatic method for the segmentation and centerline extraction of the blood vessel. Pellegrini et al. (2014) proposed a supervised approach for blood vessel segmentation in the laser opthalmological applications.

Klooster (2014) developed a novel automated image segmentation and presented a three-dimensional (3D) vessel model for the automatic segmentation of the vessel wall of the carotid artery. Lasso et al. (2014) implemented a digital algorithm that allows the digital image segmentation and skeletonization for the early detection of Diabetic Retinopathy. The filtered image with high contrast and resolution was achieved. Koli et al. (2014) presented morphology approaches for vessel segmentation. Better segmentation of the major vessel and minor vessels was achieved. Seabra et al. (2011) proposed the modeling of the tissue echomorphology using Rayleigh mixture model (RMM). Different types of plaques was described accurately. Pelapur et al. (2014) proposed an image fusion approach for vessel segmentation with robust adaptive filtering. The segmentation quality was improved by deblurring the out-of-focus regions. Hong et al. (2014) introduced a localized hybrid level-set method for the segmentation of 3D vessel image.

Ding and Bai (2014) reported the experimental results of various vessel image segmentation methods. Retinal vessel image database and micro-computed tomography (CT) images were used for the 2D and 3D experiments. Balocco et al. (2014) described an evaluation framework that allows standardized and numerical comparison of the IVUS lumen and media segmentation algorithms. Sofian et al. (2015) presented an automated segmentation method to detect the boundary on the cross sectional view of the artery of patients having plaques. Luo et al. (2014) reconstructed the morphometric data of CT scans with 11 arteries from IVUS. Destrempes et al. (2014) analyzed the feasibility of 2D segmentation fast-marching method (FMM) for IVUS imaging of the coronary arteries. Widynski et al. (2014) proposed a tracking method to extract the inner and outer contours of the vessel wall. Bourantas et al. (2014) evaluated a novel semi-automated border detection method to identify the external elastic membrane or borders of stents and lumen in the IVUS images of human coronary arteries. Ravindraiah and Tejaswini (2013) presented a comprehensive review for the researchers involved in the EM-based medical image processing application.

3 SOM and EM-based IVUS blood vessel image segmentation approach

This section explains the proposed SOM and EM-based approach. In our proposed work, the directional filter improves the SNR of the blood vessel image. The Hough transform predicts the circle and replaces the pixel in the image. Segmentation of the image is performed using the SOM and EM algorithm. After the segmentation process, the common pixels are extracted. GLCM is applied to extract features from the image. F-RVM based classification of the image is performed. Figure 1 shows the overall flow diagram of the proposed approach.

Fig. 1
figure 1

Overall flow diagram of the proposed approach

3.1 Directional filter

A directional filter is defined as an edge detector used for computing the first derivatives of the image, during large variation between the adjacent pixel values. This filter is designed for any direction within a given space. The x and y directional filters are used to compute the derivatives in the respective directions.

The original images and filtered images are shown in Fig. 2a, b.

Fig. 2
figure 2

a Original images and b directional filtered images

3.2 Hough transform

The Hough Transform is an important technique in image processing to extract the structural features in the image. For detecting lines in the images, initially the image is binarized using the thresholding technique and then the positive instances are arranged in a dataset. The Hough transform is a technique for isolating the particular structural features within an image. The main advantages of this technique are its high tolerance level of the gaps in the feature boundary descriptions and high resistivity to the image noise. It is also useful for computing a global description of the features. The Hough transform is used for predicting the circle and pixel replacement in the IVUS blood vessel image. Figure 3a–c shows the Hough transformed images, Hough transform-based circle prediction images and Hough Transform-based pixel replacement images.

Fig. 3
figure 3

a Hough transformed images, b Hough transform-based circle prediction images, c Hough transform-based pixel replacement images

3.3 Segmentation

In our proposed work, segmentation of the images is performed using the SOM-based method and EM algorithm.

3.3.1 SOM-based image segmentation

The SOM (Kohonen 1998, Wu and Chow 2004, Borman 2004, Li et al. 2008) is an unsupervised artificial neural network for clustering the high-dimensional data. The SOM algorithm applies a nonlinear topology mapping of the high-dimensional input data space onto the low-dimension discrete space. This is called as the topological map that consists of ‘m’ neurons located on a regular low dimensional grid that defines their neighbourhood relationships. Each neuron ‘C’ is represented by a weight vector \(W_{C} = \left[ {W_{1}\,^{\wedge}\,W_{d} } \right]\) where ‘d’ is the dimension of the input vector. The SOM consists of ‘C’ neurons located on a regular low-dimensional grid. The lattice of the grid is either the hexagonal or rectangular shape. The SOM algorithm is iterative. Each neuron ‘c’ has a d-dimensional feature vector \(w_{c} = \left[ {w_{c1} , \ldots \ldots ,w_{cd} } \right]\). At each training step ‘t’, a sample data vector x(t) is randomly chosen from the training set. The distances between the sample data vector and all feature vectors are computed. The winning neuron ‘m’ is the neuron with the feature vector located close to the sample data vector.

\(m = \arg \;{\text{min}}_{c} \left\| {x\left( t \right) - w_{c} } \right\|\), \({\text{m}}\;{ \in }\;\left\{ {1, \ldots \ldots ,{\text{M}}} \right\}.\) A set of neighboring nodes of the winning node is denoted as \(N_{m} \cdot H_{cm} \left( t \right)\) is defined as the neighborhood kernel function around the winning neuron ‘m’ at the time ‘t’. The neighborhood kernel function is a non-increasing function of time and distance of the neuron ‘c’ from ‘m’. The kernel is considered as a Gaussian function

$${\text{H}}_{\text{cm}} \left( {\text{t}} \right) = {\text{e}}^{{ - \frac{{{\text{p}}_{\text{c}} - {\text{p}}_{\text{m}}^{2} }}{{2\upsigma\left( {\text{t}} \right)^{2} }}}} ,\quad {\text{c}}\,{ \in }\,{\text{N}}_{\text{m}}$$
(1)

where \({\text{p}}_{\text{c}}\) is the coordinates of the neuron ‘c’ on the output grid and \(\sigma \left( t \right)\) is kernel width. The weight update fule in the SOM algorithm is written as

$${\text{w}}_{\text{c}} \left( {{\text{t}} + 1} \right) = \left\{ {\begin{aligned} &{{\text{w}}_{\text{c}} \left( {\text{t}} \right) + \varepsilon \left( {\text{t}} \right){\text{H}}_{\text{cm}} \left( {\text{t}} \right)x\left( {\text{t}} \right) }\\ &{ - {\text{w}}_{\text{c}} \left( {\text{t}} \right) \,\,\quad \forall c\; \in \;{\text{N}}_{\text{m}} } \hfill \\ &{{\text{w}}_{\text{c}} \left( {\text{t}} \right)\qquad {\text{Otherwise}}} \hfill \\ \end{aligned} } \right.$$
(2)

where \({\upvarepsilon}( {\text{t}} )\) is the learning rate. The learning rate and neighborhood decrease monotonically with time. Thus, the feature vectors of neighboring neurons resemble each other (Kwee-Seong 2006).

Pseudo Code for SOM:

Input: Extracted image using Hough transform, no of iterations, weights, number of epochs

For i = 1 number of epochs

               Select a sample from the input data set

               Find the “winning” neuron for the sample input

               Calculate the neighborhood

               Adjust the weights of nearby neurons

End for

The winning neuron is calculated using.

$$m = \sqrt {\mathop \sum \nolimits_{i = 0}^{d} \left( {n_{i} - v_{i} } \right)\,^{\wedge}\,2}$$
(3)

The amount to adjust each “neighbor” is determined by using the following formula

$$n_{i} \left( {t + 1} \right) = n_{i} \left( t \right) + h*\left[ {v\left( t \right) - n_{i} \left( t \right)} \right]$$
(4)

where \(n_{i} \left( t \right)\) is the weight vector of neuron ‘i’ at the regression step ‘t’, v(t) is the input vector at the regression step and h is the neighborhood function. Figure 4 shows the SOM-based clustered images.

Fig. 4
figure 4

SOM-based clustered images

3.3.2 EM algorithm

Let X be a random vector that results from a parameterized family (Kumar et al. 2015). P (X|θ) is the maximum likelihood (ML) estimate for θ. In order to estimate θ, it is typical to introduce the log likelihood function defined as,

$$L\left( \theta \right) = { \ln }\;P\left( {X |\theta } \right)$$
(5)

The likelihood fuction is a function of the parameter \(\theta\). Since ln(x) is a strictly increasing function, \(L\left( \theta \right)\) increases with the increase in the value of \(\theta\). The EM algorithm is an iterative procedure for maximizing \(L\left( \theta \right)\). After the nth iteration, the current estimate for \(\theta\) is given by \(\theta_{n}\). The difference between \(L\left( \theta \right)\) and \(L\left( {\theta_{n} } \right)\) is maximized as

$$L\left( \theta \right) - L\left( {\theta_{n} } \right) = \ln P\left( {X |\theta } \right) - \ln P\left( {X |\theta_{n} } \right)$$
(6)

The hidden variables are introduced for controlling the ML estimation. The maximization of the likelihood function is made easy with the knowledge of the hidden variables. The total probability \(P\left( {X |\theta } \right)\) along with the hidden variable ‘z’ is computed as

$$P\left( {X |\theta } \right) = \mathop \sum \limits_{z} P\left( {X |z,\theta } \right)P\left( {z |\theta } \right)$$
(7)

Then, the equation is rewritten as

$$L\left( \theta \right) - L\left( {\theta_{n} } \right) = { \ln }\;\mathop \sum \limits_{z} P\left( {X |z,\theta } \right)P\left( {z |\theta } \right) - { \ln }\;P\left( {X |\theta_{n} } \right)$$
(8)

This is also written as

$$L\left( \theta \right) \ge L\left( {\theta_{n} } \right) +\Delta \left( {\theta |\theta_{n} } \right)$$
(9)

Our main objective is to the choose the values of \(\theta\) to maximize \(L\left( \theta \right)\). Then,

$$\theta_{n + 1} = arg\;\mathop {\hbox{max} }\limits_{\theta } \left\{ {E_{{Z\left| {X,\theta_{n} } \right.}} \left\{ {lnP\left( {X |z,\theta } \right)} \right\}} \right\} .$$
(10)

Pseudocode for EM

set Lclass to inticlass

  for (epoch = 0; epoch < mepoch; ++epoch) {

       create classes based on category

       train classes on supervised items

       for (x in unsupervised items)

  {

             compute p(c|x) with Lclass

             for (c in category)

                 train classes on c weighted by p(c|x)

     }

     evaluate corpus and model probability under classes

     set Lclass to classes

     break if converged

  }

return Lclass

Figure 5 shows the EM-based segmented images. The common pixels for both SOM and EM segmentation are shown in Fig. 6. Figure 7 shows the final segmented images.

Fig. 5
figure 5

EM-based segmented images

Fig. 6
figure 6

Common pixels for both SOM and EM segmentation

Fig. 7
figure 7

Final segmented images

3.4 GLCM-based feature extraction

The GLCM is used for calculating a set of scalar quantities that describe the various aspects of the texture in the image. It defines about the linear relationship between the reference pixel ‘i’ and neighboring pixel ‘j’ located within the ROI. The GLCM features are explained below:

3.4.1 Autocorrelation

The autocorrelation is a measure of the amount of regularity and fineness of the texture present in the image.

$$D_{AC} = \frac{{\mathop \sum \nolimits_{i = 0}^{N} \mathop \sum \nolimits_{j = 0}^{N} I\left( {i,j} \right)I\left( {i + x,j + y} \right)}}{{\mathop \sum \nolimits_{i = 0}^{N} \mathop \sum \nolimits_{j = 0}^{N} I^{2} \left( {i,j} \right)}}$$
(11)

3.4.2 Contrast

Contrast is a measure of the local variations in the image. It is given by

$$D_{\text{c}} = k^{2} \left\{ {\mathop \sum \limits_{{{\text{i}} = 0}}^{{{\text{N}}_{\text{g}} - 1}} \mathop \sum \limits_{{{\text{j}} = 0}}^{{{\text{N}}_{\text{g}} - 1}} {\text{P}}\left( {{\text{i}},{\text{j}}} \right)\left| {\left| {{\text{i}} - {\text{j}}} \right| = {\text{k}}} \right.} \right\}$$
(12)

where \({\text{N}}_{\text{g}}\) is the quantized gray level.

3.4.3 Correlation

Correlation indicates the local gray-level dependency of the pixels on the texture image. It is given as

$$D_{corr} = \frac{{\mathop \sum \nolimits_{i = 0}^{{N_{g} - 1}} \mathop \sum \nolimits_{j = 0}^{{N_{g} - 1}} \left( {ij} \right) \cdot P\left( {i,j} \right) - \mu_{x} \mu_{y} }}{{\sigma_{x} \sigma_{y} }}$$
(13)

3.4.4 Cluster prominence

Cluster prominence is defined as a measure of asymmetry.

$$D_{pro} = \mathop \sum \limits_{i = 0}^{{N_{g} - 1}} \mathop \sum \limits_{j = 0}^{{N_{g} - 1}} \left( {i + j - u_{x} - u_{y} } \right)^{4} P\left( {i,j} \right)$$
(14)

3.4.5 Cluster shade

Cluster shade is a measure of the skewness of the matrix and perceptual concepts of uniformity.

$$D_{sha} = \mathop \sum \limits_{i = 0}^{{N_{g} - 1}} \mathop \sum \limits_{j = 0}^{{N_{g} - 1}} \left( {i + j - u_{x} - u_{y} } \right)^{3} P\left( {i,j} \right)$$
(15)

3.4.6 Dissimilarity

Dissimilarity is a measure of the variation between the two neighboring pixels.

$$D_{DIS} = \mathop \sum \limits_{i} \mathop \sum \limits_{j} \left| {i - j} \right| \cdot P\left( {i,j} \right)$$
(16)

3.4.7 Energy

Energy is defined as a textural uniformity measure of the pixels. It is defined as

$$E = \mathop \sum \limits_{i} \mathop \sum \limits_{j} P\left( {i,j} \right)^{2}$$
(17)

3.4.8 Entropy

Entropy (H) is a measure of the uncertainty associated with a random variable. It is determined by

$$H = - \mathop \sum \limits_{i} \mathop \sum \limits_{j} P\left( {i,j} \right){ \log }\left( {P\left( {i,j} \right)} \right)$$
(18)

3.4.9 Homogeneity

Homogeneity decreases with the increase in the contrast value, while maintaining the energy at the constant level.

$$D_{H} = \mathop \sum \limits_{i} \mathop \sum \limits_{j} \frac{1}{{1 + \left( {i - j} \right)^{2} }}P\left( {i,j} \right)$$
(19)

3.4.10 Maximum probability

Maximum probability values occur if a combination of pixels dominates the pairs of pixel in the window.

$$P_{max} = \mathop {\text{MAX}}\limits_{i,j} P\left( {i,j} \right)$$
(20)

3.5 F-RVM based classification

RVM is a Bayesian regularization framework to obtain the optimal solution for the classification of the features. For a two-class problem with training data \(X = \left( {x_{1} ,x_{2} , \ldots \ldots , x_{n} } \right)\) having class labels \(C = \left( {c_{1} ,c_{2} , \ldots \ldots , c_{n} } \right)\) with \(c_{i} \in \left( { - 1,1} \right)\). Based on the Bernoulli distribution, the likelihood is expected as

$$P\left( {c/w} \right) = \mathop \prod \limits_{i = 1}^{n} \sigma \left\{ {(y\left( {x_{i} } \right)} \right\}^{{c_{i} }} \left[ {1 - \sigma \left\{ {(y\left( {x_{i} } \right)} \right\}} \right]^{{1 - c_{i} }}$$
(21)

where \(\sigma \left( y \right)\) is the logistic sigmoid function.

$$\sigma \left( {y\left( x \right)} \right) = \frac{1}{{1 + { \exp }\left( { - y\left( x \right)} \right)}}$$
(22)

An iterative method is used to obtain \(P\left( {c/w} \right)\). Let \(\alpha_{i}^{*}\) denotes the maximum aposteriori estimate of the hyperparameter \(\alpha_{i}\). The maximum aposteriori estimate of the weights (\(W_{m}\)) is obtained by maximizing the following objective function

$$f\left( {w_{1} ,w_{2} , \ldots , w_{n} } \right) = \mathop \sum \limits_{i = 1}^{n} \log p\left( {c_{i} /w_{i} } \right) + \mathop \sum \limits_{i = 1}^{n} \log p\left( {w_{i} /\alpha_{i}^{*} } \right)$$
(23)

Only those training data having non-zero coefficients wi called as relevance vectors contribute to the decision function. The RVM classification reduces the dimensionality of feature set and correct grouping of classified feature set vectors. Then, classification of the calcified plaque, fibrotic plaque and lipidic plaque is performed. The concept of the RVM is extended by using the fuzzy membership (Pellegrini et al. 2014). With the application of the linear model and logistic sigmoid link function, the likelihood is written as

$$p\left( {t |w} \right) = \mathop \prod \limits_{n = 1}^{N} \sigma \left\{ {y\left( {x_{n} ;w} \right)} \right\}^{{t_{n} }} \left[ {1 - \sigma \left\{ {y\left( {x_{n} ;w} \right)} \right\}} \right]^{{1 - t_{n} }}$$
(24)

where the target \(t_{n} { \in }\left\{ {0,1} \right\}\). The most probable weights \(w_{MP}\) is obtained by finding the minimum value over

$$- \log \left\{ {p\left( {t |w} \right)p\left( {w |\alpha } \right)} \right\} = - \mathop \sum \limits_{n = 1}^{N} \left[ {t_{n} logy_{n} + \left( {1 - t_{n} } \right) \times \log \left( {1 - y_{n} } \right)} \right] + \frac{1}{2}w^{T} Aw$$
(25)

The first term is the sum error of data and second term is the regularization term. While introducing the fuzzy membership, the above equation is changed as

$$- \log \left\{ {p\left( {t |w} \right)p\left( {w |\alpha } \right)} \right\} = - \mathop \sum \limits_{n = 1}^{N} S_{n} \left[ {t_{n} logy_{n} + \left( {1 - t_{n} } \right) \times \log \left( {1 - y_{n} } \right)} \right] + \frac{1}{2}w^{T} Aw$$
(26)

4 Performance analysis

This section presents the performance evaluation of the proposed approach. The proposed F-RVM classification method is compared with the existing RMM (Seabra et al. 2011).

4.1 Accuracy, sensitivity and specificity

Accuracy is a measure of the correct classification results of the plaques. Sensitivity is a true positive measure indicating the correct classification rate of the plaques. Specificity is a measure of true negative classifications that denotes incorrect classification of the plaques.

$${\text{Accuracy}} = \frac{{{\text{N}}_{\text{TP}} + {\text{N}}_{\text{TN}} }}{{{\text{N}}_{\text{TP}} + {\text{N}}_{\text{TN}} + {\text{N}}_{\text{FP}} + {\text{N}}_{\text{FN}} }}$$
(27)
$${\text{Sensitivity}} = \frac{{{\text{N}}_{\text{TP}} }}{{{\text{N}}_{\text{TP}} + {\text{N}}_{\text{FN}} }}$$
(28)
$${\text{Specificity}} = \frac{{{\text{N}}_{\text{TN}} }}{{{\text{N}}_{\text{TN}} + {\text{N}}_{\text{FP}} }}$$
(29)

where NTP is the true positive measurement, NTN is the true negative measurement, NFP is the false positive measurement and NFN is the false negative measurement.

Figure 8 shows the accuracy, sensitivity and specificity analysis graph for the proposed F-RVM and existing RMM. The proposed F-RVM yields better classification accuracy, sensitivity and specificity than the RMM.

Fig. 8
figure 8

Accuracy, sensitivity and specificity analysis graph for proposed F-RVM and existing RMM

Figures 9 and 10 show the sensitivity/specificity plot of the proposed SOM and EM-based segmentation approach. The proposed segmentation approach achieves high accuracy, sensitivity and specificity due to the selection of the common pixels.

Fig. 9
figure 9

Accuracy plot of proposed SOM and EM-based segmentation approach

Fig. 10
figure 10

Sensitivity/specificity plot of proposed SOM and EM-based segmentation approach

4.2 Jaccard/Dice similarity measures

Jaccard distance is a measure of the dissimilarity between the images ‘A’ and ‘B’. This is given as

$${\text{J}}_{\text{d}} \left( {{\text{A}},{\text{B}}} \right) = 1 - {\text{J}}\left( {{\text{A}},{\text{B}}} \right) = \frac{{\left| {{\text{A}} \cap {\text{B}}} \right|}}{{\left| {{\text{A}} \cup {\text{B}}} \right|}}$$
(30)

Dice distance is a measure of the spatial overlap level between the two similarity labeled regions over the average volume of these regions.

$$D\left( {A,B} \right) = \frac{2AB}{\left| A \right| + \left| B \right|}$$
(31)

Figure 11 shows the Jaccard/Dice similarity measures of the proposed approach. From the graph, it is clearly observed that the Jaccard distance of the proposed segmentation approach is found to be low, and Dice distance is found to be higher.

Fig. 11
figure 11

Jaccard/Dice similarity measures of proposed SOM and EM-based segmentation approach

5 Conclusion and future work

An efficient SOM and EM-based segmentation approach is presented in this paper. The directional filtering is used to improve the SNR of the blood vessel image. The Hough transform is used for predicting the circle and pixel replacement in the image. Segmentation of the image is performed using the SOM and EM algorithm. GLCM is applied for extracting features from the image. F-RVM based classification of the image is performed. The proposed approach is highly efficient than the existing techniques. Our future work is to obtain the shape features of the IVUS blood vessel image for achieving better plague classification accuracy.