Ordnerweise Bilder validieren mit ImageMagick

ImageMagick ist ein Bildprogramm, dessen GUI zunächst einmal nicht darauf hindeutet, als würde das Programm sehr viel können.

Die wahre Funktionalität verbirgt sich in der Kommandozeile. Diejenigen von uns, die täglich mit digitaler Langzeitarchivierung befasst sind, sind allerdings nicht unbedingt immer den Umgang mit der Kommandozeile gewohnt. Außerdem muss man bei ImageMagick noch ein wenig weiter gehen und ein Batch-Programm erstellen, sofern man beispielsweise ganze Ordner bearbeiten bzw. analysieren und validieren möchte.

Batch Programm für das Validieren ganzer Ordner

Rein theoretisch ist so ein Batch-Programm leicht geschrieben. In einem Editor (z. B. Notepad++) den Text eintippen, dann mit der Endung ".bat" abspeichern und bei Bedarf mit Doppelklick starten. Hier ein Beispiel für den Wunsch, alle TIFF-Dateien eines Ordners zu validieren:

@echo off
echo Ordner angeben, in denen TIFFs liegen
echo **************************
rem Ordner angeben
set /p inputfolder= Ordner :
for /r "%inputfolder%\" %%X in (*.tif) do (magick identify "%%X" 1>> tiffreport.txt 2>&1)
pause

Allerdings validiert dieser Batch tatsächlich nur TIFFs und zwar auch nur diejenigen, die exakt ".tif" als Endung haben. Immerhin schreibt er alles in die Ergebnisdatei "tiffreport.txt", auch die Fehlermeldungen. Sofern das Programm mehrfach gestartet wird, schreibt der Batch die Ergebnisse immer weiter fortlaufend in die "tiffreport.txt"-Datei und hängt sozusagen immer mehr an. Möchte man das nicht, muss man entweder die Datei im Ordner umbenennen oder den Dateinamen im Batchtext verändern.

Ein anderes Beispiel für JPEG

@echo off
echo Ordner angeben, in denen Dateien liegen
echo **************************
rem Ordner angeben
set /p inputfolder= Ordner :
for /r "%inputfolder%\" %%X in (*.jpg) do (magick identify "%%X" 1>> jpegreport.txt 2>&1)
pause

Auch hier ist es so, dass die Endung exakt ".jpg" heißen muss, sonst wird die Datei nicht untersucht.

Die Ausgabe sieht dann z. B. so aus:

C:\Users\Friese Yvonne\FileSamples\TIFF\Digi-Zentrum\dienstleister\82637266X_0044_raw.tif TIFF 6280x4628 6280x4628+0+0 8-bit sRGB 87.86MB 0.016u 0:00.012
identify: Incorrect value for "Photoshop"; tag ignored. `TIFFFetchNormalTag' @ warning/tiff.c/TIFFWarnings/918.