Android용 Camera2API 자동 초점 맞추기

2433 단어 AndroidCamera2API
Android의 Camera2API를 사용하여 카메라 미리보기 화면 표시
계속

개요


미리보기 화면을 터치하여 이 위치에 초점을 맞추세요.
아래의 보도와 코드를 참고했다.
카메라 2 초점 설정 방법
Basic functionalities of both Camera1 API and Camera2 API with a Google Vision Face Detector added

자동 초점 맞추기 지원 여부


아래와 같이 자동 초점 맞추기에서 측정 구역의 최대 수를 사용할 수 있다
에서 설명한 대로 해당 매개변수의 값을 수정합니다.
값이 1 이상이면 자동 초점 맞추기 지원
Nexus5는 1입니다.
reference: CameraCharacteristics.html#CONTROL_MAX_REGIONS_AF
    Integer maxAFRegions = characteristics.get(CameraCharacteristics.CONTROL_MAX_REGIONS_AF);

MeteringRectangle


초점 측정을 하는 구역을 나타내는 종류.
센서의 xy 좌표로 표시된 직사각형.
터치 미리보기 화면의 위치를 센서의xy 좌표로 변환합니다.
화면과 센서의 xy 좌표의 대응을 미리 보려면 아래 보도를 참고하십시오.
Android의 Camera2API를 사용하여 얼굴 감지
미리보기 화면과 센서의 xy 좌표의 대응은 아래 그림과 같다.

보기 화면의 xy 좌표를 센서의 xy 좌표로 바꾸는 공식은 다음과 같다.
각 모서리에 대한 xy 좌표 비율
sensorX = viewY
 sensorY = 1- viewX

자동 포커스 요청

    MeteringRectangle[] af_regions 
    previewRequestBuilder.set(CaptureRequest.CONTROL_AF_TRIGGER, CameraMetadata.CONTROL_AF_TRIGGER_START);
    previewRequestBuilder.set(CaptureRequest.CONTROL_AF_MODE, CaptureRequest.CONTROL_AF_MODE_AUTO);
    previewRequestBuilder.set(CaptureRequest.CONTROL_AF_REGIONS, af_regions);
    captureSession.capture(previewRequestBuilder.build(), captureCallback, backgroundHandler);
샘플 코드가github에 발표되었습니다.
https://github.com/ohwada/Android_Samples/tree/master/Camera211

좋은 웹페이지 즐겨찾기