目录
1. cv::Mat_
2. cv::Matx
3. cv::Vec向量
4.类型定义typedef
1. cv::Mat_
modules/core/include/opencv2/core/mat.hpp
使Mat_更加C++化
2. cv::Matx
modules/core/include/opencv2/core/matx.hpp
Mat设计的初衷是给表达很大的矩阵用的,一张图像或者深度学习的数据
在计算机视觉里面,我们也会使用很小的矩阵。比如说在成像原理过程中。我们会用一个三行4列的矩阵。去描述计算机的成像模型。也可使用3×3,4×4来描述模型的旋转(旋转矩阵),3*3卷积核用长度为9的一维数组来表示这样效率更高。
Matx的大小在编译的时候就定下来了。不用每次去检查宽度是多少,高度是多少。
3. cv::Vec向量
modules/core/include/opencv2/core/matx.hpp
如果这个矩阵是CN行一列就会变成一个向量。
Vecxyz(1.2f, 2.3f, 3.4f);//3×1的列向量。
4.类型定义typedef
定义的更多的常用类型。
Vecxyz(1.2f, 2.3f, 3.4f);
简化:
Vec3f xyz(1.2f, 2.3f, 3.4f);
Matx33f m(1, 2, 3, 4, 5, 6, 7, 8, 9); cout << sum(Mat(m*m.t())) << endl;
m.t()//m的转置



