博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
OPENCV 使用系列 JAVA入门 之搭建环境
阅读量:6821 次
发布时间:2019-06-26

本文共 1580 字,大约阅读时间需要 5 分钟。

hot3.png

我是一名java服务器开发者,今天我讲的是opencv 在服务器端的利用, 网上很多都是android NDK的 以及C++的 ,这些大体上是差不多,但是对初学者来说 就觉得 很难对照的学习 在java上怎么使用了, 这里是第一篇 开篇 ,搭建使用环境 。

          首先进入opencv 官网  下载opencv for windows  exe文件.(linux 同样的 ,其实linux使用还更加简单) 在开发时候 我们因为一般是windows 环境,到正式发布,就换成linux吧 ,只需要把so 用system.load静态加载就可以了

       安装解压之后  可以看到 build 下面是 预先编译好的文件,进入java可以看到一个java 目录 另外sources 下面就是一些源代码以及示例 ,

    222154_6rnl_937000.jpg

     222332_Mvvl_937000.jpg

   然后 我们建立一个java项目 ,或者使用maven install 安装opencv文件到本地maven库

    222542_rY3x_937000.jpg

右键项目属性 ,按照下图 点击添加库 ,选择 user 自定义库  

如图所示

222807_yPxj_937000.jpg

然后进入用户UserLibray 界面后点击 UserLibrarys。 新增一个自定义库 

222958_qt0y_937000.jpg

上面的左边的几个库 都是我自己以前定义好的,多个版本,你点击右边的New 新增一个 ,填写名字 比如我们最新版本是opencv3.1 opencv3.1

   223254_uClv_937000.jpg

然后 点击右边的添加Add External JARS 添加上面的opencv的jar文件 。

223711_43NA_937000.jpg

添加之后 ,如下图所示 

223745_T4C0_937000.jpg

下面 就是最关键的一步 ,也是最重要的一步,本地jni 库 与opencv jar 连接起来,点击Native Libray Location (是点击Native Library Location) ,然后点击 右边的Edit 进行,然后选择 上面的Build ---> java ----X64(我电脑是64位) 这个目录 添加即可 

224247_zUB5_937000.jpg

  点击确定之后 如下图一样 基本添加成功了 ,下面进行测试

 224439_RQqE_937000.jpg

        现在 我们的opencv 自定义库 已经建立了 ,现在我们 右键工程属性,用户库 添加 刚才的opencv 的库

     下面 我们进行 一下测试 ,对于opencv3 来说 相比opencv2有一些变化,最明显的是opencv Highgui 在opencv3 是ImageCodes 下面我们就用它来读取 一张图片,然后转成灰度

     第一件事情 ,先加载opencv 本地库 ,然后就可以开始 进行调用 opencv方法进行 使用了

    

      

static{  System.loadLibrary(Core.NATIVE_LIBRARY_NAME);}

   

public class Grayscale{static{  System.loadLibrary(Core.NATIVE_LIBRARY_NAME);}    public static void main(String[] args){              Mat im = Imgcodecs.imread("c:/baidu/1.jpg");        Imgproc.cvtColor(im, im, Imgproc.COLOR_RGB2GRAY);               Imgcodecs.imwrite("test.jpg",im);    }}

  然后我们运行之后 

  c:/baidu/1.jpg

  原图

  225632_sxgq_937000.jpg   

运行之后 灰度

  

230157_xvbv_937000.jpg

我的项目   就是使用opencv 以及 人工智能算法 以及 大数据spark 实现的 图像识别 以及 opencv 的AR

   今天 OPENCV的搭建环境 就讲到 这里了 ,后面 开始讲解 OPENCV的 基础知识 以及实例教程  待续.....

转载于:https://my.oschina.net/yilian/blog/610065

你可能感兴趣的文章
【第五组】用例文档+功能说明书+技术说明书 2017.02.26版
查看>>
ramips芯片,openwrt安装njit8021xclient
查看>>
day7-20180414笔记
查看>>
Delphi XE5 android openurl(转)
查看>>
十六转八进制
查看>>
一个文学青年的复活——编程就是用计算机语言写文章
查看>>
android 伸缩控件ExpandableListView 展开失败的可能原因。
查看>>
AS(Android Studio)不停的updating indices
查看>>
51nod1799-二分答案
查看>>
Docker入门(三):容器(Containers)
查看>>
回归测试概念和策略
查看>>
最新新闻、最新文章,JavaScript实现无缝循环滚动
查看>>
算法与数据结构之string专题
查看>>
学习日记0911数据库基础
查看>>
Python之路——Python基础二
查看>>
搜索技巧——持续更新
查看>>
云播放开源地址
查看>>
Win7批处理文件设置代理服务器
查看>>
【cl】selenium实例2:打开百度,输入hello world
查看>>
安卓 按键精灵 命令
查看>>