通道分离:split()函数
split函数用于将一个多通道数组分离成几个单通道数组。
通道合并:merge()函数
merge()函数是split()函数的你想操作,是将多个数组合并成一个多通道数组。它通过组合一些给定的单通道数组,将这些孤立的单通道数组合并成一个多通道上数组,从而穿件出一个由多个单通道阵列组成的多通道阵列。
代码示例:
// 读取图像
Mat srcImage = imread("//Users//dwz//Desktop//cpp//mogu.jpg");
vector<Mat> channels;
// 通道分离
split(srcImage, channels);
// 分别得到不同的颜色分量
Mat blue, green, red;
blue = channels.at(0);
green = channels.at(1);
red = channels.at(2);
// 通道合并
Mat dstImage;
vector<Mat> channels2;
channels2.push_back(blue);
channels2.push_back(green);
channels2.push_back(red);
merge(channels2, dstImage);