Dark Mode
Image

OpenCV Image Rotation

The image can be rotated in various angles (90,180,270 and 360). OpenCV calculates the affine matrix that performs affine transformation, which means it does not preserve the angle between the lines or distances between the points, although it preserves the ratio of distances between points lying on the lines.

The syntax of the rotate image is the following:

 cv2.getRotationMatrix2D(center, angle, scale rotated = cv2.warpAfifne(img,M,(w,h))  

Parameters:

  • center: It represents the center of the image.
  • angle: It represents the angle by which a particular image to be rotated in the anti-clockwise direction.
  • rotated: ndarray that holds the rotated image data.
  • scale: The value 1.0 is denoted that the shape is preserved. Scale the image according to the provided value.

Example-1

import cv2  
# read image as greyscale  
img = cv2.imread(r'C:\Users\DEVANSH SHARMA\cat.jpeg')  
# get image height, width  
(h, w) = img.shape[:2]  
# calculate the center of the image  
center = (w / 2, h / 2)  
  
angle90 = 90  
angle180 = 180  
angle270 = 270  
  
scale = 1.0  
  
# Perform the counterclockwise rotation holding at the center  
# 90 degrees  
M = cv2.getRotationMatrix2D(center, angle90, scale)  
rotated90 = cv2.warpAffine(img, M, (h, w))  
  
# 180 degrees  
M = cv2.getRotationMatrix2D(center, angle180, scale)  
rotated180 = cv2.warpAffine(img, M, (w, h))  
  
# 270 degrees  
M = cv2.getRotationMatrix2D(center, angle270, scale)  
rotated270 = cv2.warpAffine(img, M, (h, w))  
  
cv2.imshow('Original Image', img)  
cv2.waitKey(0)  # waits until a key is pressed  
cv2.destroyAllWindows()  # destroys the window showing image  
  
cv2.imshow('Image rotated by 90 degrees', rotated90)  
cv2.waitKey(0)  # waits until a key is pressed  
cv2.destroyAllWindows()  # destroys the window showing imag  
  
cv2.imshow('Image rotated by 180 degrees', rotated180)  
cv2.waitKey(0)  # waits until a key is pressed  
cv2.destroyAllWindows()  # destroys the window showing image  
  
cv2.imshow('Image rotated by 270 degrees', rotated270)  
cv2.waitKey(0)  # waits until a key is pressed  
cv2.destroyAllWindows()  # destroys the window showing image 

Output:

OpenCV Image Rotation

Comment / Reply From