这是本人第一篇博客,写博客并不是说本人的技术能力有多强,或者说炫耀自己取得的进展。在当今这个数据信息大爆炸的年代,每个人肯定会接受很多新鲜事物,但不是所有东西你都能记得一清二楚,写博客一方面是为了巩固加深自己的学习;另一方面,一直在各博客上学习他们的思路和方法,自己也想加入这个集体里面,为别人提供一些帮助。

言归正传,最近接到了一个人脸识别移动平台搭建的任务,大体任务是:图像处理过程全部用C++处理,之后将处理的结果用JNI的方式传给手机端显示出处理过后结果。

在网上大约按自己的思路搜了下解决方案,Opencv有个Android版本,可以导进Eclipse 和AS里面,用于手机端的图像处理识别,完美符合项目要求。

opencv-androd 的下载地址:https://opencv.org/releases.html          下载完之后解压到一个不含中文的目录下

在安装上面,出现了大约两种思路:

1)手动配置JNI,配置mk文件

2)用最新的AS里面自带的C++选项进行添加

(PS:这里出现了两种思路,仁者见仁智者见智,如果十分清楚JNI,可以下载最新版本的AS里面自带c++选项,省掉了很多繁琐步骤;如果对JNI不是很熟悉,可以先手动配置一次JNI,加深自己对知识的理解)

本文主要以第二种方法为主,第一种方法网上有一大把,可以参考他们的博客    这是我的下载的版本号:Android studio 版本为3.1.2            opencv-Android为3.4.1

step1:

step2:

之后一路next 直到step3:

之后创建成功后,可以看下app下面有一个cpp 和java 文件夹,直接运行就可以看到,“hello world from C++”证明自己一开始创建的环境没错,如果中间有报错,提示缺少XXX插件之类的,按照log里面的提示下载安装即可。

之后 点击 File》Setting》Android SDK》SDK tools   如图    有缺少的点击下载即可。

之后我们添加Opencv341到我们的Android Studio 里面,点击File》New》import modul 如图选择下载的opencv-Android的java文件夹

之后不要做任何修改一直next,成功后会看到添加了另一个文件夹openCVLibrary341,证明添加成功

之后点击File》Project Structure,如图顺序点击

添加  点击finish。

这时就可以在MainActivity里面导入opencv

这时,将  (Modul:opencvLibrary341)    compileSdkVersion       minSdkVersion    targetSdkVersion全部改成和(Modul:app)下的保持一致后,点击编辑栏右上方的

切换到project选项

在app/src/main文件夹下创建一个目录为JniLibs   将下载的opencv-Android-sdk 下的OpenCV-android-sdk\sdk\native\libs  下的所有内容,拷贝到该目录里面。

在AndroidManifest.xml文件添加如下代码 如图

    <uses-permission android:name="android.permission.CAMERA"/>
<uses-feature android:name="android.hardware.camera" android:required="false"/>
<uses-feature android:name="android.hardware.camera.autofocus" android:required="false"/>
<uses-feature android:name="android.hardware.camera.front" android:required="false"/>
<uses-feature android:name="android.hardware.camera.front.autofocus" android:required="false"/> <supports-screens android:resizeable="true"
android:smallScreens="true"
android:normalScreens="true"
android:largeScreens="true"
android:anyDensity="true" />

点击app下的Cmake文件,修改cmake文件内容如下

set(pathOPENCV D:/software/OpenCV-android-sdk)                   set(pathPROJECT D:/codezoom/UseOpenCvwithCmake)                             一定要以自己安装文件为主

点击 Build》Rebuild 查看配置的有什么问题,(出错后我认为一定要检查两点    1.复制win10下的目录要把    \    改成   /   否则找不到文件                       2.仔细查看目录是否正确)

这时我们点击cpp下的文件,发现我们可以添加opencv的头文件了

大功告成!!!!!!!!!!!!!

参考博客:http://webnautes.tistory.com/1054  (可能需要翻墙)

												

Opencv-Android安装使用的更多相关文章

  1. OpenCV - Android Studio 中集成Opencv环境(包含opencv_contrib部分)

    我在上一篇博客中说到了在Android中集成OpenCV,但是那个版本的OpenCV是没有SIFT和SURF算法的,因为这些算法是受专利保护的,所以并没有被包含在预编译库中,所以如果想要使用SIFT和 ...

  2. OpenCV的安装与系统环境变量

    OpenCV的安装与系统环境变量 安装OpenCV本来是很简单的一件事,但配置却很麻烦.而且在配置过程中尤为重要的步骤就是系统环境变量的配置.我使用的是CodeBlick13.12与OpenCV1.0 ...

  3. org.opencv.android.JavaCameraView 摄像机方向的问题

    ——> org.opencv.android.JavaCameraView 摄像机方向的问题 ref: http://www.tuicool.com/articles/q6vUvqB 注意:一般 ...

  4. Android - 安装 windows 7 安装 Android SDK 的时候出现的问题!(Connection to https://dl-ssl.google.com refused)

    Android - 安装 windows 7  安装 Android SDK 的时候出现的问题! 首先看到 Connection to https://dl-ssl.google.com refuse ...

  5. vs2015 Xamarin.Android安装

    原文:vs2015 Xamarin.Android安装 Xamarin.Android 安装步骤,以vs2015为例 1,安装vs2015中的跨平台项,但是安装在国内肯定失败,因为需要到谷歌下载 当我 ...

  6. openCV python 安装

    0, 用 import cv 测试,发现没有安装 opencv 模块. 首先先说本开发环境是在windows xp的环境下进行搭建的. 在搭建的过程中需要保证这三个条件: 1.python需要安装py ...

  7. Android安装 sdk+jdk+Eclipse+Adt开发工具

    根据别人提供的手册和安装过程体验加以更新和详细描述 安装Android开发工具 开发Android应用程序的门坎并不高,因为Google已经为Android应用程序开发提供了免费而且跨平台的集成开发环 ...

  8. Android 安装过程中的问题

    Android  安装过程中的问题 上一篇我说到配置android环境,但是在具体的安装过程中,因为下载的软件或者方法不同,导致没有正确的结果,如果有一些错误的时候,可以试一试关闭eclipse软件, ...

  9. 如何给你的Android 安装文件(APK)瘦身

    如何给你的Android 安装文件(APK)瘦身 本文翻译自:Putting Your APKs on Diet           原作者:Cyril Mottier Android的apk文件越来 ...

  10. Anaconda+linux +opencv+dlib安装

    准备文件Anaconda: https://www.anaconda.com/download/ 我下载的时最新的 64-Bit (x86) Installer (524 MB) 然后在下载的anac ...

随机推荐

  1. spss缺失值填充步骤

    缺失值填充是数据预处理最基本的步骤,一般能想到的是固定值填充(均值等统计学方法).根据与本列有相关关系的列函数表示来填充.这次我用的是em算法进行填充,具体原理后续补充. 主要记录一下步骤: 工具栏: ...

  2. docker容器的操作

    容器操作 1.查看本地容器 docker ps -a # 查看所有容器 docker ps # 查看所有正在运行的容器 2.容器的创建与启动 方法一:两步完成(强烈推荐方法)(1)创建 docker ...

  3. 解决 FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory 问题

    https://blog.csdn.net/weixin_41196185/article/details/81114226 今天在启动vue项目的时候报了这样一个错误 观察到关键词是 FATAL E ...

  4. 关于${pageContext.request.contextPath}的理解 (转载)

    ${pageContext.request.contextPath}是JSP取得绝对路径的方法,等价于<%=request.getContextPath()%> . 也就是取出部署的应用程 ...

  5. 在vue2.x项目中怎么引入Element UI

    参考:https://blog.csdn.net/u014054437/article/details/79862793 Element使用方法:https://element.eleme.cn/#/ ...

  6. puppeteer(一)环境搭建——新Web自动化工具(同selenium)

    一.简介 https://github.com/GoogleChrome/puppeteer Puppeteer是一个Node库,它提供了一个高级API来控制DevTools协议上的 Chrome或C ...

  7. 数据库oracle 目录结构

    Oracle_Home主目录位于D:\dev\oracle\product\10.2.0(oracle安装路径)下,它包含Oracle软件运行有关的子目录和网络文件以及选定的组件等:若在主机上第一次且 ...

  8. 虚拟机 安装centos

    entOS安装 我是用VMware 12 安装的,下面是安装,打开VM主页 选择创建虚拟机 典型安装:VMwear会将主流的配置应用在虚拟机的操作系统上,对于新手来很友好. 自定义安装:自定义安装可以 ...

  9. 输出UTF-8-BOM格式的文件

    File localDir = new File(localPath); if(!localDir.exists()){ localDir.mkdirs(); } File file = new Fi ...

  10. K8S学习笔记之ETCD启动失败注意事项

    最近搭建K8S集群遇到ETCD的报错,报错信息如下,一定要关闭防火墙.iptables和SELINUX,三个都要关闭!! Mar 26 20:39:24 k8s-m1 etcd[6437]: heal ...