Na disciplina INF493 – Processamento Digital de Imagens, tive a oportunidade de fazer algumas brincadeirinhas com alguns vídeos, e aprender novos comandos no Linux. Nesta postagem, vou mostrar um tutorial com a seqüência de comandos que usei para binarizar um vídeo, isto é, colocar o mesmo vídeo em preto e branco, ou em escala de cinza, se quiser.
Antes de iniciar, você precisa ter instalado no seu sistema Linux os seguintes programas:
- ffmpeg
- imagemagick
- convertall
Você pode trabalhar com qualquer formato de vídeo suportado pelo ffmpeg instalado em seus sistema.
Para verificar os formatos de vídeo suportados em seu sistema, use o comando:
ffmpeg -formats
Agora, mãos à obra! Acompahe a seguir cada passo:
1° - O vídeo deve ser dividido em uma sequencia de imagens usando o seguinte comando:
ffmpeg -i nome_video_de_entrada.avi %05d.jpg
Este comando irá gerar uma sequencia de imagens desde 00000.jpg até 99999.jpg
2° - Converta todas as imagens geradas para o formato .tif em escala de cinza para que possa ser editado.
for i in *.jpg; do convert ${i} -compress none -colorspace gray ${i}.tif && rm ${i}; done;
Este comando irá converter todas as imagens e renomea-las com a extensão .jpg.tif
Se você quiser o vídeo em escala de cinza, pode pular o passo 3, se não, utilize o passo 3 para criar um vídeo em preto e branco.
3° - Agora aplique o filtro para todas as imagens
for i in *.tif; do convert -monochrome ${i} ${i}; done;
4° - Antes de recriar o vídeo é necessário converter todas as imagens para o formato .jpg
for i in *.tif; do convert ${i} ${i}.jpg && rm ${i}; done;
Então renomeie os arquivos para que sejam reconhecidos elo ffmpeg
for i in $(ls -1 *.jpg); do mv $i $(echo $i | awk -F. ‘{print $1″.jpg”}’); done;
Obs: Cuidado com as aspas, caso esteja fazendo Ctrl+c , Ctrl+v dos comandos.
5° - Para melhorar a visualização, utilize um procedimento para inverter todas as cores dos pixels, caso desejar.
for i in *.jpg; do mogrify -negate $i; done;
6° - Finalmente, una todas as imagens um único arquivo de vídeo
ffmpeg -i %05d.jpg nome_video_saida.avi
Em breve, descubrirei como executar este procedimento, mantendo o áudio do vídeo.



Comentários