Metadata gambar kamera

Dengan ARCore, Anda dapat menggunakan ArImageMetadata untuk mengakses nilai kunci metadata dari hasil pengambilan gambar kamera. Beberapa jenis umum metadata gambar kamera yang mungkin ingin Anda akses adalah panjang fokus, data stempel waktu gambar, atau informasi pencahayaan.

Modul Camera Android dapat merekam 160 parameter atau lebih tentang gambar untuk setiap frame yang diambil, bergantung pada kemampuan perangkat. Untuk mengetahui daftar semua kemungkinan kunci metadata, lihat Dokumentasi Camera NDK.

Mendapatkan nilai dari setiap 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 frame 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);