opencv for android 如何实现后台启动摄像头,不显示预览界面

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了opencv for android 如何实现后台启动摄像头,不显示预览界面相关的知识,希望对你有一定的参考价值。

opencv for android(纯java实现)人脸检测已经实现,但是我要封装成androidsdk,别人调用我的sdk我直接返回检测的图片,目前开启摄像头必须要有Activity,xml中也必须要有JavaCameraView,别人掉用我的sdk总不能让别人在创建个Activity吧。。请教各位,别人调用我androidsdk,我如何后台开启摄像头并实时获取摄像头帧数据。。

现在Android智能手机的像素都会提供照相的功能,大部分的手机的摄像头的像素都在1000万以上的像素,有的甚至会更高。它们大多都会支持光学变焦、曝光以及快门等等。
下面的程序Demo实例示范了使用Camera v2来进行拍照,当用户按下拍照键时,该应用会自动对焦,当对焦成功时拍下照片。
参考技术A 下面的程序Demo实例示范了使用Camera v2来进行拍照,
当用户按下拍照键时,该应用会自动对焦
,当对焦成功时拍下照片。
参考技术B 现在Android智能手机的像素都会提供照相的功能,大部分的手机的摄像头的像素都在1000万以上的像素,有的甚至会更高。它们大多都会支持光学变焦、曝光以及快门等等。

OpenCV for Android 中的矩阵乘法

【中文标题】OpenCV for Android 中的矩阵乘法【英文标题】:Matrix multiplication in OpenCV for Android 【发布时间】:2013-09-26 09:14:07 【问题描述】:

我是 OpenCV 和 android 的新手。我正在尝试将 OpenCV C++ 代码转换为 java。但我被困在这些点上。我不知道如何对 Mat Objects 进行这些操作。请帮我。提前谢谢你。

第一部分-

Mat im1;
im1 = cmyk[3].mul(1 - cmyk[1]) > 0.25;

cmyk 是我的 java 代码中的 List<Mat> 对象)

第二部分-

im3 = ((255 - im3) & im2) > 200;

(im3,im2,im1 都是 Mat 对象)

【问题讨论】:

【参考方案1】:

OpenCV 中的矩阵运算(add、mult 等)在 core.Core 类中。

两个矩阵相乘

Core.multiply(mat1,mat2,resultMat)

【讨论】:

感谢您的回复。但在这里,我正在使用一些值(例如 0.25)进行操作。我检查了上面的方法。它需要 2 个 Mat 对象。所以我不能用这个。 @ssdehero Core 类中有很多功能。其中包括您在示例中使用的compare 和bitwise_and。请仔细查看文档。

以上是关于opencv for android 如何实现后台启动摄像头,不显示预览界面的主要内容,如果未能解决你的问题,请参考以下文章

Android For OpenCV的环境搭建

如何在 Opencv for android 中训练 SVM?

android opencv 如何获得特定像素点的颜色

opencv for android中使用照相机前置摄像头是照片是颠倒的?

OpenCV for Android 中的矩阵乘法

Android基于opencv4.6.0实现人脸识别功能