2013-05-03 738 views
6

在我的劇本,我有以下代碼:OpenCV的warpPerspective參數計算

src = numpy.array(cornersSheet, numpy.float32) 
dst = numpy.array(cornersDesired, numpy.float32) 
transform = cv2.getPerspectiveTransform(src,dst) 
finished = cv2.warpPerspective(img, transform, img.shape) 

Python的說:

Traceback (most recent call last): 
File "./script.py", line 138, in <module> 
    finished = cv2.warpPerspective(img, transform, img.shape) 
TypeError: function takes exactly 2 arguments (3 given) 

但根據文檔:

Python: cv2.warpPerspective(src, M, dsize[, dst[, flags[, borderMode[, borderValue]]]]) → dst 

三個參數都OK。我與cv2.warpAffine有同樣的問題。

回答

14

問題已解決。 img.shape返回元組3個元素,warpPerspective預計元組2

2

試試這個

finished = cv2.warpPerspective(img, transform, img.shape[1::-1]) 
+0

什麼是'[1 :: - 1]'是什麼意思? – tomfriwel 2017-09-27 01:39:11