相关疑难解决方法(0)

Python Open CV perspectiveTransform()

我正在尝试使用OpenCV将透视变换应用于整个图像.为此,我首先根据我选择的点计算初始变换,然后尝试变换图像角并转换它们以获得最终的最佳变换.我成功地获得了转换,但随后应用cv2.perspectiveTransform()函数总是抛出此错误:

OpenCV Error: Assertion failed (scn + 1 == m.cols && (depth == CV_32F || depth == CV_64F)) in perspectiveTransform, file /tmp/opencv-PEaA0A/opencv-2.4.9/modules/core/src/matmul.cpp, line 1936
Run Code Online (Sandbox Code Playgroud)

我提供给函数的numpy数组都是float64 dtype所以我认为错误来自scn + 1 == m.cols.这是我的代码的快照:

initTransform = cv2.getPerspectiveTransform(pointsIn,pointsOut)
imgCorners = np.array([[0,0],[self.image.size/float(self.image.shape[0]),0]],dtype=np.float64)
outputCorners = cv2.perspectiveTransform(corners,initTransform) 
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助!

python opencv numpy

4
推荐指数
1
解决办法
5026
查看次数

标签 统计

numpy ×1

opencv ×1

python ×1