1:创建一个Android项目-----(不会的话还是放弃吧~)
2:去OpenCV官方网站下载安卓的SDK(版本随便选)
5:C:\Users\sunbo\Downloads\opencv-3.4.4-android-sdk\OpenCV-android-sdk\sdk\java (兄弟去你解压缩的目录找到你下载的opencv-3.4.4-android-sdk)
6:点击Next-默认-finish就行 。然后静静等待(滑稽)
7:然后File-Project Structure-app-Dependencies-加号-Module Dependencies-选择你的opencvsdk 确定,静静等待。
8:把opencv android sdk的 native\libs 目录下的所有文件copy到安卓项目app的libs下
arm64-v8a ,armeabi,armeabi-v7a,x86等等 这些是手机cpu架构。基本常用的是这几个。如果在意项目包的大小,没必要全部copy,选择常用的就行,细节自行百度。
9:修改gradle文件和编译,保证这openCVLibrary的gradle和app的匹配
compileSdkVersion ,minSdkVersion,targetSdkVersion
10:打开app下的gradle文件,在最下面输入以下代码,原理是task一个XXX,然后描述XXX
描述的信息有这个XXX的目录,名字,来自哪儿,要去哪儿
最后Compile 编译XXX
task nativeLibsToJar(type: Jar, description: 'create a jar archive of the native libs') {
destinationDir file("$buildDir/native-libs")
baseName 'native-libs'
from fileTree(dir: 'libs', include: '**/*.so')
into 'lib/'
}
tasks.withType(JavaCompile) {
compileTask -> compileTask.dependsOn(nativeLibsToJar)
}
11:然后再gradle(app)下dependencies{}内部输入以下代码,就是把第10步做的事情加入到你的安卓项目里
implementation fileTree(dir: "$buildDir/native-libs", include: 'native-libs.jar')
12:大功告成,可以去测试你的OpenCV-sdk了。先别着急!忘记配置ndk了… File-Project Structure-SDK Loction-Android NDK location选择你的NDK(这里建议你去官网下载,NDK 下载 | Android NDK | Android Developers 然后配置一下系统path,具体细节就不多讲了,百度有很多。为什么不用IDE的NDK,就是任性~~~不任性的可以自行尝试~~~哈哈哈哈)
13:我迫不及待的run project 开心地打开logcat,关注下opencv,上面还有很多openCV库的初始化日志。
15:prefect~~~ 哇 爱学习的同学这么多,来一个小栗子吧~~时间有限,就不带大家验证了哈,有点安卓基础的都可以看懂~~~看完别忘记点赞哦。
Bitmap bitmap = BitmapFactory.decodeResource(this.getResources(), R.drawable.timg);
Mat src = new Mat();
Mat dst = new Mat();
Utils.bitmapToMat(bitmap, src);
Imgproc.cvtColor(src, dst, Imgproc.COLOR_BGRA2GRAY);
Utils.matToBitmap(dst, bitmap);
iv.setVisibility(View.VISIBLE);
iv.setImageBitmap(bitmap);
src.release();
dst.release();