在Android Studio2.3中配置OpenCV4Android SDK

一,OpenCV4Android下载地址

【2.4.11】http://onhdz331f.bkt.clouddn.com/OpenCV-2.4.11-android-sdk.zip

【3.2. 0】https://github.com/opencv/opencv/releases/tag/3.2.0

下载之后解压缩就好。

二,在新项目中配置OpenCV

step 1

File -> New -> Import Module

然后在弹出框里选择刚刚OpenCV解压路径下的SDK文件夹下的JAVA。

接下来这个弹出意思是把导入的模块转化成Android studio配适的工程,因为原本是eclipse工程。直接按默认全部勾选。

如果成功导入,那这个位置就会有一个名为openCVLibrary2411的目录。第一次配置时可能会出现提示Error导入失败,缺少一些老版本的ADT。就直接点下载就好了。

step 2

右键工程中名为app的目录,选择Open Module Settings。

在弹出框中选择Dependencies。点击右上角的绿色加号把OpenCV模块导入。

step 3

把OpenCV解压路径下的SDK\native\libs里的所有的文件复制,然后粘贴到项目路径下的app\libs目录下。

step 4

打开openCV模块的build.gradle文件,把这个比较旧的版本号用app模块的gradle文件中的版本号替换掉。目的是使得编译OpenCV的SDT、构建工具的版本和app相同。

然后点击弹出把修改过的gradle更新一下。

回到app模块的build.gradle文件,在dependencies中的第一行之后插入下面这行代码:

compile fileTree(dir: "$buildDir/native-libs", include: 'native-libs.jar')

然后再在文件末尾粘入以下代码:

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.选择图片

2.灰度化

(测试使用的是参考博文中的工程)

参考博文:http://www.cnblogs.com/elliottzheng/p/6695446.html

在Android Studio2.3中配置OpenCV4Android SDK的更多相关文章

  1. Android Studio2.3中简单配置,释放C盘空间

    重新安装了一下android studio,由于占用了太多的C盘空间.记录一下,在网上收集到的studio中两个主要占用C盘空间的文件,我们将它移除C盘. 原博地址: http://blog.csdn ...

  2. Android 在xml中配置 float 和 integer 值

    一.float的配置方法 andriod 默认不支持float型的设置,在values 下的新建floats.xml 文件,在内部添加如下代码: <resources> <item ...

  3. installation and configuration of OpenCV4Android SDK

    http://docs.opencv.org/doc/tutorials/introduction/android_binary_package/O4A_SDK.html#running-opencv ...

  4. !! This tutorial was designed to help you with installation and configuration of OpenCV4Android SDK.

    ref: http://docs.opencv.org/doc/tutorials/introduction/android_binary_package/O4A_SDK.html#running-o ...

  5. Android studio2 中的 SDK Manager的使用-------Android SDK 的安装与更新(Install missing platform(s) and sync project 编译错误解决)

    最近在编写Android程序,其中有一个问题就是对旧应用的导入,此时往往你的Android SDK中并没有老版本的Android SDK, 此时往往会提示你出现错误 Install missing p ...

  6. Android Studio中配置及使用OpenCV示例

    Android Studio配置及使用OpenCV 前言:最近在做项目移植,项目较大,在Eclipse中配置的Jni及OpenCV环境没任何问题,但是迁移到Studio中就问题一大堆,网上也找了一些资 ...

  7. Android开发:在Eclipse中配置Android环境

    一.文件需要: https://pan.baidu.com/s/1-XCSSPW5JGyPRlvwRVSfmA 提取码:m5t8 NDK过大没有上传在这个文件里. 二.在Eclipse中配置Tools ...

  8. Retrofit+RxJava(1)-在Android Studio中配置

    在build.gradle中添加 //加入retrolambda需要的plugin声明 apply plugin: 'me.tatarka.retrolambda' //retrolambda的编译路 ...

  9. Android零基础入门第6节:配置优化SDK Manager,正式约会女神

    原文:Android零基础入门第6节:配置优化SDK Manager,正式约会女神 在前几期中总结分享了Android的前世今生.Android 系统架构和应用组件那些事.带你一起来聊一聊Androi ...

随机推荐

  1. 第十六章、例行性工作排程 (crontab)

    1. 什么是例行性工作排程 1.1 Linux 工作排程的种类: at, crontab 1.2 Linux 上常见的例行性工作 2. 仅运行一次的工作排程 2.1 atd 的启动与 at 运行的方式 ...

  2. SQL Serever学习12——数据库的备份和还原

    公司的服务器奔溃了,事先没相应的保护措施,使得公司遭到了较大损失,为了以后不再出现类似事件,在系统中引入备份机制,使得数据库被破坏后损失降到最低. 数据的导出和导入 数据转换服务 数据转换服务DTS( ...

  3. MongoDB基本用法(增删改高级查询、mapreduce)

    TestCase.java package com.wujintao.mongo; import java.net.UnknownHostException; import java.util.Arr ...

  4. NET Core 应用程序 IIS 运行报错 502.3-Gateway

    转自:http://www.zmland.com/forum.php?mod=viewthread&tid=941 将 NET Core 应用程序部署在 IIS 环境,默认配置下,如果任务执行 ...

  5. SpringBoot Mybatis的驼峰命名

    开启驼峰命名的方法 第一种方式: 可以在配置类中进行配置.配置的Demo如下: @Bean(name="sqlSessionFactory") public SqlSessionF ...

  6. groovy和java的主要区别

    1.Default imports,默认情况下,导入下面的包: java.io. * java.lang.* java.math.BigDecimal中 java.math.BigInteger中 j ...

  7. golang 的 sync.WaitGroup

    WaitGroup的用途:它能够一直等到所有的goroutine执行完成,并且阻塞主线程的执行,直到所有的goroutine执行完成. 官方对它的说明如下: A WaitGroup waits for ...

  8. delphi之读写文件的三种方式

    一.Tstrings.Tstringlist procedure TForm1.Button2Click(Sender: TObject); var strlist: TStringList; pat ...

  9. 《JavaWeb从入门到改行》关于BaseServlet那些事

    @为什么需要BaseServlet?  我们知道一个POST或者GET提交对应着一个Servlet, 无数的提交会让Servlet页面增加,我们希望一个Servlet就能处理很多提交的请求. @Bas ...

  10. javascript中闭包最简单的简绍

    javascript中闭包是什么 JavaScript 变量可以是局部变量或全局变量.私有变量可以用到闭包.闭包就是将函数内部和函数外部连接起来的一座桥梁. 函数的闭包使用场景:比如我们想要一个函数来 ...