Metadata gambar kamera

ARCore memungkinkan Anda menggunakan ArImageMetadata mengakses nilai kunci metadata dari hasil pengambilan gambar kamera. Agak besar jenis {i>metadata<i} gambar kamera yang umum mungkin ingin Anda akses adalah panjang fokus, data stempel waktu gambar, atau informasi pencahayaan.

Modul Camera Android dapat merekam 160 atau lebih parameter tentang gambar untuk setiap {i>frame<i} yang ditangkap, tergantung pada kemampuan perangkat. Untuk mengetahui daftar semua mungkin untuk kunci metadata, lihat dokumentasi Camera NDK.

Mendapatkan nilai masing-masing tag metadata

Gunakan ArImageMetadata_getConstEntry() untuk mendapatkan nilai tag metadata tertentu. Contoh berikut menunjukkan cara mendapatkan nilai metadata ACAMERA_SENSOR_EXPOSURE_TIME:

ArSession_update(session, frame);

// Obtain the metadata object from the frame.
ArImageMetadata* ar_metadata;
ArFrame_acquireImageMetadata(session, frame, &ar_metadata);

// Get the exposure time metadata (using ACAMERA_SENSOR_EXPOSURE_TIME in this
// example).
ArImageMetadata_const_entry exposure_entry;
ArImageMetadata_getConstEntry(session, ar_metadata,
                              ACAMERA_SENSOR_EXPOSURE_TIME, &exposure_entry);

Mendapatkan daftar semua tag metadata untuk frame tertentu

Gunakan ArImageMetadata_getAllKeys() untuk mendapatkan daftar semua kunci metadata yang diambil untuk {i>frame<i} tertentu.

ArSession_update(session, frame);

// Obtain the metadata object from the frame.
ArImageMetadata* ar_metadata;
ArFrame_acquireImageMetadata(session, frame, &ar_metadata);

// Obtain the list of all the metadata for a given frame.
const uint32_t* all_tags = NULL;
int32_t number_of_tags = -1;

ArImageMetadata_getAllKeys(session, ar_metadata, &number_of_tags, &all_tags);