QT+opencv4.5.4+yolov5+目标检测

之前做过yolov3、yolov4+opencv进行检测,yolov5出道了v6版本的时候,开始支持dnn模块,所以下载试试,

环境:opencv4.5.4     CUDA:10.2      QT:5.9

yolov5大家可以从git上clone,这里使用的是yolov5s.pt模型。给他转换为onnx

    cap>>img;
    vector<Scalar> color;
    srand(time(0));
    for (int i = 0; i < 80; i++) {
        int b = rand() % 256;
        int g = rand() % 256;
        int r = rand() % 256;
        color.push_back(Scalar(0, 0, 255));
    }
    QImage Qimg1=mat2QImage(img);
    ui->label->setScaledContents(true);
    ui->label->setPixmap(QPixmap::fromImage(Qimg1));
    vector<Output> result;
    if (test.Detect(img, net, result)) {
      img= test.drawPred(img, result, color);
      QImage Qimg2=mat2QImage(img);
       ui->label_2->setScaledContents(true);
      ui->label_2->setPixmap(QPixmap::fromImage(Qimg2));
      waitKey(10);
    }
    else {
       cout << "Detect Failed!" << endl;
    }

结果:

 

版权声明:本文为CSDN博主「Mr曲末寒」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/zhangdaoliang1/article/details/121289705

Mr曲末寒

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

目标检测之非极大值抑制(NMS)

1.NMS(非极大值抑制)介绍 在目标检测算法中,对于一个真实物体的往往会有多个候选框输出,而我们只需一个最好的检测框,多余的候选框会影响检测的精度,因此需要利用NMS(非极大值抑制)来