图像缩略图

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

使用OpenCV的算法在MATLAB

100个下载

更新2020年3月18日

计算机视觉系统工具箱OpenCV的接口使您能够将现有的OpenCV的文件和项目到MATLAB使用MEX。支持包包万博1manbetx括:
MATLAB和OpenCV之间•数据类型转换
•说明如何连接的OpenCV和MATLAB
从您的操作系统或开口内MATLAB中.mlpkginstall文件将开始为您提供有释放的安装过程。这.mlpkginstall文件是R2014b及以后的功能。
观看此视频以了解更多有关该软件包:http://youtu.be/BasC2jkgyaM

评论和评分(33

在哪里可以样品.cpp文件从下载?

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

我使用MATLAB 2018B与Visual Studio 2017年
我已经下载的OpenCV和mexOpenCV并建成make文件。但是,当我用mexOpenCV,每次有错误“未定义的函数或变量“mexOpenCV”。
需要帮助
问候

我使用MATLAB2018a与Microsoft Visual STDIO C ++ 2017年
但错误是可见的编译器不兼容?

鹰王

这是真正有用的,我也跟着视频,并得到了附加的工作。
但没有字幕这是不友好的非英语......

arusa汗

我有Matlab的R2016a和MEX配置为使用 '微软的Visual C ++ 2015年职业(C)'。
我设法测试文件detectORBFeaturesOCV.cpp和extractORBFeaturesOCV.cpp编译成mexw64文件,但运行testORBFeaturesOCV.m在调用任何上述功能严重崩溃Matlab的。它是由于2015年的C ++编译器?
好心帮我解决这个问题。
我也用R2014b和R2017a,但它给了我同样的错误,当我运行TestORBFeaturesOCV.m文件。
谢谢!

我也越来越对编译错误:

>> mexOpenCV backgroundSubtractorOCV.cpp
与 'MinGW64编译器(C ++)' 建设。
使用mexOpenCV误差(线136)
C:\用户\ PERIG〜1.VEN \应用程序数据\本地\ TEMP \ mex_329972900989911_14272 \ backgroundSubtractorOCV.obj:backgroundSubtractorOCV.cpp :(文本+ 0x365):未定义参考`ocvMxArrayToImage_uint8(mxArray_tag常量*,布尔)”
C:\用户\ PERIG〜1.VEN \应用程序数据\本地\ TEMP \ mex_329972900989911_14272 \ backgroundSubtractorOCV.obj:backgroundSubtractorOCV.cpp :(文本+ 0x3c3):未定义参考`ocvMxArrayFromImage_bool(CV ::垫常量&)”
C:\用户\ PERIG〜1.VEN \应用程序数据\本地\ TEMP \ mex_329972900989911_14272 \ backgroundSubtractorOCV.obj:backgroundSubtractorOCV.cpp :(文本+ 0x453):未定义参考`CV :: fastFree(无效*)”
C:\用户\ PERIG〜1.VEN \应用程序数据\本地\ TEMP \ mex_329972900989911_14272 \ backgroundSubtractorOCV.obj:backgroundSubtractorOCV.cpp :(文本+ 0x4c0):未定义参考`CV :: fastFree(无效*)”
C:\用户\ PERIG〜1.VEN \应用程序数据\本地\ TEMP \ mex_329972900989911_14272 \ backgroundSubtractorOCV.obj:backgroundSubtractorOCV.cpp :(文本+ 0x4d5):未定义参考`CV ::垫:: DEALLOCATE()”
C:\用户\ PERIG〜1.VEN \应用程序数据\本地\ TEMP \ mex_329972900989911_14272 \ backgroundSubtractorOCV.obj:backgroundSubtractorOCV.cpp :(文本+ 0x4e4):未定义参考`CV ::垫:: DEALLOCATE()”
C:\用户\ PERIG〜1.VEN \应用程序数据\本地的\ Temp \ mex_329972900989911_14272 \ backgroundSubtractorOCV.obj:backgroundSubtractorOCV.cpp :(文字$ _ZN2cv3MatD1Ev [_ZN2cv3MatD1Ev] + 0×22):未定义的引用`CV ::垫::解除分配()”
C:\用户\ PERIG〜1.VEN \应用程序数据\本地\ TEMP \ mex_329972900989911_14272 \ backgroundSubtractorOCV.obj:backgroundSubtractorOCV.cpp :(文本$ _ZN2cv3MatD1Ev [_ZN2cv3MatD1Ev] + 0x86可以):未定义参考`CV :: fastFree(无效*)”
C:\用户\ PERIG〜1.VEN \应用程序数据\本地\ TEMP \ mex_329972900989911_14272 \ backgroundSubtractorOCV.obj:backgroundSubtractorOCV.cpp :( text.startup + 0x3b):未定义参考`CV :: createBackgroundSubtractorMOG2(INT,双,布尔)”
collect2.exe:错误:LD返回1个退出状态

arusa汗

>> MEX -setup C ++
它给了我使用MEX这个错误
不支持万博1manbetx的编译器或SDK被发现。您可以安装免费提供的MinGW-W64 C / C ++编译器;请参阅安装
MinGW的-W64编译器。如需更多选项,请访问://www.tianjin-qmedu.com/万博1manbetxsupport/compilers/R2016a/win64.html

我用MATLAB r2016a,并且已经安装了VS2015和TDM-GCC-4.9.2。
请人帮我解决这个问题

>> MEX -setup C ++
MEX配置为使用 '微软的Visual C ++ 2015年' 为C ++语言编写。
警告:本MATLAB C和Fortran API已更改为支持MATLAB万博1manbetx
具有超过2 ^ 32-1元件变量。你将被要求
更新您的代码,以利用新的API。
你可以找到关于这个的更多信息:
//www.tianjin-qmedu.com/help/matlab/matlab_external/upgrading-mex-files-to-use-64-bit-api.html

要选择不同的C ++编译器,选择一个从以下方面:
微软的Visual C ++ 2015年MEX -setup:C:\用户\ maksa \应用程序数据\漫游\ MathWorks公司\ MATLAB \ R2018a \ mex_C ++ _ win64.xml C ++
微软的Visual C ++ 2017年MEX -setup: 'C:\ Program Files文件\ MATLAB \ R2018a \ BIN \ Win64的\ mexopts \ msvcpp2017.xml' C ++
>> mexOpenCV detectORBFeaturesOCV.cpp
使用mexOpenCV误差(线63)
OpenCV的库使用“微软的Visual C ++ 2015年”建成。
你的编译器是 '微软的Visual C ++ 2017年(C)'。
这些编译器可能不兼容。
请注意,您可以使用“MEX -setup”命令中选择一个编译器。

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

李思远

OpenCV的库使用“微软的Visual C ++ 2015年”建成。
你的编译器是 '微软的Visual C ++ 2017年(C)'。
这些编译器可能不兼容。
请注意,您可以使用“MEX -setup”命令中选择一个编译器。

无法在Matlab2018a使用

崔永元:我们已经更新了Windows中支持的编译器万博1manbetx是Visual Studio的2015年,您会不会有兼容性问题在这里。
马杜:我不完全理解你想在MEX例程内可视化的东西。是的,不包括你列出的库。你可以考虑运行在您的MEX文件中的每个迭代,并返回到MATLAB使用imshow / imread到显示器或阅读一个新的形象。如果这不回答你的问题,请考虑更多的细节与技术支持。万博1manbetx
在OpenCV的版本而言,直到R2017a,使用版本2.4.9。从R2017a开始,我们使用的版本3.1.0。这很可能在将来的版本改变。
谢谢!

问:在mexOpenCV.m,有需要注意的是一些图书馆(opencv_highgui,opencv_imgcodecs等)不包括在内。如果我们想一个MEX例行内可视化效果,例如与迭代,将包括mexOpenCV.m工作opencv_imgcodecs期间的OpenCV的imshow?还是我们必须使用Matlab的imread与“mexCallMATLAB”?

商信HD

感谢您的支持!万博1manbetx

商信HD

崔永元

警告:在OpenCV库使用“微软的Visual C ++ 2012的内置。
你的编译器是“微软的Visual C ++ 2015年专业”。
这些编译器可能不兼容。我怎样做?

终于拿到了它R2016b工作。它只会与Visual Studio 2012专业版C ++编译器编译(不是免费的Express版本!)。值得庆幸的是我通过我的大学访问它。

我也找不到哪个OpenCV的版本支持的任何信息。万博1manbetx

班尼

你好
我使用它不能连接到互联网的计算机脱机。是否有可能得到这个包的任何地方的离线安装?

感谢您的答复。

班尼

都包含在这个套件什么版本的OpenCV的库?

杨斌

无法在Matlab2016使用

杨斌

当试图在文件辊开,我得到的错误信息:
无法打开 “opencvinterface-1.mlpkginstall”。不支持存档类型。万博1manbetx

Eslam FOAD

好!

我收到以下错误R2015a,和我使用的Xcode 7.如果我删除了CV :: imdecode()函数。它编译,但我需要使用CV :: imdecode()函数!

使用mexOpenCV误差(线120)
对于建筑未定义符号
x86_64的:
“CV :: imdecode(CV :: _ InputArray常量和,
INT)”,从引用:
_mexFunction在decodeUDPimg.o
LD:符号(多个)未找到架构
x86_64的
铛:错误:连接命令失败
退出代码1(使用-v看调用)

问题是什么?

请,
使其在常规形式(不仅是一个工具箱)提供。

谢谢。

谢尔盖

嗨!
我有Matlab的R2015b和MEX配置为使用 '微软的Visual C ++ 2015年职业(C)'。
我已经成功地测试文件detectORBFeaturesOCV.cpp和extractORBFeaturesOCV.cpp编译成mexw64文件,但运行testORBFeaturesOCV.m在调用任何上述功能严重崩溃Matlab的。它是由于2015年的C ++编译器?我应该只使用2012版本或者我可以使用一些键/标志,使其工作?
谢谢!

我只是不明白这是工作仅在2014B或超越的原因。由于2014A的家庭版用户,这将是一个更容易对我来说,过境MATLAB代码与此包OpenCV的,但我不能这样做,因为一个字母之差的。为了使用新版本,我必须再次购买MATLAB和所有的工具箱。

我开始工作在OpenCV中我看到,将很容易使用

MATLAB版本兼容性
创建与R2014b
与R2014b到R2020a兼容
平台兼容性
视窗 苹果系统 Linux的