个人资料,仅供学习使用
修改时间——2022年2月13日 10:31:08
学习课程:OpenCV4 图像处理与视频分析实战教程
课程讲师:贾志刚

08 图像通道分离合并与混合

opencv知识点:

  • 通道分离 - split
  • 通道合并 - merge
  • 通道混合 - mixChannels

本课所解决的问题:

  • 如何分离RGB三通道?
  • 如何合并RGB三通道?
  • 如何对通道进行混合?

1.通道分离

关于图形绘制与填充,可以阅读 11 通道分离与合并的2小节,文章中非常详细。

2.通道合并

关于图形绘制与填充,可以阅读 11 通道分离与合并的3小节,文章中非常详细。

3.通道混合

关于图形绘制与填充,可以阅读 11 通道分离与合并的4小节,文章中非常详细。

本课所用API查阅

split



   char d[] = {1,2,3,4,5,6,7,8,9,10,11,12};Mat m(2, 2, CV_8UC3, d);Mat channels[3];split(m, channels);/*channels[0] =[  1,   4;7,  10]channels[1] =[  2,   5;8,  11]channels[2] =[  3,   6;9,  12]*/


merge


    Mat m1 = (Mat_<uchar>(2,2) << 1,4,7,10);Mat m2 = (Mat_<uchar>(2,2) << 2,5,8,11);Mat m3 = (Mat_<uchar>(2,2) << 3,6,9,12);Mat channels[3] = {m1, m2, m3};Mat m;merge(channels, 3, m);/*m =[  1,   2,   3,   4,   5,   6;7,   8,   9,  10,  11,  12]m.channels() = 3*/

mixChannels


Mat bgra( 100, 100, CV_8UC4, Scalar(255,0,0,255) );
Mat bgr( bgra.rows, bgra.cols, CV_8UC3 );
Mat alpha( bgra.rows, bgra.cols, CV_8UC1 );
// forming an array of matrices is a quite efficient operation,
// because the matrix data is not copied, only the headers
Mat out[] = { bgr, alpha };
// bgra[0] -> bgr[2], bgra[1] -> bgr[1],
// bgra[2] -> bgr[0], bgra[3] -> alpha[0]
int from_to[] = { 0,2, 1,1, 2,0, 3,3 };
mixChannels( &bgra, 1, out, 2, from_to, 4 );



【个人笔记】OpenCV4 C++ 图像处理与视频分析 08课相关推荐

  1. 【个人笔记】OpenCV4 C++ 图像处理与视频分析 09课

    个人资料,仅供学习使用 修改时间--2022年2月14日 10:59:22 学习课程:OpenCV4 图像处理与视频分析实战教程 课程讲师:贾志刚 09 图像直方图+直方图均衡化+直方图比较 open ...

  2. 【个人笔记】OpenCV4 C++ 图像处理与视频分析 12课

    个人资料,仅供学习使用 修改时间--2022年2月19日 14:57:51 学习课程:OpenCV4 图像处理与视频分析实战教程 课程讲师:贾志刚 12 图像模糊 opencv知识点: 高斯模糊 - ...

  3. 【个人笔记】OpenCV4 C++ 图像处理与视频分析 11课

    个人资料,仅供学习使用 修改时间--2022年2月19日 13:28:28 学习课程:OpenCV4 图像处理与视频分析实战教程 课程讲师:贾志刚 11 图像卷积+卷积边缘处理 opencv知识点: ...

  4. 【个人笔记】OpenCV4 C++ 图像处理与视频分析 10课

    个人资料,仅供学习使用 修改时间--2022年2月14日 10:59:22 学习课程:OpenCV4 图像处理与视频分析实战教程 课程讲师:贾志刚 10 图像查找表与颜色表 opencv知识点: 查找 ...

  5. 【个人笔记】OpenCV4 C++ 图像处理与视频分析 07课

    个人资料,仅供学习使用 修改时间--2022年2月13日 09:51:04 学习课程:OpenCV4 图像处理与视频分析实战教程 课程讲师:贾志刚 07 图形绘制与填充+文字绘制+随机绘制+矩形ROI ...

  6. 【个人笔记】OpenCV4 C++ 图像处理与视频分析 04课

    个人资料,仅供学习使用 修改时间--2022年2月10日 09:16:31 学习课程:OpenCV4 图像处理与视频分析实战教程 课程讲师:贾志刚 04 图像算术操作+调整亮度与对比度+伪装透明度 o ...

  7. 【个人笔记】OpenCV4 C++ 图像处理与视频分析 03课

    个人资料,仅供学习使用 修改时间--2022年2月7日 08:10:05 学习课程:OpenCV4 图像处理与视频分析实战教程 课程讲师:贾志刚 03 Mat 概念介绍+对象创建与赋值+像素读写 op ...

  8. 【个人笔记】OpenCV4 C++ 图像处理与视频分析 01课

    个人资料,仅供学习使用 修改时间--2022年2月5日 09:43:04 学习课程:OpenCV4 图像处理与视频分析实战教程 课程讲师:贾志刚 01 OpenCV4 框架介绍+环境搭建+显示图片 o ...

  9. 15 OpenCV4图像处理与视频分析实战(50.背景分析-)

    15 OpenCV4图像处理与视频分析实战(50.背景分析-) 一.50.背景分析- 来自网易云课堂(贾志刚) 一.50.背景分析- 大家我们就从中呢学会了一些东西,我们如果想把一些就是呃,更多的一些 ...

最新文章

  1. 在 Ubuntu Natty 中解除系统托盘限制
  2. distance在函数 int_Arduino智能小车——超声波避障
  3. java如何记录查看记录_Java如何检查消息是否可记录?
  4. ensp查看历史配置命令_网络工程师 | 手把手教你用华为ensp模拟器玩vxlan实验(静态方式)...
  5. 他们守护非洲大象犀牛,马云守护他们
  6. Android 系统(56)---Android 系统开机日志
  7. 离散事件模拟(银行业务模拟。实现算法3.6、3.7的程序)
  8. php3d饼状图,php 生成饼图 三维饼图
  9. 淡季没事情做,你们是怎么上完8个钟的
  10. Leetcode 1219.黄金矿工
  11. 可展开/折叠的Android TextView:ExpandableTextView
  12. 嵌入式Littlevgl之linux移植
  13. 计算机科学与技术专业的论文周报,毕业设计(实习)周报
  14. 温故知新:数据科学札记
  15. springboot项目启动后执行方法
  16. 软件架构设计---产品线及系统演化
  17. airtest上的滑动操作swipe
  18. 羊了个羊游戏开发教程1:堆叠牌的拾取
  19. Ubuntu桌面出现Accept clipboard from viewers,Send clipboard to viewers,Send primary selection to vi等三行错误时
  20. Linux就这个范儿 第12章 一个网络一个世界

热门文章

  1. 一名网工对Linux运维的一次经历
  2. 系统表空间数据文件损坏
  3. Swift基础语法学习-4.Bool类型
  4. iOS10 推送通知详解(UserNotifications)
  5. Linux常用命令汇总--cat
  6. PHPCMS整合UCENTER后登陆问题
  7. Raid、lvm知识
  8. hadoop集群安装配置
  9. ESX下修改时间和时区
  10. iOS 15 中的 Swift 和 SwiftUI