"tests/vscode:/vscode.git/clone" did not exist on "67f3fcce99a753e92ab38b7b8d66e70b2518ce46"
main.cpp 1.62 KB
Newer Older
liucong's avatar
liucong committed
1
2
3
4
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <SimpleLog.h>
liucong's avatar
liucong committed
5
6
#include <Filesystem.h>
#include <Classifier.h>
liucong's avatar
liucong committed
7
8
9
10
11
12

int main()
{
    // 创建分类器
    migraphxSamples::Classifier classifier;
    migraphxSamples::InitializationParameterOfClassifier initParamOfClassifier;
liucong's avatar
liucong committed
13
    initParamOfClassifier.configFilePath=CONFIG_FILE;
liucong's avatar
liucong committed
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
    migraphxSamples::ErrorCode errorCode=classifier.Initialize(initParamOfClassifier);
    if(errorCode!=migraphxSamples::SUCCESS)
    {
        LOG_ERROR(stdout, "fail to initialize ResNet50!\n");
        exit(-1);
    }
    LOG_INFO(stdout, "succeed to initialize ResNet50\n");

    // 读取测试图片
    cv::Mat srcImage=cv::imread("../Resource/Images/ImageNet_01.jpg",1);

    // 设置batchsize
    int batchsize=1;
    std::vector<cv::Mat> srcImages;
    for(int i=0;i<batchsize;++i)
    {
        srcImages.push_back(srcImage);
    }

    // 推理
    std::vector<std::vector<migraphxSamples::ResultOfPrediction>> predictions;
    classifier.Classify(srcImages,predictions);

    // 获取推理结果
    LOG_INFO(stdout,"========== Classification Results ==========\n");
    for(int i=0;i<predictions.size();++i)
    {
        // 一个batch中第i幅图像的结果
liucong's avatar
liucong committed
42
        LOG_INFO(stdout,"========== %d result ==========\n",i);
liucong's avatar
liucong committed
43
44
45
46
        std::vector<migraphxSamples::ResultOfPrediction> resultOfPredictions=predictions[i];
        for(int j=0;j<resultOfPredictions.size();++j)
        {
            migraphxSamples::ResultOfPrediction prediction=resultOfPredictions[j];
liucong's avatar
liucong committed
47
            LOG_INFO(stdout,"label:%d,confidence:%f\n",prediction.label,prediction.confidence);
liucong's avatar
liucong committed
48
49
50
51
52
53
        }

    }

    return 0;
}