opencv matlab配置,MATLAB配置mexopencv
平台:win10 x64+VS 2015+Matlab R2018b+opencv_python-3.4.1+mexopencv3.4.1
问题来源:最近在做图像拼接的论文, 在opencv中有很多现成实现追踪的函数,想用那些函数来进行一个调试,由于MATLAB有更加强大的矩阵库,众多的工具箱,以及更加便捷的可视化及调试工具,所以打算在MATLAB中调用opencv库中的函数,在此记录一下配置的过程。
mexopencv用于OpenCV库的matlab mex函数的集合和开发工具包。mexopencv是针对特定的OpenCV版本开发的,所以必须使用对应的opencv和mexopencv版本。在此将介绍在MATLAB上配置OpenCV3.4.1和mexopencv的过程。
1.mexopencv简介
(1)mexopencv将大多数opencv中常用的接口集合成Matlab工具,在Matlab中可以随意的调用。
(2)mexopencv官网的教程说的比较繁杂,琢磨了一晚上后发现其实配置过程就是很简单的几步。
(3)上边连接是最新版的,也就是opencv3.x。当然你也可以配置opencv2.4.X,
2.下载配置opencv
(1)下载opencv,点击打开链接,根据自己的需求决定下载3.X还是2.4.x,这一步在我博客也有:https://www.cnblogs.com/Alliswell-WP/p/opencv3OfcontribAdd.html
(2)下载成功后会得到opencv.exe文件,双击解压到合适的位置,我的为:D:\ProgramFiles\OpenCV3.4.1_x64
(3)编辑系统环境变量Path,根据自己的编译器和操作系统决定,如:D:\OpenCV\build\x86\vc10\bin 为32位操作系统,VS2010编译器
注:32位操作系统为x86,64为操作系统为x64,Matlab的位数最好与操作系统一致。我的为:D:\ProgramFiles\OpenCV3.4.1_x64\opencv\build\x64\vc14\bin
vc10--vs2010 vc11--vs2012 vc12--vs2013 vc14--vs2015
opencv3.X只支持64位,编译器为vs2013及以上版本
3.下载mexopencv
(1)如果您的opencv是3.X,在这里下载:https://github.com/kyamagu/mexopencv
(2)如果您的opencv是2.4.x,在这里下载:https://github.com/kyamagu/mexopencv/tree/v2.4
(3)下载之后将压缩包解压到合适位置,我的为:D:\Working\Matlab\mexopencv-master
4. 在Matlab中配置mexopencv
(1)Matlab中设置mexopencv路径:将mexopencv的所有文件夹极其子文件夹(我的是:D:\Working\Matlab\mexopencv-master)添加到工作目录。
(2)设置编译器:在MATLAB的命令行中输入>>mex -setup ,后点击“mex -setup C++”
(3)很关键的一步,我们需要修改mexopencv里的一些参数,不然会报错
首先需要将mexopencv3_4_1\+mexopencv目录下的make.m文件中的opts.opencv_path参数设置为OpenCV原先解压的路径,例如我这里是“D:\ProgramFiles\OpenCV3.4.1_x64\opencv\build”:opts.opencv_path = 'D:\ProgramFiles\OpenCV3.4.1_x64\opencv\build'; % OpenCV location
再然后将其中的一些代码注释掉,不然可能会报 -R2017b这样的错误(275-281行):
real/imaginary storage format for complex arrays
if ~mexopencv.isOctave() && ~verLessThan('matlab', '9.4')
% keep using the "separate complex storage", as opposed to the
% "interleaved complex storage" introduced in R2018a
% (see MX_HAS_INTERLEAVED_COMPLEX)
mex_flags = ['-R2017b' mex_flags];
end
注释后:
% real/imaginary storage format for complex arrays
% if ~mexopencv.isOctave() && ~verLessThan('matlab', '9.4')
% % keep using the "separate complex storage", as opposed to the
% % "interleaved complex storage" introduced in R2018a
% % (see MX_HAS_INTERLEAVED_COMPLEX)
% mex_flags = ['-R2017b' mex_flags];
% end
(4)编译opencv,在MATLAB的命令行中输入>> mexopencv.make
(5)耐心等待,编译成功后测试一下
addpath('test');
UnitTest;
如果全部显示“”PASS"则代表配置成功。
参考链接:1)Matlab和OpenCv的混合编程,工具箱mexopencv——https://blog.csdn.net/luchengtao11/article/details/52179595
opencv matlab配置,MATLAB配置mexopencv相关推荐
- opencv matlab配置,Matlab下运行c++程序的配置(包含opencv的c++程序)
本文使用的是matlab2012b.VS2010和OpenCV249 1.打开matlab 2.输入mex -setup Welcome to mex -setup. This utility wi ...
- ubuntu14.04下安装cudnn5.1.3,opencv3.0,编译caffe及配置matlab和python接口过程记录
已有条件: ubuntu14.04+cuda7.5+anaconda2(即python2.7)+matlabR2014a 上述已经装好了,开始搭建caffe环境. 1. 装cudnn5.1.3,参照: ...
- 【VS Code配置matlab】手把手教学,matlab也能自动补全+瞬间启动+代码整理!
前言: matlab很好地集成了大量数学处理函数,甚至封装了包括信号处理.图像处理.神经网络.音乐等在内的方法.但matlab启动慢.没有代码补全.开发环境不友善等缺点常受人诟病,算法编写者往往需要进 ...
- VS Code配置matlab
前言: matlab很好地集成了大量数学处理函数,甚至封装了包括信号处理.图像处理.神经网络等在内的方法.但matlab启动慢.没有代码补全.开发环境不友善等缺点常受人诟病,算法编写者往往需要进行大量 ...
- 【VS Code配置matlab】
前言: matlab很好地集成了大量数学处理函数,甚至封装了包括信号处理.图像处理.神经网络.音乐等在内的方法.但matlab启动慢.没有代码补全.开发环境不友善等缺点常受人诟病,算法编写者往往需要进 ...
- vscode配置matlab工作环境
前面有两篇文章我们分别讲了在vscode里面如何配置C语言环境和python环境,那两篇文章总体来说比较复杂,当然这篇也有许多有趣的问题. 附上链接: 文章目录 matlab简介 基本要求 code ...
- matlab 修改语言环境,VS Code配置Matlab环境
VSCode这么赞的轻量级多平台IDE,怎么夸它都不为过,而且很有活力,笔者使用了才半年,但半年时间内,更新速度快,且每次更新都让人觉得"值",而不是随随便便更新. 废话还是少说, ...
- 基于粒子群算法的混合储能容量配置matlab 以风光互补发电储能系统为背景,以年运行成本最低为目标
基于粒子群算法的混合储能容量配置matlab 以风光互补发电储能系统为背景,以年运行成本最低为目标,根据负荷和发电量的缺额等制定超级电容和蓄电池配置方案,采用粒子群算法得到蓄电池和超级电容的个数,有详 ...
- matlab 8环境变量配置,matlab环境变量配置
控制面板-系统和安全-系统-高级系统设置-环境变量 变量名 变量值一般为安装目录 MATLAB 安装完后打开 matlab,会出现"找不到指定模块"对话框或 有些命令不能完成... ...
最新文章
- tomcat无法启动(JVM错误)
- 深度学习笔记:卷积神经网络的Tensorflow实现
- 小米10Pro手机双击android,小米10Pro:不完美,但很小米。
- BNUOJ 1207 滑雪
- Spring学习之旅(一):Bean的基础装配
- 遥远的救世主:电视剧《天道》
- Total Commander 常用快捷键
- [java]房屋出租系统
- 可拖动组件 v-drag vue
- c语言编写英雄联盟,怎么用C#或者C语言注册 英雄联盟 热键
- 谷歌内核浏览器无法下载文件的解决方法
- 特征点匹配——SIFT算法详解
- C# 使用SharpGL-Perspective和LookAt
- 晚清十大武林高手(电视里常引用的真实人物)
- 两种web crawler方案
- sql数据库质疑恢复办法
- [理财] 关于平民理财,自己的一些理解
- [逆向并查集+STLmap存图奇法] Connections in Galaxy War ZOJ - 3261
- 洛谷P3803 fft模板
- 运营分析:用七种维度来分析广告投放效果
热门文章
- 计算机无法识别u盘,usb不能识别u盘怎么办_电脑usb突然无法识别u盘修复方法-win7之家...
- Rasa课程、Rasa培训、Rasa面试、Rasa实战系列之Understanding Word Embeddings 1_ Just Letters
- 8051芯片选型 - 新唐MS51
- 软件测试人员需不需要懂代码?需要什么技能才行?
- Daily Scrum Meeting 11.05
- tableau免费版无法更新数据
- ipad2019编写html,2019 iPad性能排行榜,选对型号很重要
- 远场(far-field)语音识别的主流技术有哪些
- qcon_从QCon San Francisco 2008中学到的主要知识点和教训
- 选择 conforming 还是 non-conforming ?