Añadiendo bordes a una imagen usando python

Tengo un gran número de imágenes de un tamaño fijo (por ejemplo, 500 * 500). Quiero escribir una secuencia de comandos de python que los redimensionará a un tamaño fijo (por ejemplo, 800 * 800) pero mantendré la imagen original en el centro y rellenaré el área en exceso con un color fijo (por ejemplo, en negro).

Estoy usando PIL. Puedo cambiar el tamaño de la imagen usando elresize Funciona ahora, pero eso cambia la relación de aspecto. ¿Hay alguna manera de hacer esto?

Respuestas a la pregunta(6)

Su respuesta a la pregunta