Android开发:Eclipse+OpenCV环境搭建
一、OpenCV预备:
OpenCV是一个跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法,可以说是既轻量又高效。
OpenCV现主要用于人机互动、人脸识别、动作识别、物体识别、图像分割、运动跟踪、机器人、运动分析和机器视觉等场景。
OpenCV下载网址: https://www.opencv.org/releases.html

1、windows系统下载Win pack,下载完成后不需安装,选择路径解压即可:


2、进入到opencv目录下的opencv\build\java文件夹下:

路径下存放着x64(64位)、x86(32位)和opencv-410.jar(4.1.0版本)。

二、在Eclipse中配置opencv:
1、进入Eclipse中的Window-》Preferences:

Java-》Build Path-》User Libraies,点击New...新建一个用户库:

输入名称:

新建如下:

选中该用户库,并点击Add External JARs...
找到刚才解压opencv的路径,选中opencv\build\java目录下的jar包:


选中Native library location,点击Edit进行修改:

根据自己系统的位数进行选择x86或者是x64:

三、检测是否配置完成:
1、新建一个java项目并导入opencv库:
新建java项目:

添加库:

选择用户库:


2、编写程序:
package com.gb.test;
import org.opencv.core.CvType;
import org.opencv.core.Mat;
import org.opencv.core.Core;
public class test
{
public static void main( String[] args )
{
System.loadLibrary( Core.NATIVE_LIBRARY_NAME );//调用x64文件夹下的dll文件
Mat m = Mat.eye( 9, 4, CvType.CV_8UC1 );//生成Mat矩阵(图像容器)
System.out.println( "4*9矩阵= \n" + m.dump() );//输出矩阵
}
}
运行结果如下:

至此,证明环境搭建完成。
加上eclipse已搭建好了开发Android程序的环境,则可以将opencv用于开发Android程序,例如识别车牌号、银行卡号等功能······
四、准备OpenCV4 Android SDK:
下载地址:
https://sourceforge.net/projects/opencvlibrary/files/opencv-android/
上述地址中是各个版本的opencv sdk,按照版本需要进行下载。
opencv-3.4.3-android-sdk直接下载地址:
解压可得:


五、把OpenCV库和它的实例导入到Eclipse中:
右键import···


选中解压出的文件夹路径,自动选中文件夹下的项目:

导入完成,自动构建后可运行样例程序。
六、其他:
opencv-3.4.3-android-sdk的解压路径最好不要使用中文和存在空格,易发生ndk-build问题。
相关随笔:
Android开发:在Eclipse中配置Android环境
Android开发:修改eclipse里的Android虚拟机路径
Android开发:Eclipse+OpenCV环境搭建的更多相关文章
- 【opencv】Java+eclipse+opencv 环境搭建 helloword入门demo
文章为博主原创,纯属个人理解,如有错误欢迎指出. 如需转载,请注明出处. 引入jar包 引入配置文件 到此环境配置完成!!! 可能会出现的问题: 1. jdk版本不一致导致发生异常.如图 build ...
- Android开发学习总结(一)——搭建最新版本的Android开发环境
Android开发学习总结(一)——搭建最新版本的Android开发环境(转) 最近由于工作中要负责开发一款Android的App,之前都是做JavaWeb的开发,Android开发虽然有所了解,但是 ...
- JavaEE开发基于Eclipse的环境搭建以及Maven Web App的创建
本篇博客就完整的来聊一下如何在Eclipse中创建的Maven Project.本篇博客是JavaEE开发的开篇,也是基础.本篇博客的内容干货还是比较多的,而且比较实用,并且都是采用目前最新版本的工具 ...
- JavaEE开发之基于Eclipse的环境搭建以及Maven Web App的创建
本篇博客就完整的来聊一下如何在Eclipse中创建的Maven Project.本篇博客是JavaEE开发的开篇,也是基础.本篇博客的内容干货还是比较多的,而且比较实用,并且都是采用目前最新版本的工具 ...
- 一、Android学习第一天——环境搭建(转)
(转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 一. Android学习第一天——环境搭建 Android 开发环境的搭建 ...
- Android NDK r8 windows环境搭建
Android NDK r8 windows环境搭建 一.默认基础环境为已经完成Android开发环境的搭建 需要的软件及插件 1. JDK-7u25 2. Eclipse 3. Android SD ...
- java+eclipse+selenium环境搭建
这几天在学selenium,大头虾的我.安装环境还是遇到了挺多问题,赶紧来记录下.不然下次又...(参考虫师的<Selenium2 Java自动化测试实战>),就随便写写加深下自己的印象. ...
- UI5-学习篇-1-Eclipse开发工具及环境搭建
最近研究SAP-UI5好几个月了,将相关学习经历及问题点做个记录. 1.先了解学习资料相关站点 SAP官网:https://www.sap.com/china/index.html SAP开发工具:h ...
- Tiny4412 开发板 编译环境搭建【转】
本文转载自:http://blog.csdn.net/beijiwei/article/details/51055369 版权声明:本文为博主原创文章,未经博主允许不得转载. /*********** ...
随机推荐
- Effective java-对象的创建和销毁
说到java对象的创建,首先应该提下java的内存机制,最主要的两块应该就是堆内存和栈内存. 简单点来说栈内存主要是保存基本数据类型的值和保存引用变量,堆内存主要用来存放new产生的对象,数组. 堆是 ...
- Python跨目录调程序
#!/usr/bin/python # -*- coding: utf-8 -*- # 导入其它目录下的文件, 需要去帮获取当前程序的绝对路径并加入到环境变量的相对路径中 import os impo ...
- 关于linux下部署JavaWeb项目,nginx负责静态资源访问,tomcat负责处理动态请求的nginx配置
1.项目的运行环境 linux版本 [root@localhost ~]# cat /proc/version Linux version -.el6.x86_64 (mockbuild@x86-.b ...
- laravel 查询数据返回的结果
laravel查询数据返回的结果 在插入数据库的时候,发现查询数据返回的结果是一个对象;即使是空数据 返回的不是true或者false 那么要判断该结果是否查询有结果 该如果呢? 学习源头: http ...
- Android Gradle基于参数化配置实现差异化构建
一.背景: 项目中有一些特殊的需求,如个别渠道集成腾讯bugly,个别渠道集成易观统计,不同的渠道集成不同的推送策略(如Oppo渠道优先Opush推送),不同的渠道拥有不同的第三方登录集成等等.这些需 ...
- 神奇的Scala Macro之旅(一)- 什么时候用宏
在Lisp语言中,macro是一个神器,可以“动态的生成代码”,然后被执行,这种方式给到Lisp无限的表达能力.除Lisp之外,很少有语言支持Macro这个特性,我记得 GWT之中曾经有一个类似的Ge ...
- with管理文件操作上下文
目录 with管理文件操作上下文(掌握) with管理文件操作上下文(掌握) 之前我们使用open()方法操作文件,但是open打开文件后我们还需要手动释放文件对操作系统的占用.但是其实我们可以更方便 ...
- python接口自动化(二十一)--unittest简介(详解)
简介 前边的随笔主要介绍的requests模块的有关知识个内容,接下来看一下python的单元测试框架unittest.熟悉 或者了解java 的小伙伴应该都清楚常见的单元测试框架 Junit 和 T ...
- Vue.js 牛刀小试(持续更新~~~)
一.前言 这个系列的文章开始于今年9月从上一家公司辞职后,在找工作的过程中,觉得自己应该学习一些新的东西,从前几章的更新日期也可以看出,中间隔了很长的时间,自己也经历了一些事情,既然现在已经稳定了,就 ...
- Vue.js-10:第十章 - 组件间的数据通信
一.前言 在上一章的学习中,我们继续学习了 Vue 中组件的相关知识,了解了在 Vue 中如何使用组件的 data.prop 选项.在之前的学习中有提到过,组件是 Vue 中的一个非常重要的概念,我们 ...