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);

相关推荐
Vol火山14 分钟前
从买工具到建能力:数字化部门如何把 AI 变成可复制的生产力
人工智能
莱茶荼菜16 分钟前
【slam公式】
人工智能·线性代数·机器学习
Henry-SAP25 分钟前
SAP PP中的核心业务流程——离散制造、重复制造、流程制造三大模式解析
前端·数据库·人工智能·制造
Zhao-Jichao36 分钟前
AI Prompting for Everyone 课程笔记 - P20 实验与期末项目 Lab and Final Project
前端·人工智能·笔记
敢敢のwings43 分钟前
TACDYN-WAM 深度解读:机器人如何预测接触变化,并据此生成动作
人工智能·机器学习·机器人
沉默王二1 小时前
阿里版Codex,再次惊艳到我了。
人工智能·openai·agent
正在走向自律1 小时前
【1/5】人工智能训练师 一级/高级技师 考证学习方向:从“可评审的交付”到“可定义的标准与可传承的体系”
人工智能·人工智能训练师·一级/特级·ai技术负责人·数据体系负责人·行业解决方案架构·技术评审与标准制定
时文鲜读1 小时前
算力基建提速,数据中心安全建设与工业可靠性如何同步升级?
大数据·人工智能·安全
坐吃山猪1 小时前
果蝇AI07-Mac部署踩坑
人工智能·深度学习·机器学习·果蝇ai
挖掘狂人1 小时前
AI PC 分水岭:2026 过半 PC 搭载本地 AI,端云协同才是核心
人工智能·程序员·ai编程