《opencv学习笔记》-- 分离颜色通道、多通道混合

目录

分离颜色通道

多通道混合


分离颜色通道

分离通道函数:split()        将 多通道数组分离成几个单通道数组

void split(const Mat& src, Mat*mvbegin);

参数1:onst Mat&类型的src,分离的多通道数组。 

参数2:输出数组或者输出的vector容器。

显示效果:

 《opencv学习笔记》-- 分离颜色通道、多通道混合_第1张图片《opencv学习笔记》-- 分离颜色通道、多通道混合_第2张图片《opencv学习笔记》-- 分离颜色通道、多通道混合_第3张图片《opencv学习笔记》-- 分离颜色通道、多通道混合_第4张图片

代码:

Mat srcImg1;
vector channel;

srcImg1 = imread("E:\\img\\logo6.png");
	
split(srcImg1, channel);

imshow("源图srcImg1", srcImg1);
imshow("蓝色分量", channel.at(0));
imshow("绿色分量", channel.at(1));
imshow("红色分量", channel.at(2));

颜色通道RGB,在opencv中为BGR    B:蓝   G:绿    R:红

多通道混合

多通道混合是将多个通道合并。

merge()函数     将多个数组合并成一个多通道的数组.

void merge(InputArrayOfArrays  mv,  OutputArray  dst)

     

参数1,mv。被合并的输入矩阵或vector容器的阵列,这个参数中所有的矩阵必须是相同的                 尺寸和深度

参数2,dst。即输出矩阵,和 mv[0]拥有一样的尺寸和深度,并且通道的数量是矩阵阵列中                 的通道的总数。

      

你可能感兴趣的:(opencv,opencv)