图片缩略图

计算机视觉工具箱OpenCV接口

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

56个下载

更新2020年9月16日

计算机视觉系统工具箱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 Professional (C)'。
我设法编译测试文件detectORBFeaturesOCV.cpp和extractORBFeaturesOCV.cpp到mexw64文件,但运行testORBFeaturesOCV。m在调用上述任何函数时都会严重崩溃Matlab。它是由于2015 c++编译器?
请帮我解决这个问题。
我也使用了R2014b和R2017a,但是当我运行TestORBFeaturesOCV时,它给了我相同的错误。m文件。
谢谢!

Perig Vennetier

我也得到错误的编译:

> > mexOpenCV backgroundSubtractorOCV.cpp
使用“MinGW64 Compiler (c++)”编译。
使用mexOpenCV时出错(第136行)
C:\Users\ perg ~1.VEN\AppData\Local\Temp\mex_329972900989911_14272\backgroundSubtractorOCV.obj:backgroundSubtractorOCV.cpp:(.text+0x365):未定义的引用' ocvMxArrayToImage_uint8(mxArray_tag const*, bool)'
C:\Users\ perg ~1.VEN\AppData\Local\Temp\mex_329972900989911_14272\backgroundSubtractorOCV.obj:backgroundSubtractorOCV.cpp:(.text+0x3c3):未定义的引用' ocvMxArrayFromImage_bool(cv::Mat const&)'
C:\Users\ perg ~1.VEN\AppData\Local\Temp\mex_329972900989911_14272\backgroundSubtractorOCV.obj:backgroundSubtractorOCV.cpp:(.text+0x453):未定义的引用' cv::fastFree(void*)'
C:\Users\ perg ~1.VEN\AppData\Local\Temp\mex_329972900989911_14272\backgroundSubtractorOCV.obj:backgroundSubtractorOCV.cpp:(.text+0x4c0):未定义的引用' cv::fastFree(void*)'
C:\Users\ perg ~1.VEN\AppData\Local\Temp\mex_329972900989911_14272\backgroundSubtractorOCV.obj:backgroundSubtractorOCV.cpp:(.text+0x4d5):未定义的引用' cv::Mat::deallocate()'
C:\Users\ perg ~1.VEN\AppData\Local\Temp\mex_329972900989911_14272\backgroundSubtractorOCV.obj:backgroundSubtractorOCV.cpp:(.text+0x4e4):未定义的引用' cv::Mat::deallocate()'
C:\Users\ perg ~1.VEN\AppData\Local\Temp\mex_329972900989911_14272\backgroundSubtractorOCV.obj:backgroundSubtractorOCV.cpp:(.text$_ZN2cv3MatD1Ev[_ZN2cv3MatD1Ev]+0x22):未定义的引用' cv::Mat::deallocate()'
C:\Users\ perg ~1.VEN\AppData\Local\Temp\mex_329972900989911_14272\backgroundSubtractorOCV.obj:backgroundSubtractorOCV.cpp:(.text$_ZN2cv3MatD1Ev[_ZN2cv3MatD1Ev]+0x86):未定义的引用' cv::fastFree(void*)'
C:\Users\ perg ~1.VEN\AppData\Local\Temp\mex_329972900989911_14272\backgroundSubtractorOCV.obj:backgroundSubtractorOCV.cpp:(.text.startup+0x3b):未定义的引用' 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 -setup:'C:\Program Files\MATLAB\R2018a\bin\win64\mexopts\msvcpp2017.xml
> > 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中包括opencv_imgcodecs。米的工作吗?或者我们必须使用Matlab的imread与'mexCallMATLAB' ?

Thuong高清

感谢您的支持!金宝app

Thuong高清

maisam sakr

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

英奇Coudron

卢卡斯Kortmann

终于在R2016b上工作了。它只能用Visual Studio Professional 2012 c++ Compiler编译(不是免费的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
错误:链接器命令失败
退出代码1(使用-v查看调用)

有什么问题吗?

Royi Avital

请,
让它以常规的形式可用(不仅仅是工具箱)。

谢谢你!

谢尔盖

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

丹尼尔·托马斯。

我只是不能理解为什么它只在2014b或以后工作。作为一个家庭版用户的2014a,这将是一个更容易为我传输matlab代码到opencv与这个包,但我不能这样做,因为一个字母的差异。为了使用新的版本,我不得不再次购买matlab和所有工具箱。

安德烈斯加西亚

我开始在openCV工作,我看到它会很容易使用

MATLAB版本兼容性
创建R2014b
兼容R2014b到R2020b
平台的兼容性
窗户 macOS Linux