View Source Evision.MSER (Evision v0.1.11)

Link to this section Summary

Types

t()

Type that represents an Evision.MSER struct.

Functions

Variant 1:

Positional Arguments
  • images: [Evision.Mat].

Variant 1:

Positional Arguments
  • images: [Evision.Mat].

Full constructor for %MSER detector

Full constructor for %MSER detector

Return
  • retval: int

Python prototype (for reference):

Return
  • retval: int

Python prototype (for reference):

Return
  • retval: int

Python prototype (for reference):

Variant 1:

Positional Arguments
  • images: [Evision.Mat].

Variant 1:

Positional Arguments
  • images: [Evision.Mat].

Positional Arguments
Keyword Arguments
  • useProvidedKeypoints: bool.
Return

Detects keypoints and computes the descriptors

Positional Arguments
Keyword Arguments
  • useProvidedKeypoints: bool.
Return

Detects keypoints and computes the descriptors

Detect %MSER regions

Return
  • retval: bool

Python prototype (for reference):

Return

Python prototype (for reference):

Return
  • retval: int

Python prototype (for reference):

Return
  • retval: int

Python prototype (for reference):

Return
  • retval: int

Python prototype (for reference):

Return
  • retval: bool

Python prototype (for reference):

Variant 1:

Positional Arguments

Python prototype (for reference):

Positional Arguments
  • delta: int

Python prototype (for reference):

Positional Arguments
  • maxArea: int

Python prototype (for reference):

Positional Arguments
  • minArea: int

Python prototype (for reference):

Positional Arguments
  • f: bool

Python prototype (for reference):

Variant 1:

Positional Arguments
Keyword Arguments

Python prototype (for reference):

Positional Arguments
Keyword Arguments

Python prototype (for reference):

Link to this section Types

@type t() :: %Evision.MSER{ref: reference()}

Type that represents an Evision.MSER struct.

  • ref. reference()

    The underlying erlang resource variable.

Link to this section Functions

Link to this function

compute(self, images, keypoints)

View Source
@spec compute(t(), [Evision.Mat.maybe_mat_in()], [[Evision.KeyPoint.t()]]) ::
  {[[Evision.KeyPoint.t()]], [Evision.Mat.t()]} | {:error, String.t()}
@spec compute(t(), Evision.Mat.maybe_mat_in(), [Evision.KeyPoint.t()]) ::
  {[Evision.KeyPoint.t()], Evision.Mat.t()} | {:error, String.t()}

Variant 1:

Positional Arguments
  • images: [Evision.Mat].

    Image set.

Return
  • keypoints: [[Evision.KeyPoint]].

    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: [Evision.Mat].

    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.

Has overloading in C++

Python prototype (for reference):

compute(images, keypoints[, descriptors]) -> keypoints, descriptors

Variant 2:

Computes the descriptors for a set of keypoints detected in an image (first variant) or image set (second variant).

Positional Arguments
Return
  • keypoints: [Evision.KeyPoint].

    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: Evision.Mat.

    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.

Python prototype (for reference):

compute(image, keypoints[, descriptors]) -> keypoints, descriptors
Link to this function

compute(self, images, keypoints, opts)

View Source
@spec compute(
  t(),
  [Evision.Mat.maybe_mat_in()],
  [[Evision.KeyPoint.t()]],
  [{atom(), term()}, ...] | nil
) :: {[[Evision.KeyPoint.t()]], [Evision.Mat.t()]} | {:error, String.t()}
@spec compute(
  t(),
  Evision.Mat.maybe_mat_in(),
  [Evision.KeyPoint.t()],
  [{atom(), term()}, ...] | nil
) ::
  {[Evision.KeyPoint.t()], Evision.Mat.t()} | {:error, String.t()}

Variant 1:

Positional Arguments
  • images: [Evision.Mat].

    Image set.

Return
  • keypoints: [[Evision.KeyPoint]].

    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: [Evision.Mat].

    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.

Has overloading in C++

Python prototype (for reference):

compute(images, keypoints[, descriptors]) -> keypoints, descriptors

Variant 2:

Computes the descriptors for a set of keypoints detected in an image (first variant) or image set (second variant).

Positional Arguments
Return
  • keypoints: [Evision.KeyPoint].

    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: Evision.Mat.

    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.

Python prototype (for reference):

compute(image, keypoints[, descriptors]) -> keypoints, descriptors
@spec create() :: t() | {:error, String.t()}

Full constructor for %MSER detector

Keyword Arguments
  • delta: int.

    it compares \f$(size{i}-size{i-delta})/size_{i-delta}\f$

  • min_area: int.

    prune the area which smaller than minArea

  • max_area: int.

    prune the area which bigger than maxArea

  • max_variation: double.

    prune the area have similar size to its children

  • min_diversity: double.

    for color image, trace back to cut off mser with diversity less than min_diversity

  • max_evolution: int.

    for color image, the evolution steps

  • area_threshold: double.

    for color image, the area threshold to cause re-initialize

  • min_margin: double.

    for color image, ignore too small margin

  • edge_blur_size: int.

    for color image, the aperture size for edge blur

Return

Python prototype (for reference):

create([, delta[, min_area[, max_area[, max_variation[, min_diversity[, max_evolution[, area_threshold[, min_margin[, edge_blur_size]]]]]]]]]) -> retval
@spec create([{atom(), term()}, ...] | nil) :: t() | {:error, String.t()}

Full constructor for %MSER detector

Keyword Arguments
  • delta: int.

    it compares \f$(size{i}-size{i-delta})/size_{i-delta}\f$

  • min_area: int.

    prune the area which smaller than minArea

  • max_area: int.

    prune the area which bigger than maxArea

  • max_variation: double.

    prune the area have similar size to its children

  • min_diversity: double.

    for color image, trace back to cut off mser with diversity less than min_diversity

  • max_evolution: int.

    for color image, the evolution steps

  • area_threshold: double.

    for color image, the area threshold to cause re-initialize

  • min_margin: double.

    for color image, ignore too small margin

  • edge_blur_size: int.

    for color image, the aperture size for edge blur

Return

Python prototype (for reference):

create([, delta[, min_area[, max_area[, max_variation[, min_diversity[, max_evolution[, area_threshold[, min_margin[, edge_blur_size]]]]]]]]]) -> retval
@spec defaultNorm(t()) :: integer() | {:error, String.t()}
Return
  • retval: int

Python prototype (for reference):

defaultNorm() -> retval
@spec descriptorSize(t()) :: integer() | {:error, String.t()}
Return
  • retval: int

Python prototype (for reference):

descriptorSize() -> retval
@spec descriptorType(t()) :: integer() | {:error, String.t()}
Return
  • retval: int

Python prototype (for reference):

descriptorType() -> retval
@spec detect(t(), [Evision.Mat.maybe_mat_in()]) ::
  [[Evision.KeyPoint.t()]] | {:error, String.t()}
@spec detect(t(), Evision.Mat.maybe_mat_in()) ::
  [Evision.KeyPoint.t()] | {:error, String.t()}

Variant 1:

Positional Arguments
  • images: [Evision.Mat].

    Image set.

Keyword Arguments
  • masks: [Evision.Mat].

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

Return
  • keypoints: [[Evision.KeyPoint]].

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

Has overloading in C++

Python prototype (for reference):

detect(images[, masks]) -> keypoints

Variant 2:

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

Positional Arguments
Keyword Arguments
  • mask: Evision.Mat.

    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.

Return
  • keypoints: [Evision.KeyPoint].

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

Python prototype (for reference):

detect(image[, mask]) -> keypoints
Link to this function

detect(self, images, opts)

View Source
@spec detect(t(), [Evision.Mat.maybe_mat_in()], [{atom(), term()}, ...] | nil) ::
  [[Evision.KeyPoint.t()]] | {:error, String.t()}
@spec detect(t(), Evision.Mat.maybe_mat_in(), [{atom(), term()}, ...] | nil) ::
  [Evision.KeyPoint.t()] | {:error, String.t()}

Variant 1:

Positional Arguments
  • images: [Evision.Mat].

    Image set.

Keyword Arguments
  • masks: [Evision.Mat].

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

Return
  • keypoints: [[Evision.KeyPoint]].

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

Has overloading in C++

Python prototype (for reference):

detect(images[, masks]) -> keypoints

Variant 2:

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

Positional Arguments
Keyword Arguments
  • mask: Evision.Mat.

    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.

Return
  • keypoints: [Evision.KeyPoint].

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

Python prototype (for reference):

detect(image[, mask]) -> keypoints
Link to this function

detectAndCompute(self, image, mask)

View Source
@spec detectAndCompute(t(), Evision.Mat.maybe_mat_in(), Evision.Mat.maybe_mat_in()) ::
  {[Evision.KeyPoint.t()], Evision.Mat.t()} | {:error, String.t()}
Positional Arguments
Keyword Arguments
  • useProvidedKeypoints: bool.
Return

Detects keypoints and computes the descriptors

Python prototype (for reference):

detectAndCompute(image, mask[, descriptors[, useProvidedKeypoints]]) -> keypoints, descriptors
Link to this function

detectAndCompute(self, image, mask, opts)

View Source
@spec detectAndCompute(
  t(),
  Evision.Mat.maybe_mat_in(),
  Evision.Mat.maybe_mat_in(),
  [{atom(), term()}, ...] | nil
) :: {[Evision.KeyPoint.t()], Evision.Mat.t()} | {:error, String.t()}
Positional Arguments
Keyword Arguments
  • useProvidedKeypoints: bool.
Return

Detects keypoints and computes the descriptors

Python prototype (for reference):

detectAndCompute(image, mask[, descriptors[, useProvidedKeypoints]]) -> keypoints, descriptors
Link to this function

detectRegions(self, image)

View Source
@spec detectRegions(t(), Evision.Mat.maybe_mat_in()) ::
  {[[{number(), number()}]], [{number(), number(), number(), number()}]}
  | {:error, String.t()}

Detect %MSER regions

Positional Arguments
  • image: Evision.Mat.

    input image (8UC1, 8UC3 or 8UC4, must be greater or equal than 3x3)

Return
  • msers: [[Point]].

    resulting list of point sets

  • bboxes: [Rect].

    resulting bounding boxes

Python prototype (for reference):

detectRegions(image) -> msers, bboxes
@spec empty(t()) :: boolean() | {:error, String.t()}
Return
  • retval: bool

Python prototype (for reference):

empty() -> retval
@spec getDefaultName(t()) :: binary() | {:error, String.t()}
Return

Python prototype (for reference):

getDefaultName() -> retval
@spec getDelta(t()) :: integer() | {:error, String.t()}
Return
  • retval: int

Python prototype (for reference):

getDelta() -> retval
@spec getMaxArea(t()) :: integer() | {:error, String.t()}
Return
  • retval: int

Python prototype (for reference):

getMaxArea() -> retval
@spec getMinArea(t()) :: integer() | {:error, String.t()}
Return
  • retval: int

Python prototype (for reference):

getMinArea() -> retval
@spec getPass2Only(t()) :: boolean() | {:error, String.t()}
Return
  • retval: bool

Python prototype (for reference):

getPass2Only() -> retval
@spec read(t(), Evision.FileNode.t()) :: :ok | {:error, String.t()}
@spec read(t(), binary()) :: :ok | {:error, String.t()}

Variant 1:

Positional Arguments

Python prototype (for reference):

read(arg1) -> None

Variant 2:

Positional Arguments

Python prototype (for reference):

read(fileName) -> None
@spec setDelta(t(), integer()) :: :ok | {:error, String.t()}
Positional Arguments
  • delta: int

Python prototype (for reference):

setDelta(delta) -> None
Link to this function

setMaxArea(self, maxArea)

View Source
@spec setMaxArea(t(), integer()) :: :ok | {:error, String.t()}
Positional Arguments
  • maxArea: int

Python prototype (for reference):

setMaxArea(maxArea) -> None
Link to this function

setMinArea(self, minArea)

View Source
@spec setMinArea(t(), integer()) :: :ok | {:error, String.t()}
Positional Arguments
  • minArea: int

Python prototype (for reference):

setMinArea(minArea) -> None
@spec setPass2Only(t(), boolean()) :: :ok | {:error, String.t()}
Positional Arguments
  • f: bool

Python prototype (for reference):

setPass2Only(f) -> None
@spec write(t(), Evision.FileStorage.t()) :: :ok | {:error, String.t()}
@spec write(t(), binary()) :: :ok | {:error, String.t()}

Variant 1:

Positional Arguments
Keyword Arguments

Python prototype (for reference):

write(fs[, name]) -> None

Variant 2:

Positional Arguments

Python prototype (for reference):

write(fileName) -> None
@spec write(t(), Evision.FileStorage.t(), [{atom(), term()}, ...] | nil) ::
  :ok | {:error, String.t()}
Positional Arguments
Keyword Arguments

Python prototype (for reference):

write(fs[, name]) -> None