我一直在使用OpenCV很长一段时间,并想知道是否切换到MATLAB将是一个好主意。据我所知,它们都与基于OpenCV底层库的MATLAB相同。 OpenCV是开源的,这是一个明确的优势,并支持更多的平台。MATLAB与OpenCV
我想特定于瞳孔检测算法,所以我需要的结果是非常精确的。
有没有人知道MATLAB的速度或处理或内置功能的任何优势?
我一直在使用OpenCV很长一段时间,并想知道是否切换到MATLAB将是一个好主意。据我所知,它们都与基于OpenCV底层库的MATLAB相同。 OpenCV是开源的,这是一个明确的优势,并支持更多的平台。MATLAB与OpenCV
我想特定于瞳孔检测算法,所以我需要的结果是非常精确的。
有没有人知道MATLAB的速度或处理或内置功能的任何优势?
你还没有提到你如何使用OpenCV,所以我打算假设你使用的是C++;如果你正在使用Python,请read this page ..
如果你打算use GPU for processing,那么我建议你坚持C++。当然,也有otheroptimizations你可以做你的代码loads ..
对于MATLAB,也有一些fairly basic things可以做,以及..
在一天结束的时候,我要说的是,您越接近机器级语言,更好的性能将是。但是,当然,使用C可能会很痛苦,因为存在编写未优化代码和内存泄漏的机会。出于这个原因,C++提供了最好的折衷..
HTH
你的问题并没有真正意义。
OpenCV是一个用于执行计算机视觉任务的C++库。除了C++之外,通过绑定还支持其他编程语言。
MATLAB是一个完整的科学套件,包含一个拥有自己语言的海量IDE。
如果你想让你的代码在MATLAB中运行,那么你编写MATLAB代码。但是,你还需要安装一个4GB的IDE,并支付相当昂贵的许可证。
我个人的选择是使用OpenCV和Python语言绑定,因为这给了我一个很好的脚本界面来完成矩阵操作(可以说比MATLAB更混乱),同时仍然可以轻松访问OpenCV函数。
如果你已经知道OpenCV,那么坚持使用OpenCV。目前,OpenCV是用于计算机视觉的最全面的开源库,它拥有庞大的用户群。 OpenCV比Matlab有更多的计算机视觉功能。它的许多功能都是在GPU上实现的。图书馆正在不断更新(大约每3到4个月发布一次更新版本)。一般而言,C++ OpenCV代码的运行速度比Matlab代码快(如果速度不够快,可以通过优化源代码使其速度更快)。
Matlab对于快速原型设计非常有用,而且Matlab代码非常易于调试。它有很好的文档和支持。但是,正如其他人所说的,Matlab不是开源的,它的许可证非常昂贵,而且它的程序不可移植。 Matlab是一种解释型语言,它会对其性能产生负面影响。性能在计算机视觉方面很重要,特别是如果您正在进行实时视频处理。它的程序也可以做得很快,但是你必须依赖高级功能(即内置函数专业用C语言编写),mex函数(您自己编译的C代码),您将不得不学习如何矢量化代码以实现可观的速度。
如果你真的了解opencv意味着definitly你永远不会考虑从opencv切换到matlab。
您也可以使用opencv与python或cpp甚至java等。
其实,你不应该只考虑opencv来完成你的整个任务。
像opencv一样,其他库也存在。
例如,
numpy的 - >快速数值计算
matplotlib - >以显示图形窗口等,如MATLAB。
scipy - >用于快速科学计算。
如果使用your_programming_language +的OpenCV + matplotlib + numpy的+ SciPy的 definitly你会想知道的OpenCV。 而且,不要担心如何将这些库混合在一起。只要提及他们的名字,并做你的实际编码。就这样。
坚持OpenCV并使用其Python绑定进行超快速开发。 – Pithikos