私は Android camera2 API を使用しています。
マニュアル フォーカス モードで LENS_FOCUS_DISTANCE を使用してフォーカス距離値を取得できます。ただし、AF モードではプロパティは常に 0 です。AFモードで焦点距離を取得する方法はありますか?
私は Android camera2 API を使用しています。
マニュアル フォーカス モードで LENS_FOCUS_DISTANCE を使用してフォーカス距離値を取得できます。ただし、AF モードではプロパティは常に 0 です。AFモードで焦点距離を取得する方法はありますか?
レンズ最前面からピントが合う最短距離。
レンズが固定焦点の場合、これは 0 になります。
http://developer.android.com/intl/es/reference/android/hardware/camera2/CameraCharacteristics.html
他の方法で、フォーカスを管理したい場合LENS_INFO_MINIMUM_FOCUS_DISTANCE
は、最小のフォーカスを与えることを覚えておいてください。ただし、「最大」のフォーカスを取得するには、LENS_INFO_HYPERFOCAL_DISTANCE
.
float yourMinFocus = mCameraCharacteristics.get(CameraCharacteristics.LENS_INFO_MINIMUM_FOCUS_DISTANCE);
float yourMaxFocus = mCameraCharacteristics.get(CameraCharacteristics.LENS_INFO_HYPERFOCAL_DISTANCE);
2021 年に CameraX を使用する場合、LENS_INFO_MINIMUM_FOCUS_DISTANCE などのカメラの特性を確認する方法は次のとおりです。
theCamera = cameraProvider.bindToLifecycle(...
CameraCharacteristics camChars = Camera2CameraInfo
.extractCameraCharacteristics(theCamera.getCameraInfo());
float discoveredMinFocusDistance = camChars
.get(CameraCharacteristics.LENS_INFO_MINIMUM_FOCUS_DISTANCE);
Log.i("dev", "min focus is " + discoveredMinFocusDistance);