几种编译Opencv库的方法总结(亲测)

1、前言

其实官网已经有了各个版本在不同平台下的编译好之后的包,一般只需要下载下来即可使用。但是为什么要自己编译?
因为官网下载的安装包解压出来的库使用的编译器与自己的编译器版本不同,所以即使编译项目成功了,但运行时会导致一些莫名其妙的错误,这时候自己编译就显得很重要,话不多说,本人的环境:
VS2015 ,VS2017(实际也没有用),QT5.12,Cmake3.20.1,opencv4.1.1 在win10下
目标是编译成Mingw64 Qt下使用,也为了以后跨平台做准备,就不用编译成windows的版本了。

2、常用opencv编译方法

先下载安装工具
下载安装Cmake 选择mis文件:https://cmake.org/download/
https://cmake.org/download/
下载QT
http://download.qt.io/archive/qt/
下载opencv 选择 sources
https://opencv.org/releases/page/2/
在这里 Sources 是源码 ,Windows是专门为Windows编译的包,exe解压之后就可以在vs下引用库即可(可参考文章:https://blog.csdn.net/qq_27825451/article/details/103036687 ),当然用这个解压之后里面source内容也是可以的。推荐如果自己编译还是用soureces
在这里插入图片描述
接下来就是设置环境变量了
将安装好的cmake和qt文件夹下的bin目录添加到电脑系统环境变量里(很重要,在2.1和2.2安装好之后要把路径加到系统path变量中)

2.1 使用单独下载的minGW+CMake编译

注意:QT路径对中文比较敏感,最好保证路径中不带有中文
单独下载适合自己的版本:https://sourceforge.net/projects/mingw-w64
后续操作和下面一样,以下面的章节详细介绍

2.2 使用Qt自带的minGW+Cmake

QT在搭建编译环境的时候本生是可以带各种版本的编译器,这里不多说,找到qt安装的目录,在相应的地方都会有不同的版本
按照下面的步奏:
在这里插入图片描述
在这里插入图片描述
第一次编译会有相应的设置:
在这里插入图片描述
在这里插入图片描述
到这一步是为了选择QT中的或者自己下载的Mingw版本去编译。
在这里插入图片描述
config完成后,CMake的界面如图所示显示了大片的红色。
在这里插入图片描述
一般会报错,解决方法如下,这样的好处是将所有的lib文件打包成一个lib文件,在调用的时候只需要一次很简洁,在测试代码中可以体现。
同时我在上述的红色框里还选择了在这里我们选中“WITH_OPENGL”、“WITH_QT”,将“WITH_IPP”取消这几个操作,反正这个不选也可以,但是我是选了的。
在这里插入图片描述
在这里插入图片描述
configure结束之后,没有错误之后,一定要Generate!!!!!!,不然想继续下面操作会报错: mingw32-make: *** No targets specified and no makefile found. Stop.
上述操作结束之后就会在编译的opencv_build文件下看到生成一大推东西
继续下面操作:
在这里插入图片描述
输入mingw32-make -j 4(-j 后跟的是用几核编译 提升编译速度)等待完成 。
再输入mingw32-make install 完成后opencv库我们就编译成功了。
在这里插入图片描述
如果过程到百分之几就跳出,需要在网上找相应的问题解决。上述在opencv_build下install就是我们编译好的opencv,在后面测试程序中用到。

2.3 直接在QT中编译source文件

其实理论上和上述操作过程是一样的,只是在qt中将很多步奏都集成到qt中,省了很多麻烦(但是我遇到好多问题,在最后编译过程出了问题,也没有成功,又成功的小伙伴私信我,让我也学习一下),下面讲大致方法说一下:
先讲Cmake添加到编译环境中去
在这里插入图片描述
用QTcreator打开 文件夹下的 sources\CMakeLists.txt
在打开编译中的build,设置对应参数,其实和Cmake差不多。
在这里插入图片描述
设置好之后
在这里插入图片描述
Cmake之后就开始构建,构建成功之后的:
在这里插入图片描述
在构建小锤子工具,开始构建就会有很多问题:
1、👎 error: [modules\core\CMakeFiles\pch_Generate_opencv_core.dir\build.make:76: modules/core/precomp.hpp.gch/opencv_core_Debug.gch] Error 1
2、 Duplicated modules LOCATIONS has been found
我在网上搜到的方法也没有很好的解决,所以只能到这了,但是我同事就是用这方法成功了。

3、 程序测试

在qt中建一个工程,讲2.2中的install文件放到和pro文件同级目录(很简洁吧,这个就是上述那个world的作用)

INCLUDEPATH += $$PWD\opencv411\include
在这里插入图片描述
我在实际测试中,debug和release下都可以跑,虽然说上说编译的是release版本(想要debug版本的,可以在cmake的时候有一个参数可以配置就行,现在看来没有必要)

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "opencv2/opencv.hpp"
using namespace cv;//命名空间

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    Mat image = imread("D:\\11.jpg",1);     //这是我D盘根目录下名为11的图片的路径
    namedWindow("my image",WINDOW_AUTOSIZE);//新建自适应大小的窗体
    imshow("my image",image);//显示窗体
}

MainWindow::~MainWindow()
{
    delete ui;
}

如果在编译过程中
问题:
1、E:\test\opencv411_test\mainwindow.cpp👎 error: undefined reference to `cv::imread(std::__cxx11::basic_string<char,
std::char_traits, std::allocator > const&, int)’
2、Qt opencv 程序异常结束,crashed
3、👎 error: cannot find E:\test\opencv411_test\opencv411\x64\mingw\bin: Permission denied
多半是pro文件没有设置好
最后成功显示
在这里插入图片描述
因为自己搭建过程中图片保存丢失,就从下面文章借用了相关的图片。
参考文章:1、https://www.jianshu.com/p/dce4d0a13fad
2、https://blog.csdn.net/happyjoey217/article/details/115691436
3、https://blog.csdn.net/flfihpv259/article/details/71515937
4、https://blog.csdn.net/gufeiyunshi/article/details/50967440
5、https://blog.csdn.net/ztq_12345/article/details/90902844

  • 11
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 9
    评论
### 回答1: 您好,以下是在 Blender 中安装 OpenCV 方法: 1. 下载 OpenCV 的压缩包,并解压到一个文件夹中。 2. 打开 Blender,进入“用户设置”界面。 3. 在“文件”选项卡中,找到“脚本”一栏,将解压后的 OpenCV 文件夹路径添加到“脚本搜索路径”中。 4. 在 Blender 中打开 Python 控制台,输入以下命令: import cv2 如果没有报错,说明 OpenCV 已经成功安装。 希望能对您有所帮助。 ### 回答2: 在 Blender 中安装 OpenCV 方法有以下几种: 1. 使用系统级:在操作系统中安装 OpenCV ,然后在 Blender 中使用已安装的。这种方法需要确保操作系统中已正确安装了 OpenCV ,并且 Blender 使用的 Python 版本与系统中使用的 Python 版本一致。 2. 使用 Python 包管理器:通过 pip 或者 conda 等 Python 包管理器,在 Blender 的 Python 环境中安装 OpenCV。首先,需要找到 Blender 中的 Python 可执行文件。在 Blender 安装目录下,可以找到一个名为 "2.xx/python" 的文件夹,其中的 "2.xx" 是 Blender 版本号,表示对应的 Python 版本。在命令行中进入该目录,然后使用包管理器安装 OpenCV,例如:pip install opencv-python。 3. 手动安装:在 Blender 中手动安装 OpenCV 。首先,需要下载 OpenCV 的适用于你的系统和 Blender 版本的预编译二进制文件。在 OpenCV 官方网站上可以找到可用的二进制文件。然后,将下载的文件解压到一个合适的位置,并将解压后的文件夹路径添加到 Blender 的 Python 环境中的 sys.path 变量中。这样,Blender 就能找到并使用该了。 无论选择哪种方法,在安装 OpenCV 后,可以在 Blender 的 Python 环境中导入 OpenCV 进行使用。例如:import cv2 来导入 OpenCV ,并开始使用其中的函数和类。 需要注意的是,由于 Blender 内部使用的是特定的 Python 环境,所以安装 OpenCV 时需要确保版本兼容性,并正确配置相关的环境变量和路径。在安装过程中,如果遇到问题,可以查阅 Blender 和 OpenCV 的官方文档,或者参考相关的社区讨论和教程来获取更详细的指导。 ### 回答3: 在Blender中安装OpenCV有以下几种方法: 1. 使用系统级安装: 首先,确保已在您的操作系统上成功安装了OpenCV。然后,打开Blender,进入用户首选项(Preferences)窗口。在附加模块(Add-ons)选项卡中,搜索并启用“Import-Export: OpenCV”插件。这将激活Blender与系统级OpenCV的通信。 2. 使用Python包管理器安装: 打开Blender,并进入Python控制台。然后,使用pip命令安装OpenCV,例如在控制台中输入“!pip install opencv-python”。完成后,您可以使用import cv2导入OpenCV并在Blender中使用。 3. 将OpenCV复制到Blender的Python目录中: 首先,下载并安装适用于Blender版本的OpenCV。然后,找到您的Blender安装文件夹,进入“2.XX/python/lib/python3.X”目录(其中“2.XX”是Blender版本,而“3.X”是Python版本)。将OpenCV文件复制到此目录中即可在Blender中使用。 以上是在Blender中安装OpenCV的主要方法。根据您的系统和偏好,选择合适的方法安装和配置OpenCV,以实现在Blender中使用相关功能和功能。
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

疯狂的挖掘机

谢谢大家的厚爱

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值