打印cvMat通道

Print cvMat channels

本文关键字:通道 cvMat 打印      更新时间:2023-10-16

如何打印cvMatRGBBGR还是GRAY?我需要这样做的原因是,我需要将图像转换为GRAY,并且在尝试CV_RGB2GRAY 时遇到了这样的错误

OpenCV Error: Assertion failed (scn == 3 || scn == 4) in cvtColor

您需要知道输入图像的通道数。cvtColor预计它将有3或4个通道。使用channels()来确定您拥有的内容。以下信息直接取自中的答案:我可以确定cv中的通道数量吗:Mat Opencv

cv::Mat img(1,1,CV_8U,cvScalar(0));
std::cout<<img.channels();

输出:

1

这是通道的数量。

图像为空时也会出现此错误。您可以使用进行检查

img.empty();

来源:openCV错误:断言失败(scn==3|scn==4)