2021年7月1日:AndroidStudio集成opencv指南。

2023-05-16

版本声明:

1.AndroidStudio:4.2.1

2.opencv版本4.5.2

3.androidStudio创建项目选择项目类型Native C++

4.下载opencv android版本解压后,找到如下目录:

C头文件目录include:opencv-4.5.2-android-sdk\OpenCV-android-sdk\sdk\native\jni

C动态链接库目录libs:opencv-4.5.2-android-sdk\OpenCV-android-sdk\sdk\native\libs

5.将include和libs目录文件夹拷贝到AndroidStudio中,在项目中找到cpp目录,并在其中新建文件夹opencv,并将拷贝的文件夹复制进去。

6.编辑cpp目录下的CMakeLists.txt文件,添加以下信息,引入我们刚才复制进来的头文件和动态库


  
include_directories(${CMAKE_SOURCE_DIR}/opencv/include)#指定头文件所在目录

add_library(
        opencv #为待添加库命名,可随便写
        SHARED #SHARED指定类型为动态库
        IMPORTED)
set_target_properties(
        opencv #引用上面引入的库名字,需要跟上面的opencv保持一致
        PROPERTIES #指明为属性
        IMPORTED_LOCATION #属性名称
        ${CMAKE_SOURCE_DIR}/opencv/libs/${CMAKE_ANDROID_ARCH_ABI}/libopencv_java4.so)

注意:在target_link_libraries 里面需添加之前引入的库的名字,这里为opencv需要和前面保持一致!并且要放到native-lib 后面。

7.使得配置生效可点击Build>Refresh Linked C++ Project

8.在native-lib.cpp中编写C++代码。引入opencv.hpp的头文件没有报错,则说明头文件配置成功。

这里我们获取并返回一下opencv的版本信息。

9.记得在biuld.gradle的externalNativeBuild>cmake节点添加,否则运行会报找不到c++_shared库的错误而导致程序崩溃。


arguments "-DANDROID_STL=c++_shared"  

10.运行,模拟器可以看到以下界面则说明配置成功。因为添加了X86的so库,所以可以在模拟器中运行。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

2021年7月1日:AndroidStudio集成opencv指南。 的相关文章

  • 如何在 Android Studio 中比较两个 Git 分支?

    我不确定是否可以将主分支 或任何其他分支 与当前功能分支进行比较 例如GIT does 我想要两个分支 主分支和功能分支 之间的差异 以便我可以在合并之前比较差异 我发现 Git UI 对用户不太友好 就像在 AS 中一样 我可以遍历代码并
  • 指纹奇异点检测

    我正在尝试确定指纹的核心点和增量点 我正在使用庞加莱指数方法 但我无法成功检测到这一点 而且我不明白为什么 First I divide the image in 15x15 blocks then I calculate the x an
  • 如何在 OpenCV 中从 YUV 文件读取帧?

    如何在 OpenCV 中从 YUV 文件读取帧 我编写了一个非常简单的 python 代码来从二进制文件读取 YUV NV21 流 import cv2 import numpy as np class VideoCaptureYUV de
  • OpenCV Visual Studio ntdll.dll

    我尝试在 Visual Studio 2013 上使用 OpenCV 2 4 10 创建一个项目 但由于以下异常 到目前为止我运气不佳 请建议帮助 TIA letstryitonemoretime exe Win32 Loaded C Us
  • 无法仅在控制台中启动 androidstudio

    你好 我的问题是下一个 我下载了Android Studio如果我去 路径 android studio bin 我执行studio sh 我收到以下错误 No JDK found Please validate either STUDIO
  • 如何修补更新 Android Studio (0.80 -> 0.81)?

    我安装了 Android Studio Beta v0 8 0 并下载了 v0 8 1 因为 IDE 不会自动下载 v0 80 并使用新版本修补 Android Studio 的预览系列自动做到了这一点 从他们的网页 http tools
  • 加载 highchart 时 Android 错误膨胀类

    我正在尝试加载highcharts via Dialog 下面是我的代码 Gradle implementation com highsoft highcharts highcharts 9 0 1 XML
  • 从图像坐标获取对象的世界坐标

    I have been following this http docs opencv org modules calib3d doc camera calibration and 3d reconstruction html docume
  • Android Studio DAO 语法突出显示、DB Inspector 和语言注入

    Since my last build upgrade the syntax highlighting in my DAOs is not working anymore 我的期望 和经验 是 查询中存在语法突出显示 并且一旦数据库检查器运
  • 手动设置Android Studio的JDK路径

    如何为 Android Studio 使用自定义 JDK 路径 我不想弄乱 PATH 因为我没有管理员权限 是否有某个配置设置文件允许我进行设置 如果您查看项目设置 您可以从那里访问 jdk 在标准 Windows 键盘映射上 您可以在项目
  • Android Studio 中的新 logcat:仅显示调试

    我喜欢自 AS Dolphin 以来的新 Logcat 该过滤器添加了一些新的可能性 但我无法弄清楚一件事 是否有一种方法可以仅显示调试消息而没有信息或警告 您可以输入level levelYouWant例如level info仅适用于信息
  • 2d 图像点和 3d 网格之间的交点

    Given 网格 源相机 我有内在和外在参数 图像坐标 2d Output 3D 点 是从相机中心发出的光线穿过图像平面上的 2d 点与网格的交点 我试图找到网格上的 3d 点 This is the process From Multip
  • OpenCV 跟踪器:模型未在函数 init 中初始化

    在视频的第一帧 我运行一个对象检测器 它返回对象的边界框 如下所示
  • 如何绘制更大的边界框和仅裁剪边界框文本 Python Opencv

    我正在使用 easyocr 来检测图像中的文本 该方法给出输出边界框 输入图像如下所示 Image 1 Image 2 使用下面的代码获得输出图像 But I want to draw a Single Bigger bounding bo
  • 海量矢量资源导入Android Studio

    有没有办法将许多矢量 svg 图像导入到项目中 导入 30 多个图标有点无聊而且相当愚蠢 Android Studio 使用哪个脚本来转换 svgs 现在 Android Studio 中可以实现这一点 在左侧的资源管理器中 效果很好
  • 分配给 Android Studio 的快捷方式不起作用

    I wanted to close active tab by shortcut in Android studio I found CTRL F4 does the job from here https stackoverflow co
  • Android Studio:lambda 不起作用[重复]

    这个问题在这里已经有答案了 当尝试使用 lambda 表达式时 我遇到了一些 Gradle 构建错误 错误 41 100 错误 source 1 7 不支持 lambda 表达式 使用 source 8 或更高版本来启用 lambda 表达
  • 如何使用 colorchecker 在 opencv 中进行颜色校准?

    我有数码相机获取的色彩检查器图像 我如何使用它来使用 opencv 校准图像 按照以下颜色检查器图像操作 您是想问如何进行颜色校准或如何使用 OpenCV 进行校准 为了进行颜色校准 您可以使用校准板的最后一行 灰色调 以下是您应该逐步进行
  • 二值图像中骨架上两点之间的最短路径

    我有一个二进制图像 其中包含图像的一个像素宽度骨架 您可能基本上知道 在这个二值图像中 我在骨架上有 1 在其他地方有 0 如何找到骨架上两个非零元素之间的最短距离 路径也应该在骨架本身上 我想使用 A star 算法的 C 实现 我找到了
  • Android Room 数据库 - 未解析的引用 @Entity 和其他注释

    我在我的应用程序中使用 Android Room Persistence 库 v 1 0 0 alpha1 虽然它工作正常 但当我在 Android studio 中打开模型类 Kotlin 数据类 时 它显示用于 Room 数据库的所有注

随机推荐

  • 求二叉树的高度

    二叉树高度是二叉树的重要知识点 xff0c 在日常练习中我们会经常碰见这种类型的题目 求解二叉树的高度可以用递归方式 递归求解二叉树高度 int GetHeight BinTree BT int h1 int h2 if BT return
  • Linux开启ssh远程登录

    Linux配置ssh 开启远程登录 你好 xff01 这里介绍了Linux系统Centos Ubuntu环境下开启ssh的方法 一 CentOS开启SSH服务 安装openssh server xff1b yum list installe
  • Python 中if...else语法和作用、执行流程

    一 if else语法 作用 xff1a 条件成立执行if下方的代码 xff0c 条件不成立执行else下方的代码 案例说明 xff1a 比如拿成年网吧上网的例子 xff0c 如果成年 xff0c 就允许上网 xff0c 如果不成年 xff
  • Ubuntu20.04安装ssh并开启远程访问登录

    1 安装openssh server 打开终端安装openssh server软件包 xff1a span class token function sudo span span class token function apt span
  • pixhawk在启动jmavsim时,启动不了

    lcg 64 ubuntu src Firmware sudo make px4 sitl jmavsim 1 1 cd home lcg src Firmware build cg src Firmware build px4 sitl
  • 数据转换成tfrecord类型并完成读取

    前提 xff1a tensorflow 1 13 1 numpy 1 16 2 python 3 6 5 本例转换 泰坦尼克号数据集 链接 密码 xff1a n8wz 数据预览 xff1a 字段说明 xff1a PassengerId xf
  • Notepad++如何配置NppFTP连接FTP服务器远程编辑

    Notepad 43 43 是很强大的文本编辑工具 xff0c 通过NppFTP插件可以远程连接FTP服务器 xff0c 实现文件的在线编辑 不需要FTP下载文件后再进行编辑 xff0c 配置好与FTP服务器的连接后 xff0c 使用起来会
  • Ubuntu install Chrome

    wget https dl google com linux direct google chrome stable current amd64 deb sudo dpkg i google chrome stable current am
  • 简易输出六十天干地支

    每行十个输出六十天干地支 public static void main String args int i 61 0 count 61 0 step 61 0 String top 61 34 甲 34 34 乙 34 34 丙 34 3
  • 小记:Xshell 简单STP上传下载文件

    小记 xff1a Xshell 简单STP上传下载文件 目录 xff1a 1 Xshell连接远程系统 2 STP连接 3 put get上传下载文件 工具说明 xff1a 本地Windows 10系统 远程Linux系统 xff1a Ce
  • info函数与describe函数

    info 函数与describe 函数 一 xff0c info 函数 功能 xff1a 给出样本数据的相关信息概览 xff1a 行数 xff0c 列数 xff0c 列索引 xff0c 列非空值个数 xff0c 列类型 xff0c 内存占用
  • 快速排序(java代码)

    文章目录 一 快排核心思想二 实例三 代码实现 xff08 java xff09 一 快排核心思想 快排核心思想就是 xff1a 首先在待排序数组中随便选择一个数作为节点 xff08 pivot xff09 xff0c 然后从最后面 xff
  • C# List集合查找删除指定数据

    C List集合查找删除指定数据 文章目录1 实体类2 操作第一个负荷条件数据3 操作所有符合条件数据4 优质源码 文章目录 1 实体类 public class FaultLevelModel public string LBWJ get
  • java.lang.IllegalArgumentException: Unable to instantiate factory class

    前提 xff1a 这两天在搭springboot后台框架的时候 xff08 用的JDK1 8和eclipse xff09 xff0c 折腾了半天 xff0c 在搞泛型的时候会有一些报错 xff0c 原来IDEA上的代码 xff0c 在ecl
  • 发声单元的原理/扬声器的工作原理

    目前市面上常见的耳塞以及耳机的发声单元主要有三种 xff0c 分别是动圈单元 动铁单元和静电单元 静电单元由于工艺比较复杂 成本高 xff0c 单元本身比较脆弱 xff0c 所以市面上并不多见 所以下面着重介绍动圈单元和动铁单元的发声原理
  • 猿创征文|Hexo+Github搭建完全免费个人博客详细教程

    前言 完全免费的搭建个人博客 xff0c 没有任何收费 xff0c 零基础也能上手 xff0c 不需要编程基础 xff0c 跟着操作来即可 首先 xff1a 要了解一下我们搭建博客要用到的框架 xff1a Hexo是高效的静态站点生成框架
  • 3维向量的点乘叉乘运算

    目录 三维向量的点乘三维向量的叉乘点到直线的距离点到平面的距离 三维向量的点乘 点乘得到的是对应元素乘积的和 xff0c 是一个标量 xff0c 没有方向 V1 x1 y1 z1 V2 x2 y2 z2 61 x1x2 43 y1y2 43
  • Windows Server 2016修改Administrator的密码

    1 xff09 在仪表盘上 xff0c 点击 工具 菜单 xff0c 选择 计算机管理 子菜单 2 xff09 本地用户和组 gt 用户 选中Administrator xff0c 点击右键 xff0c 弹出的菜单中选择 设置密码 的子菜单
  • Ubuntu安装Tomcat 执行[./startup.sh]命令显示“ Permission denied “问题解决

    报错贴图 xff1a 根据错误提示 xff0c 为权限问题 然后我们检查权限情况 xff1a 方框中为管理员权限 xff0c 显示为rw r代表read xff08 读 xff09 xff0c w代表write xff08 写 xff09
  • 2021年7月1日:AndroidStudio集成opencv指南。

    版本声明 xff1a 1 AndroidStudio 4 2 1 2 opencv版本4 5 2 3 androidStudio创建项目选择项目类型Native C 43 43 4 下载opencv android版本解压后 xff0c 找