openCV编译安装-MSCV-Windows10-Qt
openCV编译安装-MSCV-Windows10-Qt
1、准备工作
CMake:下载最新版本即可
openCV:下载任意版本,可以下载源码或者官方编译好的VS版(其中也带有源码),我下载的是opencv-4.5.2-vc14_vc15.exe
Visual Studio:这里使用的是2017
Qt:下载5.14
2、解压
opencv-4.5.2-vc14_vc15.exe运行后会自解压到当前路径下的opencv文件夹中,如下图所示,其中build文件夹为官方已经编译好的,sources为源码;

3、Cmake编译
创建一个build文件夹,打开安装好的CMake软件,讲sources文件夹中的CMakeLists.txt拖到Cmake中,然后点击Browse Build讲路径设置为刚才创建的build。

点击Configure,选择2017,x64,这里注意如果安装了多个版本的vs需要选择Specify native compilers,如下图配置好后点击Finish,然后等待几分钟。

可以选择勾选BUILD_opencv_world,这样编译的所有的库将会生成一个opencv_world420.lib和一个opencv_ts420.lib,方便使用时打包,不勾选将会生成多个库文件。

再点击一次Configure,全部变白后就可以点击Grenerate生成sln

然后点击open Project打开生成的openCV.sln工程

4、Visual Studio编译
选择Release、x64

右键选择ALL_BUILD -> 点击生成或重新生成,就开始编译了,时间会比较长;
编译完成后右键选择INSTALL -> 点击生成或重新生成,将会在build文件夹下生成一个install文件夹,这个文件夹下就是我们编译好的文件。


4、添加环境变量
将编译好的install文件夹复制到自己喜欢的路径下,命名为opencv(名称随意)
打开系统属性 -> 环境变量

添加编译的库文件的路径,然后重启电脑

5、使用
创建一个qt工程,编译器选择与编译opencv相同的编译器,这里使用的是MSVC2017
右键工程,选择添加库

选择opencv_world***.lib

然后会生成如下图所示代码,注意如果没有编译debug版本(就是没有opencv_world***d.lib),需要将下列第二行代码删掉

将/x64/vc15改为include

添加头文件
#include <opencv2/opencv.hpp>
添加命名空间
using namespace cv;
输入如下代码就可以显示图片了
#include "widget.h"
#include "ui_widget.h"
Widget::Widget(QWidget *parent)
: QWidget(parent)
, ui(new Ui::Widget)
{
ui->setupUi(this);
Mat image = imread("E:/tp/img/1.png");
imshow("image", image);
}
Widget::~Widget()
{
delete ui;
}
效果如下所示

openCV编译安装-MSCV-Windows10-Qt的更多相关文章
- ubuntu12.04下编译安装x86平台qt库qt-everywhere-opensource-src-4.8.5
本文记录PC(x86)下安装Linux/X11版Qt 开发环境.下载页面:http://qt-project.org/downloads ARM嵌入式版本qt库的编译安装详见<unbunt12. ...
- mac下使用opencv编译安装新模块contrib
opencv-4.0.1 opencv_contrib-4.0.1 提供ippicv下载链接: https://pan.baidu.com/s/1OIJRUqPqAtpMetku8qX36w cont ...
- 【视频开发】【计算机视觉】doppia编译之三:编译安装opencv库
这里我介绍2种方法 (1)利用别人写好的脚本编译,相对来说省力一点 上Github下载别人写好的脚本文件,网址 https://github.com/jayrambhia/Install-OpenC ...
- Linux 下编译、安装、配置 QT
转自Linux 下编译.安装.配置 QT 注意:编译安装耗时费力,且很容易出错,要不断调整编译参数,不推荐使用,否则这将会是一个纠结痛苦的过程. 打算做嵌入式图像处理,计划方案嵌入式Linux+Ope ...
- OpenCV编译以及QT Creator配置
OpenCV编译以及QT Creator配置 在进行编译前,需下载以下工具和源码: CMake ---- 用于编译: 下载地址; https://cmake.org/ 安装在D:\Program Fi ...
- OpenCV使用CMake和MinGW的编译安装
官方教程:https://wiki.qt.io/How_to_setup_Qt_and_openCV_on_Windows 软件环境: Qt:5.11 CMake-3.14.4 OpenCV-4.1. ...
- qt+opencv编译环境的配置
第一步:安装与配置Qt 从https://account.qt.io/downloads下载Qt,并注册账户.开始安装.首先下载qt-opensource-windows-x86-mingw482_o ...
- Qt编译安装qwt错误moc/xxx Error:126
最近搞设计,需要在上位机上绘制曲线,在网上找了找,发现python的matplotlib和Qt的qwt都不错,本着难度最小原则,选择了Qt下面的qwt,安装过程中遇到了编译错误:moc/xxx Err ...
- Ubuntu 编译安装 OpenCV 3.1
目标系统:Ubuntu 16.04-64bit OpenCV 版本:opencv-3.1.0 安装步骤 安装 cmake.sudo apt-get isntall cmake cmake-qt-gui ...
- linux源码编译安装OpenCV
为了尽可能保证OpenCV的特性,使用OpenCV源码编译安装在linux上.先从安装其依赖项开始,以ubuntu 14.04.X为例讲解在Linux上源码编译安装OpenCV,其他linux版本可以 ...
随机推荐
- sql 语句系列(行与列处理)[八百章之第一章]
排序时对null进行处理 比如说: select * from EMP order by COMM 我需要对红框部分进行desc处理,也就是从大到小排列. 解析: 重点是如何让null独立出去. se ...
- vscode 编辑python 如何格式化
正文 今天同事说我的代码的格式不对,其实就是几个空格忘了空4格了,但是代码可运行. 那么如何帮我们检测呢? pip install yapf 然后打开setting: 输入:ython.formatt ...
- spring boot properties 编码问题[四]
情景 application.properties 中: server.port=8081 person.last-name=张三 person.age=18 person.birth=2017/12 ...
- mysql 重新整理——索引简介[七]
前言 百度百科索引: 在关系数据库中,索引是一种单独的.物理的对数据库表中一列或多列的值进行排序的一种存储结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单. ...
- 【Oracle笔记】递归以及索引的一丢丢使用
[笔记]递归以及索引的一丢丢使用 递归写法,树查询 connect by nocycle prior START WITH XXX CONNECT BY PRIOR XXX ORDER BY XXX ...
- 【hibernate】使用HQL对页面进行时间校验操作(预约)
[hibernate]使用HQL对页面进行时间校验操作(预约) 预约系统中的时间校验 正好接了一个预约的需求,还需要用java 7和hibernate 1.时间冲突,时间段不能重复,在保存前对数据库进 ...
- 怀里橘猫柴犬,掌上代码江湖——对话阿里云 MVP郭旭东
简介: 跟郭旭东聊过之后,我对程序员的敬佩又多一分.这个92年的开发者,难能可贵地兼备朝气蓬勃的技术能量与长远深刻的行业洞见.独自承担DevOps平台从0到1的所有工作,我打趣说超级开发者不过如此,他 ...
- 阿里云PolarDB开源数据库社区与 Tapdata 联合共建开放数据技术生态
简介:近日,阿里云PolarDB开源数据库社区宣布将与 Tapdata 联合共建开放数据技术生态. 近日,阿里云PolarDB开源数据库社区宣布将与 Tapdata 联合共建开放数据技术生态.在此之 ...
- 阿里云田涛涛:高效智能的云,CloudOps让运维更简单
简介:CloudOps:以应用为中心的自动化运维新趋势 12月21日,在阿里云弹性计算年度峰会上,阿里云弹性计算体验与控制系统负责人田涛涛发表了主题为<高效智能的云,CloudOps让运维更简 ...
- 干掉讨厌的 CPU 限流,让容器跑得更快
简介: 让人讨厌的 CPU 限流影响容器运行,有时人们不得不牺牲容器部署密度来避免 CPU 限流出现.本文介绍的 CPU Burst 技术可以帮助您既能保证容器运行服务质量,又不降低容器部署密度.文 ...