“opencv.android.JavaCameraView”和“opencv.android.NativeCameraView”有什么区别?

2022-09-04 07:35:54

如主题中所述:和 有什么区别。一个比另一个,主要的优点是什么,它提供了更多的选择?opencv.android.JavaCameraViewopencv.android.NativeCameraView


答案 1

来自 OpenCV 文档

该类在OpenCV库中实现。它继承自 ,扩展并使用标准的 Android 相机 API。或者,您可以使用类,它实现相同的接口,但使用类作为相机访问后端。 和选项启用FPS消息并允许使用设备上的任何相机。应用程序首先尝试使用后置摄像头。org.opencv.android.JavaCameraViewCameraBridgeViewBaseSurfaceVieworg.opencv.android.NativeCameraViewVideoCaptureopencv:show_fps="true"opencv:camera_id="any"

界面的实现允许您在从相机抓取图像之后和在屏幕上渲染之前添加处理步骤。最重要的功能是。它是回调函数,它是在从相机检索帧时调用的。回调输入是表示来自相机的帧的类的对象。CvCameraViewListeneronCameraFrameCvCameraViewFrame


答案 2

我只是从这里得到这个答案(这是一个有点旧的答案),并添加了我所经历的:

本机相机:

  • (+1) 更高的帧速率

  • (+1)捕获RGBA,无需从Android yuv格式转换。

  • “仅为 armv7 架构编译”不再适用。
  • (-1)不是在所有设备上都工作 - >我确认!这就是为什么我不使用它!请参阅错误 2359
  • (-1)不支持自动对焦,设置增益。(2012年回答)

我希望这可以有所帮助!


推荐