Mat
Mat本质是矩阵
构造函数
Mat();
Mat(int rows,int cols,int type); //建立指定类型的二维数组
Mat(int rows,int cols,int type,const Scalar &s);//建立指定的二维数组,并初始化值
Mat(Size size,int type);//建立指定类型的二维数组,其大小由size确定
Mat(Size size,int type,const Scalar &s);//建立指定的二维数组,并初始化值,其大小由size确定
Mat(int ndims,const int *sizes,int type);//略难,暂时不用,用时再说
Mat(int ndims,const int *sizes,int type,const Scalar &s);
Mat(int ndims, const int* sizes, int type, void* data, size_t step = AUTO_STEP);
Mat(const MatExpr&expr);
CV_8UC1
CV_8UC3
CV_8UC4
CV_32FC1
CV_32FC3
CV_32FC4
//8U:8位无符号。
//32F:位浮点。
//C:通道数。
Mat::zeros(5,5,CV_32F);//创建指定类型和大小的零矩阵
Mat::ones(5,5,CV_32F);//创建指定类型和大小的矩阵
Mat::eye(5,5,CV_32F); //创建指定类型和大小的单位矩阵
包含的方法
/** Mat类的属性 **/
/** **/
Mat src;
src.data();
src.rows();
src.cols();
src.dims()
src.setTo();
src.create();
src.size();
src.clone();
src.copyTo();
src.convertTo();
src.assignTo();
src.reshape();
src.push_back();
src.pop_back();
src.locateROI();
src.adjustROI();
src.total();
src.isContinuous();
src.elemSize();
src.elemsize1();
src.type();
src.depth();
src.channels();
src.empty();
对Mat类的运算
+
-
*
t();
inv();
meanStdDev();
minMaxLoc();
能进行对矩阵的一切运算
Vec
typedef Vec<uchar, 2> Vec2b;
typedef Vec<uchar, 3> Vec3b;
typedef Vec<uchar, 4> Vec4b;
typedef Vec<short, 2> Vec2s;
typedef Vec<short, 3> Vec3s;
typedef Vec<short, 4> Vec4s;
typedef Vec<int, 2> Vec2i;
typedef Vec<int, 3> Vec3i;
typedef Vec<int, 4> Vec4i;
typedef Vec<float, 2> Vec2f;
typedef Vec<float, 2> Vec2f;
typedef Vec<float, 2> Vec2f;
typedef Vec<float, 2> Vec2f;
typedef Vec<double, 2> Vec2d;
typedef Vec<double, 3> Vec3d;
typedef Vec<double, 4> Vec4d;
typedef Vec<double, 6> Vec6d;
向量能进行的运算
v1 = v2 + v3;
v1 = v2 - v3;
v1 = v2 * scale;
v1 -= v2;
v1 += v2
v1 == v2;
v1 != v2;
Scalar
Scalar是从Vec派生的模板类,有四个元素
Point
typedef Point_<int> Point2i;
typedef Point2i Point;
typedef Point_<float> Point2f;
typedef Point_<double> Point2d;
Point能进行的运算
pt1 = pt2 + pt3;
pt1 = pt2 - pt3;
pt1 = pt2 * a;
pt1 = a * pt2;
pt1 = pt2 / a;
pt1 += pt2;
pt1 -= pt2
pt1 *= pt2
pt1 /= pt2
pt1 == pt2;
pt1 != pt2;
Size
一个模板类,用于指定图形或矩形的大小
Size s(100,100);
s.area();
Rect
表示一个矩形
包含:左上角的坐标、矩形的宽度和高度
ROI:Region of Interest,感兴趣区域。
RotatedRect
表示一个旋转矩形。
包含:中心点、矩形的宽度、高度、旋转角度