it-swarm-eu.dev

Extrahieren von Metadaten aus Rohbildern (DSLR-Kamera)

Ich bin auf der Suche nach einem Tool, das aus Rohbildern einer digitalen Spiegelreflexkamera (in meinem Fall Canon EOS 550D) Metadaten extrahiert.

Die Fotos können mit einer neueren Version von ufraw konvertiert werden ( hier ist die PPA dafür).

Bei meiner Kompaktkamera verwende ich einfach exif, das nur auf JPG funktioniert und nicht mit RAW-Bildern.

Irgendwelche Hinweise?

4
ddeimeke

Aus der Beschreibung des Pakets exifprobe:

Exifprobe liest von Digitalkameras erzeugte Bilddateien (einschließlich mehrerer sogenannter "Raw" -Dateiformate) und meldet die Struktur der Dateien sowie die darin enthaltenen Zusatzdaten und Metadaten. Zusätzlich zu TIFF, JPEG und EXIF ​​versteht das Programm mehrere Formate, die "Rohdaten" der Kamera enthalten können, einschließlich MRW, CIFF/CRW, JP2/JPEG2000, RAF und X3F sowie die meisten von TIFF abgeleiteten Rohdaten "Formate, einschließlich DNG, ORF, CR2, NEF, K25/KDC/DCR und PEF.

http://www.virtual-cafe.com/~dhh/tools.d/exifprobe.d/exifprobe.html

Funktioniert es?

5
JanC

Aus Ihrem Kommentar geht hervor, dass Sie die Datei letztendlich basierend auf dem Datum umbenennen möchten. Wenn dies der einzige Grund ist, warum Sie ein Befehlszeilentool anstelle einer GUI verwenden möchten, können Sie phatch (in den Repositorys) versuchen, anstatt die EXIF-Extraktion/-Datei selbst umzubenennen.

Mit Phatch können Sie Bilder stapelweise verarbeiten (d. H. Eine Reihe von Aktionen für jedes Bild in einem Ordner ausführen). Eine der möglichen Aktionen ist umbenennen und Sie können Variablen wie <Exif_Image_DateTime>, um es basierend auf den EXIF-Daten umzubenennen. Nachdem Sie Ihre Aktionsliste definiert und gespeichert haben, können Sie phatch auch über die Befehlszeile verwenden.

1
Marcel Stimberg

Ich würde das exiv2-Tool verwenden. Dies ist dieselbe Bibliothek, die ufraw/darktable für den Zugriff auf exif-Daten in Rohbildern verwendet. http://www.exiv2.org/ Dies unterstützt auch einige MakerNotes von Herstellern wie z als Nikon/Canon.

1

Wenn ich Sie wäre, würde ich erwägen, ein kleines Python Skript zu schreiben, um dies zu tun, indem ich pyexiv2 . Es ist sehr einfach zu bedienen:

>>> metadata = pyexiv2.ImageMetadata('test.jpg')
>>> metadata.read()
>>> metadata.exif_keys
['Exif.Image.ImageDescription',
 'Exif.Image.XResolution',
 'Exif.Image.YResolution',
 'Exif.Image.ResolutionUnit',
 'Exif.Image.Software',
 'Exif.Image.DateTime',
 'Exif.Image.Artist',
 'Exif.Image.Copyright',
 'Exif.Image.ExifTag',
 'Exif.Photo.Flash',
 'Exif.Photo.PixelXDimension',
 'Exif.Photo.PixelYDimension']
>>> metadata['Exif.Image.DateTime'].value
datetime.datetime(2004, 7, 13, 21, 23, 44)

Hinweis: Verschiedene Kameras verwenden unterschiedliche Felder für Datumsangaben. Überprüfen Sie zuerst, welche Schlüssel verfügbar sind.

Es sollte RAW-Bilder unterstützen. Ich weiß, dass dies für die von Nikon erstellten NEF-RAW-Dateien gilt.

Wenn nicht, haben Sie auch JPEG-Versionen mit ähnlichen Namen (dh unterschiedlichen Erweiterungen)? Auch wenn es can Ihre RAW-Dateien analysiert, lohnt es sich möglicherweise, die JPEG-Dateien nach EXIF-Daten zu durchsuchen, da diese wahrscheinlich etwas schneller sind.

Tipp: Sie können die Python Shell verwenden, anstatt ein "richtiges" Python script. Dies ist gut, um Dinge zu testen, aber wenn Sie etwas wollen, das Sie immer und immer wieder verwenden können, möchten Sie wahrscheinlich ein Skript schreiben.

0
Oli

Meine Lieblingsantwort für das Durcheinander mit EXIF-Daten ist exiftool . Es ist portabel, kostenlos, offen, in Perl geschrieben und kann als Perl-Modul für diejenigen verwendet werden, die es so mögen.

Es funktioniert sogar unter Windows.

0
RBerteig