web-dev-qa-db-fra.com

Pourquoi ne pouvez-vous pas utiliser `cv2.cv.BoxPoints` dans OpenCV (Python)?

Je suis débutant en OpenCV. Je veux créer un cadre de délimitation autour de mon marqueur détecté.

Pouvez-vous me dire comment puis-je le faire avec OpenCV (Python)?

J'utilise Python 3.6.3 avec openCV

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

Production:

Error showing cv2.cv2 has no module cv 
6
Muhammad Awais

cv2.cv.BoxPoints a été changé.

Pour OpenCV 3.x, utilisez cv2.boxPoints au lieu.


Par exemple:

>> 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]]
17
Kinght 金