AA_tools_lusi_scx_1200629.jpg

© Lusi, sxc.hu

Alles im Griff

Metainformationen bearbeiten und Bilder organisieren mit Exiftool

13.08.2010
Das Perl-Programm Exiftool erweist sich beim Umgang mit Metadaten als Schweizer Taschenmesser: Mit ihm organisieren Sie Ihre Bilder ruckzuck in einem sauber geordneten Archiv.

Zurück aus dem Urlaub, wandern die Bilder aus der ganzen Welt in der Regel in eine Fotodatenbank. Wer sich aber nicht darauf verlassen möchte, dass deren Tags und Kategorien zuverlässig kompatibel mit kommenden Versionen der Software bleiben, der nutzt das Dateisystem für eine grundlegende Struktur in den Aufnahmen. Das Perl-Programm Exiftool [1] leistet dabei zuverlässig Hilfe. Angenehmerweise holen Sie sich die Software ohne viel Aufwand auf die Platte (siehe Kasten "Installation").

Installation

Wer in den Repositories nach dem Begriff exif sucht, findet zwar einige Programme wie Exif, Exifprobe oder Exiftran, die aber allesamt nur einen Teil des Funktionsumfangs von Exiftool abdecken. Letzteres fällt nicht direkt ins Auge, da es als Teil einer Perl-Bibliothek (libimage-exif-perl) entstand. Manche Distributionen paketieren es aber in ein eigenes Paket (libimage-exiftool-perl). Die Namen weichen je nach verwendetem System vermutlich etwas ab.

Selbst ältere Versionen unterstützen bereits eine Vielzahl an Dateiformaten. Daher brauchen Sie in der Regel nichts weiter zu tun, als den Paketmanager anzuwerfen und die Software zu installieren.

Der Griff zur aktuellsten Version von der Website empfiehlt sich dann, wenn dies den Support für ein neueres, von Ihnen verwendetes Format verspricht. Die Bibliothek – und damit verbunden das Programm Exiftool – versteht sich nämlich nicht nur auf Bildformate: Sie beherrscht noch viele weitere Medienformate, wie zum Beispiel M2TS*[2], die auf manchen modernen Camcordern zum Einsatz kommt.

Um den digitalen Aufnahmen eine erste Ordnung zu verleihen, bietet es sich an, sie nach Datum zu organisieren. Eine mögliche Variante wäre ein Ordner pro Jahr mit Unterordnern für den Monat sowie darunter für den Tag, falls viele Dateien anfallen. Fotografieren Sie selten, reicht vermutlich eine weitere Ebene unterhalb des Jahres-Ordners.

Um die Bilder nun nicht von Hand zu sortieren, nutzen Sie am einfachsten die Informationen, die in den Bilddateien selbst stecken – die sogenannten EXIF-Tags. Das Tag DateTimeOriginal beispielsweise liefert, sofern Sie die Kamera korrekt eingestellt haben, das passende Datum zur Aufnahme. Das verwenden Sie nun, um mit Exiftool die Files vollautomatisch ins Archiv zu verschieben.

Das Programm beherrscht eine Vielzahl von Operationen auf EXIF-Daten. Die Website sowie die Manpage des Programms geben ausführlich darüber Auskunft. Für den genannten Fall machen Sie sich zunutze, dass die Software auf Wunsch Werte aus den EXIF-Tags als Eingabe für Operationen verwendet. Darüber hinaus bietet es die Möglichkeit, beim Umbenennen einen Formatstring einzusetzen, der Pfadtrenner enthält. Als Goodie erstellt es beim Verschieben der Bilder gleich alle noch fehlenden Verzeichnisstrukturen.

In einem Rutsch

Übergeben Sie Exiftool ein Verzeichnis als Argument, so bearbeitet es alle Dateien darin. Mit -r taucht es in Unterverzeichnisse ab, mit -ext EXT beschränken Sie das Bearbeiten auf Dateien mit der Endung EXT. In diesem sowie im Fall von Tags spielt es keine Rolle, ob Sie die Groß/Kleinschreibung beachten oder nicht.

Um den Zeitstempel der Dateien zu erhalten, wählen Sie die Option -P. Damit sehen Sie im Dateimanager ebenfalls den genauen Zeitpunkt der Aufnahme. Haben Sie die Dateien mittlerweile verschoben, stimmt dieses Datum natürlich nicht mehr mit dem Aufnahmedatum überein. Daher bietet es sich an, dies in einem ersten Schritt zu korrigieren. Das erledigen Sie mit dem folgenden Befehl:

exiftool -'filemodifydate<createdate' Dateiname

Die einfachen Anführungszeichen um die beiden Tags brauchen Sie, um zu verhindern, dass die Shell den Befehl auswertet und als Umleitung versteht.

Geben Sie als Argument statt eines Dateinamens ein Verzeichnis an, so bearbeitet das Programm wiederum alle Dateien darin. Für jedes File legt die Software aber in beiden Fällen eine Kopie des Originals an, an dessen Namen sie die Endung _original anhängt. Mit der Option -overwrite_original verhindern Sie das.

Da zu diesem Zeitpunkt vielleicht noch alle Dateien in einem Verzeichnis liegen, bietet es sich an, diese eventuell auch mit einem Kommentar und einem Copyright-Vermerk zu versehen:

exiftool -overwrite_original -P -copyright="Max Mustermann" -comment="Alle Mann nach Mallorca" Verzeichnis

Exiftool unterstützt weitere ausgeklügelte Operationen, mit denen Sie zum Beispiel die wichtigen Datumsangaben anpassen, falls Sie nach Umstellen auf die Sommer- oder Winterzeit vergessen haben, die Angaben in der Kamera zu aktualisieren. Zu den ausgefeiltesten Operationen gehört das Umbenennen der Dateien, wobei in diesen Prozess auch die Werte aus den Tags in der Datei einfließen dürfen.

Mit Format

Wie schon erwähnt liefert das EXIF-Tag DateTimeOriginal den Zeitpunkt (laut Kamera), zu dem Sie die Aufnahme gemacht haben. Wollen Sie also die Dateien entsprechend umbenennen, nutzen Sie dazu einen Formatstring, dessen Elemente sich aus einer Kombination von Prozentzeichen mit einem Buchstaben zusammensetzen. Die Bedeutung der Buchstaben korrespondiert mit Teilen des Datums respektive der Uhrzeit. So steht %m beispielsweise für den Monat, geschrieben als zweistellige Ziffer, oder %Y für das Jahr, geschrieben als vierstellige Ziffer.

Eine ausführliche Hilfe zu den verschiedenen Elementen eines Formatstrings finden Sie auf der Website von Exiftool. Hier erläutert der Autor auch, wie Sie die Prozentzeichen richtig setzen, wenn Sie die Technik in Skripten einsetzen möchten. Er zeigt zudem, welche zusätzlichen Zeichen es gibt, um Bestandteile des Pfads oder des Dateinamens mit in den String aufzunehmen. So kommt im Beispiel der Teil %%e zum Einsatz, der die Endung des alten Dateinamens an dieser Stelle einsetzt.

Um doppelt sicher zu gehen, legt der folgende Formatstring die Bilddaten jeweils in eine Dateisystemhierarchie aus Jahr, Monat und Tag und benennt gleichzeitig das Bild um, so dass der Name Datum und Uhrzeit getrennt durch einen Unterstrich reflektiert:

exiftool -P -'Filename<DateTimeOriginal' -d %Y/%m/%d/%Y%m%d_%H%M%S.%%e Verzeichnis

Läuft alles nach Plan, so finden Sie im Zielverzeichnis die gewünschte Hierarchie mit den umbenannten Bildern. Exiftool teilt am Ende des Durchlaufs mit, wieviele Verzeichnisse und Dateien es gescannt und wie viele Files es bearbeitet hat (Abbildung 1).

Abbildung 1: Nach einem Durchlauf macht Exiftool Angaben über die modifizierten Dateien.

Da sich fast alle Digitalkameras heute als externe Festplatte am System anmelden, beschränkt sich der Import mittels Exiftool auf eine Kommandozeile. Diese ließe sich zum Beispiel mittels einer Udev-Regel noch automatisieren [3]. Auf diese Weise könnten die Fotos nach dem Anstecken der Kamera an das USB-Kabel des Rechners künftig vollautomatisch ins Fotoarchiv wandern – bequemer geht es kaum.

Das Umbenennen der Bilder bringt einen Nachteil mit sich: Haben Sie sich beispielsweise auf einem Zettel während einer Reise Notizen zur Bildnummer gemacht, so fällt es nun schwer, diese zuzuordnen. Manche Kameras speichern allerdings die Bildnummer im Tag FileNumber. Dabei handelt es sich aber um eine herstellerspezifische "Marker Note" (siehe Kasten "EXIF, IPTC, XMP"), die sich nicht einmal in allen Modellen des gleichen Herstellers findet.

Da der Original-Dateiname nicht in den Standard-Tags von EXIF, IPTC oder XMP vorkommt, gilt es hier zu improvisieren. So ließe sich zum Beispiel das Feld ImageUniqueID missbrauchen, um darin den Dateinamen zu speichern. Da sich nach einer gewissen Zeit aber aufgrund des Namensschemas moderner Digitalkameras die Namen wiederholen, bringt das auf lange Sicht nur bedingt einen Ausweg. Sie brauchen dann trotzdem eine zweite Angabe, wie zu Beispiel das Datum.

EXIF, IPTC, XMP

Im Laufe der Zeit haben sich mehrere Ansätze herauskristallisiert, um Metadaten – also Angaben über den Autor, Inhalte und wie bei Fotos, technischen Details – in den Dateien einzubetten. Bei digitalen Bildern greifen die Hersteller bevorzugt auf das Exchangeable Image File Format (EXIF) zurück, dass aus der Schmiede der Japan Electronic and Information Technology Industries Association (JEITA) [4] stammt.

Vor allem im Bereich professioneller Fotografie kommen eine Reihe Tags zum Einsatz, die aus dem Information Interchange Model (IIM) der Newspaper Association of America (NAA) stammen und anschließend vom International Press Telecommunications Council (IPTC) weiterentwickelt wurde. Daher trägt der entsprechende Standard heute offiziell den Namen IPTC-NAA, in der Praxis verkürzt sich dies aber zu IPTC [5].

Mittlerweile verwenden viele Agenturen und Bilddatenbanken neben diesen Tags auch Adobes Extensible Metadata Platform (XMP), um Informationen in elektronischem Material zu speichern. Dieses Format basiert auf dem vom World Wide Web Consortium verabschiedeten RDF-Format [6].

Neben diesen Standards zum Speichern von Metadaten existieren die sogenannten Marker Notes: Dahinter verbergen sich herstellerspezifische Informationen, die nicht über alle Marken gleich umfangreiche ausfallen. Das führt beim Entschlüsseln der Informationen oft zu erheblichen Schwierigkeiten (siehe Kasten "Interview mit Phil Harvey").

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

  • Klare Strukturen
    Das Perl-Programm Exiftool erweist sich beim Umgang mit Metadaten als Schweizer Taschenmesser: Mit ihm organisieren Sie Bilder im Handumdrehen in einem sauber geordneten Archiv.
  • Bilder richtig taggen
    Können Sie die Metainformationen Ihrer Fotos auch noch in 20 Jahren lesen? Erst allmählich gibt es (Open-Source)-Lösungen, welche die verschiedenen Standards harmonisieren.
  • Bilder mit Geodaten aufbereiten
    Wenn jemand eine Reise tut, so kann er was erzählen – und das am besten nicht mit endlosen Diashows, sondern einem hübsch aufgemachten Track, mit den passenden Aufnahmen garniert.
  • Foto-Workflow mit Bibble 5
    Profitaugliche Fotosoftware gibt es meist nur für Windows oder den Mac. Zu den wenigen Ausnahmen zählt das kommerziell vertriebene Bibble 5, ein direkter Konkurrent von Adobe Lightroom. Doch das umfangreiche Programm zeigt auch einige Schwächen.
  • Bildverarbeitung mit den Skriptsprachen Perl und Python
    Mit nur wenigen Zahlen Code korrigieren Sie das Format digitaler Bilder, passen die Metadaten an oder beschriften die Fotos für den Upload in ein Online-Album.
Kommentare

Infos zur Publikation

LU 01/2015: E-Books im Griff

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Ubuntu 14.10 und VirtualBox
Ubuntu 14.10 und VirtualBox
Tim Schürmann, 08.11.2014 18:45, 0 Kommentare

Wer Ubuntu 14.10 in einer virtuellen Maschine unter VirtualBox startet, der landet unter Umständen in einem Fenster mit Grafikmüll. Zu einem korrekt ...

Aktuelle Fragen

PCLinuxOS Version 2014.08 "FullMonty" Umstellung auf deutsch
Karl-Heinz Welz, 19.12.2014 09:55, 3 Antworten
Hallo, liebe Community, ich bin 63 Jahre alt und möchte jetzt nach Jahrzehnten Windows zu Linux...
ICEauthority
Thomas Mann, 17.12.2014 14:49, 2 Antworten
Fehlermeldung beim Start von Linux Mint: Could not update ICEauthority file / home/user/.ICEauth...
Linux einrichten
Sigrid Bölke, 10.12.2014 10:46, 5 Antworten
Hallo, liebe Community, bin hier ganz neu,also entschuldigt,wenn ich hier falsch bin. Mein Prob...
Externe USB-Festplatte mit Ext4 formatiert, USB-Stick wird nicht mehr eingebunden
Wimpy *, 02.12.2014 16:31, 0 Antworten
Hallo, ich habe die externe USB-FP, die nur für Daten-Backup benutzt wird, mit dem YaST-Partition...
Steuern mit Linux
Siegfried Markner, 01.12.2014 11:56, 2 Antworten
Welches Linux eignet sich am besten für Steuerungen.