computer vision n.
Skip this Video
Loading SlideShow in 5 Seconds..
Computer Vision PowerPoint Presentation
Download Presentation
Computer Vision

Loading in 2 Seconds...

play fullscreen
1 / 48

Computer Vision - PowerPoint PPT Presentation

  • Uploaded on

Computer Vision. Lecture 13 Roger S. Gaborski. NPcMS49V5hg SIFT U0wqePj4Mx0 SIFT Object Recognition using VLfeat PU6BKIh1y4o 0KLuBlGdFvw.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

Computer Vision

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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
    Presentation Transcript
    1. Computer Vision Lecture 13 Roger S. Gaborski Roger S. Gaborski

    2. • SIFT • • SIFT Object Recognition using VLfeat • • Roger S. Gaborski

    3. Harris Edge Detection:Not Invariant to Scaling Corner All points will be classified as edges Roger S. Gaborski

    4. Blob Detection Roger S. Gaborski

    5. Recall: Edge detectionDerivative of Gaussian Edge f Derivativeof Gaussian Edge = maximumof derivative Roger S. Gaborski * Is the convolution operator, NOT correlation (otherwise polarity flipped) Source: S. Seitz

    6. Edge detection – Second Derivative of Gaussian Edge f Second derivativeof Gaussian (Laplacian) Edge = zero crossingof second derivative Roger S. Gaborski Source: S. Seitz

    7. Scale Issue – Laplacianwide pulse edge Note Value of Response – about -0.05 Roger S. Gaborski

    8. Scale Issue – Laplaciannarrower pulse Roger S. Gaborski

    9. Scale Issue – Laplacian Pulse matches Laplacian – Max Response Note Value of Response for Matched Pulse – about -0.10 Roger S. Gaborski

    10. Blob Detection • The magnitude of Laplacian response is maximum when scale of Laplacian is matched to the blob • Convolve the blob with Laplacians at several different scales and look for the maximum • BUT – Laplacian response decays as scale increases  see next slide Roger S. Gaborski

    11. Note Response Values Increasing scale – sigma  Decreasing Response Values Roger S. Gaborski

    12. Scale selection We want to find the characteristic scale of the blob by convolving it with Laplacians at several scales and looking for the maximum response However, Laplacian response decays as scale increases: original signal(radius=8) increasing σ Roger S. Gaborski

    13. Scale normalization The response of a derivative of Gaussian filter to a perfect step edge decreases as σ increases Roger S. Gaborski

    14. Scale normalization The response of a derivative of Gaussian filter to a perfect step edge decreases as σ increases To keep response the same (scale-invariant), must multiply Gaussian derivative by σ Laplacian is the second Gaussian derivative, so it must be multiplied by σ2 Roger S. Gaborski

    15. Effect of scale normalization Scale-normalized Laplacian response maximum Original signal Unnormalized Laplacian response Roger S. Gaborski

    16. Blob detection in 2D Laplacian of Gaussian: Circularly symmetric operator for blob detection in 2D Roger S. Gaborski

    17. Blob detection in 2D Laplacian of Gaussian: Circularly symmetric operator for blob detection in 2D Scale-normalized: Roger S. Gaborski

    18. Scale selection At what scale does the Laplacian achieve a maximum response to a binary circle of radius r? r Roger S. Gaborski image Laplacian

    19. Scale selection At what scale does the Laplacian achieve a maximum response to a binary circle of radius r? To get maximum response, the zeros of the Laplacian have to be aligned with the circle The Laplacian is given by (up to scale): The maximum response occurs at r circle Roger S. Gaborski image Laplacian

    20. Characteristic scale We define the characteristic scale of a blob as the scale that produces peak of Laplacian response in the blob center characteristic scale T. Lindeberg (1998). "Feature detection with automatic scale selection."International Journal of Computer Vision30 (2): pp 77--116. Roger S. Gaborski

    21. Scale-space blob detector Convolve image with scale-normalized Laplacian at several scales Find maxima of squared Laplacian response in scale-space Roger S. Gaborski

    22. Scale-space blob detector: Example Roger S. Gaborski

    23. Scale-space blob detector: Example Roger S. Gaborski

    24. Scale-space blob detector: Example Roger S. Gaborski

    25. Approximating the Laplacian with a Difference of Gaussians: Efficient implementation (Laplacian) (Difference of Gaussians) Roger S. Gaborski

    26. Scale Space • Start with original image • Create progressively blurred images • Blur with Gaussian function • Progressive increase blur • One octave: doubling of blur • Resize original image to 50% • Repeat creating progressively blurred images • Repeat … Roger S. Gaborski

    27. DoG implementation David G. Lowe. "Distinctive image features from scale-invariant keypoints.”IJCV 60 (2), pp. 91-110, 2004. Roger S. Gaborski

    28. Gaussian Blurred Images and Difference of Gaussian Images Grouped by octave From Striker Roger S. Gaborski

    29. Scale Invariant Feature Transform • Feature Detector and Feature Descriptor • Detection stages for SIFT features: • Scale-space extrema detection • Keypoint localization • Orientation assignment • Generation of keypoint descriptors. Following slides based on Strider, Univ. Toronto and Lowe Roger S. Gaborski

    30. Keypoints are maxima of Difference of Gaussians (DoG) that occur at multiple scales • Start with Gaussian blurred image: L(x; y; σ ) = G(x; y; σ )* I(x; y) Where: G(x; y; σ ) = 1/(2 pi*σ2) (exp-(x2 +y2 )/σ2 ) Roger S. Gaborski

    31. Difference of Gaussian Filter: G(x; y; kσ ) – G(x; y; σ) • Convolve blurred image with Difference of Gaussian: D(x; y; σ ) = L(x; y; k σ) - L(x; y; σ) Which is simply the difference of Gaussian blurred images at scales σ and k σ Roger S. Gaborski

    32. Blurred Images at Different Scales Computation of DoG REF: Lowe , 2004 Roger S. Gaborski

    33. Scale Space Extrema Detection • Group convolved images by octave Octave  doubling of σ • Keypoints are idenitied as local maxima or minima of the DoG images across scales. • Each pixel in the DoG images is compared to its 8 neighbors at the same scale, plus the 9 corresponding neighbors at neighboring scales. • If the pixel is a local maximum or minimum, it is selected as a candidate keypoint Roger S. Gaborski

    34. Local extrema detection – pixel marked with X compared to 26 neighbors in 3x3x3 space of adjacent DoGimages X is a key point if X is either greater (or less than) than all of the neighbors Roger S. Gaborski

    35. Keypoint Selection • Keypoints with low contrast are deleted • Keypoints on edges are deleted • Each remaining keypoint is assigned an orientation Roger S. Gaborski

    36. Keypoint Orientation • For each remaining keypoint • Compute gradient orientation histogram in the neighborhood of keypoint • Contribution of each neighboring pixel is weighted by the gradient magnitude and a Gaussian window with a σ that is 1.5 the scale of the keypoint • Peaks in histogram correspond to dominate orientations • Separate keypoint for direction corresponding to maximum in histogram and any direction within 80% of the maximum Roger S. Gaborski

    37. 16x16 Pixels Around Keypoint Divide 16x16 pixels into 16 , 4x4 sub windows Calculate gradient magnitude and direction in each sub window Store gradient and magnitude in 8 bin histograms Roger S. Gaborski

    38. Gradients with an angle between 0 and 44 degrees goes in the first bin, etc. The magnitude depends on the gradients magnitude and the gradient’s distance from the key point Roger S. Gaborski

    39. Key Point Vector • Each 4x4 sub window has 8 numbers associate with the sub window (the histogram) • 16 sub windows • 16 * 8 = 128 numbers • Normalize the vector (divide vector by the sqrt of the sum of the elements squared) • The resulting normalized vector is the feature vector associated with each key point Roger S. Gaborski

    40. SIFT Descriptor • Histogram contains 8 bins • Each descriptor has 16 histograms around keypoint • 4 x 4 x 8 = 128 long feature vector for each keypoint • Normalize feature for illumination invariance Roger S. Gaborski

    41. Recognition using SIFT • Compute SIFT features for input image • Match features in SIFT database Roger S. Gaborski

    42. Gaussian Blurred Images and Difference of Gaussian Images Grouped by octave From Striker Roger S. Gaborski

    43. Maxima of DoG across scales Keypoints after removing low contrast points Roger S. Gaborski

    44. Removal of Edge Points Roger S. Gaborski

    45. Arrows indicate Scale and Orientation Roger S. Gaborski

    46. • MSER • SURF (Speeded Up Robust Features) Roger S. Gaborski

    47. Image Features • The Future of Image Search author: Jitendra Malik, UC Berkeley, University of California, Roger S. Gaborski

    48. SIFT Feature Representation • Keypoint Feature Descriptor • Set of orientation histograms on 4x4 neighborhoods (Lowe 2004) 8x8 set of samples 2x2 Descriptor Array computer from 8x8 set of samples Roger S. Gaborski