【OpenCV 4】图像通道分离与合并

一、编程环境:

OpenCV  4.1.0
IDE Visual Studio 2017 Enterprise (15.9.13)
操作系统 Windows 10 x64 中文专业版 (1903)

二、图像通道分离与合并:

OpenCV 中 imread() 函数默认加载图像文件,加载进来的是 3 通道彩色图像,色彩空间是RGB色彩空间。

  1. 通道顺序是:BGR (蓝色、绿色、红色)。
  2. 通道分离函数:split()
  3. 通道合并函数:merge()

三、示例代码:

#include 
#include 

using namespace cv;
using namespace std;

int main(int argc, const char *argv[])
{
	Mat src = imread("../images/test.png");
	if (src.empty()) {
		printf("不能加载图像!\n");
		return -1;
	}
	namedWindow("1-原图", WINDOW_AUTOSIZE);
	imshow("1-原图", src);

	vector mv;
	Mat dst1, dst2, dst3;
	
	//通道分离
	split(src, mv);
	//设置:蓝色通道为0
	mv[0] = Scalar(0);
	//通道合并
	merge(mv, dst1);
	imshow("2--蓝色通道为0", dst1);

	//通道分离
	split(src, mv);
	//设置:绿色通道为0
	mv[1] = Scalar(0);
	//通道合并
	merge(mv, dst2);
	imshow("3--绿色通道为0", dst2);

	//红色通道为0
	split(src, mv);
	mv[2] = Scalar(0);
	//通道合并
	merge(mv, dst3);
	imshow("4--红色通道为0", dst3);

	waitKey(0);
	return 0;
}

四、运行效果:

【OpenCV 4】图像通道分离与合并_第1张图片

【OpenCV 4】图像通道分离与合并_第2张图片

你可能感兴趣的:(OpenCV)