JavaCV的配置及使用

转载 2012年11月12日 17:48:32
做数字图像处理的同学都知道,OpenCV这个库很好用。在Java中使用OpenCV有两种方式:第一种方式是通过java的JNI,调用C++编写的OpenCV的动态链接库;第二种方法就是直接用JavaCV了。下面详细介绍下JavaCV的使用。

希望大家能留个言啊,有什么问题指出一下

1. 参考文献:http://code.google.com/p/javacv/

这是国外某位大神写的javacv的东东,很有参考价值

2. Win7下使用JavaCV

申明:有些步骤可能不是必须的,我也没试过,大家可以尝试下。

步骤一:下载opencv2.4.2  

下载地址: http://sourceforge.net/projects/opencvlibrary/files/

其它版本能用么?   opencv2.3.1及以上版本可以尝试下,其它的版本就不建议尝试了

步骤二:必须先安装opencv2.4.2,然后再配置opencv2.4.2的环境变量,然后再在vs2010或者vs2008上测试下opencv2.4.2(这里测试了opencv2.4.2的正确性之后可以避免以后不必要的麻烦)

1)点击下载得到的opencv2.4.2的exe文件,会弹出如下提示框。

图1

其实opencv2.4.2的安装就是将exe文件解压到相应的目录,没有别的意思。

2)将上步骤1解压得到的opencv文件夹拷贝到C盘根目录下

3)配置环境变量,不像opencv2.2那样,在安装的时候可以直接选择添加环境变量,opencv2.4.2需要自己手动添加环境变量

      变量名: PATH           C:\opencv\build\x86\vc10\bin;

      变量名:TBB               C:\opencv\build\common\tbb\ia32\vc10

4)在vs2010上测试opencv2.4.2的使用,可以按照这个网址的内容来进行http://www.cnblogs.com/tornadomeet/archive/2012/07/07/2580405.html

5)建议将C:\opencv\build\common\tbb\ia32\vc10下所有的dll文件,如下图所示,全部拷贝到C:\opencv\build\x86\vc10\bin目录下

步骤二:开始配置JavaCV了。

1)下载javacv-bin,下载链接http://download.csdn.net/download/rainwithvoice/4420411,下载之后解压,可以看到如下文件目录

图2

2)在eclipse下新建一个Java Project:JavaCV(这里名字随便取了)

3)在JavaCV下新建一个文件目录libs/armeabi,建好之后,文件目录如下图所示

图3 

4)将步骤1图片中显示的所有的jar文件拷贝到libs文件的根目录下,注意:不是armeabi目录。

5)首先右键刷新下JavaCV项目,然后使用右键JavaCV->Build Path->Configure Build Path, 在里面Add JARS,把刚才拷贝过来的所有jar包都加入到项目中。

6)这样JavaCV就配置好了,接下来有个简单示例

Smoother.java

  1. import static com.googlecode.javacv.cpp.opencv_core.*;  
  2. import static com.googlecode.javacv.cpp.opencv_imgproc.*;  
  3. import static com.googlecode.javacv.cpp.opencv_highgui.*;  
  4.   
  5. public class Smoother {  
  6.       
  7.     public static void smooth(String filename){  
  8.         IplImage image=cvLoadImage(filename);  
  9.         if(image!=null){  
  10.             cvSmooth(image,image,CV_GAUSSIAN,3);  
  11.             cvSaveImage("D:\\new-lena.bmp",image);  
  12.             cvReleaseImage(image);  
  13.         }  
  14.     }  
  15.   
  16. }  
Test.java

  1. public class Test {  
  2.       
  3.     public static void main(String args[]){  
  4.         Smoother.smooth("D:\\lena.bmp");  
  5.     }  
  6.   
  7. }  

通过上面的Smoother代码大家可以发现,JavaCV中的代码其实跟OpenCV的C++的代码很相似,除了注意一些指针类型的地方以外,其它基本没多大变化,所以大家用起来应该很方便的。


常见问题:
程序报异常:     no jniopencv_core in java.library.path

原            因:     图1 中所示的jar包只拷贝了javacpp.jar和javacv.jar到lib目录下,只要将所有的jar包都拷过去就没问题了,今天在这个上面栽了很久的,主要是被文献误导了,老外的文献里面说只要拷两个的,如下图所示



另外,还有一个最大的遗憾,JavaCV目前不支持中文,所以大家的图片或者路径名中最好不要包括中文


javacv开发详解之1:调用本机摄像头视频(建议使用javaCV1.3.3版本)

javacv开发包是用于支持java多媒体开发的一套开发包,可以适用于本地多媒体(音视频)调用以及音视频,图片等文件后期操作(图片修改,音视频解码剪辑等等功能),这里我只使用最简单的本地摄像头调用来演...
  • eguid_1
  • eguid_1
  • 2016年06月13日 17:54
  • 24731

javacv使用笔记

javacv 使用笔记 一.前言 最近在做一个视频审核的功能,但是运营觉得每个视频都要看一篇太浪费时间了,于是提出了这样一个需求,给每个视频随机截取5张图片展示出来,根据这5张图片决定是否需要继续观看...
  • z562743237
  • z562743237
  • 2017年01月22日 11:12
  • 3872

javacv的bin包

  • 2012年07月10日 11:36
  • 9.75MB
  • 下载

JavaCV jar包

  • 2015年04月30日 20:37
  • 25.94MB
  • 下载

基于javacv的数字图像处理

项目需要javacv的包,用maven构建如下 org.bytedeco javacv 0.11 org.bytedeco...
  • absurd1350
  • absurd1350
  • 2015年05月29日 13:36
  • 2469

JavaCV-学习笔记一

http://blog.csdn.net/kerr1992/article/details/8782778 介绍 JavaCV首先提供了计算机视觉领域研究人员常用的函数...
  • mengzhengjie
  • mengzhengjie
  • 2014年08月19日 23:13
  • 5090

javacv.jar

  • 2013年03月29日 19:05
  • 933KB
  • 下载

【Android】JavaCV and OpenCV

package com.duanjiwei.takephoto; import android.app.Activity; import android.content.Context; impor...
  • Taily_Duan
  • Taily_Duan
  • 2016年09月18日 17:26
  • 1757

javaCV配置

最近再做一个人脸识别小的项目,要用到OpenCV的库,项目本身是用java做的,所以不得不用上了javaCV,javaCV是基于opencv的,本质上还是opencv在干活。在配置环境上整了好半天,所...
  • enjoy_programming
  • enjoy_programming
  • 2014年03月24日 17:52
  • 9407

C语言精彩编程百例

  • 2004年01月28日 00:00
  • 141KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JavaCV的配置及使用
举报原因:
原因补充:

(最多只允许输入30个字)