Ubuntu+IntelliJ IDEA+Android 配置NDK环境+openCV
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Ubuntu+IntelliJ IDEA+Android 配置NDK环境+openCV,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2195字,纯文字阅读大概需要4分钟。
内容图文
最近需要将Python人证对比模型移植安卓端.安卓端需要使用openCV简单的人像提取处理.在配置openCV前首先需要配置NDK环境.
NDK的介绍(http://www.cnblogs.com/leaven/archive/2010/05/27/1744855.html)
一 NDK在Ubuntu的配置
参考: http://blog.csdn.net/jq_ak47/article/details/52349189
二 NDK在IntelliJ IDEA中的配置
参考: http://blog.csdn.net/yipatshi/article/details/54585049
三 NDK开发实例
参考: http://www.cnblogs.com/xiaoxiaoqingyi/p/6524165.html
在main/java下创建创建一个NDKUtils.Java类:
public class NDKUtils { public native String invokeCmethod(); static { System.loadLibrary("NDKUtils"); } }
右键选择 External Tools ---> javah
会在app目录下生成jni目录和目录内一个com_lemon_demo_utils_NDKUtils.h文件
复制.h 文件修改后缀名为 .c (该文件就是C 语言的实现文件)
修改com_lemon_demo_utils_NDKUtils.c内容:
JNIEXPORT jstring JNICALL Java_com_lemon_demo_utils_NDKUtils_jniInit (JNIEnv *env, jobject obj){ return (*env)->NewStringUTF(env,"NDK 获取Native 字符串"); }
将jni目录拷贝至main/java目录下.
在jni目录下新建Android.mk和Application.mk:
Android.mk:
LOCAL_PATH:=$(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := NDKUtils LOCAL_SRC_FILES := com_lemon_demo_utils_NDKUtils.c include $(BUILD_SHARED_LIBRARY)
Application.mk:
APP_PLATFORM := android-23
APP_ABI := armeabi
在IntelliJ IDEA的命令窗口(Terminal)执行:
cd app/src/main/
继续输入:
ndk-build
该命令是编译C文件,然后生成 .so 文件,生成在 app\src\main\libs 目录下。
完成后会在main目录下生成libs和obj两个目录.
配置build.gradle 文件,在android {}中添加:
sourceSets{ main{ jni.srcDirs = [] // disable automatic ndk-build call, which ignore our Android.mk jniLibs.srcDir ‘src/main/libs‘ } }
在MainActivity中使用:
package com.lemoncome.opencvdemo; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.widget.TextView; public class MainOpencvActivity extends AppCompatActivity { @Override protectedvoid onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main_opencv); NDKUtils ndk = new NDKUtils(); TextView text = (TextView) findViewById(R.id.tv); text.setText(ndk.invokeCmethod()); } }
运行程序会输出字符串: NDK 获取Native 字符串
以上测试成功.
四 Android+openCV
首先下载openCV包,地址:http://opencv.org/
最新的3.3,我下载了3.2
opencv配置参考: http://www.cnblogs.com/xiaoxiaoqingyi/p/6676096.html
把 sdk/native 目录 拷贝到 项目的 jni 目录下,
原文:http://www.cnblogs.com/haoxr/p/7606002.html
内容总结
以上是互联网集市为您收集整理的Ubuntu+IntelliJ IDEA+Android 配置NDK环境+openCV全部内容,希望文章能够帮你解决Ubuntu+IntelliJ IDEA+Android 配置NDK环境+openCV所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。