2012-02-27 4 views
2

나는 이미지 처리 기술을 포함하는 안드로이드 애플 리케이션을 만들고있다. 런타임 관점에서 더 나은 JavaCV 또는 OpenCV가 무엇입니까?JavaCV 대 OpenCV 관점에서

답변

0

Android NDK를 사용하여 기본 코드를 작성하는 것이 일반적으로 SDK를 사용하는 것보다 훨씬 빠릅니다. opencv with NDK를 사용하여 멋진 자습서 here을 찾을 수 있습니다. NDK 프레임 워크에서는 OpenGL 함수에 액세스 할 수 있습니다.

0

JavaCV는 기본 OpenCV 라이브러리를 둘러싼 Java 래퍼입니다. OpenCV는 Java/SWIG 바인딩을 제공합니다. 두 바인딩을 모두 사용했지만 두 바인딩 사이에는 큰 차이가 없었습니다.

네이티브 전용 응용 프로그램을 작성하는 경우 기본 OpenCV를 사용하십시오.

5

런타임 오버 헤드가 거의 같지만 android-opencv 래퍼는 직접 NIO 버퍼를 통해 원시 데이터에 액세스하지 못하므로 Java에서 사용자 정의 처리가 훨씬 효율적이지 않습니다. JavaCV는 이러한 작업에 더 효율적입니다. JavaCV의 저자이기 때문에 나는 또한 API가 더 좋다 :) android-opencv보다 원래의 C/C++ API에 더 가깝다.

편집 : 또 다른 차이점은 android-opencv는 사용자가 NDK와 JNI를 사용하여 함수를 작성하도록합니다. JavaCV는 JavaCPP을 기반으로하므로 NDK 나 JNI를 다루지 않고도보다 쉽게 ​​네이티브 함수를 작성할 수 있습니다.