OpenCV编译指南-Windows-CMake

server/2024/10/16 4:29:59/

前言:

        针对opencv的编译容易出现许许多多问题,博主已经将可能遇到的坑几乎都走了一遍,在此记录。一方面作为日后查阅指南,另一方面也给诸位提供便利。谢谢!

1、必要下载准备

CMake:Download CMake

visual studio:想必开发者计算机中都有这个软件

OpenCV下载:OpenCV · GitHub,下载包括某一版本的主体压缩包与contrib包,例:

另外一些软件需要特别说明的:

1)python,一个python的环境似乎对于编译opencv至关重要。博主曾在一台没有python环境的电脑中编译opencv,在cmake的开头就会报错:Error inconfiguration process,preject files may be invalid。在为本机安装了python环境后就没问题了。

2)Anaconda。在有anaconda的计算机上进行cmake时,config时很多依赖路径都从anaconda中找,很多时候带来麻烦与奇怪的问题。建议不要在有anaconda的计算机中编译,如果一定要,那请在config时注意各种依赖路径。

2、开始编译OpenCV

        我们以博主当前日期2024.8.15的最新版本4.10.0为例,visual studio版本为2022,CMake版本为3.30.2。

1)解压

        将opencv两个压缩包解压,并创建一个build文件夹用于存放构建文件,博主本处建立了一个opencv-4.10.0-build的文件夹,各位可自行选择文件位置与文件名称。

解压后:主体文件夹如下图:


http://www.ppmy.cn/server/102456.html

相关文章

机器人等方向学习和研究的目标

核心目标类似: 学习一个知识点用时越来越短,研究一个系统效率越来越高。 目标 没有目标是常态,十分普遍。 但其实,目标也可以很宽泛。 感谢朋友们一直以来的鼓励帮助,倍感荣幸,非常感谢。-CSDN blink-…

Java实现K个排序链表的高效合并:逐一合并、分治法与优先队列详解

Java实现K个排序链表的高效合并:逐一合并、分治法与优先队列详解 在算法和数据结构的学习中,链表是一个非常基础但又极具挑战的数据结构。尤其是当面对合并多个排序链表的问题时,如何在保证效率的前提下实现代码的简洁与高效,往往…

【网络编程】 基于UDP的网络聊天室

前言 将前面的数据结构,多线程,网络的内容加在一起的一个项目,比较综合,在代码部分采用了分文件编译并且写了比较详细的注释(个人觉得)。 ps:希望对大家有用 项目需求: 如果有用户登录&#xf…

机器学习/自主系统与亚当·斯密

人工智能中的机器学习和自主系统是当前科技领域的热门话题,它们与亚当斯密的经济学理论之间可能存在一些潜在的联系和启示。亚当斯密的经济学理论主要关注市场经济的运行和资源分配。他的核心观点是,通过市场机制的作用,个体追求自身利益的行…

python绘制蕨菜叶分形

一花一叶一世界,一草一木一浮生. 使用了四个不同的线性变换,根据概率选择其中一个变换并更新 x 和 y 坐标。然后将生成的绿色点绘制出来,形成一片蕨菜叶。 import numpy as np import matplotlib.pyplot as pltdef fern_fractal(num_points):# 初始化坐…

初始化列表 / 隐式转换 / 静态

目录 初始化列表隐式转换单参数的隐式类型转换多参数的隐式类型转换explicit关键字 static 初始化列表 大部分时候成员变量在对象实例化的时候调用构造函数就整体定义了,注意此时只有定义,不算初始化。而定义后的值的值是在构造函数里面给的。我们知道构…

王立铭脑科学50讲——05篇,脑到底是有什么组成?

王立铭脑科学50讲——05篇,脑到底是有什么组成? 我对课程感兴趣的点: 1、神经元学说 (1)神经细胞的信号传递有明确的方向,从树突到细胞体,再从细胞体到轴突 (2)细胞的…

初识Linux · 基本指令(1)

目录 前言: 基本指令 1.1 pwd 1.2 ls 1.3 mkdir cd clear 1.4 touch 1.5 ls部分补充 1.6 whoami 1.7 有关目录以及路径 前言: 今天是Linux系列的第一章节,对于Linux的主线学习大概会更新两个半月左右,中间穿插着算法…