Obtendo resolução de várias imagens ao mesmo tempo

0

Estou tentando percorrer um diretório de imagens e tentar obter a resolução de várias imagens ao mesmo tempo e exibi-las. Como posso fazer isso?

minhas imagens estão no formato .jpeg e .png. Os nomes têm caracteres '_' como Transverse_H4096_W4096.jpeg e thumb.png

    
por Maradani Lavanya 18.07.2017 / 14:39

2 respostas

3

Usando o identify do ImageMagick para obter a resolução de todos os arquivos JPG no diretório atual:

for image in *.jpg *.jpeg *.png
do
   echo "$image :"
   identify -format "%[fx:w]x%[fx:h]\n" "$image"
done
    
por 18.07.2017 / 15:02
1

Você pode usar exiftool para obter metadados de imagens.

Para instalar a ferramenta no Debian / Ubuntu:

sudo apt-get install libimage-exiftool-perl

No Arch Linux:

sudo pacman -Sy perl-image-exiftool

Onde -S é para sincronizar os pacotes (os pacotes são instalados diretamente dos repositórios remotos, incluindo todas as dependências necessárias) e -y é baixar uma cópia nova do banco de dados do pacote principal do (s) servidor (es) definido (s) em pacman.conf(5) (de man pacman ).

Em seguida, extraia os dados necessários:

for image in ./images/*
do
   exiftool "-*FileName*" "-*ImageSize*" "$image"
done

A saída será:

File Name                       : linux.jpg
Image Size                      : 1920x1080
File Name                       : background.jpg
Image Size                      : 1020x980
    
por 18.07.2017 / 15:26

Tags