boofcv.factory.feature.tracker
Class FactoryPointTracker
- java.lang.Object
-
- boofcv.factory.feature.tracker.FactoryPointTracker
-
public class FactoryPointTracker extends java.lang.ObjectFactory for creating trackers which implementPointTracker. These trackers are intended for use in SFM applications. Some features which individual trackers can provide are lost when using the high level interfacePointTracker. To create low level tracking algorithms seeFactoryTrackerAlg- See Also:
FactoryTrackerAlg
-
-
Constructor Summary
Constructors Constructor and Description FactoryPointTracker()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method and Description static <I extends ImageGray>
PointTracker<I>combined_FH_SURF_KLT(PkltConfig kltConfig, int reactivateThreshold, ConfigFastHessian configDetector, ConfigSurfDescribe.Stability configDescribe, ConfigSlidingIntegral configOrientation, java.lang.Class<I> imageType)Creates a tracker which detects Fast-Hessian features, describes them with SURF, nominally tracks them using KLT.static <I extends ImageGray,D extends ImageGray>
PointTracker<I>combined_ST_SURF_KLT(ConfigGeneralDetector configExtract, PkltConfig kltConfig, int reactivateThreshold, ConfigSurfDescribe.Stability configDescribe, ConfigSlidingIntegral configOrientation, java.lang.Class<I> imageType, java.lang.Class<D> derivType)Creates a tracker which detects Shi-Tomasi corner features, describes them with SURF, and nominally tracks them using KLT.static <I extends ImageGray,D extends ImageGray,Desc extends TupleDesc>
PointTracker<I>combined(DetectDescribePoint<I,Desc> detector, AssociateDescription<Desc> associate, PkltConfig kltConfig, int reactivateThreshold, java.lang.Class<I> imageType)Creates a tracker that is a hybrid between KLT and Detect-Describe-Associate (DDA) trackers.static <I extends ImageGray,Desc extends TupleDesc>
PointTracker<I>combined(InterestPointDetector<I> detector, OrientationImage<I> orientation, DescribeRegionPoint<I,Desc> describe, AssociateDescription<Desc> associate, PkltConfig kltConfig, int reactivateThreshold, java.lang.Class<I> imageType)Creates a tracker that is a hybrid between KLT and Detect-Describe-Associate (DDA) trackers.static <I extends ImageGray,D extends ImageGray>
GeneralFeatureDetector<I,D>createShiTomasi(ConfigGeneralDetector config, java.lang.Class<D> derivType)Creates a Shi-Tomasi corner detector specifically designed for SFM.static <I extends ImageGray,D extends ImageGray>
PointTracker<I>dda_FAST_BRIEF(ConfigFast configFast, ConfigGeneralDetector configExtract, int maxAssociationError, java.lang.Class<I> imageType)Creates a tracker which detects FAST corner features and describes them with BRIEF.static <I extends ImageGray>
PointTracker<I>dda_FH_SURF_Fast(ConfigFastHessian configDetector, ConfigSurfDescribe.Speed configDescribe, ConfigAverageIntegral configOrientation, java.lang.Class<I> imageType)Creates a tracker which detects Fast-Hessian features and describes them with SURF using the faster variant of SURF.static <I extends ImageGray>
PointTracker<I>dda_FH_SURF_Stable(ConfigFastHessian configDetector, ConfigSurfDescribe.Stability configDescribe, ConfigSlidingIntegral configOrientation, java.lang.Class<I> imageType)Creates a tracker which detects Fast-Hessian features and describes them with SURF using the faster variant of SURF.static <I extends ImageGray,D extends ImageGray>
PointTracker<I>dda_ST_BRIEF(int maxAssociationError, ConfigGeneralDetector configExtract, java.lang.Class<I> imageType, java.lang.Class<D> derivType)Creates a tracker which detects Shi-Tomasi corner features and describes them with BRIEF.static <I extends ImageGray,D extends ImageGray>
PointTracker<I>dda_ST_NCC(ConfigGeneralDetector configExtract, int describeRadius, java.lang.Class<I> imageType, java.lang.Class<D> derivType)Creates a tracker which detects Shi-Tomasi corner features and describes them with NCC.static <I extends ImageGray,Desc extends TupleDesc>
DetectDescribeAssociate<I,Desc>dda(DetectDescribePoint<I,Desc> detDesc, AssociateDescription2D<Desc> associate, boolean updateDescription)static <I extends ImageGray,D extends ImageGray,Desc extends TupleDesc>
PointTracker<I>dda(GeneralFeatureDetector<I,D> detector, DescribeRegionPoint<I,Desc> describe, AssociateDescription2D<Desc> associate, double scale, java.lang.Class<I> imageType)static <I extends ImageGray,Desc extends TupleDesc>
DetectDescribeAssociate<I,Desc>dda(InterestPointDetector<I> detector, OrientationImage<I> orientation, DescribeRegionPoint<I,Desc> describe, AssociateDescription2D<Desc> associate, boolean updateDescription)Creates a tracker which uses the detect, describe, associate architecture.static <I extends ImageGray,D extends ImageGray>
PointTracker<I>klt(int[] scaling, ConfigGeneralDetector configExtract, int featureRadius, java.lang.Class<I> imageType, java.lang.Class<D> derivType)Pyramid KLT feature tracker.static <I extends ImageGray,D extends ImageGray>
PointTracker<I>klt(PkltConfig config, ConfigGeneralDetector configExtract, java.lang.Class<I> imageType, java.lang.Class<D> derivType)Pyramid KLT feature tracker.
-
-
-
Method Detail
-
klt
public static <I extends ImageGray,D extends ImageGray> PointTracker<I> klt(int[] scaling, ConfigGeneralDetector configExtract, int featureRadius, java.lang.Class<I> imageType, java.lang.Class<D> derivType)
Pyramid KLT feature tracker.- Parameters:
scaling- Scales in the image pyramid. Recommend [1,2,4] or [2,4]configExtract- Configuration for extracting featuresfeatureRadius- Size of the tracked feature. Try 3 or 5imageType- Input image type.derivType- Image derivative type.- Returns:
- KLT based tracker.
- See Also:
PyramidKltTracker
-
klt
public static <I extends ImageGray,D extends ImageGray> PointTracker<I> klt(PkltConfig config, ConfigGeneralDetector configExtract, java.lang.Class<I> imageType, java.lang.Class<D> derivType)
Pyramid KLT feature tracker.- Parameters:
config- Config for the tracker. Try PkltConfig.createDefault().configExtract- Configuration for extracting features- Returns:
- KLT based tracker.
- See Also:
PyramidKltTracker
-
dda_FH_SURF_Fast
public static <I extends ImageGray> PointTracker<I> dda_FH_SURF_Fast(ConfigFastHessian configDetector, ConfigSurfDescribe.Speed configDescribe, ConfigAverageIntegral configOrientation, java.lang.Class<I> imageType)
Creates a tracker which detects Fast-Hessian features and describes them with SURF using the faster variant of SURF.- Parameters:
configDetector- Configuration for SURF detectorconfigDescribe- Configuration for SURF descriptorconfigOrientation- Configuration for orientationimageType- Type of image the input is.- Returns:
- SURF based tracker.
- See Also:
DescribePointSurf,DdaManagerDetectDescribePoint
-
dda_FH_SURF_Stable
public static <I extends ImageGray> PointTracker<I> dda_FH_SURF_Stable(ConfigFastHessian configDetector, ConfigSurfDescribe.Stability configDescribe, ConfigSlidingIntegral configOrientation, java.lang.Class<I> imageType)
Creates a tracker which detects Fast-Hessian features and describes them with SURF using the faster variant of SURF.- Parameters:
configDetector- Configuration for SURF detectorconfigDescribe- Configuration for SURF descriptorconfigOrientation- Configuration for orientationimageType- Type of image the input is.- Returns:
- SURF based tracker.
- See Also:
DescribePointSurf,DdaManagerDetectDescribePoint
-
dda_ST_BRIEF
public static <I extends ImageGray,D extends ImageGray> PointTracker<I> dda_ST_BRIEF(int maxAssociationError, ConfigGeneralDetector configExtract, java.lang.Class<I> imageType, java.lang.Class<D> derivType)
Creates a tracker which detects Shi-Tomasi corner features and describes them with BRIEF.- Parameters:
maxAssociationError- Maximum allowed association error. Try 200.configExtract- Configuration for extracting featuresimageType- Type of image being processed.derivType- Type of image used to store the image derivative. null == use default- See Also:
ShiTomasiCornerIntensity,DescribePointBrief,DdaManagerDetectDescribePoint
-
dda_FAST_BRIEF
public static <I extends ImageGray,D extends ImageGray> PointTracker<I> dda_FAST_BRIEF(ConfigFast configFast, ConfigGeneralDetector configExtract, int maxAssociationError, java.lang.Class<I> imageType)
Creates a tracker which detects FAST corner features and describes them with BRIEF.- Parameters:
configFast- Configuration for FAST detectorconfigExtract- Configuration for extracting featuresmaxAssociationError- Maximum allowed association error. Try 200.imageType- Type of image being processed.- See Also:
FastCornerIntensity,DescribePointBrief,DdaManagerDetectDescribePoint
-
dda_ST_NCC
public static <I extends ImageGray,D extends ImageGray> PointTracker<I> dda_ST_NCC(ConfigGeneralDetector configExtract, int describeRadius, java.lang.Class<I> imageType, java.lang.Class<D> derivType)
Creates a tracker which detects Shi-Tomasi corner features and describes them with NCC.- Parameters:
configExtract- Configuration for extracting featuresdescribeRadius- Radius of the region being described. Try 2.imageType- Type of image being processed.derivType- Type of image used to store the image derivative. null == use default- See Also:
ShiTomasiCornerIntensity,DescribePointPixelRegionNCC,DdaManagerDetectDescribePoint
-
dda
public static <I extends ImageGray,Desc extends TupleDesc> DetectDescribeAssociate<I,Desc> dda(InterestPointDetector<I> detector, OrientationImage<I> orientation, DescribeRegionPoint<I,Desc> describe, AssociateDescription2D<Desc> associate, boolean updateDescription)
Creates a tracker which uses the detect, describe, associate architecture.- Type Parameters:
I- Type of input image.Desc- Type of region description- Parameters:
detector- Interest point detector.orientation- Optional orientation estimation algorithm. Can be null.describe- Region description.associate- Description association.updateDescription- After a track has been associated should the description be changed? Try false.- Returns:
- tracker
-
dda
public static <I extends ImageGray,Desc extends TupleDesc> DetectDescribeAssociate<I,Desc> dda(DetectDescribePoint<I,Desc> detDesc, AssociateDescription2D<Desc> associate, boolean updateDescription)
-
combined_FH_SURF_KLT
public static <I extends ImageGray> PointTracker<I> combined_FH_SURF_KLT(PkltConfig kltConfig, int reactivateThreshold, ConfigFastHessian configDetector, ConfigSurfDescribe.Stability configDescribe, ConfigSlidingIntegral configOrientation, java.lang.Class<I> imageType)
Creates a tracker which detects Fast-Hessian features, describes them with SURF, nominally tracks them using KLT.- Type Parameters:
I- Input image type.- Parameters:
kltConfig- Configuration for KLT trackerreactivateThreshold- Tracks are reactivated after this many have been dropped. Try 10% of maxMatchesconfigDetector- Configuration for SURF detectorconfigDescribe- Configuration for SURF descriptorconfigOrientation- Configuration for region orientationimageType- Type of image the input is.- Returns:
- SURF based tracker.
- See Also:
DescribePointSurf,DdaManagerDetectDescribePoint
-
combined_ST_SURF_KLT
public static <I extends ImageGray,D extends ImageGray> PointTracker<I> combined_ST_SURF_KLT(ConfigGeneralDetector configExtract, PkltConfig kltConfig, int reactivateThreshold, ConfigSurfDescribe.Stability configDescribe, ConfigSlidingIntegral configOrientation, java.lang.Class<I> imageType, java.lang.Class<D> derivType)
Creates a tracker which detects Shi-Tomasi corner features, describes them with SURF, and nominally tracks them using KLT.- Parameters:
configExtract- Configuration for extracting featureskltConfig- Configuration for KLTreactivateThreshold- Tracks are reactivated after this many have been dropped. Try 10% of maxMatchesconfigDescribe- Configuration for SURF descriptorconfigOrientation- Configuration for region orientation. If null then orientation isn't estimatedimageType- Type of image the input is.derivType- Image derivative type. @return SURF based tracker.- See Also:
ShiTomasiCornerIntensity,DescribePointSurf,DdaManagerDetectDescribePoint
-
combined
public static <I extends ImageGray,Desc extends TupleDesc> PointTracker<I> combined(InterestPointDetector<I> detector, OrientationImage<I> orientation, DescribeRegionPoint<I,Desc> describe, AssociateDescription<Desc> associate, PkltConfig kltConfig, int reactivateThreshold, java.lang.Class<I> imageType)
Creates a tracker that is a hybrid between KLT and Detect-Describe-Associate (DDA) trackers.- Parameters:
detector- Feature detector.orientation- Optional feature orientation. Can be null.describe- Feature descriptionassociate- Association algorithm.kltConfig- Configuration for KLT trackerreactivateThreshold- Tracks are reactivated after this many have been dropped. Try 10% of maxMatchesimageType- Input image type. @return Feature tracker- See Also:
CombinedTrackerScalePoint
-
combined
public static <I extends ImageGray,D extends ImageGray,Desc extends TupleDesc> PointTracker<I> combined(DetectDescribePoint<I,Desc> detector, AssociateDescription<Desc> associate, PkltConfig kltConfig, int reactivateThreshold, java.lang.Class<I> imageType)
Creates a tracker that is a hybrid between KLT and Detect-Describe-Associate (DDA) trackers.- Parameters:
detector- Feature detector and describer.associate- Association algorithm.kltConfig- Configuration for KLT trackerreactivateThreshold- Tracks are reactivated after this many have been dropped. Try 10% of maxMatchesimageType- Input image type. @return Feature tracker- See Also:
CombinedTrackerScalePoint
-
dda
public static <I extends ImageGray,D extends ImageGray,Desc extends TupleDesc> PointTracker<I> dda(GeneralFeatureDetector<I,D> detector, DescribeRegionPoint<I,Desc> describe, AssociateDescription2D<Desc> associate, double scale, java.lang.Class<I> imageType)
-
createShiTomasi
public static <I extends ImageGray,D extends ImageGray> GeneralFeatureDetector<I,D> createShiTomasi(ConfigGeneralDetector config, java.lang.Class<D> derivType)
Creates a Shi-Tomasi corner detector specifically designed for SFM. Smaller feature radius work better. Variable detectRadius to control the number of features. When larger features are used weighting should be set to true, but because this is so small, it is set to false
-
-
DataMelt 3.0 © DataMelt by jWork.ORG