其他分享
首页 > 其他分享> > 如何在Android的Camera2 API中设置无限远焦点?

如何在Android的Camera2 API中设置无限远焦点?

作者:互联网

我想在使用外部鱼眼镜头时将自定义相机的焦距设置为无穷远,这是我到目前为止所做的:

builder.set(CaptureRequest.CONTROL_AF_MODE, CaptureRequest.CONTROL_AF_MODE_OFF);
builder.set(CaptureRequest.LENS_FOCUS_DISTANCE, 0.0f);

但是结果太模糊了.

我正在使用Samsung S6和Nexus 5.
外部镜头的广角为170度.

有人可以帮忙吗?

解决方法:

如果您只是在谈论使用内置摄像机的镜头实现鱼眼镜头,那么您应该使用的最低值是:

float minFocalDist = cameraCharacteristics.get(CameraCharacteristics.LENS_INFO_MINIMUM_FOCUS_DISTANCE);

如果您使用的是外部镜头,那么我认为正确的方法实际上是在相机上使用自动对焦,因为这应该对焦于鱼眼镜头的焦距…我认为.因此,外部镜头可保护鱼眼镜头,内部镜头可实现自动对焦.但是,如果这不起作用,那么将焦距设置为超焦距时,您会看到什么.该距离可能不是最佳距离,但在大多数情况下应该可以使用…

float hyperFocalDist = cameraCharacteristics.get(CameraCharacteristics.LENS_INFO_HYPERFOCAL_DISTANCE);

标签:android-camera2,android
来源: https://codeday.me/bug/20191111/2022064.html