这可能是初步的,但是有可能知道一个cv::Mat
有多少个频道吗?例如,我们加载一个 RGB 图像,我知道有 3 个通道。我做了以下操作,只是为了得到图像的拉普拉斯算子,它直接来自 Opencv 文档。
int main(int argc, char **argv)
{
Mat src = imread(argv[1],1),src_gray,dst_gray,abs_dst_gray;
cvtColor(src,src_gray,COLOR_BGR2GRAY);
GaussianBlur( src, src, Size(3,3), 0, 0, BORDER_DEFAULT );
Laplacian(src_gray,dst_gray,ddepth,kernel_size,scale,delta,BORDER_DEFAULT);
convertScaleAbs(dst_gray,abs_dst_gray);
}
转换为灰度后,我们应该只有一个通道。但是如何确定abs_dst_gray
节目中的频道数?有什么功能可以做到这一点吗?或者是否有可能通过程序员编写的任何其他方法?请在这里帮助我。
提前致谢。