Python处理图像时,在将图像设置成灰度图像时报错

Python处理图像时,在将图像设置成灰度图像时报错

详细报错代码:

1
2
3
4
5
6
7
// An highlighted block
    img = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
cv2.error: OpenCV(4.1.2) d:\build\opencv\opencv-4.1.2\modules\imgproc\src\color.simd_helpers.hpp:92: error: (-2:Unspecified error) in function '__cdecl cv::impl::`anonymous-namespace'::CvtHelper<struct cv::impl::`anonymous namespace'::Set<3,4,-1>,struct cv::impl::A0x7c3259e1::Set<1,-1,-1>,struct cv::impl::A0x7c3259e1::Set<0,2,5>,2>::CvtHelper(const class cv::_InputArray &,const class cv::_OutputArray &,int)'
> Invalid number of channels in input image:
>     'VScn::contains(scn)'
> where
>     'scn' is 1

解决方法:
报错很长,一时间有些懵逼。
查了很久之后发现是因为我在将这幅图片转成灰度图像前已经用过一次img = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) 了。删掉一个就可以了