web-dev-qa-db-fra.com

Extraction de métadonnées à partir d'images brutes (appareil photo reflex numérique)

Je cherche un outil qui extrait les métadonnées à partir d'images brutes produites par un reflex numérique (dans mon cas, le Canon EOS 550D).

Les photos peuvent être converties par une version récente de ufraw ( here est le PPA pour cela).

Avec mon appareil photo compact, j'utilise simplement exif, qui ne fonctionne que sur jpg et ne fonctionne pas avec des images brutes.

Des allusions?

4
ddeimeke

De la description du paquet exifprobe:

Exifprobe lit les fichiers image produits par les appareils photo numériques (y compris plusieurs formats de fichiers dits "bruts") et indique la structure des fichiers, ainsi que les données et métadonnées auxiliaires qu'ils contiennent. Outre les formats TIFF, JPEG et EXIF, le programme comprend plusieurs formats pouvant contenir des données "brutes", notamment MRW, CIFF/CRW, JP2/JPEG2000, RAF et X3F, ainsi que la plupart des fichiers "bruts dérivés de TIFF". "formats, y compris DNG, ORF, CR2, NEF, K25/KDC/DCR et PEF.

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

Ça marche?

5
JanC

D'après votre commentaire, je comprends que vous souhaitez finalement renommer le fichier en fonction de la date. Si c'est la seule raison pour laquelle vous souhaitez utiliser un outil de ligne de commande au lieu d'une interface graphique, vous pouvez essayer phatch (dans les référentiels) au lieu de vous renommer vous-même le fichier d'extraction EXIF.

Phatch permet de traiter des images par lot (par exemple, effectuer un ensemble d’actions sur chaque image d’un dossier). Une des actions possibles est renommer et vous pouvez utiliser des variables telles que <Exif_Image_DateTime> pour le renommer en fonction des données EXIF. Une fois que vous avez défini et enregistré votre liste d’actions, vous pouvez également utiliser phatch à partir de la ligne de commande.

1
Marcel Stimberg

J'utiliserais l'outil exiv2. C'est la même bibliothèque que celle utilisée par ufraw/darktable pour accéder aux données exif des images brutes. http://www.exiv2.org/ qui prend également en charge certaines notes Maker de fabricants tels que Nikon/Canon.

1
Henrik Andersson

Si j’étais vous, j’envisagerais d’écrire un petit script Python pour le faire, en intégrant pyexiv2 . C'est extrêmement facile à utiliser:

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

Remarque: Des caméras différentes utilisent des champs différents pour les dates. Vérifiez d'abord pour voir quelles clés sont disponibles.

Il devrait supporter des images brutes. Je sais que cela s'applique aux fichiers bruts NEF créés par Nikon.

Si ce n'est pas le cas, avez-vous également des versions JPEG avec des noms similaires (c.-à-d. Des extensions différentes)? Même si peut analyser vos fichiers RAW, il pourrait être intéressant de parcourir les fichiers JPEG pour ses données EXIF, car cela sera probablement un peu plus rapide.

Astuce: Vous pouvez utiliser le shell Python au lieu de devoir écrire un script "correct" Python. C'est bien pour tester des choses, mais si vous voulez quelque chose que vous pouvez utiliser encore et encore, vous voudrez probablement écrire un script.

0
Oli

Ma réponse préférée pour manipuler des données EXIF ​​est exiftool . Il est portable, gratuit, ouvert, écrit en Perl et peut être utilisé comme module Perl pour ceux qui le souhaitent.

Cela fonctionne même sous Windows.

0
RBerteig