我关注了许多链接和博客来为 ARM 处理器编译和构建 opencv cpp 应用程序。一个很好的链接是
https://www.learnopencv.com/install-opencv-on-android-tiny-and-optimized/
所有学分归上述博客作者所有。
这个链接非常适合初学者,在第 8 步之前它写得很清楚,我可以按照它进行操作,但从第 9 步开始,它没有正确写明在哪里保存演示应用程序、链接、包含库。它曾经给出一个错误 *.hpp not found。我尝试了所有方法但无法解决。然后我想,让我先构建示例应用程序,附带 opencv sdk。我的做法如下图。
使用的构建设置
一个。 Ubuntu 14.04 并安装了中提到的所有软件包
https://www.learnopencv.com/install-opencv3-on-ubuntu/链接。
b.下载并安装 NDK r14b
c。下载并安装 OpenCV 3.4.1
d。目标 armeabi-v7a(基于 ARM)和 Android API 23
第一次设置需要步骤 1-4
第 1 步:下载和设置 NDK 解压缩并转到 NDK 文件夹
$ ./build/tools/make_standalone_toolchain.py \
--拱臂\
--api 23\
--install-dir /tmp/my-android-toolchain
第 2 步:设置 ANDROID_NDK 路径
$ export ANDROID_STANDALONE_TOOLCHAIN=/tmp/my-android-toolchain/
第 3 步下载并安装 OpenCV 3.4.1
$ cd opencv/
$ mkdir 构建
$ cd 构建
$ cmake -DCMAKE_TOOLCHAIN_FILE=../platforms/android/android.toolchain.cmake -DANDROID_STL=gnustl_shared -DBUILD_EXAMPLES=ON -DANDROID_NATIVE_API_LEVEL=23 ..
(-DBUILD_EXAMPLES=ON 对于构建示例很重要)。
$ make -j4
第 4 步 Neon 和 VFPV3 优化(可选)
对于基于 ARM 的设备,我通常使用以下方式启用优化:
氖
VFPV3
查看platforms/android/android.toolchain.cmake的序言以获得各种配置选项。
第 5 步构建代码
转到工作目录
$ cd path-to-opencv
将新创建的 cpp 文件放在 opencv/samples/cpp/ 中
$ cd build/
$ cmake -DCMAKE_TOOLCHAIN_FILE=../platforms/android/android.toolchain.cmake -DANDROID_STL=gnustl_shared -DBUILD_EXAMPLES=ON -DANDROID_NATIVE_API_LEVEL=23 ..
$ make -j4
第 6 步在 android 上复制并运行
$ cd path-to-opencv
$ adb push build/bin/example_cpp_your_program /system/xbin/
$ adb push build/libs/armeabi-v7a/libgnustl_shared.so /system/lib/ ****(如果需要)****
(对我来说,在执行 cpp 二进制文件时,它说找不到链接库)
$ adb shell
$ cd /system/xbin/
$ ./example_cpp_your_program
此方法在我的 Android 设备上完美运行,无需使用 Android Studio IDE。