分离颜色通道split()
C++: void split(const Mat& src, Mat*mvbegin);
C++: void split(InputArray m,OutputArrayOfArrays mv);
- 第一个参数,InputArray类型的m或者const Mat&类型的src,填我们需要进行分离的多通道数组。
- 第二个参数,OutputArrayOfArrays类型的mv,填函数的输出数组或者输出的vector容器。
Mat aChannels[3];
//src为要分离的Mat对象
split(src, aChannels); //利用数组分离
std::vector<Mat> channels;
split(src, channels); //利用vector对象分离
imshow("B",channels[0]);
imshow("G",channels[1]);
imshow("R",channels[2]);
使用举例子:
vector<Mat> channels;
Mat imageBlueChannel;
Mat imageGreenChannel;
Mat imageRedChannel;
srcImage1= imread("logo.jpg");
// 把一个3通道图像转换成3个单通道图像
split(srcImage1,channels);//分离色彩通道
imageBlueChannel = channels.at(0);
imageGreen

本文是《OpenCV3编程入门》第5章的学习笔记,主要介绍split()函数,用于分离多通道数组的颜色通道。通过该函数,可以将输入的多通道数组拆分成单独的通道,并存储到输出数组中。
最低0.47元/天 解锁文章
1190

被折叠的 条评论
为什么被折叠?



