SlideShare a Scribd company logo
Acceleration of the Front Propagation Segmentation
Algorithm: Towards Tumor Volumetrics

Habanero Multicore
Software Project

Yunming Zhang, Vincent Cave, Vivek Sarkar, Zoran Budimlic
Alex A.T. Bui
Introduction

Rice University
Dept of Computer Science
Habanero C

Results
Results

For years, the accepted approach to assessing a cancer patient’s response to
treatment based on a measurement of the greatest diameter called the Response
Evaluation Criteria for Solid Tumors (RECIST). This gross measure neither takes
advantage of the information provided by increasingly sophisticated imaging
techniques nor incorporates information across multiple image slices. We present
initial work on implementing and accelerating a three-dimensional front propagation
segmentation algorithm described by J.A. Sethian in “A fast marching level set
method for monotonically advancing fronts.” This poster describes the
implementation process, initial benchmark results, and challenges encountered.

• The 3D segmentation algorithm uses async and finish to spawn tasks operating on
different data in parallel. Each task traces the contour on an individual 2D slice of the
3D image.
• In Habanero C, async<statement>, causes the parent task to fork a new child task
that executes the task defined inside statement. The task returns immediately once
finished. In order to synchronize the parallel tasks, the finish <statement> is used to
perform a join operation that causes the parent task to execute statement and then
wait until all the tasks created within statement have terminate.

Algorithm

• The habanero-C run time uses a work stealing scheduler to dynamically map tasks to
processors. The run time supports work-first and help-first policies along with places
for locality.

Distance Calculation
1.The algorithm starts by extending the image by one pixel in every direction.
2.From a user-defined seed point, the algorithm expands in all directions in three
dimensions based on Dijkstra’s algorithm, where every pixel is regarded as a
node in a graph and adjacent pixels are neighbors in the graph. Every iteration,
a point closest to the current contour is selected based on its grey value
difference to points on the edge of the current contour.
3.The expansions stops at any point that has a grey value change greater than a
given threshold, which is decided empirically and interactively.

Discussions
 d

Figure 4. Some results from the segmentation and contour tracing
algorithm on actual medical image of patient’s lungs scan.

Parallelization
Parallelization
Figure 1. Extending the original image

Figure 2. Expansion from the seed point(1,1,0).
Numbers are the order.

Contour Tracing
1.Given a binary image, traces contours that outline all regions in the 2D image
point by point.
2.If multiple regions are present, the algorithm will try to select a region based on
its proximity to the seed point and its area.

A naïve parallel implementation of the algorithm is written using Habanero C. Contour
tracing was identified as a computationally-expensive step in the algorithm. As a
result, work was done to redesign the algorithm so that no longer has shared memory
access between the tracing of each slice (i.e., the original algorithm was heavily
dependent on global variables). In the modified algorithm, tracing of different slices is
now executed in parallel to achieve maximum speed up.
Dimensions(pixels)

Single core(sec)

Dual Core(sec)

Speed Up

128 * 128 * 11
Figure 3. Contours traced from
the given images.

56

0.11

0.08

1.38

512 * 512 * 8

1.25

0.99

4.45

3.52

1.26

Discussions

Some future improvements include:
•Rewriting the distance calculation and contour tracing algorithms, which are inherently
sequential, for further speed up.
•Determining an approach for estimating the tolerance value
•Automating the detection of the seed point and improvement of the algorithm to
exclude regions of the image that are not part of the nodule (e.g., exclude the chest
wall).
•Achieving additional speed up by targeting additional hardware platforms.

1.26

512 * 512 * 29

In this project, we ported the original java implementation of the algorithm into Habanero
C, which required rewriting several library classes. We introduced an improved heap
implementation to achieve better performance. we also improved the contour tracing
algorithm. On significant challenge is adapting this general-purpose algorithm for use in
the medical domain. We tested the algorithm on a variety of chest computed
tomography (CT) images with abnormal nodules. While the algorithm was able to
accurately capture areas where the boundary of the nodule is distinct (e.g., areas where
the nodule is surrounded by air), the segmentation would often bleed into surrounding
areas when the nodule was attached to the chest wall.

This work is funded by the National Science Foundation Expeditions
in Computing Award (NSF CCF-0926127).

More Related Content

PDF
Disparity Estimation by a Real Time Approximation Algorithm
PDF
LIDAR POINT CLOUD CLASSIFICATION USING EXPECTATION MAXIMIZATION ALGORITHM
PDF
Lidar Point Cloud Classification Using Expectation Maximization Algorithm
PPTX
Comparison of Segmentation Algorithms and Estimation of Optimal Segmentation ...
PDF
Stereo matching based on absolute differences for multiple objects detection
PDF
Asilomar09 compressive superres
PPTX
A study and comparison of different image segmentation algorithms
DOCX
A fast single image haze removal algorithm using color attenuation prior
Disparity Estimation by a Real Time Approximation Algorithm
LIDAR POINT CLOUD CLASSIFICATION USING EXPECTATION MAXIMIZATION ALGORITHM
Lidar Point Cloud Classification Using Expectation Maximization Algorithm
Comparison of Segmentation Algorithms and Estimation of Optimal Segmentation ...
Stereo matching based on absolute differences for multiple objects detection
Asilomar09 compressive superres
A study and comparison of different image segmentation algorithms
A fast single image haze removal algorithm using color attenuation prior

What's hot (20)

PDF
From filtered back-projection to statistical tomography reconstruction
PDF
NMS and Thresholding Architecture used for FPGA based Canny Edge Detector for...
PDF
An Image Segmentation and Classification for Brain Tumor Detection using Pill...
PDF
Survey on Haze Removal Techniques
DOCX
Haze removal for a single remote sensing image based on deformed haze imaging...
PDF
Paper 58 disparity-of_stereo_images_by_self_adaptive_algorithm
PPTX
Image reconstruction in computed tomography
PDF
Basics of dip
PPT
Image mosaicing
PDF
An efficient image compression algorithm using dct biorthogonal wavelet trans...
PPTX
Inverse problems in medical imaging
PPT
Locally_adaptive.ppt
PDF
Optimization of Macro Block Size for Adaptive Rood Pattern Search Block Match...
PPT
The single image dehazing based on efficient transmission estimation
PPTX
Roy Presen
PDF
MNIST and machine learning - presentation
PPTX
Human machine interaction using Hand gesture recognition
PDF
JBSC_online
PDF
Comparison of various Image Registration Techniques with the Proposed Hybrid ...
From filtered back-projection to statistical tomography reconstruction
NMS and Thresholding Architecture used for FPGA based Canny Edge Detector for...
An Image Segmentation and Classification for Brain Tumor Detection using Pill...
Survey on Haze Removal Techniques
Haze removal for a single remote sensing image based on deformed haze imaging...
Paper 58 disparity-of_stereo_images_by_self_adaptive_algorithm
Image reconstruction in computed tomography
Basics of dip
Image mosaicing
An efficient image compression algorithm using dct biorthogonal wavelet trans...
Inverse problems in medical imaging
Locally_adaptive.ppt
Optimization of Macro Block Size for Adaptive Rood Pattern Search Block Match...
The single image dehazing based on efficient transmission estimation
Roy Presen
MNIST and machine learning - presentation
Human machine interaction using Hand gesture recognition
JBSC_online
Comparison of various Image Registration Techniques with the Proposed Hybrid ...
Ad

Similar to CenterForDomainSpecificComputing-Poster (20)

DOC
Research Paper v2.0
PDF
A PROJECT REPORT ON REMOVAL OF UNNECESSARY OBJECTS FROM PHOTOS USING MASKING
PDF
557 480-486
PPTX
crowd counting.pptx
PDF
Supervised Blood Vessel Segmentation in Retinal Images Using Gray level and M...
PDF
Ijctt v7 p104
PDF
E017443136
PDF
An efficient image segmentation approach through enhanced watershed algorithm
PDF
FORGERY (COPY-MOVE) DETECTION IN DIGITAL IMAGES USING BLOCK METHOD
PDF
Long-Term Robust Tracking Whith on Failure Recovery
PDF
Hardware Unit for Edge Detection with Comparative Analysis of Different Edge ...
PDF
Medical Image Segmentation Based on Level Set Method
PDF
Median based parallel steering kernel regression for image reconstruction
PDF
MEDIAN BASED PARALLEL STEERING KERNEL REGRESSION FOR IMAGE RECONSTRUCTION
PDF
MEDIAN BASED PARALLEL STEERING KERNEL REGRESSION FOR IMAGE RECONSTRUCTION
PDF
Development of stereo matching algorithm based on sum of absolute RGB color d...
PDF
Hand gestures recognition seminar_ppt.pptx.pdf
PDF
Method of optimization of the fundamental matrix by technique speeded up rob...
PDF
International Journal of Computational Engineering Research(IJCER)
PDF
Enhancing Segmentation Approaches from GC-GGC to Fuzzy K-C-Means
Research Paper v2.0
A PROJECT REPORT ON REMOVAL OF UNNECESSARY OBJECTS FROM PHOTOS USING MASKING
557 480-486
crowd counting.pptx
Supervised Blood Vessel Segmentation in Retinal Images Using Gray level and M...
Ijctt v7 p104
E017443136
An efficient image segmentation approach through enhanced watershed algorithm
FORGERY (COPY-MOVE) DETECTION IN DIGITAL IMAGES USING BLOCK METHOD
Long-Term Robust Tracking Whith on Failure Recovery
Hardware Unit for Edge Detection with Comparative Analysis of Different Edge ...
Medical Image Segmentation Based on Level Set Method
Median based parallel steering kernel regression for image reconstruction
MEDIAN BASED PARALLEL STEERING KERNEL REGRESSION FOR IMAGE RECONSTRUCTION
MEDIAN BASED PARALLEL STEERING KERNEL REGRESSION FOR IMAGE RECONSTRUCTION
Development of stereo matching algorithm based on sum of absolute RGB color d...
Hand gestures recognition seminar_ppt.pptx.pdf
Method of optimization of the fundamental matrix by technique speeded up rob...
International Journal of Computational Engineering Research(IJCER)
Enhancing Segmentation Approaches from GC-GGC to Fuzzy K-C-Means
Ad

CenterForDomainSpecificComputing-Poster

  • 1. Acceleration of the Front Propagation Segmentation Algorithm: Towards Tumor Volumetrics Habanero Multicore Software Project Yunming Zhang, Vincent Cave, Vivek Sarkar, Zoran Budimlic Alex A.T. Bui Introduction Rice University Dept of Computer Science Habanero C Results Results For years, the accepted approach to assessing a cancer patient’s response to treatment based on a measurement of the greatest diameter called the Response Evaluation Criteria for Solid Tumors (RECIST). This gross measure neither takes advantage of the information provided by increasingly sophisticated imaging techniques nor incorporates information across multiple image slices. We present initial work on implementing and accelerating a three-dimensional front propagation segmentation algorithm described by J.A. Sethian in “A fast marching level set method for monotonically advancing fronts.” This poster describes the implementation process, initial benchmark results, and challenges encountered. • The 3D segmentation algorithm uses async and finish to spawn tasks operating on different data in parallel. Each task traces the contour on an individual 2D slice of the 3D image. • In Habanero C, async<statement>, causes the parent task to fork a new child task that executes the task defined inside statement. The task returns immediately once finished. In order to synchronize the parallel tasks, the finish <statement> is used to perform a join operation that causes the parent task to execute statement and then wait until all the tasks created within statement have terminate. Algorithm • The habanero-C run time uses a work stealing scheduler to dynamically map tasks to processors. The run time supports work-first and help-first policies along with places for locality. Distance Calculation 1.The algorithm starts by extending the image by one pixel in every direction. 2.From a user-defined seed point, the algorithm expands in all directions in three dimensions based on Dijkstra’s algorithm, where every pixel is regarded as a node in a graph and adjacent pixels are neighbors in the graph. Every iteration, a point closest to the current contour is selected based on its grey value difference to points on the edge of the current contour. 3.The expansions stops at any point that has a grey value change greater than a given threshold, which is decided empirically and interactively. Discussions  d Figure 4. Some results from the segmentation and contour tracing algorithm on actual medical image of patient’s lungs scan. Parallelization Parallelization Figure 1. Extending the original image Figure 2. Expansion from the seed point(1,1,0). Numbers are the order. Contour Tracing 1.Given a binary image, traces contours that outline all regions in the 2D image point by point. 2.If multiple regions are present, the algorithm will try to select a region based on its proximity to the seed point and its area. A naïve parallel implementation of the algorithm is written using Habanero C. Contour tracing was identified as a computationally-expensive step in the algorithm. As a result, work was done to redesign the algorithm so that no longer has shared memory access between the tracing of each slice (i.e., the original algorithm was heavily dependent on global variables). In the modified algorithm, tracing of different slices is now executed in parallel to achieve maximum speed up. Dimensions(pixels) Single core(sec) Dual Core(sec) Speed Up 128 * 128 * 11 Figure 3. Contours traced from the given images. 56 0.11 0.08 1.38 512 * 512 * 8 1.25 0.99 4.45 3.52 1.26 Discussions Some future improvements include: •Rewriting the distance calculation and contour tracing algorithms, which are inherently sequential, for further speed up. •Determining an approach for estimating the tolerance value •Automating the detection of the seed point and improvement of the algorithm to exclude regions of the image that are not part of the nodule (e.g., exclude the chest wall). •Achieving additional speed up by targeting additional hardware platforms. 1.26 512 * 512 * 29 In this project, we ported the original java implementation of the algorithm into Habanero C, which required rewriting several library classes. We introduced an improved heap implementation to achieve better performance. we also improved the contour tracing algorithm. On significant challenge is adapting this general-purpose algorithm for use in the medical domain. We tested the algorithm on a variety of chest computed tomography (CT) images with abnormal nodules. While the algorithm was able to accurately capture areas where the boundary of the nodule is distinct (e.g., areas where the nodule is surrounded by air), the segmentation would often bleed into surrounding areas when the nodule was attached to the chest wall. This work is funded by the National Science Foundation Expeditions in Computing Award (NSF CCF-0926127).