# Tag Info

9

I would rather look into KAZE / AKAZE, which perform equally good with significant speed-up. The deformation cases are also tolerated. OpenCV has recently obtained an implementation through GSoC 2014. You can find it here. Its OpenCV tutorial is also present here.

4

The answer boils down to 2 issues with the practical approximations of the Gaussian Kernel: Though the Gaussian Kernel is radially symmetric its discrete approximation has a rectangle support. Unless this support will have infinite length a rotation by any angle different from a multiplication of 90 degrees will yield a shape which has to modified to fit ...

4

We must produce s + 3 images in the stack of blurred images for each octave, so that ﬁnal extrema detection covers a complete octave. For $s=3$ this means you will have $s + 3 = 6$ blurred images (the Gaussian images shown in the paper in Figure 1 on the left). Having $6$ Gaussian images will result in $5$ DoG images (shown in Figure 1 on the right). This ...

4

The $\sigma$ parameter is both. The Gaussian function can generate a scale-space where $\sigma$ is the scale parameter. It doesn't mean the image is scaled, instead it is the scale at which the features are being evaluated. For example, with higher $\sigma$ the image is more blurred and therefore only larger image features contribute to the gradient ...

4

There are two versions of optical flow(OF): Feature based (sparse) or dense. In the dense version OF is applied to all the image pixels, while in the sparse one, only certain characteristic feature points are tracked. However, both approaches depend on the tracking of pixel quantities. This is fundamentally different than tracking the whole patch, because in ...

3

I think you have a matrix. Each Row / Column is a descriptor vector of a point in the image. Just like having features, let's say M features, and each point has M values corresponding to M features. So each element in the descriptor vector is a value of specific feature for this point. And yes, if you have M = 128 Features and 1000 points you'll get a ...

3

Probably not. The SIFT detector finds centers of blob-like features. Shi-Tomasi detector finds corners. Furthermore, SIFT detector operates at multiple scales, while the classic Shi-Tomasi does not.

3

In music theory, an octave is an interval in frequency, from a frequency $f$ to frequency $2f$. For example "an octave higher" means "twice the frequency". Expressed as wavelength inversely proportional to frequency, $\lambda \propto \frac{1}{f}$, an octave would be the interval from a $\lambda$ to $\frac{1}{2}\lambda$. In the SIFT paper'...

2

The paper referenced in your link seems to be this one. Of particular interest there is Table 1 (included below). The accuracy rates aren't great, though they are better than other approaches.

2

Building on previous responses: (1) You can use SIFT (or another improved variant of this local-patch descriptor) with dense sampling, instead of the inbuilt detector. You can choose the size of the local patch and the sampling density to suit your requirements of performance and computational cost. (2) SIFT is an affine invariant descriptor for wide ...

2

I don't know if I completely understand your question, but I will have a go at clarifying the scale space, multi-resolution ocataves and why they are important for SIFT. To understand the scale space it is helpful to consider how you recognise images at different distances (e.g far away you may be able to distinguish the shape of a person. As that person ...

2

Horizontal and vertical gradients are computed by taking neighbor pixel differences: $$g_{x}=L(x+1,y)-L(x-1,y)\\g_{y}=L(x,y+1)-L(x,y-1)$$ Gradient magnitude is computed the same way as in your formula: $$m(x,y)=\sqrt{g_x^2+g_y^{2}}$$ Replacing $g_{x}$ and $g_{y}$ with above will give you the original formula. Gradients are usually computed by forward or ...

2

Consider one-dimensional function $f(x)$. The first order taylor expansion is $f(x_0+h) \approx f(x_0) + f'(x_0)h$ The second order taylor exapnsion is $f(x_0+h) \approx f(x_0) + f'(x_0)h + \frac 1 2 f''(x_0)h^2$ Now we expand three-dimensional function.  D(\mathbf{x_0}+\mathbf h) \approx D(\mathbf{X_0}) + \bigg(\frac{ \partial D}{\partial \mathbf x}\...

2

The ROC: ROC curves are popularly used as performance metric for classification tasks. If the images in your dataset has class labels, then you can employ supervised learning to train a classifier (SVM for example). The dataset is split into training and testing and predicted class score from the classifier for images in the test set are compared to ground ...

2

Each SIFT descriptor corresponds to a region of the image. You take these from a bunch of images and group them into some number of clusters. I think what he's showing in the slide there is just a few samples from each cluster where he chose human-meaningful names for the clusters after the fact.

2

One of the most important characteristics of the key points is its repeatability under different geometric transformations and also lighting. Repeatability ensures that if, for example, you have two images of the same scene, at different sizes and also with a different angle of rotation, the vast majority of key points in both images will coincide and, in ...

2

LoG and DoG (an approximation of LoG) masks can serve as blob detectors. A blob can exist in an image at a number of locations $(x,y)$-coordinates and scales (some parameter; $t$). In some situation where scale space is divided into 3 discrete 'slices' and there are only 'small,' 'medium' and 'large' sized blobs, a 'medium' sized blob will have some response ...

2

I'm not sure I fully understood what's the issue you're having. Yet I will show a simple property of the Gaussian filter which might make things clearer. For simplicity, I will use 1D Signal. Yet it is easy to extend it into 2D. The Problem For $u \in \mathbb{R}$ (1D, unbounded domain), show that a Gaussian convolution with the initial condition solves ...

2

Actually, the purpose of all this is to approximate a Laplacian of Gaussian! This computation is part of the corner detection of SIFT. You can find corners by examining extrema of the Laplacian of Gaussians (2nd order derivative). You use Gaussians for denoising, and a Laplacian to find inflection points. However, it is classical to not deal directly with ...

1

The function is fully approximated if one uses all the derivatives (see Taylor expansion). With using the Hessian only, we can only make a second degree approximation (because it is second derivative matrix), which is geometrically the same as using the second order polynomial.

1

Depends. If you use two separate pre-canned libraries to compute them, likely not. However, note that when people talk about "SIFT features" they refer to two things: Point locations on the images Descriptors, a.k.a. collections of numbers computed from the pixels around the point locations. What defines SIFT is really the descriptors, whereas the point ...

1

SIFT works on points in an image while segmentation is about dividing up the image into regions. So, no, segmentation is not necessary when using SIFT. In segmentation you divide up the image into regions so classification can be done by extracting features from each region and see if you can recognize your object. A downside to this approach is that ...

1

Check out Szeliski's book: http://szeliski.org/Book/drafts/SzeliskiBook_20100903_draft.pdf There is also an old book on feature detection: http://www.amazon.com/Feature-Extraction-Processing-Computer-Edition/dp/0123965497 You can read the sections that you care about. Also, I think it is always a good idea to read about scale space theory if you are to ...

1

You essentially got it right: the final purpose of the whole BoW clustering algorithm is to somehow produce a single image descriptor for every image. In case of BoW clustering (either K-means, or hierarchical K-means, or some other clustering), this image descriptor is a histogram of visual words for that image often normalized by the number of local ...

1

First of all, there are two distinct parts to SIFT. The first part is interest point detection algorithm (aka key-point detection), which finds local extrema of the multi-scale difference-of-gaussians function. The second part is computing the feature descriptor, which is a vector describing the image patch around each key point. SIFT computes this ...

1

With slight modification you might want to use RootSift: http://www.robots.ox.ac.uk/~vgg/publications/2012/Arandjelovic12/arandjelovic12.pdf Also the other steps in the paper will guide to improve the recall rate. Cheers,

1

The descriptor obtained from a $64\times 64$ neighborhood of interest point at the obtained scale. It will divide this $64\times 64$ region to $16\times 16$ patches which lead to 16 patches. For each patch we calculate the gradients and then find the dominant direction of gradients(which has some details), then taking the dominant direction as the ...

1

I can only find this is the paper: As this graph shows, the highest repeatability is obtained when sampling 3 scales per octave, and this is the number of scale samples used for all other experiments throughout this paper. It might seem surprising that the repeatability does not continue to improve as more scales are sampled. The reason is that ...

1

Yes, only scale space is sufficient, but at some point when you are scaling it down, instead of creating new Gaussian filters, it's more efficient to just resize the image and use the same/old filters (ie, don't need to keep increasing sigma, but rather decrease image size) this has the same effect as just increasing the scale (σ^2 = scale)

1

The quantity $\frac{\partial D}{\partial \textbf{x}}$ is a vector, since it is the derivative of the scalar function $D(\textbf{x})$ w.r.t. all the elements of $\textbf{x}$. In the formula it is assumed that all vectors are column vectors, so in order to compute the dot product of the derivative $\frac{\partial D}{\partial \textbf{x}}$ and the vector \$\...

Only top voted, non community-wiki answers of a minimum length are eligible