在Android 上運作 openCV ,并做灰階變化的一個例子
OpenCVImageProcessing
-
導入Opencv的 androrid SDK
灰階算法 OpenCVImageProcessing
導入opencv Jar包,配置OpenCVLibrary340 的 bulid.gradle , 配置Module:app 的 build.gradle , 在依賴裡添加
implementation fileTree(dir: "$buildDir/native-libs", include: 'native-libs.jar')
1
在Gradle Scripts 裡修改 dependencies
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation fileTree(dir: "$buildDir/native-libs", include: 'native-libs.jar')
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
implementation project(':openCVLibrary340')
}
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)
-
灰階算法
@Override
public void onClick(View v) {
private void convert2Gray() {convert2Gray();
Mat src = new Mat(); Mat temp = new Mat(); Mat dst = new Mat(); Bitmap image = BitmapFactory.decodeResource(this.getResources(),R.drawable.tantuo); Utils.bitmapToMat(image,src); Imgproc.cvtColor(src, temp , Imgproc.COLOR_RGBA2BGR); Log.i( "CV", "image type:" + (temp.type() == CvType.CV_8UC3)); Imgproc.cvtColor(temp, dst, Imgproc.COLOR_BGR2GRAY); Utils.matToBitmap(dst,image); ImageView imageView = (ImageView) findViewById(R.id.imageView); imageView.setImageBitmap(image);
點選按鈕,Imgproc.cvtColor(src, temp , Imgproc.COLOR_RGBA2BGR)
作者:譚妥
來源:CSDN
原文:
https://blog.csdn.net/weixin_37734988/article/details/90411605版權聲明:本文為部落客原創文章,轉載請附上博文連結!