ios - 如何获取超宽相机标定数据?
问题描述
是否可以获得AVCapturePhoto::cameraCalibrationData
超宽相机的校准数据?
文档说:
仅当您在请求捕获时指定了 cameraCalibrationDataDeliveryEnabled 和 dualCameraDualPhotoDeliveryEnabled 设置时,才会出现相机校准数据。
但dualCameraDualPhotoDeliveryEnabled
已被弃用。
我试图设置cameraCalibrationDataDeliveryEnabled
并builtInDualWideCamera
没有builtInUltraWideCamera
任何成功。
解决方案
校准数据旨在为您提供有关虚拟相机捕获场景中多个相机的内在特性的信息。这曾经是双摄像头(随 iPhone X 引入),但随着 iPhone 11 Pro 的发布,API 改变了它的命名。现在调用它isVirtualDeviceConstituentPhotoDeliveryEnabled
,您现在可以使用virtualDeviceConstituentPhotoDeliveryEnabledDevices
.
请注意,校准数据似乎仅适用于涉及至少两个摄像头的虚拟设备(so和builtInDualCamera
)。builtInDualWideCamera
builtInTripleCamera
推荐阅读
- php - PHP 中有原生的多维、多类型排序吗?
- postgresql - 如何将显着性测试和相关性计算添加到 cube.js 流中?
- laravel - Laravel - 将数据更新到 2 个相关表中失败
- python - Django Admin 不允许向表中输入数据
- docker - 在 Jenkinsfile 中执行 Dockerfile
- html - 可以让子元素占据上一级父元素的 50% 吗?
- html - 具有三个 div 的边框的可见性
- angular - 根据测试执行顺序,使用 TestBed.inject 的 Angular 单元测试成功/失败
- javascript - 如果值更改,javascript更新视图
- php - Symfony4:从数据库(实体)保存安全用户会话不起作用