openCV C++数据类型用了大量的STL通用编程技术。主要概述了一下Mat类的基本操作
Mat类型的成员变量和CvMat结构体还是比较相像的,前面cxcore基本数据结构已经介绍过了。主要介绍下Mat的基本操作。
Mat类型可以实现从CvMat IplImage CvMatND的转换。
Mat Mat::row(int i) const
Mat Mat::col(int j) const
Mat Mat::rowRange(int startrow,int endrow) const//注意:实际获得的矩阵是以0为索引开始的[startrow,endrow-1],这个概念类似于STL里的超尾。
Mat Mat::rowRange(const Range& r) const
Mat Mat::colRange(int startcol,int endcol) const
Mat Mat::colRange(const Range& r) const
Mat Mat::clone() const //创建一个全拷贝,包括数据
void Mat::copyTo(Mat& m) const //m.col(0).copyTo(n)此函数并不是简单的数据拷贝,而是相当于n=m.col(0)
void Mat::copyTo(Mat& m,const Mat& mask) const
void Mat::create(int rows,int cols,int type)
void Mat::create(Size size,int type)
void Mat::create(int ndims,const int * sizes,int type)
void Mat::resize(size_t sz) const //改变mat rows,数据区不受影响
template<typename T> void Mat::push_back(const T& elem)
temolate<typename T> void Mat::push_back(const Mat_<T>& elem) //m.push_back<int> (n);T表示Mat数据类型
template<typename T> void Mat::pop_back(size_t nelems=1) //nelems:the number of rows removed,T is not used
template<typename T> T& Mat::at(int i,int j) const //int i=m.at<int>(i,j);
浙公网安备 33010602011771号