Open In App

Perspective Transformation – Python OpenCV

Last Updated : 03 Jan, 2022
Improve
Improve
Like Article
Like
Save
Share
Report

In Perspective Transformation, we can change the perspective of a given image or video for getting better insights into the required information. In Perspective Transformation, we need to provide the points on the image from which want to gather information by changing the perspective. We also need to provide the points inside which we want to display our image. Then, we get the perspective transform from the two given sets of points and wrap it with the original image.

We use cv2.getPerspectiveTransform and then cv2.warpPerspective .
 

cv2.getPerspectiveTransform method 

Syntax: cv2.getPerspectiveTransform(src, dst) 

Parameters

  • src: Coordinates of quadrangle vertices in the source image.
  • dst: Coordinates of the corresponding quadrangle vertices in the destination image.

cv2.wrapPerspective method 

Syntax: cv2.warpPerspective(src, dst, dsize)

Parameters

  • src: Source Image
  • dst: output image that has the size dsize and the same type as src.
  • dsize: size of output image

Below is the Python code explaining Perspective Transformation:

Python3




# import necessary libraries
 
import cv2
import numpy as np
 
# Turn on Laptop's webcam
cap = cv2.VideoCapture(0)
 
while True:
     
    ret, frame = cap.read()
 
    # Locate points of the documents
    # or object which you want to transform
    pts1 = np.float32([[0, 260], [640, 260],
                       [0, 400], [640, 400]])
    pts2 = np.float32([[0, 0], [400, 0],
                       [0, 640], [400, 640]])
     
    # Apply Perspective Transform Algorithm
    matrix = cv2.getPerspectiveTransform(pts1, pts2)
    result = cv2.warpPerspective(frame, matrix, (500, 600))
     
    # Wrap the transformed image
    cv2.imshow('frame', frame) # Initial Capture
    cv2.imshow('frame1', result) # Transformed Capture
 
    if cv2.waitKey(24) == 27:
        break
 
cap.release()
cv2.destroyAllWindows()


Output: 



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads