View Source Evision.XImgProc.StructuredEdgeDetection (Evision v0.2.9)
Summary
Functions
Clears the algorithm state
The function computes orientation from edge image.
The function computes orientation from edge image.
The function detects edges in src and draw them to dst.
The function detects edges in src and draw them to dst.
The function edgenms in edge image and suppress edges where edge is stronger in orthogonal direction.
The function edgenms in edge image and suppress edges where edge is stronger in orthogonal direction.
Returns true if the Algorithm is empty (e.g. in the very beginning or after unsuccessful read
getDefaultName
Reads algorithm parameters from a file storage
save
Stores algorithm parameters in a file storage
write
Types
@type t() :: %Evision.XImgProc.StructuredEdgeDetection{ref: reference()}
Type that represents an XImgProc.StructuredEdgeDetection
struct.
ref.
reference()
The underlying erlang resource variable.
Functions
@spec clear(Keyword.t()) :: any() | {:error, String.t()}
@spec clear(t()) :: t() | {:error, String.t()}
Clears the algorithm state
Positional Arguments
- self:
Evision.XImgProc.StructuredEdgeDetection.t()
Python prototype (for reference only):
clear() -> None
@spec computeOrientation(t(), Evision.Mat.maybe_mat_in()) :: Evision.Mat.t() | {:error, String.t()}
The function computes orientation from edge image.
Positional Arguments
self:
Evision.XImgProc.StructuredEdgeDetection.t()
src:
Evision.Mat
.edge image.
Return
dst:
Evision.Mat.t()
.orientation image.
Python prototype (for reference only):
computeOrientation(src[, dst]) -> dst
@spec computeOrientation( t(), Evision.Mat.maybe_mat_in(), [{atom(), term()}, ...] | nil ) :: Evision.Mat.t() | {:error, String.t()}
The function computes orientation from edge image.
Positional Arguments
self:
Evision.XImgProc.StructuredEdgeDetection.t()
src:
Evision.Mat
.edge image.
Return
dst:
Evision.Mat.t()
.orientation image.
Python prototype (for reference only):
computeOrientation(src[, dst]) -> dst
@spec detectEdges(t(), Evision.Mat.maybe_mat_in()) :: Evision.Mat.t() | {:error, String.t()}
The function detects edges in src and draw them to dst.
Positional Arguments
self:
Evision.XImgProc.StructuredEdgeDetection.t()
src:
Evision.Mat
.source image (RGB, float, in [0;1]) to detect edges
Return
dst:
Evision.Mat.t()
.destination image (grayscale, float, in [0;1]) where edges are drawn
The algorithm underlies this function is much more robust to texture presence, than common approaches, e.g. Sobel @sa Sobel, Canny
Python prototype (for reference only):
detectEdges(src[, dst]) -> dst
@spec detectEdges(t(), Evision.Mat.maybe_mat_in(), [{atom(), term()}, ...] | nil) :: Evision.Mat.t() | {:error, String.t()}
The function detects edges in src and draw them to dst.
Positional Arguments
self:
Evision.XImgProc.StructuredEdgeDetection.t()
src:
Evision.Mat
.source image (RGB, float, in [0;1]) to detect edges
Return
dst:
Evision.Mat.t()
.destination image (grayscale, float, in [0;1]) where edges are drawn
The algorithm underlies this function is much more robust to texture presence, than common approaches, e.g. Sobel @sa Sobel, Canny
Python prototype (for reference only):
detectEdges(src[, dst]) -> dst
@spec edgesNms(t(), Evision.Mat.maybe_mat_in(), Evision.Mat.maybe_mat_in()) :: Evision.Mat.t() | {:error, String.t()}
The function edgenms in edge image and suppress edges where edge is stronger in orthogonal direction.
Positional Arguments
self:
Evision.XImgProc.StructuredEdgeDetection.t()
edge_image:
Evision.Mat
.edge image from detectEdges function.
orientation_image:
Evision.Mat
.orientation image from computeOrientation function.
Keyword Arguments
r:
integer()
.radius for NMS suppression.
s:
integer()
.radius for boundary suppression.
m:
float
.multiplier for conservative suppression.
isParallel:
bool
.enables/disables parallel computing.
Return
dst:
Evision.Mat.t()
.suppressed image (grayscale, float, in [0;1])
Python prototype (for reference only):
edgesNms(edge_image, orientation_image[, dst[, r[, s[, m[, isParallel]]]]]) -> dst
@spec edgesNms( t(), Evision.Mat.maybe_mat_in(), Evision.Mat.maybe_mat_in(), [isParallel: term(), m: term(), r: term(), s: term()] | nil ) :: Evision.Mat.t() | {:error, String.t()}
The function edgenms in edge image and suppress edges where edge is stronger in orthogonal direction.
Positional Arguments
self:
Evision.XImgProc.StructuredEdgeDetection.t()
edge_image:
Evision.Mat
.edge image from detectEdges function.
orientation_image:
Evision.Mat
.orientation image from computeOrientation function.
Keyword Arguments
r:
integer()
.radius for NMS suppression.
s:
integer()
.radius for boundary suppression.
m:
float
.multiplier for conservative suppression.
isParallel:
bool
.enables/disables parallel computing.
Return
dst:
Evision.Mat.t()
.suppressed image (grayscale, float, in [0;1])
Python prototype (for reference only):
edgesNms(edge_image, orientation_image[, dst[, r[, s[, m[, isParallel]]]]]) -> dst
@spec empty(Keyword.t()) :: any() | {:error, String.t()}
@spec empty(t()) :: boolean() | {:error, String.t()}
Returns true if the Algorithm is empty (e.g. in the very beginning or after unsuccessful read
Positional Arguments
- self:
Evision.XImgProc.StructuredEdgeDetection.t()
Return
- retval:
bool
Python prototype (for reference only):
empty() -> retval
@spec getDefaultName(Keyword.t()) :: any() | {:error, String.t()}
@spec getDefaultName(t()) :: binary() | {:error, String.t()}
getDefaultName
Positional Arguments
- self:
Evision.XImgProc.StructuredEdgeDetection.t()
Return
- retval:
String
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.
Python prototype (for reference only):
getDefaultName() -> retval
@spec read(t(), Evision.FileNode.t()) :: t() | {:error, String.t()}
Reads algorithm parameters from a file storage
Positional Arguments
- self:
Evision.XImgProc.StructuredEdgeDetection.t()
- func:
Evision.FileNode
Python prototype (for reference only):
read(fn) -> None
save
Positional Arguments
- self:
Evision.XImgProc.StructuredEdgeDetection.t()
- filename:
String
Saves the algorithm to a file. In order to make this method work, the derived class must implement Algorithm::write(FileStorage& fs).
Python prototype (for reference only):
save(filename) -> None
@spec write(t(), Evision.FileStorage.t()) :: t() | {:error, String.t()}
Stores algorithm parameters in a file storage
Positional Arguments
- self:
Evision.XImgProc.StructuredEdgeDetection.t()
- fs:
Evision.FileStorage
Python prototype (for reference only):
write(fs) -> None
@spec write(t(), Evision.FileStorage.t(), binary()) :: t() | {:error, String.t()}
write
Positional Arguments
- self:
Evision.XImgProc.StructuredEdgeDetection.t()
- fs:
Evision.FileStorage
- name:
String
Has overloading in C++
Python prototype (for reference only):
write(fs, name) -> None