Mat A,C; //创建对象时,只创建信息头部分
A=imread("Lena.jpg"); //开辟内存
//2.以下代码中的所有Mat对象最终都指向同一个也是唯一一个数据矩阵。
//仅信息头不同,对一个操作会影响到所有对象
Mat B(A); //使用拷贝构造函数
C=A; //赋值运算符
//3.创建只引用部分数据的信息头D
Mat D (A, Rect(10, 10, 100, 100)); //用矩形
Mat E = A(Range:all(),Range(1,3)); //用行列标识边界
//4.以下函数拷贝矩阵本身,现在改变 F 或者 G 就不会影响 Mat 信息头所指向的矩阵
Mat F = A.clone();
Mat G;
A.copyTo(G);
//5. Mat 不但是一个图像容器类,它同时也是一个通用的矩阵类,所以可以用来创建和操作多维矩阵。
// 行数+列数+存储元素的数据类型+每个矩阵点的通道数,每个像素由三个元素组成三通道
// Scalar 是个short型vector。指定这个能够使用指定的定制化值来初始化矩阵
Mat M(2,2, CV_8UC3,Scalar(0,0,255));
cout << "M = " << endl <<" " << M << endl << endl;