Установка расстояния фокусировки с помощью LENS_FOCUS_DISTANCE Camera2 API не установлена ​​на заданном расстоянии - PullRequest
0 голосов
/ 27 февраля 2019

На Android-камере api2 мы пытаемся установить LENS_FOCUS_DISTANCE для достижения функции ручной фокусировки в приложении.для этого мы делаем следующий процесс: -

1> мы принимаем расстояние фокусировки как ввод от пользователя в единице измерения за сантиметр.

2> Преобразование сантиметра в диоптрию по формуле 100f /(значение в сантиметре), где f для преобразования его в число с плавающей точкой.Это значение результата мы передаем, используя LENS_FOCUS_DISTANCE

3> Используемый код

final CaptureRequest.Builder captureBuilder = mCameraDevice.createCaptureRequest (CameraDevice.TEMPLATE_STILL_CAPTURE);captureBuilder.set (CaptureRequest.CONTROL_AF_MODE, CaptureRequest.CONTROL_AF_MODE_OFF);captureBuilder.set (CaptureRequest.LENS_FOCUS_DISTANCE, mLensFocusDistance);

Мы помещаем один объект на 45 см, но он становится не в фокусе, если мы устанавливаем LENS_FOCUS_DISTANCE на 45 см, фокус работает нормально, если объект находится на расстоянии 35 сми мы устанавливаем LENS_FOCUS_DISTANCE как 45 см.

Мы используем телефон Pixel2 для этого эксперимента.Любая помощь будет высоко оценена.

...