在Android中使用Opencv3 : 開發環境建構篇

    在Android裝置中要進行影像處理的話,大家腦中閃過的選項中前幾名一定有使用opencv的module這個選項,因為opencv實在是太強大而且也有各種豐富的資源。

     本文所使用的具體的版本分別是:
                    Android Studio: 3.1
                    compile sdk version: android 8.1
                    OpenCV4Android sdk: 3.4.1
    主要流程:
            下載相關檔案 >> 匯入並調整設定 >> 測試。以下會一步步地圖解各個步驟

    1.下載相關檔案
       需要下載的檔案有
            電腦上: OpenCV4Android sdk,官方介紹在這裡,內文有下載連結,如下圖
                          不要把整個opencv資料夾下載下來
                          下載後面有"-android-sdk.zip"的檔案就好
            手機上: OpenCV Manager (我們的程式需要他才能運作)


    2.在Android studio中新增一個空白專案
       可以將此專案與下載下來的檔案如下圖存放好

    
    3.匯入opencv的module
       sdk中選java的資料夾


    4.解決相容性問題
       出現error
       直接點擊藍色的連結

 5.修改設定檔
       這邊將Android Studio左邊專案總管的模式調到"Project"模式
       打開"app"裡的"build.gradle"
       以及你剛匯入的"OpenCVLibraryXXX"中的"build.gradle"
       我們要將後者的三個參數修改成跟前者相同的
       (也就是以app的build.gradle中的參數為準)
       三個參數分別是
       (1) compileSdkVersion
       (2) minSdkVersion
       (3) targetSdkVersion
       P.S. 舊一點的android sdk中會多一個buildToolsVersion
       但目前新的sdk已經棄用了


 6.設定module的相依性
       對"app"資料夾按右鍵,選擇"Open Module Setting"
       (也可以從上方"File"中的"Project Structure"中的"app"開啟相同視窗)
       按右上角的加號 "+"
       選擇"Module dependency"
       裡面應該只有一個選項,就是opencv的module這個選項
       接著到我們下載好的OpenCV-android-sdk中
       將sdk中native中的libs資料夾複製起來

       然後在專案總管的地方,依樣是project模式
       在app中src中main這個資料夾身上按右鍵貼上
       把名稱設定為jniLibs
       然後他就最出現在專案總管中我們常用的"main"資料夾裡面

7.重建專案
       專案重建之後,我們的開發環境就建構成功了,可以開始寫程式了

8.測試
       這個步驟是直接拿一個小程式讓他跑跑看,看能不能work
       我把他單獨寫成一篇,在這裡
       記得手機上要先安裝Opencv Manager否則會跑不起來喔


參考資料:
[1]Sukriti Paul, "A Beginner’s Guide to Installing OpenCV Android in Android Studio", Medium, 7/23, 2017


好了,今天的筆記到此結束
希望有幫助未來遺忘這些的自己,以及需要的人

留言

  1. 1.gradle project sync failed.Basic functionality(e.g.edting,debugging)will not work properly.)

    2.The minSdk version should not be declared in the android manifest file. You can move the version from the manifest to the defaultConfig in the build.gradle file.
    請問出現這兩個問題 該如何解決

    回覆刪除

張貼留言

這個網誌中的熱門文章