# blob detection

Post on 23-Feb-2016

66 views

Embed Size (px)

DESCRIPTION

Blob detection. Feature detection with s cale selection. We want to extract features with characteristic scale that is covariant with the image transformation. Blob detection: Basic idea. - PowerPoint PPT PresentationTRANSCRIPT

Introduction

Blob detection

1Feature detection with scale selectionWe want to extract features with characteristic scale that is covariant with the image transformation

2Blob detection: Basic ideaTo detect blobs, convolve the image with a blob filter at multiple scales and look for extrema of filter response in the resulting scale space

3Blob detection: Basic ideaFind maxima and minima of blob filter response in space and scale

*=maximaminimaSource: N. SnavelyBlob filterLaplacian of Gaussian: Circularly symmetric operator for blob detection in 2D

5Recall: Edge detection

f

Source: S. SeitzEdgeDerivativeof GaussianEdge = maximumof derivative6Edge detection, Take 2

f

EdgeSecond derivativeof Gaussian (Laplacian)Edge = zero crossingof second derivativeSource: S. Seitz7An edge filtered with the Laplacian of Gaussian is the difference between the blurry edge and the original edge.

From edges to blobsEdge = rippleBlob = superposition of two ripplesSpatial selection: the magnitude of the Laplacianresponse will achieve a maximum at the center ofthe blob, provided the scale of the Laplacian ismatched to the scale of the blobmaximum8Scale selectionWe want to find the characteristic scale of the blob by convolving it with Laplacians at several scales and looking for the maximum responseHowever, Laplacian response decays as scale increases:

increasing original signal(radius=8)9Scale normalizationThe response of a derivative of Gaussian filter to a perfect step edge decreases as increases

10The area under the first derivative of Gaussian from infinity to 0 is equal to the value of the Gaussian at zeroScale normalizationThe response of a derivative of Gaussian filter to a perfect step edge decreases as increasesTo keep response the same (scale-invariant), must multiply Gaussian derivative by Laplacian is the second Gaussian derivative, so it must be multiplied by 211Effect of scale normalization

Scale-normalized Laplacian response

Unnormalized Laplacian responseOriginal signalmaximum12Blob detection in 2DLaplacian of Gaussian: Circularly symmetric operator for blob detection in 2D

Scale-normalized:13Scale selectionAt what scale does the Laplacian achieve a maximum response to a binary circle of radius r?rimage

Laplacian14Scale selectionAt 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 circleThe Laplacian is given by (up to scale):

Therefore, the maximum response occurs at

rimage

circleLaplacian015Characteristic scaleWe define the characteristic scale of a blob as the scale that produces peak of Laplacian response in the blob center

characteristic scaleT. Lindeberg (1998). "Feature detection with automatic scale selection." International Journal of Computer Vision 30 (2): pp 77--116. 16Scale-space blob detectorConvolve image with scale-normalized Laplacian at several scales17Scale-space blob detector: Example

18Scale-space blob detector: Example

19Scale-space blob detectorConvolve image with scale-normalized Laplacian at several scalesFind maxima of squared Laplacian response in scale-space

20Scale-space blob detector: Example

21Approximating the Laplacian with a difference of Gaussians:

(Laplacian)(Difference of Gaussians)Efficient implementation22

Efficient implementationDavid G. Lowe. "Distinctive image features from scale-invariant keypoints. IJCV 60 (2), pp. 91-110, 2004. 23From feature detection to feature descriptionScaled and rotated versions of the same neighborhood will give rise to blobs that are related by the same transformationWhat to do if we want to compare the appearance of these image regions?Normalization: transform these regions into same-size circlesProblem: rotational ambiguity

24Eliminating rotation ambiguityTo assign a unique orientation to circular image windows:Create histogram of local gradient directions in the patchAssign canonical orientation at peak of smoothed histogram

02p25SIFT featuresDetected features with characteristic scales and orientations:

David G. Lowe. "Distinctive image features from scale-invariant keypoints. IJCV 60 (2), pp. 91-110, 2004.

From feature detection to feature descriptionDetection is covariant:features(transform(image)) = transform(features(image))Description is invariant:features(transform(image)) = features(image)

27SIFT descriptors

David G. Lowe. "Distinctive image features from scale-invariant keypoints. IJCV 60 (2), pp. 91-110, 2004. Properties of SIFTExtraordinarily robust detection and description techniqueCan handle changes in viewpointUp to about 60 degree out-of-plane rotationCan handle significant changes in illuminationSometimes even day vs. nightFast and efficientcan run in real timeLots of code available

Source: N. SnavelyAffine adaptationAffine transformation approximates viewpoint changes for roughly planar objects and roughly orthographic cameras

30Affine adaptation

direction of the slowest changedirection of the fastest change(max)-1/2(min)-1/2Consider the second moment matrix of the window containing the blob:

Recall:This ellipse visualizes the characteristic shape of the window31

Affine adaptation exampleScale-invariant regions (blobs)32Affine adaptation example

Affine-adapted blobs33