opencv通道分离与合并

cpp 复制代码
void QuickDemo::channels_demo(Mat & image)
{
	std::vector<Mat>mv;
	//通道分离合并
	split(image,mv);//原图 指针(Mat)
	imshow("蓝色", mv[0]);
	imshow("绿色", mv[1]);
	imshow("红色", mv[2]);
}

split(image,mv);//原图 指针(Mat)

这里split后一个是指针 但是我们并没有看到指针在哪,就看到一个数据类型Mat和数组vetcor

经过查阅,

//Mat(matrice)基本结构 (头部 数据部分)

//这部分的大小是固定的,包含矩阵的大小,存储的方式,矩阵存储的地址等等;

//另一个部分是一个指向矩阵包含像素值的指针(data)。

经过运行

将代码修改成如下这样

cpp 复制代码
void QuickDemo::channels_demo(Mat & image)
{
	std::vector<Mat>mv;
	//通道分离合并
	split(image,mv);//原图 指针(Mat)
	imshow("蓝色", mv[0]);
	imshow("绿色", mv[1]);
	imshow("红色", mv[2]);

	Mat dst;
	mv[1] = 0;
	mv[2] = 0;
	merge(mv, dst);//合并
	imshow("蓝色", dst);

}

将其他两个通道改为0 0 现在通道颜色为255 0 0 为蓝色 可以显示

其余两个类似操作 满足 BGR

通道混合

int from_to\[\] = { 0,1,1,0,2,2 };//0通道跑到1 1到0 2不变
mixChannels(image,dst, from_to,3);//一个image 一个dst 三个通道
imshow("通道混合", dst);

相关推荐
深海鱼在掘金2 小时前
深入浅出RAG——第9章:高级检索策略
人工智能
Forerror20262 小时前
API网关怎么选?MAI Gateway入选2026年企业级AI网关推荐清单
人工智能·ai工具·maigateway·企业ai网关·企业级大模型网关
qiaozhangmenai2 小时前
2026年度南京AI智能体开发定制公司推荐|企业AI Agent服务商选型指南
大数据·人工智能
思考着亮2 小时前
1.RAG 基础
人工智能
mit6.8242 小时前
Educated
人工智能
律宏阔2 小时前
Headroom 宣传能省 60%~95% Token,真实会话能省多少?公开基准、独立 Agent 测试与社区实测整理
人工智能·agent
七牛开发者2 小时前
拆解 dsh:Turn 与 Step 如何组织 Agent 主循环
前端·javascript·人工智能
律宏阔2 小时前
Backpass 能让 Claude Code / Codex 越用越好吗?公开测试、运行数据与宣传口径对照
人工智能·agent
haluhalu.2 小时前
机器学习概念
人工智能·机器学习
空堂与归2 小时前
NLP文本语料怎么体检?数据分析、n-gram特征与回译增强
人工智能