Open In App

Change the ratio between width and height of an image using Python – Pillow

Improve
Improve
Like Article
Like
Save
Share
Report

Python Imaging Library (expansion of PIL) is the de facto image processing package for the Python language. It incorporates lightweight image processing tools that aid in editing, creating, and saving images. This module is not preloaded with Python. So to install it execute the following command in the command-line:

pip install pillow

To change the ratio of height and width we will add or subtract any random value from them.

Functions Used

  • Image.open(fp, mode=’r’) method: This method is used to open the image.
  • Image.resize(size, resample=0) method: This method is used to resize the image. Interpolation happens during the resize process, due to which the quality of image changes whether it is being upscaled (resized to a higher dimension than original) or downscaled (resized to a lower Image then original).

Approach:

  • We will first take an image.
  • Then we will find its height and width.
  • Then we will add and subtract any random number from them to change the ratio.
  • Then we will save the image.

Example:

Image Used:

Python3




# Python program to change the ratio of height and
# width of an image 
from PIL import Image
  
# Taking image as input
img = Image.open('logo.png')
  
# Getting height and width of the image
height = img.size[0]
width = img.size[1]
  
# Printing ratio before conversion
print('Ratio before conversion:', width/height)
  
# Changing the height and width of the image
width = width + 25
height = height - 25
  
# Resizing the image
img = img.resize((width ,height), Image.ANTIALIAS)
  
# Printing the ratio after conversion
print('Ratio after conversion:', width/height)
  
# Saving the resized image
img.save('Resized Image.png')


Output:

Ratio before conversion: 1.0
Ratio after conversion: 1.25

Output Image:


Last Updated : 23 Dec, 2020
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads