得到垫子的类型

时间:2018-03-29 09:44:56

标签: c++ opencv

我想检查矩阵是否已转换2GRAY

因此,此代码应返回false

cv::Mat myImage; // (rgb)
cout << isMatGray(myImage) << endl;

此代码应返回true

cv::Mat myImage; // (rgb)
cv::cvtColor(myImage, myImage, CV_RGB2GRAY);
cout << isMatGray(myImage) << endl;

我的想法是使用.type()调用,但我并不确定如何以正确的方式使用此函数。

static bool isMatGray(cv::Mat image) {
   return ( image.type() == ?? );
}

1 个答案:

答案 0 :(得分:3)

您可以使用以下符号检查矩阵是否为灰度(即单通道)

static bool isMatGray(const cv::Mat& image) {
   return (image.channels() == 1);
}