Feature2D

Objective-C

@interface Feature2D : Algorithm

Swift

class Feature2D : Algorithm

Abstract base class for 2D image feature detectors and descriptor extractors

Member of Features2d

Methods

  • Declaration

    Objective-C

    - (nonnull NSString *)getDefaultName;

    Swift

    func getDefaultName() -> String
  • Declaration

    Objective-C

    - (BOOL)empty;

    Swift

    func empty() -> Bool
  • Declaration

    Objective-C

    - (int)defaultNorm NS_SWIFT_NAME(defaultNorm());

    Swift

    func defaultNorm() -> Int32
  • Declaration

    Objective-C

    - (int)descriptorSize NS_SWIFT_NAME(descriptorSize());

    Swift

    func descriptorSize() -> Int32
  • Declaration

    Objective-C

    - (int)descriptorType NS_SWIFT_NAME(descriptorType());

    Swift

    func descriptorType() -> Int32
  • Computes the descriptors for a set of keypoints detected in an image (first variant) or image set (second variant).

    Declaration

    Objective-C

    - (void)compute:(nonnull Mat *)image
          keypoints:(nonnull NSMutableArray<KeyPoint *> *)keypoints
        descriptors:(nonnull Mat *)descriptors;

    Swift

    func compute(image: Mat, keypoints: NSMutableArray, descriptors: Mat)

    Parameters

    image

    Image.

    keypoints

    Input collection of keypoints. Keypoints for which a descriptor cannot be computed are removed. Sometimes new keypoints can be added, for example: SIFT duplicates keypoint with several dominant orientations (for each orientation).

    descriptors

    Computed descriptors. In the second variant of the method descriptors[i] are descriptors computed for a keypoints[i]. Row j is the keypoints (or keypoints[i]) is the descriptor for keypoint j-th keypoint.

  • Declaration

    Objective-C

    - (void)compute2:(nonnull NSArray<Mat *> *)images
           keypoints:
               (nonnull NSMutableArray<NSMutableArray<KeyPoint *> *> *)keypoints
         descriptors:(nonnull NSMutableArray<Mat *> *)descriptors;

    Swift

    func compute(images: [Mat], keypoints: NSMutableArray, descriptors: NSMutableArray)

    Parameters

    images

    Image set.

    keypoints

    Input collection of keypoints. Keypoints for which a descriptor cannot be computed are removed. Sometimes new keypoints can be added, for example: SIFT duplicates keypoint with several dominant orientations (for each orientation).

    descriptors

    Computed descriptors. In the second variant of the method descriptors[i] are descriptors computed for a keypoints[i]. Row j is the keypoints (or keypoints[i]) is the descriptor for keypoint j-th keypoint.

  • Detects keypoints in an image (first variant) or image set (second variant).

    Declaration

    Objective-C

    - (void)detect:(nonnull Mat *)image
         keypoints:(nonnull NSMutableArray<KeyPoint *> *)keypoints
              mask:(nonnull Mat *)mask;

    Swift

    func detect(image: Mat, keypoints: NSMutableArray, mask: Mat)

    Parameters

    image

    Image.

    keypoints

    The detected keypoints. In the second variant of the method keypoints[i] is a set of keypoints detected in images[i] .

    mask

    Mask specifying where to look for keypoints (optional). It must be a 8-bit integer matrix with non-zero values in the region of interest.

  • Detects keypoints in an image (first variant) or image set (second variant).

    Declaration

    Objective-C

    - (void)detect:(nonnull Mat *)image
         keypoints:(nonnull NSMutableArray<KeyPoint *> *)keypoints;

    Swift

    func detect(image: Mat, keypoints: NSMutableArray)

    Parameters

    image

    Image.

    keypoints

    The detected keypoints. In the second variant of the method keypoints[i] is a set of keypoints detected in images[i] . matrix with non-zero values in the region of interest.

  • Declaration

    Objective-C

    - (void)detect2:(nonnull NSArray<Mat *> *)images
          keypoints:
              (nonnull NSMutableArray<NSMutableArray<KeyPoint *> *> *)keypoints
              masks:(nonnull NSArray<Mat *> *)masks;

    Swift

    func detect(images: [Mat], keypoints: NSMutableArray, masks: [Mat])

    Parameters

    images

    Image set.

    keypoints

    The detected keypoints. In the second variant of the method keypoints[i] is a set of keypoints detected in images[i] .

    masks

    Masks for each input image specifying where to look for keypoints (optional). masks[i] is a mask for images[i].

  • Declaration

    Objective-C

    - (void)detect2:(nonnull NSArray<Mat *> *)images
          keypoints:
              (nonnull NSMutableArray<NSMutableArray<KeyPoint *> *> *)keypoints;

    Swift

    func detect(images: [Mat], keypoints: NSMutableArray)

    Parameters

    images

    Image set.

    keypoints

    The detected keypoints. In the second variant of the method keypoints[i] is a set of keypoints detected in images[i] . masks[i] is a mask for images[i].

  • Detects keypoints and computes the descriptors

    Declaration

    Objective-C

    - (void)detectAndCompute:(nonnull Mat *)image
                        mask:(nonnull Mat *)mask
                   keypoints:(nonnull NSMutableArray<KeyPoint *> *)keypoints
                 descriptors:(nonnull Mat *)descriptors
        useProvidedKeypoints:(BOOL)useProvidedKeypoints;

    Swift

    func detectAndCompute(image: Mat, mask: Mat, keypoints: NSMutableArray, descriptors: Mat, useProvidedKeypoints: Bool)
  • Detects keypoints and computes the descriptors

    Declaration

    Objective-C

    - (void)detectAndCompute:(nonnull Mat *)image
                        mask:(nonnull Mat *)mask
                   keypoints:(nonnull NSMutableArray<KeyPoint *> *)keypoints
                 descriptors:(nonnull Mat *)descriptors;

    Swift

    func detectAndCompute(image: Mat, mask: Mat, keypoints: NSMutableArray, descriptors: Mat)
  • Declaration

    Objective-C

    - (void)read:(NSString*)fileName NS_SWIFT_NAME(read(fileName:));

    Swift

    func read(fileName: String)
  • Declaration

    Objective-C

    - (void)write:(NSString*)fileName NS_SWIFT_NAME(write(fileName:));

    Swift

    func write(fileName: String)