מטא-נתונים של תמונת מצלמה

בעזרת ARCore אפשר להשתמש ב-ArImageMetadata כדי לגשת לערכי מפתח של מטא-נתונים מתוצאת צילום התמונה במצלמה. במידה מסוימת סוגים נפוצים של מטא-נתונים של תמונת מצלמה שאולי תרצו לגשת אליהם הם התמקדות, חותמת זמן של תמונה או מידע על התאורה.

במודול Camera של Android אפשר להקליט 160 פרמטרים או יותר לגבי התמונה. לכל פריים שתועד, בהתאם ליכולות המכשיר. לרשימה של כל למפתחות מטא-נתונים אפשריים, כדאי לעיין במסמכי התיעוד בנושא Camera של NDK.

קבלת הערך של תג מטא-נתונים מסוים

שימוש ב-ArImageMetadata_getConstEntry() כדי לקבל ערך ספציפי של תג מטא-נתונים. בדוגמה הבאה מוצגת קבלת ערך המטא-נתונים 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);

קבלת רשימה של כל תגי המטא-נתונים של מסגרת נתונה

באמצעות ArImageMetadata_getAllKeys() אפשר לקבל רשימה של כל מפתחות המטא-נתונים שתועדו למסגרת נתונה.

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);