【发布时间】:2014-07-21 13:47:33
【问题描述】:
我想使用 OpenCv 对来自 Android 相机的帧进行实时图像处理,但所有 OpenCv Android 示例都提供了正在捕获的图像的预览。我真的不需要帧的预览,有什么方法可以在不实际显示预览的情况下获取帧?
【问题讨论】:
标签: android opencv android-camera surfaceview
我想使用 OpenCv 对来自 Android 相机的帧进行实时图像处理,但所有 OpenCv Android 示例都提供了正在捕获的图像的预览。我真的不需要帧的预览,有什么方法可以在不实际显示预览的情况下获取帧?
【问题讨论】:
标签: android opencv android-camera surfaceview
一种快速/简单的方法是使 onCameraFrame 方法返回 null 并将您的 CameraBridgeViewBase 可见性设置为 SurfaceView.INVISIBLE 或 SurfaceView.GONE。
【讨论】:
我仍然想知道它是否适合您,但同时我找到了适合我的解决方案。我很感谢写这篇文章的人,我是sharing this(向下滚动到答案部分),以后遇到同样问题的人。
如果链接消失,这是他/她的专业提示:
您可以设置预览(在本例中为
CameraBridgeViewBase) 通过设置视图的alpha值来透明,0为 完全看不见。
mOpenCvCameraView.setAlpha(0);这会使您的预览“消失”。
我想知道您的解决方案是如何工作的,因为您可以在docs 中看到:
当需要完成帧的传递时调用此方法。 返回值 - 是需要显示的修改帧 在屏幕上。
确实,就我而言,它不起作用,但我迫切需要这样的功能。
【讨论】: