Mes photos ne sont pas reconnues comme des 360°. Que faire (scripts) ?


Il peut arriver, notamment lorsque l'on découpe des images depuis une vidéo 360°, que les informations attachées à chaque image (les métadonnées) ainsi extraite n'indique pas qu'il s'agit d'une photo 360°. En bref, Mapillary va bien afficher les photos, mais comme des photos "classiques", ce qui fait perdre tout son intérêt et sa lisibilité aux photos 360° !

Comme les métadonnées n'apparaissent pas dans les images, il faut les inscrire. Pour ce faire, il existe une méthode décrite dans les points 2 et 3 de l'article suivant.

Le point 2 explique comment lire les métadonnées qui nous intéressent.
Le point 3 comment écrire les métadonnées en question.

Cela se fait en 3 étapes :
  • 1. Télécharger et installer [[https://exiftool.org/ ExifTool]] (pour Windows et Mac uniquement), programme en ligne de commande qui permet de lire et écrire des métadonnées d'images. Le renommer en "exiftool.exe".
  • 2. Télécharger et installer ExifToolGUI (plus maintenu depuis 2015...). Ce logiciel sert à avoir une interface pour lire les métadonnées ce qui évite de passer par les lignes de commande ExifTool. Créer le fichier "GPano.ini" avec les lignes indiquées dans l'article puis charger ce fichier en tant que "workspace" dans ExifToolGUI. Les métadonnées GPano donc celles des 360° apparaissent quand on ouvre une image...

  • 3. Lancer un batch (fichier ".bat") en le placant dans le dossier d'images 360° qu'on veut traiter. Ce ".bat" utilise ExifTool en ligne de commande pour créer les métadonnées GPano qui vont indiquer que c'est un 360° avec ses dimensions notamment. Le batch de l'article modifié est ci-dessous (lignes à copier, à adapter avec le chemin d'accès à ExifTool et à enregistrer dans un fichier .bat donc).

for %%f in (*) do ( "C:\Program Files (x86)\Exiftool\exiftool.exe" -ProjectionType="equirectangular" -UsePanoramaViewer="True" -"PoseHeadingDegrees<$exif:GPSImgDirection" -"CroppedAreaImageWidthPixels<$ImageWidth" -"CroppedAreaImageHeightPixels<$ImageHeight" -"FullPanoWidthPixels<$ImageWidth" -"FullPanoHeightPixels<$ImageHeight" -CroppedAreaLeftPixels="0" -CroppedAreaTopPixels="0" %%f ) PAUSE

On obtient au final des 360° que Mapillary reconnaît bien comme des 360° ! La preuve en images :