在Android 上运行 openCV ,并做灰度变化的一个例子

简介: 在Android 上运行 openCV ,并做灰度变化的一个例子OpenCVImageProcessing导入Opencv的 androrid SDK灰度算法 OpenCVImageProcessing导入opencv Jar包,配置OpenCVLibrary340 的 bulid.

在Android 上运行 openCV ,并做灰度变化的一个例子
OpenCVImageProcessing

  1. 导入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)

}

  1. 灰度算法

    @Override
    public void onClick(View v) {

    convert2Gray();

    }

    private void 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
版权声明:本文为博主原创文章,转载请附上博文链接!

相关文章
|
1月前
|
Java API 调度
Android系统 自定义开机广播,禁止后台服务,运行手动安装应用接收开机广播
Android系统 自定义开机广播,禁止后台服务,运行手动安装应用接收开机广播
81 0
|
1月前
|
移动开发 监控 安全
mPaaS常见问题之Android集成dexPatch热修复运行时候无法正常进行热更新如何解决
mPaaS(移动平台即服务,Mobile Platform as a Service)是阿里巴巴集团提供的一套移动开发解决方案,它包含了一系列移动开发、测试、监控和运营的工具和服务。以下是mPaaS常见问题的汇总,旨在帮助开发者和企业用户解决在使用mPaaS产品过程中遇到的各种挑战
|
1月前
|
Linux Android开发
Android 正常运行所需的一系列 Linux 内核接口
Android 正常运行所需的一系列 Linux 内核接口
66 0
|
8月前
|
Java 开发工具 Android开发
安卓应用成功运行实录
安卓应用成功运行实录
35 0
|
8月前
|
算法 C++
OpenCV-白平衡(灰度世界算法)
OpenCV-白平衡(灰度世界算法)
218 0
|
1月前
|
Java 关系型数据库 数据库
Android App连接真机步骤与APP的开发语言和工程结构讲解以及运行实例(超详细必看)
Android App连接真机步骤与APP的开发语言和工程结构讲解以及运行实例(超详细必看)
46 0
|
1月前
|
人工智能 Linux API
OpenCV这么简单为啥不学——1.1、图像处理(灰度图、模糊图片、GaussianBlur函数、提取边缘、边缘膨胀、边缘细化)
OpenCV这么简单为啥不学——1.1、图像处理(灰度图、模糊图片、GaussianBlur函数、提取边缘、边缘膨胀、边缘细化)
60 0
|
8月前
|
存储 传感器 定位技术
《移动互联网技术》 第四章 移动应用开发: Android Studio开发环境的使用方法:建立工程,编写源程序,编译链接,安装模拟器,通过模拟器运行和调试程序
《移动互联网技术》 第四章 移动应用开发: Android Studio开发环境的使用方法:建立工程,编写源程序,编译链接,安装模拟器,通过模拟器运行和调试程序
119 0
|
1天前
|
Java API 开发工具
如何将python应用编译到android运行
【6月更文挑战第27天】本文介绍在Ubuntu 20上搭建Android开发环境,包括安装JRE/JDK,设置环境变量,添加i386架构,安装依赖和编译工具。并通过`p4a`命令行工具进行apk构建和清理。
20 6
如何将python应用编译到android运行
|
19天前
|
前端开发 JavaScript 测试技术