【无标题】用Qt+OpenCV做一个图像处理软件(灰度化)

初入坑,有问题请指正。

首先,点击菜单栏插入选项,从文件目录中选取一张图片 。

附代码

void MainWindow::on_charu_triggered()
{
    QString filename=QFileDialog::getOpenFileName(this,tr("Open Image"),QDir::homePath(),tr("(*.jpg)\n(*.png)\n(*.bmp)"));
    ui->label->setPixmap(QPixmap(filename));
}

记得头文件#include <QString>,<QFileDialog>。(我没按格式写噢)

然后在灰度化按钮的槽函数里写代码,记得OpenCV的头文件。

MatConvertQImage mci;
    cv::Mat imat = mci.QImage2cvMat(img);
    cv::Mat gray;
    cv::cvtColor(imat, gray, cv::COLOR_BGR2GRAY);
    QImage image = mci.Mat2QImage(gray);
    ui->label->clear();
    ui->label->setPixmap(QPixmap::fromImage(image));

cv的Mat和Qt的QImage互相转化的函数参考这两位大佬。

把cv::Mat转化为QImage_liji_digital的博客-CSDN博客_mat转qimage

QImage与Mat格式相互转换_修行进行时的博客-CSDN博客_qimage转mat

效果如下:

 只是简单的Demo,各种bug肯定很多,比如不插入图片直接按灰度化按钮之类的,再就是图片大小适应label大小的各种美化,都还没做,以后努力。ε≡٩(๑>₃<)۶ 

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值