cv::Mat格式要留心,通常需要转化才能用
反思:对于要完成的某一事件的一段代码,先单独运行,搞清楚那段代码能得到什么结果,再去整合,这样更能够抓住核心问题少出bug
参考:https://blog.youkuaiyun.com/qq_27901091/article/details/75171378
//加载两幅图片
void MainWindow::on_download_clicked()
{
//在lable中显示图片
cv::Mat src_img1 = imread("0000_color.jpg");
cvtColor( src_img1, src_img1, CV_BGR2RGB );//CV_64F为灰度图
//根据已有数据构造一个image对象(先转化为img类型,再通过img模式赋予lable)
QImage img_img1 = QImage( (const unsigned char*)(src_img1.data), src_img1.cols, src_img1.rows, QImage::Format_RGB888 );
ui->lable_img1->setPixmap( QPixmap::fromImage(img_img1));
}
//注意每次加载图像前最好添加条件
if img_rgb == None:
raise Exception("could not load image !")