Sommaire

Lire les données d’orientation d’une Image:orientationimage

Beaucoup d’images de nos jours sont prises avec des téléphones portables et ne sont pas toujours dans la verticalité. Certaines sont photographiées complètement à l’envers (180 degrés), d’autres inclinées à 90 degrés vers la droite ou la gauche et certaines enfin totalement n’importe comment. Les logiciels de visualisation d’images les redressent souvent automatiquement, sans que l’on s’en rende compte. C’est le cas de Rekognition. Cependant, comme ce dernier reconnaît l’orientation de l’image et la corrige, il fournit des informations comme les coordonnées des bounding box dans le nouveau référentiel. Il faudra en tenir compte si vous gérez l’affichage des résultats depuis votre logiciel client.

Voici donc comment lire les données ExifExif d’une image pour pouvoir la redresser et l’afficher correctement.

Dans l’exemple ci-dessous en C#, nous utilisons la classe Image de System.Drawing, car elle contient la propriété PropertyIdList qui permet de lire les données Exif d’un fichier image. Ces données sont renvoyées sous forme d’un Array. Il suffit alors d’utiliser la méthode IndexOf avec la valeur correspondant aux données d’orientation (la liste des valeurs Exif se trouve dans un format lisible ici : ...