Qwidget+opencv显示图像
步骤
1. 设置opencv库路径
在.pro文件中添加
INCLUDEPATH += D:/opencv/OpencvMingw/opencv310/include
LIBS += D:/opencv/OpencvMingw/opencv310/x86/mingw/lib/libopencv_*
2. 界面显示图像
首先在界面上添加一个QLabel,然后在代码中调用Opencv并显示图像
Mat im0 = imread("d://dlrb.png");
QImage image = Mat2QImage(im0);
ui->label->move(0,0);
ui->label->resize(im0.cols, im0.rows);
ui->label->setPixmap(QPixmap::fromImage(image));
其中Mat2QImage定义如下
static QImage Mat2QImage(Mat& image)
{
QImage img;
if (image.channels()==3) {
cvtColor(image, image, CV_BGR2RGB);
img = QImage((const unsigned char *)(image.data), image.cols, image.rows,
image.cols*image.channels(), QImage::Format_RGB888);
} else if (image.channels()==1) {
img = QImage((const unsigned char *)(image.data), image.cols, image.rows,
image.cols*image.channels(), QImage::Format_ARGB32);
} else {
img = QImage((const unsigned char *)(image.data), image.cols, image.rows,
image.cols*image.channels(), QImage::Format_RGB888);
}
return img;
}
作者: mr-xbt
本文来自博客园: https://www.cnblogs.com/xbotao/p/6649920.html
如有问题,请留言或者Email我: upc_xbt 163.com