Como girar imagens automaticamente, com base em dados exif

29

Quando faço fotos com a minha câmera (Olympus E-520), nos dados EXIF a orientação é armazenada.

O visualizador de imagens padrão no Ubuntu está exibindo as imagens corretamente. Visualizador do Windows, no entanto, não.

Existe uma maneira de realmente rodar essas imagens (se necessário, de acordo com EXIF) em um lote no Ubuntu? Por exemplo, com uma ferramenta ImageMagick?

    
por Peter Smit 06.09.2009 / 15:54

4 respostas

35

exiftran e JHead ( jhead -autorot ) pode fazer isso. exiftran pode fazer isso sem perdas, não tenho certeza sobre jhead .

    
por 10.09.2009 / 08:12
12

A ferramenta de conversão do ImageMagick tem uma sinalização -auto-orient que deve ser exibida o trabalho feito.

#!/bin/bash

JHEAD=jhead
SED=sed
CONVERT=convert

for f in *.jpg
do
        orientation=$($JHEAD -v $f | $SED -nr 's:.*Orientation = ([0-9]+).*::p')

        if [ -z $orientation ]
        then
                orientation=0
        fi

        if [ $orientation -gt 1 ]
        then
                echo Rotating $f...
                mv $f $f.bak
                $CONVERT -auto-orient $f.bak $f
        fi
done

Eu joguei um script rápido para iterar * .jpg no diretório atual. Você pode facilmente modificar isso para pegar um caminho ($ 1) ou o que precisar.

    
por 09.09.2009 / 02:21
2

Você pode usar XnView para fazer isso. Confira essas páginas para obter informações sobre como usar o XnView para fazer a rotação automática no modo em lote:

  • link
  • link (consulte a opção "Seguir orientação")
  • link (consulte a opção "Seguir orientação")

No Windows, você pode fazer isso usando o IrfanView . Da seção de perguntas freqüentes do site IrfanView:

Q: How to use JPG lossless operations (Rotation, IPTC, Comment) in batch mode?

A: Start the Thumbnail window, open the folder with JPGs, select many JPGs and see in thumbnail menu File for JPG Lossless Operations -> Lossless transformations with selected thumbs. Note: The auto-rotation option works only if the EXIF orientation tag is properly saved (not top-left).

    
por 06.09.2009 / 16:31
1

Com o ImageMagick, você também pode usar o mogrify para girar os arquivos e gravar a imagem girada de volta nos nomes de arquivo originais.

mogrify -auto-orient *.jpg
    
por 28.11.2017 / 09:25