2012-09-20 163 views
6

我需要制作一个图像识别应用程序。我正在浏览OpenCV教程,它说我需要从谷歌播放安装OpenCV管理器,我认为从用户的角度来看并不好。但经过数小时的挖掘,我注意到OpenCV是最流行和最可靠的。有什么好的OpenCV替代方案,它不需要安装另一个应用程序。什么是OpenCV的静态初始化。如果我不想安装OpenCV管理器,那么我应该知道NDK有多好。Android - OpenCV的替代方案?

回答

1

静态初始化是OpenCV管理器的替代方案,它的库包含在apk中(就像过去一样),用户不需要安装管理器。此外,开发人员正在努力使管理器部署应用程序的方式对用户更加流畅。

+1

好的,还有一个问题。如果我做了静态初始化,我需要在我的lib文件夹中添加哪些文件。 OpenCV教程给了我一个关于它如何工作的模糊图片。我检查了native/libs里面的文件,这些文件的大小是我不会添加的。他们如何拥有一个375kb的应用OpenCV管理器,可以完成所有需要大量文件的工作。我觉得我很困惑。你能否解释一下这个lib文件夹中的哪些文件需要在我的应用程序中工作。 – Varundroid

+0

抱歉问新手的东西,但我从来没有做过这样的事情。 – Varundroid

+1

OpenCV管理器为375kb,因为它会提示您下载一个取决于您的智能手机CPU的几MB的库。在执行静态方法时,必须手动包含该lib。从这些“巨大”的文件中,您必须为目标设备选择一个正确的文件或将它们全部包含在内。我想如果你包含他们所有的应用程序不会超过25Mb,对吧? –

2

如果你愿意,你可以在你自己的软件包中发布OpenCV,你并不需要经理。如果你在你的软件包中运行OpenCV,你可以在本地级别(C/C++)使用它,但是你也可以直接在Java级别使用它。

+0

+1。感谢您的回答。 – Varundroid

+0

重要提示:OpenCV管理器包含使用gnustl_static编译的本地opencv库...如果您的C++代码也使用gnustl_static编译,这可能会导致可怕的崩溃!只需在NDK的文档页面阅读CPLUSPLUS-SUPPORT.html的“静态运行时间”部分 – Sdra

1

也许你可以使用Qualcomm的库Vuforia。我从来没有用过它,但我听说过很多。

+0

Vuforia是一个很大的AR东西。我不能在我的应用程序中添加那么多的开销,但仍然感谢您的建议。 – Varundroid