• No results found

CHAPTER 4 AUTOMATIC CORONARY ARTERY RECONSTRUCTION

4.3 Centerline Extraction

4.3.1 Evaluation of speed functions for the fast marching method

As pointed out in the previous section, the fast marching method requires a speed function that has a higher values along the centerline as compared to the values toward the edges. In this section, we will see that highly localized speed functions such as the squared sum of eigenvalues of the Hessian produces accurate centerlines. Most of the speed functions we consider here are based on the second order derivatives of the distance transform as already discussed in the previous section.

Figure 4.12 shows the centerline of the two branches of the object for different speed functions. Figure 4.12 (a) uses the uniform speed in the interior of the object which does not produce a path centered to the object. Figure 4.12 (b) uses the distance transform, figure 4.12 (c) uses the Laplacian or the divergence of gradient of the distance transform, figure 4.12 (d) uses the squared sum of second order derivatives of the distance transform, figure 4.12 (e) uses the squared sum of the eigenvalues of the Hessian matrix of the distance transform, and figure 4.12 (f) uses the logarithm of inverse magnitude of the Gradient Vector

Flow (GVF) [95] as speed functions for calculating the centerline.

The gradient vector flow (GVF) algorithm was primarily developed as an external force field for image segmentation by using an active contour model. In such models an initial contour known as a snake [57] is iteratively guided toward the desired image features such as edges by an external force field and the contour itself is kept smooth by its internal force. The external force field is the gradient or the vector of the partial derivatives of the edge written as ∇Gσ ∗I, where Gσ is the Gaussian kernel with a standard deviation of σ used

for smoothing the imageI. Edge found by using standard edge detector such as Canny may also be used in place of the image I for edge localization. The smoothing may be done at multiple scale spaces by choosing higherσ to extend the force field required to pull the snake toward the edges. However, the smoothing also blurs the edges and may even fuse small structures lying close [96].

The GVF algorithm [95] diffuses the edge gradient to homogeneous region by minimizing the following energy functional,

E =

Z Z

µ∇2v+|∇f|2|v− ∇f|2dxdy, (4.19)

where v(x, y) = [u(x, y), v(x, y)] is the gradient vector flow field, ∇f is the gradient of the edge, ∇2 is the Laplacian operator or

2 ∂x2,

∂2

∂y2. The above equation can be solved

iteratively as discussed in [95] to find the vector v. The GVF of an object has also been used for finding centerline [96] by applying a vesselness filter [76] on the response. The vectors produced by GVF algorithm are directed toward the boundary of the object and have minimal response in the center. We used the magnitude of gradient of the image object to find the edge map as shown in figure 4.13 (a) and then applied the GVF algorithm. To maximize the response in center we inverted the normalized magnitude of the GVF response and took its logarithm. The speed function by using GVF is shown in figure 4.13 (b).

As seen in figure 4.12 (a) the uniform speed function is unacceptable for finding the centerline, and figure 4.12 (f) shows that the GVF based speed function produces a path that is not centered to the object. Speed functions based on distance transform and its

(a) (b)

(c) (d)

(e) (f)

Figure 4.12 Centerline traced by using the fast-marching method with different speed func- tions. (a) Uniform, (b) distance transform,(c) Laplacian of the distance transform, (d) squared magnitude of the second order derivatives of the distance transform, (e) squared magnitude of eigenvalues of Hessian of the distance transform, and (f) gradient vector flow (GVF) of edge map speed functions.

(a) (b)

Figure 4.13 Gradient vector flow based speed function. (a) Magnitude of the gradient vectors of the original image used as the edge map for calculating the gradient vector flow speed function. (b) Gradient vector flow derived from the edge map used as a speed function for the fast marching method.

second order derivatives produce centered path when used with the fast marching as shown in figure 4.12 (b),(c),(d), and (e).

We compared these further based on the consistency of response when the source point for generating wave front are changed. Figure 4.14 shows skeleton of an object created by combining centerlines of the object from one end point to the other. We used the fast marching method for generating the centerline, for which three points marked 1, 2 and 3 were used as sources separately. The red, green, and yellow lines are the skeleton generated by using points 1, 2, and 3 as source points respectively. Ideally all three skeletons should completely overlap with each other for producing localized and accurate centerlines. The distance transform speed function is not localized to the centerline and hence the skeleton are wide apart from each other as shown in figure 4.14 (a). Based on the overlap of the centerlines, the GVF based speed function shown in figure 4.14 (b) is better than the distance transform but still has wide separation in the center of the object. Figure 4.14 (c), (d), and (e) show the skeletons by using Laplacian of the distance transform, the squared sum of the second order derivative, and squared sum of eigenvalues of Hessian of the distance transform respectively. The latter three are all acceptable for tracing centerline with the last two slightly better than the Laplacian response. Although the squared sum of derivatives and the squared sum of eigenvalues of Hessian based skeletons are virtually indistinguishable, the

1 2 3 (a) 1 2 3 (b) 1 2 3 (c) 1 2 3 (d) 1 2 3 (e)

Figure 4.14 Consistency of skeletons of an object found by using the fast-marching method with different source points and speed functions. Three different points, 1, 2 and 3 are separately used as the source of the wavefront. Red skeleton corresponds to source point 1, green for source point 2 and yellow for source point 3. The skeletons found by using (a) distance transform, (b) gradient vector flow, (c) squared sum of second order derivatives of the distance transform, (d) Laplacian of the distance transform, and (e), squared sum of the eigenvalues of Hessian of the distance transform as speed functions.

Hessian based response is highly localized to centerline with minimal response to the edge as seen in figure 4.9(f) and (g). This is also shown in figure 4.15 where the squared sum of second derivatives has high response for edges as well as centerline so that an outline of the object can be traced whereas the Hessian based output has very low response for the edges.

(a) (b)

Figure 4.15 Squared sum of second derivatives of the distance transform of a 2D object. (a) The squared sum of second derivatives in the x and y directions (b) Squared sum of the eigenvalues of the Hessian.

As already discussed in the previous section since the eigenvalues of the Hessian give the highest second order derivatives in directions orthogonal to each other, the square sum of these values gives highest response to high curvature points. As the distance transform of an object has the highest curvature points along the medial axis, the squared sum of eigenvalue of Hessian provides very localized response to the medial axis. Furthermore, it was also seen in this section that the edge response of the Hessian was lower than that for the squared sum of the second order directional derivatives in the x and y direction. Therefore the squared sum of eigenvalues of Hessian can directly be used to extract centerline by using a thresholding step. Therefore, for extracting centerline of a particular branch it is an excellent preprocessing step.