vision
Loading...
Searching...
No Matches
DnnDetector.hpp
1// -*- mode:C++; tab-width:4; c-basic-offset:4; indent-tabs-mode:nil -*-
2
3#ifndef __DNN_DETECTOR_HPP__
4#define __DNN_DETECTOR_HPP__
5
6#include <yarp/dev/DeviceDriver.h>
7
8#include <opencv2/dnn.hpp>
9
10#include "IDetector.hpp"
11#include "DnnDetector_ParamsParser.h"
12
18class DnnDetector : public yarp::dev::DeviceDriver,
21{
22public:
23 bool open(yarp::os::Searchable & config) override;
24 bool detect(const yarp::sig::Image & inYarpImg, yarp::os::Bottle & detectedObjects) override;
25
26private:
27 cv::dnn::Net net;
28 std::vector<std::string> classes;
29 std::vector<std::string> outNames;
30
31 cv::Scalar mean;
32
33 void preprocess(const cv::Mat & frame);
34 void postprocess(const cv::Size & size, const std::vector<cv::Mat> & outs, yarp::os::Bottle & detectedObjects);
35};
36
37#endif // __DNN_DETECTOR_HPP__
Definition DnnDetector_ParamsParser.h:51
Definition DnnDetector.hpp:21
Interface for object detection.
Definition IDetector.hpp:17