matlab的mexopencv库的安装
本人原本并不精通Matlab,也初次接触这一图像处理板块,现因工作需要,在给matlab安装opencv库时,遇到了许多问题,经过不懈努力,终于解决了,哭死。起初不知道问题在哪烦了好几天,现在解决了赶紧分享一下喜悦,我用的版本分别是:matlab2021b;opencv3.4.1;mexopencv-3.4.1;(版本不对应,本人两行泪)
接下来介绍安装步骤:
首先安装opencv板块,先不急着下载最新版本的opencv文件,而是先在matlab上安装C++的编译器,代码如下:
mex -setup
如果你电脑上并没有C++的编译器,那么有代码提示:
要么你自己点链接安装matlab自带的MinGW-w64 C/C++编译器,要么你自己下载一个别的;
这个链接相当于 在matlab的主页-选项框的附加功能那里选择【获取附加功能】手动获取MinGW-w64 C/C++编译器
但是,matlab下载附件太特么慢了,好不容易自己去官网下载了MinGW-w64 C/C++编译器,遇到了问题,百度都找不到结果,无奈,卸载之~
故而,选择了VC2017++的社区版(官网下载,我放心,社区版,不要钱),(其实我一开始下载了2019版本,但是后续的步骤中没有找到配套的东西,导致频频出错,emmm版本高,并不意味着一定就是适合)
注意:安装东西尽量不要放在C盘,我刚开始放在C盘后,安装库时也出了问题,后来察觉到可能是C盘自带管理员权限,换到E盘后,问题立刻就解除了。
安装好VC2017++,在电脑的环境变量里,在PATH添加opencv的安装地址;再次在命令行输入mex -setup代码,就会出现以下提示:

这里点击了:mex -setup C++
此刻,需要安装mexopencv,3.4.1版本在github上的下载链接是Release OpenCV 3.4.1 · kyamagu/mexopencv · GitHub
下载好了之后,把它解压,放在Matlab的安装文件中
在命令行输入:
mexopencv.make
得到提示:无法解析名称 mexopencv.make。我一看,嗷!原来是没把mexopencv文件夹添加到路径。添加之
再次输入mexopencv.make
提示:

我一看,嗷!原来是原来下载的opencv库并没有vc15这个文件(一开始我下载的是opencv3.3.0版本),遂重新下载opencv3.4.1版本,并将opencv的路径添加到环境变量的PATH中,例如我的是D:\opencv\build\x64\vc15\bin。
再次运行mexopencv.make,提示错误-R2017b,我一搜,嗷!原来需要将mexopencv3_4_1\+mexopencv目录下的make.m文件中的opts.opencv_path参数设置为OpenCv原先解压的路径,例如我这里是'D:\opencv\build打开make.m文件后,搜索-R2017b,找到这几行代码,把他们注释掉
% 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
命令行,再次输入mexopencv.make,提示如下:

如果版本下载错了,它就会提示,什么找不到路径,或者编译什么错误等等,只因尝过opencv和mexopencv不同版本的痛
完成收工!
智能推荐
(caffe的安装配置过程以及问题总结)ubuntu14.04 +cuda7.5+opencv+matlab+各种依赖库
Stay hungry,Stay foolish . 对于caffe,不同的电脑出现的问题不一样,如果出现问题就慢慢解决吧。本文将整个的安装配置过程进行了总结。 一、安装前的准备工作 1)首先需要查看自己的电脑是否支持GPU,输入: 查看GPU型号, 在https://developer.nvidia.com/cuda-gpus进行查看对比. 2)验证系统运行支持的Linux版本 重...
Python - OpenCV库的安装
安装 以管理员的方式打开“Anaconda Prompt” 输入下载命令“pip install opencv-python” 如果指明要下某版本的OpenCV,可以加上版本号。如:“pip install opencv-python==3.4.1.15” 除此以外,最好再下载一个库,“pip install op...
VUE给动态生成的el-checkbox添加v-model
需求描述:根据返回的数据,页面动态for循环添加el-checkbox,动态绑定v-model; html代码: tabList数据格式: 之前的错误做法: 开始以为这样就可以了,毕竟在el-checkbox上用item.status绑定v-model,后面发现checkbox点击的时候并没有更新; 解决方案: 官方文档...
[UE4]蓝图和C++调用自定义函数
1、C++自定义方法,蓝图调用 UFUNCTION宏是处理将C++函数暴露给反射系统的一些事情,参数BlueprintCallable意味着这个函数可以在蓝图中调用,而后面的目录是必须有的,这样在蓝图中右键点击的时候,我们就可以根据这个目录找到我们需要的函数。 2、蓝图定义方法,C++调用 当我们在蓝图中定义了一系列操作后,我们也想用C++调用,我们利用BlueprintImplementable...
Redis--2.Jedis的介绍和使用
一.概念 Jedis是Redis官方推荐使用的的一个Java连接开发的工具(中间件)。 Jedis主要是集成了redis的一些命令操作,封装了redis的java客户端。 使用Jedis操作Redis数据库,就相当于使用JDBC操作sql_server、Mysql数据库。 二.两种连接方式 1.Jedis对象直连Redis Jedis对象直连方式可以分为五个步骤: 1、导入Jedis的jar包 2...
猜你喜欢
选择图片上传之后,图片旋转问题解决方案(前端)
图片上传之后,显示为什么会是旋转的呢? 这就要说到图片的 exif 简单来说,Exif 信息就是由数码相机在拍摄过程中采集一系列的信息,然后把信息放置在我们熟知的 JPEG/TIFF 文件的头部,也就是说 Exif信息是镶嵌在 JPEG/TIFF 图像文件格式内的一组拍摄参数,它就好像是相机的日期打印功能一样,只不过 Exif信息所记录的资讯更为详尽和完备。Exif 所记录的元数据信息非常丰富,主...
ApplicationContextAware如何装配applicationcontext
首先看通过实现ApplicationContextAware接口获得applicationcontext的方法: 要知道ApplicationContextAware首先要了解ApplicationContextAwareProcessor ApplicationContextAwareProcessor继承了BeanPostProcessor,即在bean实例化的时候会调用postProcess...
[BZOJ1013][JSOI2008]球形空间产生器sphere(高斯消元)
题目: 我是超链接 题解: 根据题目给出的信息,我们列柿子 (a1−x)2+(b1−y)2=r2(a1−x)2+(b1−y)2=r2 (a2−x)2+(b2−y)2=r2(a2−x)2+(b2−y)2=r2 (a3−x)2+(b3−y)2=r2(a3−x)2+(b3&...
【opencv学习之三十六】轮廓特征应用:计算点与轮廓距离
opencv实现了Contours与point的距离关系的计算使用起来很方便,不用自己再进行坐标转换计算了;示例代码如下: 效果如下:...
实验六:MPG音频编码
一、实验原理 音频压缩编码的本质是感知编码,利用感知模型去除不敏感的声音数据,同时保证声音质量不会有明显下降。它采用子带编码技术,根据心理声学模型获得不同子带的听觉掩蔽阈值,并对每个子带的取样值进行动态量化。 1、音频压缩的可能性 (1)声音信号中的“冗余”信息: 频域:非均匀功率密度谱, 低频能量高,高频能量低。 时域:信息冗余度主要表现在幅度非均匀分布,即不同幅度的样值...
