图像颜色空间、变换、阈值处理及噪声滤波相关技术
1. 透视变换
透视变换需要从输入图像中选取四个点,并在输出图像中指定对应的四个点,条件是这八个点中任意三个点不能共线。与仿射变换类似,透视变换会保持直线的直性,但不会保留直线间的平行性。软件中的缩放和斜向缩放功能就是透视变换的实际应用,其缩放程度和角度由变换矩阵决定,而变换矩阵由一组四个输入点和四个输出点定义。
以下是一个简单缩放功能的示例代码:
import cv2
import numpy as np
from matplotlib import pyplot as plt
image = cv2.imread('/home/pi/book/test_set/ruler.512.tiff',1)
#changing the colorspace from BGR->RGB
input = cv2.cvtColor(image, cv2.COLOR_BGR2RGB )
rows,cols,channels = input.shape
points1 = np.float32([[0,0],[400,0],[0,400],[400,400]])
points2 = np.float32([[0,0],[300,0],[0,300],[300,300]])
P = cv2.getPerspectiveTransform(points1,points2)
output = cv2.warpPerspective(input,P,(300,300))
plt.subplot(121),plt.imshow(input),plt.title('Input')
plt.s
超级会员免费看
订阅专栏 解锁全文
9

被折叠的 条评论
为什么被折叠?



