opencv android大小,Android集成OpenCV并减少库大小

本文介绍了如何在Android应用中集成OpenCV,并通过指定所需的.a库来减小库的大小。作者首先下载了OpenCV Android SDK,然后将其添加到项目中,接着在build.gradle中指定abiFilters以降低生成的包的架构。在CMakeLists.txt中,通过静态链接所需的OpenCV库实现了减小库大小的目标。最后,作者提到完成后的aar包大小为2.5MB,相比包含全部功能的libopencv_java3.so的10MB多,实现了显著的减小。

前言

最近完成了Android上使用OpenCV进行图像拼接的功能,通过导入OpenCV的.so或.a库,JNI封装C++代码供Java层调用,同时在CMakeLists中指定自己需要的.a库以减少库的大小,毕竟我只用了拼接功能,其它诸如dnn、video等模块我都没用到。

在开始之前当然要把OpenCV Android SDK下载下来,推荐去GitHub下载,在OpenCV官网下载真是龟速,链接。

环境:OpenCV 3.3.1 、Android Studio 3.0

步骤

1.添加OpenCV-android-sdk

将OpenCV-android-sdk\sdk\native文件夹添加到项目中,这里我把native重命名为opencv,如下图:

697def71d779

其中3rdparty包含opencv使用的第三方库,jni/include包含opencv的头文件

,libs包含opencv编译好的动态库与静态库。

2.修改build.gradle

如图,添加红框中的内容,其中abiFilters 'armeabi'表示只生成armeabi架构的包,若不指定则会生成全部架构。

697def71d779

注意:确保你当前的工程已启用C++支持,如果没有就重新建一个项目并勾选Include C++ Support,我也尝试过创建普通Android工程,是build不过的,想启用C++支持也没找到方法,只好重新建一个包含C++支持的项目了。

3.修改CMakeLists.txt

# Sets the minimum version of CMake required to bu

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值