|
virtual int | getBytes () const =0 |
|
String | getDefaultName () const CV_OVERRIDE |
|
virtual int | getHalfSSDsize () const =0 |
|
virtual bool | getRotationInvariance () const =0 |
|
virtual double | getSigma () const =0 |
|
virtual void | setBytes (int bytes)=0 |
|
virtual void | setHalfSSDsize (int half_ssd_size)=0 |
|
virtual void | setRotationInvariance (bool rotationInvariance)=0 |
|
virtual void | setSigma (double sigma)=0 |
|
virtual | ~Feature2D () |
|
virtual void | compute (InputArray image, std::vector< KeyPoint > &keypoints, OutputArray descriptors) |
| Computes the descriptors for a set of keypoints detected in an image (first variant) or image set (second variant). More...
|
|
virtual void | compute (InputArrayOfArrays images, std::vector< std::vector< KeyPoint > > &keypoints, OutputArrayOfArrays descriptors) |
|
virtual int | defaultNorm () const |
|
virtual int | descriptorSize () const |
|
virtual int | descriptorType () const |
|
virtual void | detect (InputArray image, std::vector< KeyPoint > &keypoints, InputArray mask=noArray()) |
| Detects keypoints in an image (first variant) or image set (second variant). More...
|
|
virtual void | detect (InputArrayOfArrays images, std::vector< std::vector< KeyPoint > > &keypoints, InputArrayOfArrays masks=noArray()) |
|
virtual void | detectAndCompute (InputArray image, InputArray mask, std::vector< KeyPoint > &keypoints, OutputArray descriptors, bool useProvidedKeypoints=false) |
|
virtual bool | empty () const CV_OVERRIDE |
| Return true if detector object is empty. More...
|
|
void | read (const String &fileName) |
|
virtual void | read (const FileNode &) CV_OVERRIDE |
| Reads algorithm parameters from a file storage. More...
|
|
void | write (const String &fileName) const |
|
virtual void | write (FileStorage &) const CV_OVERRIDE |
| Stores algorithm parameters in a file storage. More...
|
|
void | write (FileStorage &fs, const String &name) const |
|
void | write (const Ptr< FileStorage > &fs, const String &name) const |
|
| Algorithm () |
|
virtual | ~Algorithm () |
|
virtual void | clear () |
| Clears the algorithm state. More...
|
|
virtual void | save (const String &filename) const |
|
void | write (FileStorage &fs, const String &name) const |
|
void | write (const Ptr< FileStorage > &fs, const String &name=String()) const |
|
latch Class for computing the LATCH descriptor. If you find this code useful, please add a reference to the following paper in your work: Gil Levi and Tal Hassner, "LATCH: Learned Arrangements of Three Patch Codes", arXiv preprint arXiv:1501.03719, 15 Jan. 2015
LATCH is a binary descriptor based on learned comparisons of triplets of image patches.
bytes is the size of the descriptor - can be 64, 32, 16, 8, 4, 2 or 1 rotationInvariance - whether or not the descriptor should compansate for orientation changes. half_ssd_size - the size of half of the mini-patches size. For example, if we would like to compare triplets of patches of size 7x7x then the half_ssd_size should be (7-1)/2 = 3. sigma - sigma value for GaussianBlur smoothing of the source image. Source image will be used without smoothing in case sigma value is 0.
Note: the descriptor can be coupled with any keypoint extractor. The only demand is that if you use set rotationInvariance = True then you will have to use an extractor which estimates the patch orientation (in degrees). Examples for such extractors are ORB and SIFT.
Note: a complete example can be found under /samples/cpp/tutorial_code/xfeatures2D/latch_match.cpp