Presentation is loading. Please wait.

Presentation is loading. Please wait.

EE663 Image Processing Edge Detection 5 Dr. Samir H. Abdul-Jauwad Electrical Engineering Department King Fahd University of Petroleum & Minerals.

Similar presentations


Presentation on theme: "EE663 Image Processing Edge Detection 5 Dr. Samir H. Abdul-Jauwad Electrical Engineering Department King Fahd University of Petroleum & Minerals."— Presentation transcript:

1 EE663 Image Processing Edge Detection 5 Dr. Samir H. Abdul-Jauwad Electrical Engineering Department King Fahd University of Petroleum & Minerals

2 2 Edge Detection Using the 2 nd Derivative Multi-scale processing (scale space) −A serious practical problem with any edge detector is the matter of choosing the scale of smoothing (σ when using a Gaussian). −For many applications, it is desirable to be able to process an image at multiple scales. −We determine which edges are most significant in terms of the range of scales over which they are observed to occur.

3 3 Edge Detection Using the 2 nd Derivative Multi-scale processing (scale space) – cont. (Canny edges at multiple scales of smoothing, σ = 0.5, 1, 2, 4, 8, 16)

4 4 Edge Contour Extraction Two main categories of methods: −local methods (extend edges by seeking the most "compatible" candidate edge in a neighborhood). −global methods (more computationally expensive - domain knowledge can be incorporated in their cost function). Note: local methods cannot handle big gaps. Edge detectors typically produce short, disjoint edge segments. These segments are generally of little use until they are aggregated into extended edges. We assume that edge thinning has already be done (e.g., non-maxima suppression).

5 5 Edge Contour Extraction

6 6 Local Processing Methods Some important observations useful for contour extraction: −The output of edge detectors tends to have approximately constant (and large) strength along object boundaries. −Image edges and lines are smooth and tend to have low curvature. −Small local edge direction differences ensure smooth object boundaries.

7 7 Local Processing Methods Contour extraction using heuristic search A more comprehensive approach to contour extraction is based on graph searching. Graph representation of edge points: −(1) Edge points at position p i correspond to graph nodes. −(2) The nodes are connected to each other if local edge linking rules (e.g., like the ones given previously), are satisfied. The edge linking rules may be modified to suit the requirements of a particular problem

8 8 Local Processing Methods Contour extraction using heuristic search – cont. The generation of a contour (if any) from pixel p A to pixel p B  the generation of a minimum-cost path in the directed graph. A cost function for a path connecting nodes p 1 = p A to p N = p B could be defined as follows: Finding a minimum-cost path is not trivial in terms of computation (typically, the approach is to sacrifice optimality for speed).

9 9 Local Processing Methods Contour extraction using dynamic programming Dynamic programming −It is an optimization method that searches for optima of functions in which not all the variables are simultaneously interrelated. −It subdivides a problem recursively into smaller sub-problems that may need to be solved in the future, solving each sub-problem – proceeding from the smaller ones to the larger ones – and storing the solutions in a table that can be looked up when need arises. −Principle of optimality (applied to the case of graph searching): the optimal path between two nodes p A and p B can be split into two optimal sub-paths p A p i and p i p B for any p i lying on the optimal path p A p B.

10 10 Local Processing Methods Contour extraction using dynamic programming – cont. Express the problem in recursive form −Consider the following objective function to be maximized: −The objective function can be written in a recursive form as follows: Complete optimization problem:

11 11 Local Processing Methods Contour extraction using dynamic programming – cont. Solution using dynamic programming: −The optimal path can be split into two optimal sub-paths and satisfying the following recursive relation: −The initial value of is given by:

12 12 Local Processing Methods A-algorithm (by Nilsson, 1980) −Note: this algorithm does not guarantee the globally optimum path. −One disadvantage of the heuristic search algorithm is that short paths may have smaller cost than longer paths that are more likely to be the final winners.

13 13 Global Processing Methods If the gaps between pixels are very large, local processing methods are not effective. Global methods are more effective in this case !! −Hough Transform can be used to determine whether points lie on a curve of a specified shape (model-based method). −Deformable Models (Snakes) can be used to extract the boundaries of objects having arbitrary shapes. −Grouping can be used to decide which groups of features are likely to be part of the same object.

14 14 Corner Detection We are often interested in detecting point features (corners) in an image. These features are usually defined as regions in the image where there is significant edge strength in two or more directions.

15 15 Corner Detection A naive approach: −Apply a mask over the image −Apply thresholding: if |R| > T, then possible discontinuity ! −Depending on the value of T we can get: 4 points (0 < T ≤ 9) 1 point (9 < T ≤ 72) 0 points (T > 72)


Download ppt "EE663 Image Processing Edge Detection 5 Dr. Samir H. Abdul-Jauwad Electrical Engineering Department King Fahd University of Petroleum & Minerals."

Similar presentations


Ads by Google