OpenCV中图像颜色通道分离与合并
0赞
发表于 6/22/2018 6:10:47 PM
阅读(3403)
在OpenCV中,图像颜色通道分离与合并用到了split和merge函数,相关测试代码如下:
#include<opencv2\opencv.hpp>
#include<iostream>
using namespace cv;
using namespace std;
int main()
{
//【1】加载一张彩色图片并显示原始图
Mat srcImage = imread("picture.jpg",1);
if(srcImage.empty())
{
cout << "加载图片失败!!" << endl;
system("pause");
return -1;
}
imshow("【原始图】",srcImage);
//【2】将RGB彩色图分成R、G、B三个独立通道
Mat splitImage[3];
split(srcImage,splitImage);
//【3】对R、G、B三个通道分别进行中值滤波
Mat medImage[3];
for(int i=0;i<3;i++)
{
medianBlur(splitImage[i],medImage[i],3);
}
//【4】将R、G、B三个独立通道合并成RGB彩色图像
Mat dstImage;
merge(medImage,3,dstImage);
//【5】显示效果图
imshow("【效果图】",dstImage);
//【6】等待键盘任何键按下退出
waitKey(0);
return 0;
}测试结果如下:


