无法专注于附近的物体

Unable to focus on nearby objects

我在使用 Camera2 API 时遇到自动对焦方面的问题。我正在尝试拍摄大约 6-8" 范围内的物体照片,特别是银行支票,但是,直到物体处于大约 12" 范围内时,支票上的文字才非常模糊,而且看起来并不像设备的自动对焦工作正常。当我使用设备内置的相机应用程序时,我完全没有这个问题。

预览和捕获的静止图像都存在模糊。

我正在使用来自 https://github.com/googlesamples/android-Camera2Basic 的代码,并且一直在尝试所有我想尝试的自动对焦设置,到目前为止 none 已经奏效。

这是在三星 Galaxy S5 上。很遗憾,我现在没有任何其他 Android 5 台设备可供试用。

如何实现与原生相机应用程序类似的对此类项目的平滑对焦?

您是否在拍摄最终图像之前通过发出 AF_TRIGGER_START 来锁定自动对焦?您尝试使用哪种自动对焦模式?

相机可以成功对焦的最小焦距是有的,但在10cm的范围内。

好吧,根据对 API 22 的默认相机应用程序代码如何工作的一些调查,我相信我知道这在 S5 上不起作用的原因。似乎是正确的现在,我的设备被视为旧设备(参见 https://developer.android.com/reference/android/hardware/camera2/CameraCharacteristics.html#INFO_SUPPORTED_HARDWARE_LEVEL)。

当设备小于 INFO_SUPPORTED_HARDWARE_LEVEL_FULL 时,默认 Android 摄像头代码回退到已弃用的摄像头 APIs。对我来说,这似乎是某种形式的承认,即 Camera2 还没有为必须稳定支持大量设备的应用程序做好准备。旧 Camera API 工作得很好,我只是想按照建议使用 Camera2 进行新应用程序。

对于将来遇到此问题的任何人,请检查 OneCamera 的状态 - 这看起来像是默认相机的角​​度,并且看起来旧的 PhotoModule 代码最终将被弃用或只是包装对 OneCamera 的调用.为了澄清... OneCamera 是目前似乎只存在于 Android 相机应用程序中的一些代码。它位于:https://android.googlesource.com/platform/packages/apps/Camera.git。我当时用的是棒棒糖发布分支