User Tools

Site Tools


doc:appunti:photo_comments

Aggiungere commenti alle foto digitali

Exif

Per archiviare i commenti relativi alle foto digitali si è deciso di utilizzare lo standard Exif.

Come riportato dall'articolo della Wikipedia, lo standard Exif ha diversi limiti, soprattutto la scarsa estendibilità che ha generato tante estensioni proprietarie. Si deve verificare con cura che il software utilizzato sappia gestire le estensioni Exif, soprattutto evitando di danneggiarle quando si modifica l'immagine.

Comunque lo standard è abbastanza diffuso e documentato, ampia anche la scelta del software per gestirlo. La comodità principale è quella di avere commento e foto nello stesso file. Fare attenzione: ci potrebbero essere problemi di privacy divulgando un'immagine senza ricordarsi che essa contiene anche il commento scritto.

UserComment

Lo standard Exif ha origine ed estende il meccanismo di tag che si possono aggiungere ad un file TIFF, qui abbiamo un documento che ne descrive la struttura.

Il tag scelto per contenere il commento è UserComment (tag ID 0x9286), poiché può gestire il set di caratteri Unicode (a differenza di ImageDescription). Si tratta di un tag privato Exif, cioè non fa parte dell'insieme dei tag originali TIFF.

Ho scritto un piccolo programma Python di nome exif-comment-edit che consente di editare lo UserComment tramite una dialogbox grafica. È molto comodo come plugin dei visualizzatori di immagini (tipo geeqie). Lo potete scaricare da questa pagina.

exiv2

Il programma per aggiungere/modificare il commento ad una foto è exiv2, si è scelto questo perché supporta il set di caratteri Unicode. Gira in ambiente GNU/Linux e si usa da riga di comando. Per visualizzare i campi Exif:

exiv2 IMG_0269.JPG
Filename        : IMG_0269.JPG
Filesize        : 1578836 Bytes
Camera make     : Canon
Camera model    : Canon PowerShot A540
Image timestamp : 2007:02:11 17:06:42
Image number    : 100-0269
Exposure time   : 1/40 s
Aperture        : F5.6
Exposure bias   : 0
Flash           : (80)
Flash bias      : 0 EV
Focal length    : 7.9 mm
Subject distance: 59
ISO speed       : 100
Exposure mode   : Manual (M)
Metering mode   : Matrix
Macro mode      : Off
Image quality   : Fine
Exif Resolution : 2816 x 2112
White balance   : Tungsten
Thumbnail       : JPEG, 3054 Bytes
Copyright       :
Exif comment    :

Con lo stesso programma si può cambiare il timestamp del file per farlo corrispondere a quello contenuto nei campi Exif, editando il campo UserComment infatti il timestamp del file viene modificato.

exiv2 -M "set Exif.Photo.UserComment Comment charset=Unicode Commento di Niccolò" IMG_2268.JPG
exiv2 -T IMG_2268.JPG

Un altro esempio per aggiungere il tag Copyright in codifica ASCII:

exiv2 -M "set Exif.Image.Copyright Ascii CC-By-SA Niccolo Rigacci <niccolo@rigacci.org>" image.jpg 

ATTENZIONE: non usare il programma exifcom del pacchetto exiftags, non supporta i caratteri Unicode e non è in grado di allocare spazio per lo UserComment, al massimo consente di sovrascrivere quello esistente. Questo almeno alla versione 0.98.

doc/appunti/photo_comments.txt · Last modified: 2022/05/05 08:14 by niccolo