VS2015+QT5.9.1+OpenCV4.5.2环境搭建

上篇文章详细描述了VS2015+OpenCV4.5.2环境搭建,不在描述,本文重点描述QT+OpenCV应用。

1.QT5.9.1安装

1.qt5.9.1安装默认安装,切记选择支持msvc2015_64.

2.qt-vs-tools-msvc2015-2.1.1.vsix工具安装。可从网上下载。

3.qt配置:选择64支持包。

        Qt VS Tools---->Qt Options---> Qt Versions 添加5.9.1 (64位)

 2.        创建Qt项目:

1.在VS中创建QT GUI项目如:

2.在属性中配置64,添加openCV 目录、库目录、调试库。可参考上篇文档中配置。

3.在Qt Designer中进行界面绘制:

4.设置信号槽:

Openfig_clicked() 

 Porgress_clicked()

 关联信号:

5. 在.h中添加如下:

#include <QtWidgets/QMainWindow>
#include "ui_OpenCVQtGui.h"
#include <QFileDialog>
#include <QLabel>
#include <opencv2/core/core.hpp>  
#include <opencv2/highgui/highgui.hpp>  
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/imgproc/types_c.h>

class OpenCVQtGui : public QMainWindow
{
	Q_OBJECT

public:
	OpenCVQtGui(QWidget *parent = Q_NULLPTR);

	void salt(cv::Mat &image, int n);

public slots:
	void OpenFig_clicked();
	void Progress_clicked();
	void Salt_progress_clicked();

private:
	Ui::OpenCVQtGuiClass ui;
	cv::Mat image;
};

在.CPP中添加:

#include "OpenCVQtGui.h"

OpenCVQtGui::OpenCVQtGui(QWidget *parent)
	: QMainWindow(parent)
{
	ui.setupUi(this);
}



void OpenCVQtGui::OpenFig_clicked()
{
	QString fileName = QFileDialog::getOpenFileName(this, tr("Open Image"),
		".", tr("Image Files(*.png *.jpg *.jeg *.bmp)"));
	
	if (fileName.isEmpty())
	{

	}
	else
	{
		image = cv::imread(fileName.toStdString());

		// 	cv::namedWindow("Original Image");
		// 
		// 	cv::imshow("Original Image", image);

		cvtColor(image, image, CV_BGR2RGB);

		QImage img = QImage((const unsigned char*)(image.data), image.cols, image.rows, QImage::Format_RGB888);


		ui.label->setPixmap(QPixmap::fromImage(img));
		ui.label->resize(QSize(img.width(), img.height()));
	}
	
	

}


void OpenCVQtGui::Progress_clicked()
{
	flip(image, image, 2);//反转函数 0 上下反转;整数,水平发转;负数,水平垂直均反转
	

	QImage img1 = QImage((const unsigned char*)(image.data), image.cols, image.rows, QImage::Format_RGB888);
	
	ui.label_2->setPixmap(QPixmap::fromImage(img1));
	ui.label_2->resize(QSize(img1.width(), img1.height()));
}

6.编译---运行:

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值