opencv学习记录——(11)通道的分离与合并

    // 三通道分离

Mat dstimg;
int ContrastValue = 20;
int BrightValue = 20;

void main()
{
	Mat img = imread("E:\\1.png");
	imshow("原图", img);
	Mat bluechannel, greenchannel, redchannel;
	vector<Mat> channels;
	split(img, channels);
	bluechannel = channels.at(0);
	redchannel = channels.at(1);
	greenchannel = channels.at(2);
	imshow("蓝色", bluechannel);
	imshow("绿色", greenchannel);
	imshow("红色", redchannel);
	waitKey(0);

}

三通道分别分离后,以蓝色通道为例。单通道分离后,得到的图像还是灰色图,只是有蓝色的区域(或者由蓝色和其它颜色合成的颜色)会成为白色,其余不含蓝色的区域会成为黑色。

 在通道分离后,可以对三个通道分别进行处理(如二值化处理),处理后再进行通道的合成。从而达到预期效果。

OpenCV中,可以使用split函数将多通道的图像分离为单通道图像。split函数的原型为void split(const Mat &src, Mat *mvbeign)或void splilt(InputArray m, OutputArrayOfArrays mv)。它可以将多通道的图像分割成独立的单通道图像。例如,如果有一个3通道的图像srcImage,可以使用split函数将其分离成3个单通道图像,存储在一个vector容器channels中。代码示例如下: Mat srcImage; Mat imageROI; vector<Mat> channels; srcImage = cv::imread("1.jpg",1); //读取一个3通道图像 split(srcImage, channels); //分离颜色通道 接下来,我们可以根据需要对每个分离的单通道图像进行操作。例如,可以使用addWeighted函数对指定区域的单通道图像进行混合操作。然后,使用merge函数将处理后的单通道图像重新合并为多通道图像。具体代码示例如下: imageROI = channels.at(0); addWeighted(imageROI(Rect(385, 250, logoImage.cols, logoImage.rows)), 1.0, logoImage, 0.5, 0. , imageROI(Rect(385, 250, logoImage.cols, logoImage.rows))); merge(channels, srcImage); 这样就完成了对OpenCV图像的色彩分离合并操作。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [OpenCV——分离颜色通道,图像对比度,亮度调整,离散傅里叶变换(10)](https://blog.youkuaiyun.com/weixin_46417419/article/details/124288761)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值