0
点赞
收藏
分享

微信扫一扫

【学习OpenCV4】案例23:通道分离与通道合并

本文分享内容来自图书《学习OpenCV 4:基于Python的算法实战》,该书内容如下:

1章 OpenCV快速入门;
第2章 图像读写模块imgcodecs;
第3章 核心库模块core;
第4章 图像处理模块imgproc(一);
第5章 图像处理模块imgproc(二);
第6章 可视化模块highgui;
第7章 视频处理模块videoio;
第8章 视频分析模块video;
第9章 照片处理模块photo;
第102D特征模块features2d;
第11章 相机标定与三维重建模块calib3d;
第12章 传统目标检测模块objdetect;
第13章 机器学习模块ml;
第14章 深度神经网络模块dnn

欢迎关注图书《深度学习计算机视觉实战》与《学习OpenCV4:基于Python的算法实战》,欢迎加入QQ群:187042448


对于一副RGB格式的图像,包括R、G、B三个通道,OpenCV中提供将一幅图像的三个通道分离的函数split,也提供了将三个通道合并为一副图像的函数merge。
split函数的定义如下:

mv = split(m, mv=None)

参数说明如下:
m,输入的多通道矩阵;
mv,分离后的矩阵集合(返回值)。
使用案例如下所示:

import cv2

src = cv2.imread("src.jpg")
#颜色空间分离
b,g,r = cv2.split(src)
#显示每个通道的图像
cv2.imshow("b", b)
cv2.imshow("g", g)
cv2.imshow("r", r)
cv2.waitKey(0)
cv2.destroyAllWindows()

本案例使用的输入图像如图3.10所示,显示的每个通道的图像如图3.18所示。
在这里插入图片描述

图3.18
merge函数定义如下:

dst = merge(mv, dst=None)

参数说明如下:
mv,矩阵集合;
dst,合并后的多通道矩阵结果(返回值)。
通道合并的案例如下所示:

import cv2

src = cv2.imread("src.jpg")
#颜色空间分离
b,g,r = cv2.split(src)
#通道合并
merge_result = cv2.merge([b,g,r])
#结果显示
cv2.imshow("merge_result", merge_result)
cv2.waitKey(0)
cv2.destroyAllWindows()

本案例中使用split函数将图像的通道分离,后使用merge将分离的通道进行合并,结果如图3.19所示。
在这里插入图片描述

图3.19

举报

相关推荐

0 条评论