Extraindo metadados de imagens brutas (câmera DSLR)

3

Estou procurando uma ferramenta que extrai metadados de imagens cruas produzidas por uma SLR digital (no meu caso, Canon EOS 550D).

As fotos podem ser convertidas por uma versão recente do ufraw ( aqui é o PPA para isso).

Com minha câmera compacta eu simplesmente uso exif, que só funciona em jpg e não funciona com imagens raw.

Alguma dica?

    
por ddeimeke 26.08.2010 / 09:26

5 respostas

5

A partir da descrição do pacote exifprobe :

  

Exifprobe lê arquivos de imagem produzidos   por câmeras digitais (incluindo vários   os chamados formatos de arquivos "brutos") e   relata a estrutura dos arquivos e   os dados e metadados auxiliares   contido dentro deles. Além de   TIFF, JPEG e EXIF, o programa   compreende vários formatos que podem   conter dados da câmera "brutos", incluindo   MRW, CIFF / CRW, JP2 / JPEG2000, RAF e   X3F, assim como a maioria dos derivados de TIFF   formatos "raw", incluindo DNG, ORF,   CR2, NEF, K25 / KDC / DCR e PEF.

     

link

Isso funciona?

    
por JanC 26.08.2010 / 10:12
1

Do seu comentário, entendo que o que você deseja fazer é renomear o arquivo com base na data. Se essa é a única razão pela qual você deseja usar uma ferramenta de linha de comando em vez de uma GUI, pode tentar phatch (nos repositórios) em vez de fazer a extração / arquivo EXIF renomeando você mesmo.

O Phatch permite processar imagens em lote (por exemplo, executar um conjunto de ações em todas as imagens de uma pasta, por exemplo). Uma das ações possíveis é renomear e você pode usar Variáveis como <Exif_Image_DateTime> para renomeá-lo com base nos dados EXIF. Depois de definir e salvar sua lista de ações, você também pode usar o phatch na linha de comando.

    
por Marcel Stimberg 26.08.2010 / 17:52
1

Eu usaria a ferramenta exiv2, essa é a mesma biblioteca usada pelo ufraw / darktable para acessar dados exif em imagens raw. link que também suporta alguns MakerNotes de fabricantes como a Nikon / Canon.

    
por Henrik Andersson 19.10.2010 / 16:06
0

Se eu fosse você, eu consideraria escrever um pequeno script Python para fazer isso, colocando pyexiv2 . É extremamente fácil de usar:

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

Observação: câmeras diferentes usam campos diferentes para datas. Primeiro, verifique quais teclas estão disponíveis.

Deve suportar imagens não processadas. Eu sei que faz para os arquivos raw NEF minha Nikon cria.

Se isso não acontecer, você também tem versões JPEG com nomes semelhantes (ou seja, extensões diferentes)? Mesmo que possa analisar seus arquivos RAW, pode valer a pena passar pelos JPEGs por seus dados EXIF porque provavelmente será um pouco mais rápido.

Dica: Você pode usar o shell Python em vez de ter que escrever um script Python "adequado". Isso é bom para testar as coisas, mas se você quiser algo que possa usar repetidamente, provavelmente desejará escrever um script.

    
por Oli 26.08.2010 / 11:20
0

Minha resposta favorita para se preocupar com dados EXIF é exiftool . É portátil, livre, aberto, escrito em Perl e pode ser usado como um módulo Perl para aqueles que o desejarem.

Até funciona no Windows.

    
por RBerteig 26.08.2010 / 12:33