将图像传递给QPixMap而不是QT中的路径

将图像传递给QPixMap而不是QT中的路径,qt,opencv,qpixmap,Qt,Opencv,Qpixmap,在QT(C++)中,是否有一种方法可以将图像作为名称而不是路径传递给Qpixmap,例如,我有以下代码,其中处理后的图像应该使用Qpixmap标签显示,但当我尝试保存它,然后将其传递给Qpixmap以显示,,,但这不是一种有效的方法,所以有人能帮我吗?我是Qt新手,没有经验 void MainWindow::on_pushButton_3_clicked() { cv::Mat hsv_img, seg_img,infected_area, hsv_infected,seg_in

在QT(C++)中,是否有一种方法可以将图像作为名称而不是路径传递给Qpixmap,例如,我有以下代码,其中处理后的图像应该使用Qpixmap标签显示,但当我尝试保存它,然后将其传递给Qpixmap以显示,,,但这不是一种有效的方法,所以有人能帮我吗?我是Qt新手,没有经验

    void MainWindow::on_pushButton_3_clicked()
{
    cv::Mat hsv_img, seg_img,infected_area, hsv_infected,seg_input,hsv_seg;
    Mat filter_img,hsv;

    cv::Mat input_image = imread(this->file_name.toAscii().data());
    medianBlur(input_image,filter_img,7);
    cvtColor(filter_img, hsv, CV_BGR2HSV);
    hsvSeg(filter_img,hsv, hsv_img, seg_img,14.0,0.0,117.0,255.0,133.0,179.0);//call     hsv segmentation function to segment leaf
    cvtColor(seg_img, hsv_seg, CV_BGR2HSV);
    hsvSeg(seg_img,hsv_seg, hsv_infected, infected_area,0.09*255,0.01*255,0.1*255,0.14*255,1.0*255,1.0*255);//call hsv segmentation to segment infected areas
    imwrite( "C:/Image.jpg", filter_img ); 

    this->ui->ImageView_2->setPixmap(QPixmap("C:/Image.jpg"));// here the problem 
试试这个:

cvtColor(mat, mat, CV_BGR2RGB);
QImage qimg((uchar*)mat.data, mat.cols, mat.rows, mat.step, QImage::Format_RGB888);
ui->label->setPixmap(QPixmap::fromImage(qimg));

你已经试过了吗?你能给我举一个如何使用它的例子吗,就像我说的,我是新来QT的