MATLAB调用OpenCV2.4库函数的全过程及问题解决
2013-05-10 13:47
375 查看
MATLAB可以调用OpenCV的库函数这一点也不新鲜,网上关于MATLAB与OpenCV混合编程的文章也不少。先是配置MATLAB编译器,实现MATLAB与VS的混合编程。然后设置OpenCV的安装路径,include路径,lib路径以及DLL文件。跟用VS2010配置OpenCV差不多。因为OpenCV就是一个函数库,主要就是由include头文件,lib静态链接库,dll动态链接库这三部分组成的。
网上关于Matlab调用OpenCV的配置过程大多是参考了这篇文章:
Connecting MATLAB with OpenCV
把这篇文章看完,就能配置完成了。不过这篇文章比较早了,用的OpenCV库是1.0版本的,现在都是2.4版本了。OpenCV1.0和2.0以上的版本相差很大,建议用高版本的OpenCV库。下面讲讲配置高版本OpenCV易出现的问题及解决办法。
错误一:
char16_t redefinition错误。这个简单,看我前面的文章。
错误二:
用mex filename.cpp 编译成功,但是运行时引起MATLAB崩溃。
这是因为运行时库不一致造成的。我们用OpenCV时一般用的debug模式,所以在Matlab中也要设置成debug模式。将mexopts.bat中的编译选项中的/MD改为/MDd即可。如果不知道mexopts.bat,请看我前面的几篇文章。
网上关于Matlab调用OpenCV的配置过程大多是参考了这篇文章:
Connecting MATLAB with OpenCV
把这篇文章看完,就能配置完成了。不过这篇文章比较早了,用的OpenCV库是1.0版本的,现在都是2.4版本了。OpenCV1.0和2.0以上的版本相差很大,建议用高版本的OpenCV库。下面讲讲配置高版本OpenCV易出现的问题及解决办法。
错误一:
char16_t redefinition错误。这个简单,看我前面的文章。
错误二:
用mex filename.cpp 编译成功,但是运行时引起MATLAB崩溃。
这是因为运行时库不一致造成的。我们用OpenCV时一般用的debug模式,所以在Matlab中也要设置成debug模式。将mexopts.bat中的编译选项中的/MD改为/MDd即可。如果不知道mexopts.bat,请看我前面的几篇文章。
相关文章推荐
- MATLAB调用OpenCV2.4库函数的全过程及问题解决
- 面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了;面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为(转)
- 在C#中调用Matlab函数出现的问题以及解决方法
- lamp使用php处理上传文件,调用move_uploaded_file函数遇到目录写权限问题及解决过程
- 运用ORACLE的OO4O类库函数解决调用存储过程向远程数据库上传超过32K图片失败的问题
- csharp编写界面,opencv编写类库,解决 Pinvoke过程中的参数传递和平台调用问题
- JavaScript中七种函数调用方式及对应 this 的含义--解决函数依次调用问题
- [项目实战派]opencv通过dll调用matlab函数,图片作为参数
- 调用PostgreSQL存储过程,找不到函数名的问题
- 关于EF调用存储过程碰到的问题解决过程
- 关于调用strcpy()函数时总是报错问题,5种方法解决!
- 关于OpenCV中矩阵调用自带函数的问题
- 解决:对 PInvoke 函数的调用导致堆栈不对称问题
- 【C++&&OpenCV】解决cvLoadImage等函数不能进行单步调试的OpenCV配置问题
- matlab调用opencv的函数
- asp.net调用word的过程中出现的问题及其解决方法
- QT信号槽的六个优点(虽然直接调用函数也可解决问题,但要在具体的函数中传递指针,多对一和解除关系也够麻烦的)
- Android工程中jni本地调用opencv时,某些函数不识别问题
- QSlider 拖动滑动条使用valueChanged(int value)信号重复调用槽函数问题解决
- Opencv画图函数整理 及 cvCircle cvLine 只能画出黑白两种颜色问题 解决