为什么不能在OpenCV(Python)中使用`cv2.cv.BoxPoints`?

问题描述 投票:3回答:1

我是OpenCV的初学者。我想围绕我检测到的标记制作边界框。

你能告诉我怎样才能用OpenCV(Python)做到这一点?

我正在使用Python 3.6.3和openCV

box =np.int0(cv2.cv.BoxPoints(marker))

输出:

Error showing cv2.cv2 has no module cv 
python-3.x opencv image-processing computer-vision
1个回答
11
投票

cv2.cv.BoxPoints被改变了。

对于OpenCV 3.x,请改用cv2.boxPoints


例如:

>> import numpy as np
>> import cv2
>>> cv2.__version__
'3.3.0-dev'

>>> cnt = np.array([[0,0], [1,1], [2,0]])
>>> bbox = cv2.minAreaRect(cnt)
>>> pts = cv2.boxPoints(bbox)
>>> print(pts)
[[  9.99999940e-01   9.99999881e-01]
 [  5.96046448e-08   0.00000000e+00]
 [  9.99999940e-01  -9.99999881e-01]
 [  1.99999976e+00   0.00000000e+00]]
© www.soinside.com 2019 - 2024. All rights reserved.