EdgeDetector.hpp
Go to the documentation of this file.
1 #pragma once
2 
4 
5 // standard
6 #include <fstream>
7 
8 // shared
10 
12 
13 namespace dai {
14 namespace node {
15 
19 class EdgeDetector : public NodeCRTP<Node, EdgeDetector, EdgeDetectorProperties> {
20  public:
21  constexpr static const char* NAME = "EdgeDetector";
22 
23  protected:
25 
26  private:
27  std::shared_ptr<RawEdgeDetectorConfig> rawConfig;
28 
29  public:
30  EdgeDetector(const std::shared_ptr<PipelineImpl>& par, int64_t nodeId);
31  EdgeDetector(const std::shared_ptr<PipelineImpl>& par, int64_t nodeId, std::unique_ptr<Properties> props);
32 
37 
42  Input inputConfig{*this, "inputConfig", Input::Type::SReceiver, false, 4, {{DatatypeEnum::EdgeDetectorConfig, false}}};
47  Input inputImage{*this, "inputImage", Input::Type::SReceiver, false, 4, true, {{DatatypeEnum::ImgFrame, false}}};
48 
52  Output outputImage{*this, "outputImage", Output::Type::MSender, {{DatatypeEnum::ImgFrame, false}}};
53 
57  Output passthroughInputImage{*this, "passthroughInputImage", Output::Type::MSender, {{DatatypeEnum::ImgFrame, false}}};
58 
59  // Functions to set properties
64  [[deprecated("Use 'inputConfig.setWaitForMessage()' instead")]] void setWaitForConfigInput(bool wait);
65 
70  [[deprecated("Use 'inputConfig.setWaitForMessage()' instead")]] bool getWaitForConfigInput() const;
71 
76  void setNumFramesPool(int numFramesPool);
77 
82  void setMaxOutputFrameSize(int maxFrameSize);
83 };
84 
85 } // namespace node
86 } // namespace dai
dai::node::EdgeDetector::NAME
constexpr static const char * NAME
Definition: EdgeDetector.hpp:21
dai::node::EdgeDetector::passthroughInputImage
Output passthroughInputImage
Definition: EdgeDetector.hpp:57
dai::EdgeDetectorConfig
Definition: EdgeDetectorConfig.hpp:14
dai::node::EdgeDetector::getWaitForConfigInput
bool getWaitForConfigInput() const
Definition: EdgeDetector.cpp:28
dai::Node::Output
Definition: Node.hpp:67
EdgeDetectorConfig.hpp
dai::node::EdgeDetector::setMaxOutputFrameSize
void setMaxOutputFrameSize(int maxFrameSize)
Definition: EdgeDetector.cpp:36
dai::NodeCRTP
Definition: Node.hpp:342
dai::node::EdgeDetector::setWaitForConfigInput
void setWaitForConfigInput(bool wait)
Definition: EdgeDetector.cpp:24
dai::node::EdgeDetector::initialConfig
EdgeDetectorConfig initialConfig
Definition: EdgeDetector.hpp:36
dai::node::EdgeDetector
EdgeDetector node. Performs edge detection using 3x3 Sobel filter.
Definition: EdgeDetector.hpp:19
EdgeDetectorProperties.hpp
dai::node::EdgeDetector::EdgeDetector
EdgeDetector(const std::shared_ptr< PipelineImpl > &par, int64_t nodeId)
Definition: EdgeDetector.cpp:8
dai::Properties
Base Properties structure.
Definition: Properties.hpp:8
dai::node::EdgeDetector::setNumFramesPool
void setNumFramesPool(int numFramesPool)
Definition: EdgeDetector.cpp:32
dai::node::EdgeDetector::outputImage
Output outputImage
Definition: EdgeDetector.hpp:52
dai::node::EdgeDetector::rawConfig
std::shared_ptr< RawEdgeDetectorConfig > rawConfig
Definition: EdgeDetector.hpp:27
dai::DatatypeEnum::EdgeDetectorConfig
@ EdgeDetectorConfig
dai::DatatypeEnum::ImgFrame
@ ImgFrame
dai::node::EdgeDetector::inputConfig
Input inputConfig
Definition: EdgeDetector.hpp:42
dai::node::EdgeDetector::getProperties
Properties & getProperties()
Definition: EdgeDetector.cpp:18
dai
Definition: CameraExposureOffset.hpp:6
Node.hpp
dai::node::EdgeDetector::inputImage
Input inputImage
Definition: EdgeDetector.hpp:47


depthai
Author(s): Martin Peterlin
autogenerated on Sat Mar 22 2025 02:58:19