javaCV:爱之初体验

时间:2021-11-21 03:44:07

最近实验室有了新任务,要求使用java进行模式识别,在具体点就是人脸识别、精确的边缘检测。

 

第一个问题便是环境配置,搭建工作台。(其实也不是什么难事,但是本人虽然从事较多的java开发,但很少接触模式识别。当然,遇到问题解决问题。正题开始:)

我使用的opencv是javaCV:爱之初体验版本

然后按照http://blog.csdn.net/sivyer123/article/details/22377017步骤安装,步骤类似

1.首先下载OpenCV2.4.6,下载的时候,选择windows版的。然后安装

2.其实安装的过程就是解压的过程,并没有什么安装向导之类的,安装完成后,我们最关心的是这个目录:opencv\build\Java 如下图所示

javaCV:爱之初体验

注意:opencv-246.jar是需要在opencv的java类库,但是,真正的实现是opencv_java246.dll(X86和X64之分,关键看你的计算机是多少位的)
3.建立一个Java项目

javaCV:爱之初体验

4.新建一个Java类,代码如下:

[java]  view plain  copy
 
 javaCV:爱之初体验javaCV:爱之初体验
  1. package com.njupt.zhb.test;  
  2. import org.opencv.core.CvType;  
  3. import org.opencv.core.Mat;  
  4. public class Main {  
  5.     /** 
  6.      * @param args 
  7.      */  
  8.     public static void main(String[] args) {  
  9.         // TODO Auto-generated method stub  
  10.         System.loadLibrary("opencv_java246");  
  11.         Mat m  = Mat.eye(3, 3, CvType.CV_8UC1);  
  12.         System.out.println("m = " + m.dump());  
  13.     }  
  14.   
  15. }  



5.引入所需要的jar包,即:opencv-246.jar

javaCV:爱之初体验


6.设置项目的native库,即opencv_java246.dll所在的路径

javaCV:爱之初体验

 

javaCV:爱之初体验

7.运行结果为:

javaCV:爱之初体验

 

 

按照http://blog.csdn.net/enjoy_programming/article/details/21972157提到的方式裁剪

注意:由于javacv中的原码把opencv的时目录写死了(目前javacv 0.7版及以前都是),所以放到C盘根目录是必须的。如果只是为了用javacv的话,Opencv目录下的东西基本都可以删,除了C:\opencv\build\x86\vc10\bin或C:\opencv\build\x64\vc10\bin,然后把bin的名字后面带d也删了,本来2.7G的opencv现在就只剩下20多兆了,还能正常用。