Bootstrap

perspective transform(透视变换)的实现过程

透视变换

是根据实际过程中根据不同角度检测到的图像,进行变换转换到实际图形的过程。

如图:实际中我们检测的图片是左图所示,经过透视变换之后变换成右图。

1.如下图,先导入库,再定义,描述original image中四个点的坐标,并在图像中输出。


 

 

 

 

 

 

 

 

2.定义一个warp的函数,并将上边的坐标值输入到函数中,并且输入到一个src的数组中,将扭转图像扭转之后的坐标,输入到一个dst的数组当中。


3,通过下图中的透视变换函数,输入两种数组,并返回M矩阵——扭转矩阵

M = cv2.getPerspectiveTransform(src, dst)

也可以通过反透视变换函数,恢复原来的图像,只需要对调函数中的数组的顺序,返回Minv矩阵

Minv = cv2.getPerspectiveTransform(dst, src)

将扭转矩阵M输入,进行的原来图片的变换,其中img代表的是原图像,M代表的是扭转矩阵,img_size代表的是转变之后的尺寸(可以设置为相同尺寸),inter_linear代表的是线性内插。

warped = cv2.warpPerspective(img, M, img_size, flags=cv2.INTER_LINEAR)

4.显示图片 

 

;