cv::Mat 在 OpenCV 中是一個(gè)重要的類,用于表示多維的單通道或多通道數(shù)組。它能用于存儲(chǔ)復(fù)數(shù)或?qū)崝?shù)的向量或矩陣,灰度或彩色圖像,向量場(chǎng),點(diǎn)云,張量,直方圖等等。
有許多方法創(chuàng)建 cv::Mat 對(duì)象:
Mat(nrows, ncols, type[, fillValue])- Copy constructor or assignment operator
- Construct a header for a part of another array
// 創(chuàng)建一個(gè) 7x7 的復(fù)數(shù)矩陣,并以 1+3j 填充
Mat M(7, 7, CV_32FC2, Scalar(1, 3));
// 創(chuàng)建一個(gè) 100x100 的單通道8bit 矩陣,并以 255 填充
Mat M(100, 100, CV_8UC1, Scalar(255));
// 創(chuàng)建一個(gè) 100x100 的3通道8bit 矩陣
Mat M(100, 100, CV_8UC3);
Mat M1;
M.copyTo(M1);
Mat A = Mat::eye(10, 10, CV_32S);
Mat img(Size(320, 240), CV_8UC3);
Mat roi(img, Rect(10, 10, 100, 100));
Mat B = img(Range::all(), Range(1, 3));
Public Attributes:
- cols:列數(shù)
- rows:行數(shù)
- dims:維度
- data:指向數(shù)據(jù)的 uchar 指針
Public Member Functions:
- empty:判斷數(shù)據(jù)是否為空
- at:模板函數(shù),返回對(duì)指定矩陣元素的引用
- begin、end:用于迭代
- channels:矩陣的通道數(shù)
- clone:返回矩陣的完整的副本
- copyTo:將矩陣拷貝至另一矩陣
- convertTo:轉(zhuǎn)換元素類型
- dot:矩陣乘法
- mul:元素相乘
Static Public Member Functions:
- diag:創(chuàng)建對(duì)角矩陣
- eye:創(chuàng)建單位矩陣
- ones:創(chuàng)建全1矩陣
- zeros:創(chuàng)建全0矩陣