问题标签 [opencv4android]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
183 浏览

opencv - 有没有办法只构建 opencv-2.4.10 contrib 模块?

我正在构建需要opencv的人脸识别功能的android应用程序。我将所有 opencv .so 文件静态放置在 lib 文件夹中,opencv 占用了大量内存(超过 22 MB),所以有什么方法可以只构建 opencv 的 contrib 模块。

0 投票
0 回答
460 浏览

android - 如何在 Android Studio 上加载 Opencv 的 Fisherfaces 算法?

我在桌面上的 yml 文件上创建,Opencv 的 Fisherfaces 模型可以读取该文件。但是在 Android Studio 上没有一个名为 Fisherface 的类。我必须做些什么来创建一个 Fisherface 模型并加载我的 yml 文件?

谢谢。

0 投票
0 回答
200 浏览

java - libopencv_java249.so 也需要 libopencv_java245.so 吗?

我正在尝试使用 opencv 2.49 部署一个 opencv java 应用程序,我已经在Ubuntu服务器中构建了libopencv_java249.soopencv-249.jar ,这些在应用程序启动时在类路径中可用。

但是它抛出了一个异常说libopencv_java245 not found,所以最初我的印象是它指的是一个错误的opencv版本。所以为了验证这一点,我已经从类路径中删除了 libopencv_java249.so,然后它抱怨 libopencv_java249 不可用。

作为附加测试,我还将 libopencv_java249.so 重命名为 libopencv_java245.so 然后它再次说未找到 opencv_java249。

有了这个,我想我们可以确认它寻找正确版本的 opencv(即 libopencv_java249),但除此之外它还需要 libopencv_java245。我的假设是否正确,如果有人可以指导我,那将非常有帮助。

0 投票
1 回答
2693 浏览

opencv - 为 android 使用 OpenCv contrib 模块

有没有办法在 android 中使用 opencv contrib 模块?我专门使用文本模块。这些模块是否有 android lib。我的代码在桌面上工作,我试图将我的代码迁移到 android。任何见解都是 gr8。

0 投票
1 回答
1264 浏览

java - Android4OpenCV:在启动时设置分辨率

我正在使用Android4OpenCV进行一些实时图像处理,并且我想使用相机可以提供的最小分辨率。默认分辨率是相机可以提供的最大分辨率。

我正在查看第三个示例,它允许用户通过菜单更改分辨率。我想修改该示例以在启动时更改分辨率,而不是要求用户通过菜单。为此,我只需在原本为空的onCameraViewStarted()函数中添加两行:

问题是,这在我运行 Android 4.2.2 的 Galaxy Nexus 上运行良好。应用程序启动,并且分辨率设置正确。

但是,当我在运行 Android 5.1 的 Nexus 7 平板电脑上运行完全相同的应用程序时,该应用程序在调用setResolution(). 实际上它一次可以正常工作,但第二次尝试运行它时会挂起 - 即使您完全退出应用程序,将其从正在运行的应用程序中删除,或重新启动设备。其他用户也报告了同样的错误,所以不仅仅是 Nexus 7 设备——事实上,我的 Galaxy Nexus 似乎是唯一可以使用的设备。

具体来说,应用程序进入setResolution()函数,然后调用org.opencv.android.JavaCameraView.disconnectCamera(),如下所示:

(注意:此代码是 OpenCV4Android 库的内部代码,这不是我的代码)

查看日志,我可以看到线程卡在了synchronized(this)线上。唯一在该 Object 上同步的是内部JavaCameraView.CameraWorker类,它是mThread上面代码中的变量,由 JavaCameraView 类启动:

(注意:此代码是 OpenCV4Android 库的内部代码,这不是我的代码)

我已经尝试过使用该代码,将 notify() 更改为 notifyAll(),并维护一个 CameraWorker 线程列表并加入每个线程。但无论如何,该应用程序仍然挂起disconnectCamera()电话。

我的问题是:

  • 如何修改第三个 OpenCV4Android 示例,以便在启动时设置其分辨率?

  • 是什么导致应用程序挂起?

  • 为什么这在某些设备上有效,而在其他设备上无效?

编辑:我没有收到任何评论或答案,所以我在这里交叉发布到 OpenCV 论坛。

编辑2:根据cyriel的建议,我尝试在几帧过去后设置分辨率:

但是,现在它卡在了同一个地方,即使在我的 Galaxy Nexus 上,如果我在onCameraViewStarted()函数中设置分辨率,它也可以工作。我尝试将帧数增加到 7 甚至 100,但我总是卡在同一个地方。

0 投票
0 回答
402 浏览

android - 让 CvCameraViewListener2.onCameraFrame() 返回一张静态图片

当 specifiedFrame 是一个空的 Mat 时,屏幕显示我可以理解的全黑,但是在 specifiedFrame=inputFrame.gray() 之后为什么屏幕仍然显示黑色?如果我直接返回 inputFrame.gray() 屏幕显示正确。

在 opencv4Android 2.4.11 上使用 Eclipse 编码,在 Android 4.4 和 5.0 上运行。

0 投票
1 回答
2909 浏览

android - 通过 OpenCV 3.0 RC1 在 Android 中创建 BackgroundSubtractorMOG2

我正在尝试在我的 android 手机上使用 OpenCV 3.0 中的 MOG2 进行背景减法。但是,在 3.0 版本中似乎没有合适的构造函数来创建新的 BackgroundSubtractorMOG2。我的代码就在这里。

使用这些代码 Android Studio 提醒我构造函数已保护访问。此外,当我阅读 BackgroundSubtractorMOG2 的 java src 代码时,我发现构造函数有一个参数: long addr。src 代码如下:

我是 OpenCV4Android 的新手,因此不知道如何在 java 代码中构造这样的类。除了使用旧版本的 OpenCV4Android 之外的任何解决方案?

0 投票
2 回答
717 浏览

android - 调用 OpenCV 累积加权函数时 Android 应用程序崩溃

我有以下代码(尝试移植this

当它到达这一点时,所有图像都在 fp/01.jpg、02.jpg 等中。当它到达 sequence.read(curImg) 行时它会崩溃,所以我不确定出了什么问题,因为它已经检查到确保序列已正确打开。

编辑:更具体地说,我从 Android 调试器得到的错误是

在累积加权方法调用上。

0 投票
1 回答
47 浏览

image - 如何在 OpenCv4Android 中创建掩码?

我想在我的编码中创建一个掩码,我有一个 Rect 和一个输入图像,那么如何初始化掩码。

0 投票
1 回答
1866 浏览

java - 使用 JavaCameraView 的自定义类会使应用程序崩溃

我正在为 android 使用 OpenCV,我正在尝试设置自定义帧速率。那么现在我正在尝试设置帧速率的范围。我也在尝试设置自定义分辨率

我正在关注 openCV 教程 3 Camera Control。当我开始在我的设备上运行它时,该应用程序崩溃了。我正在使用 Nexus 7 2013 平板电脑

以下是我的代码:

和 JavaCameraView 自定义类

logcat输出如下: