欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

opencv颜色通道分离与混合

程序员文章站 2022-05-16 14:54:10
...

分离

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

 查看 OutputArrayOfArraysde 定义,第二个参数可以使用vector容器 。

typedef OutputArray OutputArrayOfArrays;
typedef const _OutputArray& OutputArray;

_OutputArray(std::vector<Mat>& vec);
_OutputArray(Mat& m);

 根据OpenCV的BGR色彩空间(bule,Green,Red,蓝绿红),其中vec.at(0)就表示引用取出channels中的蓝色分量,vec..at(1)就表示引用取出channels中的绿色色分量,vec..at(2)就表示引用取出channels中的红色分量。

混合

 void merge(const Mat* mv, size_tcount, OutputArray dst)
 void merge(InputArrayOfArrays mv,OutputArray dst)