wake-up-neo.net

Estrazione di metadati da immagini non elaborate (fotocamera DSLR)

Sto cercando uno strumento che estrae i metadati da immagini grezze prodotte da una reflex digitale (nel mio caso Canon EOS 550D).

Le foto possono essere convertite da una versione recente di ufraw ( qui è il PPA per quello).

Con la mia fotocamera compatta uso semplicemente exif, che funziona solo su jpg e non funziona con immagini grezze.

Qualche suggerimento?

4
ddeimeke

Dalla descrizione del pacchetto exifprobe:

Exifprobe legge i file di immagine prodotti dalle fotocamere digitali (inclusi diversi formati di file "grezzi") e riporta la struttura dei file, i dati ausiliari e i metadati in essi contenuti. Oltre a TIFF, JPEG ed EXIF, il programma comprende diversi formati che possono contenere dati "grezzi" della fotocamera, tra cui MRW, CIFF/CRW, JP2/JPEG2000, RAF e X3F, oltre alla maggior parte dei "raw" derivati ​​dalla TIFF "formati, compresi DNG, ORF, CR2, NEF, K25/KDC/DCR e PEF.

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

Funziona?

5
JanC

Dal tuo commento ho capito che quello che alla fine vuoi fare è rinominare il file in base alla data. Se questo è l'unico motivo per cui desideri utilizzare uno strumento da riga di comando anziché una GUI, puoi provare phatch (nei repository) invece di eseguire l'estrazione/il file EXIF ​​rinominando te stesso.

Phatch consente di elaborare in batch le immagini (ad esempio eseguire una serie di azioni su ogni immagine in una cartella, ad esempio). Una delle azioni possibili è rinomina e puoi usare variabili come <Exif_Image_DateTime> per rinominarlo in base ai dati EXIF. Dopo aver definito e salvato l'elenco di azioni, è anche possibile utilizzare Phatch dalla riga di comando.

1
Marcel Stimberg

Vorrei utilizzare lo strumento exiv2, questa è la stessa libreria utilizzata da ufraw/darktable per accedere ai dati exif nelle immagini non elaborate .. http://www.exiv2.org/ che supporta anche alcune MakerNotes di produttori come come Nikon/Canon.

1
Henrik Andersson

Se fossi in te, prenderei in considerazione la possibilità di scrivere un po 'Python per farlo, inserendo pyexiv2 . È estremamente facile da usare:

>>> 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)

Nota: Telecamere diverse utilizzano campi diversi per le date. Controlla prima di vedere quali chiavi sono disponibili.

Dovrebbe supportare immagini non elaborate. So che lo fa per i file raw NEF creati da Nikon.

In caso contrario, hai anche versioni JPEG con nomi simili (ovvero estensioni diverse)? Anche se can analizza i tuoi file RAW, potrebbe valere la pena di scorrere i file JPEG per i suoi dati EXIF ​​perché probabilmente sarà un po 'più veloce.

Suggerimento: Puoi usare Python Shell invece di dover scrivere un "proprio" Python script. Questo è buono per testare le cose ma se vuoi qualcosa che puoi usare più e più volte, probabilmente vorrai scrivere uno script.

0
Oli

La mia risposta preferita per agitarsi con i dati EXIF ​​è exiftool . È portatile, gratuito, aperto, scritto in Perl e può essere utilizzato come modulo Perl per coloro che sono così inclini.

Funziona anche su Windows.

0
RBerteig