140 likes | 305 Views
Level Set Based Active Contours Using Raw CT Data. Anil Usumezbas Mid-Project Presentation. Introduction. CT image processing Convolution Filtering Smoothing Edge detection Spot detection Ridge detection Segmentation Registration First back projection, then image processing.
E N D
Level Set Based Active Contours Using Raw CT Data Anil Usumezbas Mid-Project Presentation
Introduction • CT image processing • Convolution • Filtering • Smoothing • Edge detection • Spot detection • Ridge detection • Segmentation • Registration • First back projection, then image processing
Problem Definition • Reconstruction errors/losses inherited during image processing • Loss of data • Decreased to some extent via filtered back projection but still present • Lowered resolution • Due to sample sizes or orientations etc • Motivation: General paradigm shift regarding CT image processing • Project Scope: Active Contours
Proposed Solution • Change in the order • Before: Back project and process image • After: Process sinogram and back project • Reconstruction is only necessary for human interpretation – automated steps can be performed on the raw data • The sinogram-space equivalent of the desired process should be theoretically derived • In this case, active contour evaluation steps • Goal: Get a more accurate resulting curve (sub-pixel accuracy etc.) • Difference might be too small, might be too hard to evaluate
A Little Bit About Active Contours • Discussed in class. • A contour evolving from an initial condition to a final, stable state • Hard coded final curve • Desired feature • We’ve seen three different versions • Freely-evolving snakes: Simpler but a lot of problems (e.g. squiggles) • Contours bounded by spring-like limitations: Preserving topology but self-intersection problem on the grander scale • Level sets: Pixel grid based, contours as zero level sets of 3D functions • These are all energy-based
The Classical Snake Approach • Energy-based • Alpha, beta and lambda positive constants • Three terms: • First two: Control smoothness (Eint) • Third: Attracts the snake towards the desired feature (Eext) • Solving the problem is finding a C to minimize E • Problems: • Small gaps, multiple objects etc. cannot be handled due to the impossibility of major topological changes • Need to select parameters that control the tradeoff
Curve Evolution Approach • Tells how each point should move to minimize the length defined on the right, which in turn takes into account • Euclidean length • Image properties • Second derivative term was seen as too limiting and was eliminated • Addresses some of the problems with energy-based approach • Topology-independent • Parametrization combined in a single function • More or less depends on the same variables, namely; • Gradient image • Partial differentiation
Our Approach • Geodesic Active Contours by Casalles et. al. • Geodesic: Minimal distance path between given points • Curve evolution model using level set formulation • All approaches make use of two important operations: • Image gradient • Partial differentiation • Bottom line: Differentiation is the key! • Need to figure out the equivalent to differentiation in sinogram space
The Theory • Proof is presented in the CT document • Further Steps in Theory: • Second derivatives • Image gradient • Appears trivial but needs to be verified
The Code • C++ code available for Geodesic Active Contours • Runs on images • Gets another binary image with the same resolution as an input to initialize the curve • Curve pixels are white, rest are black • Does not visualize intermediate steps • Provides only the final curve • Needs to be verified • Proposed Modification: The evaluation steps for the curve will use the results of the various derivation operations on the sinogram data instead of the image itself • The curve will still be modified on the image in each step • Hoping to achieve higher accuracy with the use of sub-pixel zero crossings
Evaluation Method Sinogram DATA Initial Curve Final Curve I Algorithm Initial Curve Final Curve II Reconstructed Image DATA
Project Steps • Working out the theory • Understanding the curve evalution model completely • Working out the remaining parts of the sinogram space operations • Trying small-scale examples in MATLAB • Getting just the partial differentiation right • Comparing the results of raw data processing with reconstructed image processing • Verifying the existing geodesic active contours code • Making the necessary changes to add the option of processing a sinogram instead of an image • Evaluation and tests
Project Plan • Week 1 • Studying the concept of active contours • Beginning to study the sinogram equivalents of CT image processing operations • Week 2 • Finalizing the studies • Reading and understanding the geodesic active contour paper • Beginning to work on the C++ code to see how it works • Week 3 • Geodesic active contour code verification • Working out the remaining parts in the theory of sinogram processing • Sufficiently understanding the contour evaluation model to be used • Beginning the first tests with the partial differentiation • Finalizing the C++ code study • Week 4 • Finalizing the partial differentiation experiments on MATLAB and evaluating the results • Beginning to modify the C++ code for geodesic active contour evaluation • Week 5 • Finalizing the modifications • Evaluating the results
The End Questions? Comments?