文件交换

图片缩略图

OpenCV在MATLAB中的计算机视觉工具箱接口

在MATLAB中使用OpenCV算法
3.8
18评级

67下载

更新2021年3月10日

计算机视觉系统工具箱OpenCV接口使您能够使用MEX将现有的OpenCV文件和项目带入MATLAB。支持包包金宝app括:
•MATLAB和OpenCV之间的数据类型转换
•示例演示如何接口OpenCV和MATLAB
从您的操作系统或MATLAB内部打开.mlpkginstall文件将启动您所拥有的版本的安装过程。这个.mlpkginstall文件适用于R2014b及以后版本。
观看这段视频了解更多关于软件包的信息:http://youtu.be/BasC2jkgyaM

评论和评级(34

zujiang赵

阿什利·谢弗

示例.cpp文件可以从哪里下载?

Ankit贾斯瓦尔

库马拉斯梅农

阿明阿明

这不是在vs15 Matlab r2018b上正常工作。然而,我发现了一个更可持续的解决方案,那就是使用mexopencv。

伊斯梅尔Zouaoui

Khurram Hameed

我使用MATLAB 2018b与Visual Studio 2017
我已经下载了opencv和mexOpenCV,并构建了make文件。但当我使用mexOpenCV和每次有一个错误“未定义的函数或变量'mexOpenCV”。
帮助需要
问候

astha耆那教徒的

我使用MATLAB2018a与Microsoft Visual Stdio c++ 2017
但错误显示编译器不兼容?

应王

它真的很有帮助,我跟着视频并获得了附加工作。
但是没有不利于非英语使用者的字幕......

arusa汗

我已经得到Matlab R2016a和MEX配置使用“Microsoft Visual c++ 2015专业(C)”。
我设法将测试文件detectORBFeaturesOCV.cpp和extractORBFeaturesOCV.cpp编译成mexw64文件,但运行testORBFeaturesOCV。m在调用上述任何一个函数时都让Matlab崩溃。它是到2015年c++编译器?
请帮助我解决这个问题。
我还使用了R2014B和R2017A,但是当我运行TestorbFeaturesocv.m文件时,它给了我相同的错误。
谢谢!

Perig Vennetier

我也在编译时出错:

> > mexOpenCV backgroundSubtractorOCV.cpp
构建与'MinGW64编译器(c++)'。
使用mexOpenCV时出错(第136行)
C:\Users\PERIG~1.VEN\AppData\Local\Temp\mex_329972900989911_14272\backgroundSubtractorOCV.obj:backgroundSubtractorOCV.cpp:(.text+0x365): undefined reference to ' ocvMxArrayToImage_uint8(mxArray_tag const*, bool)'
C:\Users\PERIG~1.VEN\AppData\Local\Temp\mex_329972900989911_14272\backgroundSubtractorOCV.obj:backgroundSubtractorOCV.cpp:(.text+0x3c3): undefined reference to ' ocvMxArrayFromImage_bool(cv::Mat const&)'
C:\ Users \ Perig〜1.ven \ appdata \ local \ temp \ mex_329972900989911_14272 \ backgroundssubtractorocv.obj:backgroundsubtractorocv.cpp :( text + 0x453):未定义的参考`cv :: fastfree(void *)'
C:\ Users \ Perig〜1.1.ven \ appdata \ location \ temp \ mex_329972900989911_14272 \ backgroundsubtractorocv.obj:backgroundsubtractorocv.cpp :( text + 0x4c0):未定义引用`cv :: fastfree(void *)'
C:\Users\PERIG~1.VEN\AppData\Local\Temp\mex_329972900989911_14272\backgroundSubtractorOCV.obj:backgroundSubtractorOCV.cpp:(.text+0x4d5):未定义的引用' cv::Mat::deallocate()'
C:\ users \ perig〜1.ven \ appdata \ local \ temp \ mex_329972900989911_14272 \ backgroundssubtractorocv.obj:backgroundsubtractorocv.cpp :( text + 0x4e4):未定义引用`cv :: mat :: deallocate()'
c:\ users_perig ~1.VEN\AppData\Local\Temp\mex_329972900989911_14272\backgroundSubtractorOCV.obj:backgroundSubtractorOCV.cpp:(.text$_ZN2cv3MatD1Ev[_ZN2cv3MatD1Ev]+0x22): undefined reference to ' cv::Mat::deallocate()'
c:\ users_perig ~1.VEN\AppData\Local\Temp\mex_329972900989911_14272\backgroundSubtractorOCV.obj:backgroundSubtractorOCV.cpp:(.text$_ZN2cv3MatD1Ev[_ZN2cv3MatD1Ev]+0x86): undefined reference to ' cv::fastFree(void*)'
c:\ users_perig ~1.VEN\AppData\Local\Temp\mex_329972900989911_14272\backgroundSubtractorOCV.obj:backgroundSubtractorOCV.cpp:(.text.startup+0x3b): undefined reference to ' cv::createBackgroundSubtractorMOG2(int,double, bool)'
collect2.exe:错误:LD返回1个退出状态

arusa汗

> >墨西哥人设置c++
它给了我这个错误使用mex
没有找金宝app到支持的编译器或SDK。你可以安装免费的MinGW-w64 C/ c++编译器;看到安装
MinGW-w64编译器。欲了解更多选择,请访问//www.tatmou.com/金宝appsupport/compilers/R2016a/win64.html

我使用matlab r2016a,并已经安装了VS2015和TDM-GCC-4.9.2。
任何人都请帮我解决这个问题

Maksat Kalybek

>> mex -setup c++
MEX配置为使用“Microsoft Visual C ++ 2015”进行C ++语言编译。
警告:MATLAB C和Fortran API已经改变以支持MATLAB金宝app
具有超过2 ^ 32-1元素的变量。你将被要求
更新代码以利用新的API。
您可以在以下信息查找有关此信息的更多信息:
//www.tatmou.com/help/matlab/matlab_external/upgrading-mex-files-to -use-64-bit-api.html.

要选择一个不同的c++编译器,请从下面选择一个:
Microsoft Visual c++ 2015 mex -setup:C:\Users\maksa\AppData\Roaming\MathWorks\MATLAB\R2018a\ mex_c++ _win64.xml c++
Microsoft Visual c++ 2017 mex -setup:'C:\Program Files\MATLAB\R2018a\bin\win64\mexopts\msvcpp2017.xml' c++
> > mexOpenCV detectORBFeaturesOCV.cpp
使用mexOpenCV时出错(第63行)
OpenCV库是使用“Microsoft Visual c++ 2015”构建的。
您的编译器是'Microsoft Visual C ++ 2017(c)'。
这些编译器可能不兼容。
注意,您可以使用'mex -setup'命令选择一个编译器。

请帮我解决这个问题。谢谢

文森特Rougeau-Moss

思远李

OpenCV库是使用“Microsoft Visual c++ 2015”构建的。
您的编译器是'Microsoft Visual C ++ 2017(c)'。
这些编译器可能不兼容。
注意,您可以使用'mex -setup'命令选择一个编译器。

不能在Matlab2018a中使用

Amith Kamath.

崔:我们已经更新了Windows上支持的编译器为V金宝appisual Studio 2015。你不会有兼容性问题在这里。
Madhu:我不完全理解你想在MEX例程中看到什么。是的,您列出的库并不包括在内。您可以考虑在您的MEX文件中运行每个迭代,并返回MATLAB使用imshow/imread来显示或读取新图像。如果这没有回答您的问题,请考虑联系技术支持以获得更多细节。金宝app
OpenCV版本在R2017a之前使用的版本是2.4.9。从R2017a开始,我们使用3.1.0版本。这在将来的版本中可能会改变。
谢谢!

Madhu Balasubramanian.

问题:在Mexopencv.m中,注意,不包括一些库(OpenCV_HighGui,OpenCV_IMGCodecs等)。如果我们想在MEX例程内可视化结果,例如,在迭代期间,在opencv的imshow中,包括梅克洛芬(Mexopencv.m)的OpenCv_imgcodec在内的工作吗?或者我们必须使用matlab的imread与'm​​excallmatlab'?

Thuong HD.

谢谢你的支持!金宝app

Thuong HD.

maisam sakr

警告:OpenCV库是使用'Microsoft Visual c++ 2012'构建的。
你的编译器是“Microsoft Visual c++ 2015 Professional”。
这些编译器可能不兼容。我怎样做?

英奇Coudron

卢卡斯Kortmann

终于在R2016b上运行了。它将只编译与Visual Studio Professional 2012 c++编译器(不是自由的Express版本!)。谢天谢地,我可以通过我的大学访问它。

我也找不到任何关于支持哪个OpenCV版本的信息。金宝app

本尼

你好
我正在使用一台离线的电脑,不能上网。是否有可能在任何地方获得此包的离线安装程序?

感谢你的回应。

本尼

米格尔西芒

这个包中包含的OpenCV库是什么版本?

杨斌

不能在Matlab2016中使用

杨斌

卡雷尔Lebeda

当试图打开文件滚轮,我得到的错误消息:
无法打开“opencvinterface-1.mlpkginstall”。不支持存档类型。金宝app

Eslam Foad

好!

我在R2015a中得到以下错误,我正在使用Xcode 7。如果我删除cv::imdecode()函数。它可以编译,但我需要使用cv::imdecode()函数!

使用mexOpenCV时出错(第120行)
架构的未定义符号
x86_64:
“简历::imdecode(简历:_InputArray常量,
int)”,引用:
在decodeUDPimg.o _mexFunction
LD:找不到架构的符号
x86_64
error: linker command failed with
退出代码1(使用-v查看调用)

有什么问题吗?

Royi Avital

请,
使它以常规形式(不仅是工具箱)提供。

谢谢你!

谢尔盖

这就跟你问声好!
我已经得到Matlab R2015b和MEX配置使用“Microsoft Visual c++ 2015专业(C)”。
我已经设法将测试文件detectORBFeaturesOCV.cpp和extractORBFeaturesOCV.cpp编译成mexw64文件,但运行testORBFeaturesOCV。m在调用上述任何一个函数时都让Matlab崩溃。它是到2015年c++编译器?我应该只使用2012版还是我可以使用一些键/标志使它工作?
谢谢!

丹尼尔·托马斯。

我只是不明白为什么它只在2014b或以后才能工作。作为2014a的家庭版用户,用这个包将matlab代码转换到opencv对我来说要容易得多,但我不能那样做,因为一个字母的差异。为了使用更新的版本,我不得不重新购买matlab和所有工具箱。

andres garcia

我开始在openCV工作,我看到这将很容易使用

Matlab释放兼容性
创建R2014b
兼容R2014b到R2021a
平台的兼容性
视窗 macOS Linux

社区寻宝

在MATLAB中心找到宝藏,并发现社区可以如何帮助您!

开始狩猎!