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 版权声明:本文为博主原创文章,未经博主允许不得转载. /*********** ...
随机推荐
- 今天读一读七天学会NodeJS
七天学会NODEJS NodeJS基础 小结 本章介绍了有关NodeJS的基本概念和使用方法,总结起来有以下知识点: NodeJS是一个JS脚本解析器,任何操作系统下安装NodeJS本质上做的事情都是 ...
- Android 打造编译时注解解析框架 这只是一个开始
转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/43452969 ,本文出自:[张鸿洋的博客] 1.概述 记得很久以前,写过几篇博客 ...
- Vue在MVC中的进行前后端的交互
Vue在MVC中的进行前后端的交互 Preface: 由于最近在研究前端相关的技术,作为前端非常优秀的框架Vue,个人在学习的过程中遇到一些问题,网上相关资料有限,所以在这这里总结一下个人使用Vue的 ...
- 拯救莫莉斯 状压dp
题目大意:每个点有费用,要求选出花费最少的一些点,使得全部点都满足:他被选或与他相邻的任意点被选. 没看清数据范围233333 和翻格子游戏一样,考虑上中下三行,可行才能转移 f[i][j][k]表示 ...
- BZOJ_3110_[Zjoi2013]K大数查询_整体二分+树状数组
BZOJ_3110_[Zjoi2013]K大数查询_整体二分+树状数组 Description 有N个位置,M个操作.操作有两种,每次操作如果是1 a b c的形式表示在第a个位置到第b个位置,每个位 ...
- 如何在ASP.NET Core中使用Azure Service Bus Queue
原文:USING AZURE SERVICE BUS QUEUES WITH ASP.NET CORE SERVICES 作者:damienbod 译文:如何在ASP.NET Core中使用Azure ...
- 学习笔记02(随便看看mybatis源码)
两个很有名的持久层hibernate和mybatis应该很熟悉不过了,两者最大相同点是底层都是对jdbc的封装,最大的不同点是前者是自动生成sql语句,后者是需要我们在映射文件中写出sql. 其实从以 ...
- B哥竟然也被裁了,聊一聊我的看法
B哥的故事 B哥是在17年底朋友聚会上认识的一个哥们,因为都是程序员,也聊得来.就加了微信.今年是他北漂的第三个年头了. B哥是从小南方长大的一个男孩,高中学习还凑凑活活,勉强过了二本,上了大学没人管 ...
- 国内开源社区巨作AspectCore-Framework入门
前些天和张队(善友),lemon(浩洋),斌哥(项斌)等MVP大咖一块儿吃饭,大家聊到了lemon名下的AOP这个项目,我这小白听得一脸懵逼,后面回来做了一下功课,查了下资料,在lemon的Githu ...
- Python动态绑定属性slots的使用
当我们定义了一个class,创建了一个class的实例后,我们可以给该实例绑定任何属性和方法,这就是动态语言的灵活性.废话不多说,我们看一个例子: class Person(object): pass ...