boofcv.alg.feature.detect.interest
Class SiftScaleSpace
- java.lang.Object
-
- boofcv.alg.feature.detect.interest.SiftScaleSpace
-
public class SiftScaleSpace extends java.lang.ObjectGenerates the pyramidal scale space as described in the SIFT [1] paper. This is, for the most part, is intended to be a faithful reproduction of the original work.
Known Deviations From Original SIFT:- No prior blur is applied to input image. Nor should you apply any.
[1] Lowe, D. "Distinctive image features from scale-invariant keypoints". International Journal of Computer Vision, 60, 2 (2004), pp.91--110.
-
-
Constructor Summary
Constructors Constructor and Description SiftScaleSpace(int firstOctave, int lastOctave, int numScales, double sigma0)Configures the scale-space
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description booleancomputeNextOctave()Computes the next octave.doublecomputeSigmaScale(int scale)Computes the effective amount of blur at the given scale in the current octave.doublecomputeSigmaScale(int octave, int scale)Returns the blur at the given octave and scaleintgetCurrentOctave()GrayF32getDifferenceOfGaussian(int dogIndex)GrayF32getImageScale(int scaleIndex)intgetNumScaleImages()intgetNumScales()intgetTotalOctaves()voidinitialize(GrayF32 input)doublepixelScaleCurrentToInput()Returns the size of a pixel in the current octave relative to the size of a pixel in the input image
-
-
-
Constructor Detail
-
SiftScaleSpace
public SiftScaleSpace(int firstOctave, int lastOctave, int numScales, double sigma0)Configures the scale-space- Parameters:
firstOctave- Initial octave. Negative numbers means it will scale up. Recommend 0 or -1.lastOctave- Last octave, inclusive. Recommend ????numScales- Number of scales in each octave. Recommend 3.sigma0- Amount of blur at the first level in the image pyramid. Recommend 1.6
-
-
Method Detail
-
computeSigmaScale
public double computeSigmaScale(int scale)
Computes the effective amount of blur at the given scale in the current octave.
-
computeSigmaScale
public double computeSigmaScale(int octave, int scale)Returns the blur at the given octave and scale
-
initialize
public void initialize(GrayF32 input)
- Parameters:
input- Input image. No prior blur should be applied to this image. Not modified.
-
computeNextOctave
public boolean computeNextOctave()
Computes the next octave. If the last octave has already been computed false is returned.- Returns:
- true if an octave was computed or false if the last one was already reached
-
getImageScale
public GrayF32 getImageScale(int scaleIndex)
-
getDifferenceOfGaussian
public GrayF32 getDifferenceOfGaussian(int dogIndex)
-
getNumScales
public int getNumScales()
-
getNumScaleImages
public int getNumScaleImages()
-
getCurrentOctave
public int getCurrentOctave()
-
getTotalOctaves
public int getTotalOctaves()
-
pixelScaleCurrentToInput
public double pixelScaleCurrentToInput()
Returns the size of a pixel in the current octave relative to the size of a pixel in the input image- Returns:
- pixel size to input image
-
-
DataMelt 3.0 © DataMelt by jWork.ORG