android - 修剪 OpenCV 库

标签 android opencv tesseract

我正在开发一个使用 OpenCV 和 Tesseract 库的 Android 应用程序。我只使用这些库的某些功能。但随着库的加入,应用程序的大小从 4 MB 增加到 50 MB。

我显然需要精简库。我该怎么做?

编辑:为了保持用户友好性,我不想使用 OpenCVManager。我不想强制用户安装另一个应用程序。

EDIT2:我需要对超立方体库做同样的事情。我想这也是同样的原理?

最佳答案

我绝对不确定我要建议什么,但我最近在 GCC 文档中找到了 -gc-sections 选项。在链接时使用,它应该从最终的可执行文件/库中删除所有未使用的代码部分。这可以避免手动修剪 OpenCV,考虑到该库的复杂性,这肯定是一项漫长且相当令人不愉快的任务。

要使用它,您显然必须使用 -ffunction-sections -fdata-sections -Os 编译每个依赖项,然后使用 -Wl,--gc-sections 链接整个代码。也许值得一试!

我在 this page 上找到了一些详细信息.

如果我错了,请随时纠正我!

关于android - 修剪 OpenCV 库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14185669/

相关文章:

Android 原生联系人应用程序删除每个帐户联系人

python - 如何将 numpy 矩阵转换为 OpenCV 图像 [python]

c++ - 错误 LNK2019 : unresolved external symbol Visual Studio 2013 with openCV

Python 超正方 "No such file or directory"

java - 使用 opencv (Java) 的阈值图像

java - 将 JSON 数据传递到 SQLite 并检索它

Android:中心按钮水平。和垂直。在 View 组中

android - Android-Studio 的 Eclipse 错误

OpenCV SURF 关键点比较

java - 使用 Tess4J 生成训练数据