14

我正在为 Android 开发计算机视觉应用程序。这项工作涉及尽可能快地获取相机帧,因此我尝试使用“android_native_app_glue”和“libnative_camera”直接在 C++ 中构建一个 android 应用程序来获取相机帧。这似乎是不相容的。

我测试了2个选项。

  1. 我尝试在 android NDK 示例“NativeActivity”上使用 OpenCV,只需进行一些必要的更改(将示例转换为 c++,修改 android.mk y application.mk 并包括使用命名空间和包含)它给出以下错误:

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 tocv::fastFree(void *)' 等等

  1. 我尝试导入必要的库以在 OpenCV2.3.1 教程 3 示例上进行本机活动。我只是修改了 Android.mk 并添加了:

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 tocv::fastFree(void*)' 等等...

请问,有没有人用 openCV2.3.1 和 libnative_camera 测试过纯原生活动来获取相机帧?

提前致谢。

4

3 回答 3

1

我在那里解决了问题。这是我的错(像往常一样xD)问题是我在我的Android.mk中写了这一行:LOCAL_STATIC_LIBRARIES := android_native_app_glue,而不是这一行:LOCAL_STATIC_LIBRARIES += android_native_app_glue。我需要“加号”符号,以便添加新库而不是删除以前加载的库。不管怎么说,还是要谢谢你!!

@Adi Shavit - 谢谢

于 2013-05-10T07:48:58.780 回答
0

也许你应该看看V4L界面?你可能想看看这个线程:http ://comments.gmane.org/gmane.comp.handhelds.android.ndk/2824

如果我记得你可以直接从 OpenCV 中的相机开发文件中读取。-詹姆士

于 2011-11-01T16:36:03.943 回答
0

将 LOCAL_STATIC_LIBRARIES := android_native_app_glue 更改为 LOCAL_STATIC_LIBRARIES += android_native_app_glue。注意加号。这将添加新库而不删除先前加载的库。资料来源:Edanna 在评论中

于 2012-08-04T01:07:46.157 回答