我正在为Android开发一个计算机视觉应用程序。 这项工作涉及尽可能快地获取相机帧,所以我试图使用“android_native_app_glue”和“libnative_camera”直接在c ++中构建一个Android应用程序来获取相机帧。 这似乎是不相容的。
我测试了2个选项。
sharedLibrary:libnative-activity.so
C:/Development/android-opencv-wsp/samples/native-activity/obj/local/armeabi-v7a/objs/native-activity/main.o:在函数~Mat':
C:\Development\android-opencv-wsp\samples\native-activity/../../OpenCV-2.3.1/share/OpenCV/../../include/opencv2/core/mat.hpp:297: undefined reference to
cv :: fastFree(void *)中“
等等
LOCAL_STATIC_LIBRARIES:= android_native_app_glue
当我添加此行时,我立即收到以下错误:
SharedLibrary:libnative_sample.so
C:/Development/android-opencv-wsp/samples/tutorial-3-native/obj/local/armeabi-v7a/objs/native_sample/jni_part.o:在函数~Mat':
C:\Development\android-opencv-wsp\samples\tutorial-3-native/../../OpenCV-2.3.1/share/OpenCV/../../include/opencv2/core/mat.hpp:297: undefined reference to
cv :: fastFree(void *)中“
等等...
请问,是否有人使用openCV2.3.1和libnative_camera测试纯粹的原生活动以获取相机帧?
提前致谢。
答案 0 :(得分:1)
我解决了那里的问题。这是我的错(像往常一样xD)问题是我在我的Android.mk中写了这一行:LOCAL_STATIC_LIBRARIES:= android_native_app_glue,而不是这一行:LOCAL_STATIC_LIBRARIES + = android_native_app_glue。我需要“加号”符号,以便添加新库而不删除以前加载的库。不管怎么说,还是要谢谢你!!
@Adi Shavit - thx
答案 1 :(得分:0)
也许您应该看看V4L界面?您可能想查看此主题:http://comments.gmane.org/gmane.comp.handhelds.android.ndk/2824
如果我记得你可以直接从OpenCV中的相机开发文件中读取。 -James
答案 2 :(得分:0)
将LOCAL_STATIC_LIBRARIES:= android_native_app_glue更改为LOCAL_STATIC_LIBRARIES + = android_native_app_glue。注意加号。这将添加新库而不删除以前加载的库。资料来源:Edanna评论