
Width_percent = (base_width / float(image.size))
PYTHON RESIZE IMAGE HOW TO
To learn how to resize multiple images within the current working directory.Īs well as compressing an image, we can also re-size the image to be either:. In this tutorial of Python Examples, we have learned how to use OpenCV cv2.resize() function, to resize an image along width, height or both by preserving the aspect ratio or not preserving the aspect ratio.As different social media platforms often require different image and width formats, resizing images automatically with python can definitely save you time. Output Image cv2.resize() along height or vertical axis Summary import cv2Ĭv2.imwrite('D:/cv2-resize-image-height.png',output) In the dsize, we will keep the width same as that of original image but change the height. Width of the output image remains unchanged from that of the source image. In the following example, we will scale the image only along y-axis or Vertical axis. Output Image cv2.resize() along width or horizontal axis cv2 Resize Image Vertically Output = cv2.resize(src, dsize, interpolation = cv2.INTER_AREA)Ĭv2.imwrite('D:/cv2-resize-image-width.png',output)
In the dsize, we will keep the height same as that of original image but change the width. And we keep the height of the image unchanged. In the following example, we will scale the image only along x-axis or Horizontal axis. Output Image cv2.resize() preserving aspect ratio Example 2: cv2 Resize Image Horizontally
Using cv2.imwrite, we are writing the output of cv2.resize to a local image file.
cv2.resize resizes the image src to the size dsize and returns numpy array. Then we are setting the desired size dsize with the newly computed width and height. int(src.shape * scale_percent / 100) calculates 50% of the original width. src.shape gives the width of the source image. We are going to scale the image to 50% of its original dimensions, both width and height. cv2.imread() reads the given file in cv2.IMREAD_UNCHANGED with transparency channel (if any) and returns a numpy array with pixel values. What have we done in the above Python program? Height = int(src.shape * scale_percent / 100)Ĭv2.imwrite('D:/cv2-resize-image-50.png',output) Width = int(src.shape * scale_percent / 100) #calculate the 50 percent of original dimensions Src = cv2.imread('D:/cv2-resize-image-original.png', cv2.IMREAD_UNCHANGED) We will resize the image to 50% of its actual shape, i.e., we will reduce its height to 50% of its original and width to 50% of its original. In the following example, we are going to see how we can resize the above image using cv2.resize() while preserving the aspect ratio. Input Image Example 1: Resize Image – cv2.resize() We will use this image as input or source image in our ongoing example programs. Meaning, change height, keeping width same as that of original image.Ĭonsider the following image. Scale the image only along Y-axis or Vertical axis. Meaning, change width, keeping height same as that of original image. Scale the image only along X-axis or Horizontal axis. Just to make things clear, Aspect Ratio is the ratio of image width to image height. Preserve the Aspect Ration and increase or decrease the width and height of the image. You can think interpolation as a method that decides which pixel gets which value based on its neighboring pixels and the scale at which the image is being resized. interpolation could be one of the following values.īased on the interpolation technique selected, respective algorithm is used. fy is the scaling factor along Y-axis or Vertical axis. fx is the scaling factor along X-axis or Horizontal axis. dsize is the desired size of the output image, given as tuple. src is the source, original or input image in the form of numpy array. Syntax of cv2 resize() functionįollowing is the syntax of cv2.resize() function. In this tutorial, we shall learn how to resize image in Python using OpenCV library. Aspect Ratio can be preserved by calculating width or height for given target height or width respectively. The aspect ratio can be preserved or not, based on the requirement. Resizing, by default, does only change the width and height of the image. To resize an image in Python, you can use cv2.resize() function of OpenCV library cv2. Example 2: cv2 Resize Image Horizontally.