O redimensionamento para um tamanho máximo em pixels pode ser complicado. Eu costumava fazer isso com uma planilha ou uma calculadora, então descobri a maravilha do ImageMagick!
Ao passar 2 argumentos deste script bash (caminho para o diretório e tamanho em pixels):
my_image_resizer.sh path/to/directory 1900000
Você pode reamostrar um diretório inteiro de imagens em nenhum momento!
#!/bin/bash
dir=$1
let max=$2 # target size in pixels
cd $dir
for file in `ls $dir`
do
echo "Looking at '$file'"
geometry=`identify '$file' | awk '{print $3}'`
width=`echo $geometry | sed 's/[^0-9]/ /g' | awk '{print $1}'`
height=`echo $geometry | sed 's/[^0-9]/ /g' | awk '{print $2}'`
let pix=$width*$height
if [ $pix -gt $max ]; then
echo "Resizing '$file'"
mogrify "$file" -sample @$max "$file"
fi
done