前言
Mat几乎是OpenCV中最为重要、使用最为广泛的数据结构。
Mat本身是一个带有垃圾清理的数据结构(类),它指向了一块存储数据的区域,同时它的定义中还包含了一些其它信息。
一、构造
//空构造
cv::Mat mat1;
//赋值构造(大概有29种重载,只示例了其中一种)
cv::Mat mat2(cv::Size sz,int type);
//读取一张图片,将数据存储到mat3,然后进行处理
cv::Mat mat3 = imread("C:/opencv/123.jpg");
//特殊构造
Mat mat4 = Mat::zeros(10,10,CV_32F);//全黑(全部为0)
Mat mat5 = Mat::ones(10,10,CV_32F);//全白(全部为1)
Mat mat6 = Mat::ones(10,10,CV_32F);//对角为白,其余为黑(对角为1,其余为0)