【问题标题】:How to use the widest angle lense with Camera2/CameraX API如何通过 Camera2/CameraX API 使用最广角镜头
【发布时间】:2022-03-10 11:43:19
【问题描述】:

我正在尝试获取设备背面可用的最宽镜头的cameraId。正如here 所记录的那样,我得到了“合乎逻辑”的后置摄像头。 但它默认为随机后置物理摄像头,它不是最宽的摄像头。我尝试关注Multi-camera API documentation,但对于任何设备我询问是否有任何相机有CameraMetadata.REQUEST_AVAILABLE_CAPABILITIES_LOGICAL_MULTI_CAMERA,它总是返回false。

  • 对于cameraManager.cameraIdList,我似乎总是只买一个前后摄像头。
  • cameraManager.getCameraCharacteristics(cameraId).physicalCameraIds 也总是返回空。
  • cameraManager.getCameraCharacteristics(cameraId).availablePhysicalCameraRequestKeys 也总是返回空。

我可能做错了什么?我的目标是 API 29 并在 API 30 设备上运行。不想使用已弃用的相机 API,但似乎这在该 API 中是可行的。你们还需要什么其他信息?

【问题讨论】:

    标签: android android-camera2 android-camerax multi-camera-api


    【解决方案1】:

    您可以根据传感器尺寸和焦距计算出哪个相机的 FOV 最大。

    Fov Angle = 2*atan(l/2d),其中 l 是传感器尺寸,d 是焦距。

    您可以在此处找到此公式背后的数学原理。 https://stackoverflow.com/a/3261794/11861734

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-12-05
      • 2023-01-20
      • 2022-01-05
      • 2020-05-05
      • 1970-01-01
      • 2012-10-12
      • 1970-01-01
      • 2020-06-15
      相关资源
      最近更新 更多