我是Qt的新手,我试图创build一个简单的GUI应用程序,一旦点击一个button就显示一个图像。 我可以读取QImage对象中的图像,但有没有简单的方法来调用一个QI函数作为input,并显示它?
//对不起我的英语不好。 请告诉我,我做错了什么? 我读了很多关于这个。 并写一些代码,但我有一个可怕的结果。 据我所知在Opencv CV_8UC3是相同的QImage :: Format_RGB888 ,除了BRG和RGB相应。 以这种格式读取cv :: Mat我可以这样做: cv::Mat mat1 = cv::imread("bugero.jpg",3); 所以,要将cv :: Mat转换为QImage,我可以这样做: QImage Mat2QImage(cv::Mat const& src) { cv::Mat temp(src.cols,src.rows,src.type()); cvtColor(src, temp,CV_BGR2RGB); QImage dest= QImage((uchar*) temp.data, temp.cols, temp.rows, temp.step, QImage::Format_RGB888); return dest; } 我做了temp mat,因为我想在QImage中有数据副本。 然后。 将其转换回来我必须这样做: cv::Mat QImage2Mat(QImage const& src) { QImage temp = src.copy(); cv::Mat res(temp.height(),temp.width(),CV_8UC3,(uchar*)temp.bits(),temp.bytesPerLine()); cvtColor(res, […]
我想知道如何将OpenCV C ++标准cv :: Mattypes转换为Qimage。 我一直在四处寻找,但没有运气。 我发现一些代码将IPlimage转换为Qimage,但这不是我想要的。 谢谢