Estou trabalhando em um aplicativo da web e atualmente estou migrando algumas coisas de um aplicativo antigo, mas odeio ter que abrir um editor de imagens para obter informações sobre as imagens que estou migrando. Coisas como dimensões da imagem.
Existe uma ferramenta de linha de comando que eu possa usar para essas tarefas no Linux?
command-line
image-processing
command-line-tool
nemesisfixx
fonte
fonte
identify
deve ser usado em vez disso/dev/null
é um argumento hehe #identify -format "%[EXIF:DateTimeOriginal]\n" foobar.jpg
file
suporta a exibição do tamanho de JPEG sem parâmetros adicionais:$ file foo.jpg
retornosfoo.jpg: JPEG image data, JFIF standard 1.01, aspect ratio, density 72x72, segment length 16, Exif Standard: [TIFF image data, big-endian, direntries=1], baseline, precision 8, 120x120, frames 3
A melhor maneira de obter essas informações é usando o
identify
comando:ou apenas atributos de tamanho
Faz parte do ImageMagick, que você pode instalar no Ubuntu assim:
fonte
-verbose
bandeira. Eu precisava encontrar DPI (que estão no campo Resolution)72x72
O exiv2 é "a ferramenta" para obter informações dos arquivos de imagem:
saídas:
fonte
mediainfo daria informações ainda mais detalhadas. Geralmente está nos repositórios padrão no Linux e também está disponível via homebrew no OSX.
Tente, por exemplo, executar na pasta atual:
ou
Ambos os comandos mostrarão informações sobre todos os arquivos de mídia na pasta e subpastas atuais.
Mostrar informações sobre todas as imagens JPG começando na pasta atual (inclui subpastas):
É também muito útil com arquivos de áudio e vídeo, na medida em que mostra a taxa de bits de todos os fluxos de áudio / vídeo, Algorythm codificação, tipo recipiente, código FOURCC, ou seja
XVID
,X264
, etc.Há também uma GUI disponível em repositórios padrão para todas as principais distribuições geralmente denominadas
mediainfo-gui
fonte
Além disso, confira o ExifTool de Phil Harvey ; um exemplo:
Aliás, eu estava procurando obter informações sobre dpi / resolução na linha de comando; e, curiosamente, às vezes nenhuma dessas ferramentas informa isso em uma imagem (como no snippet acima); para saber mais, consulte Desejo alterar o DPI com o Imagemagick sem alterar o tamanho real dos bytes dos dados da imagem - Superusuário - no entanto,
identify -verbose
parece funcionar para a mesma imagem do fragmento anterior:... embora possa ser um pouco complicado ler a resolução em unidades do PixelsPerInch usando
identify -verbose
- consulte ImageMagick • Exibir tópico - Não é possível definir unidades como pixels por polegada? .fonte
identify -verbose
é a única ferramenta que eu descobri que relata a qualidade do JPG. Por exemplo, diráQuality: 90
.identificar é do pacote ImageMagick.
Também extrai informações exif da imagem jpeg.
fonte
Você pode tentar este comando se as respostas acima não funcionarem:
Ele mostrará informações como:
A imagem JPEG é 564w * 779h, 3 componentes de cores, 8 bits por amostra
fonte
Acabei de descobrir que menos (com lessfile / lesspipe) pode realmente exibir informações da imagem usando o ImageMagick nos bastidores:
Resultado
fonte
Outro método não postado acima, está usando o feh (você precisa instalá-lo):
Resultado:
Usando:
Produzirá uma tabela (como acima), mas com todas as informações de imagens (incrementando a coluna NUM). Útil para usar em scripts.
fonte
A ferramenta que você deseja é
file
.Ele mostra uma quantidade surpreendente de informações sobre todos os tipos de arquivos.
A sintaxe é:
$ file my_pic.jpg
fonte
Você pode usar :
Você também pode substituir
file://
porhttp://
fonte
php -r "print_r(getimagesize(\$argv[1]));"
Se você está lidando com PNGs, pode haver atributos que eu achei difíceis de ler com quase qualquer software. Para aqueles, você deve usar pngmeta:
Isso é particularmente útil para miniaturas, pois, de acordo com o padrão FreeDesktop, deve ser formatado em PNG e armazenar as informações do caminho como um atributo PNG (Thumb :: URI).
fonte