Question

Je développe une application de vision par ordinateur pour Android. Ce travail consiste à obtenir des cadres de la caméra aussi vite que possible, donc je suis en train de construire une application android directement en C ++ en utilisant « android_native_app_glue » et « libnative_camera » pour obtenir des cadres de l'appareil photo. Il semble incompatible.

J'ai testé 2 options.

  1. J'ai essayé d'utiliser OpenCV sur l'échantillon android NDK « NativeActivity », juste faire quelques changements nécessaires (exemple de conversion à c ++, modifier android.mk y application.mk et y compris en utilisant les espaces de noms et Includes) Il donne l'erreur suivante:

SharedLibrary: libnative-activity.so C: /Development/android-opencv-wsp/samples/native-activity/obj/local/armeabi-v7a/objs/native-activity/main.o: En fonction ~Mat': C:\Development\android-opencv-wsp\samples\native-activity/../../OpenCV-2.3.1/share/OpenCV/../../include/opencv2/core/mat.hpp:297: undefined reference tocv :: fastFree (void *) » et ainsi de suite

  1. J'ai essayé d'importer les bibliothèques nécessaires pour faire une activité native sur l'échantillon tutoriel OpenCV2.3.1 3. J'ai simplement modifié le Android.mk et a ajouté:

LOCAL_STATIC_LIBRARIES: = android_native_app_glue

Immédiatement, quand j'ajoute cette ligne, je reçois l'erreur suivante: SharedLibrary: libnative_sample.so C: /Development/android-opencv-wsp/samples/tutorial-3-native/obj/local/armeabi-v7a/objs/native_sample/jni_part.o: En fonction ~Mat': C:\Development\android-opencv-wsp\samples\tutorial-3-native/../../OpenCV-2.3.1/share/OpenCV/../../include/opencv2/core/mat.hpp:297: undefined reference tocv :: fastFree (void *) » et ainsi de suite ...

S'il vous plaît, quelqu'un a testé une activité purement native avec openCV2.3.1 et libnative_camera pour obtenir des cadres de l'appareil photo?

Merci à l'avance.

Était-ce utile?

La solution

Changement LOCAL_STATIC_LIBRARIES: = android_native_app_glue à LOCAL_STATIC_LIBRARIES + = android_native_app_glue. Notez le signe plus. Cela ajoutera la nouvelle bibliothèque sans supprimer celui chargé précédemment. Source: Edanna dans les commentaires

Autres conseils

Je résolu le problème. C'était ma faute (comme d'habitude xD) le problème est que j'ecrivais dans mon Android.mk cette ligne: LOCAL_STATIC_LIBRARIES: = android_native_app_glue, au lieu de cette ligne: LOCAL_STATIC_LIBRARIES + = android_native_app_glue. Je avais besoin le symbole « plus », afin d'ajouter la nouvelle bibliothèque et ne pas supprimer le chargé précédemment. Merci quand même!!

@Adi Shavit - thx

Peut-être que vous devriez jeter un oeil à l'interface V4L? Vous pouvez consulter ce fil: http: //comments.gmane. org / gmane.comp.handhelds.android.ndk / 2824

Si je me souviens que vous pouvez lire directement à partir du fichier dans OpenCV dev d'une caméra. -James

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top