Opencv jni调用android

Opencv jni调用android,opencv,android-ndk,java-native-interface,Opencv,Android Ndk,Java Native Interface,我想知道jni在android上的调用是否很慢 我在用冰淇淋三明治,用C和openCV做眨眼检测。我基本上是从PreviewCallback调用blinkDetect函数。所以我希望它是20 fps,但它更像是5 fps,有明显的滞后 我在macbook pro上运行了openCV代码,很容易就获得了30 fps的速度,所以我试图找出问题所在 谢谢, 托马斯安卓没有笔记本电脑/台式电脑强大。因此,即使使用本机代码,它的运行速度也不如笔记本电脑/台式机快。您是否考虑过在JNI函数中测量性能-在函数

我想知道jni在android上的调用是否很慢

我在用冰淇淋三明治,用C和openCV做眨眼检测。我基本上是从PreviewCallback调用blinkDetect函数。所以我希望它是20 fps,但它更像是5 fps,有明显的滞后

我在macbook pro上运行了openCV代码,很容易就获得了30 fps的速度,所以我试图找出问题所在

谢谢,
托马斯

安卓没有笔记本电脑/台式电脑强大。因此,即使使用本机代码,它的运行速度也不如笔记本电脑/台式机快。您是否考虑过在JNI函数中测量性能-在函数开始和结束时测量时间,这样您就可以确切地知道在本机代码中花费了多少时间,以及它是否对应于您得到的5fps。这是一个好主意。我试试看。但我担心的是,安卓系统的日志写入速度似乎有点慢,5fps=0.2秒,这是一段很长的时间。你不会注意到log_write call的速度变慢。你的MacBook Pro和Android设备的硬件规格是什么?30fps与5fps是6:1,如果你将一台好的笔记本电脑与低端的ARMv6手机进行比较,这听起来很正常。这可能是你的答案,但我仍在进一步调查: