美文网首页OpenCv
android studio OpenCV & Open

android studio OpenCV & Open

作者: KennGM | 来源:发表于2017-09-13 14:41 被阅读239次

    本来想用sift算法写个安卓小程序的

    没想到这么麻烦,开始使用OpenCV4Android 开发包 发现要安装OpenCV 3.2.0 Manager.apk

    用户体验不好

    但是秉着试试先 结果试都试不了 后来才发现sift没有需要在OpenCV_contrib中,然后查了一下发现要使用sift算法的话需要把两个包编译一下。

    然后逗逼的我直接https://github.com/opencv/opencv https://github.com/opencv/opencv_contrib克隆了这两个工程 然后就开始编译 然后用了

    cmake shell cmake.gui

    这些方法各种各样搞了我两个礼拜都没编译好

    这些又要改vim ~/.bash_profile

    加一句 export PATH=${PATH}:/android-ndk 

    但是配来配去依旧不行,编译一般就坏了 去群里问也没人知道没人回答 每天都想放弃 感觉好浪费时间 但是每天快要说不搞的时候 有给我看见希望 感觉就快成功了 今天总算成功了 在他编译的这个期间我打算写出来告诉大家


    第一步 

    下载OpenCV 和Contrib 在https://github.com/opencv/opencv上下载

    但是下载的时候要注意选择对应的tags

    OpenCV 和Contrib版本要相同 我下的是3.2.0-rc

    第二步

    安装 brew install ant

     不装会报 

    Executing: ['ninja', 'opencv_engine'] 

    ninja: error: unknown target 'opencv_engine'

    这样的东西

    还要装 brew install ninja

    第三步

    在opencv的目录下

    platforms-->Android--> 有个 build_sdk.py

    我们就用它来编译我们的o4a

    打开当前目录下的控制台输入

    python build_sdk.py /Users/SoftwareCollect/opencv/opencv_android/ /Users/SoftwareCollect/opencv/opencv --sdk_path=/Users/Applications/adt-bundle-mac-x86_64-20140702/sdk --ndk_path=/android-ndk --extra_modules_path=/Users/SoftwareCollect/opencv/opencv_contrib/modules

    python build_sdk.py <生成目录> <opencv源码目录> --sdk_path=<sdk目录> --ndk_path=<ndk目录> --extra_modules_path==<opencv_contrib/modules目录>

    一行输完  这样就能解决找不到sdk 找不到ndk的问题 另外也不用两次编译

     其他参数参考build_sdk.py里面

    build_sdk.py节选

    如果顺利你将和我一样得到下面这图 感人的build successful 那就说明你构建成功了 

    另外说明一下 ndk最好是r10d以下的 http://dl.google.com/android/ndk/android-ndk-r10d-darwin-x86_64.bin 

    sdk要用旧版的 不然会

    lib_target_sdk_target-NOTFOUND

    The "android" command is deprecated.

    For manual SDK, AVD, and project management, please use Android Studio.

    我直接用eclipse里面的sdk就可以了

    相关文章

      网友评论

        本文标题:android studio OpenCV & Open

        本文链接:https://www.haomeiwen.com/subject/ngyksxtx.html