EdgeDetector node. Performs edge detection using 3x3 Sobel filter. More...
#include <EdgeDetector.hpp>
Public Member Functions | |
EdgeDetector (const std::shared_ptr< PipelineImpl > &par, int64_t nodeId) | |
EdgeDetector (const std::shared_ptr< PipelineImpl > &par, int64_t nodeId, std::unique_ptr< Properties > props) | |
bool | getWaitForConfigInput () const |
void | setMaxOutputFrameSize (int maxFrameSize) |
void | setNumFramesPool (int numFramesPool) |
void | setWaitForConfigInput (bool wait) |
![]() | |
std::unique_ptr< Node > | clone () const override |
const char * | getName () const override |
![]() | |
virtual std::unique_ptr< Node > | clone () const =0 |
Deep copy the node. More... | |
AssetManager & | getAssetManager () |
Get node AssetManager as a reference. More... | |
const AssetManager & | getAssetManager () const |
Get node AssetManager as a const reference. More... | |
std::vector< Input * > | getInputRefs () |
Retrieves reference to node inputs. More... | |
std::vector< const Input * > | getInputRefs () const |
Retrieves reference to node inputs. More... | |
std::vector< Input > | getInputs () |
Retrieves all nodes inputs. More... | |
virtual const char * | getName () const =0 |
Retrieves nodes name. More... | |
std::vector< Output * > | getOutputRefs () |
Retrieves reference to node outputs. More... | |
std::vector< const Output * > | getOutputRefs () const |
Retrieves reference to node outputs. More... | |
std::vector< Output > | getOutputs () |
Retrieves all nodes outputs. More... | |
Pipeline | getParentPipeline () |
const Pipeline | getParentPipeline () const |
Node (const std::shared_ptr< PipelineImpl > &p, Id nodeId, std::unique_ptr< Properties > props) | |
Constructs Node. More... | |
virtual | ~Node ()=default |
Public Attributes | |
EdgeDetectorConfig | initialConfig |
Input | inputConfig {*this, "inputConfig", Input::Type::SReceiver, false, 4, {{DatatypeEnum::EdgeDetectorConfig, false}}} |
Input | inputImage {*this, "inputImage", Input::Type::SReceiver, false, 4, true, {{DatatypeEnum::ImgFrame, false}}} |
Output | outputImage {*this, "outputImage", Output::Type::MSender, {{DatatypeEnum::ImgFrame, false}}} |
Output | passthroughInputImage {*this, "passthroughInputImage", Output::Type::MSender, {{DatatypeEnum::ImgFrame, false}}} |
![]() | |
Properties & | properties |
Underlying properties. More... | |
![]() | |
const Id | id |
Id of node. More... | |
Properties & | properties |
Static Public Attributes | |
constexpr static const char * | NAME = "EdgeDetector" |
Protected Member Functions | |
Properties & | getProperties () |
![]() | |
virtual tl::optional< OpenVINO::Version > | getRequiredOpenVINOVersion () |
void | setInputMapRefs (InputMap *inMapRef) |
void | setInputMapRefs (std::initializer_list< InputMap * > l) |
void | setInputRefs (Input *inRef) |
void | setInputRefs (std::initializer_list< Input * > l) |
void | setOutputMapRefs (OutputMap *outMapRef) |
void | setOutputMapRefs (std::initializer_list< OutputMap * > l) |
void | setOutputRefs (Output *outRef) |
void | setOutputRefs (std::initializer_list< Output * > l) |
Private Attributes | |
std::shared_ptr< RawEdgeDetectorConfig > | rawConfig |
Additional Inherited Members | |
![]() | |
using | Properties = EdgeDetectorProperties |
![]() | |
using | Id = std::int64_t |
Node identificator. Unique for every node on a single Pipeline. More... | |
![]() | |
AssetManager | assetManager |
std::unordered_map< std::string, InputMap * > | inputMapRefs |
std::unordered_map< std::string, Input * > | inputRefs |
std::unordered_map< std::string, OutputMap * > | outputMapRefs |
std::unordered_map< std::string, Output * > | outputRefs |
std::weak_ptr< PipelineImpl > | parent |
copyable_unique_ptr< Properties > | propertiesHolder |
EdgeDetector node. Performs edge detection using 3x3 Sobel filter.
Definition at line 19 of file EdgeDetector.hpp.
dai::node::EdgeDetector::EdgeDetector | ( | const std::shared_ptr< PipelineImpl > & | par, |
int64_t | nodeId | ||
) |
Definition at line 8 of file EdgeDetector.cpp.
dai::node::EdgeDetector::EdgeDetector | ( | const std::shared_ptr< PipelineImpl > & | par, |
int64_t | nodeId, | ||
std::unique_ptr< Properties > | props | ||
) |
Definition at line 10 of file EdgeDetector.cpp.
|
protectedvirtual |
Reimplemented from dai::Node.
Definition at line 18 of file EdgeDetector.cpp.
bool dai::node::EdgeDetector::getWaitForConfigInput | ( | ) | const |
Definition at line 28 of file EdgeDetector.cpp.
void dai::node::EdgeDetector::setMaxOutputFrameSize | ( | int | maxFrameSize | ) |
Specify maximum size of output image.
maxFrameSize | Maximum frame size in bytes |
Definition at line 36 of file EdgeDetector.cpp.
void dai::node::EdgeDetector::setNumFramesPool | ( | int | numFramesPool | ) |
Specify number of frames in pool.
numFramesPool | How many frames should the pool have |
Definition at line 32 of file EdgeDetector.cpp.
void dai::node::EdgeDetector::setWaitForConfigInput | ( | bool | wait | ) |
Specify whether or not wait until configuration message arrives to inputConfig Input.
wait | True to wait for configuration message, false otherwise. |
Definition at line 24 of file EdgeDetector.cpp.
EdgeDetectorConfig dai::node::EdgeDetector::initialConfig |
Initial config to use for edge detection.
Definition at line 36 of file EdgeDetector.hpp.
Input dai::node::EdgeDetector::inputConfig {*this, "inputConfig", Input::Type::SReceiver, false, 4, {{DatatypeEnum::EdgeDetectorConfig, false}}} |
Input EdgeDetectorConfig message with ability to modify parameters in runtime. Default queue is non-blocking with size 4.
Definition at line 42 of file EdgeDetector.hpp.
Input dai::node::EdgeDetector::inputImage {*this, "inputImage", Input::Type::SReceiver, false, 4, true, {{DatatypeEnum::ImgFrame, false}}} |
Input image on which edge detection is performed. Default queue is non-blocking with size 4.
Definition at line 47 of file EdgeDetector.hpp.
|
staticconstexpr |
Definition at line 21 of file EdgeDetector.hpp.
Output dai::node::EdgeDetector::outputImage {*this, "outputImage", Output::Type::MSender, {{DatatypeEnum::ImgFrame, false}}} |
Outputs image frame with detected edges
Definition at line 52 of file EdgeDetector.hpp.
Output dai::node::EdgeDetector::passthroughInputImage {*this, "passthroughInputImage", Output::Type::MSender, {{DatatypeEnum::ImgFrame, false}}} |
Passthrough message on which the calculation was performed.
Definition at line 57 of file EdgeDetector.hpp.
|
private |
Definition at line 27 of file EdgeDetector.hpp.