カメラ画像のメタデータ

ARCore では、ArImageMetadata を使用できます。 カメラ画像のキャプチャ結果のメタデータキー値にアクセスします。一部 アクセスする必要のあるカメラ画像メタデータの一般的なタイプは、焦点距離、 画像のタイムスタンプ データ、照明情報などです。

Android Camera モジュールは、画像に関する 160 以上のパラメータを記録できます。 (デバイスの機能に応じて)にキャプチャします。すべての Pod のリストが 使用可能なメタデータキーについては、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);