python - ¿Qué es el reemplazo de cv2.cv en OpenCV3?
opencv3.0 (2)
Desde OpenCV 2.X OpenCV 3.0 algunas cosas changed .
Específicamente:
-
cv2.cv
no existe en OpenCV 3.0. Utilice simplementecv2
. - algunas definiciones han cambiado, por ejemplo,
CV_BGR2HSV
ahora esCOLOR_BGR2HSV
.
Así que necesitas cambiar esta línea:
hsv_im = cv2.cvtColor(image, cv2.cv.CV_BGR2HSV)
a:
hsv_im = cv2.cvtColor(image, cv2.COLOR_BGR2HSV)
Estoy usando OpenCV3, y con los enlaces de python no hay ningún módulo cv2.cv
:
In [1]: import cv2
In [2]: from cv2 import cv
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-2-15a6578c139c> in <module>()
----> 1 from cv2 import cv
ImportError: cannot import name cv
Sin embargo, tengo un código heredado del formulario:
hsv_im = cv2.cvtColor(image, cv2.cv.CV_BGR2HSV)
Al ejecutar esto, me sale el error:
In [7]: hsv_im = cv2.cvtColor(image, cv2.cv.CV_BGR2HSV)
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-7-e784072551f2> in <module>()
----> 1 hsv_im = cv2.cvtColor(image, cv2.cv.CV_BGR2HSV)
AttributeError: ''module'' object has no attribute ''cv''
¿Cuál es el equivalente de este código en OpenCV3?
Preguntas relacionadas:
Si la instalación se realiza desde un whl, puede encontrar que el archivo cv.py es incorrecto (permite compatibilidad con versiones anteriores). Así que cree / edite el archivo cv.py en los paquetes de sitio donde reside cv2.pyd, y agregue / edite la siguiente línea:
#from cv2.cv import * #this may be original if you used the whl
import cv2 as cv