OpenCV学习笔记(二十一)---三通道和四通道之间的区别
2017-03-09 13:49
369 查看
三通道和四通道之间的区别:
void mixChannels(const
vector<Mat>& src, vector<Mat>& dst,
const int* fromTo, int npairs)
src –矩阵的输入数组或向量。所有矩阵必须具有相同的大小和相同的深度。
nsrc –src中的矩阵数。
dst –输出数组或矩阵向量。所有矩阵必须分配。它们的大小和深度必须与src [0]一致。
ndst – dst中的矩阵数。
fromTo –指定复制哪些通道和位置的索引对数组。 fromTo [k * 2]是src中输入通道的基于0的索引。
npairs –fromTo的索引对数.
void mixChannels(const
vector<Mat>& src, vector<Mat>& dst,
const int* fromTo, int npairs)
src –矩阵的输入数组或向量。所有矩阵必须具有相同的大小和相同的深度。
nsrc –src中的矩阵数。
dst –输出数组或矩阵向量。所有矩阵必须分配。它们的大小和深度必须与src [0]一致。
ndst – dst中的矩阵数。
fromTo –指定复制哪些通道和位置的索引对数组。 fromTo [k * 2]是src中输入通道的基于0的索引。
npairs –fromTo的索引对数.
#include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> #include <iostream> using namespace std; using namespace cv; int main() { Mat rgba( 4, 4, CV_8UC4, Scalar(1,2,3,4) ); cout<<"rgba ="<<endl<<rgba<<endl; cout<<"rgba.rows="<<rgba.rows<<",rgba.cols="<<rgba.cols<<endl; Mat bgr( rgba.rows, rgba.cols, CV_8UC3 ); Mat alpha( rgba.rows, rgba.cols, CV_8UC1 ); // forming an array of matrices is a quite efficient operation, // because the matrix data is not copied, only the headers Mat out[] = { bgr, alpha }; //注意out[]的含义,分裂到一个Mat数组中 // rgba[0] -> bgr[2], rgba[1] -> bgr[1], // rgba[2] -> bgr[0], rgba[3] -> alpha[0] int from_to[] = { 0,2, 1,1, 2,0, 3,3 }; //指定分裂规则 mixChannels( &rgba, 1, out, 2, from_to, 4 ); cout<<"bgr ="<<endl<<bgr<<endl; cout<<"alpha ="<<endl<<alpha<<endl; system("pause"); waitKey(0); return 0; }
相关文章推荐
- OpenCV学习笔记7_ImageToBGR_彩色图像三通道转化成BGR3幅单通道图像
- OpenCV学习笔记(二十一)——绘图函数core
- 我的OpenCV学习笔记(22):如何区别一幅图像是否是黑白图像
- OpenCV学习笔记(12):单通道图像直方图
- Python OpenCV学习笔记之:计算彩色图像各通道的直方图及图像区域直方图
- opencv学习笔记之二 矩阵的维和通道
- OpenCV学习笔记(7)图像的通道(channels)问题
- OpenCV学习——一个多维数组(矩阵)和一个一维,但是包含高维数据的数组之间的区别
- opencv学习笔记 split(图像分割为3通道)
- 【OpenCV学习笔记】【函数学习】九(RGB空间各通道分离)
- openCv学习笔记(三)——openCv数据结构之间的转换
- OpenCv学习笔记(四):使用split函数提取彩色图像的三个通道
- Python 学习笔记: id(), ==, is 之间的区别
- opencv学习笔记(二十一)——阈值操作
- GOF设计模式学习笔记 --辨析各种模式的要点和相似模式之间的区别
- opencv学习笔记-入门(7)单通道的图像数据访问
- OpenCV学习笔记(7)图像的通道(channels)问题
- 【OpenCV学习笔记】【函数学习】二(MFC+OpenCV2.4.7读取摄像头之CvvImage::CopyOf 的通道选择问题)
- uC/OS-II 学习笔记之:信号量、消息邮箱、消息队列之间的使用区别
- OpenCV学习笔记_图像转换cvCvtColor、通道分割cvSplit以及通道合并cvMerge