前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >『转』 opencv3.3.0 && opencv_contrib3.3.0 for AndroidNDK

『转』 opencv3.3.0 && opencv_contrib3.3.0 for AndroidNDK

作者头像
jerrypxiao
发布2021-02-22 11:03:15
6720
发布2021-02-22 11:03:15
举报
文章被收录于专栏:音视频专栏音视频专栏

Windows环境使用CMake编译 opencv3.3.0 && opencv_contrib3.3.0 for AndroidNDK

转载 Windows环境使用CMake编译 opencv3.3.0 && opencv_contrib3.3.0

AndroidNDK2017-09

opencv 从3.0.0开始不在提供合并的库,而是将原先合并的库分开为两个库,分别是:核心功能库和拓展功能库。而核心库依然提供Android开发所需要的静态库支持,但是如果需要用到最近大红大紫的人工智能相关功能,必然用到扩展功能库提供的诸如人脸识别等功能,所以需要我们手动CMake生成Android所需要的静态库,这里主要讲如何生成操作,生成我们需要的静态库。

这里顺便吐槽一下,使用caffe框架搭建深度学习训练人脸识别模型,要比opencv给出的人脸识别快很多,opencv-人脸识别还有很大的进步空间。不过遗憾的是caffe目前还没有提供移动端的运行环境,即时PC训练好了模型也没有用武之地,颇感遗憾。

准备材料

opencv3.3.0 && opencv_contrib3.3.0

下载opencv Tag 3.3.0

下载opencv_contrib Tag 3.3.0

使用git clone或者直接下载压缩包,这两种姿势都可以。

git clone https://github.com/opencv/opencv.git

git clone https://github.com/opencv/opencv_contrib.git

Cmake

下载Cmake工具,安装即可。

MinGW

下载MinGW,安装以后会有相应的g++配置,这一步需要自行勾选,然后下载对应的g++编译包即可,配置完成MinGW大概在500MB左右。

需要配置path环境变量,在命令行中输入gcc -v检验配置是否正确

Ant

下载Ant,无需安装,解压后,配置path环境变量即可,可以在命令行中输入ant -v检验配置是否正确。

配置编译环境

打开CMake GUI如下图配置

上面一行地址是source所在目录

下面一行地址是编译文件将要放置的目录

接下来需要配CMake的配置参数如下:

Name:ANDROID_ABI

Type:STRING

Value:armeabi-v7a

如图所示:

如上,继续添加:

Name:ANDROID_NDK

Type:Path

Value:H:/android-ndk-r14b

Name:ANDROID_OPENCL_SDK

Type:Path

Value:E:/android-sdk-windows

点击Configure,进入设置编译器阶段,如图

确定以后,配置cmake的起始路径J:/opencv-source/opencv-3.3.0/platforms/android/android.toolchain.cmake

配置好以后,如图所示:

配置运行一段时间以后,然后搜索OPENCV_EXTRA_MODULES_PATH,配置一下opencv_contrib/modules的路径所在地。

配置完以后如下:

再点击Generate,如图所示。

开始编译

进入到上面配置的编译文件将要放置的目录,进入命令行,输入:

mingw32-make

如果一切顺利话,大概30分钟以后,会Build成功,接下来再输入:

mingw32-make install

一般会顺利的输出生成的测试apk。

特殊情况

上面顺利的话就不用往下看了,如果遇到报错,一般是在编译的时候出现找不到文件之类的奇怪问题。

而提示找不到的文件其实在我们本地的目录.cache\xfeatures2d\boostdesc中,如下所示:

把上面的文件前缀统统去掉,copy到opencv_contrib-3.3.0\modules\xfeatures2d\src即可

参考:Error with "boostdesc_bgm.i" while compiling on Ubuntu 16.04

然后,如果提示还缺少文件,那么同样的思路,到.cache\xfeatures2d\vgg目录,把剩下的所有.i后缀文件统一copy到上面的目录即可,如图所示:

如果没有这些文件,可以到这里下载。

最后,我们找一下生成的静态链接库,在J:\opencv-source\build\armeabi\lib\armeabi目录下。

如果实在搞不定,最后的静态库可以到这里下载。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
人脸识别
腾讯云神图·人脸识别(Face Recognition)基于腾讯优图强大的面部分析技术,提供包括人脸检测与分析、比对、搜索、验证、五官定位、活体检测等多种功能,为开发者和企业提供高性能高可用的人脸识别服务。 可应用于在线娱乐、在线身份认证等多种应用场景,充分满足各行业客户的人脸属性识别及用户身份确认等需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档