Qt编译OpenCV

1.CMake下载安装

官网地址:CMake - Upgrade Your Software Build System

(1)下载后双击安装

(2)进入安装界面,点击【Next】

(3)同意协议,点击【Next】

(4)将Cmake添加进用户变量,黄色框是创建桌面图标,可根据自己需要选择,点击【Next】

(5)选择路径,点击【Next】

(6)开始安装,点击【Install】

(7)安装完毕,点击【Finish】

(8)安装完毕,进行测试。

打开cmd黑窗,输入命令查看版本

cmake /V

2.OpenCV下载

OpenCV官网:Releases - OpenCV

opencv_contrib下载地址:GitCode - 开发者的代码家园

3.Qt编译OpenCV

(1)Qt配置CMake

(2)使用Qt打开opencv/sources/CMakeLists.txt

(3)开始配置Qt工程

打开这两个,然后提交:

编译:这个过程可能需要两个小时等待

如编译过程中出现错误:

Building RC object modules/core/CMakeFiles/opencv_core.dir/vs_version.rc.obj 
gcc: error: long: No such file or directory 

解决方法是根据build.make中的错误行,自己修改编译命令,手动生成vs_version.rc.obj,并重新执行mingw32-make命令编译。在终端执行命令:

windres.exe D:\opencv\opencv\build-sources-Desktop_Qt_5_9_0_MinGW_32bit-Default\modules\core\vs_version.rc -O coff D:\opencv\opencv\build-sources-Desktop_Qt_5_9_0_MinGW_32bit-Default\modules\core\CMakeFiles\opencv_core.dir\vs_version.rc.obj

(4)安装

勾选install,再构建

(5)使用

  • 库文件:D:\opencv\opencv\build-sources-Desktop_Qt_5_9_0_MinGW_32bit-Default\install\x64\mingw\lib\libopencv_*.a
  • 头文件:D:\opencv\opencv\build-sources-Desktop_Qt_5_9_0_MinGW_32bit-Default\install\include
  • DLL文件:D:\opencv\opencv\build-sources-Desktop_Qt_5_9_0_MinGW_32bit-Default\bin

Qt工程在使用OpenCV时需要将dll文件拷贝到程序运行目录下,然后需要在pro文件中加入:

INCLUDEPATH += $$PWD/OpencvLib/include
LIBS += $$PWD/OpencvLib/lib/libopencv_*.a

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/321106.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

鸿蒙Harmony-线性布局(Row/Column)详解

人生的下半场,做个简单的人,少与人纠缠,多看大自然,在路上见世界,在途中寻自己。往后余生唯愿开心健康,至于其他,随缘就好! 目录 一,定义 二,基本概念 三&am…

c++多久会被Python或者新语言取代?

c多久会被Python或者新语言取代? 在开始前我有一些资料,是我根据网友给的问题精心整理了一份「c的资料从专业入门到高级教程」, 点个关注在评论区回复“888”之后私信回复“888”,全部无偿共享给大家!!&am…

使用android studio编译app到自己的手机上运行,却读取不了手机里面的图片

问题描述: 使用android studio编译app到自己的手机上运行,却读取不了手机里面的图片 问题分析: 这个是由于这个app没有申请手机端的 媒体文件访问权限,所以读取不了 解决:(我的是Android 10,新版…

深度解析Pytest插件pytest-html

在软件开发中,测试报告是开发者获取测试结果和问题定位的关键工具之一。然而,标准的控制台输出有时难以满足我们对测试报告的需求。幸运的是,Pytest插件 pytest-html 提供了一种简单而强大的方式,可以生成漂亮、可视化的HTML格式测…

Arm LDM和STM的寻址方式

A32指令集中包含多数据传输指令LDM和STM,也就是单条指令可以传输多个寄存器的值与内存交互,这对于数据块传输以及寄存器的压入栈很有帮助。LDM和STM指令可分别用于实现堆栈的pop和push操作。对于堆栈操作,基寄存器通常是堆栈指针(SP)。 LDM和…

录第第五十八天——每日温度,下一个更大元素|

单调栈 栈里的元素保持单调递增或者递减,栈内元素是元素下标。单调栈的本质是空间换时间,因为在遍历的过程中需要用一个栈来记录右边第一个比当前元素高的元素,优点是整个数组只需要遍历一次求一个元素右边第一个更大元素,单调栈…

Unity游戏图形学 Shader结构

shader结构 shader语言 openGL:SLG跨平台 >GLSL:openGL shaderlauguge DX:微软开发,性能很好,但是不能跨平台 >HLSL:high level shader language CG:微软和Nvidia公司联合开发&#xff…

【c++】利用嵌套map创建多层树结构

通常树的深度都大于1,即树有多层,而树结构又可以用c的map容器来实现,所以,本文给出了一种多层树结构的实现思路,同时也给出了相应的c代码。 整体思路概述 首先定义一个节点类Node类,要包括children&#x…

WIndows系统重装、备份与恢复实操问题笔记

一 windows重装 1.1 基本步骤 下载大白菜根据官网使用教程制作启动u盘从MSDN或者微软官网下载Windows镜像根据查询的快捷键进入BIOS系统,设置U盘为第一启动 重装 1.2 Windows 11 激活 微软其实在2023年9月20日的公告中宣布停掉免费升级,数字激活工具…

C++中使用vector保存新建对象中自指指针的问题

问题 在某些场景中(例如并查集),我们需要将新建对象中的指针指向对象自己。例如, struct factor {int data;factor* next;factor(int i) : data(i), next(this){} }; 这样的结构体当然没有问题,如果我们想以类似链表…

DolphinScheduler伪集群部署

一.伪集群部署 伪集群部署目的是在单台机器部署 DolphinScheduler 服务,该模式下master、worker、api server、logger server都在同一台机器上。单机版本稳定性较差,官方建议20个以下流程使用。 二.前置需求 1、2.0.…

杨中科 EFCORE 第四部分 命令详解56-61

Migrations 深入研究Migrations 1、使用迁移脚本,可以对当前连接的数据库执行编号更高的迁移,这个操作叫做“向上迁移” (Up),也可以执行把数据库回退到旧的迁移,这个操作叫“向下迁移(Down) 2、除非有特殊需要&…

STM32F103_ESP8266基于RTOS移植MQTT

STM32F103_ESP8266基于RTOS移植MQTT 目录 STM32F103_ESP8266基于RTOS移植MQTT一、准备工作二、移植mqttclient代码三、编译包含mqttclient的工程四、编写ESP8266驱动程序1、ESP8266 AT命令代码框架2、UART硬件和抽象层相关代码3、AT命令发送和解析代码4、plat_sock网络层相关代…

Python+甘特图及标签设置

图示 甘特图代码 import matplotlib.pyplot as plt import numpy as npclass ProjectEmement:def __init__(self, name_, starttime_: float, endtime_: float, fact_endtime_: float, grade_, rootlist_: list, keylist_: list, isover_=-1):self.name = name_self.starttime…

使用VS2015在win7 x64上编译调试FFmpeg(附源码和虚拟机下载)

1. 前言 在文章《使用VS2017在win10 x64上编译调试FFmpeg(附源码和虚拟机下载)》中,我们在win10VS2017的环境下基于开源项目ShiftMediaProject完成了FFmpeg源码调试环境的配置。在win7VS2015的环境下,ShiftMediaProject配置过程和…

苏州倍丰智能新型雾化粉末技术量产成功!金属3D打印全产业链更进一步

苏州倍丰智能深耕金属3D打印技术领域,以金属3D打印全产业链为目标,围绕金属3D打印设备,涵盖包括金属粉末前后处理设备、金属粉末原材料制备、先进工艺研发等多个领域,完成了一整条自上而下的金属3D打印全产业链。 近日&#xff0c…

计算日期到天数转换

根据输入的日期,计算是这一年的第几天。 保证年份为4位数且日期合法。 本题对三个输入数字依次使用,由年份可得到闰年或平年,故分为两种计算。 在月份中,由于每月天数不好找规律,故分为1—2月,3—7月&am…

苹果手机IOS软件应用IPA砸壳包提取完整教程

我们有很多小伙伴可能想要获取到苹果手机软件的安装包但又不知该如何获取,本文就教你如何获取到IOS软件的IPA砸壳包 首先我们需要准备一台越狱的苹果IOS设备,如果不知如何越狱的可以参考这篇苹果手机越狱教程:https://www.hereitis.cn/artic…

使用setdefault撰写文本索引脚本(出自Fluent Python案例)

背景介绍 由于我们主要介绍撰写脚本的方法,所以用一个简单的文本例子进行分析 a[(19,18),(20,53)] Although[(11,1),(16,1),(18,1)] ambiguity[(14,16)] 以上内容可以保存在一个txt文件中,任务是统计文件中每一个词(包括字母,数…

Linux------进程的初步了解

目录 一、什么是进程 二、进程的标识符pid 三、getpid 得到进程的PID 四、kill 终止进程 五、父进程与子进程 六、目录中的进程 一、什么是进程 在windows中,我们查看进程很简单,打开任务管理器,就可以看到在运行的进程。这里我们还可以…