Dizionario

Che cos'è l'orientamento dell'immagine?

L'orientamento è il metadato che dice al software come ruotare o capovolgere una foto o un video in modo che appaia diritto.

orientation

L'orientamento dell'immagine è la direzione in cui una foto è rivolta quando la guardi: dritta, capovolta, girata su un lato o specchiata. Nei metadati del file, il campo Orientation indica al software come ruotare l'immagine memorizzata perché appaia dritta.

In fotografia, orientamento significa spesso verticale (portrait) o orizzontale (landscape). Una foto verticale è più alta che larga, una foto orizzontale è più larga che alta. Quando scatti una foto, la fotocamera o il telefono salvano nel file il modo in cui li tenevi come dati di orientamento.

Quali file lo contengono

Il tag Orientation fa parte dello standard Exif, che lo riprende dal formato TIFF. Il suo ID di tag è 0x0112, cioè 274 in decimale. Lo standard lo elenca come tag consigliato per l'immagine principale e lo trovi in questi file:

  • JPG e foto TIFF da fotocamere e telefoni
  • Immagini HEIC, PNG e WebP, che possono tutte contenere un blocco di dati Exif

Un file HEIC può anche salvare rotazione ed effetto specchio come proprietà separate del suo contenitore, chiamate irot e imir. Alcune fotocamere aggiungono anche un tag privato. Alcuni modelli Canon scrivono CameraOrientation, che in un report dei metadati viene mostrato come Horizontal (normal), Rotate 90 CW o Rotate 270 CW.

Come appaiono i valori

All'interno del file, il valore è un numero da 1 a 8. Ogni numero indica dove devono comparire sullo schermo la prima riga e la prima colonna di pixel memorizzati. Un report dei metadati di solito ne mostra il significato a parole, dove CW significa in senso orario:

  • 1 è Horizontal (normal): l'immagine è memorizzata dritta, quindi non cambia nulla
  • 3 è Rotate 180: l'immagine è memorizzata capovolta
  • 6 è Rotate 90 CW: il software ruota l'immagine di 90 gradi in senso orario prima di mostrarla
  • 8 è Rotate 270 CW: il software ruota l'immagine di 270 gradi in senso orario, cioè 90 gradi in senso antiorario
  • 2, 4, 5 e 7 aggiungono un effetto specchio, ad esempio Mirror horizontal

Lo standard contrassegna tutti gli altri numeri come riservati. Un valore al di fuori di 1-8 quindi non ha un significato definito.

Come i video memorizzano la rotazione

I file video gestiscono l'orientamento in modo diverso. Un file MP4 o MOV salva una matrice di visualizzazione nell'header della sua traccia video. Questa matrice indica al player come ruotare o ribaltare i fotogrammi prima di mostrarli.

I programmi che leggono i metadati trasformano questa matrice in un singolo angolo in gradi. ExifTool conta l'angolo in senso orario, mentre FFmpeg lo conta in senso antiorario in un intervallo da -180 a 180. Lo stesso video può quindi mostrare 90 in un report e -90 in un altro.

Perché è importante per il tuo file

Il valore di Orientation non sposta alcun pixel. I pixel restano nell'ordine in cui la fotocamera li ha salvati e il tag indica solo al visualizzatore come mostrarli. I browser web applicano il tag in modo predefinito, ma un programma che lo ignora mostra una foto verticale sdraiata su un lato.

Per questo motivo larghezza e altezza possono anche sembrare invertite. Image Width e Image Height descrivono i pixel memorizzati prima di qualsiasi rotazione. Una foto verticale con Rotate 90 CW può quindi riportare una larghezza maggiore dell'altezza.

La modifica può causare un secondo problema. Se un programma ruota i pixel ma mantiene il vecchio tag, l'immagine viene ruotata due volte. Lo standard Exif raccomanda che il software di editing riporti Orientation a 1 dopo aver ruotato un'immagine.

Le pagine PDF usano un proprio campo. Page Rotation ruota l'intera pagina in senso orario a passi di 90 gradi quando la pagina viene visualizzata o stampata.