Automatic Segmentation of Pulmonary Artery (PA) Using Customized Level Set Method in 3D (CTA) Images Yousef Ebrahimdoost1, Salah D. Qanadli2, Alireza Nikravanshalmani1, Tim J. Ellis1, Zahra Falah Shojaee3, and Jamshid Dehmeshki1, Member, IEEE 1 Faculty of Computing Information Systems and Mathematics, Kingston University, UK 2 Department of Radiology, University of Lausanne Lausanne, Switzerland 3 Health Science Department, Brunel University, Uxbridge, Middlesex UB8 3PH, UK {Farshad,
[email protected]}
ABSTRACT This paper proposes an efficient customized level set algorithm to segment Pulmonary Artery (PA) tree in 3D pulmonary Computed Tomography Angiography (CTA) images. In this algorithm, to reduce the search area the lung regions from the original image are first segmented and the heart region is extracted by selecting the regions between the lungs. A pre-processing algorithm based on Hessian matrix and its eigenvalues is used to remove the connectivity between the pulmonary artery and other nearby pulmonary organs. To extract the pulmonary artery tree, we first use a region growing method initialized by a seed point which is automatically selected within the pulmonary artery trunk in the heart region. In the second step, the segmentation of the pulmonary artery is performed using a customized 3D level set algorithm, using the output of region grower as the initial contour. We use a new stopping criterion for the proposed level set algorithm, a consideration often neglected in many level set implementations. To validate and assess the robustness of the method, 20 CT angiography datasets were used (10 free pulmonary embolism scans and 10 CT with pulmonary emboli). A very good agreement with the visual judgment was obtained in both normal and positive pulmonary emboli CT scans. Index Terms— pulmonary artery segmentation, level set, feature map, stopping criteria 1. INTRODUCTION Pulmonary artery tree segmentation is an essential requirement for some medical application, such as detection and visualization of pulmonary embolism (PE). Moreover, segmentation of the pulmonary artery tree is complicated because it has multiple connections with other anatomical structures such as the pulmonary veins which can interfere with the segmentation of pulmonary artery boundaries. Many methods have been developed to perform the segmentation of an elongated shape such a pulmonary artery. In [1-3] a tubular
enhancement filter has been employed using a combination of the eigenvalues of a Hessian matrix followed by thresholding. Zahlten used a wave propagation method which proceeds by recursively marching through3D neighbors of a seed voxel using image intensity, also based on thresholing. This algorithm creates a bifurcation graph by looking at the connectivity of the wavefront [4]. The method reported by Sebbe et al [5] uses slice marching and fast marching algorithms, which are less sensitive to irregular vessels boundaries. To segment the pulmonary artery tree more accurately, we proposed a hybrid method based on region growing and a level set approach. Firstly, the lung region is extracted from the original image using thresholding and morphological operators. Next, the region between the lungs is segmented to find a seed point for the region growing algorithm. The Hessian matrix and its eigenvalues are employed to enhance the boundaries between the different organs. The initial region is grown from a seed point which is selected automatically within the pulmonary artery trunk forms the initial contour for the level set algorithm. There are several advantages associated with the use of level sets, which are able to handle the topological changes of the contours and achieve sub-pixel accuracy for detection of the vessel boundaries. The proposed technique is an extension of our previous research applied on pulmonary embolism (PE) and brain aneurysms (BA) segmentation [6], [7] with the inclusion of a new stopping criterion which has frequently been ignored by other level set implementations. The remainder of this paper organized as follows: section-2 presents the proposed method: section-3 presents the experimental results and section-4 the conclusion. 2. PROPOSED METHOD Our method consists of three main steps: the first step involves the extraction of lung region from the CTA volume data: the second step enhances the boundaries of objects using a feature map based on the eigenvalues of Hessian matrix: the final step segments the pulmonary artery tree using a level set method
using an initial contour generated by the region growing algorithm. 2.1. Lung segmentation Lung segmentation is a crucial pre-processing step prior to segmentation of the pulmonary artery tree. In our algorithm we separate the lung region (body region) from the background (non-body region) using a threshold which is calculated iteratively [8]:
(1)
where and are the mean gray value of the body and non-body voxels, respectively, after separating the body from non-body region with threshold . Using an initial threshold , the procedure (1) updates the thresholds until the condition holds. The trachea is segmented using an up to down region growing algorithm, starting from a seed point which is automatically selected from the top slices by searching for a connected region close to the middle of the image. The result of trachea segmentation is subtracted from the result of lung segmentation to remove the trachea. Finally, to fill empty spaces inside the lung region created by blood vessels, a morphological dilation operator, followed by erosion operator, is performed after separating the right lung region from the left lung region. Figure (1) shows the lung segmentation using the proposed method with = -400 HU.
feature map is constructed by boundary enhancement filter:
,13
!,
2
where, λ$,% p denotes the k-th eigenvalues of Hessian matrix ($ p of image I$ p at scale σ.
Parameter introduced in [9] is the -normalized derivative for a normalized second derivative. In our experiment, a mask is constructed based on a predefined threshold value + applied on to remove the connectivity between the pulmonary artery and other organs located by the region growing algorithm. Figure (2) shows results of feature map filter on CTA images using 1.5 . 2.0, + 25. The parameter is chosen experimentally as 1.5.
Fig. 2. Figure shows removal of the connectivity between the pulmonary artery and other organs. The first row represents the masks after thresholing of two row images. The second row shows the connectivity removed between the pulmonary artery and other organ after using the feature map.
2.3 Level set algorithm (a) Axial view
(b) 3D lung rendering
Fig. 1. Lung segmentation using the proposed method. (a) shows the right and left separated lungs in an axial view. (b) shows 3D rendered view of the final segmentation.
2.2. Feature Map A feature map is created based on the eigenvalues of the Hessian matrix which enhances the boundary between those organs which have a high intensity value and are close to the pulmonary artery. This feature map employs the second derivatives of the image intensity after smoothing by a 3D Gaussian filter at multiple scales in order to identify the dark boundaries between the two bright structures. To remove the connectivity between the pulmonary artery and other tubular structures, such as the pulmonary vein and the aorta, the
Level set methods have been widely applied in image processing. Malladi and Sethian [10] first proposed this method for image segmentation. An active contour is embedded implicitly as a constant set in a function defined in a higher dimensional space. Level sets can have important advantages over other methods: curves or surfaces can be represented as level sets of higher dimensionality using functions that ensure seamless treatment of topological changes, and they are well adapted to numerical implementation in any dimension. In the level set method the segmentation is represented by the zero level set of an embedding level set function Φ. By evolving the embedding function in an appropriate way, the 3D surface representing the segmentation evolves towards the object boundary. The equation of the evolution of Φ, inside which the surface is
embedded as the level set, is then given by the following equation: 12 3 4|61| 0 3
in which the speed function F plays the most important role in the level set method. Due to the advantages of level set method, we propose to use the level set methodology to segment the pulmonary artery tree in 3D CTA datasets. The next sections presents the proposed level set method and we then discuss our new stopping criterion.
12 ip11 ^ |61|
2.3.1. The proposed customized Level set To segment the pulmonary artery tree, the level set method proposed in [11] with new external energy has been used: 61 < 3 94:; < =0, ∞= ? @ A |61| @ A 1, B, C, 0 1 , B, C 4
12 |61| 8.9 84:;
where 4EF2 is an external energy function composed of two energy functions.
4EF2 4EGHE ? 4I 2E JI2K (5) The first one is based on edge strength which can be a positive and decreasing function that depends on the gradient of the image u . This function stops the front at object boundaries, such that: M 4EGHE Q 0 NOP
For instance: 4EGHE , B, C
|RSF,K,T UV F,K,T|W
(6)
where G u , a smoother version of u , is the convolution of the image u with the Gaussian [12]. The second one is based on intensity values which defined as:
4I 2E JI2K
c d, B, C e1 [exp^1 /2 ? J e1 f d, B, C f e2 h (7) 1 Z |`F,K,K|ab c d, B, C g e2 Y exp^1 /2 ? J |`F,K,K|ab
where e1 and e2 are defined as minimum and maximum CT values of pulmonary artery and i, are tuning parameters of function which are set to 100 and 2 respectively. This function prevents front propagation to the background where the gradient of the boundary of object is weak. For the level set formulation in eq (4), Φ x, y, z is the initial level set function, and v g 0 is constant. The zero level surface moves in the normal direction with speed F given by: 4 ^.9 m4EF2 |Rn|o 3 94EF2 Rn
The surface stops on the desired boundary where 4 vanishes. The constant v is a correction term which is chosen so that the speed function in eq (8), remains positive. In the level set method described in [13], the evolving contour usually develops shocks and sharp shapes during the evolution. This makes the computational results highly inaccurate. To overcome these problems, a numerical scheme is used to initialize the function Φ as a signed distance function before the evolution. So in the level set method, the re-initialization process is crucial. The standard reinitialization method is used to solve the following equation:
(8)
9
where Φ is the function to be re-initialized, and signΦ is the sign function. The approximation of (4) by a finite difference scheme can be simply written as: c c c 1I,v, 3 w;xy1I,v, z 1I,v,
10
where, HΦ|,},% is the approximation of the right hand side in (4) by the central spatial difference scheme and δt is an algorithmic time-step. For stability of the level set method we used the Courant-Fredric’s-Levy (CFL) condition 4cF . w; yF , K , T z
(11)
where, h , h and h
are the grid spacing in the x, y and z directions respectively and F is the maximum absolute evolving speed of all the points on the grid. This means that the evolving contour cannot cross more than one grid at each time step. In practice, in order to reduce the running time, we used a narrow band level set method with pixel/voxel width around the interface. 2.3.2 Initial contour in level set In this section, we present how the initial contour (surface) within pulmonary artery is selected. The initial contour is extracted by performing region growing using a seed point which is automatically selected within the pulmonary artery trunk by thresholding the original image data. These thresholds are selected by analyzing a CT-value profile. Based on anatomical analysis, there are two main groups in the heart region: 1) the pulmonary artery, superior vena cava, right atrium and ventricle which have the highest CT value, and 2) the left atrium and ventricle, aorta and pulmonary vein which have a lower average CT value than pulmonary artery. Fig. 3 shows the distribution of CT values in the heart region, from which the first peak can be related to CT value of group (2) and the next peak can be associated to group (1). Hence a suitable threshold for segmentation of the pulmonary
artery is set as a value slightly higher than 1200 shown in Fig. 3, which is minimum point between two peaks.
we are confident that will cover the object of interest. During the process, the mean energy values of N last iterations are kept as a profile. The process terminates where the variance of this profile vanishes. In the proposed method, the mean energy values of 25 last iterations are kept as a profile. Fig. 4 shows a sample of applying the proposed method for finding the optimal iteration number in 2D pulmonary artery trunk segmentation.
Fig 3. Distribution of CT value in heart region
To ensure that there are no more connections between the pulmonary artery and other organs a morphological erosion operator is used. Next a region growing algorithm is started from a seed point chosen within the pulmonary artery trunk. This seed point is automatically selected from the middle slices between two circular shapes. The segmented region using region growing step is selected as an initial contour for the level set algorithm.
(a)
2.3.3. Stopping criterion in level set Level set algorithms commonly chose the stopping criterion for the evolution process using a large threshold N . This creates inherent problems associated with this form of stopping criteria. Firstly we may achieve the desired segmentation before the iteration process ends, hence performing much unnecessary computation and increasing the algorithm’s execution time. This approach may also cause the evolving curve to cross the boundary of object. Secondly, the speed function, which forces the embedded curve into a steady-state, is leaky, so it makes the segmentation results unsatisfactory after long time iterations. As a consequence we should not choose a large number for the stopping criterion. We propose a new stopping criterion which stops the evolution process at the most desirable stage by looking at the mean of energy E which forces curve toward the object boundaries in each iteration:
∫ Fdδ
Ω
∫ dδ
(12)
where Ω is a narrow band of the evolving surface. We first applied the method with an aggressive iteration value which is determined based on individual application. In our application, we chose the 900 (empirically) for the above parameter and Ω
(b)
(c)
Fig 4. (a) shows suitable iteration number for pulmonary trunk segmentation (the process terminates at N 560). (b) Shows the pulmonary trunk segmentation after after 560 iterations. (c) shows the segmentation result after 900 iterations.The curve crossed the pulmonary trunk boundary due to using a large iteration number
Based on the mean energy profile (Fig.4-a), the best iteration number to segment the pulmonary artery trunk is 560. Fig. 4-b shows the segmentation of the pulmonary artery trunk at iteration number 550. Using a large iteration number ( 900 causes the evolving curve to cross the object boundary (Fig. 4-c). 3. EXPREMENTAL RESULTS
This section presents the implementation details and results. To validate and assess the robustness of the method, 20 CT angiography datasets were used (10 free pulmonary embolism scans and 10 CT with pulmonary emboli). These CTA images (with a pixel spacing of [0.66, 0.66] mm and 1.00 mm slice thickness) were collected at Lausanne University (Switzerland). The software was successfully implemented. The system provided a segmentation of the PA till 6th division, which included the segmental level. A very good agreement with the visual judgment was obtained in both normal and positive pulmonary emboli CT scans.
Fig.5 shows the results of pulmonary artery tree segmentation using our methodology. Fig. 5-b shows the final result. Based on the new stopping criterion the optimum iteration number is 60where the variance of mean energy profile in 25 last iterations vanishes (Fig. 5-a).
The proposed level set algorithm was applied to segment the pulmonary artery using the segmented region taken from the region growing step as an initial contour. A new stopping criterion was used for the level set algorithm which was shown to be more effective than previous criteria. The technique provides promising results for pulmonary artery tree segmentation in CTA images. Future development should focus on further refinement of the method to detect the pulmonary embolism. 5. REFERENCES [1]
[2]
[3]
(a)
[4]
[5]
[6]
(b) Fig 5. (a) shows the mean energy profile of the level set algorithm, (b) the completed segmentation of pulmonary Artery(PA).
Parameter Optimization in level set: The initial surface was selected within the pulmonary artery taken from region growing step. Gaussian smoothing has been applied using a cubic kernel of size 3, standard deviation 0.5 and the width of the narrow band was selected as 1.2. The other optimized parameters values are defined in their relevant section.
[7]
[8]
[9]
[10]
4. CONCLUSION [11]
In this study we have investigated the use of region growing and a customized level set techniques for the segmentation of the pulmonary artery tree. Binary image masks, associated with regions of lung and heart were extracted to reduce the search area. A feature map was created to remove the connectivity between pulmonary artery and adjacent organs.
[12] [13]
Y. Sato, S. Nakajima, N. Shiraga, et al., “Three-dimensional multi-scale line filter for segmentation and visualization of curvilinear structures in medical images,” Medical Image Analysis, vol. 2, no. 2, pp. 143–168, 1998. K. Krissian, G. Malandain, N. Ayache, R. Vaillant, and Y.Trousset, “Model-based detection of tubular structures in 3Dimages,” Computer Vision and Image Understanding, vol. 80,no. 2, pp. 130–171, 2000. H. Shikata, E. A. Huffman, and M. Sonka, “Automated segmentation of pulmonary vascular tree from 3D CT images,”in Medical Imaging 2004: Physiology, Function, and Structure from Medical Images, vol. 5369 of Proceedings of the SPIE, pp. 107–116, San Diego, Calif, USA, February 2004. C. Zahlten, H. Juergens, and H.-O. Peitgen. Reconstruction of branching blood vessels from ct-data. Proceedings of the Eurographics Workshop on Visualization in Scientific Computing, Rostock, pages 41–52, June 1994. Sebbe, R., B. Gosselin, E. Coche, et al., "Pulmonary arteries segmentation and feature extraction through slice marching,"Proc.ProRISC workshop on Circuits, Systems and Signal Processing. (2003). Y. Ebrahim Doost Kanafi, J. Dehmeshki, T. Ellis, M. Firoozbakht, and S.D. Qanadli, “3D Pulmonary Embolism (PE) Segmentation of CTA images Using Level Sets,” International Conference on Image Processing, Computer Vision, & Pattern Recognition (IPCV'10), vol 2, pp. 585-589, USA, 2010. A. Nikravanshalmani, S. D. Qanadli,J, T. J. Ellis, M. Crocker, Y. Ebrahimdoost, M. Karamimohammadi, J. Dehmeshki, “ThreeDimensional Semi-Auotomatic Segmentation of Intracranial Aneurysms in CTA”, The 10th IEEE International Conference on Information Technology and Applications in Biomedicine ( ITAB 2010), Corfu, Greece, 2010. S. Hu, E. Hoffman, and J. Reinhardt, “Automatic lung segmentation for accurate quantitation of volumetric x-ray ct images,” IEEE Transactions on Medical Imaging 20, pp. 490–498, June 2001. T. Lindeberg, "Feature detection with automatic scale selection,"International Journal of Computer Vision. 30(2),79116(1998). R. Malladi, J. A. Sethian, and B. C. Vemuri, “Shape modeling with front propagation: a level set approach,” IEEE Trans. Patt. Anal. Mach. Intell., vol. 17, no. 2, 1995, pp. 158–175. V. Caselles, R. Kimmel and G. Sapiro, “Geodesic active contours,” Int. J. Comput. Vision, 22 (1), 1997, pp. 61–79. T. Chan, and L. Vese, “Active contours without edges,” IEEE Trans. Image Process. , Vol. 10, Feb 2001, pp. 266-277. S. Osher, and J. A Sethian, “Fronts propagating with curvature dependent speed: Algorithms based on Hamilton-Jacobi formulation,” J. Comput. Phys., Vol.79, 1998, pp. 12-49.