我们什么时候需要NDK for OpenCV Android

Rya*_*ner 6 android opencv android-ndk

我刚刚开始学习Android的OpenCV,我已经玩了一下它一切正常.

我安装了NDK并设法运行包含它的一些示例应用程序.

我不清楚我们需要什么NDK.我在文档中的任何地方都找不到它.

是否有常规库2.4.8中没有的OpenCV功能?

是这样我们可以使用其他人提供的用c ++编写的模块,而不是用java重写它们吗?

Dar*_*han 5

我一直在使用NDK进行申请,以下是我的观察.

  1. 是的,它提供了使用大量可用的c ++模块的优势.
  2. 如果您已经在使用C++中的openCV库进行计算机视觉应用程序编程方面有一些经验,那么您不必在java中学习新的语法(有时会非常恼人).
  3. 使用NDK为你的应用程序可以在
    性能方面给你一个轻微的优势,你做的图像处理是计算要求(我不太确定这是因为为Android提供的openCV库只是相同的头文件和东西的包装器并且几乎应该提供与NDK相同的性能.我自己从未真正比较过性能,但已经在各种博客中读到NDK更快了).
  4. 使用NDK时你必须要小心的一件事是从JAVA到NDK的呼叫,或者相反,这些呼叫在性能方面可能非常昂贵(需要仔细规划).
  5. 将几个参数(如MAT的数组从JAVA传递到NDK)有点令人头疼,但您可以找到一些解决方法.

根据您可能从各种来源以及您的编程优势中发现的这些和其他因素,您可以决定是否要使用NDK.从来没有真正有一套指导方针可以说你可以使用NDK,如果满足条件,那么人们就会从哪种编程风格开始,他们会更舒服.