View Source Evision.DNN.Model (Evision v0.1.14)

Link to this section Summary

Types

t()

Type that represents an Evision.DNN.Model struct.

Functions

Variant 1:

Create model from deep learning network.

Create model from deep learning network represented in one of the supported formats. An order of @p model and @p config arguments does not matter.

Given the @p input frame, create input blob, run net and return the output @p blobs.

Given the @p input frame, create input blob, run net and return the output @p blobs.

Set flag crop for frame.

Set mean value for frame.

Set preprocessing parameters for frame.

Set scalefactor value for frame.

Set input size for frame.

Positional Arguments
  • width: int.

Set flag swapRB for frame.

Positional Arguments
  • backendId: dnn_Backend
Return

Python prototype (for reference):

Positional Arguments
  • targetId: dnn_Target
Return

Python prototype (for reference):

Link to this section Types

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

Type that represents an Evision.DNN.Model struct.

  • ref. reference()

    The underlying erlang resource variable.

Link to this section Functions

@spec model(Evision.DNN.Net.t()) :: t() | {:error, String.t()}
@spec model(binary()) :: t() | {:error, String.t()}

Variant 1:

Create model from deep learning network.

Positional Arguments
Return

Python prototype (for reference):

Model(network) -> <dnn_Model object>

Variant 2:

Create model from deep learning network represented in one of the supported formats. An order of @p model and @p config arguments does not matter.

Positional Arguments
  • model: String.

    Binary file contains trained weights.

Keyword Arguments
  • config: String.

    Text file contains network configuration.

Return

Python prototype (for reference):

Model(model[, config]) -> <dnn_Model object>
@spec model(binary(), [{atom(), term()}, ...] | nil) :: t() | {:error, String.t()}

Create model from deep learning network represented in one of the supported formats. An order of @p model and @p config arguments does not matter.

Positional Arguments
  • model: String.

    Binary file contains trained weights.

Keyword Arguments
  • config: String.

    Text file contains network configuration.

Return

Python prototype (for reference):

Model(model[, config]) -> <dnn_Model object>
@spec predict(t(), Evision.Mat.maybe_mat_in()) ::
  [Evision.Mat.t()] | {:error, String.t()}

Given the @p input frame, create input blob, run net and return the output @p blobs.

Positional Arguments
Return
  • outs: [Evision.Mat].

    Allocated output blobs, which will store results of the computation.

Python prototype (for reference):

predict(frame[, outs]) -> outs
Link to this function

predict(self, frame, opts)

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

Given the @p input frame, create input blob, run net and return the output @p blobs.

Positional Arguments
Return
  • outs: [Evision.Mat].

    Allocated output blobs, which will store results of the computation.

Python prototype (for reference):

predict(frame[, outs]) -> outs
Link to this function

setInputCrop(self, crop)

View Source
@spec setInputCrop(t(), boolean()) :: t() | {:error, String.t()}

Set flag crop for frame.

Positional Arguments
  • crop: bool.

    Flag which indicates whether image will be cropped after resize or not.

Return

Python prototype (for reference):

setInputCrop(crop) -> retval
Link to this function

setInputMean(self, mean)

View Source
@spec setInputMean(
  t(),
  {number()}
  | {number(), number()}
  | {number() | number() | number()}
  | {number(), number(), number(), number()}
) :: t() | {:error, String.t()}

Set mean value for frame.

Positional Arguments
  • mean: Scalar.

    Scalar with mean values which are subtracted from channels.

Return

Python prototype (for reference):

setInputMean(mean) -> retval
@spec setInputParams(t()) :: :ok | {:error, String.t()}

Set preprocessing parameters for frame.

Keyword Arguments
  • scale: double.

    Multiplier for frame values.

  • size: Size.

    New input size.

  • mean: Scalar.

    Scalar with mean values which are subtracted from channels.

  • swapRB: bool.

    Flag which indicates that swap first and last channels.

  • crop: bool.

    Flag which indicates whether image will be cropped after resize or not. blob(n, c, y, x) = scale * resize( frame(y, x, c) ) - mean(c) )

Python prototype (for reference):

setInputParams([, scale[, size[, mean[, swapRB[, crop]]]]]) -> None
Link to this function

setInputScale(self, scale)

View Source
@spec setInputScale(t(), number()) :: t() | {:error, String.t()}

Set scalefactor value for frame.

Positional Arguments
  • scale: double.

    Multiplier for frame values.

Return

Python prototype (for reference):

setInputScale(scale) -> retval
Link to this function

setInputSize(self, size)

View Source
@spec setInputSize(
  t(),
  {number(), number()}
) :: t() | {:error, String.t()}

Set input size for frame.

Positional Arguments
  • size: Size.

    New input size.

Return

Note: If shape of the new blob less than 0, then frame size not change.

Python prototype (for reference):

setInputSize(size) -> retval
Link to this function

setInputSize(self, width, height)

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

    New input width.

  • height: int.

    New input height.

Return

Has overloading in C++

Python prototype (for reference):

setInputSize(width, height) -> retval
Link to this function

setInputSwapRB(self, swapRB)

View Source
@spec setInputSwapRB(t(), boolean()) :: t() | {:error, String.t()}

Set flag swapRB for frame.

Positional Arguments
  • swapRB: bool.

    Flag which indicates that swap first and last channels.

Return

Python prototype (for reference):

setInputSwapRB(swapRB) -> retval
Link to this function

setPreferableBackend(self, backendId)

View Source
@spec setPreferableBackend(t(), integer()) :: t() | {:error, String.t()}
Positional Arguments
  • backendId: dnn_Backend
Return

Python prototype (for reference):

setPreferableBackend(backendId) -> retval
Link to this function

setPreferableTarget(self, targetId)

View Source
@spec setPreferableTarget(t(), integer()) :: t() | {:error, String.t()}
Positional Arguments
  • targetId: dnn_Target
Return

Python prototype (for reference):

setPreferableTarget(targetId) -> retval