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

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

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

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

שימוש ב-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);