1 / 22

240-373 Image Processing

240-373 Image Processing. Montri Karnjanadecha montri@coe.psu.ac.th http://fivedots.coe.psu.ac.th/~montri. Chapter 8. Edge Detection. Basic Edge Detection. Edge detection, ideally, identifies all the lines that outline the objects in an image. Template for edge detection:

Download Presentation

240-373 Image Processing

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. 240-373 Image Processing Montri Karnjanadecha montri@coe.psu.ac.th http://fivedots.coe.psu.ac.th/~montri 240-373: Chapter 8: Edge Detection

  2. Chapter 8 Edge Detection 240-373: Chapter 8: Edge Detection

  3. Basic Edge Detection • Edge detection, ideally, identifies all the lines that outline the objects in an image. • Template for edge detection: Y_difference(x,y) = value(x,y) - value(x,y+1) This is equivalent to convolving with image with a 2x1 template 1 -1 240-373: Chapter 8: Edge Detection

  4. Basic Edge Detection X_difference(x,y) = value(x,y) - value(x-1,y) use the template -1 1 • Once X_difference and Y_difference are computed to create the single measurement of “gradient magnitude” (strength of the edge) 240-373: Chapter 8: Edge Detection

  5. Basic Edge Detection • It is also useful to divide Y_difference by X_difference and identify a gradient direction (the angle of the edge between the regions) 240-373: Chapter 8: Edge Detection

  6. Example Image X_difference Y_difference Gradient Direction 1 1 1 1 1 0 0 0 0 * 0 0 0 0 0 * * * * * 1 1 1 1 1 0 0 0 0 * 0 0 0 1 1 * * * 1 1 1 0 0 0 0 -1 0 * 0 0 1 0 0 * * * * 1 1 0 0 0 0 -1 0 0 * 0 0 0 0 0 * * * * 1 1 0 0 0 0 -1 0 0 * * * * * * * * * * 240-373: Chapter 8: Edge Detection

  7. Example Technique 4: Sobel edge detection The Sobel 3 x 3 templates are normally given as X-direction Y-direction -1 0 1 1 2 1 -2 0 2 0 0 0 -1 0 1 -1 -2 -1 240-373: Chapter 8: Edge Detection

  8. Example Image abs A + abs B Threshold at 12 240-373: Chapter 8: Edge Detection

  9. 240-373: Chapter 8: Edge Detection

  10. 240-373: Chapter 8: Edge Detection

  11. 240-373: Chapter 8: Edge Detection

  12. Second-order edge detection • An image such as • The basic Sobel vertical edge operator yields 240-373: Chapter 8: Edge Detection

  13. Second-order edge detection • Applying the edge operator again yields • This is similar to the differentiation operator applied to a straight line, e.g. if y = 3x - 2, then 240-373: Chapter 8: Edge Detection

  14. Second-order edge detection Laplacian template • can reduce gradient of lighting • enhances noise 240-373: Chapter 8: Edge Detection

  15. Pyramid Edge Detection Technique 5: Pyramid edge detection USE: To enhance substantial (strong and long) edges but to ignore the weak or short edges THEORY: • The image is cut down to quarter • Each pixel in the quarter-size image is an average of the four corresponding pixels in the full-size image 240-373: Chapter 8: Edge Detection

  16. Pyramid Edge Detection THEORY: (cont’d) • This repeats until unwanted edges are invisible • An edge detector is applied to the smallest image and where edge pixels have been found, an edge detector is applied to the corresponding four pixels in the next largest image 240-373: Chapter 8: Edge Detection

  17. Pyramid Edge Detection OPERATION: • Create a second image of size m/2 x n/2 by evaluating for each 0 < i < mand 0< j < n • This is repeated and each generated image is kept • With the smallest image, perform some edge detection--such as Sobel 240-373: Chapter 8: Edge Detection

  18. Pyramid Edge Detection OPERATION: (cont’d) • In pixels where edges are discovered, perform as edge detection operation on the group of four corresponding pixels in the next largest image • Continue to find the best edges down through the pyramid of images until the main edges in the original image have been discovered 240-373: Chapter 8: Edge Detection

  19. Edge Following Technique 7: Simple edge following USE: Knowing that a pixel is on an edge, the edge will be followed so that an objected is outlined OPERATION: • Suppose that a position on the edge has been identified, call it (x,y) and flag this position as used • Evaluate all the 3x3 Sobel gradient values centered on each of the eight pixels surrounding (x,y) 240-373: Chapter 8: Edge Detection

  20. Edge Following OPERATION: (cont’d) • Choose the three pixels with the greatest absolute gradient magnitude • Put these three pixel in a three-column array • Order them in row according to the gradient magnitude • Choose the one with greatest gradient magnitude 240-373: Chapter 8: Edge Detection

  21. Edge Following OPERATION: (cont’d) • Now this pixel will be one of the direction 0-7 with respect to the pixel (x,y) given by the following map, where * is the position of pixel (x,y) 0 1 2 7 * 3 6 5 4 • Call the direction of travel d • Repeat the algorithm but look at only pixels in d, (d+1) mod 8, and (d-1) mod 8 directions 240-373: Chapter 8: Edge Detection

  22. Edge Following OPERATION: (cont’d) • If no suitable high value of gradient magnitude is found, remove the pixel from the list and choose the next one of the three stored. Move up one row if all three are removed • Stop when the original pixel is reached, or execution has gone too long, or the number of rows in the list is very large 240-373: Chapter 8: Edge Detection

More Related