today
play

Today Image segmentation methods: Boundaries, Hough transform, - PowerPoint PPT Presentation

Today Image segmentation methods: Boundaries, Hough transform, Intelligent Scissors Slides based on Steve Seitz, Kristen Grauman, and others Boundaries in Medical Imaging Machine Edge Detection Image Human Boundary Marking Boundaries in


  1. Today Image segmentation methods: Boundaries, Hough transform, Intelligent Scissors Slides based on Steve Seitz, Kristen Grauman, and others

  2. Boundaries in Medical Imaging Machine Edge Detection Image Human Boundary Marking

  3. Boundaries in Medical Imaging Detection of cancerous regions. [Foran, Comaniciu, Meer, Goodell, 00]

  4. Boundaries in Medical Imaging Hard to detect in the presence of large amount of speckle noise

  5. Preprocessing Edge Images Edge detection and Thresholding Noisy edge image Image Incomplete boundaries Shrink and Expand Thinning

  6. Edge Tracking Methods Adjusting a priori Boundaries: Given: Approximate Location of Boundary Task: Find Accurate Location of Boundary • Search for STRONG EDGES along normals to approximate boundary. • Fit curve (eg., polynomials) to strong edges.

  7. Fitting Lines to Edges (Least Squares) y ( x i y , ) Given: Many pairs = + y mx c i ( , ) x i y ( m , c ) i Find: Parameters − − Minimize: Average square distance: y mx c − − i i 2 ( y mx c ) ∑ = x i i E N i ∂ ∂ = − Using: c y m x E E = = 0 & 0 ∂ ∂ m c ∑ − − ( x x )( y y ) i i = i m ∑ ∑ ∑ − y x 2 ( x x ) i i = = i i i y x Note: N N i

  8. Problem with Parameterization y Line that minimizes E!! x

  9. Curve Fitting y Find Polynomial: = = + + + 3 2 y f ( x ) ax bx cx d ( x i y , ) that best fits the given points i x Minimize: 1 ∑ − + + + 3 2 2 [ y ( ax bx cx d )] i i i i N i Using: ∂ ∂ ∂ ∂ E E E E = = = = 0 , 0 , 0 , 0 ∂ ∂ ∂ ∂ a b c d f ( x ) Note: is LINEAR in the parameters (a, b, c, d)

  10. Line Grouping Problem Slide credit: David Jacobs

  11. This is difficult because of: • Extraneous data: clutter or multiple models – We do not know what is part of the model? – Can we pull out models with a few parts from much larger amounts of background clutter? • Missing data: only some parts of model are present • Noise • Cost: – It is not feasible to check all combinations of features by fitting a model to each possible subset

  12. Hough Transform Elegant (somewhat slow? method for direct object recognition • Edges need not be connected • Complete object need not be visible • Key Idea: Edges VOTE for the possible model

  13. Image and Parameter Spaces y = + = + y mx c y mx c Equation of Line: ( , ) m c Find: ( , ) x i y ( x i y , ) Consider point: i i x = + = − + Image Space y mx c or c x m y i i i i m Parameter space also called Hough Space ( , ) m c c Parameter Space

  14. Image and Parameter Spaces y b b 0 m 0 x m image space Hough (parameter) space Connection between image (x,y) and Hough (m,b) spaces – A line in the image corresponds to a point in Hough space – To go from image space to Hough space: • given a set of points (x,y), find all (m,b) such that y = mx + b Slide credit: Steve Seitz

  15. Image and Parameter Spaces y b y 0 x 0 x m image space Hough (parameter) space Connection between image (x,y) and Hough (m,b) spaces – A line in image corresponds to a point in Hough space – To go from image space to Hough space: • given points (x,y), find all (m,b) such that y = mx + b – What does a point (x 0 , y 0 ) in the image space map to? – Answer: the solutions of b = -x 0 m + y 0 – this is a line in Hough space Slide credit: Steve Seitz

  16. Image and Parameter Spaces y b ( x 1 , y 1 ) y 0 ( x 0 , y 0 ) b = – x 1 m + y 1 x 0 x m image space Hough (parameter) space What are the line parameters for the line that contains both (x 0 , y 0 ) and (x 1 , y 1 )? – It is the intersection of the lines b = –x 0 m + y 0 and b = –x 1 m + y 1

  17. Image and Parameter Spaces y b x m image space Hough (parameter) space How can we use this to find the most likely parameters (m,b) for the most prominent line in the image space? • Let each edge point in image space vote for a set of possible parameters in Hough space • Accumulate votes in discrete set of bins; parameters with the most votes indicate line in image space.

  18. Line Detection by Hough Transform y Algorithm: ( m , c ) • Quantize Parameter Space ( m , c ) ( , ) A m c • Create Accumulator Array x = ∀ Parameter Space ( , ) 0 , A m c m c • Set A ( m , c ) ( x i y , ) • For each image edge increment: 1 1 i 1 1 = + A ( m , c ) A ( m , c ) 1 1 1 2 ( m , c ) • If lies on the line: 1 1 1 1 = − + c x m y 1 1 i i ( , ) A m c • Find local maxima in

  19. Better Parameterization Issues with usual ( m,b ) parameter space: can take on infinite values, undefined for vertical lines. Image columns x d : perpendicular distance [0,0] θ from line to origin θ d : angle the perpendicular Image rows y makes with the x-axis θ − θ = x cos y sin d Point in image space  sinusoid segment in Hough space Kristen Grauman

  20. Better Parameterization y − ∞ ≤ ≤ ∞ NOTE: m Large Accumulator ( x i y , ) i More memory and computations Improvement: (Finite Accumulator Array Size) x Image Space = θ − θ d x cos y sin Line equation: ρ ≤ θ ≤ π Here 0 2 ≤ ρ ≤ ρ 0 ? max θ Hough Space

  21. Image space Votes Horizontal axis is θ , vertical is ρ .

  22. Image votes space

  23. Mechanics of the Hough transform • Difficulties • How many lines? – how big should the cells – Count the peaks in the be? (too big, and we Hough array merge quite different lines; – Treat adjacent peaks as too small, and noise a single peak causes lines to be missed) • Which points belong to each line? – Search for points close to the line – Solve again for line and iterate

  24. Mechanics of the Hough transform Image space Votes edge coordinates Here, everything appears to be “noise”, or random edge points, but we still see peaks in the vote space.

  25. Finding Circles by Hough Transform y r b 0 (x i ,y i ) x a 0 − − Equation of Circle: 2 2 2 (x a ) + (y b ) = r i 0 i 0 If radius r is known: b y (x i ,y i ) x a Accumulator array A(a,b)

  26. Finding Circles by Hough Transform Equation of Circle: − + − = 2 2 2 ( x a ) ( y b ) r i i If radius is not known: 3D Hough Space! A ( a , b , r ) Use Accumulator array

  27. Finding Circles by Hough Transform y r b 0 (x i ,y i ) x a 0 Key issues: • can be generalized to fit any object that can be parameterized • problems: running time (curse of dimensionality), will fail for complex objects, size/resolution of cell in accumulator • Some heuristic improvements are possible

  28. Circles: Hough Transform y x a 0 Image: Multi-subject Diffusion MRI Tractography via a Hough Transform Global Approach, Aganj et al. Further reading: Ballard and Brown, hough.pdf

  29. Example: iris detection Gradient+threshold Hough space Max detections (fixed radius) Hemerson Pistori and Eduardo Rocha Costa • http://rsbweb.nih.gov/ij/plugins/hough-circles.html Kristen Grauman

  30. Hough transform: pros and cons Pros • All points are processed independently, so can cope with occlusion, gaps due to poor signal contrast • Some robustness to noise: noise points unlikely to contribute consistently to any single bin • Can detect multiple instances of a model in a single pass Cons • Complexity of search time increases exponentially with the number of model parameters • Non-target shapes can produce spurious peaks in parameter space • Quantization: can be tricky to pick a good grid size Kristen Grauman

  31. • Hough line demo • http://www.dis.uniroma1.it/~iocchi/slides/icr a2001/java/hough.html

  32. Generalized Hough Transform What if we want to detect arbitrary shapes? Kristen Grauman

  33. Generalized Hough Transform What if we want to detect arbitrary shapes? Intuition: Kristen Grauman

  34. Generalized Hough Transform What if we want to detect arbitrary shapes? Intuition: Model image Kristen Grauman

  35. Generalized Hough Transform What if we want to detect arbitrary shapes? Intuition: Ref. point Model image Kristen Grauman

  36. Generalized Hough Transform What if we want to detect arbitrary shapes? Intuition: Displacement vectors Ref. point Model image Kristen Grauman

  37. Generalized Hough Transform What if we want to detect arbitrary shapes? Intuition: Displacement vectors Ref. point Model image Novel image Kristen Grauman

  38. Generalized Hough Transform What if we want to detect arbitrary shapes? Intuition: Displacement vectors Ref. point Model image Novel image Vote space Kristen Grauman

  39. Generalized Hough Transform What if we want to detect arbitrary shapes? Intuition: Displacement x vectors Ref. point Model image Novel image Vote space Kristen Grauman

  40. Generalized Hough Transform What if we want to detect arbitrary shapes? Intuition: Displacement x vectors x Ref. point Model image Novel image Vote space Kristen Grauman

Recommend


More recommend