Conversão de imagens em formato BMP para JPEG

Iniciado por xluisfernando, 17 de Março de 2013, 15:10

tópico anterior - próximo tópico

xluisfernando

Em meus arquivos tenho muitas imagens antigas, em formato BMP. Por uma questão de espaço, tenho a necessidade de convertê-las ao formato JPEG, que é reconhecido automaticamente por dispositivos como celulares, tablets, TVs...

Inicialmente, a instalação padrão do ubuntu oferece o ImageMagick, que pelo terminal faz essa conversão:
Citarconvert imagem.bmp imagem.jpg
No entanto, preciso converter mais de 500 imagens. Uma saída lógica é usar o comando:
Citarconvert /home/$USER/Imagens/*bmp /home/$USER/Imagens/Convertidas/*jpg
que converte todas a imagens bmp existes na pasta Imagens para o formato jpeg, colocando-as dentro de uma pasta Convertidas.

No entanto... Como pretendo fazer isso para substituir os bmp por jpeg, preciso que o comando mantenha os nomes dos arquivos originais e esse comando em questão salva as imagens com nomes numéricos.

Consultei o manual desse comando e vi que existem muitas opções de configuração, mas não entendi se alguma delas faria a conversão mantendo o nome original de cada um dos arquivos.
Samsung Ativ Book i3 - Ubuntu 20.04LTS

irtigor

Use o mogrify ou invoque o find/bash.


mogrify -format jpg *.bmp

xluisfernando

A resposta ao comando foi
Citarmogrify: unable to open image `*.bmp':  @ error/blob.c/OpenBlob/2587
Samsung Ativ Book i3 - Ubuntu 20.04LTS

irtigor

O glob não expandiu corretamente porque não havia ".bmp" no diretório atual. Fora isso, também pode passar como argumento "-path /caminho/de/destino" pra ficar igual ao que você pensou.


mogrify -path ~/Imagens/Convertidas -format jpg ~/Imagens/*.bmp

xluisfernando

Obrigado pela ajuda irtigor, mas não funcionou. Acessei a pasta com os arquivos bmp pelo terminal, executei o conando sugerido e  a resposta foi
Citarunable to open image `/home/xluisfernando/Imagens/*.bmp':  @ error/blob.c/OpenBlob/2587

É como se mogrify não tivesse permissão ou habilitação para trabalhar com bmp.

De qualquer forma, acabei resolvendo de outra forma: Instalei o aplicativo Format Junkie
Citarsudo add-apt-repository ppa:format-junkie-team/release
    sudo apt-get update && sudo apt-get install formatjunkie

Esse aplicativo automaticamente nomeia as imagens convertidas com o nome exato das originais.
Samsung Ativ Book i3 - Ubuntu 20.04LTS

irtigor

Pela mensagem o glob não tá expandindo (isso é tarefa do shell, feita antes de executar o programa), eu só consigo imaginar isso acontecendo em dois cenários: passando algo sem combinação no diretório (não tinha nenhum arquivo .bmp no local indicado), ou explicitamente desativando a expansão ('*.bmp' ou \*.bmp, por exemplo). Mas se o problema foi resolvido, tá tudo certo.

sigur

cd /home/$USER/Imagens/
for file in *.bmp; do
convert $file Convertidas/$file.jpeg
done