我想在使用外部鱼眼镜头时,将我的自定义相机焦距设置为无穷远,这是我迄今为止所做的:
builder.set(CaptureRequest.CONTROL_AF_MODE, CaptureRequest.CONTROL_AF_MODE_OFF);
builder.set(CaptureRequest.LENS_FOCUS_DISTANCE, 0.0f);
但结果是如此模糊。
我使用的是三星s6和nexus 5。
外透镜的广角是170度。
有人能帮忙吗?
最佳答案
如果您只是在谈论使用内置相机的镜头来实现鱼眼,那么您应该使用的最低值是:
float minFocalDist = cameraCharacteristics.get(CameraCharacteristics.LENS_INFO_MINIMUM_FOCUS_DISTANCE);
如果你使用的是外部镜头,那么我认为正确的方法实际上是在相机上使用自动对焦,因为那样应该聚焦到鱼眼镜头的焦距…我想。因此,外部镜头是照顾鱼眼和内部是照顾自动对焦。但是,如果这不起作用,那么看看当您将焦距设置为超焦距时会得到什么。这种距离可能不是最佳的,但在大多数情况下应该是有效的…
float hyperFocalDist = cameraCharacteristics.get(CameraCharacteristics.LENS_INFO_HYPERFOCAL_DISTANCE);