Kamera resmi meta verisi

ARCore, kamera görüntüsü yakalama sonucundaki meta veri anahtar değerlerine erişmek için ImageMetadata kullanmanıza olanak tanır. Erişmek isteyebileceğiniz yaygın kamera görüntüsü meta veri türlerinden bazıları odak uzaklığı, görüntü zaman damgası verileri veya ışıklandırma bilgileridir.

Android Camera modülü, cihazın özelliklerine bağlı olarak, yakalanan her kare için görüntü hakkında 160 veya daha fazla parametre kaydedebilir. Kullanılabilecek tüm meta veri anahtarlarının listesi için ImageMetadata bölümüne bakın.

Tek bir meta veri anahtarının değerini alma

Belirli bir meta veri anahtar değeri almak için getImageMetadata() kullanın ve mevcut değilse MetadataNotFoundException öğesini yakalayın. Aşağıdaki örnekte SENSOR_EXPOSURE_TIME meta veri anahtarı değerinin alınması gösterilmektedir.

Java

// 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()
}