Often, when working on image analysis in Python, you’d want to resize your images to uniform dimensions (usually, a power of 2). Here is one simple and proven way to resize an image of arbitrary size, down to the exact dimensions you want. If the new dimensions do not match the original ratio, the image will be cropped, starting from the center, in order to match the newly desired ratio.
from PIL import Image, ImageOps original_image = Image.open("path/to/image") size = (512, 512) fit_and_resized_image = ImageOps.fit(original_image, size, Image.ANTIALIAS)
with help from StackOverlow