Scale-invariant feature operator
Feature detection |
---|
Edge detection |
Corner detection |
Blob detection |
Ridge detection |
Hough transform |
Structure tensor |
Affine invariant feature detection |
Feature description |
Scale space |
In the fields of computer vision and image analysis, the scale-invariant feature operator (or SFOP) is an algorithm to detect local features in images. The algorithm was published by Förstner et al. in 2009.[1]
Algorithm
The scale-invariant feature operator (SFOP) is based on two theoretical concepts:
Desired properties of keypoint detectors:
- Invariance and repeatability for object recognition
- Accuracy to support camera calibration
- Interpretability: Especially corners and circles, should be part of the detected keypoints (see figure).
- As few control parameters as possible with clear semantics
- Complementarity to known detectors
scale-invariant corner/circle detector.
Theory
Maximize the weight
Maximize the weight [math]\displaystyle{ w }[/math]= 1/variance of a point [math]\displaystyle{ p }[/math]
[math]\displaystyle{ w(\mathbf{p},\alpha,\tau,\sigma)=\left(N(\sigma)-2\right)\frac{\lambda_{min}(M(\mathbf{p},\alpha,\tau,\sigma))}{\Omega(\mathbf{p},\alpha,\tau,\sigma)} }[/math]
comprising:
1. the image model[2]
[math]\displaystyle{ \begin{align} \Omega(\mathbf{p},\alpha,\tau,\sigma)& =\sum_{n=1}^{N(\sigma)}[(\mathbf{q}_n-\mathbf{p})^T \mathbf{R}_{\alpha}\mathbf{\nabla}_T g(\mathbf{q}_n)]^2G_{\sigma}(\mathbf{q}_n-\mathbf{p}) \\ & =N(\sigma)\mathbf{tr}\left\{R_{\alpha}\mathbf{\nabla}_{\tau}\mathbf{\nabla}_{\tau}^TR_{\alpha}^T*\mathbf{p}\mathbf{p}^TG_{\sigma}(\mathbf{p})\right\} \end{align} }[/math]
2. the smaller eigenvalue of the structure tensor [math]\displaystyle{ \underbrace{M(\mathbf{p},\alpha,\tau,\sigma)}_{\text{structure tensor}}=\underbrace{G_{\sigma}(\mathbf{p})}_{\text{weighted summation}}*\underbrace{(R_{\sigma}\nabla_{\tau}\nabla_{\tau}^TR_{\sigma}^T)}_{\text{squared rotated gradients}} }[/math]
Reduce the search space
Reduce the 5-dimensional search space by
- linking the differentiation scale [math]\displaystyle{ \tau }[/math] to the integration scale
- [math]\displaystyle{ \tau=\sigma/3 }[/math]
- solving for the optimal [math]\displaystyle{ \hat \alpha }[/math] using the model
- [math]\displaystyle{ \Omega(\alpha) = a - b \cos(2 \alpha - 2 \alpha_0) }[/math]
- and determining the parameters from three angles, e. g.
- [math]\displaystyle{ \Omega(0^\circ), \Omega(60^\circ), \Omega(120^\circ)\quad \rightarrow \quad a, b, \alpha_0 \quad \rightarrow \quad \hat\alpha }[/math]
- pre-selection possible:
- [math]\displaystyle{ \alpha = 0^\circ \, \rightarrow \, \mbox{junctions}, \quad \alpha = 90^\circ \, \rightarrow \, \mbox{circular features} }[/math]
Filter potential keypoints
- non-maxima suppression over scale, space and angle
- thresholding the isotropy [math]\displaystyle{ \lambda_{2(M)} }[/math]:
eigenvalues characterize the shape of the keypoint, smallest eigenvalue has to be larger than threshold [math]\displaystyle{ T_{\lambda} }[/math]
derived from noise variance [math]\displaystyle{ V(n) }[/math] and significance level [math]\displaystyle{ S }[/math]:
- [math]\displaystyle{ T_\lambda(V(n), \tau, \sigma, S) = \frac{N(\sigma)}{16 \pi \tau^4} V(n) \chi^2_{2,S} }[/math]
Algorithm
Results
Interpretability of SFOP keypoints
See also
References
- ↑ Forstner, Wolfgang; Dickscheid, Timo; Schindler, Falko (2009). "Detecting interpretable and accurate scale-invariant keypoints". 2009 IEEE 12th International Conference on Computer Vision. pp. 2256–2263. doi:10.1109/ICCV.2009.5459458. ISBN 978-1-4244-4420-5.
- ↑ 2.0 2.1 Bigün, J. (1990). "A Structure Feature for Some Image Processing Applications Based on Spiral Functions". Computer Vision, Graphics, and Image Processing 51 (2): 166–194.
- ↑ Förstner, Wolfgang (1994). "A Framework for Low Level Feature Extraktion". 3. Stockholm, Sweden. pp. 383–394.
External links
Original source: https://en.wikipedia.org/wiki/Scale-invariant feature operator.
Read more |