Android Studio开发之路 (五)导入OpenCV以及报错解决

一、步骤

  1. 官网下载opencv包(我下的是4.7.0)并解压,openvc官网

  2. 先创建一个空项目,简单跑一下能正常输出helloworld

  3. 点击file->new->Import Module选择解压之后的opencv-android-sdk文件夹中的SDk文件夹,


module name这个地方可以改成你想要的的名字,我是改成了opencv

4.加载完成之后看下图,需要修改加载进来的openCV文件夹下面的build.gradle中的一些内容,首先将"kotlin-android"那一句删掉,然后将标号为2,3,4的几个值修改的和主程序中的buidl.gradle中的值一样,然后"try again"更新修改内功

  1. 如下图,点击file->project structure ->Dependencies->app->3 Module Dependency, 然后给opencv打上对勾,应用即可


到这里基本上就完成了,可以加载一下opencv做一个简单的测试,代码如下图:

二、过程中报错以及修改

步骤虽然简单,但过程也不会一番风顺,我在过程中主要遇到了三个问题:① namespace命名空间报错;②org.opencv报错 ③can't resolve symbol OpenCVEngineInterface

  1. 命名空间报错

这里一个简单的解决办法是:将:app的build.gradle中的namespace 语句复制到opencv的build.gradle中。如下图

第二种解决办法请往下看第三个报错解决

  1. org.opencv报错
    opencv的AndroidManifast.xml中的org.opencv那一句删掉就好了

3.can't resolve symbol OpenCVEngineInterface

这个真的折磨了我很久,按别的博主说的org.opencv.engine路径配置不对啥的,完全不解决问题。

解决办法是:file->project structure->project,将这两个值修改成7.1.2和7.3重新运行皆可以了。namespace那个报错也可以这么解决

不过需要注意的是,我是重新建了一个项目,修改了这两个参数之后再重新引入opencv才成功的,在上面报错的时候直接修改是不行的。

三、参考资料
OpenCV在Android的使用教程

OpenCV库的安装

Android使用OpenCV处理图像

相关推荐
咸鱼翻身小阿橙2 小时前
在VScode使用C#并且调用opencv库
vscode·opencv·c#
半岛@少年10 小时前
Webpack在前端项目中究竟发挥什么作用?
前端·webpack·前端工程化
咸鱼翻身小阿橙12 小时前
高斯模糊降噪/磨皮算法降噪图像
前端·opencv·算法·webpack·c#
嵌入式老牛1 天前
液晶段码(米/日字格)识别—倾斜校正
opencv·算法·仿射变换
AD钙奶-lalala1 天前
Android Studio新建项目默认不使用Compose模版
android·ide·android studio
故渊at1 天前
第一板块:Android 系统基石与运行原理 | 第五篇:Context 上下文与资源配置体系
android·人工智能·opencv·context·上下文·资源配置体系
ice8130331811 天前
【Python】调用opencv识别图片人脸位置
人工智能·python·opencv
kyriewen2 天前
从Webpack到Vite:我们迁移了一个10万行代码的项目,总结了这7个坑
前端·webpack·vite
C++ 老炮儿的技术栈2 天前
如何利用 OpenCV 将图像显示在对话框窗口上
c语言·c++·人工智能·qt·opencv·计算机视觉·github
大江东去浪淘尽千古风流人物2 天前
【OpenCV parallel_for_】并行框架源码深度解析:7种后端调度、线程池自旋等待、工作窃取与跨平台CPU Yield指令全拆解
人工智能·opencv·计算机视觉·多线程·parallel_for_·tbb