Options
All
  • Public
  • Public/Protected
  • All
Menu

It has two groups of match methods: for matching descriptors of an image with another image or with an image set.

Source: opencv2/features2d.hpp.

Hierarchy

  • DescriptorMatcher

Index

Methods

add

  • add(descriptors: InputArrayOfArrays): InputArrayOfArrays
  • If the collection is not empty, the new descriptors are added to existing train descriptors.

    Parameters

    • descriptors: InputArrayOfArrays

      Descriptors to add. Each descriptors[i] is a set of descriptors from the same train image.

    Returns InputArrayOfArrays

clear

  • clear(): void

clone

  • clone(emptyTrainData?: bool): Ptr
  • Parameters

    • Optional emptyTrainData: bool

      If emptyTrainData is false, the method creates a deep copy of the object, that is, copies both parameters and train data. If emptyTrainData is true, the method creates an object copy with the current parameters but with empty train data.

    Returns Ptr

empty

getTrainDescriptors

  • getTrainDescriptors(): Mat

isMaskSupported

  • isMaskSupported(): bool

knnMatch

  • knnMatch(queryDescriptors: InputArray, trainDescriptors: InputArray, matches: any, k: int, mask?: InputArray, compactResult?: bool): InputArray
  • knnMatch(queryDescriptors: InputArray, matches: any, k: int, masks?: InputArrayOfArrays, compactResult?: bool): InputArray
  • These extended variants of [DescriptorMatcher::match] methods find several best matches for each query descriptor. The matches are returned in the distance increasing order. See [DescriptorMatcher::match] for the details about query and train descriptors.

    Parameters

    • queryDescriptors: InputArray

      Query set of descriptors.

    • trainDescriptors: InputArray

      Train set of descriptors. This set is not added to the train descriptors collection stored in the class object.

    • matches: any

      Matches. Each matches[i] is k or less matches for the same query descriptor.

    • k: int

      Count of best matches found per each query descriptor or less if a query descriptor has less than k possible matches in total.

    • Optional mask: InputArray

      Mask specifying permissible matches between an input query and train matrices of descriptors.

    • Optional compactResult: bool

      Parameter used when the mask (or masks) is not empty. If compactResult is false, the matches vector has the same size as queryDescriptors rows. If compactResult is true, the matches vector does not contain matches for fully masked-out query descriptors.

    Returns InputArray

  • This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

    Parameters

    • queryDescriptors: InputArray

      Query set of descriptors.

    • matches: any

      Matches. Each matches[i] is k or less matches for the same query descriptor.

    • k: int

      Count of best matches found per each query descriptor or less if a query descriptor has less than k possible matches in total.

    • Optional masks: InputArrayOfArrays

      Set of masks. Each masks[i] specifies permissible matches between the input query descriptors and stored train descriptors from the i-th image trainDescCollection[i].

    • Optional compactResult: bool

      Parameter used when the mask (or masks) is not empty. If compactResult is false, the matches vector has the same size as queryDescriptors rows. If compactResult is true, the matches vector does not contain matches for fully masked-out query descriptors.

    Returns InputArray

match

  • match(queryDescriptors: InputArray, trainDescriptors: InputArray, matches: any, mask?: InputArray): InputArray
  • match(queryDescriptors: InputArray, matches: any, masks?: InputArrayOfArrays): InputArray
  • In the first variant of this method, the train descriptors are passed as an input argument. In the second variant of the method, train descriptors collection that was set by [DescriptorMatcher::add] is used. Optional mask (or masks) can be passed to specify which query and training descriptors can be matched. Namely, queryDescriptors[i] can be matched with trainDescriptors[j] only if mask.at(i,j) is non-zero.

    Parameters

    • queryDescriptors: InputArray

      Query set of descriptors.

    • trainDescriptors: InputArray

      Train set of descriptors. This set is not added to the train descriptors collection stored in the class object.

    • matches: any

      Matches. If a query descriptor is masked out in mask , no match is added for this descriptor. So, matches size may be smaller than the query descriptors count.

    • Optional mask: InputArray

      Mask specifying permissible matches between an input query and train matrices of descriptors.

    Returns InputArray

  • This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

    Parameters

    • queryDescriptors: InputArray

      Query set of descriptors.

    • matches: any

      Matches. If a query descriptor is masked out in mask , no match is added for this descriptor. So, matches size may be smaller than the query descriptors count.

    • Optional masks: InputArrayOfArrays

      Set of masks. Each masks[i] specifies permissible matches between the input query descriptors and stored train descriptors from the i-th image trainDescCollection[i].

    Returns InputArray

radiusMatch

  • radiusMatch(queryDescriptors: InputArray, trainDescriptors: InputArray, matches: any, maxDistance: float, mask?: InputArray, compactResult?: bool): InputArray
  • radiusMatch(queryDescriptors: InputArray, matches: any, maxDistance: float, masks?: InputArrayOfArrays, compactResult?: bool): InputArray
  • For each query descriptor, the methods find such training descriptors that the distance between the query descriptor and the training descriptor is equal or smaller than maxDistance. Found matches are returned in the distance increasing order.

    Parameters

    • queryDescriptors: InputArray

      Query set of descriptors.

    • trainDescriptors: InputArray

      Train set of descriptors. This set is not added to the train descriptors collection stored in the class object.

    • matches: any

      Found matches.

    • maxDistance: float

      Threshold for the distance between matched descriptors. Distance means here metric distance (e.g. Hamming distance), not the distance between coordinates (which is measured in Pixels)!

    • Optional mask: InputArray

      Mask specifying permissible matches between an input query and train matrices of descriptors.

    • Optional compactResult: bool

      Parameter used when the mask (or masks) is not empty. If compactResult is false, the matches vector has the same size as queryDescriptors rows. If compactResult is true, the matches vector does not contain matches for fully masked-out query descriptors.

    Returns InputArray

  • This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

    Parameters

    • queryDescriptors: InputArray

      Query set of descriptors.

    • matches: any

      Found matches.

    • maxDistance: float

      Threshold for the distance between matched descriptors. Distance means here metric distance (e.g. Hamming distance), not the distance between coordinates (which is measured in Pixels)!

    • Optional masks: InputArrayOfArrays

      Set of masks. Each masks[i] specifies permissible matches between the input query descriptors and stored train descriptors from the i-th image trainDescCollection[i].

    • Optional compactResult: bool

      Parameter used when the mask (or masks) is not empty. If compactResult is false, the matches vector has the same size as queryDescriptors rows. If compactResult is true, the matches vector does not contain matches for fully masked-out query descriptors.

    Returns InputArray

read

train

  • train(): void
  • Trains a descriptor matcher (for example, the flann index). In all methods to match, the method [train()] is run every time before matching. Some descriptor matchers (for example, BruteForceMatcher) have an empty implementation of this method. Other matchers really train their inner structures (for example, [FlannBasedMatcher] trains [flann::Index] ).

    Returns void

write

Static create

  • create(descriptorMatcherType: String): Ptr
  • create(matcherType: any): Ptr

Generated using TypeDoc