Algorithm

Objective-C

@interface Algorithm : NSObject

Swift

class Algorithm : NSObject

This is a base class for all more or less complex algorithms in OpenCV

especially for classes of algorithms, for which there can be multiple implementations. The examples are stereo correspondence (for which there are algorithms like block matching, semi-global block matching, graph-cut etc.), background subtraction (which can be done using mixture-of-gaussians models, codebook-based algorithm etc.), optical flow (block matching, Lucas-Kanade, Horn-Schunck etc.).

Here is example of SimpleBlobDetector use in your application via Algorithm interface: SNIPPET: snippets/core_various.cpp Algorithm

Member of Core

Methods

  • Returns the algorithm string identifier. This string is used as top level xml/yml node tag when the object is saved to a file or string.

    Declaration

    Objective-C

    - (nonnull NSString *)getDefaultName;

    Swift

    func getDefaultName() -> String
  • Returns true if the Algorithm is empty (e.g. in the very beginning or after unsuccessful read

    Declaration

    Objective-C

    - (BOOL)empty;

    Swift

    func empty() -> Bool
  • Clears the algorithm state

    Declaration

    Objective-C

    - (void)clear;

    Swift

    func clear()
  • Saves the algorithm to a file. In order to make this method work, the derived class must implement Algorithm::write(FileStorage& fs).

    Declaration

    Objective-C

    - (void)save:(nonnull NSString *)filename;

    Swift

    func save(filename: String)