Você pode usar convert
com -extent
(e especificar plano de fundo e gravidade). Exemplo:
arquivo de entrada orca.jpg
(lanscape, 300x225)
Sevocêdesejacriarumaimagememretratode400x600preservandootamanhodaimagemoriginal:
convertorca.jpg-backgroundblack-gravitycenter-extent400x600output.jpg
produz:
Claro, você também pode redimensionar a imagem original para caber em uma tela menor:
convert orca.jpg -resize 200 -background black -gravity center -extent 220x400 output.jpg