YOLOV7.h 897 Bytes
Newer Older
Your Name's avatar
Your Name committed
1
2
3
4
#ifndef __DETECTOR_YOLOV7_H__
#define __DETECTOR_YOLOV7_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
16

namespace migraphxSamples
{

typedef struct _YOLOV7Parameter
{
    int numberOfClasses;
    float confidenceThreshold;
    float nmsThreshold;
    float objectThreshold;

liucong's avatar
liucong committed
17
} YOLOV7Parameter;
Your Name's avatar
Your Name committed
18
19
20

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

Your Name's avatar
Your Name committed
24
25
26
27
    ~DetectorYOLOV7();

    ErrorCode Initialize(InitializationParameterOfDetector initializationParameterOfDetector);

liucong's avatar
liucong committed
28
    ErrorCode Detect(const cv::Mat& srcImage, std::vector<ResultOfDetection>& resultsOfDetection);
Your Name's avatar
Your Name committed
29

liucong's avatar
liucong committed
30
    private:
Your Name's avatar
Your Name committed
31
32
33
34
    cv::FileStorage configurationFile;

    migraphx::program net;
    cv::Size inputSize;
liucong's avatar
liucong committed
35
    std::string inputName;
Your Name's avatar
Your Name committed
36
    migraphx::shape inputShape;
liucong's avatar
liucong committed
37

Your Name's avatar
Your Name committed
38
    bool useFP16;
liucong's avatar
liucong committed
39
    std::vector<std::string> classNames;
Your Name's avatar
Your Name committed
40
41
42
43

    YOLOV7Parameter yolov7Parameter;
};

liucong's avatar
liucong committed
44
} // namespace migraphxSamples
Your Name's avatar
Your Name committed
45
46

#endif