您的位置:首页 > 运维架构

【OpenCV3图像处理】图像通道分离、通道合并、图像叠加混合

2017-04-17 11:27 495 查看
一、图像通道分离

函数原型:(参考:OpenCV帮助文档

void cv::split	(const Mat & src, Mat * mvbegin )
void cv::split	(InputArray m, OutputArrayOfArrays mv )

第一个函数,分离和后的图片保存在Mat型的数组里面

第二个函数,分离和后的图片保存在Mat型的vector容器里面

示例:

#include <opencv.hpp>
#include <string>

using namespace cv;
using namespace std;

int main( )
{
Mat srcImage = imread("E:\\图片\\960x540\\鸣人.jpg", IMREAD_UNCHANGED);  //随意设置一个自己电脑上的图片路径
vector<Mat> channels;
//Mat aChannels[3];

// 把一个3通道图像转换成3个单通道图像
cv::split(srcImage, channels);//分离色彩通道

imshow("一通道", channels.at(0));
imshow("二通道", channels.at(1));
imshow("三通道", channels.at(2));

imshow("图片窗口", srcImage);

waitKey(0);

return 0;
}


二、图像通道合并

函数原型:

void cv::merge	( const Mat * mv,size_t count,OutputArray dst )
void cv::merge	( InputArrayOfArrays mv,OutputArray dst )


三、图像叠加混合
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: