Pour ma part, j'ai ceci pour convertir (attention l'original est écrasée) tous les jpeg se trouvant dans le répertoire et les sous-répertoires.
find `pwd`/$1 -type f -iname "*.jpg" -print0 | xargs -0 -i mogrify -resize 307200@ -quality 85 -verbose {}
Le paramètre "-resize 307200@" indique une surface en pixel à obtenir. Ainsi pour mes photos, qu'elles soient en mode portrait ou paysage, elles feront toujours 640x480 ou 480x640.