本文介绍eclipse+android下配置javacv的开发环境,过程十分简单,最后会举一个实例(FacePreview)进行验证配置是否成功。

阅读本文的前提是android+eclipse开发环境已经配置好(当然javacv并不是专为android而写的,普通java程序也是支持的)。

一、打开网页:http:///p/javacv/downloads/list。下载javacv-bin-20120512.zipOpenCV-2.4.0-android-arm.zip





 解压到任意目录。

 

二、新建一个android工程,然后:

1.选中此工程,依次File > New > Folder,输入 “libs/armeabi”作为文件名,再点击完成;

2.将第一大步解压OpenCV-2.4.0-android-arm得到的*.so动态链接库:



 拷贝到刚刚新建的工程的libs/armeabi文件夹中。

3.然后再将第一大步解压javacv-bin-20120512得到的javacv-android-arm.jar压缩文件里面的*.so动态链接库:



 也拷贝到刚刚新建的工程的libs/armeabi文件夹中。

4.将第一大步解压javacv-bin-20120512得到的javacpp.jar和javacv.jar两个jar文件拷贝到libs文件夹中。

5.右键点击此工程,依次选择 Properties > Java Build Path > Libraries ,然后点击“Add External JARs...”,选择第4步的javacpp.jar和javacv.jar两个jar文件,确定即可。

 

//*********************************************************************************************************//

三、下面举一个实例:FacePreview。要注意的是javacv的运行要求Android 2.2 on ARMv7 or newer versions,有些机子可能会运行不了。

一、eclipse新建一个android工程,工程名:FacePreview,包名:com.googlecode.javacv.facepreview。 把解压javacv-bin-20120512得到的文件夹javacv-bin/samples下的FacePreview.java复制到当前工程下替换原来的FacePreview.java。

注意到 FacePreview.java里第25行的注释里提到:“IMPORTANT – Make sure your AndroidManifiest.xml file includes the following”,要把拍照的权限加到AndroidManifiest.xml里。

主要是这两行代码


<uses-permission android:name="android.permission.CAMERA" /> <uses-feature android:name="android.hardware.camera" />


二、第110行处:

File classifierFile = Loader.extractResource(getClass(),
 “/com/googlecode/javacv/facepreview/haarcascade_frontalface_alt.xml”,
 context.getCacheDir(), “classifier”, “.xml”);其中用到了haarcascade_frontalface_alt.xml文件,如果找不到这个文件就网上下一个,然后把haarcascade_frontalface_alt.xml放到/com/googlecode/javacv/facepreview目录下。

 

三、运行程序,大功告成,得到如下结果: