Andorid NDK 開發(二)---OpenCV 環境配置
阿新 • • 發佈:2018-12-27
AndoridNDK開發(二)—OpenCV 環境配置
主要描述了在Android採用計算機視覺庫OpenCV。該文章只是講述了採 用OpenCV在AndroidStudio中設定使用,但只是一部分,因為熟悉OpenCV 知道一般分為兩個部分: 1)Opencv:包含Opencv基礎 2)Opencv_contrib:擴充套件包 OpenCV:是一個基於BSD許可(開源)發行的跨平臺計算機視覺庫,可以 可以執行在Linux、Windows、Android和Mac OS作業系統上。它輕量級 而且高效——由一系列 C 函式和少量 C++ 類構成,同時提供了Python、 Ruby、MATLAB等語言的介面,實現了影象處理和計算機視覺方面的很多 通用演算法。[百度百科] 文章流程: 1.開發準備 2.AndroidStudio配置Opencv 注意: 這裡採用AndrodioStudio3.0
1.開發準備
主要講述在開發OpenCV的時候,一些準備。
1)下載Opencv
連線:https://sourceforge.net/projects/opencvlibrary/files/opencv-android/3.4.1/opencv-3.4.1-android-sdk.zip/download
2)解壓壓縮包
正常進入OpenCV-android-sdk-->sdk,之後如圖所示
圖片顯示:
2.Android配置Opencv
請參考AndroidNDK(一) 1)進入解壓OpenCv目錄:OpenCV-android-sdk-->sdk複製native目錄 下的內容到工程目錄,如圖顯示 2)配置app/buid.gradle檔案新增: sourceSets.main.jni.srcDirs = [] //禁止自帶的ndk功能 sourceSets.main.jniLibs.srcDirs = ['src/main/libs','src/main/jniLibs'] //重定向so目錄為src/main/libs和src/main/jniLibs,原來為src/main/jniLibs 3)在src/main目錄下新建jni目錄,並新建android.mk和application.mk 檔案 (1)Android.mk中內容,如圖所示 (2)Application.mk中內容如圖所示 4)新建本地方法類叫OpenCVHepler如圖所示 5)採用javah-jni編譯OpenCVHelper生成標頭檔案如圖所示;注意沒有配置 javah-jni的,請參考AndroidNDK(一) 6)新建原始檔名為OpenCV.cpp,注意這裡要和Android.mk檔案中: LOCAL_SRC_FILES :=OpenCV.cpp中一致 7)編寫OpenCV.cpp.具體內容如圖所示 8)編譯生成動態庫,採用ndk-build工具 9)呼叫測試效果如下 10)具體程式碼看參考如下github: https://github.com/whjlingtu/NDK_OpenCV_Demo.git
總結
其實這個配置,只是針對於Opencv基礎庫,但是還有一些擴充套件庫
的配置Opencv_contrib,由於配置過程比這個複雜點,只能有時
間下一次有時間在寫
圖片顯示:
1.複製native
2.配置build.gradle
3.Android.mk的內容
4.Application.mk的內容
5.OpenCVHelper
6.javah-jni生成標頭檔案
7.OpenCV中內容
1)test方法
2)採用Opencv方法
8.生成so庫
9.效果如下