1 / 44

Final Presentation Amir Tamrakar May 19, 2005

Ridge-Based Vessel Segmentation in Color images of the Retina Staal et al, IEEE TRANSACTIONS ON MEDICAL IMAGING, VOL. 23, NO. 4, APRIL 2004. Final Presentation Amir Tamrakar May 19, 2005. Overview. Goal + Clinical Relevance Review of Methodology

gaynell
Download Presentation

Final Presentation Amir Tamrakar May 19, 2005

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Ridge-Based Vessel Segmentation in Color images of the RetinaStaal et al, IEEE TRANSACTIONS ON MEDICAL IMAGING, VOL. 23, NO. 4, APRIL 2004 Final Presentation Amir Tamrakar May 19, 2005

  2. Overview • Goal + Clinical Relevance • Review of Methodology • Brief Recap of the Feature Computation Stage • Training a classifier on the features • Applying the classifier on test data • Present Results • Discuss limitations + Possible Improvements

  3. Goal • Auto-segment vessels in color retinal images for the purpose of screening for diabetic retinopathy. • 5.5% of the population worldwide are diabetic • 10% of all diabetic patients develop diabetic retinopathy • Diabetic retinopathy is the primary cause of blindness in the west. • It can be prevented with treatment at early stages. Hence the need for screening.

  4. Related Work/ Other Methods for Vessel Extraction • Matched Filters • Grouping edge pixels • Locally adaptive thresholding • Topology Adaptive Snakes • Vessel tracking • Matched Kalman Filters • Fuzzy clustering and tracking • Morphology based Techniques (forming trees) • Supervised learning methods • Neural Networks References for these works can be found in the Staal etal paper.

  5. Methodology Extract ridges Form line element primitives Retinal image (Green channel only) Extract Features Classifiers (vessel / no vessel) Form patches around primitives Vessels segmented

  6. Overall Insight • GOAL: To Learn to Classify every pixel (independently) as vessel or non-vessel within the FOV. • A pixel representation is not optimal for vessel structure. • Knowing that vessels are elongated structures, one can represent vessels with elongated vessel primitives. • Height ridges coincide approximately with vessel centerlines so form these primitives along ridge curves (convex sets of connected ridge points)

  7. Overall Insight contd.. • Divide the Classification Task into 2 parts: • Train Classifier #1 to compute the probability that a given Convex set (CS) is part of a vessel using local features around the primitive. • Divide the image into patches around the CSs (i.e., assign each pixel in the image to its nearest primitive.) • Within each patch, a local coordinate system can be defined and local features can be extracted for every pixel. • Train Classifier #2 to classify every pixel using the local patch features into vessel or non-vessel. • The output of Classifier #1 is one of the features for Classifier #2 (Needless to say, the most important)

  8. INPUT: Color Image of the Retina

  9. 1. Split into RGB Components

  10. 2. Keep the Green Channel only

  11. 3. Compute Ridge Points

  12. Details: Computing Ridge points v1 is the eigenvector corresponding to the largest eigenvalue Numerically: R(x) = -1 : ridges, +1 : valleys

  13. 4. Link ridge points into convex sets (CS)

  14. Details: Linking Ridge points Algorithm: Region growing from random seeds vug1 r1 vg Tg Rules: ec r2 vug2

  15. New implementation: Curve growing (εp = 0.95) Original implementation: (region growing using spiral search) εp = 0.8 But curves were still doubling back. Added rule:

  16. 5. Form patches around the convex sets (CSR)

  17. Details: Forming Convex set regions • Compute Chamfer Distance Transform from ridge points in convex sets • Propagate distance + set label + closest point information Distance Transform

  18. Details: Forming Convex set regions • Compute Chamfer Distance Transform from ridge points in convex sets • Propagate distance + set label + closest point information Closest Point Map

  19. Details: Forming Convex set regions • Compute Chamfer Distance Transform from ridge points in convex sets • Propagate distance + set label + closest point information Labeled CSR

  20. Details: Convex set features (at ridge points) • 18 features • 8 are extracted from average profile (Ψ)(-15..15) • Height: h = Ψ(0) • Width: w = (nre-nle) • h/w • Edge strength: se = Ψ’(nle) + Ψ’(nre) • se/w • Edge height: he = (Ψ(nle) + Ψ(nre))/2 • h-he • h/he • 3 from convex set curves • Distance between first and last point (d) • The length of the curve (l) • The curvature of the curve (k) • Rest from image features • Mean internsity (μg) • Standard deviation (σg) • Μg/ /μr • Ridge Strength at σ =0.5 ( average λ) • Ridge Strength at σ =1 ( average λ) • Ridge Strength at σ =2 ( average λ) • Ridge Strength at σ =3 ( average λ)

  21. 6. Compute several features from the convex sets (18)

  22. Details: Convex Set Region features (at every pixel) • r(x) • g(x) • g(x)/r(x) • p(c=vessel) • dcl = || x- xcl || • r(x) – r(xcl) • r(x)/r(cl) • g(x)-g(xcl) • g(x)/g(xcl) • x’ • y’ • Ix’ (at σ =0.5, 1, 2, 4 ) • Iy’ (at σ =0.5, 1, 2, 4 ) • Ix’x’ (at σ =0.5, 1, 2, 4 ) • Iy’y’ (at σ =0.5, 1, 2, 4) Fit a line through the CS points & Define a local coordinate system (x’, y’)

  23. 7. Compute some more features from the CSRs (27)

  24. 8. Train a classifier of some kind 17 CS features Ground Truth 27 CSR features Supervised Learning Algorithm Feature set

  25. 8. (Revised) Train a couple of classifiers [of some kind] 17 CS features Ground Truth (Hand segmented Images) Train Classifier #1 Learned Parameters Train Classifier #2 27 CSR features

  26. Learned Parameters 9. Applying the Classifiers on Test data Classifier #1 Test Image 17 CS features Classifier #2 27 CSR features Segmented image

  27. Various Statistics • Database: Utrecht DRIVE database(http://www.isi.uu.nl/Research/Databases/DRIVE/) • 40 images + Manual segmentations • 20 images used to train and 20 to test • Pathologies • Training set: 3 images • Test set: 4 images • Image: 584x565 JPEG color images • # of pixels: 329960 • FOV mask: Circular (diameter = 460 pixels) • # of pixels within the FOV: 209010 • # of pixels marked as Vessel (GT): 24265 (11.6%)

  28. Classifier • Authors used k-NN classifier (k=101) • I used AdaBoost instead • Data volume was easier to manage • Feature selection not required • Fast inference process

  29. Non-negative weights sum to 1 Binary label Feature vector (x1,y1,w1),(x2,y2,w2) … (xn,yn,wn) Weighted training set instances labels x1,x2,x3,…,xn y1,y2,y3,…,yn The weak requirement: A weak learner A weak rule weak learner h h

  30. weak learner h1 (x1,y1,w1), … (xn,yn,wn) (x1,y1,1/n), … (xn,yn,1/n) (x1,y1,w1), … (xn,yn,wn) (x1,y1,w1), … (xn,yn,wn) (x1,y1,w1), … (xn,yn,wn) (x1,y1,w1), … (xn,yn,wn) (x1,y1,w1), … (xn,yn,wn) (x1,y1,w1), … (xn,yn,wn) (x1,y1,w1), … (xn,yn,wn) (x1,y1,w1), … (xn,yn,wn) weak learner h2 h8 hT h9 h7 h5 h3 h4 h6 The boosting process Sign[] + + + Final rule: a1 h1 a2 h2 aT hT

  31. Adaboost (Adaptive Boosting) • Binary labels y = -1,+1 • margin(x,y) = y [St atht(x)] • P(x,y) = (1/Z) exp (-margin(x,y)) • Given ht, we choose at to minimize S(x,y) exp (-margin(x,y))

  32. Discriminative ability of the CS features

  33. Discriminative ability of the CSR features

  34. Results Accuracy: 94.4% wrt Manual Segmentation Original Image Vessels segmented

  35. Manual Segmentation Automatic Segmentation

  36. Original Image Vessels segmented

  37. Accuracy: 96% wrt Manual Segmentation Original Image Vessels segmented

  38. Images with Pathologies Accuracy: 92.4% wrt Manual Segmentation Original Image Vessels segmented

  39. Images with Pathologies Accuracy: 92.5% wrt Manual Segmentation Original Image Vessels segmented

  40. Results Summary • Overall Accuracy = 93.9% • Best segmentation = 96% • Worst segmentation = 92.4%

  41. Limitations • Needs a lot of Training data (Tremendous: manual effort). • Especially images with pathologies if it is to correctly segment pathologies (Aneurysms) • Pathologies are not recognized and sometimes misclassified as vessels • Over and under segmentation (a concern if objective vessel width measurements are required) • A lot of small vessels are missed • Some vessels appear thickened • Edges of the optical disc often have vessel like features and so are segmented as vessels.

  42. Future Work • Some of the errors are due to randomization during ridge point linking process • Arbitrarily partitions the ridge curves into convex sets. • More rigorous partitioning will avoid small patches which get thrown out and create gaps in the segmentation • Use other classifiers e.g., k-NN classifiers with Feature selection in the AdaBoost Framework. • Add features?

  43. References • Staal et al, Ridge-Based Vessel Segmentation in Color images of the Retina, IEEE TRANSACTIONS ON MEDICAL IMAGING, VOL. 23, NO. 4, APRIL 2004

More Related