Package boofcv.abst.feature.detdesc
Class Surf_DetectDescribe<T extends ImageGray<T>,II extends ImageGray<II>>
java.lang.Object
boofcv.abst.feature.detdesc.Surf_DetectDescribe<T,II>
- Type Parameters:
T
- Input image typeII
- Integral image type
- All Implemented Interfaces:
DescriptorInfo<TupleDesc_F64>
,DetectDescribePoint<T,
,TupleDesc_F64> FeatureSets
,FoundPointSO
,InterestPointDetector<T>
- Direct Known Subclasses:
Surf_DetectDescribe_MT
public class Surf_DetectDescribe<T extends ImageGray<T>,II extends ImageGray<II>>
extends Object
implements DetectDescribePoint<T,TupleDesc_F64>
Wrapper around SURF algorithms for
DetectDescribePoint
.-
Field Summary
Modifier and TypeFieldDescriptionprotected DescribePointSurf<II>
protected FastHessianFeatureDetector<II>
protected DogArray_F64
protected DogArray<TupleDesc_F64>
protected List<ScalePoint>
protected II
protected OrientationIntegral<II>
-
Constructor Summary
ConstructorDescriptionSurf_DetectDescribe
(FastHessianFeatureDetector<II> detector, OrientationIntegral<II> orientation, DescribePointSurf<II> describe, Class<T> imageType) -
Method Summary
Modifier and TypeMethodDescriptionprotected void
Creates new description instance which can be processed by this classvoid
Detects interest points inside the provided image.getDescription
(int index) Returns the feature descriptor at the specified index.The type of region descriptor generatedGet the expected input image typegetLocation
(int featureIndex) The center location of the feature inside the image.int
Returns the number of interest points found.int
The number of feature sets.double
getOrientation
(int featureIndex) Returns the features found orientation.double
getRadius
(int featureIndex) Returns the detected object's circular radiusint
getSet
(int index) Returns the set that a feature belongs inboolean
If the interest point detector estimates the feature's orientationboolean
hasScale()
Does the interest point detector have scale information.
-
Field Details
-
detector
-
orientation
-
describe
-
ii
-
features
-
foundPoints
-
featureAngles
-
-
Constructor Details
-
Surf_DetectDescribe
public Surf_DetectDescribe(FastHessianFeatureDetector<II> detector, OrientationIntegral<II> orientation, DescribePointSurf<II> describe, Class<T> imageType)
-
-
Method Details
-
createDescription
Description copied from interface:DescriptorInfo
Creates new description instance which can be processed by this class- Specified by:
createDescription
in interfaceDescriptorInfo<T extends ImageGray<T>>
- Returns:
- New descriptor
-
getDescription
Description copied from interface:DetectDescribePoint
Returns the feature descriptor at the specified index.
WARNING: The returned data structure is recycled each time
InterestPointDetector.detect(boofcv.struct.image.ImageBase)
is called. Create a copy if this is a problem.- Specified by:
getDescription
in interfaceDetectDescribePoint<T extends ImageGray<T>,
II extends ImageGray<II>> - Parameters:
index
- Which feature- Returns:
- Feature descriptor
-
getInputType
Description copied from interface:InterestPointDetector
Get the expected input image type- Specified by:
getInputType
in interfaceInterestPointDetector<T extends ImageGray<T>>
-
getDescriptionType
Description copied from interface:DescriptorInfo
The type of region descriptor generated- Specified by:
getDescriptionType
in interfaceDescriptorInfo<T extends ImageGray<T>>
- Returns:
- Returns the descriptor type.
-
detect
Description copied from interface:InterestPointDetector
Detects interest points inside the provided image.- Specified by:
detect
in interfaceInterestPointDetector<T extends ImageGray<T>>
- Parameters:
input
- Input features are detected inside of.
-
getNumberOfSets
public int getNumberOfSets()Description copied from interface:FeatureSets
The number of feature sets.- Specified by:
getNumberOfSets
in interfaceFeatureSets
- Returns:
- number of feature sets
-
getSet
public int getSet(int index) Description copied from interface:FeatureSets
Returns the set that a feature belongs in- Specified by:
getSet
in interfaceFeatureSets
- Parameters:
index
- Which feature
-
computeDescriptors
protected void computeDescriptors() -
getNumberOfFeatures
public int getNumberOfFeatures()Description copied from interface:FoundPointSO
Returns the number of interest points found.- Specified by:
getNumberOfFeatures
in interfaceFoundPointSO
- Returns:
- Number of interest points.
-
getLocation
Description copied from interface:FoundPointSO
The center location of the feature inside the image.
WARNING: Do not save the returned reference, copy instead. The returned point can be recycled each time this function is called.
- Specified by:
getLocation
in interfaceFoundPointSO
- Parameters:
featureIndex
- The feature's index.- Returns:
- Location of the feature in image pixels.
-
getRadius
public double getRadius(int featureIndex) Description copied from interface:FoundPointSO
Returns the detected object's circular radius
- Specified by:
getRadius
in interfaceFoundPointSO
- Parameters:
featureIndex
- Feature whose radius is being requested.- Returns:
- Object's radius
-
getOrientation
public double getOrientation(int featureIndex) Description copied from interface:FoundPointSO
Returns the features found orientation.- Specified by:
getOrientation
in interfaceFoundPointSO
- Parameters:
featureIndex
- Feature whose- Returns:
- Orientation in radians.
-
hasScale
public boolean hasScale()Description copied from interface:InterestPointDetector
Does the interest point detector have scale information. This made available through the radius.- Specified by:
hasScale
in interfaceInterestPointDetector<T extends ImageGray<T>>
- Returns:
- true if it has scale information and false otherwise
-
hasOrientation
public boolean hasOrientation()Description copied from interface:InterestPointDetector
If the interest point detector estimates the feature's orientation- Specified by:
hasOrientation
in interfaceInterestPointDetector<T extends ImageGray<T>>
- Returns:
- true if it estimates the orientation
-