@w460461339
2017-06-04T21:51:56.000000Z
字数 1593
阅读 1407
研究生毕业设计 Android
这个我不确定是否是必须的,可能不同opencv的配置开发方法对这个的要求不一样。我为了保险起见,还是在手机(真机)上安装了它
在 opencv解压包地址\OpenCV-android-sdk\apk下可以看到很多apk,根据自己手机的CPU架构选择安装包进行安装即可。
比如我的手机是 华为GRA CL00,手机是arm64位的,所以选择:
OpenCV_3.1.0_Manager_3.10_arm64-v8a.apk
来安装。
文件夹下面的readme.txt也有一定说明。
真机安装直接把apk发送到手机,安装即可。
虚拟机的话要用adb shell,具体方法自行google。
Android Studio 2.3版本;
这个安装见google
OpenCV 3.1:
http://opencv.org/
另外,安装好Android Studio后,需要通过andrid SDK Manager安装下面几个东西(红框中个三个)。

至此,前期准备完成。
这个用不用C++无所谓,如果不用JNI的话,可以不用开C++。
如果选择用了 include C++ support,最后这么页面最好这样配置

1、 File->new->Import Module,在出来的页面中,选择下载下来opencv文件夹内的java文件夹。

2、 直接这样导入,可能会报错,这是由于opencv面对的android版本,和你现有的版本不符导致。
先将视图转为Project视角
之后对opencv文件夹下build.gradle文件进行修改,改成自己安装的版本即可。

3、 File->Project Structure,加入项目的依赖包
在弹出来的框中选择opencv就好
这个包不导入,可能会报下列错误:
java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader..
1、 将视图切换为android视图,右击app,在app下创建JNI文件夹,名为jinLibs

2、 进入:
< opencv安装目录 >\OpenCV-android-sdk\sdk\native\libs
将下面的所有的文件夹拷贝。
3、 将拷贝的文件夹粘贴进刚刚创建的JNI文件夹即可

在MainActivity中进行以下测试
//方便过滤Logcat定义的Tagprivate static final String TAG="T4OCV";@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);// 判断OpenCVLoader是否能够初始化成功boolean boo=OpenCVLoader.initDebug();if(boo){Log.d(TAG,"成功了"+boo);Toast.makeText(this,"成功了",Toast.LENGTH_SHORT).show();}else{Log.d(TAG,"失败了"+boo);Toast.makeText(this,"失败了",Toast.LENGTH_SHORT).show();}// jni的例子,不用管// Example of a call to a native methodTextView tv = (TextView) findViewById(R.id.sample_text);tv.setText(stringFromJNI());}
如果能够顺利打印出成功字样,那么说明配置成功。