在透视变换中, 我们可以更改给定图像或视频的视角, 以更好地了解所需信息。在"透视变换"中, 我们需要通过更改透视图来提供图像上要从中收集信息的点。我们还需要提供要在其中显示图像的点。然后, 我们从两个给定的点集中获得透视变换, 并将其与原始图像包装在一起。
我们用cv2.getPerspectiveTransform接着cv2.warpPerspective.
cv2.getPerspectiveTransform方法-以下是解释透视转换的Python代码–
语法:cv2.getPerspectiveTransform(src, dst)
参数:-> src:源图像中四边形顶点的坐标。
-> dst:目标图像中相应四边形顶点的坐标。 cv2.wrapPerspective方法-
语法:cv2.warpPerspective(src, dst, dsize)参数:
-> src:源图像
-> dst:输出图像, 其大小为dsize并且与src类型相同。
-> dsize:输出图像的大小
# 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 imagecv2.imshow( 'frame' , frame) # Inital Capture
cv2.imshow( 'frame1' , result) # Transformed Captureif cv2.waitKey( 24 ) = = 27 :
breakcap.release()
cv2.destroyAllWindows()
输入图片:
文章图片
输出如下:
文章图片
【透视变换详解– Python OpenCV】首先, 你的面试准备可通过以下方式增强你的数据结构概念:Python DS课程。
推荐阅读
- 如何使用JavaScript/jQuery创建自动调整textarea的大小()
- 详细视图–基于函数的视图|Django
- 如何使用Python追加到JSON文件(代码示例)
- PHP怎么使用dns_get_record()函数()
- PHP条件语句解析和用法指南
- 在word中巧妙运用字体替换
- 4方案所有方面拯救受损的Word文档
- 主板无法正常工作?高手帮你忙
- Word软件中"行距不等",该如何处理