• opencv学习之路(1):图像的载入和转换


    #include "dialog.h"
    #include "ui_dialog.h"
    #include "qfiledialog.h"
    #include "qdebug.h"
    Dialog::Dialog(QWidget *parent) :
        QDialog(parent),
        ui(new Ui::Dialog)
    {
        ui->setupUi(this);
    }
    
    Dialog::~Dialog()
    {
        delete ui;
    }
    
    void Dialog::on_pBtnLoadImage_clicked()
    {
        QString file = QFileDialog::getOpenFileName(this,"Open Image",".","Image Files(*.png *.jpg *.jpeg *.bmp);;All Files(*)");
        if(!file.isNull())
        {
        qDebug()<<file;
        image = cv::imread(file.toStdString());
        cv::imshow("Original",image);
        }
    }
    
    void Dialog::on_pBtnFlip_clicked()
    {
        static int flag=1;
        flag=flag>0?0:1;
        qDebug()<<"flag="<<flag;
        cv::flip(image,image,flag);
        cv::imshow("Output Image",image);
    }
    

      第二种界面:

    #include "mainwindow.h"
    #include "ui_mainwindow.h"
    #include "qfiledialog.h"
    #include "qdebug.h"
    MainWindow::MainWindow(QWidget *parent) :
        QMainWindow(parent),
        ui(new Ui::MainWindow)
    {
        ui->setupUi(this);
    }
    
    MainWindow::~MainWindow()
    {
        delete ui;
    }
    
    void MainWindow::on_pBtnLoadImage_clicked()
    {
        QString file = QFileDialog::getOpenFileName(this,"OPen Image",".","Image file(*.jpg *.png *.bmp);;All files(*)");
        if(!file.isNull())
        {
            image = cv::imread(file.toStdString());
            cv::cvtColor(image,image,CV_BGR2RGB);
            qDebug()<<"Image"<<image.depth();
            ShowImage();
        }
    }
    
    void MainWindow::on_pBtnFlip_clicked()
    {
        static int flag=1;
        cv::flip(image,image,flag);
        flag = flag>0 ? 0 : 1;
        ShowImage();
    }
    void MainWindow::ShowImage()
    {
        QImage img=QImage(image.data,image.cols,image.rows,QImage::Format_RGB888);
        ui->lbShowImage->setPixmap(QPixmap::fromImage(img));
        ui->lbShowImage->resize(img.size());
    }
    

      

  • 相关阅读:
    centos7 yum错误相关
    centos7 jenkins
    vim 常用命令
    Effective STL(第7条)
    【hihoCoder】1049.后序遍历
    C++ 单元测试 Cpputest
    【hihoCoder】1041. 国庆出游
    LeetCode(43. Multiply Strings)
    【LeetCode】16. 4Sum
    【LeetCode】1. Two Sum
  • 原文地址:https://www.cnblogs.com/Jason-AnHui/p/3459737.html
Copyright © 2020-2023  润新知