OpenCV与QT联合开发示例
1、OpenCV及QT开发环境搭建
windows下安装QT并与visual studio 2017搭建开发环境
2、工程创建
1、导入Qt项目
选择:QT VS Tools->Open Qt Project File(.pro)…

2、新建Qt项目
1、选择:文件->新建->项目->测试->Qt GUI Application,输入工程名,下一步…进行新建。

2、“next”下一步

3、选择依赖的模块:最基础的QtCore、QtGui、QtWidgets还有一些音/视频、网络、数据库、XML、OpenGl相关的模块,需要使用的直接勾选即可。

4、finish(具体设置以后有机会在写)

3、OpenCV工程创建
1、 选择test.ui -> 打开方式 -> Qt Designer -> 确定

2、 拉一个OPenGL控件到窗体上

3、 改控件名字为mat->在对象查看器中选中控件——>右键选择提升为...

4、 提升的类名称:MatView -> 点击添加 ->提升 -> ctrl + F 保存界面 ,如下图

5、 Header Files右键 -> 类导向 -> 添加类 -> 类命:MatView -> 完成 -> 确认,如下图

6、点击添加类

7、点击应用并确定

8、 MatView.h代码
#pragma once
//导入相应的库
#include <QOpenGLWidget>
//继承QOpenGLWidget
class MatView :public QOpenGLWidget
{
Q_OBJECT
public:
//构造函数
MatView(QWidget *p);
~MatView();
//重载一个函数
void paintEvent(QPaintEvent *e);
};

9、 MatView.cpp代码
#include "MatView.h"
#include<opencv2/core.hpp>
#include <opencv2/imgproc.hpp>
#include <opencv2/imgcodecs.hpp>
#include <QImage>
#include <QPainter>
using namespace cv;
//重载一个函数,只要窗口发生变化他都会调用,这个函数不能处理业务逻辑,只做处理图像
void MatView::paintEvent(QPaintEvent *e) {
Mat src = imread("D://1.jpg");
QImage img(src.data, src.cols, src.rows, QImage::Format_RGB888);
QPainter painter;
painter.begin(this);
painter.drawImage(QPoint(0, 0), img); }
//构造函数,调用父类的,因为父类还有处理在里面,所以要调用它
MatView::MatView(QWidget *p) :QOpenGLWidget(p)
{
}
MatView::~MatView()
{
}

10、 main.cpp代码不用改动

11、 导入OpenCV库,参照windows基于vs2017的opencv安装
12、 运行代码
代码不重要,重要是如何配置,直接运行代码,可能因为系统+环境不同出错
13、 效果图

参考资料:
11.VS2015+OpenCV3.2+QT软件/插件(QT篇1) --- OpenCV从零开始到图像(人脸 + 物体)识别系列
OpenCV实例精解
OpenCV与QT联合开发示例的更多相关文章
- ubuntu 安装 OpenCv 及其Qt的开发环境配置
ubuntu安装opencv (1)安装编译opencv的环境 sudo apt-get -y install build-essential cmake pkg-config (2)安装Image ...
- OpenCV与QT联合编译 分类: Eye_Detection ZedBoard OpenCV shell ubuntu 2014-11-08 18:54 143人阅读 评论(0) 收藏
问题1:首先参考rainysky的博客,发现qmake时发生找不到目录,文件的错误,又找不到 qmake.conf 文件的写法.所以开始按照网上的程序修改 XXX.pro 文件. 问题2:使用QT C ...
- !! 2.对十份论文和报告中的关于OpenCV和Android NDK开发的总结
http://hujiaweibujidao.github.io/blog/2013/11/18/android-ndk-and-opencv-development-3/ Android Ndk a ...
- 下载安装和OpenCV匹配的Android开发环境
ok blog Android与OpenCV——重新下载安装和OpenCV匹配的Android开发环境 !!OpenCV4Android开发之旅(一)----OpenCV2.4简介及 app通过Jav ...
- Android与OpenCV——重新下载安装和OpenCV匹配的Android开发环境
Android与OpenCV——重新下载安装和OpenCV匹配的Android开发环境 !!OpenCV4Android开发之旅(一)----OpenCV2.4简介及 app通过Java接口调用Ope ...
- pyqt开发教程-搭建环境和开发示例
搭建环境和开发示例 * 安装 安装包 要对应python的版本 32位安装包(我PC上) http://jaist.dl.sourceforge.net/project/pyqt/PyQt4/PyQt ...
- Qt 5入门指南之Qt Quick编程示例
编程示例 使用Qt创建应用程序是十分简单的.考虑到你的使用习惯,我们编写了两套教程来实现两个相似的应用程序,但是使用了 不同的方法.在开始之前,请确保你已经下载了QtSDK的商业版本或者开源版本,并且 ...
- Halcon11与VS2010联合开发
刚开始学习Halcon,需要使用Halcon与C++联合开发软件,查了网上的资料都是Halcon10的,我用的是Halcon11和VS2010的开发环境,实践了一下发现有一些问题,于是把自己的配置的过 ...
- Github团队开发示例(二)
Github团队开发示例(二) 作者:Grey 原文地址:http://www.cnblogs.com/greyzeng/p/6063765.html 接之前讲的Github团队开发示例(一),本文主 ...
随机推荐
- scrapy-实现下一页请求, scrapy.Request
# -*- coding: utf-8 -*- import scrapy class HrSpider(scrapy.Spider): name = 'hr' allowed_domains = [ ...
- python学习笔记_week27
search import time import random def cal_time(func): def wrapper(*args, **kwargs): t1 = time.time() ...
- Django Forms 表单
环境 python 3.7 服务端 views.py from django import forms # 引入 froms 模块 from django.forms import widgets ...
- leetcode96
class Solution { public: int numTrees(int n) { vector<,); f[]=; f[]=; ;i<=n;i++){ ;j<=i;j++ ...
- K8s部署使用CFSSL创建证书
证书的编码格式 PEM(Privacy Enhanced Mail),通常用于数字证书认证机构(Certificate Authorities,CA),扩展名为.pem, .crt, .cer, 和 ...
- 一个ipv4到ipv6的移植问题
之前在使用ipv4的时候,有一个模块是使用raw socket来发包,它使用的一个option是:IP_HDRINCL. 如果设置了IP_HDRINCL选项,则raw会绕过source validat ...
- tensorflow-serving-gpu 本地编译并使用
因为要部署,模型比较大,所以通常官网的pip install 和bazel 教程编译的都是cpu版本的代码, 所以为了感受下gpu就尝试自己编译了,首先,下载源码: git clone --recur ...
- 记账本,C,Github,结果
- TCP/UDP 常用端口列表
计算机之间依照互联网传输层TCP/IP协议不同的协议通信,都有不同的对应端口.所以,利用短信(datagram)的UDP,所采用的端口号码不一定和采用TCP的端口号码一样.以下为两种通信协议的端口列表 ...
- 保存一份自己常用的packjson
这里是一份专门针对react的插件配置, 有: es5的转换器,有ie的promise垫片,有蚂蚁金服的anth,还有用于消息通信的pubsub订阅发布系统,虽然现在不用了.... 用于发请求的axi ...