¿Cómo usar Java con NDK Android?
opencv jni (2)
¿Su aplicación requiere la interfaz C? OpenCV en realidad lo considera obsoleto / hecho con, la nueva API es C ++. Un puerto de esta interfaz y la aplicación de calibración de muestra están aquí: http://code.google.com/p/android-opencv/
Me llevó un tiempo venderme el nuevo C ++, pero tuve que admitir que era agradable no tener que hacer cvReleaseMat () y seguir y volver entre IplImage y CvMat todo el tiempo. Documento de Opencv 2.1: http://opencv.willowgarage.com/documentation/cpp/index.html
Asumo que usando el código OpenCV aquí: http://github.com/billmccord/OpenCV-Android#readme es la mejor manera de usar OpenCV en Android, con el NDK.
Todavía estoy atascado en cuanto a cómo me sale de las definiciones de C de funciones a las que declaro en OpenCV.java en mi proyecto de Android
cvFindContours( void* img, CvMemStorage* storage,
CvSeq** firstContour, int cntHeaderSize,
int mode,
int method, CvPoint offset ) --> findContours(int[]
data, int w, int h) )
Cualquier ayuda / consejos apreciados, incluso donde comenzar a resolver esto. Actualmente quiero usar cvHoughCircles, cvHoughCircles(CvArr* image, void* circle_storage, int method, double dp, double min_dist, double param1 = 100, double param2 = 300, int min_radius = 0, int max_radius = 0};
¿Cómo escribo esto en Java con ndk para Android?
Mire las muestras de Android dentro del ndk (hello-jni). Están en el directorio de aplicaciones del NDK. Muestran cómo importar la biblioteca y llamar a métodos nativos. En el lado C de las cosas tienes que dar a tus métodos las convenciones jni naming adecuadas Java _... nombre de la clase java completamente calificado, hacer métodos externos y también incluirlos para hacerlos accesibles.
También el directorio de documentos del NDK tiene toda la documentación sobre cómo compilar y ejecutar código nativo.