Orb.h
Go to the documentation of this file.
1 
4 /*M///////////////////////////////////////////////////////////////////////////////////////
5 //
6 // IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING.
7 //
8 // By downloading, copying, installing or using the software you agree to this license.
9 // If you do not agree to this license, do not download, install,
10 // copy or use the software.
11 //
12 //
13 // License Agreement
14 // For Open Source Computer Vision Library
15 //
16 // Copyright (C) 2000-2008, Intel Corporation, all rights reserved.
17 // Copyright (C) 2009, Willow Garage Inc., all rights reserved.
18 // Third party copyrights are property of their respective owners.
19 //
20 // Redistribution and use in source and binary forms, with or without modification,
21 // are permitted provided that the following conditions are met:
22 //
23 // * Redistribution's of source code must retain the above copyright notice,
24 // this list of conditions and the following disclaimer.
25 //
26 // * Redistribution's in binary form must reproduce the above copyright notice,
27 // this list of conditions and the following disclaimer in the documentation
28 // and/or other materials provided with the distribution.
29 //
30 // * The name of the copyright holders may not be used to endorse or promote products
31 // derived from this software without specific prior written permission.
32 //
33 // This software is provided by the copyright holders and contributors "as is" and
34 // any express or implied warranties, including, but not limited to, the implied
35 // warranties of merchantability and fitness for a particular purpose are disclaimed.
36 // In no event shall the Intel Corporation or contributors be liable for any direct,
37 // indirect, incidental, special, exemplary, or consequential damages
38 // (including, but not limited to, procurement of substitute goods or services;
39 // loss of use, data, or profits; or business interruption) however caused
40 // and on any theory of liability, whether in contract, strict liability,
41 // or tort (including negligence or otherwise) arising in any way out of
42 // the use of this software, even if advised of the possibility of such damage.
43 //
44 //M*/
45 
46 #ifndef CORELIB_SRC_OPENCV_ORB_H_
47 #define CORELIB_SRC_OPENCV_ORB_H_
48 
49 #include <opencv2/features2d/features2d.hpp>
50 
51 namespace rtabmap {
52 
53 class FAST;
54 
58 class CV_ORB : public cv::Feature2D
59 {
60 public:
61  // the size of the signature in bytes
62  enum { kBytes = 32, HARRIS_SCORE=0, FAST_SCORE=1 };
63 
64  CV_WRAP explicit CV_ORB(int nfeatures = 500, float scaleFactor = 1.2f, int nlevels = 8, int edgeThreshold = 31,
66 
67  // returns the descriptor size in bytes
68  int descriptorSize() const;
69  // returns the descriptor type
70  int descriptorType() const;
71 
72  // Compute the ORB features and descriptors on an image
73  void operator()(cv::InputArray image, cv::InputArray mask, std::vector<cv::KeyPoint>& keypoints) const;
74 
75  // Compute the ORB features and descriptors on an image
76  void operator()( cv::InputArray image, cv::InputArray mask, std::vector<cv::KeyPoint>& keypoints,
77  cv::OutputArray descriptors, bool useProvidedKeypoints=false ) const;
78 
79 protected:
80 
81  void computeImpl( const cv::Mat& image, std::vector<cv::KeyPoint>& keypoints, cv::Mat& descriptors ) const;
82  void detectImpl( const cv::Mat& image, std::vector<cv::KeyPoint>& keypoints, const cv::Mat& mask=cv::Mat() ) const;
83 
84  CV_PROP_RW int nfeatures;
85  CV_PROP_RW double scaleFactor;
86  CV_PROP_RW int nlevels;
87  CV_PROP_RW int edgeThreshold;
88  CV_PROP_RW int firstLevel;
89  CV_PROP_RW int WTA_K;
90  CV_PROP_RW int scoreType;
91  CV_PROP_RW int patchSize;
92 
94 };
95 
96 }
97 
98 
99 #endif /* CORELIB_SRC_OPENCV_ORB_H_ */
GLM_FUNC_DECL genIType mask(genIType const &count)
CV_PROP_RW double scaleFactor
Definition: Orb.h:85
CV_WRAP CV_ORB(int nfeatures=500, float scaleFactor=1.2f, int nlevels=8, int edgeThreshold=31, int firstLevel=0, int WTA_K=2, int scoreType=CV_ORB::HARRIS_SCORE, int patchSize=31, const ParametersMap &fastParameters=ParametersMap())
Definition: Orb.cpp:569
void detectImpl(const cv::Mat &image, std::vector< cv::KeyPoint > &keypoints, const cv::Mat &mask=cv::Mat()) const
Definition: Orb.cpp:953
f
ParametersMap fastParameters
Definition: Orb.h:93
std::map< std::string, std::string > ParametersMap
Definition: Parameters.h:43
CV_PROP_RW int nlevels
Definition: Orb.h:86
CV_PROP_RW int edgeThreshold
Definition: Orb.h:87
int descriptorSize() const
Definition: Orb.cpp:577
CV_PROP_RW int patchSize
Definition: Orb.h:91
int descriptorType() const
Definition: Orb.cpp:582
CV_PROP_RW int scoreType
Definition: Orb.h:90
void computeImpl(const cv::Mat &image, std::vector< cv::KeyPoint > &keypoints, cv::Mat &descriptors) const
Definition: Orb.cpp:958
void operator()(cv::InputArray image, cv::InputArray mask, std::vector< cv::KeyPoint > &keypoints) const
CV_PROP_RW int WTA_K
Definition: Orb.h:89
CV_PROP_RW int nfeatures
Definition: Orb.h:84
CV_PROP_RW int firstLevel
Definition: Orb.h:88


rtabmap
Author(s): Mathieu Labbe
autogenerated on Mon Jan 23 2023 03:37:29