【环境配置】MATLAB r2022b+opencv3.4.1+mexopencv3.4.1+Windows 11 配置

参考链接:
mexopencv官方文档:介绍了全部流程
补充官方文档Configure OpenCV出现的问题:直到Configure后没有红色,再点击Generate
最新Opencv 与 VC++ 的版本对应关系(2023-04-08)
MATLAB支持和兼容的编译器 - Windows

  • 文章起源:需要在matlab中调用opencv库,搞了一天半
  • 需要下载的东西:(截止2023.6.13,最新的mexopencv 仅与 OpenCV 3.4.1 兼容)
    1. opencv-3.4.1opencv_contrib-3.4.1, 后面提供了下载链接
    2. CMake(3.26.4)
    3. Visual Studio Community(我用的是2022),!!!需要安装使用C++的桌面开发Windows 10 SDK以及VS2015 C++生成工具
    4. mexopencv-3.4.1

下面是完整流程,基本是官网文档的翻译,补充了一些自己踩过的坑

OpenCV部分

1.下载OpenCV

直接从 GitHub 下载源码压缩包:
opencv sources (tag 3.4.1): https://github.com/opencv/opencv/archive/3.4.1.zip
opencv_contrib sources (tag 3.4.1): https://github.com/opencv/opencv_contrib/archive/3.4.1.zip
解压到同一个文件夹dev下面,例如:

  • C:\dev\opencv-3.4.1
  • C:\dev\opencv_contrib-3.4.1

2. 配置OpenCV

  • 此步骤需要CMake和 C++ 编译器(Visual Studio Community 2022)

2.1 生成 VS 解决方案来构建opencv源代码

安装CMake之后,启动cmake-gui.exe

  1. 设置源文件夹和目标文件夹,分别为C:/dev/opencvC:/dev/build
    在这里插入图片描述

  2. 按Configure,然后选择Visual Studio 14 2015Win64作为编译器

  3. 勾选GroupedAdvanced,在BUILD组里面去掉以下几项(*号表示匹配任意字符):
    BUILD_DOCS, BUILD_EXAMPLES, BUILD_PACKAGE, BUILD_PERF_TESTS, BUILD_TESTS, BUILD_JAVA BUILD_opencv_apps, BUILD_opencv_cuda*, BUILD_opencv_cudev, BUILD_opencv_js, BUILD_opencv_java*, BUILD_opencv_python*, BUILD_opencv_ts, BUILD_opencv_viz, BUILD_opencv_world

  4. OPENCV分组里面:
    设置OPENCV_EXTRA_MODULES_PATH比如为C:/dev/opencv_contrib_3.4.1/modules
    勾选OPENCV_ENABLE_NONFREE

  5. WITH 分组, 去掉以下几项:
    WITH_CUDA, WITH_CUFFT, WITH_CUBLAS, WITH_NVCUVID, WITH_MATLAB, WITH_VTK

  6. 再次点击Configure,等待一会儿,BUILD分组应该还是红色,如果有以下几项被勾选的就去掉:
    BUILD_opencv_cvv, BUILD_opencv_freetype, BUILD_opencv_hdf, BUILD_opencv_matlab, BUILD_opencv_ovis, BUILD_opencv_sfm

  7. 再次点击 Configure,直到没有红色,然后点击Generate,关闭CMake
    在这里插入图片描述

3 编译OpenCV

在 Visual Studio 中打开上一步生成的解决方案:C:\dev\build\OpenCV.sln,并执行以下操作:

  1. 将配置切换到“Release”模式
    在这里插入图片描述

  2. 构建解决方案,右键“ALL_BUILD”,点击生成,生成成功进行下一步

  3. 右键“INSTALL”,点击生成(我这里编译报错,后来在Visual Studio Installer里面安装使用C++的桌面开发Windows SDKVS2015 C++生成工具之后就可以编译成功了,如下图所示
    在这里插入图片描述

  4. 关闭 Visual Studio

  5. 最后,将 OpenCV 二进制文件(包含 OpenCV DLL 的文件夹:C:\dev\build\install\x64\vc14\bin)添加到PATH环境变量中。

mexopencv部分

  1. 下载mexopencv项目,保存到文件夹C:\dev\mexopencv

  2. 启动 MATLAB,在命令行输入mex -setup cpp(!!!不是官方文档的mex -setup),然后选中Microsoft Visual C++ 2015(默认的2022版本无法使用),参考matlab官方文档
    在这里插入图片描述

  3. 然后输入以下命令:

    cd('C:\dev\mexopencv')
    addpath('C:\dev\mexopencv')
    addpath('C:\dev\mexopencv\opencv_contrib')
    mexopencv.make('opencv_path','C:\dev\build\install', 'opencv_contrib',true)
    

    一切顺利的话,就编译成功
    在这里插入图片描述
    如果编译失败,可尝试这篇文章:将mexopencv3_4_1\+mexopencv目录下的make.m文件中的opts.opencv_path参数设置为OpenCV构建的路径,如C:\dev\build

  4. 在命令行输入cv.getBuildInformation(),然后输出相应信息 ,就可以愉快地在 MATLAB 中使用 OpenCV啦~在这里插入图片描述

  • 4
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 15
    评论
在VS2022中配置OpenCV的步骤如下: 1. 下载并安装OpenCV安装包,例如OpenCV4.5.5。 2. 打开VS2022,创建或打开一个项目。 3. 将OpenCV的头文件路径添加到项目中。你只需要在代码中添加以下include语句: `#include "opencv2/opencv.hpp"`。[2] 4. 将OpenCV的库文件路径添加到项目中。在VC目录 -> 库目录中添加OpenCV的lib路径。对于VS2022,可以使用vc15路径。 5. 配置附加依赖项。在项目属性 -> 链接器 -> 输入 -> 附加依赖项中,添加OpenCV的库文件名,如opencv_world455.lib。这样,在编译和链接时,程序就能够找到OpenCV的库文件了。 6. 确保将OpenCV的DLL文件拷贝到项目的Debug或Release文件夹中。 这样,你就成功配置了VS2022中的OpenCV。你可以使用OpenCV的函数和类来进行图像处理和计算机视觉任务了。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [VS2022 + Opencv4.5.5 + C++ 配置](https://blog.csdn.net/gdxb666/article/details/130779810)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [20220922 Windows平台用VS编译OpenCV + Contrib + 各种注意事项](https://blog.csdn.net/Vissence/article/details/127000366)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

岁月漫长_

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值