nndeploy C++ API  0.2.0
nndeploy C++ API
vis_matting.h
Go to the documentation of this file.
1 #ifndef _NNDEPLOY_MATTING_VISUALIZE_MATTING_H_
2 #define _NNDEPLOY_MATTING_VISUALIZE_MATTING_H_
3 
4 #include "nndeploy/base/any.h"
5 #include "nndeploy/base/common.h"
7 #include "nndeploy/base/log.h"
8 #include "nndeploy/base/macro.h"
9 #include "nndeploy/base/object.h"
10 #include "nndeploy/base/param.h"
11 #include "nndeploy/base/status.h"
12 #include "nndeploy/base/string.h"
13 #include "nndeploy/base/type.h"
14 #include "nndeploy/dag/edge.h"
15 #include "nndeploy/dag/node.h"
16 #include "nndeploy/device/buffer.h"
17 #include "nndeploy/device/device.h"
19 #include "nndeploy/device/tensor.h"
21 
22 namespace nndeploy {
23 namespace matting {
24 
26  public:
27  VisMatting(const std::string &name) : Node(name) {
28  key_ = "nndeploy::matting::VisMatting";
29  desc_ =
30  "Draw matting result on input cv::Mat image based on matting "
31  "results[cv::Mat->cv::Mat]";
32  this->setInputTypeInfo<cv::Mat>();
33  this->setInputTypeInfo<MattingResult>();
34  this->setOutputTypeInfo<cv::Mat>();
35  }
36  VisMatting(const std::string &name, std::vector<dag::Edge *> inputs,
37  std::vector<dag::Edge *> outputs)
38  : Node(name, inputs, outputs) {
39  key_ = "nndeploy::matting::VisMatting";
40  desc_ =
41  "Draw matting result on input cv::Mat image based on matting "
42  "results[cv::Mat->cv::Mat]";
43  this->setInputTypeInfo<cv::Mat>();
44  this->setInputTypeInfo<MattingResult>();
45  this->setOutputTypeInfo<cv::Mat>();
46  }
47 
48  virtual ~VisMatting() {}
49 
50  virtual base::Status run();
51 };
52 
53 } // namespace matting
54 } // namespace nndeploy
55 
56 #endif
Node base class.
Definition: node.h:171
VisMatting(const std::string &name, std::vector< dag::Edge * > inputs, std::vector< dag::Edge * > outputs)
Definition: vis_matting.h:36
VisMatting(const std::string &name)
Definition: vis_matting.h:27
virtual base::Status run()
Run node (pure virtual function)
#define NNDEPLOY_CC_API
api
Definition: macro.h:29