카메라 이미지 메타데이터

ARCore에서는 ImageMetadata를 사용하여 카메라 이미지 캡처 결과입니다. 일반적으로 사용되는 카메라 이미지 메타데이터의 초점 거리, 이미지 타임스탬프 데이터 또는 조명에 액세스할 수 있습니다 확인할 수 있습니다

Android Camera 모듈은 이미지에 관한 매개변수를 160개 이상 기록할 수 있습니다. 캡처된 각 프레임에 대한 캡션을 반환할 수 있습니다. 모든 가능한 메타데이터 키에 대해 자세히 알아보세요. ImageMetadata를 참고하세요.

개별 메타데이터 키의 값 가져오기

getImageMetadata() 사용 를 호출하여 특정 메타데이터 키 값을 가져오고 MetadataNotFoundException를 포착합니다. 찾을 수 없습니다. 다음 예는 SENSOR_EXPOSURE_TIME 메타데이터 키 값입니다.

자바

// Obtain the SENSOR_EXPOSURE_TIME metadata value from the frame.
Long getSensorExposureTime(Frame frame) {
  try {
    // Can throw NotYetAvailableException when sensors data is not yet available.
    ImageMetadata metadata = frame.getImageMetadata();

    // Get the exposure time metadata. Throws MetadataNotFoundException if it's not available.
    return metadata.getLong(ImageMetadata.SENSOR_EXPOSURE_TIME);
  } catch (MetadataNotFoundException | NotYetAvailableException exception) {
    return null;
  }
}

Kotlin

// Obtain the SENSOR_EXPOSURE_TIME metadata value from the frame.
fun getSensorExposureTime(frame: Frame): Long? {
  return runCatching {
      // Can throw NotYetAvailableException when sensors data is not yet available.
      val metadata = frame.imageMetadata

      // Get the exposure time metadata. Throws MetadataNotFoundException if it's not available.
      return metadata.getLong(ImageMetadata.SENSOR_EXPOSURE_TIME)
    }
    .getOrNull()
}