org.opencv.features2d

## Class DescriptorMatcher

- java.lang.Object
- - org.opencv.core.Algorithm
  - - org.opencv.features2d.DescriptorMatcher

- Direct Known Subclasses:
    BFMatcher, FlannBasedMatcher

      public class DescriptorMatcher
      extends Algorithm

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `BRUTEFORCE`
    `static int` | `BRUTEFORCE_HAMMING`
    `static int` | `BRUTEFORCE_HAMMINGLUT`
    `static int` | `BRUTEFORCE_L1`
    `static int` | `BRUTEFORCE_SL2`
    `static int` | `FLANNBASED`

    - ### Fields inherited from class org.opencv.core.Algorithm

      `nativeObj`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `DescriptorMatcher(long addr)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `add(java.util.List<Mat> descriptors)`
    `void` | `clear()`
    `DescriptorMatcher` | `clone()`
    `DescriptorMatcher` | `clone(boolean emptyTrainData)`
    `static DescriptorMatcher` | `create(int matcherType)`
    `static DescriptorMatcher` | `create(java.lang.String descriptorMatcherType)`
    `boolean` | `empty()`
    `protected void` | `finalize()`
    `java.util.List<Mat>` | `getTrainDescriptors()`
    `boolean` | `isMaskSupported()`
    `void` | `knnMatch(Mat queryDescriptors, java.util.List<MatOfDMatch> matches, int k)`
    `void` | `knnMatch(Mat queryDescriptors, java.util.List<MatOfDMatch> matches, int k, java.util.List<Mat> masks, boolean compactResult)`
    `void` | `knnMatch(Mat queryDescriptors, Mat trainDescriptors, java.util.List<MatOfDMatch> matches, int k)`
    `void` | `knnMatch(Mat queryDescriptors, Mat trainDescriptors, java.util.List<MatOfDMatch> matches, int k, Mat mask, boolean compactResult)`
    `void` | `match(Mat queryDescriptors, Mat trainDescriptors, MatOfDMatch matches)`
    `void` | `match(Mat queryDescriptors, Mat trainDescriptors, MatOfDMatch matches, Mat mask)`
    `void` | `match(Mat queryDescriptors, MatOfDMatch matches)`
    `void` | `match(Mat queryDescriptors, MatOfDMatch matches, java.util.List<Mat> masks)`
    `void` | `radiusMatch(Mat queryDescriptors, java.util.List<MatOfDMatch> matches, float maxDistance)`
    `void` | `radiusMatch(Mat queryDescriptors, java.util.List<MatOfDMatch> matches, float maxDistance, java.util.List<Mat> masks, boolean compactResult)`
    `void` | `radiusMatch(Mat queryDescriptors, Mat trainDescriptors, java.util.List<MatOfDMatch> matches, float maxDistance)`
    `void` | `radiusMatch(Mat queryDescriptors, Mat trainDescriptors, java.util.List<MatOfDMatch> matches, float maxDistance, Mat mask, boolean compactResult)`
    `void` | `read(java.lang.String fileName)`
    `void` | `train()`
    `void` | `write(java.lang.String fileName)`

    - ### Methods inherited from class org.opencv.core.Algorithm

      `getDefaultName, save`

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### FLANNBASED

          public static final int FLANNBASED

      See Also:
        Constant Field Values

    - #### BRUTEFORCE

          public static final int BRUTEFORCE

      See Also:
        Constant Field Values

    - #### BRUTEFORCE_L1

          public static final int BRUTEFORCE_L1

      See Also:
        Constant Field Values

    - #### BRUTEFORCE_HAMMING

          public static final int BRUTEFORCE_HAMMING

      See Also:
        Constant Field Values

    - #### BRUTEFORCE_HAMMINGLUT

          public static final int BRUTEFORCE_HAMMINGLUT

      See Also:
        Constant Field Values

    - #### BRUTEFORCE_SL2

          public static final int BRUTEFORCE_SL2

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### DescriptorMatcher

          protected DescriptorMatcher(long addr)

  - ### Method Detail

    - #### clone

          public DescriptorMatcher clone(boolean emptyTrainData)

    - #### clone

          public DescriptorMatcher clone()

      Overrides:
        `clone` in class `java.lang.Object`

    - #### create

          public static DescriptorMatcher create(java.lang.String descriptorMatcherType)

    - #### create

          public static DescriptorMatcher create(int matcherType)

    - #### empty

          public boolean empty()

    - #### isMaskSupported

          public boolean isMaskSupported()

    - #### getTrainDescriptors

          public java.util.List<Mat> getTrainDescriptors()

    - #### add

          public void add(java.util.List<Mat> descriptors)

    - #### clear

          public void clear()

      Overrides:
        `clear` in class `Algorithm`

    - #### knnMatch

          public void knnMatch(Mat queryDescriptors,
                               Mat trainDescriptors,
                               java.util.List<MatOfDMatch> matches,
                               int k,
                               Mat mask,
                               boolean compactResult)

    - #### knnMatch

          public void knnMatch(Mat queryDescriptors,
                               Mat trainDescriptors,
                               java.util.List<MatOfDMatch> matches,
                               int k)

    - #### knnMatch

          public void knnMatch(Mat queryDescriptors,
                               java.util.List<MatOfDMatch> matches,
                               int k,
                               java.util.List<Mat> masks,
                               boolean compactResult)

    - #### knnMatch

          public void knnMatch(Mat queryDescriptors,
                               java.util.List<MatOfDMatch> matches,
                               int k)

    - #### match

          public void match(Mat queryDescriptors,
                            Mat trainDescriptors,
                            MatOfDMatch matches,
                            Mat mask)

    - #### match

          public void match(Mat queryDescriptors,
                            Mat trainDescriptors,
                            MatOfDMatch matches)

    - #### match

          public void match(Mat queryDescriptors,
                            MatOfDMatch matches,
                            java.util.List<Mat> masks)

    - #### match

          public void match(Mat queryDescriptors,
                            MatOfDMatch matches)

    - #### radiusMatch

          public void radiusMatch(Mat queryDescriptors,
                                  Mat trainDescriptors,
                                  java.util.List<MatOfDMatch> matches,
                                  float maxDistance,
                                  Mat mask,
                                  boolean compactResult)

    - #### radiusMatch

          public void radiusMatch(Mat queryDescriptors,
                                  Mat trainDescriptors,
                                  java.util.List<MatOfDMatch> matches,
                                  float maxDistance)

    - #### radiusMatch

          public void radiusMatch(Mat queryDescriptors,
                                  java.util.List<MatOfDMatch> matches,
                                  float maxDistance,
                                  java.util.List<Mat> masks,
                                  boolean compactResult)

    - #### radiusMatch

          public void radiusMatch(Mat queryDescriptors,
                                  java.util.List<MatOfDMatch> matches,
                                  float maxDistance)

    - #### read

          public void read(java.lang.String fileName)

    - #### train

          public void train()

    - #### write

          public void write(java.lang.String fileName)

    - #### finalize

          protected void finalize()
                           throws java.lang.Throwable

      Overrides:
        `finalize` in class `Algorithm`
      Throws:
        `java.lang.Throwable`