繁体   English   中英

从运行时的角度来看JavaCV与OpenCV

[英]JavaCV Vs OpenCV from Runtime point of View

我正在构建一个包含图像处理技术的Android应用程序。 从运行时的角度来看,哪种更好的JavaCV或OpenCV?

它们的运行时开销似乎大致相同,但是android-opencv包装器无法通过直接的NIO缓冲区访问原始数据,从而使Java中的自定义处理效率大大降低。 JavaCV对于这些任务更为有效。 作为JavaCV的作者,我也更喜欢它的API :)与android-opencv相比,它更接近原始的C / C ++ API。

编辑:另一个区别是android-opencv强制用户使用NDK和JNI编写函数。 由于JavaCV基于JavaCPP ,因此我们可以更轻松地编写本机函数,而不必处理NDK或JNI。

使用Android NDK编写本地代码通常比使用SDK更快。 您可以在此处找到不错的教程,结合使用带有NDK的opencv。 注意,使用NDK框架,您可以访问openGL函数。

JavaCV只是围绕本机OpenCV库的Java包装器。 OpenCV确实提供了Java / SWIG绑定。 我已经使用了两个绑定,但没有看到两者之间的显着差异。

如果您正在编写仅本机应用程序,请使用本机OpenCV。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM