cv2.COLOR_BGR2Lab无效,但cv2.COLOR_BGR2GRAY正在运行

时间:2016-01-12 17:41:15

标签: python opencv numpy

我正在尝试运行此代码,它会出错:

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,则会成功运行。

为什么会这样?

1 个答案:

答案 0 :(得分:1)

注意:我没有安装OpenCV。

错误(作为抛出的异常的最后一行表示)是cv2 python 模块不导出名为COLOR_BGR2Lab的常量。根据{{​​3}},有一个名为COLOR_BGR2LAB的常量( python 区分大小写)。

在任何情况下,如果您想查看模块导出的名称(在本例中为cv2),您可以使用:

import cv2
print(dir(cv2))