OpenCV python 拜耳转换错误

OpenCV python Bayer conversion error

以下代码:

filePath = os.path.join(root,file)
image = cv2.imread(filePath)
convertedImage = cv2.cvtColor(image, cv2.COLOR_BAYER_GR2RGB)

产生此错误:

opencv\modules\imgproc\src\color.cpp:4196: error: (-215) scn == 1 && dcn == 3 in function cv::cvtColor

这个错误是什么意思(除了说明源和目标中的通道数)?我怎样才能解决这个问题?是不是跟我加载图片的方式有关?

您忘记指定要读取的输入图像的类型。默认情况下,cv2.imread 将读取带有标志 cv2.IMREAD_COLOR 的图像(如 their documentation 中所示)。您可以将代码更改为以下内容:

filePath = os.path.join(root,file)
#Load the image as grayscale image
image = cv2.imread(filePath,0)
convertedImage = cv2.cvtColor(image, cv2.COLOR_BAYER_GR2RGB)