Opencv4.12 Opencv-contrib4.12 for Android 编译 注意事项

 操作系统   Ubuntu 18.04.3 LTS ,

   需要的软件sudo apt-get install ninja-build cmake

1. 在 /etc/profile 中设置环境变量: sdk_parh android studio SDK 路径,ndk_path 为单独下载 android-ndk-20b-linux-x86_64.zip 的路径。

2. 切换到 root 编译,否则出现权限问题。

3. 编译文件修改 对函数修改,否则出错

ef check_executable(cmd):
    try:
        log.debug("Executing: %s" % cmd)
        result = subprocess.check_output(cmd, stderr=subprocess.STDOUT)
        log.debug("Result: %s" % (result+b'\n').split(b'\n')[0])
        return True
    except Exception as e:
        log.debug('Failed: %s' % e)
        return False

4.  java 版本 java 1.8 版本,用解压版本,不用  apt install 版 ,出现 tools.jar 找不到

5.安装过程 出现找不到文件问题,下载后 覆盖到 opencv_contrib-4.1.2/modules/xfeatures2d/src

url https://raw.githubusercontent.com/opencv/opencv_3rdparty/34e4206aef44d50e6bbcd0ab06354b52e7466d26/boostdesc_lbgm.i > 0ae0675534aa318d9668f2a179c2a052-boostdesc_lbgm.i

curl https://raw.githubusercontent.com/opencv/opencv_3rdparty/34e4206aef44d50e6bbcd0ab06354b52e7466d26/boostdesc_binboost_256.i > e6dcfa9f647779eb1ce446a8d759b6ea-boostdesc_binboost_256.i

curl https://raw.githubusercontent.com/opencv/opencv_3rdparty/34e4206aef44d50e6bbcd0ab06354b52e7466d26/boostdesc_binboost_128.i > 98ea99d399965c03d555cef3ea502a0b-boostdesc_binboost_128.i

curl https://raw.githubusercontent.com/opencv/opencv_3rdparty/34e4206aef44d50e6bbcd0ab06354b52e7466d26/boostdesc_binboost_064.i > 202e1b3e9fec871b04da31f7f016679f-boostdesc_binboost_064.i

curl https://raw.githubusercontent.com/opencv/opencv_3rdparty/34e4206aef44d50e6bbcd0ab06354b52e7466d26/boostdesc_bgm_hd.i > 324426a24fa56ad9c5b8e3e0b3e5303e-boostdesc_bgm_hd.i

curl https://raw.githubusercontent.com/opencv/opencv_3rdparty/34e4206aef44d50e6bbcd0ab06354b52e7466d26/boostdesc_bgm_bi.i > 232c966b13651bd0e46a1497b0852191-boostdesc_bgm_bi.i

curl https://raw.githubusercontent.com/opencv/opencv_3rdparty/34e4206aef44d50e6bbcd0ab06354b52e7466d26/boostdesc_bgm.i > 0ea90e7a8f3f7876d450e4149c97c74f-boostdesc_bgm.i

cd …/vgg

curl https://raw.githubusercontent.com/opencv/opencv_3rdparty/fccf7cd6a4b12079f73bbfb21745f9babcd4eb1d/vgg_generated_120.i > 151805e03568c9f490a5e3a872777b75-vgg_generated_120.i

curl https://raw.githubusercontent.com/opencv/opencv_3rdparty/fccf7cd6a4b12079f73bbfb21745f9babcd4eb1d/vgg_generated_64.i > 7126a5d9a8884ebca5aea5d63d677225-vgg_generated_64.i

curl https://raw.githubusercontent.com/opencv/opencv_3rdparty/fccf7cd6a4b12079f73bbfb21745f9babcd4eb1d/vgg_generated_48.i > e8d0dcd54d1bcfdc29203d011a797179-vgg_generated_48.i

curl https://raw.githubusercontent.com/opencv/opencv_3rdparty/fccf7cd6a4b12079f73bbfb21745f9babcd4eb1d/vgg_generated_80.i > 7cd47228edec52b6d82f46511af325c5-vgg_generated_80.i

6.解决不能找打 xfeature2d.hpp 问题

把 opencv_contrib-4.1.2/modules/xfeatures2d/include/opencv2  的xfeatures2d 目录 和xfeatures2d.hpp 拷贝到

opencv-4.1.2/modules/features2d/include

7. 运行python 脚本 

  python build_sdk.py  --ndk_path $ANDROID_NDK --sdk_path $ANDROID_SDK --extra_modules_path /home/asu/soft/opencv_build/opencv_contrib-4.1.2/modules ../../../build ../..
 

8.结果

-- Installing: /home/asu/soft/opencv_build/build/o4a/install/samples/tutorial-3-cameracontrol/src/org/opencv/samples/tutorial3
-- Installing: /home/asu/soft/opencv_build/build/o4a/install/samples/tutorial-3-cameracontrol/src/org/opencv/samples/tutorial3/Tutorial3Activity.java
-- Installing: /home/asu/soft/opencv_build/build/o4a/install/samples/tutorial-3-cameracontrol/src/org/opencv/samples/tutorial3/Tutorial3View.java
-- Installing: /home/asu/soft/opencv_build/build/o4a/install/samples/tutorial-3-cameracontrol/AndroidManifest.xml
-- Installing: /home/asu/soft/opencv_build/build/o4a/install/samples/tutorial-3-cameracontrol/build.gradle
Copy dir: sdk
Copy file: README.android
Copy file: LICENSE
Copy dir: samples
=====
===== Build finished
=====
SDK location: /home/asu/soft/opencv_build/build/OpenCV-android-sdk

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章