2012-05-21 45 views
25

首先,我想让你知道我非常喜欢OpenCV。我一直在使用它很长一段时间,并且我非常使用它,所以我可以一方面指望上个月我必须查看文档的次数。 我认为这实际上是您每天使用计算机视觉工作时要使用的那种工具。我应该停止使用OpenCV吗?

虽然我越来越觉得Opencv真的不适合使用应用程序。 我正在研究宠物项目,这些宠物项目可以被任何人轻松地安装。

最后一个版本的OpenCV没有提供exes,而且Linux软件包已经过时了,我甚至不敢使用它们。因此,最好的解决办法是,大多数情况下编译。 思考移动应用程序或云计算时(even though the solution seem to exist)也一样。

所以我的问题是,你们是怎么做的?在我周围的地方有很多基于计算机视觉的应用程序,基于云,基于移动的,。 。 。你用什么工具?

我会寻找一些可用于最多平台的东西,但最重要的是,通过应用程序轻松实现。

我在网上搜索了很多,但总是回到OpenCV是计算机视觉的'最佳'工具。

我很乐意接受任何解决方案/语言/工具/框架。

谢谢!

+0

虽然我对OpenCV的工作压力太大,我有同样类型的问题,如果我完成的Android NDK使用的OpenCV提出申请,它给我提供下载OpenCV的经理等在移动运行的应用程序,它看起来太多进攻客户下载一个应用程序运行另一个应用程序,如果静态配置它使得应用程序非常沉重,如13-20 mb! – AHF

回答

40

OpenCV是目前可用的最佳开源计算机视觉库

人们一直在使用它在多种平台和设备等方面有一

唯一realiable办法,我知道要分发的OpenCV申请建立自己的图书馆和船舶OpenCV的二进制文件与应用程序一起。

有工具,有可以帮助你列出和检索您的应用所需的库:

+0

嗨,感谢您的帮助!我会看看!我也投票支持OpenCV的肯定,但我真的认为这是一个相当一块工作轻松分发 – jlengrand

+0

确实是这样,但主要是因为OpenCV的并不意味着最终用户。 – karlphillip

+0

因此我的问题:)。在我以前的公司,我从来没有关心这个,因为我们在那里与软件一起 – jlengrand

10

我使用OpenCV进行PC,Linux和Android手机和平板电脑,而我们发现的最有效的方法是使用CMake的编译并生成项目。这是第一次有点棘手,但它自动建立你的项目真的很舒服。 OpenCV附带一个文件FindOpenCV.cmake,它允许cmake找到OpenCV文件夹到您的项目的链接。

我认为OpenCV是您可以找到的最好的库,尽管有些算法对于像平板电脑和手机这样的ARM设备来说速度不够快。我们所做的是分析编译器生成的汇编代码,然后尝试通过例如使用定点算术来优化瓶颈OpenCV函数。

希望你觉得这有帮助。

+0

谢谢你的信息。过去我已经为ARM设备执行过一些这样的事情。我真的很想念的是关于这个主题的一些很好的文档。我会深入研究这些文件 – jlengrand

5

只是添加到已经很好的答案。为什么它使完整意义上的小总结留在OpenCV的:

  1. 它在BSD松散许可
  2. 它通过StackOverflow上或者雅虎集团大和仍在增长的开发团队
  3. 的Avid支持团体
  4. 价格,或缺乏:)

要还多少你得到免费使用的OpenCV进一步竖琴,考虑Ohloh's估计为2849367行代码的成本。这将花费你大约4500万美元来支付别人来开发它。

请注意,如果您需要OpenCV的Ubuntu快速包,Gijs Molenaar的PPA值为2.3。我想他很快就会获得2.4。

-1

如果您需要最新版本的OpenCV,您可以考虑滚动发布的Gnu/Linux发行版。像Archlinux,Gentoo,Linux Mint Debian Edition(使用debian测试回购)。当然,滚动发行版发行版与固定发行版发行版相比具有缺点,但是它决定权衡利弊并选择一个。

我正在使用ArchLinux。它相当稳定。 OpenCV版本 - 2.4.9,最新版本。

0

我同意其他消息:今天,openCV是最好的(也是唯一的......)计算机视觉库。

在开源世界中,您也可以检查Scilab,Octave,但是打包最终应用程序很复杂。

不要忘记,你有一些像MVTech公司的Halcon一样好的临时库。

但我也同意openCV需要改进他的编译工具/库等... 为什么对于我的应用程序,我决定删除openCV并重写我需要的函数。我只使用openCV作为原型。

我也很后悔C++的选择,核心图像处理算子只需要大部分情况下的C语言。我更喜欢2级库:C中的核心,C++(或Python)中的上层。

最佳方面

0

OpenCV的最后一个版本不会与前男友出货, 你的意思是二进制安装程序?那么,它们可用于某些平台,而不适用于其他平台。

当谈到性能,质量和价格(免费)时,其他工具都无法与OpenCV相匹配。对于那些有编程经验的人来说,最初的学习曲线并不是什么大问题。无可否认,OpenCV没有类似PD/MAX的界面,像艺术家这样的人可以快速建立原型。我希望我有时间来处理这个问题。

0

你绝对应该继续使用你说的你喜欢的免费库,你已经记住了API,并且解决了你需要解决的问题。

总有一天,网络效应可能会迫使你到一个新的平台,但在那之前,专注于制作!