YOLOV5.h 1.05 KB
Newer Older
Your Name's avatar
Your Name committed
1
2
3
4
#ifndef __DETECTOR_YOLOV5_H__
#define __DETECTOR_YOLOV5_H__

#include <migraphx/program.hpp>
liucong's avatar
liucong committed
5
#include <CommonDefinition.h>
Your Name's avatar
Your Name committed
6
7
8
9
10
11
12
13
14
15

namespace migraphxSamples
{

typedef struct _YOLOV5Parameter
{
    int numberOfClasses;
    float confidenceThreshold;
    float nmsThreshold;
    float objectThreshold;
liucong's avatar
liucong committed
16
} YOLOV5Parameter;
Your Name's avatar
Your Name committed
17
18
19

class DetectorYOLOV5
{
liucong's avatar
liucong committed
20
    public:
Your Name's avatar
Your Name committed
21
    DetectorYOLOV5();
liucong's avatar
liucong committed
22

Your Name's avatar
Your Name committed
23
24
    ~DetectorYOLOV5();

liucong's avatar
liucong committed
25
26
    ErrorCode Initialize(InitializationParameterOfDetector initializationParameterOfDetector,
                         bool dynamic);
Your Name's avatar
Your Name committed
27

liucong's avatar
liucong committed
28
29
30
31
    ErrorCode Detect(const cv::Mat& srcImage,
                     std::vector<std::size_t>& relInputShape,
                     std::vector<ResultOfDetection>& resultsOfDetection,
                     bool dynamic);
Your Name's avatar
Your Name committed
32

liucong's avatar
liucong committed
33
    private:
Your Name's avatar
Your Name committed
34
35
36
37
    cv::FileStorage configurationFile;

    migraphx::program net;
    cv::Size inputSize;
liucong's avatar
liucong committed
38
    std::string inputName;
shizhm's avatar
shizhm committed
39
    std::string modelPath;
Your Name's avatar
Your Name committed
40
    migraphx::shape inputShape;
liucong's avatar
liucong committed
41

Your Name's avatar
Your Name committed
42
    bool useFP16;
liucong's avatar
liucong committed
43
    std::vector<std::string> classNames;
Your Name's avatar
Your Name committed
44
45
46
47

    YOLOV5Parameter yolov5Parameter;
};

liucong's avatar
liucong committed
48
} // namespace migraphxSamples
Your Name's avatar
Your Name committed
49
50

#endif