ARCore vous permet d'utiliser ImageMetadata
pour accéder aux clés-valeurs de métadonnées
résultat de la capture d'image de l'appareil photo. Voici quelques types courants de métadonnées
d'image d'appareil photo que vous
peuvent être consultées : longueur focale, code temporel des images ou luminosité
des informations.
Le module Camera
Android peut enregistrer 160 paramètres ou plus concernant l'image
pour chaque image capturée, en fonction des capacités de l'appareil. Pour obtenir la liste de tous
clés de métadonnées possibles, consultez la section ImageMetadata
.
Obtenir la valeur d'une clé de métadonnées individuelle
Utiliser getImageMetadata()
pour obtenir une clé-valeur de métadonnées spécifique et intercepter MetadataNotFoundException
si elle n'est pas disponible. L'exemple suivant montre comment obtenir
Clé-valeur de métadonnées SENSOR_EXPOSURE_TIME
.
Java
// Obtain the SENSOR_EXPOSURE_TIME metadata value from the frame. Long getSensorExposureTime(Frame frame) { try { // Can throw NotYetAvailableException when sensors data is not yet available. ImageMetadata metadata = frame.getImageMetadata(); // Get the exposure time metadata. Throws MetadataNotFoundException if it's not available. return metadata.getLong(ImageMetadata.SENSOR_EXPOSURE_TIME); } catch (MetadataNotFoundException | NotYetAvailableException exception) { return null; } }
Kotlin
// Obtain the SENSOR_EXPOSURE_TIME metadata value from the frame. fun getSensorExposureTime(frame: Frame): Long? { return runCatching { // Can throw NotYetAvailableException when sensors data is not yet available. val metadata = frame.imageMetadata // Get the exposure time metadata. Throws MetadataNotFoundException if it's not available. return metadata.getLong(ImageMetadata.SENSOR_EXPOSURE_TIME) } .getOrNull() }