Speeded up robust features, port from GPU module. /////////////////////////////// SURF //////////////////////////////////////////. More...
#include <ocl.hpp>
Public Types | |
| enum | KeypointLayout { X_ROW = 0, Y_ROW, LAPLACIAN_ROW, OCTAVE_ROW, SIZE_ROW, ANGLE_ROW, HESSIAN_ROW, ROWS_COUNT } |
Public Types inherited from cv::Algorithm | |
| typedef Algorithm *(* | Constructor) (void) |
| typedef int(Algorithm::* | Getter) () const |
| typedef void(Algorithm::* | Setter) (int) |
Public Member Functions | |
| SURF_OCL () | |
| the default constructor More... | |
| SURF_OCL (double _hessianThreshold, int _nOctaves=4, int _nOctaveLayers=2, bool _extended=true, float _keypointsRatio=0.01f, bool _upright=false) | |
| the full constructor taking all the necessary parameters More... | |
| int | descriptorSize () const |
| returns the descriptor size in float's (64 or 128) More... | |
| int | descriptorType () const |
| void | uploadKeypoints (const vector< cv::KeyPoint > &keypoints, oclMat &keypointsocl) |
| upload host keypoints to device memory More... | |
| void | downloadKeypoints (const oclMat &keypointsocl, vector< KeyPoint > &keypoints) |
| download keypoints from device to host memory More... | |
| void | downloadDescriptors (const oclMat &descriptorsocl, vector< float > &descriptors) |
| download descriptors from device to host memory More... | |
| void | operator() (const oclMat &img, const oclMat &mask, oclMat &keypoints) |
| void | operator() (const oclMat &img, const oclMat &mask, oclMat &keypoints, oclMat &descriptors, bool useProvidedKeypoints=false) |
| void | operator() (const oclMat &img, const oclMat &mask, std::vector< KeyPoint > &keypoints) |
| void | operator() (const oclMat &img, const oclMat &mask, std::vector< KeyPoint > &keypoints, oclMat &descriptors, bool useProvidedKeypoints=false) |
| void | operator() (const oclMat &img, const oclMat &mask, std::vector< KeyPoint > &keypoints, std::vector< float > &descriptors, bool useProvidedKeypoints=false) |
| void | operator() (InputArray img, InputArray mask, CV_OUT vector< KeyPoint > &keypoints) const |
| finds the keypoints using fast hessian detector used in SURF More... | |
| void | operator() (InputArray img, InputArray mask, CV_OUT vector< KeyPoint > &keypoints, OutputArray descriptors, bool useProvidedKeypoints=false) const |
| finds the keypoints and computes their descriptors. Optionally it can compute descriptors for the user-provided keypoints More... | |
| AlgorithmInfo * | info () const |
| void | releaseMemory () |
Public Member Functions inherited from cv::Feature2D | |
| void | compute (const Mat &image, CV_OUT CV_IN_OUT std::vector< KeyPoint > &keypoints, CV_OUT Mat &descriptors) const |
Public Member Functions inherited from cv::FeatureDetector | |
| virtual | ~FeatureDetector () |
| void | detect (const Mat &image, CV_OUT vector< KeyPoint > &keypoints, const Mat &mask=Mat()) const |
| void | detect (const vector< Mat > &images, vector< vector< KeyPoint > > &keypoints, const vector< Mat > &masks=vector< Mat >()) const |
| virtual bool | empty () const |
Public Member Functions inherited from cv::Algorithm | |
| Algorithm () | |
| virtual | ~Algorithm () |
| string | name () const |
| template<typename _Tp > | |
| ParamType< _Tp >::member_type | get (const string &name) const |
| template<typename _Tp > | |
| ParamType< _Tp >::member_type | get (const char *name) const |
| int | getInt (const string &name) const |
| double | getDouble (const string &name) const |
| bool | getBool (const string &name) const |
| string | getString (const string &name) const |
| Mat | getMat (const string &name) const |
| vector< Mat > | getMatVector (const string &name) const |
| Ptr< Algorithm > | getAlgorithm (const string &name) const |
| void | set (const string &name, int value) |
| void | set (const string &name, double value) |
| void | set (const string &name, bool value) |
| void | set (const string &name, const string &value) |
| void | set (const string &name, const Mat &value) |
| void | set (const string &name, const vector< Mat > &value) |
| void | set (const string &name, const Ptr< Algorithm > &value) |
| template<typename _Tp > | |
| void | set (const string &name, const Ptr< _Tp > &value) |
| void | setInt (const string &name, int value) |
| void | setDouble (const string &name, double value) |
| void | setBool (const string &name, bool value) |
| void | setString (const string &name, const string &value) |
| void | setMat (const string &name, const Mat &value) |
| void | setMatVector (const string &name, const vector< Mat > &value) |
| void | setAlgorithm (const string &name, const Ptr< Algorithm > &value) |
| template<typename _Tp > | |
| void | setAlgorithm (const string &name, const Ptr< _Tp > &value) |
| void | set (const char *name, int value) |
| void | set (const char *name, double value) |
| void | set (const char *name, bool value) |
| void | set (const char *name, const string &value) |
| void | set (const char *name, const Mat &value) |
| void | set (const char *name, const vector< Mat > &value) |
| void | set (const char *name, const Ptr< Algorithm > &value) |
| template<typename _Tp > | |
| void | set (const char *name, const Ptr< _Tp > &value) |
| void | setInt (const char *name, int value) |
| void | setDouble (const char *name, double value) |
| void | setBool (const char *name, bool value) |
| void | setString (const char *name, const string &value) |
| void | setMat (const char *name, const Mat &value) |
| void | setMatVector (const char *name, const vector< Mat > &value) |
| void | setAlgorithm (const char *name, const Ptr< Algorithm > &value) |
| template<typename _Tp > | |
| void | setAlgorithm (const char *name, const Ptr< _Tp > &value) |
| string | paramHelp (const string &name) const |
| int | paramType (const char *name) const |
| int | paramType (const string &name) const |
| void | getParams (CV_OUT vector< string > &names) const |
| virtual void | write (FileStorage &fs) const |
| virtual void | read (const FileNode &fn) |
Public Member Functions inherited from cv::DescriptorExtractor | |
| virtual | ~DescriptorExtractor () |
| void | compute (const Mat &image, CV_OUT CV_IN_OUT vector< KeyPoint > &keypoints, CV_OUT Mat &descriptors) const |
| void | compute (const vector< Mat > &images, vector< vector< KeyPoint > > &keypoints, vector< Mat > &descriptors) const |
| virtual bool | empty () const |
Public Attributes | |
| float | hessianThreshold |
| int | nOctaves |
| int | nOctaveLayers |
| bool | extended |
| bool | upright |
| float | keypointsRatio |
| max keypoints = min(keypointsRatio * img.size().area(), 65535) More... | |
| oclMat | sum |
| oclMat | mask1 |
| oclMat | maskSum |
| oclMat | intBuffer |
| oclMat | det |
| oclMat | trace |
| oclMat | maxPosBuffer |
Protected Member Functions | |
| void | detectImpl (const Mat &image, vector< KeyPoint > &keypoints, const Mat &mask) const |
| void | computeImpl (const Mat &image, vector< KeyPoint > &keypoints, Mat &descriptors) const |
Additional Inherited Members | |
Static Public Member Functions inherited from cv::Feature2D | |
| static Ptr< Feature2D > | create (const string &name) |
Static Public Member Functions inherited from cv::FeatureDetector | |
| static Ptr< FeatureDetector > | create (const string &detectorType) |
Static Public Member Functions inherited from cv::Algorithm | |
| static void | getList (CV_OUT vector< string > &algorithms) |
| static Ptr< Algorithm > | _create (const string &name) |
| template<typename _Tp > | |
| static Ptr< _Tp > | create (const string &name) |
Static Public Member Functions inherited from cv::DescriptorExtractor | |
| static Ptr< DescriptorExtractor > | create (const string &descriptorExtractorType) |
Static Protected Member Functions inherited from cv::FeatureDetector | |
| static void | removeInvalidPoints (const Mat &mask, vector< KeyPoint > &keypoints) |
Static Protected Member Functions inherited from cv::DescriptorExtractor | |
| static void | removeBorderKeypoints (vector< KeyPoint > &keypoints, Size imageSize, int borderSize) |
Speeded up robust features, port from GPU module. /////////////////////////////// SURF //////////////////////////////////////////.
| cv::ocl::SURF_OCL::SURF_OCL | ( | ) |
the default constructor
|
explicit |
the full constructor taking all the necessary parameters
|
protectedvirtual |
Implements cv::DescriptorExtractor.
|
virtual |
returns the descriptor size in float's (64 or 128)
Implements cv::DescriptorExtractor.
|
virtual |
Implements cv::DescriptorExtractor.
|
protectedvirtual |
Implements cv::FeatureDetector.
| void cv::ocl::SURF_OCL::downloadDescriptors | ( | const oclMat & | descriptorsocl, |
| vector< float > & | descriptors | ||
| ) |
download descriptors from device to host memory
| void cv::ocl::SURF_OCL::downloadKeypoints | ( | const oclMat & | keypointsocl, |
| vector< KeyPoint > & | keypoints | ||
| ) |
download keypoints from device to host memory
|
virtual |
Reimplemented from cv::Algorithm.
finds the keypoints using fast hessian detector used in SURF supports CV_8UC1 images keypoints will have nFeature cols and 6 rows keypoints.ptr<float>(X_ROW)[i] will contain x coordinate of i'th feature keypoints.ptr<float>(Y_ROW)[i] will contain y coordinate of i'th feature keypoints.ptr<float>(LAPLACIAN_ROW)[i] will contain laplacian sign of i'th feature keypoints.ptr<float>(OCTAVE_ROW)[i] will contain octave of i'th feature keypoints.ptr<float>(SIZE_ROW)[i] will contain size of i'th feature keypoints.ptr<float>(ANGLE_ROW)[i] will contain orientation of i'th feature keypoints.ptr<float>(HESSIAN_ROW)[i] will contain response of i'th feature
| void cv::ocl::SURF_OCL::operator() | ( | const oclMat & | img, |
| const oclMat & | mask, | ||
| oclMat & | keypoints, | ||
| oclMat & | descriptors, | ||
| bool | useProvidedKeypoints = false |
||
| ) |
finds the keypoints and computes their descriptors. Optionally it can compute descriptors for the user-provided keypoints and recompute keypoints direction
| void cv::ocl::SURF_OCL::operator() | ( | const oclMat & | img, |
| const oclMat & | mask, | ||
| std::vector< KeyPoint > & | keypoints | ||
| ) |
| void cv::ocl::SURF_OCL::operator() | ( | const oclMat & | img, |
| const oclMat & | mask, | ||
| std::vector< KeyPoint > & | keypoints, | ||
| oclMat & | descriptors, | ||
| bool | useProvidedKeypoints = false |
||
| ) |
| void cv::ocl::SURF_OCL::operator() | ( | const oclMat & | img, |
| const oclMat & | mask, | ||
| std::vector< KeyPoint > & | keypoints, | ||
| std::vector< float > & | descriptors, | ||
| bool | useProvidedKeypoints = false |
||
| ) |
| void cv::ocl::SURF_OCL::operator() | ( | InputArray | img, |
| InputArray | mask, | ||
| CV_OUT vector< KeyPoint > & | keypoints | ||
| ) | const |
finds the keypoints using fast hessian detector used in SURF
|
virtual |
finds the keypoints and computes their descriptors. Optionally it can compute descriptors for the user-provided keypoints
Implements cv::Feature2D.
| void cv::ocl::SURF_OCL::releaseMemory | ( | ) |
| void cv::ocl::SURF_OCL::uploadKeypoints | ( | const vector< cv::KeyPoint > & | keypoints, |
| oclMat & | keypointsocl | ||
| ) |
upload host keypoints to device memory
| oclMat cv::ocl::SURF_OCL::det |
| bool cv::ocl::SURF_OCL::extended |
| float cv::ocl::SURF_OCL::hessianThreshold |
| oclMat cv::ocl::SURF_OCL::intBuffer |
| float cv::ocl::SURF_OCL::keypointsRatio |
max keypoints = min(keypointsRatio * img.size().area(), 65535)
| oclMat cv::ocl::SURF_OCL::mask1 |
| oclMat cv::ocl::SURF_OCL::maskSum |
| oclMat cv::ocl::SURF_OCL::maxPosBuffer |
| int cv::ocl::SURF_OCL::nOctaveLayers |
| int cv::ocl::SURF_OCL::nOctaves |
| oclMat cv::ocl::SURF_OCL::sum |
| oclMat cv::ocl::SURF_OCL::trace |
| bool cv::ocl::SURF_OCL::upright |