图像色彩通道分离与合并--opencv学习笔记

该博客介绍了OpenCV中的通道操作,包括split函数用于将多通道图像分离为单通道,merge函数用于合并单通道图像回多通道图像。此外,详细讲解了mixChannels函数的工作原理,它是如何根据指定的fromTo参数来混合输入图像的通道,并将其复制到输出图像中。通过实例展示了如何使用这些函数进行颜色通道的调整和混合。
摘要由CSDN通过智能技术生成

void QuickDemo::channels_demo(Mat& image)
{

//split函数把一张多通道的图的分离成三通道
std::vectormv;
split(image, mv);//分离
imshow(“蓝色”, mv[0]);
imshow(“绿色”, mv[1]);
imshow(“红色”, mv[2]);

//merge函数就是把三个单通道的图像合并成一个多通道图像,
Mat dst;
mv[0] = 0;//归零通道0
//mv[1] = 0;//归零通道0//
merge(mv, dst);//合并三个通道
imshow(“红色”, dst);//显示,跟上面的mv[0] = 0;一起理解就是比如说吧通道0归零了,显示剩下的两个通道

mixChannels主要就是把输入的矩阵(或矩阵数组)的某些通道拆分复制给对应的输出矩阵(或矩阵数组)的某些通道中,其中的对应关系就由fromTo参数制定.
这句话很全面,但是可能有点绕,可以结合下面的代码理解,
输入的矩阵或者数组就是image,输出的矩阵或者的数组就是dst,
然后form_to就是对应的关系,
总结mixChannels,就是输入,输出,然后输出入的关系,

int form_to[] = { 0,2,1,1,2,0 };//0通道的给了2通道,1通道的给了2通道,1通道还是在1通道
mixChannels(&image,1, &dst,1, form_to,3);//通道混合
imshow("通道混合", dst);//最后显示dst

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

泰7

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值