我正在尝试运行此代码,它会出错:
import cv2
import numpy as np
img=cv2.imread('image1.jpg',cv2.IMREAD_COLOR)
hsl = cv2.cvtColor(img,cv2.COLOR_BGR2Lab)
cv2.imshow('image',hsl)
cv2.imwrite('hsl.jpg',hsl)
cv2.waitKey(0)
cv2.destroyAllWindows()
例外:
Traceback (most recent call last):
File "ques3.py", line 7, in <module>
hsl = cv2.cvtColor(img,cv2.COLOR_BGR2Lab)
AttributeError: 'module' object has no attribute 'COLOR_BGR2Lab'
如果我将cv2.COLOR_BGR2Lab
更改为cv2.COLOR_BGR2GRAY
,则会成功运行。
为什么会这样?
答案 0 :(得分:1)
注意:我没有安装OpenCV。
错误(作为抛出的异常的最后一行表示)是cv2
python 模块不导出名为COLOR_BGR2Lab
的常量。根据{{3}},有一个名为COLOR_BGR2LAB
的常量( python 区分大小写)。
在任何情况下,如果您想查看模块导出的名称(在本例中为cv2
),您可以使用:
import cv2
print(dir(cv2))